MysterD
186149b2dd
Merge branch 'unstable' of github.com:sm64ex-coop-dev/sm64ex-coop into unstable
2022-04-20 11:22:18 -07:00
MysterD
18d7140954
Add headPos to marioBodyState
2022-04-20 18:21:36 -07:00
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
2347ab61c1
Added HOOK_ON_OBJECT_RENDER
2022-04-19 22:36:47 -07:00
MysterD
dd6f6c430e
Refactor how objects set their models
2022-04-19 18:47:50 -07:00
MysterD
643850ef2e
Custom level example
2022-04-15 22:01:19 -07:00
MysterD
6b67c983ec
exposed sequence ids to lua
2022-04-15 21:51:18 -07:00
MysterD
fbce5f23c6
Added ability to set a level to skip credits, fixed SM74 bugs
2022-04-15 18:33:10 -07:00
MysterD
4008d99c75
Moved low gravity and mario run to examples
2022-04-13 01:38:32 -07:00
MysterD
9653a19c7d
Improve rom hack camera's collisions in tight spaces and focus underwater. Add HOOK_ON_SET_CAMERA_MODE
2022-04-13 00:10:50 -07:00
MysterD
431af75d88
Add a vanilla-like camera for romhacks
2022-04-11 21:04:15 -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
957e03cd81
Added HOOK_GET_STAR_COLLECTION_DIALOG
2022-04-10 02:44:11 -07:00
MysterD
958b04378c
Add exit castle warp params to Lua
2022-04-10 02:29:44 -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
ef63435bc1
Un-hardcoded vanilla trajectories
2022-04-08 21:01:17 -07:00
MysterD
72584d5552
Refactored StarPositions
2022-04-08 19:46:01 -07:00
MysterD
37367a9756
Made the entry level configurable by Lua
2022-04-08 19:39:22 -07:00
MysterD
403bf30be9
Added custom level script overrides, warps work now
2022-04-08 19:29:16 -07:00
MysterD
6a7712b1c8
Allow Lua to adjust default star spawn positions
2022-04-08 00:37:20 -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
7e677d4596
Fixed up DynOS collision files
2022-04-01 17:59:40 -07:00
MysterD
784614347b
Added big paddle example
2022-03-30 21:36:47 -07:00
MysterD
34d28ffb3c
Ran autogen
2022-03-30 20:03:59 -07:00
MysterD
d049c647dd
Allow Lua mods to prevent exit to castle/exit course
2022-03-30 20:03:22 -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
de048928ce
Added ability for Lua mods to adjust gServerSettings
2022-03-26 01:08:15 -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
MysterD
322e4983ae
Add HOOK_ON_PAUSE_EXIT
2022-03-25 23:06:14 -07:00
MysterD
033b11ac22
Make new timers immutable
2022-03-25 21:39:03 -07:00
Isaac
65df754b09
Add save file flag functions to lua api ( #41 )
2022-03-24 19:30:15 -07:00
Prince Frizzy
a89aa6ced8
A load of fixes and cleanup.. ( #39 )
...
Red Coins will now properly play the cutscene for who collected the last red coin.
Secrets will now properly play the cutscene for who collected the last secret.
Treasure Chests will now only play the star cutscene for the person who opened the last chest.
Properly named some unknown Treasure Chest fields.
The Chain Chomp Chain should now properly be despawned for late joiners.
Improved the Big Boo's Haunt Merry-Go-Round checks for Mario.
2022-03-22 19:50:13 -07:00
MysterD
db1c2dd758
Merge branch 'unstable' of github.com:sm64ex-coop-dev/sm64ex-coop into unstable
2022-03-19 00:59:06 -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
mjcox244
509db70385
Add more Example Lua mods ( #35 )
2022-03-18 21:30:53 -07:00
MysterD
1db8dcc1d9
Added custom player model example
2022-03-17 21:41:46 -07:00
MysterD
11649ce1d8
Added HOOK_ON_OBJECT_UNLOAD, HOOK_ON_SYNC_OBJECT_UNLOAD
2022-03-17 01:43:08 -07:00
MysterD
0cd2a91e9c
Added allocate_mario_action()
2022-03-17 01:17:34 -07:00
MysterD
7252d836a9
Added hooks: HOOK_ON_LEVEL_INIT, HOOK_ON_WARP, HOOK_ON_SYNC_VALID
2022-03-16 23:53:01 -07:00
MysterD
580c5baeb3
Add custom box model example
2022-03-16 22:55:16 -07:00
MysterD
469e4ac4e4
Load Super Keeberghrh's ERROR model when DynOS can't find the model
2022-03-16 01:34:18 -07:00
MysterD
edf06bede0
Added ability for mods to load custom geos
2022-03-14 00:11:36 -07:00
MysterD
b695cbd55a
Merge branch 'unstable' of github.com:sm64ex-coop-dev/sm64ex-coop into unstable
2022-03-13 00:25:22 -08: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
3ce66ac312
Added hook: HOOK_ALLOW_PVP_ATTACK, disabled friendly fire in football
2022-03-12 23:43:47 -08:00
MysterD
e990157986
Fix image
2022-03-12 21:52:38 -08:00
MysterD
4347d12dfc
Add spacing to vscode docs
2022-03-12 21:49:05 -08:00
MysterD
b77a2b62c9
Document how to setup vscode
2022-03-12 21:47:48 -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
497a250476
Allowed Lua mods to override player models and palettes
2022-03-10 18:23:25 -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
MysterD
25cd318198
Added football gamemode
2022-03-07 22:23:05 -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
283fbc85a9
Add notes on player indices to Lua docs
2022-03-04 23:20:53 -08:00
MysterD
b3ae635e98
Add custom behavior Lua examples
2022-03-04 23:14:01 -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
d3b9163507
Add missing AreaTimerType to documentation
2022-03-04 22:31:32 -08:00
MysterD
4d4edf152a
Fix Lua documentation autogen links
2022-03-04 22:24:21 -08:00
MysterD
e4f72105a3
Update Lua documentation autogeneration
2022-03-04 22:22:31 -08:00
MysterD
e740529776
Fixed how constants.md autogen'd links
2022-03-04 22:11:10 -08:00
MysterD
e0808374f2
Document hook_behavior()
2022-03-04 21:58:51 -08:00
MysterD
a87116a632
Add networking for custom behaviors
2022-03-04 20:03:00 -08:00
MysterD
bac0879ee7
Merge branch 'unstable' of github.com:sm64ex-coop-dev/sm64ex-coop into unstable-dev
2022-03-03 19:40:30 -08:00
MysterD
3bc80ad7be
Add object animations to Lua, add CPointer allowlist
2022-03-03 18:31:45 -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
PeachyPeach
0c42836b81
Added support for X and Y buttons; Re-mapped B button to the actual B button for controllers; Moved particleFlags code so lua scripts can spawn Mario particles with 'before Mario update' and 'after Mario update' hooks ( #5 )
2022-02-27 14:31:59 -08:00
MysterD
d3b4e1c794
Made certain objects use their dynamically assigned model IDs
2022-02-26 02:14:30 -08:00
MysterD
ccf4952baa
Add spawn-stuff lua example
2022-02-26 00:03:21 -08:00
MysterD
fa36ed308e
Add more constants to Lua
2022-02-25 22:44:37 -08:00
MysterD
33ced38baa
Various Lua object API improvements
...
Lifted immutablity of most Lua struct fields
Added object constants to Lua API
Added ability to set struct pointers in Lua API
Prevented respawners for Lua-spawned objects
2022-02-25 18:30:05 -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
091a859104
Added level models to Lua API
2022-02-22 18:04:12 -08:00
MysterD
94bc7940cc
Initial Lua support for spawning objects
2022-02-21 22:46:39 -08:00
MysterD
b3e21d7edc
Added object fields to Lua API
2022-02-19 13:51:02 -08:00
MysterD
1269eef048
Ran autogen after refresh 12 merged
2022-02-18 22:43:38 -08:00
MysterD
d32bbacf21
Add ON_HUD_RENDER to Lua hook docs
2022-02-18 19:48:05 -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
e536d140bb
Added HOOK_ON_INTERACT to Lua API
2022-02-15 22:21:31 -08:00
MysterD
1ea28b9c5a
Added rect rendering to Lua API
2022-02-15 22:15:49 -08:00
MysterD
669e17bc18
Added global textures
2022-02-15 22:14:55 -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
941375718b
Added CPointers to Lua/autogen
2022-02-15 22:09:21 -08:00
MysterD
3fcc31e233
Added text rendering to Lua API
2022-02-15 22:08:01 -08:00
MysterD
6d6d94fcde
Add Wario's moveset based on steven's mod
2022-02-14 18:26:44 -08:00
MysterD
3436d6d26f
Update lua docs
2022-02-13 22:18:03 -08:00
MysterD
434176e7d6
Added a bunch of functions to Lua wrapper
2022-02-04 19:13:15 -08:00
MysterD
f4279924fb
Added read-only column to Lua struct documentation
2022-02-04 01:32:19 -08:00
MysterD
ab1e85994e
Added hook_on_sync_table_change() to Lua API
2022-02-04 00:15:14 -08:00
MysterD
0935eed3b7
Rewrite of how lua hooks chat commands
2022-02-03 19:50:27 -08:00
MysterD
b6a3733bf0
Added network_get_player_text_color_string() to lua api
2022-02-03 19:05:59 -08:00
MysterD
6fcc60a791
Changed autogeneration of Lua constants to pull directly from src
2022-02-03 00:43:17 -08:00
MysterD
cf34aa0b08
Added support for returning structs from C to Lua
2022-02-03 00:43:08 -08:00
MysterD
fb01338278
Added chat commands to lua mods
2022-02-03 00:42:57 -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
12f66994e6
Added on_player_connected/disconnected hooks
2022-02-02 19:33:36 -08:00
MysterD
c59aeedf78
Added gNetworkPlayers to lua api
2022-02-02 19:24:51 -08:00
MysterD
fcb459d095
Added HOOK_ON_PVP_ATTACK
2022-02-02 19:19:17 -08:00
MysterD
0d7b6daa9b
Fixed character sound functions
2022-02-01 21:59:34 -08:00
MysterD
1cce3dd884
Added Sync Tables to lua documentation
2022-02-01 18:52:26 -08:00
MysterD
9a3796f0b8
Added ability for sync tables to contain tables
2022-02-01 18:15:10 -08:00
MysterD
e9d3bf49da
Initial foundation for lua networking
2022-01-30 23:11:33 -08:00
MysterD
8688fa4ca4
Added hooks to Lua documentation
2022-01-30 00:07:50 -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