Difference between revisions of "Practice Hacks"

From A complete guide to Super Metroid speedrunning
Jump to: navigation, search
(Romhacks: Add Kaizo Possible)
(Romhacks: Kaizo Possible any% presets by cheesyboatride)
 
(19 intermediate revisions by 2 users not shown)
Line 3: Line 3:
 
The practice hack (aka Infohud) is a romhack designed to assist speedrunners in practice. Notable features include pre-made savestates to jump to different parts of a speedrun, timers for individual rooms/segments, displays for useful RAM addresses, and equipment/event toggles.
 
The practice hack (aka Infohud) is a romhack designed to assist speedrunners in practice. Notable features include pre-made savestates to jump to different parts of a speedrun, timers for individual rooms/segments, displays for useful RAM addresses, and equipment/event toggles.
  
All versions of the practice hack should offer an option with the "SD2SNES" savestate feature enabled, and another option without. If you are NOT playing with the SD2SNES/FXPAK cartridge (or Super NT with latest "jailbreak" firmware) then you should choose the option without savestates. This feature will likely cause crashes or major graphical glitches if used with emulators, everdrives, or virtual consoles (SNES Classic included). These players should use the savestate features built into their platform or the load preset feature available in Infohud 2.0+.
+
All versions of the practice hack should offer an option with the "SD2SNES" savestate feature enabled, and another option without. If you are NOT playing with the SD2SNES/FXPAK cartridge (or Super NT with latest "jailbreak" firmware) then you should not choose this option. This feature will likely cause crashes or major graphical glitches if used with emulators, everdrives, or virtual consoles (SNES Classic included).
 +
 
 +
Recent versions of the practice hack offer an alternate savestate implementation which works on almost all platforms -- including most emulators, Everdrive, and MiSTer. This "tinystates" version works by saving only essential game state and filling in the gaps from the cartridge ROM, allowing it to work on platforms with limited RAM. This comes at the cost of increased loading times and a higher risk of graphical glitches. Virtual Console (including SNES Classic) is the only platform known to be incompatible with tinystates.
 +
 
 +
If neither implementation of savestates works for you, use the savestate features built into your platform or the load preset feature available in Infohud 2.0+.
  
 
The D-pad on controller 2 features speed controls and frame advance. Emulator users should ensure that their input bindings on controller 2 do not match controller 1.
 
The D-pad on controller 2 features speed controls and frame advance. Emulator users should ensure that their input bindings on controller 2 do not match controller 1.
Line 11: Line 15:
 
=Current Versions=
 
=Current Versions=
  
[https://smpractice.speedga.me/ Infohud version 2.4+]  '''<-- RECOMMENDED'''
+
[https://smpractice.speedga.me/ Infohud version 2.5+]  '''<-- RECOMMENDED'''
  
 
This should be the most up-to-date version of the Infohud practice hack used by speedrunners. It offers a how-to-use tutorial on its [https://smpractice.speedga.me/help Help page] and should be read by first-time Infohud users. PAL versions are also supported.
 
This should be the most up-to-date version of the Infohud practice hack used by speedrunners. It offers a how-to-use tutorial on its [https://smpractice.speedga.me/help Help page] and should be read by first-time Infohud users. PAL versions are also supported.
Line 26: Line 30:
  
 
[https://github.com/InsaneFirebat/sm_practice_hack/tree/Ancient-Chozo/releases Ancient Chozo]
 
[https://github.com/InsaneFirebat/sm_practice_hack/tree/Ancient-Chozo/releases Ancient Chozo]
 +
 +
[https://github.com/InsaneFirebat/sm_practice_hack/tree/Ascent/releases Ascent]
 +
 +
[https://github.com/InsaneFirebat/sm_practice_hack/tree/BluePlague/releases The Blue Plague]
  
 
[https://github.com/InsaneFirebat/sm_practice_hack/tree/Cliffhanger/releases Cliffhanger], [https://github.com/InsaneFirebat/sm_practice_hack/tree/Cliffhanger/releases Cliffhanger Redux]
 
[https://github.com/InsaneFirebat/sm_practice_hack/tree/Cliffhanger/releases Cliffhanger], [https://github.com/InsaneFirebat/sm_practice_hack/tree/Cliffhanger/releases Cliffhanger Redux]
  
[https://github.com/InsaneFirebat/sm_practice_hack/tree/Containment-Chamber/releases Containment Chamber]
+
[https://github.com/InsaneFirebat/sm_practice_hack/tree/Containment-Chamber/releases Containment Chamber] (Presets included)
  
 
[https://github.com/InsaneFirebat/sm_practice_hack/tree/Contamination/releases Contamination]
 
[https://github.com/InsaneFirebat/sm_practice_hack/tree/Contamination/releases Contamination]
 +
 +
[https://github.com/InsaneFirebat/sm_practice_hack/tree/DarkholmeHospital/releases Darkholme Hospital]
  
 
[https://github.com/InsaneFirebat/sm_practice_hack/tree/Decision/releases Decision]
 
[https://github.com/InsaneFirebat/sm_practice_hack/tree/Decision/releases Decision]
Line 38: Line 48:
  
 
[https://github.com/InsaneFirebat/sm_practice_hack/tree/Escape-II/releases Escape II]
 
[https://github.com/InsaneFirebat/sm_practice_hack/tree/Escape-II/releases Escape II]
 +
 +
[https://github.com/InsaneFirebat/sm_practice_hack/tree/Exertion/releases Exertion]
 +
 +
[https://github.com/InsaneFirebat/sm_practice_hack/tree/Hydellius/releases Hydellius]
  
 
[https://github.com/InsaneFirebat/sm_practice_hack/tree/Hyper/releases Hyper Metroid]
 
[https://github.com/InsaneFirebat/sm_practice_hack/tree/Hyper/releases Hyper Metroid]
Line 43: Line 57:
 
[https://github.com/InsaneFirebat/sm_practice_hack/tree/Ice-Metal-Uninstall/releases Ice Metal Uninstall]
 
[https://github.com/InsaneFirebat/sm_practice_hack/tree/Ice-Metal-Uninstall/releases Ice Metal Uninstall]
  
[https://github.com/InsaneFirebat/sm_practice_hack/tree/Kaizo-Possible/releases Kaizo Possible]
+
[https://github.com/InsaneFirebat/sm_practice_hack/tree/Junkoid/releases Super Junkoid]
 +
 
 +
[https://github.com/InsaneFirebat/sm_practice_hack/tree/Kaizo-Possible/releases Kaizo Possible] (Presets included)
  
 
[https://github.com/InsaneFirebat/sm_practice_hack/tree/Life/releases Life]
 
[https://github.com/InsaneFirebat/sm_practice_hack/tree/Life/releases Life]
Line 50: Line 66:
  
 
[https://github.com/InsaneFirebat/sm_practice_hack/tree/NewWetDream/releases New Wet Dream]
 
[https://github.com/InsaneFirebat/sm_practice_hack/tree/NewWetDream/releases New Wet Dream]
 +
 +
[https://github.com/InsaneFirebat/sm_practice_hack/tree/otherRotation/releases otherRotation]
  
 
[https://github.com/InsaneFirebat/sm_practice_hack/tree/Oxide/releases Oxide]
 
[https://github.com/InsaneFirebat/sm_practice_hack/tree/Oxide/releases Oxide]
 +
 +
[https://github.com/InsaneFirebat/sm_practice_hack/tree/Recovery/releases Recovery]
  
 
[https://github.com/InsaneFirebat/sm_practice_hack/tree/Redesign-Axeil-Edition/releases Redesign] (Presets included), [https://github.com/InsaneFirebat/sm_practice_hack/tree/Redesign-Axeil-Edition/releases Redesign: Axeil Edition]
 
[https://github.com/InsaneFirebat/sm_practice_hack/tree/Redesign-Axeil-Edition/releases Redesign] (Presets included), [https://github.com/InsaneFirebat/sm_practice_hack/tree/Redesign-Axeil-Edition/releases Redesign: Axeil Edition]
Line 60: Line 80:
  
 
[https://github.com/InsaneFirebat/sm_practice_hack/tree/Rotation/releases Rotation]
 
[https://github.com/InsaneFirebat/sm_practice_hack/tree/Rotation/releases Rotation]
 +
 +
[https://github.com/InsaneFirebat/sm_practice_hack/tree/Subpar/releases Subpar Metroid]
 +
 +
[https://github.com/InsaneFirebat/sm_practice_hack/tree/Subversion/releases Subversion]
  
 
[https://github.com/InsaneFirebat/sm_practice_hack/tree/Super-Zero-Mission/releases Super Zero Mission] (Presets included)
 
[https://github.com/InsaneFirebat/sm_practice_hack/tree/Super-Zero-Mission/releases Super Zero Mission] (Presets included)
  
[https://github.com/InsaneFirebat/sm_practice_hack/tree/Blue-Plague/releases The Blue Plague]
+
[https://github.com/InsaneFirebat/sm_practice_hack/tree/TourOfItaly/releases T O U R O F I T A L Y] (Contest version)
  
 
[https://github.com/InsaneFirebat/sm_practice_hack/tree/VITALITY/releases VITALITY]
 
[https://github.com/InsaneFirebat/sm_practice_hack/tree/VITALITY/releases VITALITY]
Line 69: Line 93:
 
[https://github.com/InsaneFirebat/sm_practice_hack/tree/Yfaster/releases Y-Faster], [https://github.com/InsaneFirebat/sm_practice_hack/tree/Yfaster2/releases Y-Faster 2], [https://github.com/InsaneFirebat/sm_practice_hack/tree/Yfaster2f/releases Y-Faster 2 Furious]
 
[https://github.com/InsaneFirebat/sm_practice_hack/tree/Yfaster/releases Y-Faster], [https://github.com/InsaneFirebat/sm_practice_hack/tree/Yfaster2/releases Y-Faster 2], [https://github.com/InsaneFirebat/sm_practice_hack/tree/Yfaster2f/releases Y-Faster 2 Furious]
  
[https://github.com/InsaneFirebat/sm_practice_hack/tree/Z-Factor/releases Z-Factor]
+
[https://github.com/InsaneFirebat/sm_practice_hack/tree/Z-Factor/releases Z-Factor] (Presets included)
  
 
=Savestates Only=
 
=Savestates Only=
Line 85: Line 109:
 
[https://hacks.speedga.me/sm.html Total's Infohud Romhack]
 
[https://hacks.speedga.me/sm.html Total's Infohud Romhack]
  
This was Total's last official release of the Infohud practice hack before version 2.0 by Pinkus. Practice roms for Kaizo Possible and SZM, as well as a guide to adding the SD2SNES savestate feature to other romhacks, are also available here.
+
This was Total's last official release of the Infohud practice hack before version 2.0 by Pinkus. Older practice roms for Kaizo Possible and SZM, as well as a guide to adding the SD2SNES savestate feature to other romhacks, are also available here.

Latest revision as of 01:58, 24 October 2024

Infohud Practice Hack

The practice hack (aka Infohud) is a romhack designed to assist speedrunners in practice. Notable features include pre-made savestates to jump to different parts of a speedrun, timers for individual rooms/segments, displays for useful RAM addresses, and equipment/event toggles.

All versions of the practice hack should offer an option with the "SD2SNES" savestate feature enabled, and another option without. If you are NOT playing with the SD2SNES/FXPAK cartridge (or Super NT with latest "jailbreak" firmware) then you should not choose this option. This feature will likely cause crashes or major graphical glitches if used with emulators, everdrives, or virtual consoles (SNES Classic included).

Recent versions of the practice hack offer an alternate savestate implementation which works on almost all platforms -- including most emulators, Everdrive, and MiSTer. This "tinystates" version works by saving only essential game state and filling in the gaps from the cartridge ROM, allowing it to work on platforms with limited RAM. This comes at the cost of increased loading times and a higher risk of graphical glitches. Virtual Console (including SNES Classic) is the only platform known to be incompatible with tinystates.

If neither implementation of savestates works for you, use the savestate features built into your platform or the load preset feature available in Infohud 2.0+.

The D-pad on controller 2 features speed controls and frame advance. Emulator users should ensure that their input bindings on controller 2 do not match controller 1.

Some releases of Infohud may require you to apply an IPS patch to your copy of SM. More info about patching roms at Metroid Construction.

Current Versions

Infohud version 2.5+ <-- RECOMMENDED

This should be the most up-to-date version of the Infohud practice hack used by speedrunners. It offers a how-to-use tutorial on its Help page and should be read by first-time Infohud users. PAL versions are also supported.

Github repository

This is the source repository for the Infohud practice hack, allowing you to see how it works, adapt it for SM romhacks, contribute to the project, or build your own customized copy from the files available. This would also be a good place to report bugs if you're not on Discord. The website source is hosted in the same repository.

Romhacks

Generic patch with greater hack compatibility

Airy

Ancient Chozo

Ascent

The Blue Plague

Cliffhanger, Cliffhanger Redux

Containment Chamber (Presets included)

Contamination

Darkholme Hospital

Decision

Eris

Escape II

Exertion

Hydellius

Hyper Metroid

Ice Metal Uninstall

Super Junkoid

Kaizo Possible (Presets included)

Life

Nature

New Wet Dream

otherRotation

Oxide

Recovery

Redesign (Presets included), Redesign: Axeil Edition

Reimagined

Retroid (Presets included)

Rotation

Subpar Metroid

Subversion

Super Zero Mission (Presets included)

T O U R O F I T A L Y (Contest version)

VITALITY

Y-Faster, Y-Faster 2, Y-Faster 2 Furious

Z-Factor (Presets included)

Savestates Only

Savestate-Only Patch

A pre-made IPS patch is included with the source, but it can also be reconfigured to support more hacks or change button inputs.

Obsoleted Versions

Pinkus Infohud Branch

This is a branch of the 1.42 version of Total's Infohud. It added an additional Rerandomize feature which changes the rng seed every time a savestate is loaded, and also permits users to set specific patterns for Botwoon and Phantoon. These features are also present in the version 2.0 rewrite.

Total's Infohud Romhack

This was Total's last official release of the Infohud practice hack before version 2.0 by Pinkus. Older practice roms for Kaizo Possible and SZM, as well as a guide to adding the SD2SNES savestate feature to other romhacks, are also available here.