HOWTO-Engine Release
Once an engine has been accepted into the master branch, finished, and is ready to be playtested, do this stuff to get it ready:
- Change any
ADGF_UNSTABLE
flags in the engine’s detection table toADGF_TESTING
- Change the [build-by-default] flag in the engine’s configure.engine file to yes
- Update the engine’s and game’s information pages in the wiki:
- Change the engine’s category from Category:Engines Not Added to ScummVM to Category:Engines Added to ScummVM
- Change the game’s category from Category:Unsupported Games to Category:Supported Games
- Set the Support status in the infobox to the next ScummVM release version in form 'Since ScummVM X.X.0'
- Fill out any other missing information in the infobox
- Add the new game(s) to the NEWS file
- When the engine is using GUIO, add their description to the documentation (here is how to edit the documentation)
- Add the engine author(s) to the engines/<your-engine>/credits.pl file, in alphabetical order by last name (see SCUMM engine example) and run make credits to update the AUTHORS and credits.h files. You should also have scummvm-web repository checked out next to your scummvm directory, and then commit to both repositories. For the web repo the typical commit log message is "WEB: Sync credits".
- If the engine uses a data file, make sure it is added to the list of files to distribute:
- Add it to DIST_FILES_ENGINEDATA in Makefile.common
- Add it to dists/scummvm.rc
- Add it to dists/irix/scummvm.idb
- Add it to dists/win32/migration.txt
- Add it to backends/platform/maemo/debian/rules
- Add it to devtools/create_project/xcode.cpp (in the XcodeProvider::getResourceFiles() function).
- On the Buildbot, in the buildbot-config/builds.py file:
- If there is no
DATA_FILES
variable defined under theScummVMStableBuild
class, copy theDATA_FILES
variable from theScummVMBuild
class toScummVMStableBuild
, - Add the engine data file to the
DATA_FILES
list in theScummVMBuild
class. - Ping rootfather for propagating the change to the buildbot.
- If there is no
- Make sure list of datafiles on the game pages are up to date (for example see Beneath_a_Steel_Sky#Required_data_files as a template)
- Make sure the engine and game are added to the bug tracker (engine in Components, game in Custom Fields->game)
- Publish a news entry announcing game testing at scummvm/scummvm-web:data/en/news/ (e.g. Full Pipe announcement). Also, provide to sev several screenshots for the Facebook post. It is advised to put your draft to Google Docs and publish the link to the #team-talk on Discord for feedback and grammar fixes.
- The following needs to be done in a close time gap, so please coordinate with sev before proceeding.
- Copy the news to the forums, General Discussion subforum, mark the post as an announcement
- Ask sev to publish on Facebook and provide the game screenshots
- Ask sev to publish the link on Twitter
- Ask sev to copy the announcement text to the #news channel on Discord
- Update the Website
- Update the compatibility data at the ScummVM Data spreadsheet with compatibility information for the new game(s) (ping sev or rootfather for the access)
- If necessary, add the company to 'companies' tab
- Add game to the 'games' tab, don't forget to provide the game hook to the Datafiles
- Add game to the 'compatibility' tab
- If necessary, update the demos list at the ScummVM Data spreadsheet with new game demos
- Run composer update-data for updating the website
- Update the compatibility data at the ScummVM Data spreadsheet with compatibility information for the new game(s) (ping sev or rootfather for the access)
- Upload demos if any
- After uploading demos, put the links to the data spreadsheet
- Add the game category icon as described here