Commit graph

46 commits

Author SHA1 Message Date
MysterD
feee5eb569 Fixed more memory corruption with object collisions 2023-06-16 17:19:18 -07:00
MysterD
b3cae34234 Add bounds checking to instant warps, and make object collisions dynamic
in size
2023-06-15 20:50:12 -07:00
MysterD
c594179cca Make surface pools infinite 2023-06-15 19:40:34 -07:00
MysterD
ed163203d8 Make gEnvironmentRegions safer 2023-05-15 12:04:07 -07:00
MysterD
064a60526a Redo how surface memory is handled 2023-05-14 12:04:08 -07:00
MysterD
8129ab7665 Prevent crashes and hangs 2023-05-13 03:07:20 -07:00
MysterD
57b06e3e09 Rename AllocOnlyPool to DynamicPool, add GrowingPool 2023-05-12 18:53:25 -07:00
MysterD
2341a0be78 Make surfaces use dynamic memory 2023-05-12 17:16:03 -07:00
MysterD
cc1ec3e81f Prevented hundreds of additional crashes from the Mod API 2023-05-11 20:33:21 -07:00
Agent X
e308571a4f
Add vanish cap walls to no camera collision check (#196) 2022-09-19 19:34:09 -07:00
Agent X
a1953afd1c
SURFACE_RAYCAST (#177)
* SURFACE_RAYCAST

* Exclude from camera collision
2022-09-12 19:56:24 -07:00
MysterD
c214acb33f Change fixCollisionBugs from server setting to mod setting 2022-06-25 01:26:53 -07:00
MysterD
b2bdf8859c Cleanup ; recursive descent fixes ; fixed behavior override comparisons
Moved dynos parsing for bhvs and models to a common file
Fixed recursive descent to correctly parse the entire expression
Adjusted bhv generation to use recursive descent
Switched all known behavior comparisons to the overridden versions
Fixed issue with Chain Chomp in star road
2022-06-02 19:07:43 -07:00
MysterD
9fd309de56 Added server setting toggle for 'surface cucking' and 'exposed ceilings' vanilla bugs 2022-05-31 01:29:48 -07:00
MysterD
1a3bd3c685 Fixed up collision bug, added collision file validation, allowed lua to get builtin collisions 2022-04-08 19:17:57 -07:00
MysterD
2fda92a8de Added vanilla lvl cols to level gen, changed how pointer offsets are saved 2022-04-07 23:06:10 -07:00
MysterD
b5b9d509e8 Memory management improvements
Log errors on allocation failure
NULL check all display list allocations
Fix reading a freed string
2022-04-06 18:10:22 -07:00
MysterD
a58130b9f6 Added extended bounds 2022-04-06 08:40:22 -07:00
Prince Frizzy
54a6135cb9
Cleanup Deluxe (#45) 2022-03-29 20:45:56 -07:00
Prince Frizzy
75bb9b7912
Update to Refresh 13 (#19)
* Refresh 13

Co-authored-by: n64 <n64>
2022-03-13 00:17:10 -08:00
MysterD
a35d759a46 Fix crash when surfaces fail to allocate 2022-02-27 00:53:58 -08:00
MysterD
69fb69dfce Fix bugs/warnings from static analysis 2022-02-20 20:04:25 -08:00
Prince Frizzy
32b0c91935
Fixes for Refresh 12 2022-02-19 01:39:38 -05:00
MysterD
92692378b4 Added adjustable draw distance for objects 2021-08-30 18:22:36 -07:00
MysterD
029e1f3a46 Fixed crash in credits 2021-08-29 14:28:46 -07:00
MysterD
04d01667c3 Added a callback for area timer objects to only run certain things once per frame 2021-08-19 00:31:20 -07:00
MysterD
7e59d34939 Added new MAXIMUM type to network area timer system. Exclamation boxes now reappear at the correct time 2021-08-12 18:13:41 -07:00
MysterD
fecba91c5e Rewrite the core of network area timer (yet again) 2021-08-10 18:29:49 -07:00
MysterD
3e5b08b487 Fixed small crimes against C 2020-09-10 09:43:32 -07:00
MysterD
e0903003f4 Rewrote how players are initialized, stored, and displayed
Since the second-player code was the first code I wrote, it was implemented
poorly. At that point, I didn't know the code base at all and the way it was
written would prevent anyone from ever adding to those parts.

The rewrite allows me to use the default geo.inc.c file for Mario, and removes
all of the geo2.inc.c files. I no longer do a bunch of bit shifting to figure
out which player is being drawn in the rendering code.

I'm also now able to remove tons of duplicate code that exists just for the
remote player. The main player code is generic enough to support both indices.
A side-effect of the rewrite is I was able to remove many assumptions in the
code where two-players is assumed, but many other parts of the code still
assume two players.

This is a fairly major change that, if all goes well, will be completely
unnoticed by the player. However, I do expect new bugs to pop up in strange
places. Time will tell.
2020-09-06 18:52:52 -07:00
MysterD
d5005c9f37 Served time for crimes against C
Due to my compile & launch scripts, I was silently ignoring warnings
this whole time. I've fixed my process, and gone back to fixed all of
the warnings I could (even outside of my code).
2020-09-04 01:58:54 -07:00
MysterD
48f42d1873 Fixed visual bug when both players are sliding 2020-08-12 19:14:35 -07:00
MysterD
eeec6aae49 L is real 2020
Added Luigi model.
Renamed all previous references to 'Luigi' to 'Mario2' since player 1
isn't always mario, and player 2 isn't always luigi.
Now server is always mario and client is always Luigi.

Luigi model credits:
Original model by Cjes, converted by AloXado320, textures added/fixed by
SunlitSpace542.
2020-08-08 21:36:49 -07:00
MysterD
4486e8000c Began fixing up Luigi collisions 2020-07-30 18:44:09 -07:00
MysterD
131fc7ea11 60 fps patch 2020-07-28 18:28:12 -07:00
n64
4a448cf10d merge refresh 10 2020-06-20 02:49:59 +03:00
fgsfds
ff844643d2
Merge branch 'master' into master 2020-05-16 22:47:39 +03:00
Hyenadae
31f0d68ca2 Removed majority of TARGET_N64 logic from code 2020-05-13 07:57:25 -04:00
uwabami
c98a263cf4 adding option to disable draw distance 2020-05-12 09:26:16 +02:00
Jan200101
e87c070517
merge PC port onto the decompile 2020-05-07 20:21:22 +02:00
n64
c45aa301bb Refresh 8 2020-04-03 14:57:26 -04:00
n64
06ec56df7f Refresh 7 2020-03-01 22:42:52 -05:00
n64
9a801cb96d refresh 6 2020-02-03 00:51:26 -05:00
n64
52e605f075 Refresh 2 2019-10-05 15:08:05 -04:00
n64
1ef98ec785 Refresh 1 2019-09-01 15:50:50 -04:00
n64
89e8690857 init2 2019-08-25 00:46:40 -04:00