From ec2039cd469c7be48e6f4efe898cbb7d1ba84688 Mon Sep 17 00:00:00 2001 From: matcool <26722564+matcool@users.noreply.github.com> Date: Sun, 1 Oct 2023 09:05:01 -0300 Subject: [PATCH 1/3] begin getting started overhaul --- getting-started-new/1.1.cpp-stuff.md | 24 ++++++++++++++ getting-started-new/1.2.geode-cli.md | 43 ++++++++++++++++++++++++++ getting-started-new/1.prerequisites.md | 3 ++ getting-started-new/index.md | 11 +++++++ 4 files changed, 81 insertions(+) create mode 100644 getting-started-new/1.1.cpp-stuff.md create mode 100644 getting-started-new/1.2.geode-cli.md create mode 100644 getting-started-new/1.prerequisites.md create mode 100644 getting-started-new/index.md diff --git a/getting-started-new/1.1.cpp-stuff.md b/getting-started-new/1.1.cpp-stuff.md new file mode 100644 index 0000000..578a714 --- /dev/null +++ b/getting-started-new/1.1.cpp-stuff.md @@ -0,0 +1,24 @@ +# Required C++ Tools +To be able to use the Geode SDK, you **will** need at least the following: +* [A C++ compiler](#compiler) +* [CMake](https://cmake.org/download/) +* [git](https://git-scm.com/downloads) + +## Compiler +To use the Geode SDK, and in turn make Geometry Dash mods, you will need either: +* [Visual Studio](#windows) on Windows +* [clang](#macos) on MacOS +* [A secret third thing](#linux) on Linux + +### Windows +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. + +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. + +Once its installed, you should now have a working C++ compiler installed that is suited for GD mod development. + +### MacOS +For macos u install clang somehow sorry + +### Linux +Linux is well.. complicated \ No newline at end of file diff --git a/getting-started-new/1.2.geode-cli.md b/getting-started-new/1.2.geode-cli.md new file mode 100644 index 0000000..c4403de --- /dev/null +++ b/getting-started-new/1.2.geode-cli.md @@ -0,0 +1,43 @@ +# Geode CLI +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. + +# Installation + +* [Windows](#windows) +* [MacOS](#macos) + +## Windows +If you have [scoop](https://scoop.sh/) you can easily install the cli by doing: +```bash +scoop install https://geode-sdk.org/geode-sdk-cli.json +``` + +--- + +Otherwise, you can manually install it by: +1. Download the latest windows release over at [GitHub](https://github.com/geode-sdk/cli/releases/latest) +1. Extract the `geode.exe` into some folder on your computer +1. Select the CLI executable in File Explorer, Shift + Right-Click it and select `Copy as Path` +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 3 select `Edit environment variables for your account`**. +1. Click `Environment Variables...` +1. In the top `User variables` section, select the `Path` variable and click `Edit` +1. Now click `New` and paste the path of the CLI executable you copied at Step 1. **Remove the `\geode.exe` from the end;** the path has to point to the _directory_ with Geode CLI, not the CLI itself. +1. Click OK to close the environment variable windows. + +--- + +After either way of installing it, you should now be able to run `geode --version` in your cmd and see a version number! + +It is recommended that you [set up a profile now](#profile-setup). + +## MacOS + +i dont know either sorry mac ppl + +It is recommended that you [set up a profile now](#profile-setup). + +# Profile Setup + +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. + +To setup a new profile, simply run the `geode config setup` command on your terminal. \ No newline at end of file diff --git a/getting-started-new/1.prerequisites.md b/getting-started-new/1.prerequisites.md new file mode 100644 index 0000000..35ef264 --- /dev/null +++ b/getting-started-new/1.prerequisites.md @@ -0,0 +1,3 @@ +# Prerequisites +Before you get started with developing with the Geode SDK, there are a few prerequisites that you should know about! +* Prior C++ knowledge is **HIGHLY** recommended. We do not intend in helping you at C++ from the very basics. diff --git a/getting-started-new/index.md b/getting-started-new/index.md new file mode 100644 index 0000000..80f4330 --- /dev/null +++ b/getting-started-new/index.md @@ -0,0 +1,11 @@ +--- +title: Getting Started +--- + +1. Prerequisites + 1. C++ stuff + 1. Geode CLI +1. Setting up the SDK +1. Creating a new mod + 1. IDE setup +1. What next? \ No newline at end of file From e43fa5edb7b2e8cff83f7cd8b4f87cea1ed4f6ee Mon Sep 17 00:00:00 2001 From: matcool <26722564+matcool@users.noreply.github.com> Date: Sun, 1 Oct 2023 10:29:57 -0300 Subject: [PATCH 2/3] add ordering now --- getting-started-new/1.1.cpp-stuff.md | 5 +++++ getting-started-new/1.2.geode-cli.md | 5 +++++ getting-started-new/1.prerequisites.md | 8 ++++++++ getting-started-new/index.md | 3 ++- getting-started.md | 2 +- 5 files changed, 21 insertions(+), 2 deletions(-) diff --git a/getting-started-new/1.1.cpp-stuff.md b/getting-started-new/1.1.cpp-stuff.md index 578a714..40b5671 100644 --- a/getting-started-new/1.1.cpp-stuff.md +++ b/getting-started-new/1.1.cpp-stuff.md @@ -1,3 +1,8 @@ +--- +title: 1.1. Required C++ Tools +order: 3 +--- + # Required C++ Tools To be able to use the Geode SDK, you **will** need at least the following: * [A C++ compiler](#compiler) diff --git a/getting-started-new/1.2.geode-cli.md b/getting-started-new/1.2.geode-cli.md index c4403de..1ef05f2 100644 --- a/getting-started-new/1.2.geode-cli.md +++ b/getting-started-new/1.2.geode-cli.md @@ -1,3 +1,8 @@ +--- +title: 1.2. Geode CLI +order: 3 +--- + # Geode CLI 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. diff --git a/getting-started-new/1.prerequisites.md b/getting-started-new/1.prerequisites.md index 35ef264..d0dc787 100644 --- a/getting-started-new/1.prerequisites.md +++ b/getting-started-new/1.prerequisites.md @@ -1,3 +1,11 @@ +--- +title: 1. Prerequisites +order: 1 +--- + # Prerequisites Before you get started with developing with the Geode SDK, there are a few prerequisites that you should know about! * Prior C++ knowledge is **HIGHLY** recommended. We do not intend in helping you at C++ from the very basics. +* Installing [Geode](https://geode-sdk.org/install/) itself! you want to test your own mods dont you? + +It is recommended that you follow the tutorials on this chapter in order. \ No newline at end of file diff --git a/getting-started-new/index.md b/getting-started-new/index.md index 80f4330..88a04ce 100644 --- a/getting-started-new/index.md +++ b/getting-started-new/index.md @@ -1,5 +1,6 @@ --- -title: Getting Started +title: Getting Started (new) +order: 1 --- 1. Prerequisites diff --git a/getting-started.md b/getting-started.md index 746057a..40681de 100644 --- a/getting-started.md +++ b/getting-started.md @@ -1,5 +1,5 @@ --- -title: Getting started +title: Getting started (old) icon: play description: Instructions for creating mods with the Geode SDK & other developer tools order: 1 From 38428d91c048c444573e7ccbba9c8c8a9cd6b433 Mon Sep 17 00:00:00 2001 From: matcool <26722564+matcool@users.noreply.github.com> Date: Sun, 1 Oct 2023 11:41:15 -0300 Subject: [PATCH 3/3] even more new pages --- .../{1.1.cpp-stuff.md => cpp-stuff.md} | 0 getting-started-new/create-mod.md | 46 ++++++++++++++++++ .../{1.2.geode-cli.md => geode-cli.md} | 2 +- .../{1.prerequisites.md => prerequisites.md} | 0 getting-started-new/sdk.md | 47 +++++++++++++++++++ 5 files changed, 94 insertions(+), 1 deletion(-) rename getting-started-new/{1.1.cpp-stuff.md => cpp-stuff.md} (100%) create mode 100644 getting-started-new/create-mod.md rename getting-started-new/{1.2.geode-cli.md => geode-cli.md} (96%) rename getting-started-new/{1.prerequisites.md => prerequisites.md} (100%) create mode 100644 getting-started-new/sdk.md diff --git a/getting-started-new/1.1.cpp-stuff.md b/getting-started-new/cpp-stuff.md similarity index 100% rename from getting-started-new/1.1.cpp-stuff.md rename to getting-started-new/cpp-stuff.md diff --git a/getting-started-new/create-mod.md b/getting-started-new/create-mod.md new file mode 100644 index 0000000..62b69db --- /dev/null +++ b/getting-started-new/create-mod.md @@ -0,0 +1,46 @@ +--- +title: 3. Creating a new mod +order: 5 +--- + +# Creating a new mod +After all that setup, you can now create your first mod! + +To do this, open up a terminal where you want to create your project and run: +```bash +geode new +``` +Follow the given prompts and afterwards you should have a new folder containing the code for your mod. + +## Files + +You may notice the project already comes with a few files. Lets go over them: +- `CMakeLists.txt` - This is the main file for your CMake project. +- `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. +- `logo.png` - This is the icon for your mod, which shows up in-game. This file is technically optional, but highly recommended. +- `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]() + +If you plan on releasing your mod, **please** edit the about.md and logo.png files! + +The source code for your mod can be found inside the `src` folder. + +## Additional Files +Geode will also look for these special files within your mod folder: +- `changelog.md` - Lists all of the changes between versions to the mod; [see detailed info](/mods/md-files) +- `support.md` - Is free-form info about how to show support to the developer of the mod; [see detailed info](/mods/md-files) + +# Build +Now, to build your mod you have a few options: \ +If youre using an IDE such as Clion, VScode or Visual Studio, head over to the [IDE Setup]() page. + +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: +```bash +# Configure CMake (WINDOWS) +cmake -B build -A win32 + +# Configure CMake (Other platforms) +cmake -B build + +# Build the project +cmake --build build --config RelWithDebInfo +``` \ No newline at end of file diff --git a/getting-started-new/1.2.geode-cli.md b/getting-started-new/geode-cli.md similarity index 96% rename from getting-started-new/1.2.geode-cli.md rename to getting-started-new/geode-cli.md index 1ef05f2..25e9ff1 100644 --- a/getting-started-new/1.2.geode-cli.md +++ b/getting-started-new/geode-cli.md @@ -23,7 +23,7 @@ Otherwise, you can manually install it by: 1. Download the latest windows release over at [GitHub](https://github.com/geode-sdk/cli/releases/latest) 1. Extract the `geode.exe` into some folder on your computer 1. Select the CLI executable in File Explorer, Shift + Right-Click it and select `Copy as Path` -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 3 select `Edit environment variables for your account`**. +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`**. 1. Click `Environment Variables...` 1. In the top `User variables` section, select the `Path` variable and click `Edit` 1. Now click `New` and paste the path of the CLI executable you copied at Step 1. **Remove the `\geode.exe` from the end;** the path has to point to the _directory_ with Geode CLI, not the CLI itself. diff --git a/getting-started-new/1.prerequisites.md b/getting-started-new/prerequisites.md similarity index 100% rename from getting-started-new/1.prerequisites.md rename to getting-started-new/prerequisites.md diff --git a/getting-started-new/sdk.md b/getting-started-new/sdk.md new file mode 100644 index 0000000..e6566f3 --- /dev/null +++ b/getting-started-new/sdk.md @@ -0,0 +1,47 @@ +--- +title: 2. Setting up the SDK +order: 4 +--- + +# Setting up the SDK +To install the SDK we will be using the CLI installed on the previous step. + +To download the sdk, you can simply run the command: +```bash +geode sdk install +``` +This *should* set the `GEODE_SDK` enviroment variable, which can you test after reopening your terminal: +```bash +# on windows +echo %GEODE_SDK% + +# elsewhere +echo $GEODE_SDK +``` + +If that command prints out the path you installed the SDK to, then it has worked correctly. + +To develop mods, you should also download the prebuilt binaries for Geode, which you can do by running this command: +```bash +geode sdk install-binaries +``` + +## Updating +You will need to manually update your local SDK every once in a while, which you do by running this command: +```bash +geode sdk update +``` + +do you need to run install-binaries after this? i forgot + +--- + +You can also switch to the **nightly** version, which uses the latest commit. +```bash +geode sdk update nightly +``` + +Or to go back to stable: +```bash +geode sdk update stable +``` \ No newline at end of file