Commit graph

20154 commits

Author SHA1 Message Date
Eidolon
a4ce6d2d07 Add Tracy client library and build preset 2024-12-26 11:09:48 -05:00
James R
23b03f6ea2 Convert r_segs.c to r_segs.cpp 2024-12-26 08:46:21 -05:00
toaster
30754dfa41 Merge branch 'raised-sector-culling' into 'master'
Automatic level culling for raised floors / lowered ceilings

See merge request KartKrew/Kart!1145
2024-12-26 08:34:44 -05:00
toaster
041bc893aa Merge branch 'fix-portal-slime-trails' into 'master'
Fix line-based portal slimetrails

See merge request KartKrew/Kart!1139
2024-12-26 08:34:28 -05:00
Oni
462a603f33 Merge branch 'hanicef-fps-counter' into 'master'
Fix inaccuracies in FPS counter

See merge request KartKrew/Kart!1456
2024-12-26 08:29:54 -05:00
Eidolon
b4f9fcb37b r_plane.c -> r_plane.cpp 2024-12-26 08:20:36 -05:00
NepDisk
4394122ac2 Don't play pop twice 2024-12-25 23:39:58 -05:00
James R.
4e48fbd140 R_GenerateTextureBrightmap: install bounds checking on patch columnofs
- Warn if reading past end of patch data (corrupt lump or
  incorrect format).
2024-12-25 23:32:42 -05:00
James R
5a6ddbd110 r_bsp.cpp: merge R_ClipSolidWallSegment and R_ClipPassWallSegment into one templated function
Prep for creating a third variant. Control flow is largely
the same between these two leveraging if constexpr seems
appropriate.

Also splits the crunch goto label away into a new function
called R_CrunchWallSegment.
2024-12-25 22:46:54 -05:00
NepDisk
33035ea488 Make r_bsp CPlusPlus 2024-12-25 22:46:22 -05:00
NepDisk
2dd08d435f Remove debug print 2024-12-25 21:41:49 -05:00
NepDisk
1dda8c1b6d Actual fix making the game properly record and see ghosts in menu and game
It also adds a new little thing to the name to show what gamemode its in!
2024-12-25 21:36:52 -05:00
NepDisk
aef779ef24 Fix ingame ghosts 2024-12-25 18:56:37 -05:00
NepDisk
561018c26c Fix ta demos not writing
This doesn't fix them not showing up during TA but one step at a time
2024-12-25 17:50:43 -05:00
James R
4a2b18b981 Line sweep polyobject sides
Gremlin III vanquished for Balloon Park elephants.
2024-12-25 13:32:23 -05:00
James R
5cb20f5480 P_TryMove: sweep collided lines to find nearest normal 2024-12-25 13:30:59 -05:00
James R
b50d34e8b5 Add srb2::sweep, AABB line sweep algorithms 2024-12-25 13:21:23 -05:00
James R
c2949ae031 Add srb2::math, fixed-point, vector, line and slope formula classes
- srb2::math::Fixed
  - Operator overloads for FixedMul and FixedDiv
  - Implicit conversion between fixed_t, Fixed and
    floating-point types
- srb2::math::Vec2
  - Template to any type
  - Operator overloads for arithmetic operations
  - Convertible between different types
- srb2::math::LineSegment
  - Template to any type
  - Holds two Vec2 instances
  - Sorting methods and vertical/horizontal test
- srb2::math::LineEquation
  - Slope formula from LineSegment
  - y method to find y from x
  - Intersect algorithm
  - Fixed-point specialization to avoid overflows
- srb2::math::LineEquationX
  - Inherits LineEquation
  - x method to find x from y
2024-12-25 13:03:50 -05:00
NepDisk
cf313e1673 Fix erronous use of ML_BLOCKPLAYERS in P_Setup.c 2024-12-20 13:40:16 -05:00
James R
7e9e259da3 Replays: reserve 1 KB of space at end of buffer as a safeguard
This should avoid buffer overruns in the middle of
recording. There is already code that checks for buffer
size around ticcmd and ghost data write. Demo header is
still unsafe with many WAD filenames written, for example.

Ghost data and ticcmd should not come close to reaching
into this extra space. At the time of writing, ghost data
can write up to 102 bytes and ticcmd 20 bytes, per player.
2024-12-20 13:20:38 -05:00
Eidolon
f9c231a77c Defer ghost deallocation til FreeGhosts
Fixes KartKrew/Kart#824

The for-loop attempts to read `g` after the object it points to has
already been freed by Z_Free. Instead, we add a new `done` field, and
mark it when hitting the end of the demo, and skip ghosts in the ghost
list which have it set.
2024-12-20 12:53:45 -05:00
James R
061c98a7d2 G_WriteAllGhostTics: check buffer size after each player's ghost data
Instead of checking it after ALL player ghost data. This
is less likely to write past the end of the demo buffer.
2024-12-20 12:46:34 -05:00
NepDisk
eac15b8542 Display gamespeed regardless of gamemode and make itembreaker uses normal speed
Since battle speed is a thing now, this makes sense
2024-12-19 12:36:25 -05:00
NepDisk
52a02c40e5 Fix music file names for titlescreen and credits 2024-12-18 00:41:44 -05:00
NepDisk
389acf3020 Fix Item Breaker timelimit 2024-12-18 00:35:13 -05:00
NepDisk
f996d869db misc fixes
Fix time limit, disable mobjscramble, fix paranoia compile, clean up refernces code, fix driftdust negative refernces
2024-12-17 23:53:51 -05:00
NepDisk
3622b78b3e Readd SPB karma modes, remove every hit rewarding bumpers, allow flashtics again 2024-12-17 17:57:47 -05:00
NepDisk
8dcaba2d43 Basic work to restore the wanted system 2024-12-17 10:54:22 -05:00
NepDisk
a5b76597eb Remove Shpereboxes 2024-12-17 10:29:53 -05:00
NepDisk
7bdf9633bc Remove emeralds from battle 2024-12-17 10:13:09 -05:00
NepDisk
e1720e7b3a Remove overtime stuff 2024-12-17 00:47:36 -05:00
NepDisk
4b1324da69 Remove Battle capsule stuff and turn it into Item Breaker
You have to smash every itembox in a map as fast as you can. When you mash you get a pogospring and waiting gives a sneaker
2024-12-17 00:24:20 -05:00
NepDisk
1e678f660f Remove TESTERS and HOSTTESTES and use v1 assets where applicable 2024-12-16 14:23:14 -05:00
NepDisk
9dee047420 Minor fixes 2024-12-09 17:21:46 -05:00
NepDisk
33e0954002 Revert 'Remove FIN'
This reverts commit d970747c85.
2024-12-09 17:21:46 -05:00
NepDisk
3d26be2158 Revert "Remove Brak Eggman"
This reverts commit 364651ac39.
2024-12-09 17:21:46 -05:00
Alug
68496a68ce fix early return in comparePolygons
thx durr very cool
2024-11-26 14:51:07 +01:00
NepDisk
83fc4e8342 Port some callfuncs from base SRB2 ACS merge
This could be handy for all sorts of stuff
2024-11-25 11:40:20 -05:00
Alug
a09bde5364 use actual view to clip segs in ogl instead of calculated fov
thx dsda-doom!
basically better performance in alot of cases and technically should fix any future issues if someone plays on weird aspect ratios
2024-11-19 17:28:36 +01:00
NepDisk
67ea1fdc04 Fixed removed stuff 2024-11-18 11:44:46 -05:00
NepDisk
5abf1ad017 Revert "Make UDMF scale compatible with ZDoom's spec"
This reverts commit 437d728ec9.
2024-11-18 11:38:08 -05:00
NepDisk
e2c9364355 faketics 2024-11-18 10:38:18 -05:00
toaster
4d133ca377 P_GetNodeType: Do not dereference invalid pointer for **nodedata parameter 2024-11-18 10:28:10 -05:00
SteelT
a68e6fb10c Set curl_failedwebdownload to true for corrupt or modified HTTP downloads.
So that it actually falls back to direct downloading
2024-11-18 10:20:05 -05:00
SteelT
1fc0499d7e Add MD5 checking to HTTP downloading
In cases of where the file mismatches from what the server expects, it will fall back to direct downloading of the file.
2024-11-18 10:19:57 -05:00
NepDisk
36f28e599e Support cheatcheckactivator for RR support 2024-11-18 10:12:13 -05:00
Sal
437d728ec9 Make UDMF scale compatible with ZDoom's spec 2024-11-18 09:55:13 -05:00
NepDisk
c762761eff Fix Spring angle
Yes this is duped code but I can't be assed to figure out why the previous broke shit
2024-11-16 21:18:06 -05:00
NepDisk
28d8f15bfc Merge branch 'v2dev3' into ACS2 2024-11-16 14:27:34 -05:00
hayaunderscore
ac7ee79e22 add a fallback to set spr2 for manually set PLAY frames 2024-11-16 14:22:21 -05:00