Commit graph

49 commits

Author SHA1 Message Date
PeachyPeach
b738cf73f9
/luaf; fix compilation issues with audio and debug + dev (#328)
/luaf command to execute lua code from a file. Note that this command doesn't load the file the same way mod files are loaded, so no access to gGlobalSyncTable and gPlayerSyncTable. hook_chat_command cannot be called, but hook_event can.

Fix some compilation issues
2023-03-27 15:50:49 -07:00
Isaac0-dev
6cb1b2faec
Beta 32.0.1 (#325)
* patch for beta 32

* require the development flag for Lua profiler

* autogen
2023-03-26 01:15:28 -04:00
Agent X
0c7de174d2 Add /lua to chat commands with dev flag 2023-03-08 19:26:03 -05:00
Agent X
36bda742cd Revert "smlua_exec_str (run Lua from string)"
This reverts commit b32ab212a9.
2023-03-08 19:04:32 -05:00
Agent X
b32ab212a9 smlua_exec_str (run Lua from string)
Seemed useful for debug or any other purposes, why not?
2023-03-08 18:54:06 -05:00
Prince Frizzy
f815a53080
Add some new LUA helper functions and fix some bugs. (#230)
- Add new functions for objects, Feel free to flesh some out if need be.
- Fix long-standing issue with our LUA garbage collection, It will now run after all our hooks do to prevent buildup which causes lag.
2022-11-12 05:01:50 -08: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
946f16329c Added ability to have completely custom levels that don't override anything 2022-06-05 21:55:31 -07:00
MysterD
c942b8496a Clear custom actors on disconnect properly 2022-05-30 00:37:14 -07:00
MysterD
897f6712a3 Reset hardcoded values on disconnect 2022-05-17 01:22:45 -07:00
MysterD
d7bf47c5de Clear hooks on lua shutdown 2022-05-09 09:53:14 -07:00
MysterD
d75b0e9133 Started working toward allowing disconnection 2022-05-09 07:27:47 -07:00
MysterD
d206581c87 Fix error cascade when one mod has script errors 2022-04-22 23:42:03 -07:00
MysterD
174e3d97ed Made Lua errors show a backtrace for almost all cases 2022-04-22 23:31:25 -07:00
MysterD
ef7dc41560 Added HOOK_ON_DEATH 2022-04-21 18:34:12 -07:00
MysterD
21dc525a75 Slight adjustment to script error message 2022-04-16 22:50:23 -07:00
MysterD
12ea360360 Display a message on screen when script errors are found 2022-04-16 22:47:16 -07:00
MysterD
202315f260 Rewrite of hash/cache system 2022-04-16 13:05:10 -07:00
MysterD
81870df88b Remove certain default Lua functions 2022-04-13 00:38:01 -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
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
7d0cc7b693 Finish up new mod table system 2022-03-15 23:15:46 -07:00
MysterD
f880784f8e Transitioned Lua to new mod table system 2022-03-15 00:20:31 -07:00
MysterD
9388aa8885 Show last lua mod to run in crash handler 2022-03-09 21:27:02 -08:00
MysterD
9c7036afe3 Add define_custom_obj_fields() to Lua 2022-03-04 18:16:54 -08:00
MysterD
3bc80ad7be Add object animations to Lua, add CPointer allowlist 2022-03-03 18:31:45 -08:00
MysterD
92b5893871 Raised Lua size limit from 64KB to 2MB 2022-03-02 00:40:53 -08:00
MysterD
948e4283de Made Lua mods show up in Discord Activity 2022-02-05 10:25:36 -08:00
MysterD
d92ea3ff21 Lua networking improvements
More types can be sent over the network
SyncTables are synchronized on client join
2022-01-31 19:09:03 -08:00
MysterD
e9d3bf49da Initial foundation for lua networking 2022-01-30 23:11:33 -08:00
MysterD
3d5d0b5306 Made Lua log to console outside of DEBUG builds 2022-01-29 15:42:33 -08:00
MysterD
bf2969be04 More Lua improvements
convert_functions.py no longer hardcodes acceptable LOT_ values
Added characters.h and surface_collision.h to convert_structs.py
Prevented mod filenames with a slash in it from being considered acceptable
Sanitized mod filenames when received from the server
2022-01-25 20:28:34 -08:00
MysterD
08ccde2937 Lua: autogenerated cobjects 2022-01-25 19:28:10 -08:00
MysterD
5ccb987ca7 Lua: more typechecking (converted lua_to* to smlua_to_*) 2022-01-23 17:15:04 -08:00
MysterD
b45c61a605 Added Lua allow-list for cobject pointers 2022-01-23 16:35:43 -08:00
MysterD
fe11e25e0b Allowed enabling/disabling of mods through the UI 2022-01-23 15:45:42 -08:00
MysterD
79a659781c Added download progress bar 2022-01-23 11:32:03 -08:00
MysterD
767809f56a Lua mod table and download
Mods are now loaded into a table
Clients now request a mod list from the server, then download each file one at a time before joining
Embedded constants.lua into the program
2022-01-22 23:59:49 -08:00
MysterD
348d1509a1 Sandboxed Lua scripts 2022-01-21 20:06:45 -08:00
MysterD
0626c77048 Lua: moved hook functions into their own file 2022-01-21 19:40:26 -08:00
MysterD
b364493807 Even more Lua improvements
Reorganized autogenerated lua functions into their own file
Grouped up COBJECT LVTs
Partially implemented: struct MarioBodyState, Object, ObjectNode, GraphNodeObject
Reimplemented lua function wrappers for: camera.h, mario.h, mario_actions_*.c, mario_step.h
2022-01-19 19:20:57 -08:00
MysterD
f631f4d62f More Lua improvements
restrict lua libraries
extended moveset: finish roll, dive hopping
wrote a python script to codegen lua functions from C header files
converted most of mario.h
2022-01-18 18:51:06 -08:00
MysterD
68eff636d9 More Lua improvements, ported ACT_ROLL / ACT_ROLL_AIR from extended moveset 2022-01-18 01:48:51 -08:00
MysterD
ec161c9c09 Reimplemented how Lua reads/writes to C Objects 2022-01-17 20:50:39 -08:00
MysterD
1c29a2b47f Second iteration of Lua IO
Started working on third
2022-01-17 19:23:52 -08:00
MysterD
0aa1e04f93 More lua improvements
Added mods folder for lua scripts
Created constants.lua so scripts could use constants internal to the C code
Created event hooks
Separated out lua functions into multiple files
2022-01-16 18:07:45 -08:00
MysterD
1a47707be8 Initial LUA support - MarioState read/write 2022-01-16 08:51:29 -08:00