Creating AWP Waypoint Files: Difference between revisions
(Created page with "{{RF1Tutorial|Goober}} This step-by-step guide will walk you through creating an '''AWP file''' (Alpine Waypoint grid file) for a Red Faction 1 multiplayer level using the [https://alpinefaction.com Alpine Faction] v1.3 in-game '''waypoint editor'''. AWP files describe the navigation grid that Alpine Faction bots use to move, fight, and pursue objectives on the map - if a level has no AWP, bots cannot navigate it. '''NOTE:''' If you also want to test the resulting AWP w...") |
No edit summary |
||
| Line 32: | Line 32: | ||
</pre> | </pre> | ||
==Step 2: Auto-generate a baseline | ==Step 2: Auto-generate a baseline grid== | ||
Hand-placing every waypoint on a real multiplayer map is impractical. The editor includes an auto-generation pipeline that walks outward from the level's existing item, respawn, CTF flag, and teleporter objects, probes the geometry, and builds a connected waypoint | Hand-placing every waypoint on a real multiplayer map is impractical. The editor includes an auto-generation pipeline that walks outward from the level's existing item, respawn, CTF flag, and teleporter objects, probes the geometry, and builds a connected waypoint grid automatically. Start there and tweak by hand only where it gets things wrong. | ||
In the editor panel, click '''Generate waypoints (INTENSE)'''. | In the editor panel, click '''Generate waypoints (INTENSE)'''. | ||
| Line 51: | Line 51: | ||
If the log says '''No seed waypoints found for generation''', the level has no item/respawn/CTF/teleporter objects the generator can use as anchors - you'll need to either add some in the level editor or hand-place starter waypoints (see Step 3). | If the log says '''No seed waypoints found for generation''', the level has no item/respawn/CTF/teleporter objects the generator can use as anchors - you'll need to either add some in the level editor or hand-place starter waypoints (see Step 3). | ||
==Step 3: Inspect and edit the | ==Step 3: Inspect and edit the grid== | ||
The editor uses a dual mouse mode. By default, the mouse looks around like normal gameplay. '''Right-click''' toggles the '''UI cursor''' on and off: | The editor uses a dual mouse mode. By default, the mouse looks around like normal gameplay. '''Right-click''' toggles the '''UI cursor''' on and off: | ||
*'''Mouse aim''' (right-click off): Look around with the mouse as in normal play. Crosshair selects the waypoint/zone/target you're looking at. | *'''Mouse aim''' (right-click off): Look around with the mouse as in normal play. Crosshair selects the waypoint/zone/target you're looking at. | ||
| Line 102: | Line 102: | ||
===Step 3e: Optional cleanup passes=== | ===Step 3e: Optional cleanup passes=== | ||
*'''Clean''' (or '''waypoints_clean''') - removes invalid waypoints created by failed generation passes. | *'''Clean''' (or '''waypoints_clean''') - removes invalid waypoints created by failed generation passes. | ||
*'''Reset to default grid''' (or '''waypoints_reset''') - clears everything and rebuilds the seed-only | *'''Reset to default grid''' (or '''waypoints_reset''') - clears everything and rebuilds the seed-only grid (if you want to start over without exiting the editor). | ||
*'''Drop''' (or '''waypoints_drop''') - toggles auto-drop, which records a waypoint everywhere your player walks. Handy for filling in spots the auto-generator missed; '''remember to turn it off''' before you start sightseeing. | *'''Drop''' (or '''waypoints_drop''') - toggles auto-drop, which records a waypoint everywhere your player walks. Handy for filling in spots the auto-generator missed; '''remember to turn it off''' before you start sightseeing. | ||
| Line 113: | Line 113: | ||
</pre> | </pre> | ||
The editor log will print '''Waypoints saved''' on success or '''No waypoints to save''' if the | The editor log will print '''Waypoints saved''' on success or '''No waypoints to save''' if the grid is empty. | ||
To re-load a previously-saved AWP without restarting the level, click '''Load AWP file''' or run '''waypoints_load'''. | To re-load a previously-saved AWP without restarting the level, click '''Load AWP file''' or run '''waypoints_load'''. | ||
Latest revision as of 13:03, 2 May 2026
| Tutorial: Creating AWP Waypoint Files Prepared by Goober. |
This step-by-step guide will walk you through creating an AWP file (Alpine Waypoint grid file) for a Red Faction 1 multiplayer level using the Alpine Faction v1.3 in-game waypoint editor. AWP files describe the navigation grid that Alpine Faction bots use to move, fight, and pursue objectives on the map - if a level has no AWP, bots cannot navigate it.
NOTE: If you also want to test the resulting AWP with bots, see:
Overview
- An AWP file is a per-level text file describing waypoints, links between waypoints, navigation zones, and targets.
- AWP files live in user_maps\waypoints\<level>.awp inside your Red Faction install directory.
- The waypoint editor is a built-in mode of the normal Alpine Faction client - no separate tool needed. You enable it from the in-game console while a level is loaded in single-player or as a listen server host.
- The editor provides a GUI and auto-generation pipeline that builds a reasonable starting grid from the level's item, respawn point, CTF flag, and teleporter objects.
- For batch jobs, the launcher accepts -awpgen <level> which runs auto-generation headlessly and quits, writing the AWP automatically.
Step 1: Load the level and enter editor mode
Launch Alpine Faction normally and load the level you want to author waypoints for. The easiest way to do this is to run the following console command from the main menu:
mapm LEVEL_FILENAME
Open the in-game console and enter:
waypoints_edit
You should see the Waypoint Editor panel appear in the upper-right of the screen, with buttons for Reset to default grid, Generate waypoints (INTENSE), Save AWP file, Load AWP file, and toggles for Debug, Drop, and Clean.
IMPORTANT: waypoints_edit is rejected while you are connected as a multiplayer client to a remote server. You must be playing locally (either in single-player or as the listen server host) to use the editor.
To leave editor mode at any time, run this command to toggle it:
waypoints_edit
Step 2: Auto-generate a baseline grid
Hand-placing every waypoint on a real multiplayer map is impractical. The editor includes an auto-generation pipeline that walks outward from the level's existing item, respawn, CTF flag, and teleporter objects, probes the geometry, and builds a connected waypoint grid automatically. Start there and tweak by hand only where it gets things wrong.
In the editor panel, click Generate waypoints (INTENSE).
NOTE: Generation can take several seconds on small maps and several minutes on large ones. The most intensive generation operations will be on levels with many very expansive navigable areas. The game will appear to hang while it runs.
When generation finishes, the editor log (bottom of the panel) will print a summary like:
Generated 1842 waypoints from 23 ctf_flag/item/respawn/tele_exit seeds Link pass added 4517 bidirectional links and 218 downward links Jump pad trajectory pass added 6 destination links Ledge drop pass added 41 downward links Generated 12 explosion targets from blocked waypoint pairs Generated 3 shatter targets from breakable-glass blocked waypoint pairs
If the log says No seed waypoints found for generation, the level has no item/respawn/CTF/teleporter objects the generator can use as anchors - you'll need to either add some in the level editor or hand-place starter waypoints (see Step 3).
Step 3: Inspect and edit the grid
The editor uses a dual mouse mode. By default, the mouse looks around like normal gameplay. Right-click toggles the UI cursor on and off:
- Mouse aim (right-click off): Look around with the mouse as in normal play. Crosshair selects the waypoint/zone/target you're looking at.
- UI cursor (right-click on): Mouse becomes a cursor for clicking buttons in the editor panel and dragging gizmo handles. The view is locked while in this mode.
Switch modes freely - the panel always shows Right click: UI cursor or Right click: Mouse aim at the top so you know which is active.
Step 3a: Turn on debug rendering
You probably want to see the waypoints first. Click the Debug button in the panel to cycle through debug modes (or run waypoints_debug / waypoints_debug 0|1|2|3 in the console):
- 0 - off
- 1 - links + zone bounds + target boxes
- 2 - adds waypoint spheres, zone arrows, and target arrows
- 3 - adds labels for waypoints, zones, and targets
Mode 3 is the most informative for editing but the heaviest to render. Mode 2 is practical for most purposes.
Step 3b: Select something and edit it
With debug rendering on, look at any waypoint, zone, or target in the world (you do not need to be in UI cursor mode for this). The selection box shows up around the closest valid object.
The Selection section of the panel updates with action buttons:
For a waypoint:
- Edit inbound links / Edit outbound links - open a dialog to add/remove individual links by typing waypoint UIDs.
- Change type - re-classify the waypoint (e.g. std, item, respawn, jump_pad, ladder, ctf_flag, tele_entrance, tele_exit, water, etc.).
- Cycle movement type - cycle the dropped-waypoint subtype (normal, crouch_needed, swimming, falling, unsafe_terrain).
- Auto link - link this waypoint to nearby waypoints with line of sight.
- Send probe - run a localized version of the generator outward from this waypoint. Useful for filling in coverage gaps.
- Ledge calculate - add downward "ledge drop" links from this waypoint to lower waypoints.
- Delete waypoint - remove it.
For a zone:
- Change type - cycle through control_point, damaging_liquid_room, damage_zone, instant_death_zone, bridge_use, bridge_prox, high_power_zone.
- Edit gated (bridge zones only) - configure which waypoints the zone gates.
- Delete zone - remove it.
For a target:
- Change type - explosion, shatter, or jump.
- Auto link - link the target to all waypoints from which it is usable.
- Edit links - hand-edit the linked waypoint list.
- Delete target - remove it.
Step 3c: Drag waypoints to fix placement
With a waypoint or zone selected, a gizmo (3-axis arrows for waypoints, corner handles for box-extents zones) appears at the selection in UI cursor mode. Click and drag a handle to move the selection. Releasing the mouse finalizes the new position.
Step 3d: Add new waypoints, zones, and targets
- New WP - place a new std waypoint at the position you're looking at.
- New Zone - opens a dialog to define a new zone (by trigger UID, room UID, or world-space box). Zone types and sources are documented inline in the dialog.
- New Target - opens a dialog to add a target (explosion, shatter, or jump) at the looked-at position. Shatter targets require you to be aiming at a breakable brush.
Step 3e: Optional cleanup passes
- Clean (or waypoints_clean) - removes invalid waypoints created by failed generation passes.
- Reset to default grid (or waypoints_reset) - clears everything and rebuilds the seed-only grid (if you want to start over without exiting the editor).
- Drop (or waypoints_drop) - toggles auto-drop, which records a waypoint everywhere your player walks. Handy for filling in spots the auto-generator missed; remember to turn it off before you start sightseeing.
Step 4: Save the AWP file
Click Save AWP file in the panel (or run waypoints_save in the console).
The file is written to:
\user_maps\waypoints\<level_filename>.awp
The editor log will print Waypoints saved on success or No waypoints to save if the grid is empty.
To re-load a previously-saved AWP without restarting the level, click Load AWP file or run waypoints_load.
Additional information
Headless AWP generation with -awpgen (Advanced)
For batch jobs you can launch the client with -awpgen <level>:
AlpineFactionLauncher.exe -awpgen mylevel.rfl
This loads the level, runs waypoints_generate, saves the AWP, and quits. It honors any existing AWP's revision number and increments it on save, so re-running -awpgen on a level that already has an AWP produces a new revision rather than overwriting at revision 1.
-awpgen has a 60-minute hard timeout per level. If generation hasn't completed in that time, the process logs an error and quits.
FactionFiles
Bots fetch AWP files from FactionFiles when loading a level. The first integer in a saved AWP is its revision. When FactionFiles has a newer revision than a client, the client will fetch an update.
If you are uploading a new level, you should go through the AWP creation process as detailed above, and provide the AWP for your level when submitting it to FactionFiles for approval.
Once you've saved an AWP, the easiest way to verify it works is to launch a local Alpine Faction dedicated server with bots enabled, load your level, and watch the bots navigate. See:
Still need help?
- If you run into issues authoring AWP files or getting bots to navigate them, it's best to join the Red Faction Community Discord for some assistance.