Warning: This makes your game vulnerable to save editing, but for single-player VNs, that rarely matters.
Ren'Py now assigns a unique "token" to save files to identify the device that created them. If you try to load a save from a different computer or a modified save file (e.g., from a save editor), Ren'Py prompts you to confirm that you trust the source.
If you are transferring your own saves between devices, you can usually bypass this by simply selecting to trust the save when prompted. If the screen is blank or the prompt doesn't appear, you may need to update your game's confirm screen code to support these new security prompts. How to Fix or Bypass the Security Warning
This happens when a game has a heavily customized user interface. If the game developer built custom menus but forgot to add the UNKNOWN_TOKEN and TRUST_TOKEN script hooks to their confirm screen, the engine tries to call a UI prompt that technically does not exist. The engine gets stuck in a loop before the load action can execute, leaving the player with an unclickable, blank interface. How to Fix the Error as a Player renpy this save was created on a different device link
Open your project's screens.rpy file and locate screen confirm(message, yes_action, no_action): . Ensure that the text layout dynamically accommodates unknown messages. A standard implementation looks like this:
This public link is valid for 7 days and shares a thread, including any personal information you added. This link or copies made by others cannot be deleted. If you share with third parties, their policies apply. Can’t copy the link right now. Try again later.
Check ~/.renpy/ or look inside the Steamcompat folder ( pfx/drive_c/users/steamuser/AppData/Roaming/RenPy/ ) if playing via Proton. Warning: This makes your game vulnerable to save
When you see this message, the game is typically waiting for you to confirm you trust the source. If you see "Yes/No" options:
Use your computer's file explorer to navigate to your Android device's internal storage.
The "different device" message is a learning experience that highlights how important it is to manage your save files proactively. Here are a few habits to keep. If you are transferring your own saves between
def load_save_file(filename): # Load the save file save_file = os.path.join(get_save_directory(), filename) with open(save_file, "rb") as f: save_data = f.read() # Decrypt the save file encryption_key = generate_encryption_key() decrypted_save_data = decrypt(save_data, encryption_key) return decrypted_save_data
Ensure your confirm screen includes prompts for gui.UNKNOWN_TOKEN and gui.TRUST_TOKEN .