Skip to content

Commit

Permalink
lol!
Browse files Browse the repository at this point in the history
  • Loading branch information
FireMario211 committed Jun 8, 2024
1 parent b6f221b commit e240ae2
Show file tree
Hide file tree
Showing 36 changed files with 1,164 additions and 395 deletions.
5 changes: 3 additions & 2 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,8 @@ jobs:
- name: Windows
os: windows-latest

- name: macOS
os: macos-latest
#- name: macOS
#os: macos-latest

- name: Android32
os: ubuntu-latest
Expand All @@ -41,6 +41,7 @@ jobs:
build-config: 'RelWithDebInfo'
export-pdb: true
combine: true
sdk: 'nightly'
target: ${{ matrix.config.target }}

package:
Expand Down
4 changes: 4 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -71,3 +71,7 @@ note for me: maybe make server closed source or in a private repo, idk if people

# a note for a certain somebody
please credit me and ask before using my code, and **make sure it's open sourced**. I worked hard on this project and I don't want some of the features to have its code taken without me knowing.

# a small todo for me
- Added Rotation Hack (Only on Windows & Android)
- Added Default Song Bypass (Only on Windows & Android)
4 changes: 2 additions & 2 deletions about.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,15 +3,15 @@
A mod that intends to be a free alternative to other mod menus, while also adding extra useful additions. (Press `Tab` to open menu)
[Support Discord Server](https://discord.gg/pnD8cnwdhZ)

![Mod Example](firee.PrismMenu/Screenshot1.png)
![Mod Example](firee.prism/Screenshot1.png)
This mod menu also provides unique features not present in most mod menus, here are a few examples.
## Tons of different mods
* Prism Menu by default comes with a lot of mods / hacks that are in most mod menus! While the current amount is low, I plan on adding more as I update this mod.
## Custom Themes
* You can use the set themes present here, or create/import your own theme!
* Currently, there are 2 themes available: `Future Dark`, `Light`, & `Catppuccin`, but you can create your own theme and share it with others!

![Theme Example](firee.PrismMenu/Screenshot2.png)
![Theme Example](firee.prism/Screenshot2.png)
## Multi-Language Support
* Prism Menu supports more languages than **English,** it supports **Spanish**, **French**, **Portuguese** (Brazilian), **German**, **Russian**, **Czech**, and many more!
## Replay Bot (Quartz)
Expand Down
6 changes: 3 additions & 3 deletions build.sh
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
#export GEODE_SDK=/home/fire/.geodenightly # remove when geode 2.0.0 is released
export GEODE_SDK=/home/fire/.geodenightly # remove when geode 2.0.0 is released
export SPLAT_DIR=/home/fire/xwin/splat
export TOOLCHAIN_REPO=/home/fire/xwin/toolchain
export GEODE_BINDINGS_REPO_PATH=/home/fire/.geodebindings
#export GEODE_GD_VERSION=2.200
export LOCAL=1
export HOST_ARCH=x86
export HOST_ARCH=x64
export MSVC_BASE=$SPLAT_DIR/crt
export WINSDK_BASE=$SPLAT_DIR/sdk
#export WINSDK_VER=10.0.22000
Expand Down Expand Up @@ -32,4 +32,4 @@ cmake \

cmake --build build-linux-deb --config RelWithDebInfo
# /SDrive/Users/Fire/Desktop/Restoration/ClarifyGDPS V.1.3/GDGeode-2.204
cp build-linux-deb/firee.PrismMenu.geode "/SDrive/Users/Fire/Desktop/Restoration/ClarifyGDPS V.1.3/GDGeode-2.204/geode/mods/firee.PrismMenu.geode"
cp build-linux-deb/firee.prism.geode "/SDrive/Users/Fire/Desktop/Restoration/ClarifyGDPS V.1.3/GDGeode-2.206/geode/mods/firee.prism.geode"
10 changes: 10 additions & 0 deletions changelog.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,13 @@
# v1.7.0
- Allowed changing the keybind
- Added Ukrainian translations (Thank you Lancelot!)
- Added CBF warning
- Added Custom Object Bypass (Only on Windows)
- Fixed Noclip Accuracy from going to the negatives.
- Temporarily removed No Pulse
- Removed Anticheat Bypass (since its useless now)
- (hopefully) Fix issues with Android on playing back a macro.
- Changed Mod ID from firee.PrismMenu to firee.prism
# v1.6.4
- Added indicators for the hold/release button
- Added Practice Music Hack back (a silly mistake I made with the if condition)
Expand Down
27 changes: 19 additions & 8 deletions mod.json
Original file line number Diff line number Diff line change
@@ -1,17 +1,21 @@
{
"geode": "2.0.0-beta.27",
"version": "v1.6.4",
"geode": "3.0.0-alpha.1",
"version": "v1.7.0",
"gd": {
"win": "2.204",
"mac": "2.200",
"android": "2.205"
"win": "2.206",
"mac": "2.206",
"android": "2.206"
},
"id": "firee.PrismMenu",
"id": "firee.prism",
"name": "Prism Menu",
"developer": "Firee",
"description": "A cross-platform mod menu for Geode.",
"early-load": true,
"repository": "https://github.com/FireMario211/Prism-Menu",
"links": {
"community": "https://discord.gg/pnD8cnwdhZ",
"source": "https://github.com/FireMario211/Prism-Menu"
},
"tags": ["cheats", "gameplay", "utility", "customization"],
"resources": {
"files": [
"resources/icon.png",
Expand Down Expand Up @@ -51,5 +55,12 @@
"description": "NONE",
"type": "custom"
}
}
},
"incompatibilities": [
{
"id": "firee.PrismMenu",
"version": "*",
"importance": "superseded"
}
]
}
8 changes: 5 additions & 3 deletions resources/hacks/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,8 +21,9 @@ It is not advised to change any of this, as it may cause your game to crash if y
{"addr": "0x20A3B2", "on": "E9 9A 01 00 00 90 90", "off": "80 BB 94 04 00 00 00"}, // this isnt arm code! this is x86! make sure to do arm bytes
{"addr": "0x1FD40F", "on": "E9 13 06 00 00 90 90", "off": "83 B9 64 03 00 00 01"}
],
// android64 isnt included but it's supported in the "platforms" key. If android64 not included, it will assume that functionality still exists through hooking instead of patching.
"mac": [{}], // same format
"android64": [{}], // same format
"imac": [{}], // same format
"m1": [{}], // same format
"ios": [{}] // same format
},
"platforms": ["win", "android32", "android64"], // Only include this key if the hack isn't implemented on a specific platform. Any platform not specified will be assumed not supported, and hidden.
Expand All @@ -45,7 +46,8 @@ Note that creating patches will disable saving the setting, meaning the user wou
"win": [{"addr": "0x57c8e", "on": "EB 52", "off": "7D 52"}], // JMP short +0x52
"android32": [{"addr": "0x448116", "on": "16 D0", "off": "16 DC"}], // BEQ (why is base 0x10000)
"android64": [{"addr": "0x8181f0", "on": "00 05 00 54", "off": "0C 05 00 54"}], // B.EQ
"mac": [{"addr": "0xc8d09", "on": "75 4D", "off": "7F 4D"}], // JNZ
"imac": [{"addr": "0xc8d09", "on": "75 4D", "off": "7F 4D"}], // JNZ
// m1 isnt included but it's supported in the "platforms" key. If m1 not included, it will assume that functionality still exists through hooking instead of patching.
"ios": [{"addr": "0x16cee4", "on": "20 03 00 54", "off": "2C 03 00 54"}] // B.EQ
},
// no "platforms" key, since we assume it's supported for all platforms
Expand Down
2 changes: 1 addition & 1 deletion resources/hacks/bypass.json
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,7 @@
"name": "Free Shop Items",
"desc": "Allows all shop items to be bought for 0 mana orbs. (Do note this will increase your current mana orbs to 1000000)",
"opcodesold": [
{"addr": "0xF33BB", "on": "8B 93 10 01 00 00", "off": "8B 93 14 01 00 00"},
{"addr": "0x16a18b", "on": "8b 83 2c 01 00 00", "off": "8b 83 30 01 00 00"},
{"addr": "0x14B339", "on": "2B B3 10 01 00 00", "off": "2B B3 14 01 00 00"}
],
"type": "bool",
Expand Down
135 changes: 121 additions & 14 deletions resources/hacks/creator.json
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,52 @@
"desc": "Lets you copy any level, without a password.",
"type": "bool"
},
{
"name": "Custom Object Bypass",
"desc": "Allows you to go beyond the 1000 object limit for custom objects.",
"type": "bool",
"opcodes": {
"win": [
{"addr": "0xe0577", "on": "3d 00 00 00 00", "off": "3d e8 03 00 00"},
{"addr": "0xe057c", "on": "0f 85 3f 01 00 00", "off": "0f 86 3f 01 00 00", "instruction": "JNZ"},

{"addr": "0xe0702", "on": "c7 c0 01 00 00 00", "off": "ff 15 c8 22 40 00"},

{"addr": "0xe08f0", "on": "3d 00 00 00 00", "off": "3d e8 03 00 00"},
{"addr": "0xe08f5", "on": "0f 84 ec 00 00 00", "off": "0f 87 ec 00 00 00", "instruction": "JZ"}
],
"winold": [
{"addr": "0xa820f", "on": "3d ff ff ff ff", "off": "3d e8 03 00 00"},
{"addr": "0xa82ad", "on": "3d ff ff ff ff", "off": "3d c8 00 00 00"}
],
"macold2.200": [
{"addr": "0x3425e", "on": "b8 01 00 00 00", "off": "e8 3d f5 6a 00"},
{"addr": "0x342c3", "on": "b8 01 00 00 00", "off": "e8 08 6c 2b 00"},
{"addr": "0x345be", "on": "b8 01 00 00 00", "off": "e8 dd f1 6a 00"}
],
"android32": [
{"addr": "0x3934fa", "on": "b0 f1 00 0f", "off": "b0 f5 7a 7f", "why": "WHY IS THIS THE ONLY ONE WHERE I CANT JUST MOV THE REGISTER, its too small to patch aaaaAAAAAAAAAA"},
{"addr": "0x3934fe", "on": "3a d9", "off": "3a d8"},

{"addr": "0x39350e", "on": "27 e0", "off": "27 d9"},

{"addr": "0x39363a", "on": "b0 f1 00 0f", "off": "b0 f5 7a 7f"},
{"addr": "0x39363e", "on": "c2 d9", "off": "c2 d8"}
],
"android64": [
{"addr": "0x6a1a24", "on": "20 00 80 52", "off": "56 d4 0f 94", "instruction": "mov w0, #1"},
{"addr": "0x69d2ec", "on": "20 00 80 52", "off": "a4 d3 0f 94"},
{"addr": "0x6a1b00", "on": "20 00 80 52", "off": "ef c0 0f 94"}
],
"iosold2.200": [
{"addr": "0x3e4cf8", "on": "20 00 80 52", "off": "2f b4 f9 97"},
{"addr": "0x3e4d9c", "on": "20 00 80 52", "off": "7a e9 00 94"},
{"addr": "0x3e4edc", "on": "20 00 80 52", "off": "b6 b3 f9 97"}
]
},
"type": "bool",
"save": false
},
{
"name": "No (C) Mark",
"desc": "Removes the (C) mark when uploading copied levels. Will automatically set levels to be original.",
Expand All @@ -27,27 +73,88 @@
{
"name": "Rotation Hack",
"desc": "Allows you to rotate any object. Only works locally.",
"opcodesold": [
{"addr": "0x85CBC", "on": "B8 01 00 00 00 90", "off": "8B 80 00 03 00 00"},
{"addr": "0x8BDDD", "on": "B8 01 00 00 00 90", "off": "8B 80 00 03 00 00"},
{"addr": "0x8BE16", "on": "B8 01 00 00 00 90", "off": "8B 80 00 03 00 00"},
{"addr": "0xECA3D", "on": "B8 01 00 00 00 90", "off": "8B 87 00 03 00 00"},
{"addr": "0xEE5A9", "on": "B8 01 00 00 00 90", "off": "8B 86 00 03 00 00"},
{"addr": "0x20181E", "on": "B8 01 00 00 00 90", "off": "8B 83 00 03 00 00"}
],
"opcodes": {
"win": [
{"addr": "0xc85f9", "on": "b8 01 00 00 00 90", "off": "8b 88 1c 03 00 00", "stupid inline func": "really"},
{"addr": "0xd18e0", "on": "b8 01 00 00 00 90", "off": "8b 88 1c 03 00 00"},
{"addr": "0xd191e", "on": "b8 01 00 00 00 90", "off": "8b 88 1c 03 00 00"},
{"addr": "0x141fe7", "on": "b8 01 00 00 00 90", "off": "8b 86 1c 03 00 00"},

{"addr": "0x1412b6", "on": "b8 01 00 00 00 90", "off": "8b 86 1c 03 00 00"},
{"addr": "0x13f2f9", "on": "b8 01 00 00 00 90", "off": "8b 87 1c 03 00 00"},
{"addr": "0x13f411", "on": "b8 01 00 00 00 90", "off": "8b 87 1c 03 00 00"},
{"addr": "0x1bd918", "on": "b8 01 00 00 00 90", "off": "8b 82 1c 03 00 00"}
],
"android32": [
{"addr": "0x346e74", "on": "00 bf", "off": "19 2b"},
{"addr": "0x346e76", "on": "00 bf", "off": "06 d8"},
{"addr": "0x346e78", "on": "00 bf 00 bf", "off": "00 fa 03 f1"},
{"addr": "0x346e7c", "on": "00 bf", "off": "02 4b"},
{"addr": "0x346e7e", "on": "00 bf", "off": "0b 40"},
{"addr": "0x346e80", "on": "00 bf", "off": "0b b1"},
{"addr": "0x346e82", "on": "00 bf 00 bf", "off": "92 f8 12 04"}
],
"android64": [
{"addr": "0x62c5ec", "on": "1f 20 03 d5", "off": "3f 54 00 71"},
{"addr": "0x62c5f0", "on": "1f 20 03 d5", "off": "c0 00 00 54"},
{"addr": "0x62c5f4", "on": "1f 20 03 d5", "off": "3f 64 00 71"},
{"addr": "0x62c5f8", "on": "1f 20 03 d5", "off": "80 00 00 54"},
{"addr": "0x62c5fc", "on": "1f 20 03 d5", "off": "61 00 00 34"}
],
"ios": [
{"addr": "0x264e2c", "on": "1f 20 03 d5", "off": "3f 54 00 71"},
{"addr": "0x264e30", "on": "1f 20 03 d5", "off": "09 20 c9 1a"},
{"addr": "0x264e34", "on": "1f 20 03 d5", "off": "2a 00 80 52"},
{"addr": "0x264e38", "on": "1f 20 03 d5", "off": "0a 44 a0 72"},
{"addr": "0x264e3c", "on": "1f 20 03 d5", "off": "29 01 0a 0a"},
{"addr": "0x264e40", "on": "1f 20 03 d5", "off": "24 99 40 7a"},
{"addr": "0x264e44", "on": "04 00 00 14", "off": "80 00 00 54"}
]
},
"type": "bool",
"save": false,
"platformsold": ["win", "android32", "android64", "ios"],
"platforms": []
},
{
"name": "Default Song Bypass",
"desc": "Lets you use hidden default songs in the editor.",
"opcodesold": [
{"addr": "0x174407", "on": "90 90", "off": "74 2F"},
{"addr": "0x174411", "on": "90 90 90", "off": "0F 4F C6"},
{"addr": "0x174456", "on": "90 90", "off": "74 2F"},
{"addr": "0x174460", "on": "90 90 90", "off": "0F 4F C6"}
],
"opcodes": {
"win": [
{"addr": "0x266beb", "on": "90 90 90", "off": "83 f8 16", "atodo": "MoreSearchLayer::audioNext %02d: %s"},
{"addr": "0x266bee", "on": "90 90", "off": "74 2e"},
{"addr": "0x266bfd", "on": "90 90 90", "off": "0f 4f c1"},

{"addr": "0x92276", "on": "90 90 90", "off": "83 f8 15"},
{"addr": "0x92279", "on": "90 90", "off": "74 24"},

{"addr": "0x92283", "on": "90 90 90 90 90", "off": "ba 15 00 00 00"},
{"addr": "0x92288", "on": "90 90", "off": "3b c2"},
{"addr": "0x9228a", "on": "90 90 90", "off": "0f 4f c2"}
],
"android32": [
{"addr": "0x39991c", "on": "00 bf", "off": "16 28"},
{"addr": "0x3998e2", "on": "00 bf", "off": "16 21"},
{"addr": "0x3998e4", "on": "00 bf", "off": "0d 46"},

{"addr": "0x44241e", "on": "15 2a", "off": "15 29"},

{"addr": "0x44240c", "on": "09 00", "off": "15 21"}
],
"android64": [
{"addr": "0x6ac9c0", "on": "1f 20 03 d5", "off": "1f 58 00 71"},
{"addr": "0x6ac9c8", "on": "1f 20 03 d5", "off": "c0 00 00 54"},

{"addr": "0x6ac96c", "on": "f3 03 01 2a", "off": "d3 02 80 52"},

{"addr": "0x80b328", "on": "e3 03 01 2a", "off": "a3 02 80 52"},
{"addr": "0x80b34c", "on": "1f 20 03 d5", "off": "3f 54 00 71"},
{"addr": "0x80b350", "on": "1f 20 03 d5", "off": "60 00 00 54"}
]
},
"type": "bool",
"save": false,
"platformsold": ["win", "android32", "android64"],
"platforms": []
}
]
3 changes: 2 additions & 1 deletion resources/hacks/global.json
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,8 @@

{"addr": "0x1FD7AF", "on": "90 90 90 90 90 90", "off": "0F 85 A4 FD FF FF" }
],
"type": "bool"
"type": "bool",
"platforms": []
},
{
"name": "Practice Music",
Expand Down
4 changes: 2 additions & 2 deletions resources/hacks/misc.json
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@
"name": "No Pulse",
"desc": "Disables orbs and other related objects from pulsing on the music.",
"type": "bool",
"platforms": ["win"]
"platforms": []
},
{
"name": "Disable Camera Effects",
Expand Down Expand Up @@ -71,6 +71,6 @@
"desc": "Shows you Geometry Dash's graphic options! Useful for Android as the option is normally not available.",
"type": "button",
"default": "button",
"platforms": ["android32", "android64"]
"platforms": ["android32", "android64", "ios"]
}
]
11 changes: 9 additions & 2 deletions resources/hacks/settings.json
Original file line number Diff line number Diff line change
Expand Up @@ -20,8 +20,8 @@
"desc": "Sets the language for Prism Menu!",
"type": "dropdown",
"default": 0,
"values": ["English [100%]", "Français [60%]", "Português (Brasil) [100%]", "Deutsch [100%]", "Русский [100%]", "Čeština [100%]", "Indonesia [88%]", "Español [100%]", "Polskie [80%]", "Melayu [78%]", "Türkçe [90%]", "Tieng Viet [100%]"],
"todovalues": ["日本語 [100%]"]
"values": ["English", "Français", "Português (Brasil)", "Deutsch", "Русский", "Čeština", "Indonesia", "Español", "Polskie", "Melayu", "Türkçe", "Tieng Viet", "Українська"],
"todovalues": ["Ελληνική","日本語"]
},
{
"name": "Theme",
Expand All @@ -42,6 +42,13 @@
"type": "bool",
"default": true
},
{
"name": "Menu Keybind",
"desc": "The keybind for opening the Prism Menu UI!",
"type": "char",
"default": "[Tab]",
"platforms": ["win", "mac"]
},
{
"name": "Button Position X",
"desc": "The X position for the button to open the menu.",
Expand Down
Loading

0 comments on commit e240ae2

Please sign in to comment.