smallmodel
45205c1906
Fix MoveTo() using actor's origin instead of waypoint origin
...
MoveTo() was incorrectly setting the script goal to the actor's origin rather than the waypoint's origin, causing the actor to stand still instead of moving to the specified location.
2025-06-02 01:55:00 +02:00
smallmodel
13762a05b8
Don't pass curious conditions if actor has no curiosity
2025-06-02 01:44:12 +02:00
smallmodel
2c42499788
Fix CuriousSound probability
2025-06-02 01:43:38 +02:00
smallmodel
b0c111170e
Correctly check if a squadmate is in line of fire ( #728 )
...
This fixes actors incorrectly not shooting in Spearhead/Breakthrough when squadmates are next to each other.
2025-06-01 15:41:57 +02:00
smallmodel
08b15c4fe6
Fix server query count increasing when updating a server
2025-06-01 13:41:31 +02:00
smallmodel
94cfcfe5e2
Fix server list stuck in fetching state in specific situations
2025-06-01 12:54:30 +02:00
smallmodel
cf06a395de
Properly initialize a client when reusing an entity
...
This fixes an issue where, if a client rejoins after losing connection, the scoreboard would temporarily display the name of client 0 before spawning.
2025-06-01 01:11:05 +02:00
smallmodel
023770f63e
Use the entity number rather than the client's clientNum
...
The number must match the entity number parameter used in G_GetEntity().
This fixes a crash caused by gclient struct being reset when a client reconnects to the same player slot
2025-06-01 00:35:38 +02:00
smallmodel
95dff2536b
Add contextual print feature ( #727 )
...
Add metadata to client-specific messages such as text and join events.
Can be disabled via `sv_logContext 0`.
2025-05-31 22:31:36 +02:00
smallmodel
7ce1eda3a7
Print to each client individually rather than broadcasting
...
This prevents spamming the logfile constantly with a bunch of messages that are not relevant
2025-05-31 18:45:23 +02:00
smallmodel
96e4b26635
Fix ip field being wrong
2025-05-31 18:43:25 +02:00
smallmodel
525f75a1a7
Don't filter terrain patches
...
In the terrain tessellation code, patches sometimes rely on neighbors, which if are hidden can issues with invalid tri. Collision doesn't rely on shader contents anyway
2025-05-30 23:21:02 +02:00
smallmodel
9200b37610
Use rain changes from Spearhead and Breakthrough
2025-05-30 22:48:37 +02:00
smallmodel
44d745d534
Fix vertreg not freed
2025-05-30 13:23:55 +02:00
smallmodel
ee287ce00b
Correctly unpack and filter out terrain patches that aren't used
...
This was causing uninitialized terrain patches to be used if they have an invalid content
2025-05-29 20:30:01 +02:00
smallmodel
e259d62e18
Fix broken object insertion
...
This was causing the last object to be uninitialized when an object was being inserted at index 0
2025-05-29 20:26:00 +02:00
smallmodel
3c4f361c7a
Fix typo
2025-05-29 12:57:36 +02:00
smallmodel
a4391bc320
Implement Recast-based navigation system ( #726 )
...
- Paths are generated automatically during map loading, for any map
- Bots can take path that requires climbing ladders (can climb ladders)
- Bots can take path that requires jump (like the ledge on Stalingrad)
- Bots will try to avoid obstacles in front of them by navigating on the
side
The old navigation system with pathnodes can still be used with `g_navigation_legacy
1`
2025-05-29 12:22:27 +02:00
smallmodel
80ae850063
Properly handle the null-terminated character when printing
2025-05-25 18:51:09 +02:00
smallmodel
bf4d973097
Fix lean angle slightly not matching the original game ( #724 )
2025-05-25 18:39:05 +02:00
smallmodel
8bbebe9dea
Send the print command to each client instead of broadcasting
...
This prevents spamming the server console/logfile with print messages
2025-05-25 02:38:08 +02:00
smallmodel
0eca5c56ac
Fixed an issue preventing spawning next to spawn points with an offset
2025-05-25 02:24:10 +02:00
smallmodel
fa18824a8a
Fix client being refused forever after being rejected for high ping
2025-05-21 23:52:43 +02:00
smallmodel
ffcec02aa6
Allow a certain amount of challenges to have the same IP address
2025-05-21 23:51:16 +02:00
Cowcat5150
7e52f74d2a
Missing bigendian values in fencemask.
2025-05-19 18:08:50 +02:00
smallmodel
1241818d5e
Use placement new when copying as the object is uninitialized
2025-05-18 19:48:14 +02:00
smallmodel
d474791e1d
Fix missing bottom line when characters are outside the frame
2025-05-18 00:30:15 +02:00
smallmodel
bdf92ffb06
Increase max dm message length to 400 characters
2025-05-18 00:30:10 +02:00
smallmodel
85f8f581bc
Initialize the subtitle buffer
2025-05-18 00:24:20 +02:00
smallmodel
76c11e3c97
Fix words counted incorrectly
2025-05-18 00:22:26 +02:00
smallmodel
02c2579366
Use the message string directly rather than copying into a buffer
...
This removes the print length limit
2025-05-17 23:03:21 +02:00
smallmodel
6c5f95c6bf
Fix line breaks being incorrectly calculated
...
This fixes the issue where long messages would not be shown in console
2025-05-17 22:59:04 +02:00
smallmodel
424243e500
Prevent underflow when caret is 0
2025-05-17 22:27:51 +02:00
smallmodel
b725c92922
Fix buffer overflow due to missing null-terminated character
2025-05-17 20:55:48 +02:00
smallmodel
1bcf6f73a4
Add "(all)" prefix
2025-05-17 16:51:15 +02:00
smallmodel
483b49f5ee
Print the exact message that is shown in-game to console
2025-05-17 16:49:24 +02:00
smallmodel
d790fa398f
Add verbose print when rejecting due to user info being too long
2025-05-17 00:18:18 +02:00
smallmodel
23e7df2796
Print the userinfo string when debugging print SV_DirectConnect()
2025-05-16 23:29:52 +02:00
smallmodel
ba502a9d39
Log name changes from the server instead of the game module
2025-05-16 22:21:55 +02:00
smallmodel
3ce9621715
Print the correct client number for clients connecting
2025-05-16 22:18:20 +02:00
smallmodel
7806da0448
Don't print name changes from an empty name
2025-05-16 21:12:40 +02:00
smallmodel
d533bc450f
Display the IP address of the connecting client
2025-05-16 21:12:27 +02:00
smallmodel
fc33dfe656
Set output remote command buffer size to 8192 bytes
...
This fixes issues where some tools fail to handle multiple print packets. On a 64-player server, the status command can generate around 5000 bytes of output.
The buffer size in the original game is 49152 bytes, but that's excessively large and can lead to excessive IPv4 fragmentation.
2025-05-15 22:16:36 +02:00
smallmodel
ab48b8232b
Correctly sort scores in round-based matches
2025-05-15 00:08:18 +02:00
smallmodel
8ab12b29a6
Fix issue where the text message gets empty when exceeding character limit
2025-05-14 23:55:47 +02:00
smallmodel
035f7b2605
Increase message buffer to 200 characters
2025-05-14 23:50:20 +02:00
smallmodel
7081a56113
Fix name being cut off at the first negative character.
...
Com_SanitizeName uses unsigned comparison when validating characters to prevent premature truncation when encountering characters above 127
2025-05-14 23:36:18 +02:00
smallmodel
da9979f887
Remove the architecture suffix from binary names
...
- Avoids conflicts with third-party DLLs (like SDL, OpenAL) which have no suffix.
- Easier to build an installer and document.
- More clarity as the architecture is already indicated in the archive name.
- Simplifies launchers & automation (no need to guess the architecture).
- The architecture is still visible when typing `version` in the console or when the executable starts
2025-05-13 20:44:35 +02:00
smallmodel
962ae8a013
Add a quote to the first command-line path.
...
This fixes an issue where the game wouldn't load DLLs from the same folder when a space was present in the full binary path.
2025-05-08 01:05:11 +02:00
smallmodel
ead8087cff
Format launcher source files
2025-05-08 01:03:14 +02:00