################################################################################ ## 99_dev_patch.rpy — DEV/TEST PATCH ## ## Delete this file (or set PATCH_ENABLED = False) to restore normal play. ## It overrides the relationship words and skips the relationship-labelling ## intro in `label start`, jumping straight to `dream_intro`. ################################################################################ define PATCH_ENABLED = True define PATCH_SKIP_RELATIONSHIP_INTRO = True ## The words the patch installs, replacing the defaults in 01_variables.rpy. ## Do NOT re-`default` these names here — assign them at start instead, which ## avoids duplicate-default ambiguity and keeps the patch removable. define PATCH_RELATIONSHIPS = { ## MC <-> Maloria "maloria_is_your" : "mom", "you_are_malorias" : "son", ## MC <-> Vienna "vienna_is_your" : "sister", "you_are_viennas" : "brother", ## Vienna <-> Maloria "vienna_is_malorias" : "daughter", "maloria_is_viennas" : "mom", } ## Optional extras for faster testing. define PATCH_SKIP_DREAM = False ## True = skip the Kara dream entirely define PATCH_PLAYER_NAME = "D'Rizz" ## used when the name prompt is skipped ## Optional: drop straight into free roam. None = off. ## e.g. {"act": 1, "day": 3, "time": "morning", "room": "apartment"} define PATCH_FAST_FORWARD = None init python: if PATCH_ENABLED and PATCH_SKIP_RELATIONSHIP_INTRO: config.label_overrides["start"] = "patched_start" def patch_relationships(): for _k, _v in PATCH_RELATIONSHIPS.items(): setattr(store, _k, _v) mark("relationships_chosen") def patch_fast_forward(): """Skip every story beat and land in a specific room/time.""" ff = PATCH_FAST_FORWARD store.current_act = ff.get("act", 1) store.current_day = ff.get("day", 3) store.current_time_of_day = ff.get("time", "morning") store.current_room = ff.get("room", "apartment") store.previous_room = None store.nav_mode = "free" store.tutorial_step = len(TUTORIAL_ROUTE) store.player_name = PATCH_PLAYER_NAME ## Mark everything seen so no entry cutscene fires. Remove a key from ## this loop if you want that one scene to trigger on arrival. for _beat in STORY_BEATS: store.seen.add(_beat) label patched_start: $ patch_relationships() if PATCH_FAST_FORWARD: $ patch_fast_forward() jump begin_free_roam if PATCH_SKIP_DREAM: $ player_name = PATCH_PLAYER_NAME $ nav_mode = "tutorial" $ current_room = "your_room" jump begin_free_roam jump dream_intro