PeachyPeach
9e5a45ecdd
Added lua profiler; Added useful object functions; Bug fixes ( #65 )
...
Added a basic lua profiler
If the game is compiled with LUA_PROFILER=1, displays on screen the average execution time per frame of each active lua mod, in microseconds.
Added object functions
For some reasons, accessing the object fields obj.o* via lua is rather slow, and can drastically increase execution time of custom behaviors. For basic stuff like setting an object's velocity or moving it, some functions, missing from the original code, have been added:
s32 obj_is_valid_for_interaction(struct Object *o): returns 1 if an object is valid for interaction, i.e. active, tangible and not interacted.
s32 obj_check_hitbox_overlap(struct Object *o1, struct Object *o2): returns 1 if two objects hitboxes overlap. Doesn't check tangibility, only hitbox values.
void obj_set_vel(struct Object *o, f32 vx, f32 vy, f32 vz): sets an object's velocity.
void obj_move_xyz(struct Object *o, f32 dx, f32 dy, f32 dz): moves an object position by (dx, dy, dz).
Bug fixes:
Disable collisions with walls and ceilings after Mario exits a warp pipe to prevent softlocks in narrow places.
Make the koopa shell exclamation box respawn after some time.
Quicksand no longer downwarps and instant-kills Mario if he's shocked while being above it.
2022-04-20 11:20:45 -07:00
MysterD
dd6f6c430e
Refactor how objects set their models
2022-04-19 18:47:50 -07:00
MysterD
ef4a83dc88
Quick fixes for test
2022-04-10 10:11:13 -07:00
MysterD
2c187bba45
Added default volume support for custom sequences
2022-04-10 09:47:17 -07:00
MysterD
9dc78a0971
Added support for custom music
2022-04-10 09:11:45 -07:00
MysterD
15d6dc3a9c
Allow ability to disable vanilla course-specific settings for camera
2022-04-10 01:55:11 -07:00
MysterD
3db42f1700
Allow coop mods to use the backup save slot independently of the normal one
2022-04-10 00:30:47 -07:00
MysterD
653ab58a5d
Allow course names/acts to be changed from Lua
2022-04-09 23:28:36 -07:00
MysterD
c75e71f24e
Unhardcoded all behavior dialogs, allowed replacement of dialogs
2022-04-09 19:50:50 -07:00
MysterD
98f02458e3
Added a way to bind to movtexqc ids through lua, added the rest of the object constants
2022-04-09 01:47:20 -07:00
MysterD
defb7dc830
Made trajectories overridable from Lua
2022-04-08 23:01:41 -07:00
MysterD
403bf30be9
Added custom level script overrides, warps work now
2022-04-08 19:29:16 -07:00
MysterD
3731ab31af
Add more bhv functions and a func to ge tthe current save
2022-04-07 01:17:48 -07:00
MysterD
2187e7b4b3
Added behavior actions for rom hacks
2022-04-06 18:36:15 -07:00
MysterD
6751829f91
Adjustments for Lua/Mods
2022-04-06 18:24:50 -07:00
MysterD
52e705c9d8
Merge branch 'unstable' into level-scripts
2022-04-06 01:36:33 -07:00
Agent-11 / Agent X
746dd50c5c
Add get/set_environment_region ( #56 )
...
Set the water height with a function. Also added an example for it in the documentation.
2022-04-05 15:53:16 -07:00
MysterD
046c595f92
More progress toward custom DynOS levels
2022-04-02 15:14:04 -07:00
MysterD
34d28ffb3c
Ran autogen
2022-03-30 20:03:59 -07:00
MysterD
2115e4358d
Fix compile errors / run autogen
2022-03-29 21:12:42 -07:00
MysterD
d74f5cfe61
Add custom collisions to DynOS/Lua
2022-03-28 01:02:33 -07:00
MysterD
4a9e618efe
Add set_mario_y_vel_based_on_fspeed() to lua
2022-03-26 00:01:13 -07:00
MysterD
b7be386200
Add gLakituState to Lua
2022-03-25 23:58:10 -07:00
MysterD
4d9ff3a3b1
Added a bunch of camera functions to Lua
2022-03-25 23:46:37 -07:00
Isaac
65df754b09
Add save file flag functions to lua api ( #41 )
2022-03-24 19:30:15 -07:00
MysterD
c58702df93
Misc Lua fixes/enhancements
...
approach_s32 now stays within 32 bits
Fixed SOUND_ARG_LOAD
Added OBJ_COL_FLAGS_*
Added reset_rumble_timers
Added get_hand_foot_pos_*
Added get_water_surface_pseudo_floor
Adjusted new hooks to be called at the appropriate times
2022-03-19 00:56:59 -07:00
MysterD
0cd2a91e9c
Added allocate_mario_action()
2022-03-17 01:17:34 -07:00
MysterD
edf06bede0
Added ability for mods to load custom geos
2022-03-14 00:11:36 -07:00
Prince Frizzy
84aa5ad890
Fixes for multiple players getting a star cutscene, Even if they didn't spawn it. ( #22 )
...
* Fix up star cutscene issues.
2022-03-13 00:22:48 -08: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
08d4818ba7
Added Lua definitions for autocomplete in visual studio code
2022-03-12 21:28:57 -08:00
MysterD
da97153336
Fixed saving/loading of DynOS model pack settings
2022-03-12 17:00:06 -08:00
MysterD
5544be21a3
Added get_temp_object_hitbox() to Lua API
2022-03-11 18:18:41 -08:00
MysterD
24df92fa48
Added DynOS warp functions to Lua API
2022-03-11 18:11:32 -08:00
MysterD
859feb530d
Added ability for Lua to show/hide SM64 HUD
2022-03-10 18:33:52 -08:00
MysterD
4638ff6f22
Added the ability to set surface collisions on custom behaviors
2022-03-09 23:02:20 -08:00
MysterD
d03aacc144
Added ability for Lua to spawn non-synchronized objects
2022-03-09 21:25:34 -08:00
MysterD
3641d5404e
Added getter for network area timer
2022-03-09 21:25:21 -08:00
MysterD
1b99e22848
Added the ability to spawn particles from Lua
...
Added particles to football
Increased the object cap for particles
2022-03-09 21:25:07 -08:00
PeachyPeach
d37ba32989
Added obj_has_behavior_id and obj_has_model_extended functions; break bhvBreakableBoxSmall objects without a wall collision by setting some flags in oInteractStatus ( #12 )
...
* Added obj_has_behavior_id and obj_has_model_extended functions; break bhvBreakableBoxSmall objects without a wall collision by setting some flags in oInteractStatus
2022-03-05 14:39:55 -08:00
MysterD
c2177b4eec
Add collision_find_surface_on_ray()
2022-03-05 14:24:58 -08:00
MysterD
2d8715b330
Made adding to behaviors possible in Lua
2022-03-05 01:29:24 -08:00
MysterD
f2247cd973
Documented manually created Lua functions
2022-03-04 23:05:23 -08:00
MysterD
18a5ebafae
More lua doc fixes
2022-03-04 22:38:43 -08:00
MysterD
e4f72105a3
Update Lua documentation autogeneration
2022-03-04 22:22:31 -08:00
MysterD
a87116a632
Add networking for custom behaviors
2022-03-04 20:03:00 -08:00
PeachyPeach
b4507319b9
Added functions: find_ceil_height and obj_set_model_extended ( #9 )
...
* Added functions: find_ceil_height and obj_set_model_extended
2022-03-03 16:46:01 -08:00
MysterD
3ad6c721dc
Initial custom behavior commit
2022-03-03 01:04:15 -08:00
MysterD
ecc33286ad
Ran autogen
2022-03-01 12:06:06 -08:00
PeachyPeachSM64
b8cdcf4795
Added obj_get_* functions; Added set_camera_mode
2022-03-01 12:00:01 -08:00
MysterD
e94d002114
Rename spawn sync object Lua function
2022-02-22 23:50:12 -08:00
MysterD
bbeec3c707
Add support for Lua functions inside parameters
2022-02-22 23:34:22 -08:00
MysterD
816df2117f
Add obj_behaviors to the Lua API
2022-02-22 22:39:45 -08:00
MysterD
e499f51767
Add Lua wrappers for object_helpers.c
2022-02-22 18:34:51 -08:00
MysterD
44fca9aede
Added BehaviorScript pointer handling to Lua API
2022-02-22 18:29:30 -08:00
MysterD
94bc7940cc
Initial Lua support for spawning objects
2022-02-21 22:46:39 -08:00
MysterD
1269eef048
Ran autogen after refresh 12 merged
2022-02-18 22:43:38 -08:00
MysterD
dab7cf4c2b
Added player description to player list
2022-02-16 22:30:17 -08:00
MysterD
a44acd51f2
Added HUD rendering to hide-and-seek
2022-02-16 18:10:06 -08:00
MysterD
1ea28b9c5a
Added rect rendering to Lua API
2022-02-15 22:15:49 -08:00
MysterD
29599a82ec
Created TextureInfo struct
2022-02-15 22:13:10 -08:00
MysterD
ded74e7fb5
Added image drawing to Lua API
2022-02-15 22:12:20 -08:00
MysterD
3fcc31e233
Added text rendering to Lua API
2022-02-15 22:08:01 -08:00
MysterD
434176e7d6
Added a bunch of functions to Lua wrapper
2022-02-04 19:13:15 -08:00
MysterD
b6a3733bf0
Added network_get_player_text_color_string() to lua api
2022-02-03 19:05:59 -08:00
MysterD
cf34aa0b08
Added support for returning structs from C to Lua
2022-02-03 00:43:08 -08:00
MysterD
a3467bb6dc
Added chat message creation to Lua
2022-02-03 00:42:48 -08:00
MysterD
271a375510
Added immutable strings to autogen, added djui_popup_create
2022-02-03 00:42:31 -08:00
MysterD
d82dc207aa
Adjusted autogen to pull functions directly from src
2022-02-03 00:41:07 -08:00
MysterD
cecb145bbb
Added network utils functions to Lua
2022-02-02 20:24:35 -08:00
MysterD
d5aeec5490
Removed ACT_(MARIO_ACTION) Lua functions from API (useless)
2022-01-29 23:02:36 -08:00
MysterD
4daa658567
Removed unimplemented functions from documentation
2022-01-29 22:59:36 -08:00
MysterD
c170984471
Autogenerated Lua documentation
2022-01-29 22:47:22 -08:00