Giter VIP home page Giter VIP logo

netease-messiah-tools's Introduction

netease-messiah-tools's People

Contributors

xforce 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

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

netease-messiah-tools's Issues

Resources script does no longer seem to work with the latest D:I version

The current version of Diablo Immortal seems to have differently structured .repository files as all I get is an error message:

C:\Users\[...]\netease-messiah-tools\target\debug>messiah-resources.exe "C:\Program Files (x86)\Diablo Immortal\Package\MPK\Package\resource.repository" arrange
Error: invalid utf-8 sequence of 1 bytes from index 0

Reading through the Rust code it seems the files were previously structured rather plainly - that's no longer the case.

Is there a way to extract the localized text?

Hello, first of all thank you for your work!
I'm doing a Diablo Immortal database, so I want to pull localized text data from the client. By compiling your program, I have unpacked the Package/Text folder, but the files are all in binary format. Is there a way to parse it into readable text?

How to decrypt messiah opcode!

Hello, first of all thank you for your work!

I tried to decrypt PYC on other Netease Games based on Messiah Engine, but encountered many difficulties!
Can you tell me how the opcode in the 'get_messiah_opcodes' function in the' pyc_retarget.py' file was found and analyzed!

For example,
`def_op('LOAD_FAST_LOAD_ATTR_LOAD_FAST_CALL_FUNCTION', 193)

messiah_opcodes.LOAD_FAST_LOAD_ATTR_LOAD_FAST_CALL_FUNCTION: [
opc.LOAD_FAST,
opc.LOAD_ATTR,
opc.LOAD_FAST,
opc.CALL_FUNCTION,
]`

how to find the 193 opcode and analyze the corresponding operation of the 193 opcode

Thanks very much!

messiah-texture not yet implemented?

i try to extra texture with another messiah engine game
but it tell me

thread 'main' panicked at 'not yet implemented', texture\src\main.rs:145:47

on line 145

EPixelFormat::ASTC_6x5_LDR => todo!(),

commit said For now only PC Texture files are supported.

i try to impl it but seems... its depends Upstream lib?

Build Failed!

Hello, first of all thank you for your work!
I tried to compile the project, but an error occurred!

  1. git clone https://github.com/xforce/netease-messiah-tools.git
  2. cd netease-messiah-tools
  3. cargo build

Updating git repository https://github.com/xforce/RustPython.git
error: failed to get rustpython-stdlib as a dependency of package messiah-pyc v0.1.0 (/Users/ice/Downloads/1/netease-messiah-tools/pyc)

Caused by:
failed to load source for dependency rustpython-stdlib

Caused by:
Unable to update https://github.com/xforce/RustPython.git#c594606c

Caused by:
object not found - no match for id (c594606c42ebb6d0913dd55f08060ab43221b85e); class=Odb (9); code=NotFound (-3)

thanks!

pyc_retarget issue

I failed to decrypt PyC on other Netease Games based on Messiah engine,(such as knives out),I run pyc_retarget.py got an exception of 0 -- > 163.

Decoding some python

First of all, thanks so much for putting this together! I have been looking for this since the first Immortal alpha and never got to understand the Python encryption.

I have some issues with some .py files that are showing some binary data when decompiled, they show something like this, from entities/client/data/inventory_lang_data.py:

# uncompyle6 version 3.8.0
# Python bytecode 2.7 (62211)
# Decompiled from: Python 3.9.2 (tags/v3.9.2:1a79785, Feb 19 2021, 13:44:55) [MSC v.1928 64 bit (AMD64)]
# Embedded file name: entities/client/data/inventory_lang_data.py
# Compiled at: 2106-02-07 01:28:15
from taggeddict import taggeddict as TD
_reload_all = True
import data_define as dd
data = dd.bd(b'\x1d\x08\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x06\x00\x00\x00\x08\x00\x00\x00\x0c\x00\x00\x00\x10\x00\x00\x00\x1c\x00\x00\x00(\x00\x00\x007\x00\x00\x00F\x00\x00\x00R\x00\x00\x00X\x00\x00\x00d\x00\x00\x00p\x00\x00\x00|\x00\x00\x00\x85\x00\x00\x00\x91\x00\x00\x00\x97\x00\x00\x00\xa3\x00\x00\x00\xaf\x00\x00\x00\xbb\x00\x00\x00\xc7\x00\x00\x00\xd3\x00\x00\x00\xdf\x00\x00\x00\xee\x00\x00\x00\xfa\x00\x00\x00\x0f\x01\x00\x00\x1b\x01\x00\x00*\x01\x00\x006\x01\x00\x00B\x01\x00\x00N\x01\x00\x00`\x01\x00\x00o\x01\x00\x00{\x01\x00\x00\x93\x01\x00\x00\x9f\x01\x00\x00\xb1\x01\x00\x00\xc6\x01\x00\x00\xd5\x01\x00\x00\xe7\x01\x00\x00\xf6\x01\x00\x00\x08\x02\x00\x00\x17\x02\x00\x00#\x02\x00\x00/\x02\x00\x00>\x02\x00\x00J\x02\x00\x00Y\x02\x00\x00h\x02\x00\x00n\x02\x00\x00}\x02\x00\x00\x89\x02\x00\x00\x95\x02\x00\x00\xa1\x02\x00\x00\xa7\x02\x00\x00\xb6\x02\x00\x00\xc2\x02\x00\x00\xce\x02\x00\x00\xda\x02\x00\x00\xe9\x02\x00\x00\xf5\x02\x00\x00\x01\x03\x00\x00\r\x03\x00\x00(\x03\x00\x00:\x03\x00\x00F\x03\x00\x00

Could you give me a clue about how to access that data or that data_define structure?

Thanks and keep on the good work!!

Q: reimport back

Hi xforce, this is not an issue but a question. is this tool only one way or will it be possible to edit files and recompile them back. My feeling is that this wont be possible. Thank you

[Feature] 3D model transcoder

Hi!
At first, I want to thank you for writing this tools, you are awesome!
I'd really love to see a tool so one can view the 3D models or translate them into .obj or the like
(In my case, I'd be only interested in the meshes (maybe they can be rearranged into fitting .obj's?), as I want to make STLs ;) )
Greetings

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.