An official continuation of https://github.com/djoslin0/sm64ex-coop on sm64coopdx for the enhancements and progress it already has.
Find a file
MysterD f367ed2167 Prevented softlock and entity duplication when both grab at the same time
As reported by somario360:
After grabbing the small box at the same time, one of two results can happen.
There will be a fake cloned box that will only be visually in the other
player's hands, or one player will be stuck in the punching animation until
the other player lets go of the box, in which the box goes into the stuck
player's hands.

Now escapes from action if the grab fails, preventing a softlock.
And now if both players report having the same object, the client
will drop their copy.

Fixes #14
2020-09-03 18:11:42 -07:00
.github/ISSUE_TEMPLATE Update issue templates 2020-05-07 20:46:35 +02:00
actors Made Luigi a bit bigger 2020-08-23 23:44:11 -07:00
asm merge refresh 10 2020-06-20 02:49:59 +03:00
assets Refresh 3 2019-11-03 14:36:27 -05:00
bin merge refresh 10 2020-06-20 02:49:59 +03:00
build-windows-visual-studio Synchronized Big Boo's Haunt + major changes 2020-08-26 23:29:40 -07:00
data Added player-to-player interactions 2020-09-02 23:50:27 -07:00
doxygen yeet 2020-06-02 23:43:32 +03:00
enhancements update 60fps patch 2020-07-09 17:33:04 +03:00
include Added player-to-player interactions 2020-09-02 23:50:27 -07:00
levels Removed debug enemies from castle grounds 2020-08-28 23:06:56 -07:00
lib throw out unused libultra sources 2020-06-21 02:21:46 +03:00
sound merge refresh 10 2020-06-20 02:49:59 +03:00
src Prevented softlock and entity duplication when both grab at the same time 2020-09-03 18:11:42 -07:00
text refresh 6 2020-02-03 00:51:26 -05:00
tools Merge pull request #395 from MartinPham/patch-4 2020-08-16 02:01:02 +03:00
.clang-format Refresh 1 2019-09-01 15:50:50 -04:00
.clang-tidy Refresh 1 2019-09-01 15:50:50 -04:00
.gitattributes Refresh 1 2019-09-01 15:50:50 -04:00
.gitignore Fixed receiving of health, made recovery heart 2-player aware 2020-08-07 22:27:15 -07:00
asmdiff.jp.sh merge PC port onto the decompile 2020-05-07 20:21:22 +02:00
assets.json merge refresh 10 2020-06-20 02:49:59 +03:00
c2obj.py correct line endings 2020-05-16 07:36:28 +03:00
cgdb.exe.stackdump Started adding networking 2020-08-01 20:22:24 -07:00
CHANGES Refresh 11 2020-07-05 14:15:43 +03:00
charmap.txt refresh 5 2020-01-03 10:38:57 -05:00
charmap_menu.txt refresh 5 2020-01-03 10:38:57 -05:00
compile.sh Added Luigi to courtyard and BoB, fixed some crashing issues 2020-08-03 17:59:44 -07:00
debug.sh Added Luigi to courtyard and BoB, fixed some crashing issues 2020-08-03 17:59:44 -07:00
diff.py Refresh 10.1 2020-06-20 02:53:56 +03:00
diff_settings.py Refresh 8 2020-04-03 14:57:26 -04:00
Dockerfile merge refresh 10 2020-06-20 02:49:59 +03:00
Doxyfile refresh 4 2019-12-01 21:52:53 -05:00
dx11.sh Synchronize cannons as soon as they are unlocked 2020-08-31 23:49:51 -07:00
extract_assets.py Refresh 10.1 2020-06-20 02:53:56 +03:00
first-diff.py merge refresh 10 2020-06-20 02:49:59 +03:00
format.sh init2 2019-08-25 00:46:40 -04:00
gdb.exe.stackdump Synchronized purple switch 2020-08-07 19:37:19 -07:00
Jenkinsfile refresh 6 2020-02-03 00:51:26 -05:00
Makefile Prevent infinite looping of Mario action transitions 2020-09-01 22:06:36 -07:00
Makefile.split merge refresh 10 2020-06-20 02:49:59 +03:00
network.sh Added CLI options to specify ip/port 2020-08-13 19:38:15 -07:00
obj2c.py correct line endings 2020-05-16 07:36:28 +03:00
pisetup.sh Update repo_url. Rename /sm64pi/sm64pc -> /sm64pc/sm64ex 2020-07-06 19:29:52 +02:00
README.md Update README.md 2020-08-31 23:50:43 -07:00
README_es_ES.md Update README_es_ES.md 2020-05-19 00:04:07 +01:00
README_pt_BR.md Create README_pt_BR.md 2020-06-10 22:36:41 -03:00
README_zh_CN.md Typo in extract_assets.py 2020-05-16 15:44:55 -03:00
rename_sym.sh Refresh 7 2020-03-01 22:42:52 -05:00
SAVE_FORMAT.MD Added appropriate flags for sound mode and cap level. Documentation has been updated. 2020-05-20 23:28:04 +09:00
sm64.eu.sha1 init2 2019-08-25 00:46:40 -04:00
sm64.jp.sha1 init2 2019-08-25 00:46:40 -04:00
sm64.ld merge refresh 10 2020-06-20 02:49:59 +03:00
sm64.sh.sha1 Refresh 7 2020-03-01 22:42:52 -05:00
sm64.us.sha1 init2 2019-08-25 00:46:40 -04:00
undefined_syms.txt Refresh 8 2020-04-03 14:57:26 -04:00

sm64ex-coop

Online cooperative multiplayer mod for SM64, aiming to synchronize all entities and every level for two players. Fork of sm64pc/sm64ex.

Feel free to report bugs and contribute, but remember, there must be no upload of any copyrighted asset. Run ./extract_assets.py --clean && make clean or make distclean to remove ROM-originated content.

Goal

Create a mod for the PC port where two people can play online together peer-to-peer. Unlike previous online attempts, this one will synchronize enemies and events such that you will be interacting with the same world at the same time.

Building

For building instructions, please refer to the wiki.

Make sure you have MXE first before attempting to compile for Windows on Linux and WSL. Follow the guide on the wiki.