Git Product home page Git Product logo

cod-lua-unhashed's Introduction

CoD Lua Dehasher

This is a program that's able to take Call of Duty's decompiled lua files, and dehash about 99% of their file names while also dehashing many strings and function names.

BIG OVERHAUL UPDATE:
I updated this project to use Crystal instead of Ruby. If you look at the code between the old version (still in the legacy folder) and the new version, you'll notice that the code looks somewhat similar. That's because Crystal is, in simple terms, just a compiled Ruby. This makes the script run much faster along with the code being a lot safer now! I also changed how the localize JSON should be structed along with a few minor bug-fixes.

Requirements

To be able to run the program you will not need to install anything. To compile the program, you need to install Crystal (Windows Install) and GCC (Windows installation instructions here).

Before Running

You must decompile your lua files using JariK's lua decompiler found here. There is a slight flaw in the code where hashes are truncated to 60 bits when they shouldn't be truncated at all.

I have recently made a fork with the required fixes found here.

Usage

In the command line, type the following command: ./lua_dehasher.exe <path> where path is the path to your directory holding all of your lua files.
OR
Drag and drop your folder of lua files onto the exe file and it'll begin execution.

You can optionally include a localize.json file (a default one can be found in the localize directory in this repository). When running the program, make sure to have this json file in the same directory as the executable. Although the json isn't required to actually run the program, it still helps to make the final lua file outputs much cleaner.

What to Expect

When the dehasher finishes, you'll notice a new directory named Parsed appear in the original directory you passed to the program. This will contain 2 subdirectories named Hashed and Dehashed. As the name suggests, Hashed contains all the files with names that could not be dehashed, and Dehashed contains all the files with names that were successfully dehashed. Upon opening any of the lua files, you'll notice many strings marked with a --[[DH]] which means that those were hashed strings that the program dehashed.

Compiling

I have provided a build.bat file. After installing the requirements, run build.bat, and go to the bin directory. The executable will be there.

Contributing

If you would like to contribute in any way, even if it is just adding new hashes to the list of translations, I will gladly accept any help. Fork the repository, make your changes, and then make a pull request with those changes.

cod-lua-unhashed's People

Contributors

nico-posada avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar

cod-lua-unhashed's Issues

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.