Coder Social home page Coder Social logo

playlunky's Introduction

Playlunky


This is a launcher for Spelunky 2 that injects a dll for extended mod management. It currently supports string, shader, sprite and string mods, with some extended features for more fine grained modding. See the Wiki for details.

Features

  • Loose loading of resources
  • Mod Management
    • Sprite mods
    • Shader mods
    • String mods
    • Script mods For more details on each feature check the Wiki.

Development Features

  • Anti-anti-debug injection via ScyllaHide
  • Logging to console via --console

Credits

A huge thanks to the spelunky-fyi team for their input, suggestions, support and for making all their hard work open source. Special thanks to gmjosack, Dregu and iojonmbnmb that made it possible for this tool to exist. And even huger thanks to SK83RJOSH for basically teaching me how to reverse engineer software by himself.

Build

Only Windows build is supported:

git clone [email protected]:spelunky-fyi/Playlunky.git
cd playlunky
git submodule update --init --recursive
mkdir build
cd build
cmake ..
cmake --build . --config Release
cmake --install .

Build artifacts are found in the publish folder.

Requirements

  • MSVC 2019 (for C++20)
  • python
    • cmake
    • conan
  • clang-format

Debugging with Visual Studio

If you have installed Spelunky 2 then the install folder should be found during configuration of the project. When CMake can't find the installation directory please make an issue explaining your setup. In that case or when you have a copy of the game outside the actual installation directory that you want to work with you can pass the directory to CMake during configure:

cmake .. -DSPELUNKY_INSTALL_DIR='C:/Path/To/Install/Folder/Spelunky 2'
cmake --build . --config Release

Now the Visual Studio solution should be setup to start the game with playlunky64.dll injected when starting a debugging session.

If you want to debug the game itself as well as the playlunky64.dll it is highly recommended to get the Microsoft Child Process Debugging Power Tool extension and enable child process debugging in Debug โ†’ Other Debug Targets โ†’ Child Process Debugging Settings...

Anti-Debugging Prevention

This section can be ignored for Spelunky 2 versions newer than 1.20.0j, perhaps even some older versions. If the game employs any anti-debugging strategies it is supported to inject ScyllaHide into the game process. To do this download ScyllaHide from Github and extract it into a ScyllaHide subfolder right next to the game. The playlunky64.dll will do the rest.

playlunky's People

Contributors

malacath-92 avatar dregu avatar gmjosack avatar mr-auto avatar mauvealerts avatar fienestar avatar

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.