Difference between revisions of "Modding"
(duplicates fixed) |
(link to ladder fix commit) |
||
Line 37: | Line 37: | ||
=== Ladders === | === Ladders === | ||
− | In the past, when logging out while standing inside a block, you would immediately be moved up until you'd no longer be inside a block once logging in again. Due to this behaviour, it was possible to log out in a ladder of H blocks and log back in to arrive at the top of it. | + | In the past, when logging out while standing inside a block, you would immediately be moved up until you'd no longer be inside a block once logging in again. Due to this behaviour, it was possible to log out in a ladder of H blocks and log back in to arrive at the top of it. Maze [https://gitlab.com/MRAAGH/aagrinder/commit/9356a941c10492db46691861cfb66b498c44a39b fixed this on September 10th] though. |
=== Duplicating oneself === | === Duplicating oneself === |
Revision as of 11:03, 6 October 2019
Contents
Important disclaimer
Please note that modded clients are against the rules on some servers. See the server list, or create your own server!
Gravity
In AAGRINDER, gravity is an illusion. If you don't want to, you don't have to follow it!
This means that the server doesn't enforce gravity. It's all happening client-side, so if you modify your client, you don't have to fall down if there is no block below you. Note that you can't simply move up in thin air, but it's still quite useful in about every situation except if maze made update that broke it.
At the moment, AAGRINDER is played in a browser [citation needed]. Firefox unfortunately doesn't allow you to modify the JavaScript you want to run manually it seems, but Chromium can do it using its developer console (F12). For privacy, it's better if you use ungoogled-chromium instead of normal Chromium though!
To disable gravity, you'll want to only process fall events when you want that. The code below is a replacement for the lines 300 through 307 of the GameLogic.js file that will reject fall events unless you hold the up button (w), except if you are in water.
'f':(view, data)=>{ const x = view.player.x; const y = view.player.y; if (!data.j) { // do gravity if jump is held isThisWater = view.getBlock(x, y); isWater = isThisWater === 'w'; if (!isWater) { // do gravity in water view.reject(); // don't gravity! } }
This is unfortunately not allowed on the main server.
Currently imaginable exploits
Floating upwards
If you apply gravityhax while on the login screen, you can notice that you'll be able to jump after logging in, even if you are floating in the air. Theoretically, this could be exploited to float upwards by signing out and in again whenever you want to go up.
It's a bad idea though because that would spam the chat with logout and login messages and drain the server's resources as it would have to constantly send your client a lot of terrain. Don't do it!
Past exploits
Ladders
In the past, when logging out while standing inside a block, you would immediately be moved up until you'd no longer be inside a block once logging in again. Due to this behaviour, it was possible to log out in a ladder of H blocks and log back in to arrive at the top of it. Maze fixed this on September 10th though.
Duplicating oneself
You could log in multiple times with the same username but different capitalizations. For example, maze could also simultaneously log in as Maze and mAze and maZe and mazE and MAze and MaZe and MazE and mAzE and maZE and MAZe and MaZE and MAzE and mAZE and MAZE.
Maze fixed this on October 6th, 2019, before anybody figured out how inventories worked exactly.