Jump to content

Creating Mods/Mod Testing

From SA Docs

Skipping Menus

You can test your mod faster by jumping directly to the stage or cutscene you are editing editing with the selected character.

Using Test Spawn

To test your mod, you can use the Mod Manager's Test Spawn tab (make sure developer settings are enabled in the Manager Config tab) to bypass all menus and put a specific character in any stage or cutscene. You can also specify a save file override or set up a specific position in the stage.

SA Mod Manager's Test Spawn Tab

Using Command Line Parameters

You can also you can launch sonic.exe with the following command line parameters.

Level Commands

  • --level <name/ID> or -l <name/ID> to launch the game directly in a specific stage. Click here for a list of all stages in SADX. Click here for a list of all stages in SA2(B).
  • --act <ID> or -a <ID> to start the stage on a specific act.
  • --time <time> or -t <time> to start the game on a specific time of day (SADX Adventure Fields). The value can be day or 0, evening or 1, or night or 2.
  • --gamemode <mode> or -g <mode> to start the game in a specific mode. For SADX, the mode can be as follows: adventure (5), trial (9), stage (4), mission (10).
  • --character <name/ID> or -c <name/ID> to change the default character. Click here for a list of all characters in SADX. Click here for a list of all characters in SA2(B).
  • --position <x> <y> <z> or -p <x> <y> <z> to spawn at a specific position.
  • --rotation <r> or -r <r> to rotate the character along the Y axis. The value is the BAMS rotation (decimal).
  • --event <ev> or -e <ev> to play a specific cutscene. See List of Cutscenes (SADX) and List of Cutscenes (SA2) for usable IDs.
  • --save <name/ID> or -s <name/ID> to launch the game with a specific savefile. For SADX, the ID is the number after "SonicDX" in the savefile name. You can also put the name of the save file (e.g. "mysave" from mysave.snc) in quotation marks instead of the ID.
  • --movie <ID> or -m <ID> to play a specific FMV cutscene. For SADX, the value can range from 0 to 8.

Option Commands

  • --no-audio to disable music, voices and sound effects.
  • --no-music to disable music.
  • --no-voice to disable voices.
  • --no-sound to disable sound effects.

Using the Debug Mode Mod (SADX)

For SADX mods, you can use PkR's Debug Mode mod to view various information and control various aspects of the game.

Debug Information

Press the Z button on the controller or the B key on the keyboard to toggle between different debug information screens.

Alternatively, press 1-9 on the keyboard to show a specific screen. Press 0 to hide the debug information.

For better legibility, enable the "Hide HUD" code in SADX Mod Manager before running the game with this mod.

1 - Game Stats

Press 1 to access game frame counters, game mode, game state values etc.

2 - Player Info

Press 2 to view the position, speed and animation values of the character. Press H to switch between decimal and hexadecimal representation of angles.

3 - Camera Info

Press 3 to view position, rotation and flags of the camera object. Press H to switch between decimal and hexadecimal representation of angles.

4 - Controller Info

Press 4 to view information about the controller and the keyboard.

In the bottom right corner you can see the visualization of analog stick movement. The red square represents the left stick (movement), and the blue square represents the right stick (camera).

5 - Fog Info

Press 5 to view information about stage fog, skybox and draw distance.

6 - Sound Queue

Press 6 to view a list of currently playing sounds. You can press the H key to toggle between decimal and hexadecimal sound IDs, as well as their IDs in the soundbank.

7 - Soundbank Info

Press 7 to view information about recently played sounds and their corresponding soundbanks. You can see their soundbank IDs, IDs in the soundbanks and the names of the sounds.

8 - Lantern Palette / LS Palette Info

Press 8 to view lighting information.

When the Lantern Engine mod is enabled, this screen shows currently loaded stage and character palettes, as well as light direction information. You enable a debug palette by pressing L, and toggle between various debug palettes by pressing H while this screen is active.

When the Lantern Engine mod is disabled, this screen shows LS Palette (vanilla character lighting) information. You can cycle through currently active character lights by pressing H.

9 - Stage Lights Info

Press 9 to view information about current stage lights. This information is only relevant when the Lantern Engine mod is disabled. Use the H key to cycle through currently active stage lights.

Vanilla Debug Mode

If you press the Z button on the controller (or the B key on the keyboard) while also holding the A button (or its keyboard counterpart - X key by default), vanilla debug mode will be enabled. To disable the vanilla debug mode, press the same button/key combination again.

Collision objects, paths and some debug strings are visible in this mode. When this mode is enabled, you can move the character freely through any obstacles. Use the analog stick to position the character on the X and Z plane. Hold the X button to move the character up and down.

Vanilla debug mode

Using the Free Camera Mode

Press Y to enable the free camera mode. When the free camera mode is enabled, you can use the mouse to move the camera around. The control scheme is similar to the one used in 3D editors in SA Tools.

  • Move the mouse to rotate the camera.
  • Hold Left Shift and move the mouse to move the camera.
  • Hold Control and move the mouse up and down to zoom in and out.
  • Press both Left Shift and Control to lock the camera in place. Press them again to unlock it.
  • Press Numpad + and Numpad - to change camera speed.
  • Press Y on the keyboard to re-enable vanilla camera. It will remain locked in place until the character touches a camera trigger.

Additional Functionality

  • Press P on the keyboard to enable Crash Log. This will log each texture list and object code change to the SADX Mod Loader log/console. It slows down the game, but it might be useful to find out which object crashes the game.
  • Press Pause/Break on the keyboard the freeze and unfreeze the game. Press Insert to advance one frame forward.
  • Press the C button on the controller or the C key on the keyboard to toggle collision data display.
  • Press T to toggle textures.
  • Press F to toggle fog.
  • Press END to toggle the speed hack. When the speed hack is enabled, press Page Up and Page Down to control how fast the game runs. Note: the game cannot run slower than its original speed.