* Make dives knockback based on speed
Suggestion from issue #349
* Add `get_local_coopnet_id`
Suggestion from issue #264
* Readd breakdancing as an attack
Suggestion not only from me but also from a few players I talked with. However this was not a suggestion that came from issues.
* Change around pvp damage
Suggestion from issue #343 and some changes from talking with the creator of the suggestion
* Change `get_local_coopnet_id`
The function can now take in any local id and has been renamed to just `get_coopnet_id`
* Suggested fixes
- Doors now no longer will be repeatedly talked even if you don't move away. It now behaves closer to vanilla.
- Fixed the ending level name not being able to be replaced.
- Only inited `smlua_audio_utils` if needed, since there will probably be plenty of people who play without ever using mods with custom audio.
- Fixed the pause anywhere setting - this ended up not being fully accurate to ex-coop, which it was originally intended to be.
- Stopped regenerating dynos collision bin on start up every time therefore giving a slight start up speed boost for some people.
- Added a config file setting that lets people choose to compress dynos bins on startup (disabled by default).
- Fixed a warning that shows on non macs during compiling.
- Properly fixed the chat box focus.
- Made the public lobby rules panel "temporary".
- Added a cleaner loading screen design.
- Added an ex-coop theme easter egg, can only be activated from the config file.
- Cleaned up the Lua traceback logging, now shows the folder and file the error occurred in, rather than the full path.
- Added a way to set `gCheckingSurfaceCollisionsForCamera`, so mods can specify to surface finding functions to ignore `SURFACE_FLAG_NO_CAM_COLLISION` internally.
- Rewrote the way smlua pushes CObjects/CPointers to Lua. Now using the C Lua API entirely to connect to Lua.
- Fixed a use-after-free bug that could easily crash the game through Lua (explained further in one of my comments below).
- Fixed a common crash in `audio_sanity_check`.
* Allow user to change music in menu
* Remove annoying newline
* Fully reset menu
* No need for sSoundBox
* Add music to castle grounds
* Add translations
* oops
* Why did that not save!!
* Update lang/Polish.ini
Co-authored-by: Radek Krzyśków <46760021+Flower35@users.noreply.github.com>
* Update lang/Czech.ini
Co-authored-by: Radek Krzyśków <46760021+Flower35@users.noreply.github.com>
* Update lang/Russian.ini
Co-authored-by: Radek Krzyśków <46760021+Flower35@users.noreply.github.com>
---------
Co-authored-by: Radek Krzyśków <46760021+Flower35@users.noreply.github.com>
* Initial IPv6 support
The address struct was changed to use sockaddr_in6 instead of sockaddr_in. Resolving domains also uses getaddrinfo() instead of the deprecated gethostbyname(), and if the returned address is IPv4, transform it to an IPv6-mapped address to make it work with the AF_INET6 socket.
* Direct Connection input box behaviour change
This makes the Direct Connection input box accept all types of addresses. IPv4, IPv6 and hostnames are now supported. Direct IPv6 addresses must be enclosed in square brackets [IPv6]:port to be able to separate IP from port, otherwise it will be treated as an IPv4 address or hostname.
* sanity checks
This fixes a weird error while reconnecting when using direct IPv6 addresses. getaddrinfo() doesn't like square brackets on the host IP, so remove those when found.
This commit also fixes a problem where gGetHostName wasn't being properly set when connecting through a hostname.
* cleanup and bugfix
Small code cleanup removing some debugging comments. This also fixes a bug where initializing the game without the --join argument (which initializes network as NT_NONE) was still calling a piece of code where it was resolving a domain and copying an empty gGetHostName to configJoinIp, which made coop_join_ip be cleared on the config file.
* fix rare cases of binding errors
Due to some options in the sockaddr_in6 struct that doesn't need to be set, rare cases can happen that there will be some random data that will interfere with such values. This made binding randomly or persistently fail. This commit makes that before binding, make sure to fill the entire struct with 0 before setting it up.
* Translations for WARN_SOCKET
This provides translations for the new text when hosting a server. I cannot guarantee the accuracy of the translations, except English, Portuguese and German, where it was written by native speakers.
* Update socket_windows.c
yeah right. resolving conflicts and stuff.
* added shared memory for mumble integration
update mumble struct with player and camera data
* osx compile fixes
* renamed methods
* fixed inversed unit vectors
* made mumble camera position mario
* cleaned up spacing
* added separate context for main menu
* added checks to avoid improperly changing contexts