Skip to content

Commit 1aeb6c9

Browse files
authored
Merge pull request #5 from F0mx/main
2 parents bff37d7 + 817154c commit 1aeb6c9

7 files changed

Lines changed: 58 additions & 0 deletions

File tree

markdown/landing/index.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,7 @@ Documentation and by extension headers/categories are a work in progress.
5555
- [Advanced Model Exporting](../mapping/model-exporting.md)
5656
- [Model Alpha Transparency](../mapping/alpha-transparency.md)
5757
- [Fog](../mapping/fog.md)
58+
- [Waypointing](../mapping/waypointing.md)
5859

5960
### Map Entities
6061
- [Barricades](../mapping/barricades.md)

markdown/mapping/waypointing.md

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
% Waypointing - NZ:P Mapping Documentation
2+
# Waypointing
3+
4+
## Introduction
5+
6+
![Zombies pathfinding between waypoint nodes on Nacht Der Untoten.](../res/images/Waypoint_Pathing.webp)
7+
8+
_Nazi Zombies: Portable_ makes use of a waypointing system to define nodes that zombies may path between. This allows for a fairly simple and intuitive, albeit limited, way to allow mappers to create custom pathfinding for their maps.
9+
10+
Waypoints are edited directly in-game via a special Waypoint Mode, as opposed to creating them in the map editor. This mode can be accessed via `waypoint_mode` cvar.
11+
Saving a set of waypoints via this mode will generate a `.way` file within the maps folder of NZ:P, matching the original map file name. This `.way` file must be supplied alongside the original map file when sharing maps.
12+
13+
![Waypoint Mode UI with waypoint nodes visible.](../res/images/waypoint_mode.webp)
14+
15+
## .way Files
16+
17+
Due to `.way` files being plain-text, they can be opened in any text editor. Doing so will reveal the following data structure:
18+
19+
![Data structure of a `.way` file when opened in a text editor.](../res/images/waypoint_plain_text.webp)
20+
21+
| Data Identifier | Description |
22+
|---|---|
23+
| Origin | The co-ordinates of the waypoint node. |
24+
| ID | The numerical identifier of the waypoint node. |
25+
| Special | The associated `wayTarget` ID of a valid `nzp_func_door` that has been correctly linked to the waypoint node. |
26+
| Target 1-8 | 8 Possible waypoint nodes that are connected to the waypoint node. |
27+
28+
Up to 256 total nodes are supported at this time. Additionally, when a node is deleted within waypoint mode, the ID it occupied within the `.way` will not be freed up for use by following nodes as they are created. This can be remidied by manually reassigning ID's via opening the file in a text editor.
29+
30+
## Interacting with Waypoints
31+
32+
![(Left to right) Blue-Default, Yellow-Selected, Red-Linked to Current, Special-Used for Doors (Same 3 colours as previous). ](../res/images/waypoint_types.webp)
33+
34+
| Actions | Description |
35+
|---|---|
36+
| Create | Creates a default (blue) waypoint node at the players position. |
37+
| Select | Selects waypoint node currently being aimed at. |
38+
| Link | Link selected (yellow) node to aimed at default (blue) node. |
39+
| Remove | Deletes current selected (yellow) node. |
40+
| Move | Move current selected (yellow) node to player position. |
41+
| Create Special | Converts selected (yellow) node to a special node. Must be adjacent to a valid `func_nzp_door`. |
42+
43+
## Special Waypoints
44+
45+
Special Waypoint nodes are used in conjunction with a valid `func_nzp_door` to prevent zombies from attempting to path through currently closed doors.
46+
47+
A valid `func_nzp_door` requires an ID to be set in the `wayTarget` entity field. Targetting this `wayTarget` within waypoint mode is done via placing a waypoint node within the door entity you have created, and creating a special entity
48+
whilst this node is selected. Correct use of this function can be clarifyed by a console output.
49+
50+
## Pathing Behaviour
51+
52+
Zombies will move along a path dictated by the mapper through connected waypoint nodes until they are within sight range to path to a player on their own (Where "Sight" is dictated by both the zombies shins, chest and forehead being able to see the player).
53+
54+
When zombies reacquire a path to the player (Whether that be after hopping a barricade post-spawn, or in attempt to find the player after they have teleported outside and back into the map.),
55+
they will do so via the closest waypoint node to them. There is however a heuristic cost, meaning zombies will attempt different paths via alternate nodes if the closest node to them is not reachable.
56+
57+
![Example map of connected waypoint nodes, arrows indicating that nodes are linked in both directions.](../res/images/example_waypoints.webp)
943 KB
Loading
53.3 KB
Loading
698 KB
Loading
7.76 KB
Loading
7.56 KB
Loading

0 commit comments

Comments
 (0)