Commit graph

1475 commits

Author SHA1 Message Date
MysterD
fa36ed308e Add more constants to Lua 2022-02-25 22:44:37 -08:00
MysterD
49e48d4028 Fix crash on invalid domain 2022-02-25 22:44:23 -08:00
Beyley Thomas
a957ce2aa0
Allow binding to ports <1024 on non-linux builds (#136)
* Allow binding to ports <1024 on non-linux builds
This seems to be only a restriction on Linux and Mac versions older then Mojave

* Fix port check on djui_panel_join_ip_parse_port
2022-02-25 22:39:03 -08:00
MysterD
d504ee6975 Merge branch 'unstable' of github.com:djoslin0/sm64ex-coop into unstable 2022-02-25 21:06:33 -08:00
Isaac
b72344c6e4
Added Domain Resolution (#134)
Automatically converts domains to IPs
2022-02-25 21:05:21 -08:00
MysterD
2d70b9bb87 Switch all PATH_MAX to SYS_MAX_PATH 2022-02-25 18:33:31 -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
168bd78f47 Add support for display-list based extended models 2022-02-22 01:25:53 -08:00
MysterD
1131fb02db Prevented SM64 hang on object count overflow 2022-02-22 01:10:17 -08:00
MysterD
94bc7940cc Initial Lua support for spawning objects 2022-02-21 22:46:39 -08:00
MysterD
ebcaddede4 Prevent multiple star cutscenes from causing a rare softlock 2022-02-21 18:15:05 -08:00
MysterD
804bee1ff7 Prevent DJUI menu from getting stuck when pressing B and start 2022-02-21 00:08:20 -08:00
MysterD
db655c6746 Fix crash in is_anim_past_end 2022-02-21 00:00:53 -08:00
MysterD
21343194ff Possible fix for packet_level_macro crash 2022-02-20 23:58:32 -08:00
MysterD
7013443003 Fixes for Windows 2022-02-20 23:38:42 -08:00
MysterD
0954efff58 Fix more valgrind bugs 2022-02-20 23:25:58 -08:00
MysterD
660e787502 Fix bugs pointed out by valgrind 2022-02-20 22:06:53 -08:00
MysterD
c2ee370182 Fix missing changes 2022-02-20 20:39:05 -08:00
MysterD
d73eafc57d Fix compile issues for Linux/Mac 2022-02-20 20:24:46 -08:00
MysterD
8d81d8df50 Fix compile issues for Linux/Mac 2022-02-20 20:23:10 -08:00
MysterD
3ea8ff960c Merge branch 'unstable' of github.com:sm64ex-coop-dev/sm64ex-coop into unstable 2022-02-20 20:20:16 -08:00
MysterD
69fb69dfce Fix bugs/warnings from static analysis 2022-02-20 20:04:25 -08:00
Prince Frizzy
b9abf38957
Merge branch 'unstable' of github.com:sm64ex-coop-dev/sm64ex-coop into unstable 2022-02-20 18:52:19 -05:00
MysterD
ebbe1ef16c Merge branch 'unst17' into unstable 2022-02-19 22:06:06 -08:00
MysterD
4568da45f3 Fixed crash in geo_obj_init_animation* 2022-02-19 22:03:45 -08:00
MysterD
334de77139 Fix graphical issues that stem from text drawing 2022-02-19 22:03:25 -08:00
Prince Frizzy
aec356d1b0
Forgot this. 2022-02-19 22:34:05 -05:00
MysterD
b3e21d7edc Added object fields to Lua API 2022-02-19 13:51:02 -08:00
MysterD
3274fca929 Binary search Lua struct fields 2022-02-18 23:39:18 -08:00
MysterD
1269eef048 Ran autogen after refresh 12 merged 2022-02-18 22:43:38 -08:00
Prince Frizzy
32b0c91935
Fixes for Refresh 12 2022-02-19 01:39:38 -05:00
MysterD
cc9dc2c38c Fixed crash in geo_obj_init_animation* 2022-02-18 21:11:16 -08:00
MysterD
a3062287ac fix compile error 2022-02-18 18:38:26 -08:00
MysterD
a359b28bb4 Fixed crash in bhv_bowser_loop 2022-02-18 18:30:57 -08:00
MysterD
33ba20a5f9 Bump version to unst17 2022-02-18 18:23:10 -08:00
MysterD
b0a114eac7 Deallocate object when it failed to set a sync ID instead of crashing 2022-02-18 18:11:16 -08:00
MysterD
bb12aebb9e Fix crash screen on DirectX 2022-02-17 18:40:47 -08:00
MysterD
0a54b7ebed Merge branch 'unstable' of github.com:djoslin0/sm64ex-coop into unstable 2022-02-17 18:27:19 -08:00
MysterD
f5df2917b8 Prevented race condition that caused all objects to disappear in rare circumstances 2022-02-17 18:13:43 -08:00
MysterD
267b1c2542 Prevented 'player left this level' from being displayed when a player connects 2022-02-16 22:56:39 -08:00
MysterD
c6278694d1 Fix Yoshi sounds 2022-02-16 22:51:59 -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
da5f9263fd Fix compile error that emerged in the merge 2022-02-15 22:29:22 -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
f862b3ac21 Adjusted function autogen to automatically pull includes 2022-02-15 22:08:24 -08:00
MysterD
3fcc31e233 Added text rendering to Lua API 2022-02-15 22:08:01 -08:00
MysterD
ef12ff9e70 Removed asserts (or made them soft) 2022-02-15 22:04:34 -08:00
MysterD
8c0e3460f6 Fixed certain object desyncs
Prevented friendly lakitu and 1up spawners from desyncing the object table
Resynchronized 1up spawners
Increased max packet size to 2048
2022-02-15 22:04:01 -08:00
MysterD
265d23892b Fixed crash in star seleciton 2022-02-15 22:03:17 -08:00
Isaac
46a4b377a5 Update controller_bind_mapping.c 2022-02-16 15:04:51 +10:00
Isaac
956a95bb8f Update crash_handler.c 2022-02-16 15:04:18 +10:00
MysterD
25fe547113 More audio fixes
by djoslin0 and theclashingfritz
2022-02-15 18:22:55 -08:00
Prince Frizzy
bd247372ef audio: Extend the amount of notes that can play at once.
Provided by theclashingfritz
2022-02-15 02:06:18 -08:00
Prince Frizzy
f565e89c68 sound: Add extended channel mode for sequences.
Provided by theclashingfritz
2022-02-15 01:36:44 -08:00
MysterD
c818b7930a Added wario sounds
Have yet to pitch correct them.

Huge thanks to theclashingfritz and anzz1
2022-02-14 23:36:53 -08:00
MysterD
91b26646e0 Fix crash in geo_process_node_and_siblings() 2022-02-14 18:15:54 -08:00
MysterD
8abae8d26b Fix crash in peach cutscene 2022-02-14 18:30:02 -08:00
MysterD
f73c841bfe Fixed crash in init_shadow() 2022-02-14 18:28: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
6f8714c764 Added FluffaLuigi's Wario model 2022-02-13 21:52:35 -08:00
MysterD
de02ffbf71 Fixed init_shadow crash 2022-02-13 17:05:25 -08:00
MysterD
2fea65b8ef Fix crash in get_level_name() 2022-02-13 16:47:42 -08:00
MysterD
988c75d621 Fixed crash in save set flag packet 2022-02-13 16:31:22 -08:00
MysterD
6d7d79a4aa Fixed crash in spawn star packet 2022-02-13 16:24:11 -08:00
MysterD
2b9c5b5a90 Fixed crash in spawn object packet 2022-02-13 16:17:58 -08:00
MysterD
31f6896814 Fixed crash on chat message 2022-02-13 15:57:54 -08:00
MysterD
922f8ef582 Fixed painting crash - when shoved OOB in a wobbly painting room 2022-02-13 15:54:12 -08:00
MysterD
127a35d05b Fix water droplet crash 2022-02-13 14:43:50 -08:00
MysterD
92ea8b78b3 Bump version to 16 2022-02-13 14:04:54 -08:00
MysterD
b5de854674 Added chat commands: /kick /ban /permban /players 2022-02-12 15:23:05 -08:00
MysterD
6925db864c Added a custom version of PeachyPeach's crash screen for Windows 2022-02-12 13:30:53 -08:00
MysterD
0098b0c472 Fixed crashes on 32-bit due to pointer offsets 2022-02-10 18:05:47 -08:00
Cameron Hall
fc8bb5e6bd Fix strange audio bugs on 32-bit
increase audio heap size, fix buffer overflow reading gBankSetsData, warn on soundAlloc failure

Provided by: camthesaxman
2022-02-06 15:34:34 -08:00
MysterD
e95a1d48e0 Fixed code warnings on smlua files (32-bit) 2022-02-06 15:19:44 -08:00
MysterD
89ea861c5b Added Draco's acceleration/friction to character movesets 2022-02-05 13:15:35 -08:00
MysterD
5ca457d4cd Fixed pragma-packing 2022-02-05 12:22:41 -08:00
MysterD
132a942df4 Moved in-game mod list 2022-02-05 12:20:21 -08:00
MysterD
ccdfd0854d Bumped version to 15 2022-02-05 10:29:34 -08:00
MysterD
ece9eca819 Fixed WDW water level desync 2022-02-05 10:26:56 -08:00
MysterD
36fbe2053b Prevented level change popup for players in credits 2022-02-05 10:26:38 -08:00
MysterD
0c05fbae87 Made Lua mods show up in player list 2022-02-05 10:26:07 -08:00
MysterD
948e4283de Made Lua mods show up in Discord Activity 2022-02-05 10:25:36 -08:00
MysterD
a28f046eb9 Made players drop held obj when bouncing on each other 2022-02-05 10:25:20 -08:00
MysterD
434176e7d6 Added a bunch of functions to Lua wrapper 2022-02-04 19:13:15 -08:00
MysterD
b226f7c271 Added line logging for all lua errors 2022-02-04 01:19:48 -08:00
MysterD
73ecd55eb9 Fix configfile buffer overrun (Mac mods missing fix) 2022-02-04 00:43:49 -08:00
MysterD
44b1d89c58 Fixed stack corruption in pause menu (Mac crash fix) 2022-02-04 00:21:18 -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
8109bbcb59 Fixed hang related to mod incompatibility checking 2022-02-02 20:26:48 -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
0845cb036d Added stick and dpad binds to controls menu 2022-02-01 19:35:15 -08:00
MysterD
9a3796f0b8 Added ability for sync tables to contain tables 2022-02-01 18:15:10 -08:00
MysterD
5e8db3de00 Allowed keys of SyncTables to be non-strings 2022-01-31 22:34:06 -08:00
MysterD
836e2f6e7d Refactoring lua sync table 2022-01-31 21:32:57 -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
20599aa6f3 Made globalIndex able to be determined by just localIndex
refactored the ugly spaghetti mess that was network_player_connected()
2022-01-31 00:29:44 -08:00
MysterD
e9d3bf49da Initial foundation for lua networking 2022-01-30 23:11:33 -08:00
MysterD
d5aeec5490 Removed ACT_(MARIO_ACTION) Lua functions from API (useless) 2022-01-29 23:02:36 -08:00
MysterD
c170984471 Autogenerated Lua documentation 2022-01-29 22:47:22 -08:00
MysterD
3d5d0b5306 Made Lua log to console outside of DEBUG builds 2022-01-29 15:42:33 -08:00
MysterD
1755df7c3a Re-enabled DEVELOPMENT flag's handling of keep alive packets 2022-01-29 01:16:23 -08:00
MysterD
28a979120a Fixed Discord join and download problems 2022-01-28 23:29:55 -08:00
MysterD
d731aa067d Revert "Prevented rare Discord crash on Linux"
This reverts commit bffcd7c30b.
2022-01-28 22:05:15 -08:00
MysterD
836f44463b Bumped version to unst 14 2022-01-28 19:16:05 -08:00
MysterD
df202c1936 Resynchronize Yoshi to fix softlock, synchronized special triple jump better 2022-01-28 19:13:23 -08:00
MysterD
fae014d957 Prevented packets from overrunning their buffers 2022-01-28 19:12:18 -08:00
MysterD
4c4b2b826c Made discord/socket use the right format types on Linux vs Windows 2022-01-28 00:15:06 -08:00
MysterD
f0ad3dd7d0 Prevent 'exit course' from doing the wrong warp sometimes 2022-01-28 00:03:39 -08:00
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
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
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
MysterD
6a1ceab5ca Made bubble-on-death a server setting 2022-01-14 20:33:06 -08:00
MysterD
625e9b5df9 Fix various bugs with spiny and lakitu 2022-01-14 20:06:26 -08:00
MysterD
839575efe1 Fixed home radius on many enemies, fixed draw distance bug 2022-01-14 16:33:22 -08:00
MysterD
84b9fc8691 Reverted: Removed player offset when changing areas 2021-09-05 15:55:39 -07:00
MysterD
a98538c797 Bumped version to 12 2021-09-05 14:45:26 -07:00
MysterD
8fb46314fa Resync bouncing fireball to only have one owner 2021-09-05 14:42:53 -07:00
MysterD
3721877b6a Removed player offset when changing areas 2021-09-05 14:34:17 -07:00
MysterD
4cebce4864 Added Waluigi - model provided by Super Keeberghrh 2021-09-05 14:23:47 -07:00
MysterD
01f1615092 Player bounce improvements: jump height depends on velocity, crouching players cause a twirl 2021-09-01 18:11:01 -07:00
MysterD
628ed5b798 Resync bhv1upHiddenInPoleSpawner to prevent a sync table mismatch 2021-08-30 18:35:47 -07:00
MysterD
b0ba739a6e Fixed player-in-cutscene position/animations on late-join 2021-08-30 18:31:59 -07:00
MysterD
92692378b4 Added adjustable draw distance for objects 2021-08-30 18:22:36 -07:00
MysterD
f18007cd34 Added 30 or 60 FPS toggle 2021-08-29 20:17:38 -07:00
MysterD
d7d26639a8 Prevented controllers from clearing, fixes movement animations 2021-08-29 14:57:40 -07:00
MysterD
029e1f3a46 Fixed crash in credits 2021-08-29 14:28:46 -07:00
MysterD
1e100a52fe Fix duplicate packet hash checking 2021-08-29 13:27:16 -07:00
MysterD
f476f6b268 Bumped version to 11 2021-08-28 23:13:37 -07:00
MysterD
96288326b5 Fixed late-join for Act 1 BBH staircase 2021-08-26 18:02:07 -07:00
MysterD
67fac0b112 Made development/debug level switching immediate 2021-08-25 18:11:17 -07:00
MysterD
401e6169d5 Make packet duplication checking more intelligent by checking hashes 2021-08-25 18:05:36 -07:00
MysterD
a081327ef1 Add packet debug sync to make debugging sync ids easier 2021-08-25 18:02:30 -07:00
MysterD
d6150c0b0d Player-to-player attacks adjusted for metal marios 2021-08-23 21:48:33 -07:00
MysterD
71fb968c56 Made player-to-player attacks easier to land 2021-08-23 21:30:12 -07:00
MysterD
5e8562d194 Fixed coins-inside-boo for BBH in act 2 2021-08-23 20:16:46 -07:00
MysterD
48eb2d0ab0 Removed spawn offset from players during a same-area-warp 2021-08-23 19:47:15 -07:00
MysterD
caa38b2df5 Prevented coin sound spam when entering a level 2021-08-23 19:07:32 -07:00
MysterD
09bfe9cd0e Prevented softlock when collecting an object that is the focus of a cutscene 2021-08-23 19:03:14 -07:00
MysterD
b2849405b3 Changed all asserts in packet files to soft asserts 2021-08-23 18:58:30 -07:00
MysterD
d471a23a39 Fixed area syncing when two clients enter an area around the same time 2021-08-23 18:44:32 -07:00
MysterD
1952c42769 Fixed being unable to interact with objects when dying outside the castle 2021-08-23 18:32:55 -07:00
MysterD
b53283dbf0 SL: Prevented multiple people from sending snow mount spawns, fixed sinking animation 2021-08-23 18:11:12 -07:00
MysterD
e0cb832c21 Fixed late join sync for goomba triplets 2021-08-23 00:02:46 -07:00
MysterD
9363de073f Cached network IDs for each area to prevent area swapping from assigning a different set of sync IDs 2021-08-22 16:04:14 -07:00
MysterD
7c9b9a60d5 Bumped version to unstable 10 2021-08-21 15:56:54 -07:00
MysterD
7294e127f5 Fixed over 100 code warnings 2021-08-19 18:16:16 -07:00
MysterD
04d01667c3 Added a callback for area timer objects to only run certain things once per frame 2021-08-19 00:31:20 -07:00
MysterD
667cac9831 Rewrote the core of how the game determines how quickly it should run at
Allows vsync to be enabled regardless of the monitor's refresh rate
Automatically drops frames when it needs to
The game no longer runs fast on 144hz monitors
2021-08-18 23:50:40 -07:00
MysterD
b8e70fb46f Add range checks to model index 2021-08-18 22:58:54 -07:00
MysterD
4688ffe1f0 Added toad player character 2021-08-18 22:55:31 -07:00
MysterD
1d23f07429 Added an argument to backface culling 2021-08-18 22:52:48 -07:00
MysterD
d31eb41e7e Move character names to character struct 2021-08-18 21:51:55 -07:00
MysterD
8a40aeddea Refactored how enemies display a cap in their hand 2021-08-18 21:39:39 -07:00
MysterD
3bf9db3bbc Discord client hotfix 2021-08-16 19:29:37 -07:00
MysterD
e0815520b7 Fix client's vision of server palette 2021-08-15 13:56:11 -07:00
MysterD
1ef97584b2 Bumped version to unst 9 2021-08-15 12:55:39 -07:00
MysterD
43932249c6 Added support for spawning Luigi-versions of metal/vanish/wing cap as items 2021-08-15 11:46:28 -07:00
MysterD
efd22a81ab Added hacks for fire spitter and skeeter to prevent glitching through the floor on water level change 2021-08-14 20:17:57 -07:00
MysterD
d911c09c25 Added okey-dokey sound and transition to host menu 2021-08-14 18:45:25 -07:00
MysterD
f71cb26f64 Play menu music in main menu 2021-08-14 18:34:22 -07:00
MysterD
ee53beb10b Coin/star collection packet fixes
Added flag to send packet to everyone in the level regardless of area.
Coin collection packets now send to everyone in the level which keeps
coin counts consistent among players.
Star collection packets will no longer collect the wrong star if in a
different area than the originating player.
2021-08-14 17:53:08 -07:00
MysterD
0b88ed7cce Resynchronized racing penguin for late join 2021-08-14 12:13:55 -07:00
MysterD
ed95bd317b Resynchronized Koopa the Quick and race timers for late join 2021-08-14 11:48:15 -07:00
MysterD
b0267a5a31 Switch all malloc() calls in djui to calloc(). Possibly fixes menu bug 2021-08-14 11:03:31 -07:00
MysterD
bdabb26f81 Fix display of water droplet splashes 2021-08-12 18:53:17 -07:00
MysterD
68e04a74bc Fixed late join for items a Boo was carrying 2021-08-12 18:48:17 -07:00
MysterD
3edb08c98d Allow multiple players to interact with the same BBH cage 2021-08-12 18:18:28 -07:00
MysterD
7e59d34939 Added new MAXIMUM type to network area timer system. Exclamation boxes now reappear at the correct time 2021-08-12 18:13:41 -07:00
MysterD
383feba3b1 DJUI: Made panel movement screen-relative, always force current panel location 2021-08-12 00:15:10 -07:00
MysterD
64ab95efe1 Made inactive players drop held/heldby/ridden objects 2021-08-12 00:02:59 -07:00
MysterD
7ae2239670 Hid HUD while in main menu 2021-08-11 23:30:01 -07:00
MysterD
da31495564 Refactor player sounds, added pitch scale for player sounds 2021-08-11 23:24:53 -07:00
MysterD
142d21426d Make the join process a bit smoother 2021-08-11 00:39:11 -07:00
MysterD
0ce11ee2b1 Prevent main menu player model from corrupting while joining 2021-08-11 00:23:25 -07:00
MysterD
caf975a793 Player 'enter/leave level' popups now appear for bonus courses 2021-08-10 22:41:43 -07:00
MysterD
22121eea6b Fixed loading of certain save flags, e.g. lakitu 2021-08-10 22:25:34 -07:00
MysterD
d9ab09ee64 Critical fix to ordered packet system 2021-08-10 22:07:02 -07:00
MysterD
61ed5a774c Drop all reliable packets that are going to someone that disconnected 2021-08-10 21:06:10 -07:00
MysterD
58914e993f Prevent sending object-related packets until the area is synchronized 2021-08-10 18:46:33 -07:00
MysterD
fecba91c5e Rewrite the core of network area timer (yet again) 2021-08-10 18:29:49 -07:00
MysterD
f82b6c7ad0 1-frame smoothing of network area timer 2021-08-10 00:48:39 -07:00
MysterD
7044485431 Make clock fall back to REALTIME when MONOTONIC isn't supported 2021-08-09 23:58:28 -07:00
MysterD
d772764c4e Fixed cap-on-ground colorization behavior 2021-08-09 23:39:29 -07:00
MysterD
0c61b9fd07 Fixed crash when a hanging player was pushed off of the ceiling 2021-08-09 22:43:09 -07:00
MysterD
024ae36003 Retry Discord lobby creation on failure 5 times before giving up 2021-08-09 22:27:52 -07:00
MysterD
6f9b447468 Add null-checking to intro warp pipes 2021-08-09 22:06:51 -07:00
MysterD
5b0d4c60b3 LOGFILE_ calls now print to the terminal in DEBUG mode again 2021-08-09 00:09:44 -07:00
MysterD
fbbfcd6275 Fix compile error 2021-08-08 23:58:20 -07:00
MysterD
961723f22d Rewrote logfile API, made discord log to a file 2021-08-08 23:42:20 -07:00
MysterD
83f84fc3c0 Bumped version number to 8 2021-08-08 16:51:44 -07:00
MysterD
a5b8483100 Removed SDL2 API calls from SDL1 backend 2021-08-08 16:50:44 -07:00
MysterD
710a7e4749 Color detached caps according to player palette 2021-08-06 01:02:07 -07:00
MysterD
16fb9d3dff Add popup to inform a player when other players enter/leave the level they're in 2021-08-05 19:13:12 -07:00
MysterD
723a5cc46e Prevent transmission of player information when the player was in the main menu 2021-08-05 18:36:01 -07:00
MysterD
dafa5536a1 Move water level syncing from level packets to area packets 2021-08-05 00:40:43 -07:00
MysterD
cbb7eb419c Prevent level/area/object sync during credits sequence 2021-08-05 00:22:03 -07:00
MysterD
0d05853138 Fix ending cutscene crash and make game playable afterward without rehosting 2021-08-04 23:56:33 -07:00
MysterD
3ba77087e9 Prevent DJUI from creating and removing a panel at the same time 2021-08-04 23:55:46 -07:00
MysterD
4a3b39061f Force players in the credits sequence into the 'credits' instance 2021-08-04 13:01:59 -07:00
MysterD
8984ec3ba8 Adjust main menu cutscene and camera 2021-08-04 19:15:42 -07:00
MysterD
354146e3ac Make final Bowser star interactable for all players 2021-08-04 18:55:32 -07:00
MysterD
00da6b48f5 Fade out players when they leave/disconnect 2021-08-04 18:47:59 -07:00
MysterD
ab9056bb68 Make players invisible until their level/area can be verified 2021-08-04 18:15:46 -07:00
MysterD
7c8bddde28 Prevent capless flags from ever being set 2021-08-04 00:05:51 -07:00
MysterD
b1acd644f7 Invalidate area/level sync when unloading the area/level 2021-08-03 23:58:17 -07:00
MysterD
a2546055b2 Delay the display of the join text in star selection screen 2021-08-03 23:44:57 -07:00
MysterD
c5700825a8 Resynchronized WF tower platforms using Network Area Timer 2021-08-03 23:39:28 -07:00
MysterD
e17cba85f3 Allow host to own objects when no one else is connected 2021-08-03 23:26:51 -07:00
MysterD
f8c5fb0725 Resynchronize WF platforms using Network Area Timer 2021-08-03 23:26:32 -07:00
MysterD
6a957757d4 Refactored network area timer system 2021-08-03 19:21:50 -07:00
MysterD
a84e7a73fe Resync bomp using Network Area Timer 2021-08-03 18:52:48 -07:00
MysterD
a520b25c26 Fixed Network Area Timer system 2021-08-03 18:02:21 -07:00
MysterD
95fa0c626e Show normal mouse cursor when DJUI panels are closed 2021-08-03 00:12:16 -07:00
MysterD
33c82b7514 Capitalize palette strings 2021-08-02 23:08:00 -07:00
MysterD
f9695ca40c Copy over an ASCII version of Discord username if a username hasn't been set 2021-08-02 23:07:15 -07:00
MysterD
5625505660 Fix server-override of local player's palette 2021-08-02 23:00:03 -07:00
MysterD
726f10f231 Fixed strange desync when a player left 2021-08-02 22:57:06 -07:00
MysterD
5dba8daa4f Merge branch 'unstable' into dev/unstable 2021-08-02 22:35:37 -07:00
MysterD
d7b0945410 Added configurable player name, model, and palette 2021-08-02 22:33:38 -07:00
MysterD
4d997ba05e Fix long-standing chair crash in BBH 2021-08-02 19:45:13 -07:00
MysterD
3d067637b5 Added list of patch names to Discord's activity information 2021-08-02 19:35:32 -07:00
MysterD
68fe7af455 Chat rendering optimizations 2021-08-02 19:22:16 -07:00
MysterD
951d8e6fe7 Prevent segfault when hovering over a DJUI element 2021-08-02 18:57:19 -07:00
MysterD
44850f7b57 Switch from clock() to clock_gettime() due to implementation differences 2021-08-02 11:49:57 -07:00
MysterD
8642479d82 Fix Mac + DISCORD_SDK compilation errors 2021-08-02 02:59:45 -07:00
MysterD
f9a144b6c1 Fix segfault when comparing mods 2021-08-02 00:33:34 -07:00
MysterD
c18413ed2a Changed gDjuiFonts to an array of pointers (possible Mac compilation fix 2021-08-01 17:29:02 -07:00
MysterD
0b819c01e9 Switch from using clock() to time() for rate limiting (Linux-fix) 2021-08-01 17:04:08 -07:00
MysterD
bb4b666735 Erasing a save slot will now erase the correct slot 2021-08-01 13:45:26 -07:00
MysterD
05432c692a Updated star count on host/join 2021-08-01 13:40:31 -07:00
MysterD
7a61c61051 Fixed DJUI panels getting stuck when spamming B button 2021-08-01 13:29:21 -07:00