Commit d4c79eb
committed
update: NPC and Critter movement
Movement System Improvements:
- Refactors how both, NPCs and Critters randomly move around, replacing the boring single-tile-paused movement with a more natural, range-based pathing system.
- NPCs now intelligently navigate around obstacles and other entities
- Collision detection overhead with optimized valid direction finding
- Prevents movement patterns from messing with current path finder's target
- Code chore: cached status check consolidation
- Code chore: updated naming conventions for movement variables
- Code chore: TODOs - soft reset (walk) to spawn point and hard reset (warp) when pathfinder is unable to lead back to spawnpoint
New NPC Patrol Patterns:
- Horizontal patrol (left/right from spawn)
- Vertical patrol (up/down from spawn)
- Diagonal backslash patrol (UpLeft ↔ DownRight)
- Diagonal forwardslash patrol (UpRight ↔ DownLeft)
- Patrolling NPCs return to their spawn/patrol point when there's no target left to smack or out of former map
All patrol modes use NPC sight range as patrol distance and track spawn position to prevent drift.1 parent dcbd209 commit d4c79eb
5 files changed
Lines changed: 594 additions & 253 deletions
File tree
- Intersect (Core)/Enums
- Intersect.Client.Core/Entities
- Intersect.Editor/Localization
- Intersect.Server.Core/Entities
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
9 | 9 | | |
10 | 10 | | |
11 | 11 | | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
12 | 20 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
15 | 15 | | |
16 | 16 | | |
17 | 17 | | |
18 | | - | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
19 | 22 | | |
20 | 23 | | |
21 | 24 | | |
| |||
50 | 53 | | |
51 | 54 | | |
52 | 55 | | |
53 | | - | |
| 56 | + | |
54 | 57 | | |
55 | | - | |
56 | | - | |
57 | | - | |
58 | | - | |
59 | | - | |
60 | | - | |
61 | | - | |
62 | | - | |
63 | | - | |
64 | | - | |
65 | | - | |
66 | | - | |
67 | | - | |
68 | | - | |
69 | | - | |
| 58 | + | |
| 59 | + | |
70 | 60 | | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
71 | 64 | | |
72 | 65 | | |
73 | 66 | | |
74 | | - | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
75 | 80 | | |
76 | 81 | | |
77 | 82 | | |
78 | 83 | | |
79 | | - | |
80 | | - | |
81 | | - | |
82 | | - | |
83 | | - | |
| 84 | + | |
84 | 85 | | |
85 | 86 | | |
86 | 87 | | |
87 | 88 | | |
88 | 89 | | |
| 90 | + | |
| 91 | + | |
| 92 | + | |
| 93 | + | |
| 94 | + | |
| 95 | + | |
| 96 | + | |
89 | 97 | | |
90 | 98 | | |
91 | | - | |
92 | | - | |
| 99 | + | |
93 | 100 | | |
94 | 101 | | |
95 | | - | |
96 | 102 | | |
97 | 103 | | |
98 | 104 | | |
99 | 105 | | |
100 | | - | |
101 | 106 | | |
102 | 107 | | |
103 | 108 | | |
104 | 109 | | |
105 | 110 | | |
106 | | - | |
107 | 111 | | |
108 | 112 | | |
109 | 113 | | |
110 | 114 | | |
111 | | - | |
112 | 115 | | |
113 | 116 | | |
114 | 117 | | |
| |||
132 | 135 | | |
133 | 136 | | |
134 | 137 | | |
135 | | - | |
136 | | - | |
137 | | - | |
138 | | - | |
139 | | - | |
140 | | - | |
141 | | - | |
142 | | - | |
143 | | - | |
144 | | - | |
145 | | - | |
146 | | - | |
147 | | - | |
148 | | - | |
149 | | - | |
150 | | - | |
151 | | - | |
152 | | - | |
153 | | - | |
154 | | - | |
155 | | - | |
156 | | - | |
157 | | - | |
| 138 | + | |
| 139 | + | |
| 140 | + | |
158 | 141 | | |
159 | | - | |
160 | | - | |
161 | | - | |
162 | | - | |
163 | | - | |
164 | | - | |
165 | | - | |
166 | | - | |
| 142 | + | |
| 143 | + | |
| 144 | + | |
167 | 145 | | |
168 | | - | |
169 | | - | |
170 | | - | |
171 | | - | |
172 | | - | |
173 | | - | |
174 | | - | |
175 | | - | |
176 | | - | |
177 | | - | |
178 | | - | |
179 | | - | |
| 146 | + | |
| 147 | + | |
| 148 | + | |
180 | 149 | | |
181 | | - | |
182 | | - | |
| 150 | + | |
| 151 | + | |
| 152 | + | |
| 153 | + | |
| 154 | + | |
183 | 155 | | |
| 156 | + | |
| 157 | + | |
| 158 | + | |
| 159 | + | |
| 160 | + | |
| 161 | + | |
| 162 | + | |
184 | 163 | | |
185 | | - | |
| 164 | + | |
186 | 165 | | |
187 | | - | |
| 166 | + | |
| 167 | + | |
| 168 | + | |
188 | 169 | | |
189 | 170 | | |
190 | 171 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
4582 | 4582 | | |
4583 | 4583 | | |
4584 | 4584 | | |
| 4585 | + | |
| 4586 | + | |
| 4587 | + | |
| 4588 | + | |
4585 | 4589 | | |
4586 | 4590 | | |
4587 | 4591 | | |
| |||
0 commit comments