Difference between revisions of "HOWTO-Engine Release"

From ScummVM :: Wiki
Jump to navigation Jump to search
(Updated info in the news item)
m
(3 intermediate revisions by 2 users not shown)
Line 10: Line 10:
# Add the new game(s) to the [https://github.com/scummvm/scummvm/blob/master/NEWS.md NEWS file]
# Add the new game(s) to the [https://github.com/scummvm/scummvm/blob/master/NEWS.md NEWS file]
# When the engine is using GUIO, add their description to the [https://docs.scummvm.org/en/v2.2-docs/settings/engine.html documentation] ([[Developer_Central#Contribution_guide_for_technical_writers|here]] is how to edit the documentation)
# When the engine is using GUIO, add their description to the [https://docs.scummvm.org/en/v2.2-docs/settings/engine.html documentation] ([[Developer_Central#Contribution_guide_for_technical_writers|here]] is how to edit the documentation)
# Add the engine author(s) to the ''engines/<your-engine>/credits.pl'' file (see [https://github.com/scummvm/scummvm/blob/master/engines/scumm/credits.pl 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".
# Add the engine author(s) to the ''engines/<your-engine>/credits.pl'' file, in alphabetical order by last name (see [https://github.com/scummvm/scummvm/blob/master/engines/scumm/credits.pl 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:
# 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 ''DIST_FILES_ENGINEDATA'' in ''Makefile.common''
Line 24: Line 24:
# 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 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 [https://bugs.scummvm.org bug tracker] (engine in Components, game in Custom Fields->game)
# Make sure the engine and game are added to the [https://bugs.scummvm.org bug tracker] (engine in Components, game in Custom Fields->game)
# Publish a news entry announcing game testing at [https://github.com/scummvm/scummvm-web/tree/master/data/en/news scummvm/scummvm-web:data/en/news/] (e.g. [https://github.com/scummvm/scummvm-web/blob/master/data/en/news/20161201.markdown Full Pipe announcement]). Also, provide to [[User:Sev|sev]] several screenshots for the Facebook post. It is advised to put your draft to the Google Docs and publish the link to the #team-talk on Discord for feedback and grammar fixes.
# Publish a news entry announcing game testing at [https://github.com/scummvm/scummvm-web/tree/master/data/en/news scummvm/scummvm-web:data/en/news/] (e.g. [https://github.com/scummvm/scummvm-web/blob/master/data/en/news/20161201.markdown Full Pipe announcement]). Also, provide to [[User:Sev|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 [[User:Sev|sev]] before proceeding.''
## Copy the news to the forums, General Discussion subforum, mark the post as an announcement
## Copy the news to the forums, General Discussion subforum, mark the post as an announcement
## Ask [[User:Sev|sev]] to publish on Facebook and provide the game screenshots
## Ask [[User:Sev|sev]] to publish on Facebook and provide the game screenshots
Line 32: Line 33:
## Update the compatibility data at [https://docs.google.com/spreadsheets/d/1QzwFleEKXOsE59cYMOcQB7C2f0Np48uAQOCG8kicX_s/edit#gid=854570757 the ScummVM Data spreadsheet] with compatibility information for the new game(s) (ping [[User:Sev|sev]] or [[User:Rootfather|rootfather]] for the access)
## Update the compatibility data at [https://docs.google.com/spreadsheets/d/1QzwFleEKXOsE59cYMOcQB7C2f0Np48uAQOCG8kicX_s/edit#gid=854570757 the ScummVM Data spreadsheet] with compatibility information for the new game(s) (ping [[User:Sev|sev]] or [[User:Rootfather|rootfather]] for the access)
### If necessary, add the company to 'companies' tab
### If necessary, add the company to 'companies' tab
### Add engine to the 'engines' tab, make sure it is marked as enabled
### Add game to the 'games' tab, don't forget to provide the game hook to the Datafiles
### Add game to the 'games' tab, don't forget to provide the game hook to the Datafiles
### Add game to the 'compatibility' tab
### Add game to the 'compatibility' tab
## If necessary, update the demos list at [https://docs.google.com/spreadsheets/d/1QzwFleEKXOsE59cYMOcQB7C2f0Np48uAQOCG8kicX_s/edit#gid=713475305 the ScummVM Data spreadsheet] with new game demos
## If necessary, update the demos list at [https://docs.google.com/spreadsheets/d/1QzwFleEKXOsE59cYMOcQB7C2f0Np48uAQOCG8kicX_s/edit#gid=713475305 the ScummVM Data spreadsheet] with new game demos
## Run <tt>composer update-data</tt> for updating the website
## Access the URL <code>https://www.scummvm.org/admin/update</code> for updating the website. You need to be a member of the website admin group in order to do so.
# Upload demos if any
# Upload demos if any
## After uploading demos, put the links to the data spreadsheet
## After uploading demos, put the links to the data spreadsheet
## Add the game category icon as described [[Screenshots#How_to_make_game_icon|here]]
## Add the game category icon as described [[Screenshots#How_to_make_game_icon|here]]

Revision as of 09:17, 26 May 2022

Once an engine has been accepted into the master branch, finished, and is ready to be playtested, do this stuff to get it ready:

  1. Change any ADGF_UNSTABLE flags in the engine’s detection table to ADGF_TESTING
  2. Change the [build-by-default] flag in the engine’s configure.engine file to yes
  3. Update the engine’s and game’s information pages in the wiki:
    1. Change the engine’s category from Category:Engines Not Added to ScummVM to Category:Engines Added to ScummVM
    2. Change the game’s category from Category:Unsupported Games to Category:Supported Games
    3. Set the Support status in the infobox to the next ScummVM release version in form 'Since ScummVM X.X.0'
    4. Fill out any other missing information in the infobox
  4. Add the new game(s) to the NEWS file
  5. When the engine is using GUIO, add their description to the documentation (here is how to edit the documentation)
  6. 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".
  7. If the engine uses a data file, make sure it is added to the list of files to distribute:
    1. Add it to DIST_FILES_ENGINEDATA in Makefile.common
    2. Add it to dists/scummvm.rc
    3. Add it to dists/irix/scummvm.idb
    4. Add it to dists/win32/migration.txt
    5. Add it to backends/platform/maemo/debian/rules
    6. Add it to devtools/create_project/xcode.cpp (in the XcodeProvider::getResourceFiles() function).
    7. On the Buildbot, in the buildbot-config/builds.py file:
      1. If there is no DATA_FILES variable defined under the ScummVMStableBuild class, copy the DATA_FILES variable from the ScummVMBuild class to ScummVMStableBuild,
      2. Add the engine data file to the DATA_FILES list in the ScummVMBuild class.
      3. Ping rootfather for propagating the change to the buildbot.
  8. 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)
  9. Make sure the engine and game are added to the bug tracker (engine in Components, game in Custom Fields->game)
  10. 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.
    1. The following needs to be done in a close time gap, so please coordinate with sev before proceeding.
    2. Copy the news to the forums, General Discussion subforum, mark the post as an announcement
    3. Ask sev to publish on Facebook and provide the game screenshots
    4. Ask sev to publish the link on Twitter
    5. Ask sev to copy the announcement text to the #news channel on Discord
  11. Update the Website
    1. Update the compatibility data at the ScummVM Data spreadsheet with compatibility information for the new game(s) (ping sev or rootfather for the access)
      1. If necessary, add the company to 'companies' tab
      2. Add engine to the 'engines' tab, make sure it is marked as enabled
      3. Add game to the 'games' tab, don't forget to provide the game hook to the Datafiles
      4. Add game to the 'compatibility' tab
    2. If necessary, update the demos list at the ScummVM Data spreadsheet with new game demos
    3. Access the URL https://www.scummvm.org/admin/update for updating the website. You need to be a member of the website admin group in order to do so.
  12. Upload demos if any
    1. After uploading demos, put the links to the data spreadsheet
    2. Add the game category icon as described here