MysterD
42d1d681a6
Fix bubbled vanilla-camera behavior
...
Fixes #66
2020-09-19 10:20:46 -07:00
MysterD
ae48a9df5f
Prevented star from spawning mid-level-change
...
Now CCM's slide star spawns correctly.
2020-09-19 10:03:36 -07:00
MysterD
67342de794
Add development flag for easier testing
2020-09-19 02:12:49 -07:00
MysterD
587b52f1be
Prevent useless keep-alive packets
2020-09-19 01:56:45 -07:00
MysterD
fa0f195c92
Rewrote synchronization for treasure chests
...
Fixes #63
2020-09-19 01:40:42 -07:00
MysterD
ee6efd9d05
Prevented enemies/events from considering disconnected players
2020-09-19 01:05:19 -07:00
MysterD
a946694da6
Prevent exclamation box from opening multiple times
...
Fixes #57
2020-09-19 00:59:54 -07:00
MysterD
df6cac3cab
Added compile-time flag to disable Discord SDK
...
In order to support ARM/Mac, discord must be disabled.
To disable compile with:
make DISCORD_SDK=0
Fixes #62
2020-09-19 00:53:56 -07:00
MysterD
69742f7f2f
Unconnected players are now hidden/intangible
2020-09-18 23:16:07 -07:00
MysterD
28b06da7e1
Added player connected/disconnected events
...
Changed synchronizing text to be more descriptive
Added 'player connected', 'player disconnected', 'network shutdown' chat messages
Prevented someone from joining through Discord while in another lobby
Added the distinction of sending a packet to all vs to a specific player
Enforced lobby size of 2, multiple joiners in a direct connection will be booted
Stored network destination for each player
Detected network drops
2020-09-18 23:06:26 -07:00
MysterD
f71c2900a0
Add missing 'Chat' text
2020-09-16 01:01:29 -07:00
MysterD
dc1f689a6e
Renamed packet_save_file to packet_join
2020-09-15 23:07:00 -07:00
MysterD
dc8b84a66d
Refactored packet code out of network.c/h
2020-09-15 22:58:16 -07:00
MysterD
12213967cd
Added exponential backoff to reliable packets
2020-09-15 22:45:17 -07:00
MysterD
efe8c91909
Added chat button bind, prevented chat from disabling other binds
2020-09-15 22:22:39 -07:00
MysterD
663da861cb
Fix DirectX builds
2020-09-15 21:48:14 -07:00
MysterD
d44ae27393
Prevented chat start event from disabling alt-enter fullscreen
2020-09-15 09:54:04 -07:00
MysterD
7f1a3631b1
Added warning when Discord isn't detected. Added missing sounds to buttons and events in menu
2020-09-15 09:47:26 -07:00
MysterD
cd0f889e3d
Damn it, fixed Linux builds (this time for real?)
2020-09-14 23:34:19 -07:00
MysterD
6ecddd939a
Fixed Linux builds
2020-09-14 23:26:55 -07:00
MysterD
e59b057848
Added in-game chat
...
Fixes #35
2020-09-14 22:05:20 -07:00
MysterD
ece4d2bc93
Make C-lib link statically again, force various compiler options better
2020-09-14 18:29:47 -07:00
MysterD
3bab7a7fdb
Complete rewrite of custom main menu
...
The vanilla main menu is an awful pile of code that is extremely painful
to make additions to. So I've side-stepped the problem by writing an
entiely new menu system without all of vanilla's quirks. I've separated
the custom menu system from the menus I want to make, which allows for
easy additions and a clear separation of responsibilities.
Along with this rewrite comes a host menu, adding the missing
configuration options in-game.
Fixes #29
2020-09-13 23:57:14 -07:00
MysterD
15601ac856
Add Discord Game SDK networking system
...
Allows players to host without forwarding their ports or using a program
like Hamachi.
2020-09-13 03:27:35 -07:00
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