This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
New parameters
There are many new screenpack parameters, but they won’t be documented until the engine stabilizes feature-wise. Until then, everything related to these parameters may change without notice.
In the meantime, you can reference parameter names (with comments describing new features) for all parameters available in data/system.base.def, which is copied directly from src/resources/defaultMotif.ini (the default motif config loaded before system.def).
The default screenpack in data/mugen1/system.def can also be used as a showcase of many new features, and it is ready to be copied/adapted into other screenpacks.
Refer to this article for information on how to update MUGEN screenpacks to use Ikemen GO features.
Menus
Menus are defined by menu.itemname.* lines in your screenpack DEF. This covers the main menu, options, and all other menu screens.
Basic rules
Show / rename an item
menu.itemname.arcade = "ARCADE"
Disable (hide) an item
Write the key with no value (commenting it out is not enough to disable default entries):
menu.itemname.arcade =
Change order
Items appear in the order they are written in the DEF.
Ikemen-only modes
Many Ikemen GO extra modes have no itemname by default, so they won’t show up unless you add them:
menu.itemname.freebattle = "QUICK MATCH"
Submenus (grouping)
Syntax
menu.itemname.<optional_submenus>.<item> = "Displayed text"
<optional_submenus>= any strings you want, separated by dots. They are only for grouping (like folders).<item>= an engine-reserved item id (list below).
How to make a submenu
A submenu needs two parts:
- A line that creates the submenu entry (the “button”):
menu.itemname.extras = "EXTRAS"
- Lines that put items inside it (same prefix):
menu.itemname.extras.freebattle = "QUICK MATCH"
menu.itemname.extras.back = "BACK"
Disabling a submenu
If you disable only the submenu entry:
menu.itemname.menuvideo =
…the contents under menuvideo.* will be also removed.
When rebuilding from scratch, do one of these:
- Use a new submenu name, or
- Disable the specific items inside the submenu.
Notes
backgoes to the previous menu.spaceradds an empty line. For multiple spacers usespacer1,spacer2, etc. (any non-empty value enables them).
Supported item names (reserved by the engine)
item = strings used to start modes, change settings, and control menus.
All menus
back: back to previous menuspacer: empty spacer line (usespacer1,spacer2, ...; any value enables it)
Main menu (MUGEN defaults)
These are default MUGEN items, loaded by default if the screenpack does not override them with custom menus:
arcade: Arcade Modeversus: Versus Modeteamarcade: Team Arcadeteamversus: Team Versusteamcoop: Team Cooperativesurvival: Survivalsurvivalcoop: Survival Cooperativetraining: Training Modewatch: Watch Modeoptions: Optionsexit: Exit the game
Main menu (Ikemen GO extras)
The items listed below can be added to implement Ikemen GO exclusive modes in the menu system:
versuscoop: Versus Cooperativefreebattle: Quick Matchstorymode: Story Modeserverhost: Host Gameserverjoin: Join Game (reserved submenu)server: opened automatically byserverhost/serverjoin(reserved submenu)joinadd: New IP Addressnetplayversus: Online Versusnetplayteamcoop: Online Cooperativenetplaysurvivalcoop: Online Survivaltimeattack: Time Attackbonusgames: Bonus Games (reserved submenu)randomtest: Endless Watchreplay: Replayback: back to the previous menubonus: used internally (reserved)connect: used internally (reserved)
New game modes can be added via external modules. In this repository, we share the following extra modes as a reference:
bossrush: Boss Rushvs100kumite: VS 100 Kumitetimechallenge: Time Challengescorechallenge: Score Challenge
Options
language: Languagedifficulty: Difficulty Levelroundtime: Time Limitlifemul: Lifesinglevsteamlife: Single VS Team Lifegamespeed: Game Speedroundsnumsingle: Rounds to Win (Single)maxdrawgames: Max Draw Gamescredits: Creditsaipalette: Arcade Paletteaisurvivalpalette: Survival Paletteairamping: AI Rampingquickcontinue: Quick Continueautoguard: Auto-Guarddizzy: Dizzyguardbreak: Guard Breakredlife: Red Lifeteamduplicates: Team Duplicatesteamlifeshare: Team Life Shareteampowershare: Team Power Shareroundsnumtag: Rounds to Win (Tag)losekotag: Partner KOed Losemintag: Min Tag Charsmaxtag: Max Tag Charsroundsnumsimul: Rounds to Win (Simul)losekosimul: Player KOed Loseminsimul: Min Simul Charsmaxsimul: Max Simul Charsturnsrecoverybase: Turns Recovery Baseturnsrecoverybonus: Turns Recovery Bonusminturns: Min Turns Charsmaxturns: Max Turns Charsgl32: OpenGL 3.2 Renderergl21: OpenGL 2.1 Renderervk13: Vulkan 1.3 Rendererresolution: Resolution (reserved submenu)resolution.WxH: Resolution from suffix (e.g.320x240)resolution.customres: Custom resolution inputfullscreen: Fullscreenvsync: VSyncaspectratio: Aspect Ratio (reserved submenu)aspectratio.defaultaspect: Default Aspect Ratioaspectratio.stageaspect: Stage Aspect Ratioaspectratio.customaspect: Custom Aspect Ratioaspectratio.WxH: Aspect Ratio from suffix (e.g.3x4)keepaspect: Keep Aspect Ratiowindowscalemode: Window Scale Modemsaa: MSAAshaders: Shaders (reserved submenu; auto-populated fromexternal/shaders)noshader: Disable selected shaderenablemodel: 3D Modelenablemodelshadow: 3D Model Shadowmastervolume: Master Volumebgmvolume: BGM Volumesfxvolume: SFX Volumeaudioducking: Audio Duckingstereoeffects: Stereo Effectspanningrange: Panning Rangekeyboard: Key Configgamepad: Joystick Configinputdefault: Reset Key/Joystick settingsplayers: Max Playersdebugkeys: Debug Keysdebugmode: Debug Modeportchange: Port Changenetcode: Netcodeframedelay: Rollback Frame Delaydefault: Default Valuessavereturn: Save and Returnreturn: Return Without Saving
Key menu
configall: Config Allup: Updown: Downleft: Leftrigh: Righta: Ab: Bc: Cx: Xy: Yz: Zstart: Startd: Dw: Wmenu: Menurumble: Rumblebac: Backpage: Page
Pause menu
keyboard: Key Configgamepad: Joystick Configinputdefault: Reset Key/Joystick settingscommandlist: Movelistscharacterchange: Back to select screenexit: Back to main menureset: Round Resetreload: Rematch
Training menu
Same as the Pause menu, with a few additional training-specific items:
dummycontrol: Dummy Controlailevel: AI Leveldummymode: Dummy Modeguardmode: Guard Modefallrecovery: Fall Recoverydistance: Distancebuttonjam: Button Jam
Extra behavior and tips
- You can mix and move items into different submenus (including nested ones) without limitations.
- Submenus should be declared before items that use them.
- In the Main Menu, if a submenu contains only one valid option (
backdoes not count), Ikemen may skip showing the submenu and trigger that option directly. - Itemnames added via external modules also work with this system.
- See
data/system.base.deffor a complete example.
Disabling default Options categories (start from scratch)
menu.itemname.menugame =
menu.itemname.menuvideo =
menu.itemname.menuaudio =
menu.itemname.menuinput =
menu.itemname.menuengine =
menu.itemname.spacer1 =
menu.itemname.portchange = Port Change
menu.itemname.default = Default Values
menu.itemname.spacer2 =
menu.itemname.savereturn = Save and Return
menu.itemname.return = Return Without Saving
select.def parameters and options
Refer to the default select.def file distributed with the engine for details and guides regarding new character and stage parameters, as well as new mode options that can be set via select.def.