Popmenu (Slash Command): Difference between revisions
m (added note about percent sign) |
SecretCisco (talk | contribs) (sharing my knowledge, gleaned from pouring over forum posts for hours. Please forgive any formatting issues) |
||
Line 43: | Line 43: | ||
StoreProduct ''ProductIdentifiers'' | StoreProduct ''ProductIdentifiers'' | ||
} | } | ||
* '''<tt>Menu</tt>''' defines one or more '''<tt>Option</tt>''' command. Menus can be nested, but each sub-menu requires its own pair of curly braces. | * '''<tt>Menu</tt>''' defines one or more '''<tt>Option</tt>''' command. Menus can be nested, but each sub-menu requires its own pair of curly braces. | ||
Line 65: | Line 63: | ||
** Menus can have more than one Title. | ** Menus can have more than one Title. | ||
* '''<tt>Divider</tt>''' places a horizontal line in the menu. | * '''<tt>Divider</tt>''' places a horizontal line in the menu. | ||
For powers with icons that are only clickable if available like in the Fast Travel menu: | |||
LockedOption | |||
{ | |||
DisplayName ''OptionName'' | |||
Command ''Command'' | |||
Icon ''Image_Name'' | |||
PowerReady ''InternalPowerName'' | |||
} | |||
* '''<tt>Icon</tt>''' sets what icon the option uses using the same names as [[Macro_image_(Slash_Command)]] | |||
* '''<tt>PowerReady</tt>''' defines what power is needed to enable this option. | |||
** '''''<tt>InternalPowerName</tt>''''' is the name of the power the game uses internally, some of which can be found with [https://forums.homecomingservers.com/topic/16311-a-powers-api-of-sorts-gift-to-the-community-developers/ this tool] | |||
=== Notes === | === Notes === |
Revision as of 12:47, 14 March 2022
SlashCommand
This command opens a custom pop-up menu by menuname at the current cursor's location.
Custom pop-up menu files are read from the following directory:
<COH_INSTALL_DIRECTORY>\data\texts\<LANGUAGE>\Menus\
<LANGUAGE> may be one of the following and needs to match the language of the version of City of Heroes that is installed:
- ChineseTraditional
- English
- French
- German
- Japanese
- Korean
- uk
City of Heroes looks in this directory for files with the .mnu file extension. If none are found, it uses the internal default quickchat menu. If there is a customized quickchat.mnu file found, that will be used in place of the internal default when you click the "Quick Chat" button. You can place multiple files with the extension .mnu in this directory and they will be available for use with the popmenu command.
Syntax
MNU files can be edited in any text editor. Menus have the following general structure:
Menu MenuName { Title TitleName Option OptionName Command Divider Title TitleName Option OptionName Command Menu SubMenuName { Title TitleName Option OptionName Command Divider LockedOption { DisplayName OptionName Command Command Authbit AuthIdentifiers Badge BadgeIdentifiers RewardToken RewardIdentifiers StoreProduct ProductIdentifiers }
- Menu defines one or more Option command. Menus can be nested, but each sub-menu requires its own pair of curly braces.
- MenuName is the name of the menu opened by the /popmenu menu name slash command.
- To create a menu name of more than one word with spaces between them, enclose it in quotes.
- Option is a selectable command within a menu.
- One letter in OptionName can be designated as a hotkey by prefixing an ampersand (&).
- To create an option name of more than one word with spaces between them, enclose it in quotes.
- Command is one or more slash commands (separated by $$).
- LockedOption is an Option, which may be grayed out (disabled) for certain characters or accounts.
- Only one of Authbit, Badge, RewardToken, or StoreProduct is required, though you may use multiple. These are what defines the circumstances under which the LockedOption is enabled or disabled.
- Multiple identifiers may be specified for a single type, for example: Badge CouncilRobotBadge StMartialTour1. This produces a logical OR; the previous example unlocks the Option if the character has either Burkholder's Bane or Deuces Wild.
- List of badge names (in BadgeGrant tag column)
- List of hidden badge names (9/9/2010)
- List of Authbit Identifiers
- List of RewardToken Identifiers
- List of StoreProduct Identifiers
- Title is an optional element.
- TitleName labels a menu, or a section of a menu. Titles are not selectable.
- Menus can have more than one Title.
- Divider places a horizontal line in the menu.
For powers with icons that are only clickable if available like in the Fast Travel menu:
LockedOption { DisplayName OptionName Command Command Icon Image_Name PowerReady InternalPowerName }
- Icon sets what icon the option uses using the same names as Macro_image_(Slash_Command)
- PowerReady defines what power is needed to enable this option.
- InternalPowerName is the name of the power the game uses internally, some of which can be found with this tool
Notes
- The popmenu command is called using the top-level "Menu" name inside the Menu (.mnu) file and NOT the name of the Menu (.mnu) file itself. The filename does not matter and does not even have to match the "Menu" name as long as it has the .mnu file extension.
- MNU files allow comments. Use a double forward slash (//) anywhere on a line to force the client to ignore anything between the double slash and the line return.
- IMPORTANT: MNU files must have at least one line containing a carriage-return at the end of the line above the first "Menu" entry. It can be blank, a full comment, or just the comment tag (//) or any number of those lines otherwise it will not function.
- Changes to custom menus require you to exit the client in order for the changes to take effect.
- Custom menus are accessible by all characters on the same machine. By extension, you can send custom menu files to other people so that they can use them as well.
- Option and its parameters must be on one line. Otherwise, the menu will not function.
- Inspiration and power names with spaces can be used in commands by replacing the spaces with an underscore (for example, Catch_a_Breath). You can also enclose the entire Command portion in quotation marks.
- Multiple Commands can be executed by one Option by joining them with $$, just as they would be on the client command line.
- Bind_load and Bind used as commands do not currently work as expected. Binds made via popmenu will take effect after the client is restarted.
- The percent sign (%) will not display if used within the OptionName parameter.