The worst cheat menus use text boxes. The best use the actual Window_Base class.
# Create a new scene: Scene_Cheat
class Scene_Cheat < Scene_MenuBase
def start
super
@command_window = Window_CheatCommand.new
end
end
Pro Tip: Use Window_Help at the top to explain what each cheat actually does (e.g., "Refills HP but resets TP to 0"). rpg maker vx ace cheat menu extra quality
# ============================================================================= # Cheat Menu - Extra Quality # Version 1.2 # ============================================================================= # Place in Materials. Press F9 in game (configurable). # =============================================================================
module CheatMenuConfig HOTKEY = :F9 # Key to open menu DEV_MODE = true # false = completely disabled SHOW_VARIABLES = true # Show variable editor? MAX_GOLD = 99999999 endThe worst cheat menus use text boxes
A hallmark of a high-quality script is preventing permanent lockouts. If a player cheats to level 99 and then saves, they might get bored. Add a "Reset All Cheats" button and a warning before saving. Pro Tip: Use Window_Help at the top to
class Scene_File < Scene_MenuBase
alias quality_save_command on_savefile_ok
def on_savefile_ok
if $game_switches[1] # Your cheat detection switch
Sound.play_buzzer
$game_message.add("Cannot save while cheats are active.")
return
end
quality_save_command
end
end
Add a "Disable All Cheats" command that resets the CheatConfig::CHEATS hash to all false values.
Before writing a single line of Ruby (RGSS3), you need to understand the five pillars of a quality cheat system: