Popmenu Customization in City of Heroes: A Guide to Macros and User Interface Enhancements

Popmenus represent a significant customization feature within the City of Heroes game environment, specifically on the Homecoming servers. These functions allow players to create macro buttons that trigger customized pop-up menus of commands, effectively consolidating multiple actions into a single interface element. According to the provided documentation, a popmenu functions as a macro button that displays a menu of commands, as if a player had "plugged all your macros into one place." The system is designed to be accessible, with the source material noting that popmenus are "not really all that hard to craft."

The functionality of popmenus is integrated directly into the game's architecture. Homecoming includes several pre-baked popmenus, such as one attached to the chat function that displays all game emotes and a "Fast Travel" button found in the powers bin. A specific example cited is the "Everlasting Base List" popmenu, which provides a comprehensive list of base-entry commands, allowing players to select a base and instantly teleport to it.

Technical Structure and File Management

Popmenus are text files with the .mnu extension. The source material emphasizes that these files are "not that scary" to handle, provided that the user carefully nests each menu and option with braces and curly brackets. Every option line within the file functions as a macro, and every menu serves as a flyout list of these macros.

To implement a custom popmenu, the .mnu file must be placed in a specific directory: <COH_INSTALL_DIRECTORY>\data\texts\<LANGUAGE>\Menus\. The language directory (e.g., English, German, French) must match the language of the installed version of City of Heroes. Once the file is in place, the player loads the game and types a slash command to create the macro button. For example, the command /macro BABY popmenu BabysFirstMenu creates a button labeled "BABY" that, when clicked, opens the corresponding custom menu.

Syntax and Formatting

The syntax for creating MNU files can be edited in any standard text editor. The general structure involves defining menus and options within a specific hierarchy. The documentation outlines the following 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 } } }

The Menu definition groups the various Options. Within the menu, users can define titles, specific options, commands, and dividers. The documentation also notes the ability to create nested menus, which allows for complex command trees within a single popmenu button.

Advanced Features and Limitations

Popmenus offer several advanced features that enhance the user interface experience. The documentation mentions that users can add icons to options. Furthermore, the system supports conditional logic: an option can be "grayed out" in the popmenu if the player does not own the associated skill or if the skill is currently recharging. This visual feedback prevents players from attempting to use unavailable commands.

Additionally, the documentation highlights the use of "ampersands in the original code" to flag letters for quick access. This allows players to open a menu and press a specific keyboard key (e.g., 'A') to execute a command immediately without navigating through the graphical interface.

Use Cases and Applications

The source material suggests that popmenus are particularly useful for travel-related commands. Examples include summoning an Ouroboros Portal, which can be configured to drop the portal a few paces in front of the player rather than requiring ground-targeting. However, the utility extends beyond travel. The documentation mentions using unique summoning and buffing popmenus for Masterminds, a specific character archetype.

Other potential applications include: * Base Access: Creating customized lists of favorite bases across different servers. * Experience Control: Adding commands to turn XP gain on and off. * Social Interaction: Consolidating favorite emotes. * Macro Generation: Designing popmenus that create other macros on demand, reducing the number of UI slots required.

Resources for Further Learning

For players interested in creating their own popmenus, the documentation recommends several resources. It suggests that the easiest way to start is by downloading an existing popmenu and editing it. For those starting from scratch, the following guides are recommended:

  • Shenanigunner’s City of Heroes Technical Reference Guide: Described as a "work of art," specifically Chapter 7 which covers popmenus.
  • Zolgar’s Guide: Available on the official forums, noted for being a thoughtful guide.
  • Homecoming Wiki: Offers a trimmed-down guide that is useful for sorting through badge and power strings needed for commands.
  • DarkWings’s Consolidated List of Popmenus: A massive repository of other players' popmenus that can be downloaded and tinkered with.

These resources provide the necessary technical details to master the syntax and capabilities of the popmenu system, enabling players to streamline their gameplay and customize their interface to suit specific needs.

Conclusion

Popmenus serve as a powerful tool for City of Heroes players seeking to customize their user interface and streamline command execution. By utilizing simple text files and specific directory placement, players can create complex, nested menus that consolidate macros, emotes, travel commands, and archetype-specific functions. The system supports conditional formatting and keyboard shortcuts, making it a versatile addition to the game's UI capabilities. With the availability of comprehensive guides and community-shared files, players of all technical skill levels can utilize popmenus to enhance their gameplay experience.

Sources

  1. Working as intended: City of Heroes macros and popmenus for noobs
  2. Popmenu (Slash Command)

Related Posts