Jump to content

Help command

From Galactic Empire wiki

The HELP command displays Galactic Empire's in-game documentation for commands, game concepts, and ship classes.

Syntax

HELP
HELP subject
HELP CLASS
HELP CLASS number

The command may be abbreviated to HEL. (Hell, you could even invoke it as HELL.) A question mark is an alias, so forms such as ? and ? WARP reach the same help routine.

HELP without a subject (or an invalid one) displays the main help index. HELP subject displays the corresponding command or topic page. Help subjects accept leading abbreviations, but the first matching entry in the internal help table wins. For example, HELP S matches several subjects but displays SCAN, the first matching entry. Using the complete name shown by the index avoids ambiguity among subjects such as SCAN, SELL, SEND, SET, and SHIELD.

Help index and topic lookup

The help system has two separately maintained parts:

  • A compiled table maps recognized subject names to individual message-file entries.
  • The HLPINDEX message contains the formatted list shown by plain HELP.

Changing one does not update the other automatically. A subject can therefore work when requested directly while remaining absent from the visible index. Classic's own source comment warns that developers adding help must update both the table and HLPINDEX.

This separation caused Classic bug: HELP index omits gameplay commands. GE 3.2e implements HELP LOCK and HELP NAVIGATE, but omits both names from the displayed command list. This was corrected in ge-next 0.01.

Not every unlisted subject is a bug. Continuation pages such as PLANETS2, contextual pages such as HYPER and NEWPRICE, and non-gameplay commands such as SYS and DATA are reached from other help text or exposed only under appropriate conditions. They need not appear as independent commands in the main index.

Ship-class help

HELP CLASS is handled specially rather than as an ordinary static topic. It combines a heading from the help message file with rows generated from the currently loaded ship-class table. This allows configured class names, capabilities, cargo capacities, prices, scan ranges, and point values to appear without maintaining a second copy of those values in help text.

HELP CLASS number opens the descriptive help entry assigned to that user ship class in the ship configuration. For example:

HELP CLASS 1

Classic attempts to fit nearly every class property onto a single fixed-width row. Long class names or large configured values push later columns out of place or wrap the line. This is one of the prominent examples documented in Classic bug: Fixed-width display column overflow. ge-next 0.1 introduced a redesigned class display and later releases kept adjusting it as class fields and terminal-width requirements changed.

ge-arena uses the same command path but generates the class list for the currently selected arena mode. Only user ships available in that mode are shown. Mode-specific fields and loadouts can therefore differ from normal ge-next even when a class has the same name.

Administrative help in ge-next

Classic has a hardcoded SYS HELP display inside the administrative command handler, but it does not register SYS as a subject for the normal help command.

ge-next 0.1 moved the administrative command descriptions into the help message database and added HELP SYS. SYS HELP uses the same maintained help content. Access is checked before that page is displayed: if SYS commands are disabled, or restricted to sysops and the requester lacks the required privilege, HELP SYS returns the ordinary help index instead. SYS is intentionally absent from that public index.

The privilege mechanism differs by host generation. MajorBBS 5.x builds check the user's sysop flag; MajorBBS/Worldgroup 6.x and later builds check the configured SYS key.

Version information in ge-next

ge-next 0.2.2 added:

HELP VERSION

It prints the project name, version number, and architecture, such as 16-bit or 32-bit. VERSION is a built-in query rather than an ordinary entry in the help-message table, and it is not listed in the main index. Classic 3.2e has no corresponding help query.

Classic presentation issues

Classic's help index clears the terminal before displaying its command and topic list. ge-next's replacement index prints in the normal scrolling output without clearing the player's existing screen.

The classic help database also leaves the terminal in the wrong ANSI state. All 60 help definitions fail to finish at GE's normal bright-white baseline: many disable bright intensity, while the rest leave cyan, green, or red active. The following prompt consequently inherits the wrong color or appears dim. This is documented in Classic bug: Messages leak ANSI color and intensity.

ge-next 0.01 was initially a message-only replacement used with the classic 3.2e DLL. It rewrote the complete help collection and explicitly restored the intended color state. It also revised outdated prose, spelling, punctuation, layout, ship descriptions, and the visible index.

Evolution in ge-next

The most notable help-system changes are:

Version Change
ge-next 0.01 Reworked all help messages and ANSI colors; added the missing LOCK and NAVIGATE names to the visible index; revised class descriptions and outdated classic text.
ge-next 0.1 Introduced the redesigned generated HELP CLASS table in the first source-built release; added privilege-checked HELP SYS backed by the help message file.
ge-next 0.2 Added help for the new STOP and reworked WHO commands; added distress, neutron-flux, and faction topics needed by the expanded NPC system.
ge-next 0.2.2 Added HELP VERSION.
ge-next 0.3 Added help for nebulas, ship upgrades, expanded display settings, and additional battle behavior; removed the obsolete FREQ command/help when frequency control moved into SEND; added help for exiting with X.
ge-next/ge-arena 0.3.2 Added arena-specific STATUS and MODES help and generated mode-specific ship-class output.

Some subjects were reorganized rather than simply added. For example, FLUX is both a real command and a broad game concept, but since ge-next automates all flux management, it was moved from commands to topics (the command still works but there's no real reason to use it). Classic's general COMMUNICATE and SECTOR topics were eventually replaced by more specific command help and expanded galaxy, movement, scan, and messaging documentation.

ge-arena

ge-arena uses a separate help message database and conditionally builds its subject table. Commands and topics that do not exist in arena play, including planet ownership and the normal economy, are omitted. Arena-specific STATUS and MODES subjects are included.

The arena index marks commands that are also available in the lobby in yellow. Lobby-only control commands are deliberately explained by the lobby prompts rather than added as permanent gameplay help topics. Entering HELP or ? in the lobby still reaches the regular arena help system.

See also