798cacc1a8
exposing an internal field like this isn't the best practice, but it seemed like the best and simplest solution to me to a problem of not being able to do anything to unknown setting keys (such as removing them or migrating their data if that key used to be a valid setting) |
||
---|---|---|
.github | ||
cmake | ||
installer | ||
loader | ||
.clang-format | ||
.gitattributes | ||
.gitignore | ||
CHANGELOG.md | ||
CMakeLists.txt | ||
entry.cpp | ||
EULA | ||
FilesystemImpl.cpp | ||
flash.toml | ||
LICENSE.txt | ||
README.md | ||
title.png | ||
VERSION |
Home page
Geode is a Geometry Dash mod loader and modding SDK with a modern approach towards mod development.
Why Geode?
Unlike previous mod loaders, which merely inject the DLLs and let devs handle the rest, Geode aims to be a more comprehensive project that provides all the tools needed for creating mods in one package.
Geode's goal is to solve mod incompatibility - to ensure that mods work together without buttons getting misplaced or hooks mysteriously disappearing.
"Hello World!" Example
Here's a Hello World mod in Geode:
#include <Geode/Bindings.hpp>
#include <Geode/modify/MenuLayer.hpp>
using namespace geode::prelude;
class $modify(MenuLayer) {
void onMoreGames(CCObject*) {
FLAlertLayer::create(
"Geode",
"Hello World from my Custom Mod!",
"OK"
)->show();
}
};
This code modifies what happens when the "More Games" button is clicked on the home scene in Geometry Dash, showing a custom popup.
Documentation
Detailed documentation, tutorials, and installation instructions on using Geode can be found here.
New to modding GD? Geode's documentation also comes with a handy tutorial book that explains all the basics of GD modding!
Contribution
You can contribute to Geode by opening a Pull Request! Please follow the contribution guidelines.
Questions, help, etc.
If you have any further questions, need help, or just want to share your love for catgirls, be sure to join our Discord server!