Commit graph

317 commits

Author SHA1 Message Date
Sunk
c428612a9e
Add set_exclamation_box_contents() (#445)
* Properly set Mario's y vel to 0 on popping

* Change 0 to 0.0f, just in case

* Re-introduce a few vanilla bugs under gBehaviorValues

The Shell Mario glitch was patched as a side effect to patching a different bug, but several romhacks use it so I need it back.
The ability to collect multiple normal caps at once is needed for hat-in-hand using the hat factory glitch.

* Fix Shell Mario fix

Found the actual reason why the glitch doesn't work and figured that this change shouldn't affect anything else, so I removed its entry from gBehaviorValues.

* Add InfiniteRenderDistance to gBehaviorValues

I'm well aware that disabling the infinite render distance will be very desync prone, however a few glitches, most notably cloning and chuckya double jump, need objects load and unload from render distance.

* Allow mods to disable the camera centering from romhack camera

* Allow mods to disable romhack camera centering

Done again

* Update on network shutdown

* Remove a line which I have no idea why it returned

* Add set_exclamation_box_contents()

No way this is memory safe or even well made but I did what I could

* Added (most of) peachy's suggestions

Still need to figure out how to stop the game from reading further than the size of the array without using a hardcoded number

* Added more of peachy's suggestions

I figured a good way to cap how far the exclamation box reads is to pass in the length of the array as well
2023-07-18 18:18:02 -04:00
Sunk
d1aa4aee1e
Add gLevelValues.bubbleOnDeathBarrierInCapStages (#449)
Also add a few smaller fixes with bubbles
2023-07-18 18:01:05 -04:00
Sunk
3242c4e7c8
Document manual.lua (#443)
* Properly set Mario's y vel to 0 on popping

* Change 0 to 0.0f, just in case

* Massively increase surface pool size

Also exposed the surface pool counts by creating a few functions to get them. They only existed for debugging but may as well keep them.

* Allow extended moveset to be toggled from a chat command

I got permission to edit extended moveset. Eventually I'll try to see if I can improve upon this moveset.

* Remove old surface code

Part 1

* Heavily document manual.lua

Hopefully nothing I added is wrong

* Small change in descriptions
2023-07-18 18:00:35 -04:00
Agent X
ed60d53ab3
Mod Storage C++ (#448)
* Mod Storage C++

* Implement Peachy's suggestions.

Thank you Peachy.
2023-07-18 17:52:11 -04:00
Agent X
d63abe9c7e
Changes to light shade color (#444) 2023-07-10 15:40:45 -04:00
Sonicxryan
3258064a7f
Shading (#439) 2023-07-06 16:21:37 -04:00
Dominicentek
809cbc314b
Add lifeCap, coinCap and coinToLife to gLevelValues (#429)
* Add lifeCap, coinCap and coinToLife to gLevelValues

* autogen

* forgor

* renamed the properties
2023-07-04 14:16:07 -07:00
MysterD
aeb8817f0d Reduced Lua GC pressure by a lot, reuse cobjects/pointers 2023-06-24 23:43:03 -07:00
Sunk
f6a78e0c77
Allow mods to disable romhack camera centering (#423) 2023-06-23 16:58:47 -07:00
MysterD
2842803362 Added gLevelValues.fixCollisionBugsPickBestWall 2023-06-22 20:18:10 -07:00
MysterD
c7a557d870 Add gLevelValues.fixCollisionBugsGroundPoundBonks 2023-06-22 11:40:59 -07:00
Agent X
3f60869fcb
Add the ability to change lighting color (#420)
* Add the ability to change lighting color

Well it's actually multiplying the lighting color and not changing it completely but I think it's better that way.

* Consistency
2023-06-22 11:28:17 -07:00
MysterD
c92b62fe58 Enable romhack cam by default when in a non-vanilla level 2023-06-22 02:12:57 -07:00
Dominicentek
2629381971
Customizable dialogs (#411)
* add customizable dialogs

* remove testing mod

* add HOOK_ON_DIALOG

* Reset dialog overrides in `network_shutdown`

It may have compile errors idk editing code on phone sucks

* typo smh

* copy over the file from original repo so this fork can be synced

* run autogen again

* actually im stupid
2023-06-18 20:04:39 -07:00
Agent X
f1990c618e
Add tons of new save file / star related functions (#419)
These were needed to port interact_star_or_key to Lua but are also just good to have exposed IMO.
2023-06-18 20:04:02 -07:00
MysterD
b3eff990ae Re-ran autogen 2023-06-18 12:28:26 -07:00
MysterD
488ef1c6d2 Added collision_get_temp_wall_collision_data() to Lua 2023-06-15 19:55:55 -07:00
Sunk
a0ff975ec8
Re-introduce a few vanilla bugs under gBehaviorValues (#413)
* Properly set Mario's y vel to 0 on popping

* Re-introduce a few vanilla bugs under gBehaviorValues

The Shell Mario glitch was patched as a side effect to patching a different bug, but several romhacks use it so I need it back.
The ability to collect multiple normal caps at once is needed for hat-in-hand using the hat factory glitch.

* Fix Shell Mario fix

Found the actual reason why the glitch doesn't work and figured that this change shouldn't affect anything else, so I removed its entry from gBehaviorValues.

* Add InfiniteRenderDistance to gBehaviorValues

I'm well aware that disabling the infinite render distance will be very desync prone, however a few glitches, most notably cloning and chuckya double jump, need objects load and unload from render distance.
2023-06-11 14:24:13 -07:00
MysterD
def1122159 Allow toggling the false ledge grab fix 2023-06-11 13:00:11 -07:00
Isaac0-dev
05f4c42f81
add cancels to HOOK_BEFORE_PHYS_STEP allowing for custom step systems (#400)
* add cancels to HOOK_BEFORE_PHYS_STEP allowing for custom step systems

* give lua mods access to stepArg and nextPos from hanging and air step; fix a crash when m.floor is null
2023-05-31 21:10:06 -07:00
Emerald Lockdown
3e52c4f5db
djui_popup_create_global (#402)
* Add djui_popup_create_global
2023-05-31 21:05:07 -07:00
MysterD
929b10995c Allow other mods to add levels to arena 2023-05-31 16:56:57 -07:00
MysterD
1dd70283da Fixed bounds checks in save_file_is_cannon_unlocked() 2023-05-20 20:07:17 -07:00
Dominicentek
9a065ffced
Expose save_file_is_cannon_unlocked to smlua (#395)
* Update convert_functions.py

* Update save_file.c

* Update save_file.h

* Update cannon_door.inc.c
2023-05-20 20:06:15 -07:00
MysterD
b0408a1379 Fix some bugs found in testing 2023-05-18 17:54:29 -07:00
MysterD
18bf5847a2 Prevent rending of corrupted graphnodes, only run lua GC once per frame 2023-05-16 21:49:13 -07:00
MysterD
fa88a5aee0 Make certain GraphNodeObject fields mutable again 2023-05-16 00:05:26 -07:00
MysterD
60d70d0d38 Fix several more possible crashes from the Lua API 2023-05-15 15:55:16 -07:00
MysterD
2eb2b8c18f Make GraphNode flags mutable from lua again 2023-05-15 01:19:10 -07:00
MysterD
2083242b66 Fixed several crashes and errors found in static analysis 2023-05-15 01:15:20 -07:00
MysterD
5598ac95e7 Merge branch 'dev' of github.com:sm64ex-coop-dev/sm64ex-coop into dev 2023-05-14 12:12:30 -07:00
MysterD
8129ab7665 Prevent crashes and hangs 2023-05-13 03:07:20 -07:00
MysterD
cc1ec3e81f Prevented hundreds of additional crashes from the Mod API 2023-05-11 20:33:21 -07:00
Isaac0-dev
fad7984cd4
add djui_open_pause_menu() (#391) 2023-05-11 06:10:25 -04: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
af01a214ee Fix autogen for AnimationTable 2023-05-10 22:29:39 -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
Prince Frizzy
d368e4e844
Name more audio code and variables, Document some others. (#386) 2023-05-10 14:31:58 -07:00
MysterD
b863cc80c8 Prevent several possible crashes and hangs, limit more struct fields to read-only 2023-05-10 13:25:41 -07:00
PeachyPeach
3ab4c944ac
better kick/punch/trip, gp and flying detection (#388) 2023-05-09 15:38:29 -04:00
MysterD
cb499491f4 Fix crash in network_receive_lua_sync_table 2023-05-07 22:46:00 -07:00
MysterD
1ee3fd1d13 Fixed ~240 possible crashes 2023-05-05 23:59:58 -07:00
MysterD
0a4dfd17a4 Re-ran autogen 2023-05-03 01:01:36 -07:00
MysterD
5b108e50e6 Merge branch 'coop' into dev 2023-05-03 01:01:18 -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
Prince Frizzy
ee3a7018ab
Adds support for compiling other regions (#378)
* Initial support for compiling with EU.

* Fix EU text.

* JP now compiles, TODO: Fix Autogen to fix JP and fix text in djui.

* audio: Prevent crash in EU.

* audio: Sync EU audio to 60 Hz instead of 50 Hz

* Add logging and remove sanity check to hopefully track EU crash.

* Various improvements for EU

Improve some memory debugging
Improve sound debugging
Initalize some variables in load.c for the sound system
Synchronize the EU cutscenes with the US version.

* Fix credits music playing in EU, Document some EU audio code.

* Autogen now supports version excluded object fields and functions. Reran autogen in accordance.

* Fix some potentional shifting issues due to version differences.

* Decrease the sleep times in some spots, We do not need them to be so long. (#373)

* Add the region to the version string.

---------

Co-authored-by: djoslin0 <djoslin0@users.noreply.github.com>
2023-05-03 00:54:25 -07:00
Marioiscool246
7b4b873d39
Add fov adjustment to djui_hud_world_pos_to_screen_pos (#374)
* Add fov adjustment to djui_hud_world_pos_to_screen_pos
sFOVState is now a global (gFOVState)
djui_hud_world_pos_to_screen_pos now returns false if the position is behind the camera

* Fix aspect ratio parentheses

* Rerun autogen

---------

Co-authored-by: Marioiscool246 <marioiscool101@gmail.com>
2023-04-30 22:54:55 -04:00
PeachyPeach
2aa6e1aa08
custom animations no dynos (#371)
Load animations with smlua_anim_util_register_animation and set them with smlua_anim_util_set_animation.
2023-04-28 21:00:17 -07:00