Commit graph

271 commits

Author SHA1 Message Date
MysterD
00e64fbf6c Add backwards compatibility for cur_obj_is_mario_ground_pounding_platform() 2023-05-16 00:37:30 -07:00
MysterD
688cd3b399 Rewrite how models are loaded and retrieved... yet again 2023-05-16 00:01:10 -07:00
MysterD
ed163203d8 Make gEnvironmentRegions safer 2023-05-15 12:04:07 -07:00
MysterD
2083242b66 Fixed several crashes and errors found in static analysis 2023-05-15 01:15:20 -07:00
MysterD
9a99ee492e Fix crash in retrieve_animation_index() 2023-05-14 12:30:55 -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
bbdf51bc33 Remove the main pool 2023-05-13 01:49:54 -07:00
MysterD
6798b2db29 Make anim dma table dynamic 2023-05-13 01:44:40 -07:00
MysterD
c45e76c870 Switch all mempools to dynamic memory 2023-05-12 22:10:27 -07:00
MysterD
4aa4386319 Make envfx use dynamic memory 2023-05-12 21:30:16 -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
bc73468e64 Load all models into dynamic memory, and store them in a way for reuse 2023-05-12 16:15:35 -07:00
MysterD
e391faf574 WIP: start making memory management better 2023-05-12 13:19:10 -07:00
MysterD
cc1ec3e81f Prevented hundreds of additional crashes from the Mod API 2023-05-11 20:33:21 -07:00
MysterD
82945f9c0f Fix some problems found in static analysis 2023-05-11 02:17:10 -07:00
MysterD
039be71266 Prevent even more possible crashes from the mod api 2023-05-11 01:46:27 -07:00
MysterD
f785050ccb Fix more possible crashes 2023-05-11 00:19:01 -07:00
MysterD
8ed8fc31d2 Fix another ~200+ crashes that could happen from mods 2023-05-10 21:28:13 -07:00
MysterD
d30b1e61a6 Add a container to animation tables so that we can track their length and stay in bounds 2023-05-10 20:57:35 -07:00
MysterD
b22230db5d Merge branch 'dev' of github.com:sm64ex-coop-dev/sm64ex-coop into dev 2023-05-10 15:21:00 -07:00
PeachyPeach
52e4bac21a
fixed disable acts (#390) 2023-05-10 17:07:29 -04:00
MysterD
b863cc80c8 Prevent several possible crashes and hangs, limit more struct fields to read-only 2023-05-10 13:25:41 -07:00
MysterD
1ee3fd1d13 Fixed ~240 possible crashes 2023-05-05 23:59:58 -07:00
Isaac0-dev
657feb5d7b
fix some crashes and bugs (#381)
- fix crash in bhv_lll_bowser_puzzle_piece_update (thanks to djoslin)
- fix crash in platform_on_track_act_init
- fix chat commands not working on dev builds
- log when the crash handler is called
- if a custom level tries to set an invalid background, change it to BACKGROUND_OCEAN_SKY
2023-05-04 13:26:50 -07:00
MysterD
f82f5149f4 Disable accurate interpolation on 32 bit 2023-05-04 01:29:08 -07:00
Agent X
52d70e33a5
Expose some painting functions to Lua (#357)
* Expose some painting functions to Lua

get_painting_warp_node
initiate_painting_warp

* Change initiate_painting_warp u8 to s16

In initiate_painting_warp, pass in -1 to not override the painting index.

* Add sanity checks to get_painting_warp_node

* Add requested changes
2023-05-03 00:54:57 -07:00
MysterD
01d91ff07d Added profiling to more places to make lag easier to track down 2023-04-30 17:39:45 -07:00
MysterD
c1e33f5e70 Doubled extended model id size, avoided using vanilla object slots 2023-04-24 01:01:50 -07:00
MysterD
6346293468 Deterministically set the sync ID for level objects that spawn from spawninfo, macros, and special 2023-03-26 21:10:38 -07:00
Agent X
c79a001f5f
Make fixed collision rounded corners toggleable (#315) 2023-03-22 21:02:43 -04:00
Agent X
7f6f7fea47
Fix NaN position bug with fixed collision (#312)
* Fix fixed collision NaN position

Thanks to @Marioiscool246 for figuring this out.
Sometimes Mario's position will become NaN when doing specific things, this fixes that.

Co-Authored-By: Marioiscool246 <27823923+Marioiscool246@users.noreply.github.com>

* Formatting

Co-Authored-By: Marioiscool246 <27823923+Marioiscool246@users.noreply.github.com>

* Fix ordering

* Final fix(?)

---------

Co-authored-by: Marioiscool246 <27823923+Marioiscool246@users.noreply.github.com>
2023-03-20 21:13:02 -04:00
Agent X
4fd13c6bda
Bug fixes for mostly the title screen (#308)
- Add NULL checks to DynOS warps
- Change checks for skipping interpolation on the original title screen for much better ones
- Interactions are no longer processed if you are on the title screen
- Re-add some of the legacy demo code for the original title screen
- Fix disconnecting on the original title screen
- Fix disconnecting on the act select screen
- Fix interpolation crash
2023-03-18 17:14:01 -04:00
Agent X
4aada40a62
area_create_warp_node and area_get_warp_node* (#270)
* area_get_warp_node*

- Added area_get_warp_node to Lua
- Added area_get_warp_node_from_params to Lua

* area_create_warp_node and warp constants

Here you go Isaac!

* Add object param

* Commits work again, pushing everything else
2023-02-20 21:47:32 -05:00
Isaac0-dev
3bc0b13e20
ACTIVE_FLAG_DORMANT (#281) 2023-02-18 23:45:13 -05:00
Isaac0-dev
0b6f0dcf0e
Give Lua mods access to a form of level script preprocessing (#258)
* Give Lua mods access to a form of level script preprocessing

* Disable acts setting
2023-01-31 07:24:56 -05:00
wRadion
34a0b12e6c
Fixed Vanish floors/ceilings (non-wall surfaces) (#225)
In the vanilla game, vanish does only work with walls specifically, and not floors and ceilings. This is because the check for vanish surfaces was only implemented with the walls. So I simply pasted the same code but with the floors and the ceilings.
2022-11-18 18:39:17 -08:00
PeachyPeach
a8e397047a
CAP color; near/far warning fix (#214)
Added CAP color part; Player's cap no longer uses the SHIRT color
    Added METAL color as an alias of CAP color; Metal characters now uses the CAP color to tint the metal texture (was SHIRT color)
    Fixed the cap inside color (was HAIR color)
    Fixed the near/far warning
2022-10-30 17:30:40 -07:00
Sunk
97090abf28
Added HOOK_ALLOW_HAZARD_SURFACE and various fixes (#209)
* Fixed naming from ceil to cell

* Added HOOK_ON_QUICKSAND

* Modified hook and removed weird newlines

* Renamed hook and increased usage

HOOK_ALLOW_QUICKSAND -> HOOK_ALLOW_HAZARD_SURFACE
Now also works on lavaboost.
Suggestion by Agent X. May add this hook to the death barrier check.

* Autogen

* Fixed downwarping to quicksand upon popping

As a side effect though, Mario will no longer snap to the floor upon being popped.
2022-10-30 17:25:56 -07:00
Agent X
e308571a4f
Add vanish cap walls to no camera collision check (#196) 2022-09-19 19:34:09 -07:00
Sunk
ffc06db874
Unhardcoded floor and ceiling limits (#179)
* Unhardcoded ceiling and floor limits

* Revert "Unhardcoded ceiling and floor limits"

* Revert "Revert "Unhardcoded ceiling and floor limits""

This reverts commit 71b2da4c4b898cda73f211620d138b346370d2ce.

* Let's try that again
2022-09-12 19:58:01 -07:00
Agent X
a1953afd1c
SURFACE_RAYCAST (#177)
* SURFACE_RAYCAST

* Exclude from camera collision
2022-09-12 19:56:24 -07:00
Agent X
7e1110cde9
Remove TARGET_WEB (#159)
Just a simple code cleanup opportunity I saw
"I won't be porting this to the web" - djoslin

Compiled and tested everything to see if it works, feel free to check yourself or look over the code

Also, I noticed TARGET_N64 was there too, might do a clean up on that since we all know this isn't getting ported to the N64 anytime soon.
2022-08-25 17:32:20 -07:00
MysterD
cadaf78699 Initialize graphNode->config.camera to NULL (fixes obscure crash) 2022-08-07 22:30:31 -07:00
Prince Frizzy
913f41f6ae
Add some more functions for use in LUA, And expose others. (#129)
* Add some functions, and restore one.
2022-08-05 22:17:05 -07:00
MysterD
c214acb33f Change fixCollisionBugs from server setting to mod setting 2022-06-25 01:26:53 -07:00
MysterD
3b626845e1 Refactor sync objects, move syncIds to u32 2022-06-06 19:13:04 -07:00
MysterD
c95de7fe87 Allowed LEVEL_ENDING to be overridden by DynOS 2022-06-02 22:06:33 -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