Git Product home page Git Product logo

worldoftanks-decompiled's Introduction

WorldOfTanks-Decompiled

Unpacked and decompiled files of WorldOfTanks/MirTankov. The base branch contains decompiles of the RU-version of the game client (from patch 1.18.1 this is the MirTankov from Lesta Studio). At the same time, other branches can be added - a test client, a supertest or a client from other regions, if there are main differences in them.

Each client has its own branch. In the default-branch is the latest version of the client. Micropatches that are released after the first release of the client are added only to branch of released client. This allows you to easily track all the stages of the release of the game.

Consist

  • Python py-files since client version 0.9.2
  • Game xml-files since version 0.9.12

Soft

Using PjOrion:

  • "Uncompile 6" decompiler updated by R. Bernstein and modified StranikS_Scan
  • Built-in decompressor of xml-files realized by SkepticalFox and modified StranikS_Scan

Using

  1. Download commit to PC
  2. Run once "Zip-Unpacker.exe" to restore the original files from the zip-archive with the correct letters case in the file names and symbols codes in texts

Auto decompilation algorithm (recommendations)

  1. Replace old files with new files in the folder "source": paths.xml, version.xml
  2. Delete old files and copy new files in the folder "res"
  3. Run "WOT-UnDec.exe" to unpack and decompile the files

Manual decompilation algorithm

  1. Create a folder "source" and a subfolder "res" in it
  2. Copy files "paths.xml" and "version.xml" from game-root to a folder "source"
  3. Copy all xml-files from game folder "res" to the directory "source\res"
  4. Extract the contents of the archive "res\packages\scripts.pkg" to the directory "source\res"
  5. Decode all xml-files using PjOrion: "WOT-Client" -> "Unpack XML" -> "Unpack folder..." select "source"
  6. Decompile all pyc-files using "Uncompile6" in PjOrion: "Decompile" -> "Decompile pyc-folder..." select "source"
  7. Find and delete all pyc-files

Pull requesting to the repository (recommendations)

  1. You must clone the commit from the repository from which you want to continue the existing branch or start a new branch
  2. If you adding a new client, then create a new branch with the name as client main version "X.X.X" (do not use "CT" or "ST" unless it's a not separate special branch)
  3. Clean the existing "source" directory and put new files there using the algorithm above
  4. Change the name of the archive to the current one in the file "Zip-Packer.arg"
  5. Create an zip-archive by running the console program Zip-Packer.exe (required 7z.exe on your PC)
  6. Delete the old "zip" archive in the "zip" directory
  7. Create a commit, named as "X.X.X: Added/Updated/Release/... #YYY" or "X.X.X_CT:..."
  8. Offer a "Pull request" in the right branch

Files with different case of letters

Due to the fact that during the update of the game, the developers changed the case of the letters in the files, there may be duplicate files in the repository. To solve this problem, the "Zip-Unpacker.exe" file has been added to the repository. After downloading the repository or after synchronizing your copy of the repository with the GitHub, run this file. It will extract the py-files from the archive as they should be.

worldoftanks-decompiled's People

Contributors

straniks-scan 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  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  avatar  avatar  avatar  avatar  avatar  avatar  avatar

worldoftanks-decompiled's Issues

Exception type is inconsistent with the message and similar exceptions

Hello,

I was looking at the code in your repository IN THIS FILE and I think that the exception type should be ValueError instead of TypeError since it's about the length of the value and not the type.

if dkLen > digest:

        raise TypeError('Selected hash algorithm has a too short digest (%d bytes).' % digest)

if len(salt) != 8:

      raise ValueError('Salt is not 8 bytes long.')

What do you think?

Регистр первой буквы названия файлов

Многие файлы декомпилировались с маленькой буквы, например scripts/client/avatar.py, хотя во второй строке файла чётко указано, что он должен быть с большой # Embedded file name: scripts/client/Avatar.py

Другие файлы исходника импортируют этот файл с большой, например вот

Это баг или осмысленное решение? PyCharm например ругается на попытку импорта из файла с ошибкой в регистре

wot doc

Hi,

Your repo has been very useful, thank you.

Are you aware of any documentation, around object model ? I'm getting better and progressing slowly, but it has been mostly luck and trial and error. (I feel like a sentinel from the matrix movie).

Here's what I have left on my backlog and trying to figure out:

  • Getting a vehicle's top module configuration (module ids): like in the compare view "Select top configuration"
  • Getting the blueprints assigned to a vehicle in the techtree. I'm interested in fetching how much xp is left to unblock a given tank.
  • the "slot index" position in the garage of a given tank.

For my list of "current" vehicles, I'm using:
g_currentVehicle.itemsCache.items.getVehicles(REQ_CRITERIA.INVENTORY)

Do you know how I can get the same list, but without going through the g_currentVehicle ?

Thanks,
Pat

New update 1.14.1.2 #1060

Пожалуйста обновите до последней версии, она вышла 29.10

You are amazing!

Where did you learn WOT mods development?
How do you know API of BigWorld?
How do you know API of WoT Client Hooks?
If I want to understand mod_AdvancedAimingSystem.py, How should I learn?
It would be my pleasure if I could get your email.

PjOrion not found

I'm getting this error...
I don't know where to download PjOrion and where to put it.

Config-file loading...
Error: Not found PjOrion exe-file from "path"-tag!

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.