You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: getting-started/cpp-stuff.md
+18-14Lines changed: 18 additions & 14 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,23 +4,26 @@ order: 2
4
4
---
5
5
6
6
# Required C++ Tools
7
+
7
8
To be able to use the Geode SDK, you **will** need at least the following:
8
-
*[A C++ compiler](#compiler)
9
-
*[CMake](https://cmake.org/download/) - Version 3.25+ is required, and make sure to add to PATH when installing on windows.
10
-
*[git](https://git-scm.com/downloads) - Hey you. yes you. I know a lot of people skip this **but you will need it**. Don't come at us asking for why "could not find git for clone of json-populate"
9
+
*[A C++ compiler](#compiler)
10
+
*[CMake](https://cmake.org/download/) - Version 3.25+ is required - make sure to add to PATH when installing on Windows.
11
+
*[Git](https://git-scm.com/downloads) - Hey you. Yes, you! I know a lot of people skip this step **but you will need it**. Don't come at us asking for why you "could not find git for clone of json-populate".
11
12
12
13
## Compiler
14
+
13
15
To use the Geode SDK, and in turn make Geometry Dash mods, you will need either:
14
-
*[Visual Studio 2022+](#windows) on Windows
15
-
*[clang](#macos) on MacOS
16
-
*[A secret third thing](#linux) on Linux
16
+
*[Visual Studio 2022+](#windows) on Windows
17
+
*[Clang](#macos) on MacOS
18
+
*[A secret third thing](#linux) on Linux
17
19
18
20
### Windows
19
-
From the [Visual Studio](https://visualstudio.microsoft.com/downloads/) website, you can download the Visual Studio IDE along with the compiler. If you want **just** the compiler, look for *Build Tools for Visual Studio* further down in the page.
20
21
21
-
After launching the installer, look for **Desktop development with C++**. You may choose other features, but you **will** need at least ***MSVC*** and ***Windows SDK*** installed.
22
+
Download Visual Studio from [its website](https://visualstudio.microsoft.com/downloads/). If you want **just** the compiler and not the code editor, look for *Build Tools for Visual Studio* further down in the page.
22
23
23
-
Once its installed, you should now have a working C++ compiler installed that is suited for GD mod development.
24
+
After launching the installer, select **Desktop development with C++**. You may choose other features, but you **will** need at least ***MSVC*** and ***Windows SDK*** installed.
25
+
26
+
Once Visual Studio is installed, you should now have a working C++ compiler that is suited for GD mod development.
24
27
25
28
Please note that Visual Studio **2022** or higher is required. 2019 or lower will not work, as they don't support C++20 properly.
26
29
@@ -32,11 +35,12 @@ brew install llvm
32
35
```
33
36
34
37
### Linux
35
-
Linux is a bit more complicated, as obviously there's no linux release of GD (yet). Of course, you can run the Windows version of GD through software like [wine](https://www.winehq.org/) quite well, which is probably what you're already doing.
36
38
37
-
Because of that, this guide will set you up to [cross-compile](https://en.wikipedia.org/wiki/Cross_compiler) windows Geode mods from linux.
39
+
Linux is a bit more complicated, as there's no official Linux release of GD (yet). Of course, you can run the Windows version of GD through software like [wine](https://www.winehq.org/) quite well, which is probably what you're already doing.
40
+
41
+
Because of that, this guide will set you up to [cross-compile](https://en.wikipedia.org/wiki/Cross_compiler) Windows Geode mods from Linux.
38
42
39
-
First, besides git and cmake, make sure you have `clang` and `lld` installed.
43
+
First, besides Git and Cmake, make sure you have `clang` and `lld` installed.
40
44
41
45
On Ubuntu:
42
46
@@ -50,12 +54,12 @@ On Arch-based systems:
50
54
pacman -S clang lld
51
55
```
52
56
53
-
The next step will install the Windows SDK and a CMake toolchain. For ease of installation, first install [Geode CLI](/getting-started/geode-cli.md) and then come back here. If you want to do it manually, you can follow [this guide](https://gist.github.com/matcool/abb65ee59ded3766717c673014c3a2a7).
57
+
The next step will install the Windows SDK and a CMake toolchain. For ease of installation, first install [the Geode CLI](/getting-started/geode-cli.md) and then come back here. If you want to do it manually, you can follow [this guide](https://gist.github.com/matcool/abb65ee59ded3766717c673014c3a2a7).
54
58
55
59
After installing the CLI, run this command to install all the needed tools:
56
60
57
61
```bash
58
62
geode sdk install-linux
59
63
```
60
64
61
-
Now you can proceed to [setting up the SDK](/getting-started/sdk.md).
65
+
Now you can proceed to [setting up Geode CLI](/getting-started/geode-cli.md).
Copy file name to clipboardExpand all lines: getting-started/create-mod.md
+21-17Lines changed: 21 additions & 17 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,6 +4,7 @@ order: 5
4
4
---
5
5
6
6
# Creating a new mod
7
+
7
8
After all that setup, you can now create your first mod!
8
9
9
10
To do this, open up a terminal where you want to create your project and run:
@@ -15,34 +16,38 @@ Follow the given prompts and afterwards you should have a new folder containing
15
16
## Files
16
17
17
18
You may notice the project already comes with a few files. Lets go over them:
18
-
-`CMakeLists.txt` - This is the main file for your CMake project.
19
-
-`about.md` - Here you can write a very long description page for your mod, in markdown. Think of it as a README for your mod! This file is technically optional, but highly recommended.
20
-
-`logo.png` - This is the icon for your mod, which shows up in-game. This file is technically optional, but highly recommended.
21
-
-`mod.json` - This json file contains all the metadata about your mod, such as name, version, custom resources, settings, etc. [See this page for detailed info](/mods/configuring)
19
+
*`CMakeLists.txt` - This is the main file for your CMake project.
20
+
*`about.md` - Here you can write a very long description page for your mod, in markdown. Think of it as a README for your mod! This file is technically optional, but highly recommended.
21
+
*`logo.png` - This is the icon for your mod, which shows up in-game. This file is technically optional, but highly recommended.
22
+
*`mod.json` - This json file contains all the metadata about your mod, such as name, version, custom resources, settings, etc. [See this page for detailed info](/mods/configuring)
22
23
23
-
If you plan on releasing your mod, **please** edit the about.md and logo.png files!
24
+
If you plan on releasing your mod, remember to edit the about.md and logo.png files!
24
25
25
26
The source code for your mod can be found inside the `src` folder.
26
27
27
28
## Additional Files
29
+
28
30
Geode will also look for these special files within your mod folder:
29
-
-`changelog.md` - Lists all of the changes between versions to the mod; [see detailed info](/mods/md-files)
30
-
-`support.md` - Is free-form info about how to show support to the developer of the mod; [see detailed info](/mods/md-files)
31
+
*`changelog.md` - Lists all of the changes between versions to the mod; [see detailed info](/mods/md-files)
32
+
*`support.md` - Free-form info about how to show support to the developer of the mod; [see detailed info](/mods/md-files)
31
33
32
34
# Build
33
-
Now, to build your mod you have a few options: \
35
+
36
+
Now, to build your mod you have a few options:
37
+
34
38
If youre using an IDE such as Clion, VScode or Visual Studio, head over to the [IDE Setup](/getting-started/ide-setup) page.
35
39
36
-
If you're building for *android*, check out the [android section](#build-for-android).
40
+
If you're building for Android, check out the [Android section](#build-for-android).
37
41
38
42
Otherwise if you want to build your mods manually from the command line you can do that by simply running these commands in your mod's folder:
39
43
```bash
40
44
# Configures & builds for the current platform
41
45
geode build
42
46
```
47
+
43
48
> Check out `geode build --help` for other options!
44
49
45
-
If you have an issue running that command for whatever reason ([let us know!](https://github.com/geode-sdk/cli/issues)), you can build your mod the same way using these commands:
50
+
If you have an issue running that command for whatever reason ([do let us know!](https://github.com/geode-sdk/cli/issues)), you can build your mod the same way using these commands:
46
51
```bash
47
52
# Configure CMake
48
53
cmake -B build
@@ -51,19 +56,18 @@ cmake -B build
51
56
cmake --build build --config RelWithDebInfo
52
57
```
53
58
54
-
If you [created a profile in CLI](/getting-started/geode-cli), then the mod should be automatically copied over to your mods folder, if not, then the built `your.mod.geode`file should be in your build folder.
59
+
If you [created a profile in CLI](/getting-started/geode-cli), then the mod should be automatically installed to GD. If not, then the built `your.mod.geode`package should be in your build folder, from where you can manually install it in-game.
55
60
56
61
## Build for Android
57
62
58
-
To build mods for android you must install the [Android NDK](https://developer.android.com/ndk/downloads). \
59
-
Extract it somewhere and set the `ANDROID_NDK_ROOT` enviroment variable to its path.
63
+
To build mods for Android you must install the [Android NDK](https://developer.android.com/ndk/downloads). Extract it somewhere and set the `ANDROID_NDK_ROOT` enviroment variable to its path.
60
64
61
-
On **Windows** you must also install [ninja](https://github.com/ninja-build/ninja/releases). You can do this via scoop `scoop install ninja`
65
+
On **Windows** you must also install [Ninja](https://github.com/ninja-build/ninja/releases). If you have Scoop, you can do this via `scoop install ninja`.
62
66
63
-
Now you can build your mod for android by just doing:
67
+
Now you can build your mod for Android via:
64
68
```bash
65
69
geode build -p android64
66
-
#or if you're using a 32 bit phone
70
+
#Or if you're using a 32 bit phone
67
71
geode build -p android32
68
72
```
69
73
@@ -74,7 +78,7 @@ You can then copy the built .geode file from the `build-android64` folder to you
74
78
75
79
## Building Windows mods on Linux
76
80
77
-
If you have followed the steps earlier and installed all the required tools with `geode sdk install-linux`, building should be as simple as on windows:
81
+
If you have followed the steps earlier and installed all the required tools with `geode sdk install-linux`, building should be as simple as on Windows:
Copy file name to clipboardExpand all lines: getting-started/geode-cli.md
+20-26Lines changed: 20 additions & 26 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,7 +4,8 @@ order: 3
4
4
---
5
5
6
6
# Geode CLI
7
-
The Geode SDK has its own command line utility program to aid in many tasks involved in mod, such as asset packing, font generation, managing the SDK, etc.
7
+
8
+
Geode has its own CLI tool to aid in many tasks involved in making mods, such as packing assets, generating fonts, managing installed SDK versions, etc.. While it is technically possible to use Geode without the CLI, there is little reason not to install it as **it's required for nearly everything in practice**.
8
9
9
10
# Installation
10
11
@@ -14,37 +15,35 @@ The Geode SDK has its own command line utility program to aid in many tasks invo
14
15
15
16
## Windows
16
17
17
-
### scoop
18
-
You can use [scoop](https://scoop.sh/) to easily install the cli by doing:
18
+
### Scoop
19
+
20
+
You can use [Scoop](https://scoop.sh/) to easily install the CLI by doing:
19
21
```bash
20
22
scoop bucket add extras
21
23
scoop install geode-sdk-cli
22
24
```
23
-
In the future you can easily update the cli by doing:
25
+
Later on, you can easily update the Geode CLI by doing:
24
26
```bash
25
27
scoop update geode-sdk-cli
26
28
```
27
29
28
-
If you don't have scoop, you can follow the installation instructions on their page:
29
-
[https://scoop.sh](https://scoop.sh)
30
-
31
30
### winget
32
-
We are also on [winget](https://learn.microsoft.com/en-us/windows/package-manager/winget/), so to install the cli you can do:
31
+
32
+
If you prefer, you can also use [WinGet](https://learn.microsoft.com/en-us/windows/package-manager/winget/):
33
33
```bash
34
34
winget install GeodeSDK.GeodeCLI
35
35
```
36
-
In the future you can easily update the cli by doing:
36
+
To update the CLI, run:
37
37
```bash
38
38
winget upgrade GeodeSDK.GeodeCLI
39
39
```
40
40
41
-
42
41
---
43
42
44
-
(Not Recommended:c) Otherwise, you can manually install it by:
45
-
1. Download the latest windows release over at[GitHub](https://github.com/geode-sdk/cli/releases/latest)
46
-
1. Extract the `geode.exe` into some folder on your computer
47
-
1. Select the CLI executable in File Explorer, Shift + Right-Click it and select `Copy as Path`
43
+
**(Not Recommended!)** Otherwise, you can manually install the Geode CLI by:
44
+
1. Download the latest Windows release over on[GitHub](https://github.com/geode-sdk/cli/releases/latest)
45
+
1. Extract `geode.exe` into some folder on your computer
46
+
1. Select the executable in File Explorer, Shift + Right-Click it and select `Copy as Path`
48
47
1. Search `Edit the system environment variables` on Windows search. Alternatively, you can open up Control Panel and search for it, then select `Edit the system environment variables` or **to skip straight to step 6 select `Edit environment variables for your account`**.
49
48
1. Click `Environment Variables...`
50
49
1. In the top `User variables` section, select the `Path` variable and click `Edit`
After either way of installing it, you should now be able to run `geode --version` in your cmd and see a version number!
55
+
After installing the CLI, you should now be able to run `geode --version` in your command line and see a version number! (If this doesn't work, try restarting your terminal and/or computer.)
57
56
58
-
It is recommended that you [set up a profile now](#profile-setup).
57
+
It is recommended that you [set up a profile afterwards](#profile-setup).
59
58
60
59
## MacOS
61
60
62
-
You can easily install the CLI via [brew](https://brew.sh)
61
+
You can easily install the CLI via [Brew](https://brew.sh)
63
62
```bash
64
63
brew install geode-sdk/geode/geode-cli
65
64
```
66
65
67
-
It is recommended that you [set up a profile now](#profile-setup).
66
+
It is recommended that you [set up a profile afterwards](#profile-setup).
68
67
69
68
## Linux
70
69
71
-
We provide prebuilt linux binaries in the CLI releases page, which you can find here: \
Since this is different per distro, you must figure out how to add this binary to your path for CMake to find it.
75
-
76
-
Once you figure that out, it is recommended that you [set up a profile now](#profile-setup).
70
+
We provide prebuilt Linux binaries in [the CLI releases page]((https://github.com/geode-sdk/cli/releases/latest)). Since Linux distros differ between each other, you need to figure out yourself how to add this binary to your global path so CMake can find it. As long as `geode --version` works anywhere, everything should be fine.
77
71
72
+
Once you figure that out, it is recommended that you [set up a profile afterwards](#profile-setup).
78
73
79
74
# Profile Setup
80
75
81
-
A profile is just an instance of Geometry Dash. It's a good idea to set up one up for CLI so your mods can be automatically installed post build.
76
+
A profile is just an instance of Geometry Dash. The CLI allows keeping multiple separate installations of Geometry Dash at once, though most users will just have a single installation of GD with Geode on it. If you do have GDPSes with Geode on them installed, you can run `geode profile add`to add them to the list of known profiles. You need to have at least one profile set up so your mods can be automatically installed post build.
82
77
83
78
To setup a new profile, simply run the `geode config setup` command on your terminal.
0 commit comments