Screenpack features - ikemen-engine/Ikemen-GO GitHub Wiki
- New parameters
- Disabling elements, adjusting order
- Grouping elements, submenus
- select.def parameters and options
New parameters
There are many new screenpack parameters, but these won't be documented until the engine stabilize feature-wise. Until then everything related to these parameters may change without notice. Refer to this article for information how to update mugen screenpacks to use Ikemen GO features.
Disabling elements, adjusting order
All itemname
elements that existed in mugen and are also enabled by default in ikemen, can be disabled by adding their respective parameter without value assignment in screenpack DEF file. Order in which menu items are displayed can be changed by adjusting itemname order in the screenpack.
All new game and team modes added by Ikemen GO use empty itemname by default (which means they won't be rendered at all, unless motif creator add their respective itemnames into screenpack DEF file).
Grouping elements, submenus
Ikemen GO uses flexible submenu grouping system for main menu and option items (backward compatible with mugen screenpacks). General syntax looks as follows:
menu.itemname.optional_submenus.item = "displayed text"
where:
-
optional_submenus
: combination of 1 or more strings, separated by dots, where each of them refers to additional level of nested menus. For example menu.itemname.menuextras = "EXTRAS" means we're displaying EXTRAS option on the screen (in this case right on the main menu) that opens up additional submenu with items using menuextras as a prefix, e.g. menu.itemname.menuextras.freebattle -
item
: strings used to start modes, change settings and control menus. Below list contains all item names that are reserved by the engine.Main Menu
arcade
: Arcade Modeteamarcade
: Team Arcadeteamcoop
: Team Cooperativeversus
: Versus Modeteamversus
: Team Versusversuscoop
: Versus Cooperativefreebattle
: Quick Matchstorymode
: Story Modeserverhost
: Host Gameserverjoin
: Join Game (reserved submenu)server
: opened automatically by serverhost/serverjoin (reserved submenu)joinadd
: New IP Addressnetplayversus
: Online Versusnetplayteamcoop
: Online Cooperativenetplaysurvivalcoop
: Online Survivaltournament
: Tournament Mode (reserved, not implemented yet)training
: Training Modetrials
: Trials Mode (reserved, not implemented yet)timeattack
: Time Attacksurvival
: Survivalsurvivalcoop
: Survival Cooperativebossrush
: Boss Rushvs100kumite
: VS 100 Kumitetimechallenge
: Time Challengescorechallenge
: Score Challengebonusgames
: Bonus Games (reserved submenu)watch
: Watch Moderandomtest
: Endless Watchreplay
: Replayoptions
: Optionsback
: Back to previous menuexit
: Exit the gamebonus
: used internally (reserved)connect
: used internally (reserved)
Options
difficulty
: Difficulty Levelroundtime
: Time Limitlifemul
: Lifesinglevsteamlife
: Single VS Team Lifegamespeed
: Game Speedroundsnumsingle
: Rounds to Win (Single)maxdrawgames
: Max Draw Gamescredits
: Creditsaipalette
: AI Paletteairamping
: AI Rampingquickcontinue
: Quick Continueautoguard
: Auto-Guardstunbar
: Dizzyguardbar
: Guard Breakredlifebar
: 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 Charsratiorecoverybase
: Ratio Recovery Baseratiorecoverybonus
: Ratio Recovery Bonusratio1life, ratio2life, ratio3life, ratio4life
: Ratio life adjustmentratio1attack, ratio2attack, ratio3attack, ratio4attack
: Ratio damage adjustmentresolution
: Resolution (reserved submenu)resolution.WxH
: Resolution is assigned based on values used in itemname suffix (e.g. 320x240)resolution.customres
: Allows to set custom resolution by typing in valuesfullscreen
: Fullscreenvretrace
: VSyncmsaa
: MSAAshaders
: Shaders (reserved submenu, this list is populated automatically with shaders existing in external/shaders directory)noshader
: Disables selected shadermastervolume
: Master Volumebgmvolume
: BGM Volumesfxvolume
: SFX Volumeaudioducking
: Audio Duckingstereoeffects
: Stereo Effectspanningrange
: Panning Rangekeyboard
: Key Configgamepad
: Joystick Configplayers
: Max Playersinputdefault
: Resets Key/Joystick settingsdebugkeys
: Debug Keysdebugmode
: Debug Modehelpermax
: HelperMaxprojectilemax
: PlayerProjectileMaxexplodmax
: ExplodMaxafterimagemax
: AfterImageMaxportchange
: Port Changedefault
: Default Valuesempty
: empty line (additional space between options)back
: Back to previous menusavereturn
: Save and Returnreturn
: Return Without Saving
Pause menu
keyboard
: Key Configgamepad
: Joystick Configinputdefault
: Resets Key/Joystick settingscommandlist
: Movelistsreset
: Round Resetreload
: Rematchcharacterchange
: Back to select screenexit
: Back to main menuback
: Back to previous menu
Training menu
Same as Pause menu with few more training specific items:
dummycontrol
: Dummy Controlailevel
: AI Levelguardmode
: Guard Modedummymode
: Dummy Modedistance
: Distancebuttonjam
: Button Jam
You can mix and move items into different submenus (including nested ones) without any limitations. Order in which menu items will show up on the screen depends on their order in screenpack DEF file. Submenus should be declared before parameters referring to items grouped inside those menus. For Main Menu, if there is only 1 valid option in submenu (back item doesn't count) then that option will be triggered, skipping the submenu display. Itemnames added via external modules also work with this system.
Refer to data/system.base.def file distributed with engine for example how to use submenus in your screenpack.
select.def parameters and options
Refer to default select.def file distributed with engine for details and guides regarding new character and stage parameters, as well as new modes options that can be set via select.def.