Giter Club home page Giter Club logo

thelazytomcat / sii_decrypt Goto Github PK

View Code? Open in Web Editor NEW
57.0 8.0 14.0 47.17 MB

[DISCONTINUED] Small library/tool designed to decrypt SII files used as saves in truck games by SCS Software. Can be used as DLL, console program, GUI program or directly in a code.

License: Mozilla Public License 2.0

Pascal 99.61% Batchfile 0.29% PHP 0.10%
pascal object-pascal delphi fpc lazarus euro-truck-simulator-2 american-truck-simulator saves decryption library

sii_decrypt's Introduction

================================================================================

                              SII Decrypt project

                                 version 1.5.x

================================================================================

Index
------------------------------

  Index ................................................... 9
  Description ............................................. 22
  Parts of the project .................................... 46
  Project files ........................................... 78
  Repositories ............................................ 117
  Licensing ............................................... 131
  Authors, contacts ....................................... 139
  Copyright ............................................... 150


Description
------------------------------
This project is primarily designed to decrypt SII files that are used as a mean
of storing save data in truck games developed by SCS Software. It was tested on
saves from Euro Truck Simulator 2 and American Truck Simulator.

It can also decode binary format normally used in these saves into its textual
form. This decoding is done automatically when binary format is encountered.
It means you no longer have to manually change format (g_save_format) the game
is using while writing the saves.

Since version 1.4, it is also possible to decode 3nK-encoded files. This
encoding is usually used in localization SII files. See project 3nK Transcode
(https://github.com/TheLazyTomcat/3nK_Transcode) for further details on this
format.

The project is primarily developed in Delphi 7 Personal and Lazarus 1.8.x
(FPC 3.x) and therefore can be compiled by those development tools. But it
should be also possible to compile it in newer versions of mentioned
tools/compilers.
All main parts can be compiled into both 32bit and 64bit binaries.



Parts of the project
------------------------------
The project can be principally used in four ways - directly as a code, as
a dynamically loaded library (DLL), as console program or as a GUI program.

  If you want to use it directly, simply include files from .\Source folder in
  your project and use provided classes. Also make sure you add folders
  .\Source\Libs and .\Source\ValuNodes to project search paths, as decryptor
  requires units that are stored there.

  To use this project as a library (DLL), include header file
  .\Library\SII_Decrypt_Library_Header.pas to your project and use functions
  and constants provided by this unit. Don't forget to add compiled DLL to your
  program.

  If you want to use this project in form of console program, you can do it as
  with almost all other console utilities. Invoke the EXE and pass path to
  a processed file as a first command line parameter. You can also specify
  destination file (file where the decrypted result will be stored) as a second
  parameter, but this is optional. If you do not select destination file, the
  result will be stored back in the source file. Note that destination file does
  not need to exist, but the folder where it will be stored must exist.
  You can use exit code of the program to check processing for errors. The
  result codes are the same as for functions exported by DLL version of this
  project - so refer to DLL headers for details.

  Using the GUI program is straight forward - run the program and use its
  controls (buttons, edits, ...) to select input file, output file, set options
  and then run the processing and wait for it to finish.



Project files
------------------------------
List of folders with description of their content:

  .\

    Root folder. Contains license and readme files.

  .\Documents

    Documentation of binary SII file format.

  .\Source

    Source code of project's core. Also contains other units used throughout the
    whole project.

  .\Library

    Library (DLL) part of the project, also contains header files for the DLL.

  .\Program_Console

    Console program part of the project.

  .\Program_GUI

    GUI program part of the project.

  .\Tester

    Small utility used to test the project.

  .\Scripts

    Batch files for automated compilation and cleaning.



Repositories
----------------------------------------
You can get actual copy and source code of SII Decrypt project on the following
git repository:

https://github.com/TheLazyTomcat/SII_Decrypt

Note - master branch does not contain binaries, you can find them in a branch
       called "bin".



Licensing
----------------------------------------
Everything (source codes, executables/binaries, configurations, etc.) is
licensed under Mozilla Public License Version 2.0. You can find full text of
this license in file license.txt or on web page https://www.mozilla.org/MPL/2.0/.



Authors, contacts, links
----------------------------------------
František Milt, [email protected]

If you find this project useful and don't know what to do with your money ;),
consider making a small donation using the following link:
https://www.paypal.me/FMilt



Copyright
----------------------------------------
©2016-2023 František Milt, all rights reserved

sii_decrypt's People

Contributors

thelazytomcat avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

sii_decrypt's Issues

SII Decryt cant decrypt some files

In my case. I use SII_Decrypt for a tool. I found out that some files SII_Decrypt cant decrypt. These files when I try to decrepy starts with "BSII"

BSII� �� � economy9 � bank9 � player: companies: � garages� � garage_ignore_list9
game_progress9 � event_queue9 mail_ctrl9 � oversize_offer_ctrl' game_time� � game_time_secs' � game_time_initial' � achievements_added5 � new_game' � total_distance' � experience_points' � adr' long_dist' � heavy' � fragile' � urgent'
mechanical( � user_colors9 delivery_log9 ferry_log9 � police_offence_log' � stored_camera_mode' � stored_actor_state' � stored_high_beam_style� � stored_actor_windows_state' � stored_actor_wiper_mode' � stored_actor_retarder' stored_display_mode_on_dashboard' � stored_display_mode_on_gps' � stored_dashboard_map_mode' � stored_world_map_zoom3 � stored_online_job_id� � stored_online_gps_behind� � stored_online_gps_ahead: " stored_online_gps_behind_waypoints: ! stored_online_gps_ahead_waypoints: ! stored_online_gps_avoid_waypoints9 � stored_special_job9 � police_ctrl' � stored_map_state1 � stored_gas_pump_money� � stored_weather_change_timer' � stored_current_weather� � stored_rain_wetness% time_zone� � time_zone_name� � last_ferry_position5 � stored_show_weigh5 � stored_need_to_weigh� � stored_nav_start_pos� � stored_nav_end_pos� � stored_gps_behind� � stored_gps_ahead: � stored_gps_behind_waypoints: � stored_gps_ahead_waypoints: � stored_gps_avoid_waypoints� � stored_start_tollgate_pos' � stored_tutorial_state: � stored_map_actions' � clean_distance_counter' � clean_distance_max' no_cargo_damage_distance_counter' � no_cargo_damage_distance_max' � no_violation_distance_counter' � no_violation_distance_max' � total_real_time� � real_time_seconds� � visited_cities( � visited_cities_count� � last_visited_city4 � discovered_cutscene_items, discovered_cutscene_items_states� � unlocked_dealers� � unlocked_recruitments' � total_screeshot_count' �

This a example how the file looks like after decrypting

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.