Alternative Punishment
This Community Hub is marked as 'Adult Only'. You are seeing this hub because you have set your preferences to allow this content.

Alternative Punishment

Not enough ratings
Alternative Punishment achievement fix
By Zoltan Redbeard
Since at 10.17.2022, with the game version 1.0 and the ID build 8292683, the Alternative Punishment only achievement is still broken, I wrote a little procedure to put it "back" in the game.
   
Award
Favorite
Favorited
Unfavorite
Intro
Since at 10.17.2022, with the game version 1.0 and the ID build 8292683, the Alternative Punishment only achievement is still broken, I wrote a little procedure to put it "back" in the game.
Issues found
Basically, there are two main issues with the game files that prevent the achievements from working correctly:
  • There isn't any achievement reference at all in all the code lines of all the game scripts, so the achievement is not in the game and maybe the dev himself didn't wanted to put it in, since there's even no icon for it as well
  • The Steam Support library for Ren'py seems to not be installed and is missing in the game libraries folder
Tools needed
In order to proceed with the restoration procedure, a few tools are needed:
  • Ren'py 7.5.0 SDK[www.renpy.org] (the version is important because it has to match the Ren'py version currently used for the game)
  • A text editor, like the Notepad, Notepad++ or a similar one
  • A file archiver like 7-Zip, WinRAR, WinZip or a similar one
Procedure
  • Firstly, make a backup copy of the Steam game folder, "...\Alternative Punishment", from which you could restore the save files later.
  • Edit the "script_14.rpy" with the notepad by adding the achievement calls code at the end of the file, just before the "jump script_15" line (where I personally think that most likely the unlock should be) and it will add the achievement, but careful, because the texts indenture is important, and the spaces before "jump script_15" need also to be removed.

    After the edit, the last lines of the file should look like this:
    Narrator "(He slowly knocks at the door and enters upon hearing “Come in” from inside.)" $ renpy.end_replay() $ achievement.grant("playElena") init: $ achievement.register("playElena") $ achievement.sync() return jump script_15
    Note: the spaces are not made with TAB, but with the spacebar.

  • Then copy the whole game folder in a new Ren'py 7.5.0 SDK project, by unzipping the SDK and copying the game folder in it.
  • Therefore launch the SDK and install the "Steam Support" libraries from the preferences menu of it and reboot the SDK, at this point it could be used to build a new distribution of the new project.
  • Unzip the newly created game and copy everything in the Steam game folder ("...\Alternative Punishment\"), just delete or move elsewhere everything already inside of it before copying the new project
  • You can now also restore the save folder where it should be ("...\Alternative Punishment\game\saves")
  • Launching the game will probably directly unlock the achievement as a result of a previous playthrough, otherwise it will unlock during the gameplay.

Note: upon uninstalling the game, the game files and folders will probably need to be deleted manually, because there will be many leftovers