Repository navigation
Home Page, Index (EN)
Welcome to the Project DELTA wiki! Feel free to edit and contribute!
A special thank you for everyone that helped during development, mainly the folks from Underminers and elite_pleb.
This wiki shall be updated with every major release (if I get around to it, or someone makes a PR).
Keep in mind this is very WIP, so the majority of articles are unfinished.
We begin in the "PD" folder, as the dependencies aren't really that hard to grasp, and you probably won't even touch them.
-
Hooks - Every function that Project DELTA taps into is here, so you can view the game's inner workings
-
DoCallScript - This function is used by the game when a script is called - scripts are usually prefixed with
gml_Scriptin tools like UndertaleModTool. - EndScene - This function is not used by the game directly, instead it's used for rendering in older titles like Undertale (or other games utilizing DirectX 9).
- ExecuteIt - This function is used by the game when it wants to call events on an object (usually stuff like drawing, advancing timers, etc.).
- Present - This function is not used by the game directly, instead it's used for rendering in newer titles like Deltarune (or other games utilizing DirectX 11).
-
Window Procedure - This function is used by Windows, and handles window messages (resizing, keystrokes, mouse clicks).
- Project DELTA uses this for cancelling input while the menu is open (and the option is enabled under settings, of course).
- The game (doesn't matter which one) uses this for registering key presses and mouse clicks inside the game window.
-
DoCallScript - This function is used by the game when a script is called - scripts are usually prefixed with
-
SDK - Every module that Project DELTA employs to aid with modding GameMaker games is located here.
- Callback Manager - Want to call your function on a specific game event (for example rendering a frame)? Using this is your best bet.
- Hook System - Used to intercept game functions and run your own code whenever those functions are called by the game.
- Invoker - Used to call game functions to gather information about the game's state.
-
Lua Engine - Several modules strapped together, allowing for extensible modding of games using the Lua API.
- Engine Base - Handles execution of scripts, also gives you the error message when you mess something up 😀
-
Lua Callback Manager - Pretty much the same thing as the C++ callback manager, but more limited.
- Used in the
add_callbackandremove_callbackfunctions respectively.
- Used in the
- Lua Script Hook System - An extension of the Lua Callback Manager, allowing for running code before scripts.
- Memory Manager - Everything regarding memory is here, for example pattern scanning, or if a pointer is valid.
- Structs - Everything exclusive to GameMaker resides here, including all data structures.
-
UI - Everything related to the front-end of Project DELTA (the stuff you can actually see) is here.
TODO