The ultimate Geometry Dash modding framework
Find a file
HJfod f32aaa8b12 add better support for dependencies
- create_geode_file now redirects to a new function called setup_geode_mod
 - setup_geode_mod auto-links loader
 - setup_geode_mod invokes CLI (if v1.4.0+) to automatically check your dependencies and install them + link their headers and libs to your project
 - fix Result::expect not working on non-copiable types
 - add in-memory functions for file::Zip and file::Unzip
 - ComparableVersionInfo now always returns false if major versions dont match
2023-01-31 14:48:34 +02:00
.github Update build.yml 2023-01-28 12:19:16 +03:00
bindings add drawgridlayer loadsomething 2023-01-25 18:09:52 +03:00
cmake add better support for dependencies 2023-01-31 14:48:34 +02:00
codegen add codegenned address -> handlermetadata map 2023-01-29 17:17:41 +03:00
loader add better support for dependencies 2023-01-31 14:48:34 +02:00
.clang-format some formatting 2022-12-03 15:24:31 +03:00
.gitattributes update .gitattributes 2022-12-31 16:33:53 +03:00
.gitignore update flash.toml 2023-01-27 13:42:04 +02:00
CHANGELOG.md fix AEnterLayerEvent + resources not being loaded properly 2023-01-24 00:13:20 +02:00
CMakeLists.txt update tuliphook 2023-01-29 09:38:55 +03:00
entry.cpp fix getMod being undefined because silly me marked it inline 2023-01-21 16:42:39 +02:00
EULA whole of geode except without history 2022-07-30 19:24:03 +03:00
flash.toml add assets to docs 2023-01-28 19:01:04 +02:00
LICENSE.txt added clang-format 2022-10-30 21:24:06 +03:00
README.md new readme 2023-01-24 11:32:05 +02:00
title.png add title.png 2023-01-24 11:32:31 +02:00
VERSION bump version to v1.0.0-beta 2023-01-24 13:17:27 +02:00

Geode Logo

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!