* [WIP] fix warnings
Committing now as is for Isaac to take a look at this.
Having issues with VERSION_TEXT
* Fix VERSION_TEXT crash and stop demos on host
Add the Lua Profiler to the debug menu.
Prevent Mario from sleeping on the main menu.
Fix IP address string corruption when saving the config file.
Bring back the Discord fatal message.
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
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
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.
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
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
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.
Due to my compile & launch scripts, I was silently ignoring warnings
this whole time. I've fixed my process, and gone back to fixed all of
the warnings I could (even outside of my code).