- don't use a reserved name (starting with an underscore)
- use a file-local mangled name (starting with two underscores
- use renpy.dynamx to cleanup the variable automatically
(cherry picked from commit 3e86094b0b)
* Fixed multiple default parameters inside image definition (Thanks guv! :))
* Fixed missing module import causing linting to not work correctly for certain tasks.
* Bumped game version to 1.46
* Added and implemented images for Luna Inspection events.
- Split events into Tier 5 and 6 instead of sequential Tier 5 events, enabling players to explore every option in a single playthrough.
- Enhanced and added writing, making it more suitable for each tier.
- Adjusted cum locations to work better with the doll.
- Added the option to set Hermione's clothing status during the event to ensure that players can experience every available option.
- Added check so that Genie has to "finish" on Hermione's body during personal favours beforehand.
* Fixed missing 'whore collar' unlock method call
* Fixed gallery not working correctly by extending call_replay funcionality by adding support for nested stores
* Added tier checks to Hermione chit-chats.
* Fixed issue when picking Hermione's "Mudblood" nickname where no dialogue would play if you haven't fucked her.
* Minor writing fixes.
* Improved skipping performance by delaying the call to render functions until after skipping ends
* Fixed skipping not refreshing the doll image
* Fixed skipping callback handler being affected by rollback
* Refactored doll show method
* Fixed updater (AGAIN!!)
* Disabled the 'server not responding' hint because it doesn't really match what's happening in the server code
* Version bump
* Fixed outfit deletion tab not updating the list of items
* Fixed Tonks' public requests menu crashing due to an omitted result type
* Removed manual image rebuilding in wardrobe (superseded)
* Improved skipping performance by delaying the call to render functions until after skipping ends
* Fixed skipping not refreshing the doll image
* Fixed skipping callback handler being affected by rollback
* Refactored doll show method
* Fixed updater (AGAIN!!)
* Disabled the 'server not responding' hint because it doesn't really match what's happening in the server code
* Version bump
* Fixed outfit deletion tab not updating the list of items
* Fixed Tonks' public requests menu crashing due to an omitted result type
* Removed manual image rebuilding in wardrobe (superseded)
* Added a separate entry for mods compatibility (saves and mods rarely follow the same upgrade rules anyway)
* Improved mods handling by automatically disabling incompatible mods
* Fixed a RuntimeError caused by changing set size during iteration
* Fixed mods crashing on init in user space
* Fixed revertable types inside modding init
* Fixed semantic version crashing mod loader
* Updated example mod
* Fixed 'Panty Thief' event requirements
* Improved event validation to avoid errors in user space
* Offset game object initialization to avoid bogus init errors
* Added a UI lock mechanism to avoid render stalls
* Fixed initialization issue due to python init offset for android devices
* Fixed a hang caused by joining threads on android devices
* Fixed a race condition when forcefully stopping threads
* Implemented threading and lazyloading for the main doll
* Added global rebuild method for the dolls
* Updated save compatibility patch
* Fixed wardrobe categories showing locked items
* Fixed Cho's suspenders invalid image
* Fixed rebuild_wardrobe_icons referencing a global instead of a local
* Fixed get_equipped_wardrobe_item nulls
* Added debug info for debugging threaded icons
* Implemented new DollThread method with thread-safe locking mechanism and pickling support for thread event queues
* Added memoization for wardrobe elements
* Added threading for various wardrobe-related methods
* Added lazyloading (to avoid render stalls)
* Added button generation for DollCloth and DollOutfit instances
* Significantly reduced code repetition inside the wardrobe loop
* Added new methods for the Doll, and improved others.
* Fixed viewport adjustment values resetting on interaction
* Fixed character chit-chats performance issues
* Updated saves compatibility patch
* Fixed character cheeks and tears layers being stuck in both gameplay and character studio
* Fixed missing reset properties during end event labels
* Improved updater hint for potential edge cases
* Added feedback hints when clicking 'check for updates' button in the main menu
* Updated methods to reflect the new changes
* Fixed updater crashing with `u` parameter due to explicit no-parameter screen definition, while renpy expects the (lax) implicit definition
* Fixed server url
* Improved efficiency of RoomObject image creation
* Fixed a crash during one of the Tonks' hangout events
* Fixed DollMakeup object lacking clone method, causing issues with saved outfits
* Fixed DollMakeup non-uniform parameter order
* Fixed doll strip method affecting types like pubic hair, piercings, and tattoos
* Fixed ATL flicker on room objects due to inefficient creation of the images for room objects
* Fixed mistakenly added shadow property for Hermione sex scene lean back pose
* Fixed jumps to non-existent labels
* Fixed calls to non-existent labels
* Fixed typos in show statements
* Fixed grammar
* Implemented a workaround for inconsistent ATL interpolation
* Converted Cho's personal favours into the new system, and cleaned up relevant code.
* Fixed floating dust effect restarting on every interaction
* Refactoring
* Converted Astoria's spell training into the new system, and cleaned up the code.
* Improved Astoria's menu layout
* Replaced -hidden- menu feature names with actual the actual feature names
* Refactored Astoria's file structure and naming convention
* Temporarily disabled spell training stats
* Converted Luna personal favours into the new system, and cleaned up the code.
* Added 'noncompliant' return result to differentiate between unmet event requirements and the disabled states
* Added disabled state default parameter
* Converted Snape's hangout events into the new system, and cleaned up relevant code.
* Fixed unreachable cho_quid_E9 event due to an unintentional jump
* Temporarily disabled Snape's hangout stats
* Converted Tonks' public requests into the new system, and cleaned up relevant code.
* Added missing repeat dialogue for one of the events
* Added event flags
* Fixed Tonks 'open wide tongue' expressions zorder to make it work with clothes
* Fixed a crash inside facial constructor when assigning a zorder to a file
* Converted 'panty thief' event into the new system, and moved it into 'odd jobs' section
* Removed shaming menu from Hermione (superseded)
* Removed shaming_class, and relevant pieces of code (superseded)
* Split maid and promoter jobs, and simplified the file structure
* Enable quidditch outro event
* Add daytime/night time switch for the color temperature shader
* Fixed lacking jump to end_cho_event at the end
* Fixed missing flag switch
* Reworked and converted previously named 'wear my cum' events into the new system, renaming them 'cumslut' events, and moved them into public favours menu.
* Improved writing and story consistency for cumslut events.
* Fixed jobs black fade.
* Converted Hermione's jobs into new system and added them into the new 'Odd jobs' favor section
* Converted Hermione's yule ball event chain into the new system
* Improved milestone unlock for Hermione tier 4
* Improved menu exit choice handling
* Moved unused labels outside the script files
* Reimplemented disabled menu option
* Reimplemented named menu options and a back/cancel button support
* Reimplemented icon harts
* Fixed flag check in blowjob public request
* Fixed a potential resolution glitch in gui initialisation
* Fixed a potential label parsing bug in Hermione's summon menu
* Replaced public_voyer status with public_stripping
* Fixed blowjob T4 fail variant event label naming.
* Fixed missing 'ask her to do x' blurbs for blowjob fail event variants
* Fixed cancellation method for events utilising subevents
* Fixed callstack when cancel method is called and the next node is a jump (odd)
* Fixed missing 'ask her to do x' blurbs for fail event variants
* Fixed 'grope her' fail variant repeat dialogue flag
* Removed 'hermione_favor_menu' from ignore labels (superseded)
* Converted Hermione's public requests into the queue system.
* Replaced event checks with status checks for the affected events.
* Ignore local labels in event completion tracking
* Improved readability for debug outputs
* Skip Luna intro on dev
* Added internal counter for queues
* Simplified global vars for event completion checks.
* Temporarily disabled Hermione's statistics menu
* Replaced counter/points checks with status flags.
* Disabled debug profiling for images
* Added event callbacks support
* Added support for in-game favour-like behaviour
* Added debug functions
* Added extensive event parameters
* Added a bunch of new methods
* Added modding support
* Added completion tracking
* Added menu handlers
* Added global vars
* ... more
* Posed end section of Throatfuck variant.
* Added masturbate sounds.
* Added clothing checks and stripping.
* Fixed missing colour on some eye variants
* Added Sexual activity states for Cho.
* Minor writing adjustments.
* Implemented quidditch outro CGs and posed them
* Fixed remaining visual bugs during the retrospection section
* Disabled ability to rollback to before the retrospection to avoid issues
* Improved sepia transform
* Fixed transitions for chibis
* Fixed lack of floor division in col calculations for chibis
* Fixed maxsize change incompatibility with chibis
* Disabled chibi-related debug printing for the public build
* Added parcel callback support for the outfit store
* Added execute_callback wrapper function
* Fixed ball quest item never unlocking after receiving the outfit, soft-locking the game
* Implemented deepthroat part of the event
* Implemented deepthroat CG
* Fixed missing open shirt layer for handjob CG
* Fixed some minor writing problems
* Added an automatic scalar method for undersized/oversized textures
* Added the ability to dye clothes without having to convert them into greyscale
* Added scalar ratio support for whitespace generation
* Improved whitespace generation for objects with nested children displayables
* Added Hermione chit-chats based on character states, event progression, weather etc.
* Added additional checks for Hermione's chit-chats.
* Adjusted Hermione's chit-chat levels to align with tiers.
* Minor writing adjustments.
* Added indicator for unscheduled items in the wardrobe's schedule tab
* Fixed var references
* Fixed characters not displaying in certain events.
* Fixed characters positioning in certain events.
* Fixed Madam Hooch refusing to exit the office.
* Fixed misnamed "Jerk off naked" chibi animation, which caused it not to load.
* Fixed Hermione "-Let's Duel-" menu unlock.
* Fixed misnamed Tonks event vars, which caused her to not appear during the intro.
* Fixed misnamed Tonks event vars in cheats, which caused her events not to get skipped when you skip the intro.
* Moved temp "_cumming" variable to "hg_pf_admire_breasts_T3" as it is later checked even if you don't pick "masturbate" option.
* Minor writing and blktone fixes.
* Fixed regression in sprites positioning method
* Fixed missing paperwork unlock when using quick start
* Removed redundant align attribute from doll class
* Posed "hg_pf_strip_T4_snape", "hg_pf_strip_T4_snape_masturbate" and "hg_pf_strip_T4_snape_watch" sections of Dance for Snape Hermione favour.
* Removed old CG calls.
* Added support for temporary attribues
* Redesigned persistent expressions toggles and simplified them
* Improved defined expressions dictionary handling and added imap sorting
* Simplified parts of code
* Fixed prompt screen incompatibility with Text displayables
* Added temporary expression assignment functionality
* Fixed get_face returning a live dict object instead of a dict copy
* Improved and simplified character speaker functions
* Removed obsolete face dicts
* Added creampie, anal_creampie, gokkun, statuses
* Fixed double defined memory flag
* Fixed non-existent screen call in some events
* Fixed a non-existent hermione expression call
* Fixed non-existent hide image tag call
* Fixed menu text styling, and grammar
* Fixed status flags not adhering to the naming convention
* Replaced caught_genie_masturbating status flag with an event flag
* Added additional event flags where it made sense
* Added "states.her.status.caught_genie_masturbating" flag, and changed previous "states.her.status.handjob" checks to use it.
* Added "states.her.status.cum_body" flag, used to check when genie first cums on Hermione's clothes/body.
* Adjusted some checks.
* Added milestones tutorial, briefly explaining the relationship system
* Added temporary flag to disable one-off dialogue option during 'give me a handy' sub-event
* Fixed string encoding/decoding issues with non-latin languages
* Fixed expression editor crash on copy/pasting
* Fixed expression editor crash caused by inserted None value choices for expression that don't support it
* Improved and posed "Give me a handy".
* Posed "Dance for me".
* Adjusted some of Hermione's nickname requirements to align with her attitude.
* Minor writing improvements.
* Fixed expression editor not re-initializing after reloading the script
* Fixed expression editor not detecting modified expressions after reloading the script
* Fixed CGController incompatibility with Ren'py automatic image definition system causing issues with Cho handjob/blowjob CG scenes
* Converted introductory CGs into show statements
* Converted quidditch CGs into show statements
* Converted potions CGs into show statements
* Reviewed and removed redundant CG code
* Fixed and replaced getattr methods in some instances referencing character states
* Fixed get_character_unlock, and get_character_mood referencing wrong var and store
* Fixed lint self defining character tag instead of using a global func
* Improved writing and posing, and added sound effects for Hermione "grope her" and "final events".
* Added more randomized dialogue when Hermione agrees to do favours even when Gryffindor is in the lead.
* Added missing hooch head icon
* Removed leftover references to update_interface functionality
* Fixed missing directory for expressions causing crashes in character studio
* Fixed unlock state detection in character studio
* Fixed hooch studio crash
* Improved Hermione "Panty Thief" variants.
* Removed old CG calls.
* Removed bld and blktone in some places where it's replaced by inner thought and narrator character.
* Added check for if you've asked Hermione to strip during Tier 2 dancing, for writing variation once she agrees on Tier 3.
* Added writing variant for Hermione Tier 3 show breasts ending, if you came on her.
* Adjusted event name var.
* Fixed genie distributing more points than he promised on "Flash A Classmate" public requests.
* Improved writing and posing during "show me your tits, flash your tits, flirt with students, flirt with teachers, kiss a girl and "let them grope you".
* Removed blktone and bld in some places where it's replaced by inner thought and narrator character.
* Lowered points payout slightly for "Kiss a girl" public favour.
* Removed mood penalty on one of Hermione's public events as bad mood is inescapable.
* Fixed double fade effect when give_reward label was called
* Fixed Susan's face cum layers not displaying due to wrong file structure
* Fixed card game tutorial highlight placement
* Fixed wardrobe vertical scrollbar styling not adhering to time of day
* Fixed card game tutorial being covered by narrator fade
* Replaced one-off screen effects with images
* Restructured objects and decorations image files and placed them in the relevant room directories
* Moved some image definitions into relevant mirror story scripts
* Removed old interface assets
* Added strip sounds during Lockheart Tattoo public event.
* Removed bld and blktone in some places where it's replaced by inner thought and narrator character.
* Minor writing improvements/fixes.
* Doll positioning and posing improvements.
* Reduced memory footprint by excluding DollCloth and DollOutfit instances from directly participating in rollback unless reachable through renpy scope
* Removed nonfunctional transform from gui_fade
* Removed unused asyncio import
* Unified the use of interface fade
* Replaced function call with a Renpythonic text display in confirm context
* Disabled tooltips on android devices
* Improved screen boundary detection to avoid overflow
* Improved readability and padding
* Fixed the existence of tooltip parameter causing massive lag spikes on hover/unhover events (even when tooltips were disabled) by patching the related engine focus function
* Fixed import initialization offset
* Fixed and converted hooch chibi images into spritesheets
* Fixed hooch chibi calls
* Fixed new chibi format file dirs
* Fixed inner thought overlay displaying above side images
* Added default audio fadeout value of 1.0
* Removed rebuild method calls (superseded)
* Removed incompatible updater code
* Converted cho new chibi into spritesheets (Placeholder)
* Commented out dev code to avoid issues
* Fixed Cho Quidditch outfit not being set properly during Gryffindor tactic talk, and base outfit getting overwritten.
* Removed bld and blktone in some places where it's replaced by inner thought and narrator character.
* Minor writing improvements.
* Minor Doll positioning improvements.
* Added a hint regarding the 'brutes' section of Cho's quidditch quest
* Fixed face and cum submodule processors referencing a wrong vars
* Fixed face and cum submodules custom zorder modifiers
* Fixed cum submodule zorder assignments and simplified the code
* Improved Cho Gryffindor match leadup public favours.
* Fixed some calls showing multiple ">".
* Removed bld and blktone in some places where it's replaced by inner thought and narrator character.
* Changed Hermione calling lollipops "Candy" since she's not American.
* Fixed miss-named Cho "crooked_smile" expression.
* Fixed Tonks' "Morph" effect being delayed in some instances.
* Fixed some calls showing multiple ">".
* Removed bld and blktone in some places where it's replaced by inner thought and narrator character.
* Minor writing fixes.
* Minor character positioning fixes.
* Converted the event into new format
* Fixed layering bugs
* Fixed return labels
* Fixed Narrator fade being applied on top of CGs
* Fixed music restarting twice whenever Genie returns to the office
* Fixed 'decorator' achievement being unreachable
* Fixed character face initialization in the case character image was never called before with facial values
* Fixed saybox disappearing for anonymous narrator calls
* Fixed inner thought fade not working with text tags
* Re-added Tonks' Silky dress using in-engine opacity to allow 0 opacity.
* Adjusted some calls to work with new bld/blktone functions.
* Fixed Hermione talking about herself rather than genie. (nickname)
* Minor writing and positioning fixes
* Fixed Cho's quidditch outfit being supplied list of colours even when not needed.
* Fixed Hermione hair cum layers
* Added sanity check for missing directories for cum layers relying on clothing states.
* Added sanity check for apply_color function, and added hints how to fix the errors.
* Added weights support to random block statements
* Added missing `open_wide_tongue_panties` mouth for Hermione
* Simplified CDS vars and attributes, and changed them to be in line with Renpy standards
* Fixed linting of character statements
* Fixed 'jazz take 2.ogg' file being located in the wrong directory
* Fixed minimum and maximum allowed initialization offset for statements
* Fixed show image statement missing space
* Fixed poster image show statement to enable prediction
* Fixed updater screen lacking parenthesis (was valid but slowed down initialization)
* Fixed random statement prediction
* Fixed uncommented Tonks chit-chat check (forgot to do so after testing)
* Added temporary school clothing on doll to go with CG.
* Added doll stripping.
* Added cum on Hermione Doll hair after last event.
* Adjusted writing to fit better with the rest of the game.
* Fixed Hermione doll positioning.