5ecee87e1c
* [CreatorLayer] onGauntlets() * [LevelTools] base64EncodeString(), verifyLevelIntegrity(), xPosForTime(), timeForXPos(), getAudioFilename(), getAudioTitle(), getArtistForAudio(), getURLForAudio(). * [LevelTools] getLevel() * [LocalLevelManager] init() * [LeaderboardsLayer] init(), [LevelLeaderboard] init() --------- Co-authored-by: Nosu♡ <93537876+Nosu-u@users.noreply.github.com> |
||
---|---|---|
.github | ||
bindings | ||
cmake | ||
codegen | ||
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. 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 incompatability - to ensure that mods work together without buttons getting misplaced or hooks mysteriously disappearing.
Why Geode?
Here's a Hello World mod in Geode:
#include <Geode/Bindings.hpp>
#include <Geode/modify/MenuLayer.hpp>
USE_GEODE_NAMESPACE();
class $modify(MenuLayer) {
void onMoreGames(CCObject*) {
FLAlertLayer::create(
"Geode",
"Hello World from my Custom Mod!",
"OK"
)->show();
}
};
This code changes what happens when the "More Games" button is clicked in Geometry Dash, showing a 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!