MysterD
e371ff272b
Revert "Fix smlua_field_valid for Lua"
...
This reverts commit 5b69173d0a
.
2022-03-21 22:43:58 -07:00
MysterD
5b69173d0a
Fix smlua_field_valid for Lua
2022-03-21 15:20:54 -07:00
MysterD
823f28acd3
Fix compile error
2022-03-21 13:02:16 -07:00
MysterD
03dcb25273
Check types for spawn object transmission
2022-03-21 12:49:37 -07:00
MysterD
a35165bd9f
Merge branch 'unstable' of github.com:sm64ex-coop-dev/sm64ex-coop into unstable
2022-03-21 12:38:25 -07:00
MysterD
0fc592a430
Made bowser bomb use extended model loading
2022-03-21 12:36:01 -07:00
MysterD
0d2f9d1e8f
Fixed crash in dist_between_objects()
2022-03-21 12:31:37 -07:00
MysterD
c088d6f7a4
Fixed crash in find_floor_from_list()
2022-03-21 12:29:30 -07:00
MysterD
a767df7e73
Fix crash in init_mario_after_warp()
2022-03-21 12:27:16 -07:00
MysterD
9ae1a7c525
Fix crash in spawn_default_star()
2022-03-21 12:25:06 -07:00
Prince Frizzy
74be5ad3d6
Swimming interference fix ( #37 )
2022-03-21 11:55:36 -07:00
MysterD
41275835e7
Lua : remember up to 16 extra fields to send on spawn lua object
2022-03-21 11:45:19 -07:00
MysterD
9538c551e4
Lua Bugfix: send tables inside of sync tables on join
2022-03-21 00:15:19 -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
Prince Frizzy
579fa40524
Some small cleanup, And re-add generating the coop.map to the Makefile. ( #36 )
2022-03-18 21:31:04 -07:00
MysterD
2758b92f41
Added sanity checking to overlapping object fields
2022-03-17 21:42:04 -07:00
MysterD
622c9b79b1
Added discord IDs to /players chat command
2022-03-17 02:15:25 -07:00
MysterD
11649ce1d8
Added HOOK_ON_OBJECT_UNLOAD, HOOK_ON_SYNC_OBJECT_UNLOAD
2022-03-17 01:43:08 -07:00
Isaac
799e1e9f81
Prevented debug binds from working with Discord ( #34 )
2022-03-17 01:20:56 -07:00
MysterD
0cd2a91e9c
Added allocate_mario_action()
2022-03-17 01:17:34 -07:00
MysterD
9c502da395
Update local networkplayer before calling level hooks
2022-03-17 00:03:57 -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
68f3203587
Allow people to disabled downloaded models (from mods)
2022-03-16 22:43:43 -07:00
MysterD
2804a48e4e
Allow lua mods to override models, have DynOS generate bins
2022-03-16 21:26:29 -07:00
MysterD
7acfede111
Fix crash with mod folders that don't have actors
2022-03-16 09:36:14 -07:00
MysterD
fee9bfebfa
Fix segfault when using defaultModsPath on Windows
2022-03-16 01:55:25 -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
bac344b9f0
Merge branch 'unstable' of github.com:sm64ex-coop-dev/sm64ex-coop into unstable
2022-03-16 01:12:03 -07:00
MysterD
41eef5fd2c
Hook DynOS into mods when they're activated (custom models)
2022-03-16 01:11:48 -07:00
Prince Frizzy
bb8ead8681
Fix star cutscene playing for everybody with Klepto plus some cleanup. ( #32 )
...
* Fix star cutscene playing for everybody with Klepto plus some cleanup.
* Fix compile error.
* Fix pyramid elevator syncing, Hopefully fix pyramid top syncing, Grand Star partial working sync.
* Fix up the Grand Star code.
2022-03-16 00:05:28 -07:00
binarylol
a50b154bdb
change "B&R" to "Raspberry" ( #33 )
...
placeholder name i forgot to change lol
2022-03-15 23:30:21 -07:00
MysterD
05232615a6
Add portability check to mod filenames
2022-03-15 23:28:46 -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
0983474429
More progress on mod table rewrite
2022-03-14 19:30:02 -07:00
MysterD
0a3d0b2033
Started rewriting the mod table
2022-03-14 18:18:14 -07:00
MysterD
edf06bede0
Added ability for mods to load custom geos
2022-03-14 00:11:36 -07:00
MysterD
0f5494d8a3
Fix indentation
2022-03-13 19:20:48 -07:00
binarylol
4123cf50f9
Add 5 New Palettes ( #31 )
2022-03-13 19:19:39 -07:00
MysterD
11f532b9e0
Fix warnings/compile errors on Linux
2022-03-13 18:45:42 -07:00
MysterD
60316c7bc9
Bump version to 21
2022-03-13 00:27:14 -08: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
9cdb95b10b
Made kick-slide have a minimum speed to attack players
2022-03-12 23:47:17 -08:00
MysterD
3ce66ac312
Added hook: HOOK_ALLOW_PVP_ATTACK, disabled friendly fire in football
2022-03-12 23:43:47 -08:00
MysterD
4b41c3fd39
Fix Mac compile
2022-03-12 22:38:13 -08:00
MysterD
08d4818ba7
Added Lua definitions for autocomplete in visual studio code
2022-03-12 21:28:57 -08:00
MysterD
065ba58388
Shorten mod names when discord activity overruns
2022-03-12 20:52:12 -08:00
MysterD
14ba6ba5ce
Fix Discord error when using a lot of mods
2022-03-12 20:41:02 -08:00
MysterD
da97153336
Fixed saving/loading of DynOS model pack settings
2022-03-12 17:00:06 -08:00
MysterD
4b0c0241e0
Fixed mod list incompatibility issue
2022-03-12 16:10:03 -08:00
Isaac
ee967c3096
Added an option to disable Popups for deaths and level exit/entry ( #20 )
2022-03-12 16:06:18 -08:00
MysterD
bf74076df8
changed default bind for 'X' to 'I'
2022-03-12 02:46:05 -08:00
MysterD
2e2f9ea7ac
Added 'non-stop' mode option for speedrunners
2022-03-12 02:41:07 -08:00
MysterD
76522ed305
Made death animations/warps a lot less janky
2022-03-12 02:12:11 -08:00
MysterD
1cfd10ea03
Synchronized Bowser's scale, fixing join-after-bowser-death
2022-03-12 00:17:59 -08:00
MysterD
a5196e9dad
Made Bowser 2 ride the platform again
2022-03-11 23:21:21 -08:00
MysterD
b0710da16a
Made mod list panel work properly again
2022-03-11 21:53:46 -08:00
MysterD
929bf2322e
Removed spawn offset when you're the only player there (speedrunners)
2022-03-11 21:43:54 -08:00
MysterD
8b377289a5
Remove unstable popup warning
2022-03-11 21:22:32 -08:00
MysterD
312c328865
Moved X/Y binds to extra controls menu, allowing C+Left/Right to reappear
2022-03-11 20:56:41 -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
1c7451fcfc
Prevent spawning objects from lua before the area is synchronized
2022-03-11 01:31:12 -08:00
MysterD
99c4498236
Added pages to mods and dynos menus
2022-03-11 00:17:20 -08:00
MysterD
b2de0ca35d
Bumped version to 20
2022-03-10 20:19:13 -08:00
MysterD
9aa7a7588d
Fixed lua event hooks sometimes attaching to the wrong mod entry
2022-03-10 20:18:54 -08:00
MysterD
e747f50f8b
Compilation fixes
2022-03-10 20:07:50 -08:00
MysterD
64173ecf2a
Merge branch 'unstable' of github.com:sm64ex-coop-dev/sm64ex-coop into unstable
2022-03-10 19:25:33 -08:00
MysterD
bc0868e80e
Implemented dynos model packs into configfile
2022-03-10 19:23:38 -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
e81808c314
Merge branch 'dynos' into unstable
2022-03-10 18:17:59 -08:00
MysterD
403a90e82b
Added dynos model packs to djui interface
2022-03-10 18:16:12 -08:00
Prince Frizzy
85c54baa96
Fix compile error! You forgot this. ( #18 )
2022-03-10 14:06:26 -08:00
MysterD
f92857704d
Ported the rest of DynOS, but left the options menu disabled
2022-03-10 01:18:53 -08:00
Prince Frizzy
a9aeb50e76
Crash Fixes - Sanity Checks And Cleanup. ( #17 )
...
* Add NULL check to try_allocate_object.
* Clean up spawn_object.c
2022-03-09 23:22:58 -08:00
MysterD
89d44f6501
Moved smlua_XXX_utils.[ch] to src/pc/lua/utils/
2022-03-09 23:09:33 -08:00
MysterD
4638ff6f22
Added the ability to set surface collisions on custom behaviors
2022-03-09 23:02:20 -08:00
MysterD
9388aa8885
Show last lua mod to run in crash handler
2022-03-09 21:27:02 -08:00
MysterD
8802642296
Prevent long jump and side flip from PVP attacking
2022-03-09 21:26:51 -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
f59513f3ae
Refactored config-file options w/multiple entries
2022-03-09 21:24:49 -08:00
Isaac
355094c6ff
Add reset_level to lua api ( #16 )
2022-03-09 21:24:39 -08:00
MysterD
5a46c5bc2f
Fix warning on Linux
2022-03-09 21:24:39 -08:00
MysterD
3652a8d079
Fix problem where reliable packets were only reliable for one client instead of all
2022-03-09 21:24:39 -08:00
MysterD
4305b595c9
Fixed crash when spawning a custom behavior that doesn't override fomr Lua
2022-03-09 21:24:39 -08:00
MysterD
4dfa0ee669
Make debug binds harder to hit
2022-03-09 21:24:39 -08:00
Prince Frizzy
cdf12fb3c9
Fix two crashes. ( #15 )
2022-03-09 21:24:39 -08:00
MysterD
b3ed387711
Added DynOS v1.1 without the dynamic options
...
- Added support for coop-specific actors
- Added support for coop-specific geo functions
- Added support for coop-specific model functions
2022-03-09 18:01:03 -08:00
MysterD
5e0981824a
Merge branch 'unstable' of github.com:sm64ex-coop-dev/sm64ex-coop into unstable-dev
2022-03-08 21:42:15 -08:00
MysterD
f07353f94d
Fix warning on Linux
2022-03-08 20:06:45 -08:00
MysterD
180fe3a8a0
Fix problem where reliable packets were only reliable for one client instead of all
2022-03-08 18:17:24 -08:00
MysterD
7a5a91007c
Fixed crash when spawning a custom behavior that doesn't override fomr Lua
2022-03-08 00:50:15 -08:00
MysterD
379b51e384
Make debug binds harder to hit
2022-03-07 22:36:27 -08:00
MysterD
5fa3e27aa6
Merge branch 'unstable' of github.com:sm64ex-coop-dev/sm64ex-coop into unstable-dev
2022-03-07 22:23:25 -08:00
MysterD
594202dde9
Allow network_init_object() to use fields that don't start with o
2022-03-07 22:20:53 -08:00
Prince Frizzy
3b35912305
Fix two crashes. ( #15 )
2022-03-06 19:14:22 -08:00
MysterD
b99c5f939f
Merge branch 'unstable' of github.com:sm64ex-coop-dev/sm64ex-coop into unstable-dev
2022-03-05 18:10:35 -08:00
MysterD
7aab694743
Add more vec3f functions to Lua
2022-03-05 18:10:20 -08:00
Amy54Desu
b97834a03e
This should solve the problem where players can reset the drowning animation under water. ( #13 )
...
This solves the issues where punching someone under water resets their drowning animation. This is done by setting their invincibility timer to 2. I chose 2 so they don't begin flashing since that would look weird.
2022-03-05 15:09:35 -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
369a7cd7e5
Better fix for crash in cur_obj_follow_path()
2022-03-05 14:38:17 -08:00
MysterD
202bd1964c
Revert "Fixed crash in cur_obj_follow_path()"
...
This reverts commit 394d1970c5
.
2022-03-05 14:25:17 -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
d3b9163507
Add missing AreaTimerType to documentation
2022-03-04 22:31:32 -08:00
MysterD
e740529776
Fixed how constants.md autogen'd links
2022-03-04 22:11:10 -08:00
MysterD
1fcf776e34
Enforce limits in player settings packet to prevent possible crash
2022-03-04 21:33:29 -08:00
MysterD
a924f7977b
Resynchronized platform_on_track to prevent crash
2022-03-04 21:25:45 -08:00
MysterD
394d1970c5
Fixed crash in cur_obj_follow_path()
2022-03-04 20:47:43 -08:00
MysterD
15d657a7be
Fix crash in set_anim_to_frame()
2022-03-04 20:40:57 -08:00
MysterD
29d9615f7b
More sanity checks in network_receive_area()
2022-03-04 20:29:05 -08:00
MysterD
77a06e15b3
Merge branch 'unstable' of github.com:sm64ex-coop-dev/sm64ex-coop into unstable-dev
2022-03-04 20:09:13 -08:00
Prince Frizzy
6f911738cf
Adds some sanity checks to network_receive_area, And add LOG_DEBUG ( #10 )
2022-03-04 20:07:35 -08:00
MysterD
a87116a632
Add networking for custom behaviors
2022-03-04 20:03:00 -08:00
MysterD
9c7036afe3
Add define_custom_obj_fields() to Lua
2022-03-04 18:16:54 -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
e27acaff99
Improvements to crash screen
2022-03-03 19:40:18 -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
6783ef0b7f
Fix Discord activity display
2022-03-02 18:25:53 -08:00
MysterD
92b5893871
Raised Lua size limit from 64KB to 2MB
2022-03-02 00:40:53 -08:00
MysterD
822cc4a4a9
More adjustments
2022-03-02 00:11:34 -08:00
MysterD
7a4505e353
Spoofing adjustments
2022-03-02 00:07:41 -08:00
MysterD
8bfadc95f1
Add anti-spoofing
2022-03-02 00:01:41 -08:00
MysterD
a1dbd4b268
Switch behavior ID length from 16bit to 32bit
2022-03-01 22:55:40 -08:00
MysterD
07cbeb119c
Fixed more possible bugs pointed out by cppcheck
2022-03-01 21:13:00 -08:00
MysterD
637f17a8ac
Merge branch 'unstable' of github.com:sm64ex-coop-dev/sm64ex-coop into unstable
2022-03-01 20:32:39 -08:00
MysterD
d51c82e235
Fixed many bugs pointed out by cppcheck
2022-03-01 20:32:33 -08:00
Isaac
9fc838f6d3
Added init_mario_after_warp() to lua API if there is only 1 player ( #7 )
2022-03-01 18:54:42 -08:00
Prince Frizzy
f0c807f5b8
Fix Merry-Go-Round Boos not having their blue coins to drop. ( #8 )
2022-03-01 18:35:47 -08:00
MysterD
ecc33286ad
Ran autogen
2022-03-01 12:06:06 -08:00
MysterD
555d10433b
Merge branch 'unstable' of github.com:sm64ex-coop-dev/sm64ex-coop into unstable-dev
2022-03-01 12:00:47 -08:00
MysterD
8d5ab43f66
Possible crash fix
2022-03-01 18:02:54 -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
fdff27b8cd
Merge branch 'unstable' of github.com:sm64ex-coop-dev/sm64ex-coop into unstable-dev
2022-02-27 01:30:01 -08:00
Isaac
1774544896
Prevented the game from closing when Discord has an error ( #4 )
...
* Update discord.c
* Update discord.c
2022-02-27 01:29:32 -08:00
MysterD
0ddb59c87c
Fix crash in djui_interactable_update
2022-02-27 01:23:35 -08:00
MysterD
c60f9f3e46
Prevent crash in anim_spline_poll
2022-02-27 01:05:36 -08:00
MysterD
0f86018bfe
Fixed crash in configfile_save
2022-02-27 01:02:32 -08:00
MysterD
a35d759a46
Fix crash when surfaces fail to allocate
2022-02-27 00:53:58 -08:00
MysterD
e16f3eb075
Fix blue coin in boo value
2022-02-26 21:30:26 -08:00
MysterD
f92c956ea2
Fix exclamation box outline
2022-02-26 21:28:55 -08:00
MysterD
0ea1eec2ed
Revert "Prevent multiple star cutscenes from causing a rare softlock"
...
This reverts commit ebcaddede4
.
2022-02-26 18:21:21 -08:00
MysterD
32d62272b4
Merge branch 'unstable' of github.com:djoslin0/sm64ex-coop into unstable
2022-02-26 16:49:30 -08:00
SonicDarkYT
9cf1061d59
More Color Palettes ( #137 )
...
* Update pc_main.c
* Update mario_misc.c
* Update djui_panel_player.c
2022-02-26 16:49:24 -08:00
MysterD
ca8d0b9c9c
Add Amy to credits
2022-02-26 16:30:51 -08:00
MysterD
f4e1647257
Merge branch 'unstable' of github.com:sm64ex-coop-dev/sm64ex-coop into unstable-dev
2022-02-26 16:30:27 -08:00
Prince Frizzy
169cd9fa44
Revise this fix in mario_actions_automatic.c
...
Have Mario drop off the pole if it doesn't exist instead of just returning POLE_NONE.
2022-02-26 16:30:07 -08:00
Prince Frizzy
0fc5f0d768
Proper NULL check for this in water_ring.c
...
The water ring index should NOT increment if a water ring fails to spawn.
2022-02-26 16:30:07 -08:00
MysterD
8fd349e5b1
Merge branch 'unstable' into unstable-dev
2022-02-26 16:12:33 -08:00
Amy54Desu
a83ce7d946
Settable Player Limit ( #135 )
...
Allow a configurable maximum number of players
2022-02-26 16:11:50 -08:00
MysterD
57cfc22840
Bump version to 18
2022-02-26 15:58:39 -08:00
MysterD
d3b4e1c794
Made certain objects use their dynamically assigned model IDs
2022-02-26 02:14:30 -08:00
Beyley Thomas
bb343f9ba2
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-26 00:07:12 -08:00
MysterD
0c4a2c99f0
Update credits
2022-02-26 00:01:40 -08:00
MysterD
1c36ea979f
Fix crash on invalid domain
2022-02-25 22:58:14 -08:00
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
MysterD
a2bb578dbf
Made the 'R Button - Options' text only appear on pause
2021-08-01 13:26:57 -07:00
MysterD
3085b9b749
Changed popup sound
2021-08-01 13:20:22 -07:00
MysterD
aedba38ca5
Made DJUI no longer take priority over arrowkey/enter binds when no panel is active
2021-08-01 13:18:22 -07:00
MysterD
caa13fb69f
Made configfile save on quit button press, panel close, options menu close
2021-08-01 10:53:29 -07:00
MysterD
da13828509
Made rumble strength and deadzone settings apply instantly
2021-08-01 10:44:50 -07:00
MysterD
97d353c7aa
Fixed typo 'play intro cutscene' -> 'skip intro cutscene'
2021-08-01 10:37:51 -07:00
MysterD
26720f9c47
Made camera settings apply instantly
2021-08-01 10:36:50 -07:00
MysterD
1917c6231b
Changing controller/keyboard binds will now apply immediately
2021-08-01 10:23:33 -07:00
MysterD
cd913345ca
Fix spacebar in chat
2021-08-01 10:12:18 -07:00
MysterD
922499dada
Adjusted where selectionbox is defined
2021-07-31 20:53:11 -07:00
MysterD
2580e6a681
Bumped version number to unst 7
2021-07-31 17:27:41 -07:00
MysterD
9699d79dd7
Fix Discord connections on unstable
2021-07-31 17:24:13 -07:00
MysterD
7757a69145
Briefly forgot how IP addresses worked
2021-07-31 03:18:00 -07:00
MysterD
0b3f363130
DJUI: Ignore garbage text inputs if there are no valid characters
2021-07-31 03:02:30 -07:00
MysterD
98b7dba74b
DJUI: Added mouse support to DX11/DX12
2021-07-31 02:30:10 -07:00
MysterD
661f2c28dc
Readded player died popup
2021-07-30 19:37:20 -07:00
MysterD
3ee3f3e5bd
Added simple rate limiting of packets
2021-07-30 19:33:09 -07:00
MysterD
033a9aa1a8
Hide other players in main menu
2021-07-30 18:47:09 -07:00
MysterD
1845f8aaaf
DJUI: Resize HUD scale based on window resolution
2021-07-30 18:41:49 -07:00
MysterD
d615dcfbce
DJUI: Added sounds to popups
2021-07-30 18:22:32 -07:00
MysterD
4e0a3e3e57
Merge branch 'dev/djui' into dev/unstable
2021-07-22 20:38:21 -07:00
MysterD
1ddb27d1ad
DJUI: Default menus to keyboard/gamepad controls
2021-07-21 00:58:19 -07:00
MysterD
64648a8ce3
DJUI: Reimplemented chat
2021-07-21 00:53:28 -07:00
MysterD
321e101b30
Made cheats server-setting, created cheat menu
2021-07-16 18:43:21 -07:00
MysterD
6ad96d5e69
Removed luigi sound config
2021-07-16 18:12:56 -07:00
MysterD
7e1a05a40b
DJUI: Replaced old ingame menu with new DJUI menu
2021-07-15 19:37:09 -07:00
MysterD
c0ec2caac1
DJUI: Made cursor hover location control-configurable
2021-07-15 18:47:19 -07:00
MysterD
a89dd55081
Added knockback strength to host setting menu
2021-07-15 18:33:27 -07:00
MysterD
f44d8ffc4c
DJUI: pressing B or escape will go back one menu
2021-07-15 18:11:37 -07:00
MysterD
3d0d87a4eb
DJUI: Made cursor movement more predictable
2021-07-14 19:25:39 -07:00
MysterD
b0453da5e4
DJUI: Changed quit menu into confirm menu, confirmed save erase
2021-07-14 19:14:07 -07:00
MysterD
28d63b2c87
Added save file selection to host menu
2021-07-14 18:58:52 -07:00
MysterD
f51f60ba24
Prevent the ability to host when Discord failed to initialize
2021-07-12 20:18:15 -07:00
MysterD
3395ba26f4
Added host port inputbox to host menu
2021-07-12 20:06:51 -07:00
MysterD
46f905f4a3
DJUI: Created popup system, re-added missing popup messages
2021-07-12 18:29:39 -07:00
MysterD
4fb951c0bf
Fix commandline params for client/server
2021-07-11 02:04:26 -07:00
MysterD
ec2f07f20d
DJUI: Made join IP inputbox work correctly
2021-07-11 01:21:56 -07:00
MysterD
5c4677ca77
Added a join message screen
...
Displays an animation while joining
Shows version mismatch error in join message screen
Shows mod mismatch error in join message screen (displays mismatching mods now)
Displays party is full / host closed connection in join message screen
Added string builder
2021-07-10 22:30:58 -07:00
MysterD
13d504a953
Replaced old host/join menu with new DJUI menu system
2021-07-04 22:40:04 -07:00
MysterD
733217a07a
Removed old custom menu system
2021-07-01 21:27:57 -07:00
MysterD
58eec0e19f
Removed old chat system
2021-07-01 21:14:11 -07:00
MysterD
1b1ed0038f
DJUI: Added join panel
2021-07-01 21:03:14 -07:00
MysterD
b4418bbd4f
DJUI: Made inputbox usable
...
Added keyboard support to inputbox
Fixed how inputbox text is clipped
Added on_enter_press callback for inputbox
Added ability to set clipboard text
Adjusted how components can be focused, and when they lose focus
Erased most of the text input stuff in controller_keyboard
Disabled major parts of old chat system
Disabled major parts of old menu system
2021-07-01 20:03:54 -07:00
MysterD
e424b9f9f3
DJUI: Started adding inputbox
2021-06-29 19:04:23 -07:00
MysterD
df20408a93
DJUI: Added button style for back button
2021-06-28 18:25:06 -07:00
MysterD
fc1db575bd
DJUI: Make cursor movement more predictable
2021-06-28 18:15:59 -07:00
MysterD
2a4817b29b
DJUI: Adjusted normal font, added missing characters
2021-06-28 18:08:24 -07:00
MysterD
8f5f94f0c7
DJUI: Removed unimplemented Player menu
2021-06-28 00:07:07 -07:00
MysterD
8b7ab3c35c
DJUI: Added host menu
...
Added host message menu
Refactored how panel menus are constructed
Adjusted normal font's line height
Adjusted how text boxes detect max lines
2021-06-28 00:04:48 -07:00
MysterD
4504b2c21b
DJUI: Added controls menu
2021-06-27 15:54:10 -07:00
MysterD
a6c204e1cf
Fixed how players compare their area numbers
2021-06-27 00:40:30 -07:00
MysterD
ad3ee677c6
Fixed cannons, possible fix to star unlocks
2021-06-27 00:33:31 -07:00
MysterD
59eef70183
Prevent player-to-player interactions from messing up other ones
2021-06-26 21:51:00 -07:00
MysterD
974d9b52cf
Prevented initial level dialog from appearing twice
2021-06-26 20:36:18 -07:00
MysterD
3625ad8883
Made clients send keep-alive packets again
2021-06-26 20:25:38 -07:00
MysterD
6c687a5a73
Prevent walking through warp doors
2021-06-26 20:20:19 -07:00
MysterD
b7795fd9d1
Prevent packet_save_set_flag from looping
2021-06-26 16:54:43 -07:00
MysterD
e85e6b9983
Bumped version to unst 6
2021-06-26 15:29:59 -07:00
MysterD
f13b7990a0
More networking adjustments
...
Adjusted when a join request is sent, and who it is sent to
Adjusted default course/act/level/area for new players
Added a sequence id to level area inform
Adjusted reliable packets to be sent half as frequently
2021-06-26 15:28:51 -07:00
MysterD
8b403d4509
DJUI: Added selectionbox
2021-06-26 14:20:39 -07:00
MysterD
1e4acef2e0
DJUI: Added checkbox and camera panel
2021-06-25 23:03:38 -07:00
MysterD
bf54a305d4
Hide cursor regardless of window mode
2021-06-25 15:56:28 -07:00
MysterD
28ce5e9cdf
DJUI: Added sliders, made Sound menu work
2021-06-25 15:50:31 -07:00
MysterD
05c32ea73e
DJUI: Wrote active panel system
2021-06-24 18:15:59 -07:00
MysterD
5131665be2
DJUI: Added 'Three Panel' component
2021-06-23 19:17:46 -07:00
MysterD
56a6532d9c
DJUI: Improved keyboard/gamepad input
2021-06-22 21:35:55 -07:00
MysterD
580f19dcc9
DJUI: Added keyboard/gamepad support
2021-06-22 20:01:16 -07:00
MysterD
a3947b3800
DJUI: started adding options menu
2021-06-22 00:13:37 -07:00
MysterD
dfef74e727
Added custom title font
...
Adjusted text system to have multiple fonts
Added color escape to text
2021-06-21 21:18:27 -07:00
MysterD
7aec232450
Added quit menu
...
create enabled switch to disable interactables
fixed djui_base_destroy()
added on_click() event
2021-06-21 03:11:53 -07:00
MysterD
c0b093b11f
DJUI: Created main menu panel
...
Added ability to make a DjuiBase keep its aspect ration
Added on_render_pre callback
Added ability to display 32b images
Added DjuiFlowLayout
Added logo
2021-06-20 23:34:14 -07:00
MysterD
99308a3145
Many small adjustments to networking code
...
In an attempt to track down an issue that causes packet flooding and
hanging, I've looked at every step of the networking process and tried
to clean up anything strange I saw.
2021-06-20 04:36:33 -07:00
MysterD
ac85a7e4a7
Re-disable Discord until issues are sorted
2021-06-20 00:49:52 -07:00
MysterD
3eef4076b9
Possibly fixed Discord issues
2021-06-19 21:59:06 -07:00
MysterD
5e6eb8e833
DJUI: Added interactable mousedown events
2021-06-19 19:50:59 -07:00
MysterD
6e23c952f9
DJUI: Rendering, interactable, and mouse adjustments
...
Made DJUI render at 60 fps
Added mouse cursor and hooks in SDL for capturing the window-relative mouse position
Started creating an interable system where elements can respond to events such as on_mouse_hover
2021-06-19 18:22:44 -07:00
MysterD
63e9621d56
DJUI: Added drop shadow to text
2021-06-19 01:21:25 -07:00
MysterD
b80cc50cd0
DJUI: Added padding to DjuiBase
2021-06-19 01:10:24 -07:00
MysterD
f27a6b2469
DJUI: Added borders to DjuiBase
2021-06-18 18:53:41 -07:00
MysterD
368157fbcd
DJUI: added ability for x/y/w/h values to be relative to parent's size
2021-06-18 16:16:41 -07:00
MysterD
038c1135b3
Initial DJUI commit
...
The birth of a custom user interface system.
Has the ability to draw things to the screen at native resolution
regardless of window size.
Components can be nested within one another to an arbitrary depth.
Text rendering is completely rewritten.
Text and images can be clipped by their parent container.
2021-06-18 15:23:59 -07:00
MysterD
52d07c4dde
Bump version number to 5
2021-06-15 21:27:59 -07:00
MysterD
939318041e
Bowser, cannon door, and eyerok no longer require server to be in level
...
All have been switched from being owned by the server to being owned by
the player with the lowest global ID in the level.
2021-06-15 21:04:51 -07:00
MysterD
f60b861d73
BBH bookshelf manager no longer requires the server to be in BBH
...
Instead of only allowing the server to update the bookshelf manager, allow the
lowest global ID player to update it.
2021-06-15 21:01:28 -07:00
MysterD
4c401f9ba8
Resynchronized DDD poles to use area timer system
2021-06-15 18:01:03 -07:00
MysterD
4396381d60
Change unstable build disclaimer
2021-06-15 00:20:29 -07:00
MysterD
15f8b12770
Fixed Discord packet system for >2 players
2021-06-15 00:15:03 -07:00
MysterD
10e8af83ba
Fixed how Linux registers the discord executable
2021-06-14 23:31:22 -07:00
MysterD
0c459294bb
Fixed the merry go round in BBH
...
Fixed releasing of sync objects that otherwise don't sync their death events
Fixed using/releasing reserved objects in an area that the server isn't in
2021-06-14 21:06:07 -07:00
MysterD
ef2287a5d5
Resynchronized checkerboard elevators to use area timer
2021-06-14 20:29:08 -07:00
MysterD
e7d0f8ec8b
Resynchronized LLL puzzle pieces
...
Created a timer based on area that is shared. The puzzle pieces will
execute rapidly to catch up to the timer on level join. This keeps them
in sync without constantly needing to acknowledge that a puzzle piece
had moved before continuing.
2021-06-14 20:14:47 -07:00
MysterD
6aded174e9
Synchronized moat draining and cap switch unlocks
2021-06-14 19:59:11 -07:00
MysterD
02fbdca868
Fix bowser key unlock sync
2021-06-14 19:21:47 -07:00
MysterD
8e52960cf7
Added indication of which players are in which acts
2021-06-14 19:11:26 -07:00
MysterD
361a57edb6
Instance levels based on which star was selected
...
Previously the levels were instanced based on "act" which is a concept
that is invisible and unintuitive to the user.
2021-06-14 18:25:24 -07:00
MysterD
cd48d177b0
Additional synchronization + misc fixes
...
Prevented crash that happened when an upstairs painting was entered
Synchronized TTC speed setting
Synchronized WDW water level on late join
Player packets no longer broadcasted to clients in a different location
2021-06-14 18:13:58 -07:00
MysterD
b1ac0c9f7f
Adjusted how "static" sync entities are removed
...
No longer needs hacky stuff like relying on the macro for goomba triplet removal.
Instead we simply keep a list of sync ids of objects that were removed (but were
around at the start of level loading)
2021-06-13 19:00:55 -07:00
MysterD
3ab1b0b4b5
Synchronized red coin count on join.
2021-06-13 18:32:35 -07:00
MysterD
518a1fda4b
Server makes sure the client can receive the packet before sending/tunnelling
2021-06-13 17:57:54 -07:00
MysterD
59d08a90b9
Fixed how "levelAreaMustMatch" packets are sent/processed
...
Instead of the server dropping them immediately, the server only drops the processing. This allows it to broadcast/send the packet to the correct client without the server processing it.
Fixed how "static" level objects were detected. The old way was error prone and would consider spawned objects to be static anyway.
Made ERROR_LOGs always show up, "disabling" logging only turns off INFO_LOGs now.
2021-06-13 17:47:58 -07:00
MysterD
7ae26b3ea0
Complete rewrite of entity ID reservation system
...
Now "syncId"s can only be reserved at ID 127+. This ensures that static level
objects and spawned reserved objects never clash. The server keeps track of
every player's list of reserved IDs, as well as when an ID is used, or when
an entity using that ID is destroyed. This is much more complicated than it
used to be, but this complication is required due to players being allowed to
be in different areas of the game.
2021-06-13 16:04:28 -07:00
MysterD
fde6eaf0a3
Added ordered packet system
...
Now packets can be grouped up and sent separately, but still be processed
sequentially regardless of how much they get scrambled over the network.
If a packet group isn't received for 15 seconds, all unprocessed packets
in that group will be dropped. Packet ordering is required for level and
area synchronization information when someone joins the level late.
2021-06-11 19:37:32 -07:00
MysterD
b6959dc7ea
Informed players of ent deletions in a different area (but same level)
...
Added packet_level_respawn_info to inform the players of entity
deletions in a different area of the same level. Currently it's
massively noisy due to sending out a new packet for each entity
destroyed. This can cause chaos when collecting a series of coins.
Ideally this information would be batched and sent in one big blob every
so often.
2021-06-11 16:19:24 -07:00
MysterD
6bfdcbcb7b
Complete rewrite of level-change/area-change system
...
Now level changes and area changes are separated. Entity deletions are
properly tracked on level change or area change. Late entity
synchronization is now triggered on any area change.
2021-06-11 14:39:25 -07:00
MysterD
0b3a97d405
Improvements to late-join synchronization
...
Removed (slightly) old coin and static ent removal system
Resynchronized respawners
Added packet for macro deletions
better than previous system since the entities don't need a sync id and we can synchronize deletion station across areas
allows the synchronization of odd entities like lines of coins
Added packet for spawn info deletions
Split packet_location_request into multiple files
2021-06-09 22:35:34 -07:00
MysterD
6e7c542068
Synchronized race timers
2021-06-08 22:05:12 -07:00
MysterD
33fbed94e4
Synchronized respawners and entities created after level load
2021-06-08 21:21:52 -07:00
MysterD
5db1a9e827
Synchronize late-join coin collection
2021-06-08 02:26:35 -07:00
MysterD
4be00a2eb1
Late-join synchronized chain chomp and exclamation box
2021-06-08 01:29:21 -07:00
MysterD
050d940d53
Added ability for clients to send packets to each other skipping server
...
Added memory of last reliable packet about each sync object
2021-06-07 23:12:17 -07:00
MysterD
e593bedc77
Keep track of static level spawn removals and sync them on location response
2021-06-07 19:25:31 -07:00
MysterD
bbdc942501
Ripped out level synchronization/warp code
...
Began writing new system that synchronizes course/act/level/area per
player and 'ownership' of that location.
2021-06-07 12:19:59 -07:00
fgsfds
b12bf38abd
sync with stable
2021-04-06 22:56:08 +03:00
fgsfds
4ba30ebd9e
windows: bump SO_SNDBUF size when playing with >4 players
2021-04-06 18:09:07 +03:00
fgsfds
abd3a0a130
add more player colors
2021-04-06 18:08:41 +03:00
fgsfds
10c63a1706
bump unstable version number
2021-04-06 02:30:54 +03:00
fgsfds
511b1352b8
colorize chat messages with player color
2021-04-06 02:30:37 +03:00
fgsfds
109e713689
implement changeable model colors
...
in a very dumb way:
the custom colors are set for lights 3, 4, 5, 6 in a GEO_ASM callback, then copied to lights 1, 2 using gsSPCopyLightEXT
2021-04-06 00:22:42 +03:00
fgsfds
798389b527
added new GBI command: G_COPYMEM
...
exclusively for copying lights around for now; required for my retarded model color implementation
2021-04-06 00:18:04 +03:00
fgsfds
d4cdd89683
everyone except host is luigi
2021-04-05 04:21:23 +03:00
fgsfds
8f4965e05d
partially fix jitter with two of the same model
2021-04-05 04:21:14 +03:00
fgsfds
843a8cd18f
djoslin0's new warp code
2021-04-05 03:21:37 +03:00
Avery
b68d5b107a
make discord max party size equal to MAX_PLAYERS
2021-03-06 21:07:55 -08:00
MysterD
dd90132145
Whoops, actual release
2020-10-18 22:24:37 -07:00
MysterD
a0b5f28b38
Beta 2 release
2020-10-18 22:21:25 -07:00
MysterD
c0652f8a48
Allocate the correct number of controllers on stable branch
2020-10-18 22:15:52 -07:00
MysterD
281e45051b
Prevent racing penguin crash when one player cheats
...
Fixes #87
2020-10-18 18:21:19 -07:00
MysterD
f88aee251e
Keep BETTERCAM/bubbled players within the minimum Y bounds of levels
...
Players/cameras were able to clip inside of island-like levels
previously. I have hardcoded sane minimum Y values for the following
courses: WF, CCM, PSS, BITDW, TTM, RR, BITS
2020-10-18 11:57:45 -07:00
MysterD
4cb49d3946
Misc sync fixes to various enemies
...
Considered nearest player for various things within the following
entities that I missed the first time around: cloud, koopa, monty mole,
moving coin, piranha bubbles, scuttlebug, shock wave, spindrift.
2020-10-17 23:58:24 -07:00
MysterD
cbf8505516
Misc fixes to bub
2020-10-17 23:43:29 -07:00
MysterD
f4263deea9
Fix wiggler softlock and intangibility
2020-10-17 23:38:32 -07:00
MysterD
98cc31d6cb
Do not consider inactive players when bubbled
2020-10-17 23:27:34 -07:00
MysterD
eea5ebb94b
Fixed command-line launch segfault
...
custom_menu_destroy() was causing a segfault when launching the game via
command-line parameters
2020-10-17 23:04:59 -07:00
MysterD
2519c59958
Merge branch 'unstable' of https://github.com/djoslin0/sm64ex-coop into unstable
2020-10-16 23:37:01 -07:00
Victor Diego Alejandro Diaz Urbaneja
26928ac6f5
overlay error ( #88 )
...
* overlay error
fixed compilation error
* Update custom_menu_system.c
Co-authored-by: djoslin0 <djoslin0@users.noreply.github.com>
2020-10-16 23:36:31 -07:00
MysterD
615c19be6f
branch 'unstable' of https://github.com/djoslin0/sm64ex-coop into unstable
2020-10-16 23:33:47 -07:00