- 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`. |
||
|---|---|---|
| .github/ISSUE_TEMPLATE | ||
| actors | ||
| assets | ||
| autogen | ||
| bin | ||
| data | ||
| developer | ||
| docs/lua | ||
| dynos/packs/Coop Cafe Pipe | ||
| include | ||
| lang | ||
| levels | ||
| lib | ||
| mods | ||
| palettes | ||
| res | ||
| sound | ||
| src | ||
| text | ||
| textures | ||
| tools | ||
| .clang-format | ||
| .clang-tidy | ||
| .gitattributes | ||
| .gitignore | ||
| assets.json | ||
| CHANGES | ||
| charmap.txt | ||
| charmap_menu.txt | ||
| credits.txt | ||
| Dockerfile | ||
| dynos.mk | ||
| extract_assets.py | ||
| format.sh | ||
| Makefile | ||
| Makefile.split | ||
| README.md | ||
| sm64.eu.sha1 | ||
| sm64.jp.sha1 | ||
| sm64.sh.sha1 | ||
| sm64.us.sha1 | ||
| util.mk | ||
sm64coopdx is an online multiplayer project for the Super Mario 64 PC port that synchronizes all entities and every level for multiple players. The project was started by the Coop Deluxe Team. The purpose is to actively maintain and improve, but also continue sm64ex-coop, created by djoslin0. More features, customization, and power to the Lua API allow modders and players to enjoy Super Mario 64 more than ever!
Feel free to report bugs or contribute to the project.
Initial Goal (Accomplished)
Create a mod for the PC port where multiple people can play together online.
Unlike previous multiplayer projects, this one synchronizes enemies and events. This allows players to interact with the same world at the same time.
Interestingly enough though, the goal of the project has slowly evolved over time from simply just making a Super Mario 64 multiplayer mod to constantly maintaining and improving the project (notably the Lua API.)
Lua
sm64coopdx is moddable via Lua, similar to Roblox and Garry's Mod's Lua APIs. To get started, click here to see the Lua documentation.
