Convert table of command-line options into list

Before this change, USAGE.md had an HTML table that contained
documentation for all of Descent 3’s command-line options. A concern was
raised that an HTML table might not be easy to read if someone
downloaded Descent 3 and opened USAGE.md in a plain text editor [1].
This commit alleviates that concern by converting the HTML table into
bulleted lists. Credit for this idea goes to @Lgt2x [2].

The main motivation behind this change is to help get #623 merged.

[1]: <https://github.com/DescentDevelopers/Descent3/pull/623#discussion_r1790331994>
[2]: <https://github.com/DescentDevelopers/Descent3/pull/623#discussion_r1790741430>
This commit is contained in:
Jason Yundt 2024-10-20 17:29:30 -04:00
parent 5708b79c10
commit d45576cb8a

837
USAGE.md
View File

@ -115,367 +115,486 @@ Lets also say that both `my-writable-base-directory` and `my-read-only-base-d
The following command-line options are available in Descent 3. You can set command-line options on the Misc. tab of the Setup section of the Descent 3 launcher or by creating a shortcut to `Descent3.exe`. Case is not significant in command-line options, and `-`, `--`, and `+` are all accepted. The following command-line options are available in Descent 3. You can set command-line options on the Misc. tab of the Setup section of the Descent 3 launcher or by creating a shortcut to `Descent3.exe`. Case is not significant in command-line options, and `-`, `--`, and `+` are all accepted.
<table> ### Display Options
<tr>
<th>Option</th>
<th>Type</th>
<th>Default</th>
<th>Platform</th>
<th>Description</th>
</tr>
<tr>
<th colspan="5">Display Options</th>
</tr>
<tr>
<td><code>-aspect &lt;value&gt;</code></td>
<td>floating-point number</td>
<td>1.3333333333333333</td>
<td>all</td>
<td>Specifies the screen aspect ratio for non-standard displays, such as wide-screen TVs.</td>
</tr>
<tr>
<td><code>-display &lt;number&gt;</code></td>
<td>integer</td>
<td>0</td>
<td>all</td>
<td>Run game on the selected display.</td>
</tr>
<tr>
<td><code>-fullscreen</code> or <code>-f</code></td>
<td>boolean</td>
<td>On</td>
<td>all</td>
<td>Run game in fullscreen mode.</td>
</tr>
<tr>
<td><code>-height &lt;height&gt;</code></td>
<td>integer</td>
<td>480 unless you select a different value in the options menu</td>
<td>all</td>
<td>Sets the screen resolution to the specified height, if possible.</td>
</tr>
<tr>
<td><code>-himem</code></td>
<td>boolean</td>
<td>Off</td>
<td>all</td>
<td>Forces normal operations even when low memory conditions are detected.</td>
</tr>
<tr>
<td><code>-lowmem</code></td>
<td>boolean</td>
<td>Off</td>
<td>all</td>
<td>Uses scaled-down textures and lower quality (8-bit) sounds to conserve memory.</td>
</tr>
<tr>
<td><code>-NoRenderWindows</code></td>
<td>boolean</td>
<td>Off</td>
<td>all</td>
<td>Causes all windows to be fully transparent. Use this option if your card does not correctly render partially-transparent windows.</td>
</tr>
<tr>
<td><code>-superlowmem</code></td>
<td>boolean</td>
<td>Off</td>
<td>all</td>
<td>Uses the <code>-lowmem</code> settings and further scales down textures to conserve memory.</td>
</tr>
<tr>
<td><code>-vsync</code></td>
<td>boolean</td>
<td>Off</td>
<td>all</td>
<td>Turns on Vertical Sync. The flag will be enabled in the registry so it will be on when the game is run again.</td>
</tr>
<tr>
<td><code>-width &lt;width&gt;</code></td>
<td>integer</td>
<td>640 unless you select a different value in the options menu</td>
<td>all</td>
<td>Sets the screen resolution to the specified width, if possible.</td>
</tr>
<tr>
<td><code>-windowed</code> or </code>-w</code></td>
<td>boolean</td>
<td>Off</td>
<td>all</td>
<td>Runs the game in a window.</td>
</tr>
<tr> - `-aspect <value>`
<th colspan="5">Audio Options</th>
</tr>
<tr>
<td><code>-nomusic</code></td>
<td>boolean</td>
<td>Off</td>
<td>all</td>
<td>Disables music.</td>
</tr>
<tr>
<td><code>-nosound</code></td>
<td>boolean</td>
<td>Off</td>
<td>all</td>
<td>Disables all sound, including music.</td>
</tr>
<tr> **Type:** floating-point number
<th colspan="5">Input Options</th>
</tr>
<tr>
<td><code>-deadzone# &lt;k&gt;</code></td>
<td><code>#</code> is either the character <code>0</code> or the character <code>1</code>. <code>k</code> is a floating-point number.</td>
<td>0.2</td>
<td>all</td>
<td>Specifies the size of the deadzone for a joystick.</td>
</tr>
<tr>
<td><code>-mlooksens &lt;scale&gt;</code></td>
<td>floating-point number</td>
<td>9.102</td>
<td>all</td>
<td>Determines how much the player moves when the mouse is moved.</td>
</tr>
<tr>
<td><code>-mousesens &lt;scale&gt;</code></td>
<td>floating-point number</td>
<td>1.0</td>
<td>all</td>
<td>Adjusts the sensitivity of the mouse when not using mouselook mode.</td>
</tr>
<tr>
<td><code>-nomousegrab</code> or <code>-m</code></td>
<td>boolean</td>
<td>Off</td>
<td>all</td>
<td>Disable mouse capture.</td>
</tr>
<tr>
<th colspan="5">Performance Options</th>
</tr>
<tr>
<td><code>-fastdemo</code></td>
<td>boolean</td>
<td>Off</td>
<td>all</td>
<td>Causes a demo to play back at the highest speed your computer is capable of.</td>
</tr>
<tr>
<td><code>-forcelightmaps</code></td>
<td>boolean</td>
<td>Off</td>
<td>all</td>
<td>Forces the use of lightmaps, even the Default Detail Level is set to Low in the launcher setup.</td>
</tr>
<tr>
<td><code>-framecap &lt;fps&gt;</code></td>
<td>integer</td>
<td>60</td>
<td>all</td>
<td>Limits the framerate to the number of frames per second specified.</td>
</tr>
<tr>
<td><code>-nomotionblur</code></td>
<td>boolean</td>
<td>Off</td>
<td>all</td>
<td>Disables motion blur on robots (Pentium III only).</td>
</tr>
<tr>
<td><code>-nosatomega</code></td>
<td>boolean</td>
<td>Off</td>
<td>all</td>
<td>Disables alpha saturation on the omega cannon effect.</td>
</tr>
<tr>
<td><code>-nosparkles</code></td>
<td>boolean</td>
<td>Off</td>
<td>all</td>
<td>Disables powerup sparkles (Pentium III only).</td>
</tr>
<tr> **Default:** 1.3333333333333333
<th colspan="5">Multiplayer and Network Options</th>
</tr>
<tr>
<td><code>-audiotauntdelay &lt;time&gt;</code></td>
<td>floating-point number</td>
<td>5.0</td>
<td>all</td>
<td>Sets the time in seconds the a user must wait after sending an audio taunt before he or she is able to send another. This option is only active when starting a server.</td>
</tr>
<tr>
<td><code>-autoexec &lt;file&gt;</code></td>
<td>path</td>
<td>&lt;writable-base-directory&gt;/netgames/autoexec.dmfc</td>
<td>all</td>
<td>Specifies the full path and file name of the multiplayer config file to be loaded and executed when a multiplayer game is initialized.</td>
</tr>
<tr>
<td><code>-dedicated &lt;config file&gt;</code> or <code>-d &lt;config file&gt;</code></td>
<td>path</td>
<td>None</td>
<td>all</td>
<td>Starts a dedicated server.</td>
</tr>
<tr>
<td><code>-gamespyport &lt;port&gt;</code></td>
<td>integer</td>
<td>20142</td>
<td>all</td>
<td>Specifies a port for to listen for GameSpy requests.</td>
</tr>
<tr>
<td><code>-gspyfile &lt;config file&gt;</code></td>
<td>path</td>
<td>gamespy.cfg</td>
<td>all</td>
<td>Specifies a GameSpy configuration file to use.</td>
</tr>
<tr>
<td><code>-httpproxy &lt;addr&gt;</code> or <code>-httpproxy &lt;addr:port&gt;</code></td>
<td>string</td>
<td>None</td>
<td>all</td>
<td>Specifies an HTTP proxy server. Descent 3 uses HTTP to auto-download a mission; use this option if your ISP requires a proxy server for HTTP connections. If the first form is used, the port value defaults to 80.</td>
</tr>
<tr>
<td><code>-nooutragelogo</code></td>
<td>boolean</td>
<td>Off</td>
<td>all</td>
<td>Disables the Outrage logo that is normally displayed for five seconds at the start of a multiplayer game.</td>
</tr>
<tr>
<td><code>-nomultibmp</code></td>
<td>boolean</td>
<td>Off</td>
<td>all</td>
<td>Disables sending or receiving in-game custom bitmaps for ships.</td>
</tr>
<tr>
<td><code>-nonetwork</code></td>
<td>boolean</td>
<td>Off</td>
<td>all</td>
<td>Disables all network multiplayer functionality.</td>
</tr>
<tr>
<td><code>-playermessages</code></td>
<td>boolean</td>
<td>Off</td>
<td>all</td>
<td>Disables all weapon-related HUD messages in multiplayer games.</td>
</tr>
<tr>
<td><code>-pxoport &lt;port&gt;</code></td>
<td>integer</td>
<td>20142</td>
<td>all</td>
<td>Specifies the port that PXO will tell clients to use when contacting a server. The default is 2092.</td>
</tr>
<tr>
<td><code>-useip &lt;IP&gt;</code></td>
<td>string</td>
<td>All available network interfaces</td>
<td>all</td>
<td>Binds Descent 3 to this IP address. Use this option to tell D3 which IP address to use if your computer has multiple IP addresses.</td>
</tr>
<tr>
<td><code>-useport &lt;port&gt;</code></td>
<td>integer</td>
<td>2092</td>
<td>all</td>
<td>Specifies the port that TCP/IP and IPX will use.</td>
</tr>
<tr>
<td><code>-usesmoothing</code></td>
<td>boolean</td>
<td>Off</td>
<td>all</td>
<td>Enables code to smooth the interpolation for fast-moving objects. This will fix "skipping" problems with fast weapons, such as the Phoenix. This option applies to clients only; using it on the server has no effect.</td>
</tr>
<tr> **Platform:** all
<th colspan="5">Base Directory Options</th>
</tr>
<tr>
<td><code>-additionaldir &lt;path&gt;</code></td>
<td>path</td>
<td>None</td>
<td>all</td>
<td>Adds a directory to the list of read-only base directories. This options can be used multiple times to add multiple directories to the list.</td>
</tr>
<tr>
<td><code>-setdir &lt;path&gt;</code></td>
<td>path</td>
<td>.</td>
<td>all</td>
<td>Sets the writable base directory.</td>
</tr>
<tr>
<td><code>-useexedir</code></td>
<td>boolean</td>
<td>Off</td>
<td>all</td>
<td>Tells Descent 3 to use the directory in which the executable is located as the writable base directory.</td>
</tr>
<tr> **Description:** Specifies the screen aspect ratio for non-standard displays, such as wide-screen TVs.
<th colspan="5">Other Options</th>
</tr> - `-display <number>`
<tr>
<td><code>-logfile</code></td> **Type:** integer
<td>boolean</td>
<td>Off</td> **Default:** 0
<td>all</td>
<td>Generates a logfile <code>d3.log</code> if using the Debug build. All <code>mprintf</code> statements output to the logfile.</td> **Platforms:** all
</tr>
<tr> **Description:** Run game on the selected display.
<td><code>-loglevel &lt;LEVEL&gt;</code></td>
<td>string</td> - `-fullscreen` or `-f`
<td>INFO (on Release), DEBUG (on Debug)</td>
<td>all</td> **Type:** boolean
<td>Set log level (NONE, VERBOSE, DEBUG, INFO, WARNING, ERROR, FATAL)</td>
</tr> **Default:** On
<tr>
<td><code>-makemovie</code></td> **Platform:** all
<td>boolean</td>
<td>Off</td> **Description:** Run game in fullscreen mode.
<td>all</td>
<td>Causes the demo system to save a screenshot of every frame during playback.</td> - `-height <height>`
</tr>
<tr> **Type:** integer
<td><code>-mission &lt;name&gt;</code></td>
<td>string</td> **Default:** 480 unless you select a different value in the options menu
<td>None</td>
<td>all</td> **Platform:** all
<td>Loads the specified mission file at startup.</td>
</tr> **Description:** Sets the screen resolution to the specified height, if possible.
<tr>
<td><code>-pilot &lt;name&gt;</code></td> - `-himem`
<td>string</td>
<td>None</td> **Type:** boolean
<td>all</td>
<td>Specifies the pilot to use, skipping the pilot selection dialog when the game starts.</td> **Default:** Off
</tr>
<tr> **Platform:** all
<td><code>-service</code></td>
<td>boolean</td> **Description:** Forces normal operations even when low memory conditions are detected.
<td>Off</td>
<td>all</td> - `-lowmem`
<td>Run game in service mode.</td>
</tr> **Type:** boolean
<tr>
<td><code>-winconsole</code></td> **Default:** Off
<td>boolean</td>
<td>Off</td> **Platform:** all
<td>WIN</td>
<td>Enable windows console (off by default).</td> **Description:** Uses scaled-down textures and lower quality (8-bit) sounds to conserve memory.
</tr>
</table> - `-NoRenderWindows`
**Type:** boolean
**Default:** Off
**Platform:** all
**Description:** Causes all windows to be fully transparent. Use this option if your card does not correctly render partially-transparent windows.
- `-superlowmem`
**Type:** boolean
**Default:** Off
**Platform:** all
**Description:** Uses the `-lowmem` settings and further scales down textures to conserve memory.
- `-vsync`
**Type:** boolean
**Default:** Off
**Platform:** all
**Description:** Turns on Vertical Sync. The flag will be enabled in the registry so it will be on when the game is run again.
- `-width <width>`
**Type:** integer
**Default:** 640 unless you select a different value in the options menu
**Platform:** all
**Description:** Sets the screen resolution to the specified width, if possible.
- `-windowed` or `-w`
**Type:** boolean
**Default:** Off
**Platform:** all
**Description:** Runs the game in a window.
### Audio Options
- `-nomusic`
**Type:** boolean
**Default:** Off
**Platform:** all
**Description:** Disables music.
- `-nosound`
**Type:** boolean
**Default:** Off
**Platform:** all
**Description:** Disables all sound, including music.
### Input Options
- `-deadzone# <k>`
**Type:** `#` is either the character `0` or the character `1`. `k` is a floating-point number.
**Default:** 0.2
**Platform:** all
**Description:** Specifies the size of the deadzone for a joystick.
- `-mlooksens <scale>`
**Type:** floating-point number
**Default:** 9.102
**Platform:** all
**Description:** Determines how much the player moves when the mouse is moved.
- `-mousesens <scale>`
**Type:** floating-point number
**Default:** 1.0
**Platform:** all
**Description:** Adjusts the sensitivity of the mouse when not using mouselook mode.
- `-nomousegrab` or `-m`
**Type:** boolean
**Default:** Off
**Platform:** all
**Description:** Disable mouse capture.
### Performance Options
- `-fastdemo`
**Type:** boolean
**Default:** Off
**Platform:** all
**Description:** Causes a demo to play back at the highest speed your computer is capable of.
- `-forcelightmaps`
**Type:** boolean
**Default:** Off
**Platform:** all
**Description:** Forces the use of lightmaps, even the Default Detail Level is set to Low in the launcher setup.
- `-framecap <fps>`
**Type:** integer
**Default:** 60
**Platform:** all
**Description:** Limits the framerate to the number of frames per second specified.
- `-nomotionblur`
**Type:** boolean
**Default:** Off
**Platform:** all
**Description:** Disables motion blur on robots (Pentium III only).
- `-nosatomega`
**Type:** boolean
**Default:** Off
**Platform:** all
**Description:** Disables alpha saturation on the omega cannon effect.
- `-nosparkles`
**Type:** boolean
**Default:** Off
**Platform:** all
**Description:** Disables powerup sparkles (Pentium III only).
### Multiplayer and Network Options
- `-audiotauntdelay <time>`
**Type:** floating-point number
**Default:** 5.0
**Platform:** all
**Description:** Sets the time in seconds the a user must wait after sending an audio taunt before he or she is able to send another. This option is only active when starting a server.
- `-autoexec <file>`
**Type:** path
**Default:** `<writable-base-directory>/netgames/autoexec.dmfc`
**Platform:** all
**Description:** Specifies the full path and file name of the multiplayer config file to be loaded and executed when a multiplayer game is initialized.
- `-dedicated <config file>` or `-d <config file>`
**Type:** path
**Default:** None
**Platform:** all
**Description:** Starts a dedicated server.
- `-gamespyport <port>`
**Type:** integer
**Default:** 20142
**Platform:** all
**Description:** Specifies a port for to listen for GameSpy requests.
- `-gspyfile <config file>`
**Type:** path
**Default:** gamespy.cfg
**Platform:** all
**Description:** Specifies a GameSpy configuration file to use.
- `-httpproxy <addr>` or `-httpproxy <addr:port>`
**Type:** string
**Default:** None
**Platform:** all
**Description:** Specifies an HTTP proxy server. Descent 3 uses HTTP to auto-download a mission; use this option if your ISP requires a proxy server for HTTP connections. If the first form is used, the port value defaults to 80.
- `-nooutragelogo`
**Type:** boolean
**Default:** Off
**Platform:** all
**Description:** Disables the Outrage logo that is normally displayed for five seconds at the start of a multiplayer game.
- `-nomultibmp`
**Type:** boolean
**Default:** Off
**Platform:** all
**Description:** Disables sending or receiving in-game custom bitmaps for ships.
- `-nonetwork`
**Type:** boolean
**Default:** Off
**Platform:** all
**Description:** Disables all network multiplayer functionality.
- `-playermessages`
**Type:** boolean
**Default:** Off
**Platform:** all
**Description:** Disables all weapon-related HUD messages in multiplayer games.
- `-pxoport <port>`
**Type:** integer
**Default:** 20142
**Platform:** all
**Description:** Specifies the port that PXO will tell clients to use when contacting a server. The default is 2092.
- `-useip <IP>`
**Type:** string
**Default:** All available network interfaces
**Platform:** all
**Description:** Binds Descent 3 to this IP address. Use this option to tell D3 which IP address to use if your computer has multiple IP addresses.
- `-useport <port>`
**Type:** integer
**Default:** 2092
**Platform:** all
**Description:** Specifies the port that TCP/IP and IPX will use.
- `-usesmoothing`
**Type:** boolean
**Default:** Off
**Platform:** all
**Description:** Enables code to smooth the interpolation for fast-moving objects. This will fix "skipping" problems with fast weapons, such as the Phoenix. This option applies to clients only; using it on the server has no effect.
### Base Directory Options
- `-additionaldir <path>`
**Type:** path
**Default:** None
**Platform:** all
**Description:** Adds a directory to the list of read-only base directories. This options can be used multiple times to add multiple directories to the list.
- `-setdir <path>`
**Type:** path
**Default:** .
**Platform:** all
**Description:** Sets the writable base directory.
- `-useexedir`
**Type:** boolean
**Default:** Off
**Platform:** all
**Description:** Tells Descent 3 to use the directory in which the executable is located as the writable base directory.
### Other Options
- `-logfile`
**Type:** boolean
**Default:** Off
**Platform:** all
**Description:** Generates a logfile `d3.log` if using the Debug build. All `mprintf` statements output to the logfile.
- `-loglevel <LEVEL>`
**Type:** string
**Default:** INFO (on Release), DEBUG (on Debug)
**Platform:** all
**Description:** Set log level (NONE, VERBOSE, DEBUG, INFO, WARNING, ERROR, FATAL)
- `-makemovie`
**Type:** boolean
**Default:** Off
**Platform:** all
**Description:** Causes the demo system to save a screenshot of every frame during playback.
- `-mission <name>`
**Type:** string
**Default:** None
**Platform:** all
**Description:** Loads the specified mission file at startup.
- `-pilot <name>`
**Type:** string
**Default:** None
**Platform:** all
**Description:** Specifies the pilot to use, skipping the pilot selection dialog when the game starts.
- `-service`
**Type:** boolean
**Default:** Off
**Platform:** all
**Description:** Run game in service mode.
- `-winconsole`
**Type:** boolean
**Default:** Off
**Platform:** WIN
**Description:** Enable windows console (off by default).