Giter VIP home page Giter VIP logo

honkai-dumper's Introduction

Honkai: Star Rail Dumper License OS Discord

Free and open-source tool for Honkai: Star Rail that allows you to dump offsets for almost all methods found in GameAssembly.dll in the json format. The program is developed as an internal module that's being loaded into the game process. Compatible only with the global version of the game.

FAQ

How to load the tool?

I am not providing any builds of this program, so if you want to try it out you will have to compile it yourself. Once you do that, you can use the loader from my other program, Genshin Utility, to load this tool into the game.

How do I know if it worked?

About 10 seconds after injecting the tool into the game a console should show up. Once you see a message saying done in it, a file called methods.json should appear in the same folder where the game (StarRail.exe) is installed.

Why are some methods just random characters?

Many methods inside the game are obfuscated by developers in order to make reverse engineering harder. There is very little you can do about it, and it's not the purpose of this program.

Example output

Here are a few lines from the file generated by this tool.

{
  ...
  "RPG.Client.AutoPlayable::OnLightweightActivate": "0x3867ac0",
  "RPG.Client.AutoPlayable::OnLightweightDeactivate": "0x3867b60",
  "RPG.Client.AutoScrollRect::.ctor": "0x34b1280",
  "RPG.Client.AutoScrollRect::HDMOCEMAKBC": "0x34b0bc0",
  "RPG.Client.AutoScrollRect::NPHMCMMFMIB": "0x34b0c50",
  "RPG.Client.AutoScrollRect::SetItemSelectCallback": "0x34b0ca0",
  "RPG.Client.AutoScrollRect::SnapTo": "0x34b0e60",
  ...
}

License

This project is licensed under the GPL-3.0 License - see the LICENSE file for details.

honkai-dumper's People

Contributors

lanylow avatar

Stargazers

Hate the world avatar xjkxjk avatar  avatar nanas avatar alt avatar Gktwo avatar liuying avatar Unipendix avatar striiike avatar 360NENZ avatar 馬良※チノ avatar Cyt avatar PDMengQAQ avatar windowsed avatar 亡灵暴龙大帝(恩师顾宇)[$ǿ*防下号%♀♂£] avatar WatchAndyTW avatar ZianTT avatar  avatar  avatar DreamSoule avatar Fadh- avatar YHY avatar LaTlcia avatar

Watchers

 avatar

honkai-dumper's Issues

Maybe these are offsets for the new version

  il2cpp_domain_get: get_method_ptr(base + 0x1D59DD0),
  il2cpp_domain_get_assemblies: get_method_ptr(base + 0x1D59DE0),
  il2cpp_assembly_get_image: get_method_ptr(base + 0x1D59C88),
  il2cpp_image_get_class_count: get_method_ptr(base + 0x1D5A100),
  il2cpp_image_get_class: get_method_ptr(base + 0x1D5A108),
  il2cpp_class_get_methods: get_method_ptr(base + 0x1D59CF0),
  il2cpp_class_get_name: get_method_ptr(base + 0x1D59D00),
  il2cpp_class_get_namespace: get_method_ptr(base + 0x1D59D10),
  il2cpp_method_get_name: get_method_ptr(base + 0x1D59F60)

function offset from GameAssembly.dll + Offset ?

impl Il2CppFunctions { pub fn new(base: usize) -> Self { Il2CppFunctions { il2cpp_domain_get: get_method_ptr(base + 0x1cf2e48), il2cpp_domain_get_assemblies: get_method_ptr(base + 0x1cf2e58), il2cpp_assembly_get_image: get_method_ptr(base + 0x1cf2d10), il2cpp_image_get_class_count: get_method_ptr(base + 0x1cf3178), il2cpp_image_get_class: get_method_ptr(base + 0x1cf3180), il2cpp_class_get_methods: get_method_ptr(base + 0x1cf2d78), il2cpp_class_get_name: get_method_ptr(base + 0x1cf2d88), il2cpp_class_get_namespace: get_method_ptr(base + 0x1cf2d98), il2cpp_method_get_name: get_method_ptr(base + 0x1cf2fd8) } } }

About CN version

After testing, the CN version is compatible.
How do you get these offsets, and where should you analyze them.

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.