|
Some checks are pending
Build coop / build-linux (push) Waiting to run
Build coop / build-steamos (push) Waiting to run
Build coop / build-windows-opengl (push) Waiting to run
Build coop / build-windows-directx (push) Waiting to run
Build coop / build-macos-arm (push) Waiting to run
Build coop / build-macos-intel (push) Waiting to run
I didn't add standard Lua require() because I've always been afraid of it. I'm not sure we can guarantee which files it will read (or not read). Instead, here is a custom implementation. It should work more or less the same and allow for more modular code. For backwards compatibility reasons, all of the lua files in the base mod folder will be loaded as in the past. Aka one at a time and alphabetically. However, now coop will look for Lua files in subdirectories and will load them in when another Lua file calls require(). The file search order is more reasonable than normal Lua require(). It will first look for files relative to the currently running script. If there is no matching relative file, it will pick from any Lua file that is in any of the mod's subdirectories. --------- Co-authored-by: MysterD <myster@d> |
||
|---|---|---|
| .github | ||
| 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 | ||
| windows.ld | ||
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.
Wiki
The wiki is made using GitHub's wiki feature, you can go to the wiki tab or click here.
