blueminder / flycast-netplay-savestates

Savestates for use with Flycast netplay. Defaults for Flycast Dojo.
6 stars 16 forks source link

Flycast Dojo Netplay Savestates

This repository contains savestates for use with online games with Flycast Dojo. They are automatically downloaded the first time someone plays a match online, are automatically loaded when a netplay session starts, and may be used offline in Training Mode. Having a savestate present allows you to share the same settings as your opponent, and prevents desyncs caused by different emulator configurations.

Submissions are welcome. You may submit as either an Issue or Pull Request. To minimize disruption among players with existing savestates, I typically accept modifications to existing savestates between major version changes, so try to make what you submit count for the long haul.

In Case of Download Failure

If Flycast Dojo is unable to auto-download the savestate, just grab the file that matches the game you are playing from here and stick it in your emulator's data folder. For Fightcade users, this can typically be found in Fightcade\emulator\flycast\data\.

Creating & Using Custom Savestates

To play with custom savestates in Flycast Dojo, make sure the savestate you are sharing with your opponent is named the same as the ROM you would like to play, with the file extension of state.net, and place it in the data folder. This savestate will be automatically loaded on session start.

After your custom match, be sure that you either remove the savestate to use the game's default netplay savestate, or share the custom file with future opponents.

Netplay Savestate Requirements

If you wish to make the custom savestate you created the one that is auto-downloaded and used online, it should take into account the following:

All Systems

Dreamcast

NAOMI

Atomiswave

Initializing Git

For maintaining the repository or setting up a mirror.

Enable post-commit hook. This creates a list of commits for easy comparison against UNIX epoch times.

cp post-commit .git/hooks/post-commit
chmod +x .git/hooks/post-commit