Commit graph

1446 commits

Author SHA1 Message Date
MysterD
35ac2165ad Prevent crash and end-of-level corruption when someone collects a non-course star 2022-01-28 00:01:34 -08:00
MysterD
bffcd7c30b Prevented rare Discord crash on Linux 2022-01-28 00:00:54 -08:00
MysterD
32ceded772 Prevent rendering of unimplemented characters 2022-01-28 00:00:25 -08:00
MysterD
5d9ad46730 Adjusted player enter/exit level popup 2022-01-27 23:59:46 -08:00
MysterD
1e3acefff1 Adjusted bouncing on players 2022-01-27 23:59:18 -08:00
MysterD
e157dca8bd Fixed incompatible tag comparisons, added two simple mods 2022-01-27 23:56:44 -08:00
MysterD
880afd79c3 Refactored interactable djui elements 2022-01-27 23:55:42 -08:00
MysterD
809dfd6373 Reading headers from lua files
Fix up warnings on Linux
Disabled mod checkboxes when an incompatible one is enabled
Display descriptions when hovering over a mod
2022-01-27 23:53:58 -08:00
MysterD
0aa8cd0e35 More improvements to Lua
autogenerated functions for characters.h

Fixes in autogen:
	improvements to LVT/LOT conversion
	improvements to immutability status

Updates to character-movesets.lua, every character has a moveset now

Added .type to stuct Character

Prevented unimplemented actions from crashing the game
2022-01-26 20:35:13 -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
2e79f860e6 More lua improvements
Added hooks: ON_SET_MARIO_ACTION, BEFORE_PHYS_STEP
Working on Luigi's character abilities
Autogen lua functions for surface_collision.h
2022-01-24 19:19:19 -08:00
MysterD
47a129573f Fixed Mac Lua library 2022-01-23 23:00:44 -08:00
MysterD
acf3f77758 Added missing lua libs 2022-01-23 20:51:05 -08:00
MysterD
2b8bc6a995 Merge branch 'dev/lua' of github.com:djoslin0/sm64ex-coop into lua 2022-01-23 20:11:24 -08:00
MysterD
fe857de663 Fixed linux compile errors 2022-01-23 20:05:31 -08:00
MysterD
d09abc7bcd Switched from dynamic to static Lua lib 2022-01-23 20:04:53 -08:00
MysterD
0631108733 Lua will try to load from writable-path/mods before ./mods 2022-01-23 18:47:06 -08:00
MysterD
5ccb987ca7 Lua: more typechecking (converted lua_to* to smlua_to_*) 2022-01-23 17:15:04 -08:00
MysterD
7d3769a216 Added Lua function param count checking 2022-01-23 17:00:13 -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
75dfb45c6b Decreased the amount of back and forth for downloads
Server sends 5 chunks before waiting for another request
Download packets resend at a slower rate
2022-01-23 02:33:25 -08:00
MysterD
cdbf9eaabf Networking improvements
Reliable packets now save the actual remote address
Clients now only accepts server packets from the desired server
2022-01-23 01:55:43 -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
693a4a7303 Fixed linux compile errors 2022-01-22 15:06:14 -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
34e903b89a Merge branch 'unstable' into lua 2022-01-21 19:19:21 -08:00
MysterD
edec02a89b Bump version to unst 13 2022-01-21 19:15:51 -08:00
MysterD
addd16721f Added headless server compile mode 2022-01-21 19:13:41 -08:00
MysterD
777b9287e6 Notify players where other players go with a popup 2022-01-21 18:24:53 -08:00
MysterD
6a447c10f4 Added ability to exit course, exiting out of the painting 2022-01-21 00:56:54 -08:00
MysterD
101a6400e0 Added define guards around controller bind mappings 2022-01-20 23:35:38 -08:00
MysterD
f45ae4a115 Allow players to change name/model/palette while connected 2022-01-20 22:23:57 -08:00
MysterD
8837dcc023 Removed server enforcement of unique player palettes 2022-01-20 21:52:14 -08:00
MysterD
05999a9ae8 Added key/bind names to controls menu 2022-01-20 21:46:22 -08:00
MysterD
8f3ca4c6ea Lua stuff
Added HOOK_BEFORE_MARIO_UPDATE
Added support for Vec3f/Vec3s in autogenerated lua functions
Added more lua functions from mario_actions_submerged.c, and thread6.c
Renamed animation-related fields in CObject wrappers
Moved coss and sins to wrapper

Extended Moveset:
  Fixed rolling angle bug
  Added rumble calls
  Set facing direction when spinning
  Added ledge parkour
  Corrected ground pound animation
2022-01-20 19:04:34 -08:00
MysterD
cc2324d35e Even more Lua improvements
Added support for structs: Surface, GraphNodeObject_sub, Animation
Generated lua wrapper functions for more functions in mario_actions_submerged.c
Fixed play_sound() wrapper to use a vec3f
Extended Moveset:
	ported wall slide and water ground pound
2022-01-20 18:02:12 -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
8aa9a95d5b More Lua improvements
Added Lua wrapper functions for mario_actions_moving.c, mario_step.h, mario_actions_airborne.c, camera.h, mario_actions_stationary.h

Extended Moveset Mod:
Started porting spin jump from extended moveset
Added act_ground_pound_jump, act_spin_pound, act_spin_pound_land,
2022-01-19 01:00:56 -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
MysterD
511e7c5028 Prevent bubble softlock by halting bubble popping for half a second after being bubbled 2022-01-15 21:50:35 -08:00
MysterD
b5762c2446 Add in-game player list 2022-01-15 20:44:11 -08:00