Commit Graph

1001 Commits (39e969e514822d3f162752a25eff25c489d23130)

Author SHA1 Message Date
MysterD 12652330f8 Fix Linux build 2020-09-12 19:27:25 -07:00
MysterD cf50e65ab9 Abstracted all socket code behind a NetworkSystem
In preparation for other forms of communication, I have abstracted all
of the socket code (which needs direct connections) behind a struct
whose calls can be swapped out for other systems if desired.
2020-09-12 17:56:42 -07:00
MysterD 2d2303a35b Fixed softlocks when one player runs out of lives, or death by lava
Also bubbles player when falling into quicksand

Fixes #36
2020-09-12 14:32:50 -07:00
MysterD dc3914ef09 Hacky workaround for BBH camera bug
One specific door didn't reset the vanilla camera when rushing through
an open door.

Fixes #48
2020-09-11 23:48:27 -07:00
MysterD 4f919f0aaf Prevented bubbled players from triggering level warps
Fixes #41
2020-09-11 22:58:34 -07:00
MysterD e2f70d4d42 Added Luigi's face in place of 'Mario Cam'
Fixes #42
2020-09-11 22:36:29 -07:00
MysterD 8517419430 Fix first-person camera lock bug
Getting kicked in vanilla-cam's first person messed up the camera, this
fixes it.
Fixes #55
2020-09-11 22:32:32 -07:00
MysterD 8ebd8e99fe Fix PSS's secret star collection
Fixes #56
2020-09-11 22:25:49 -07:00
MysterD 52e07ecd49 Prevent two players from holding the same object
Fixes #40
2020-09-11 22:14:42 -07:00
MysterD dc9eba85b9 Added debug level-warping for testing purposes 2020-09-11 20:10:29 -07:00
MysterD aa46ed8ae9 Fix new level transition synchronization softlock 2020-09-11 18:30:34 -07:00
MysterD ea4575194a Revert "Revert "More level transition synchronization rewrites""
This reverts commit a06761ad10.
2020-09-11 18:08:24 -07:00
MysterD a06761ad10 Revert "More level transition synchronization rewrites"
New synchronization caused a softlock on new-level-dialogs

This reverts commit 9db9e6f42d.
2020-09-11 18:02:21 -07:00
MysterD 33d52ef31d Added version checking to clients 2020-09-11 16:19:38 -07:00
MysterD 9db9e6f42d More level transition synchronization rewrites
I believe this fixes #51
2020-09-11 15:32:30 -07:00
MysterD f987521a40 Properly offset player spawns 2020-09-10 22:18:10 -07:00
MysterD 7025183317 Fixed infinite hold by King Bobomb softlock
fixes #38
2020-09-10 21:55:03 -07:00
MysterD a1d21a9602 Fix King Bobomb dialog softlock
Fixes #45
2020-09-10 21:26:17 -07:00
MysterD 975f78cc5e Fix coffin crushing softlock
Fixes #47
2020-09-10 20:26:02 -07:00
MysterD 5146308ba6 Keep player control of camera for chain-chomp cutscene
Fixes #54
2020-09-10 20:02:16 -07:00
MysterD 86c9bbf672 Fixed small crimes against C 2020-09-10 09:43:32 -07:00
MysterD 3102c93d34 Completely rewrote level transition synchronization code
Should be snappier and less prone to crashes. I tested as many scenarios
as I could think of and it has been rock solid. But time will tell.

Also created a new debug log system, just so I could understand what the
hell was going on with this code.
2020-09-10 00:17:30 -07:00
MysterD 0a136e9a51 Added 'no lives remaining' text 2020-09-08 18:21:09 -07:00
MysterD c90323b6c9 Changed text on level select screen 2020-09-08 17:33:03 -07:00
MysterD 6b5dce5755 Eject a player if more than one is in the cannon
Two players in the same cannon was causing softlocks and general
insanity. Now this should be fixed. Also prevented players from being
able to push or attack a player inside of a cannon.
2020-09-08 16:12:11 -07:00
MysterD 75b5b98963 Lowered cannon sensitivity 2020-09-08 15:13:49 -07:00
MysterD ca9e0da2a1 Prevent ground pound from attacking until they're moving downward 2020-09-08 15:01:31 -07:00
MysterD f0f5b5f10a Lower knockback for anything stronger than a kick 2020-09-08 14:57:50 -07:00
MysterD 93d69a0373 Players sliding in the same direction will no longer attack each other
We check to see what the difference in velocities is, if it's small then
no attack is made. Otherwise, only the player going faster will attack.
2020-09-08 14:43:07 -07:00
MysterD 7171c5f499 Prevent underwater bubble-popping from teleporting the player to the top 2020-09-08 14:03:12 -07:00
MysterD 9bbacb90f7 Prevent extra death for bubbled player on area change 2020-09-08 13:53:46 -07:00
MysterD c9db255ac6 Completely disable text saves until they're synchronized 2020-09-08 13:34:35 -07:00
MysterD 4b03c93e65 Added custom luigi head sprite by air 2020-09-08 12:17:24 -07:00
MysterD 2771c1be7c Allow exiting from course at any time 2020-09-08 09:52:48 -07:00
MysterD c619d61193 Make inside-and-outside painting transition quicker over network 2020-09-08 09:50:34 -07:00
MysterD c8a8a3fd53 Fixed glitchy animations on remote when in dialog 2020-09-08 09:33:55 -07:00
MysterD bd63cf07f5 Unagi: prevent sending a pointer, hopefully doesn't cause desync 2020-09-08 09:16:44 -07:00
MysterD f78581c449 Racing Penguin: remove airborn check, fix end of race desync 2020-09-08 09:15:43 -07:00
MysterD 14a2e95c09 Fix koopa the quick sound spam and cheat detection 2020-09-08 09:06:25 -07:00
MysterD bd3aeb3d7b Synchronized star entity interaction
Fixed error in packet_collect_star which would prevent the star from
disappearing when it should on remote.
2020-09-08 09:01:35 -07:00
MysterD 821c1ccb18 Added stay-in-level-after-star server-side setting.
Configurable in the server's config file under:
coop_stay_in_level_after_star

Defaults to off

Based on GateGuy's patch
2020-09-08 00:04:06 -07:00
MysterD 8b23a8e0e2 Prevent exclamation box from spawning the wrong star on remote 2020-09-07 23:56:29 -07:00
MysterD 197d9c93ff Prevent exclamation box from double spawning stars 2020-09-07 23:10:28 -07:00
MysterD 3387347d65 Make send_spawn_objects more reliable
As noticed by anuserlol, stars would sometimes not spawn from breakable
boxes on the remote. This was due to the box being destroyed before the
star spawned, when the star tried to spawn it couldn't find the parent
and gave up. Now if no parent is found the spawned object will be its
own parent. This should make all spawned objects more reliable, but may
cause weirdness somewhere.

Fixes #34
2020-09-07 20:54:15 -07:00
MysterD 85ba18daef Force marioObj player indices to be well behaved
Fixes a crash when spawning the secret star in The Princess's Secret
Slide.

Fixes #32
2020-09-07 20:30:20 -07:00
MysterD 65888cc035 Synchronized room checking better + fixed bookswitches
Determining if the player is in the room was bugged, and bookswitches
caused Luigi to crash. Now things should be a bit more stable in BBH.
Fixes #30
2020-09-07 19:51:39 -07:00
MysterD d00945ec81 Allow other player to pass through door when it's being opened
Also disable the 'walking through door' cutscene when newcam is on
2020-09-07 16:35:42 -07:00
MysterD ddb5f1782f Make 60 fps patch apply in case people don't realize it is already merged 2020-09-07 11:07:28 -07:00
MysterD 5cc7b03c78 Fixed infinite loop with King Bobomb 2020-09-07 10:50:32 -07:00
MysterD 893454d0e3 Misc camera fixes
Made analog camera stop rotating or triggering TOTWC when paused
Fix broken vanilla camera on TOWTC w/BETTERCAMERA enabled
Fixes #15
2020-09-07 10:48:54 -07:00