Commit Graph

97 Commits

Author SHA1 Message Date
4c98cbe669 Wardrobe performance improvements and bug fixes
* 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
2023-07-11 22:57:49 +01:00
6e93d8628f Bug fixes and improvements
* Added dev skip for cardgame for testing purposes (I swear!)
* Fixed missing achievement triggers for 'Mad Hatter' and 'Poster Boy'
* Fixed cardgame twins challenge being inaccessible
* Fixed colour picker invoking non-existing image outside wardrobe scope
* Disabled cardgame easter egg (broken, requires refactoring)
* Improved cardgame hints
* Improved cardgame event handling
* Fixed grammar
2023-07-08 21:44:47 +01:00
2f136986e2 Bug fixes
* 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
2023-07-08 21:44:47 +01:00
3a853c8e60 Bug fixes and updater improvements
* 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
2023-07-06 00:23:00 +01:00
79e25c27e9 Bug fixes
* 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
2023-07-05 21:56:53 +01:00
653628c90c Improve save compatibility warning 2023-07-04 19:43:37 +01:00
ce435cb69c Bug fixes
* Disabled DollChibi place method default pause (unintended)
* Load audio before fades during retrospection
* Simplify achievements if block
2023-07-04 15:55:19 +01:00
650563775e Bug fix
* Fix a rare bug that will mask parser bugs due to the order of initialization
2023-07-02 17:03:44 +01:00
5d9b311430 Bug fix
* Fixed updater crash caused by missing updater image during a potential server outage
2023-07-01 15:03:46 +01:00
2f74221abb Bug fixes
* Fixed name conflict within screen scopes (pickling error)
* Fixed expression editor error
2023-06-28 17:47:41 +01:00
0f3502de5e Bug fixes
* 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)
2023-06-28 00:54:14 +01:00
3ce6198359 Convert Hermione's Public Requests
* 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
2023-06-27 19:02:49 +01:00
ede1ee9a6c EventQueue and Event classes improvements and bug fixes
* Added _event, _event_queue globals
* Added ignore_globals class tuple
* Added extensive debugging tools
* Added next and cancel methods
* Added subevents support
* Added ability to enqueue events abnormally
* Moved menu_hints method outside of the EventQueue for better modularity
* Fixed queue filtering
* Fixed repeatable events
* Fixed missing id for the mainloop EventQueue
* Fixed groping T1 unreachable second event
* Removed daytime parameter (superseded by req)
2023-06-26 01:44:25 +01:00
13a7017773 Convert Hermione's Personal Favours into the new Event system to address code logic bugs.
* 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
2023-06-24 23:27:13 +01:00
cceec862af Expand EventQueue and Event classes
* 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
2023-06-23 19:07:37 +01:00
d8601def73 Bug fixes and callbacks
* 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
2023-06-16 15:51:48 +01:00
d14fe598b5 Android permissions
* Patched If function to work with actions
* Added AskPermission class action
* Added storage permission request for mods menu
2023-06-10 16:45:31 +01:00
012084ca10 Modders QoL and improvements for clothes
* 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
2023-06-08 17:41:06 +01:00
68dc4075c2 Save compatibility and version bump 2023-05-20 20:04:47 +01:00
598bff0d7c Save compatibility and version bump
* Updated save compatibility script
* Updated Ren'py to version 8.1 stable release 🎉
2023-05-15 19:36:08 +01:00
a9740ff99e Version bump
* Added staging version support for version_float func
* Bumped version
2023-05-14 18:15:38 +01:00
b5828b67f5 Pre-release
* Version bump
* Added pre-release notices and warnings
* Disabled some of the new Cho content until it gets properly finished
2023-05-13 16:08:35 +01:00
395c3d4397 Expression Editor
* 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
2023-04-27 20:46:24 +01:00
1d2e46b909 Bug fixes
* 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
2023-04-22 16:39:15 +01:00
aa29c72e84 Optimisations, SlottedObjects, and bug fixes
* Implemented SlottedObject with rollback support,
* Fixed poses not rolling back correctly (see above)
* Fixed character re-showing during cg scenes
2023-04-20 19:59:55 +01:00
93909e5862 Bug fix
* Fixed expression editor not re-initializing after reloading the script
* Fixed expression editor not detecting modified expressions after reloading the script
2023-04-20 18:33:36 +01:00
697819b5ba Bug fixes
* 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
2023-04-16 17:47:50 +01:00
d3d2f6c8aa Modding support
* Resolved CHARACTERS constant to allow adding custom characters without having to rely on monkey patching.
2023-04-11 20:36:25 +01:00
670e7d82fb Refactor variables - Part 2
* Finished refactoring quest and character vars
* Removed quest class (superseded)
2023-04-03 00:48:38 +01:00
b28a3e250d Refactor variables - Part 1
* Added get_character_scheduling function
* Removed update_interface_color calls (Redundant)
* Redesigned variable naming convention to simplify assignment and lookup
* Removed counter_class (Superseded)
* Removed DynamicDisplayable CG implementation (Superseded)
2023-03-31 23:41:48 +01:00
5a8e4d85ab Image cache preference
* Added image cache size preference
* Increased default image cache size 300MB-> 512MB
* Fixed get_gpu_info function to encode bytes to string before joining
* Fixed missing bar images
2023-03-24 19:16:22 +00:00
f71070f7f3 Memory Leak fix
* Fixed a memory leak inside ScreenshotImage class due to unsafe access and storage of list of renders
2023-03-24 15:39:14 +00:00
f29f8aecfe Tooltip improvements and bug fixes
* 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
2023-03-23 21:25:38 +00:00
08c8a42d1f Bug fixes
* Fixed developer start shortcut not functioning when CTRL is being pressed
* Removed overlay from TBA_message function (superseded)
2023-03-21 21:30:35 +00:00
fab4da6f76 Bug fixes
* 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
2023-03-21 00:38:33 +00:00
fe67e3d9ca Fixes
* 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.
2023-03-20 13:19:57 +01:00
8ad59d1421 Bug fixes
* Fixed a regression in music playback
* Unexposed monkey-patched engine functions to avoid issues
2023-03-16 22:55:14 +00:00
591377163a Lint, CDS, and bug fixes
* 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)
2023-03-13 20:29:05 +00:00
14ca2bfba6 Fixes and improvements
* Removed blktone in some places where "nar" character already applies it.
* Added some dialogue options during "cc_pf_talk_T1_intro_E2".
2023-03-13 13:54:13 +01:00
01a2df27e7 Transitions and Bug fixes
* Moved transition definitions into their own file.
* Removed narrator name and side image
* Added automatic narrator speaker fade
* Added automatic inner thought gradient fade
* Fixed night.ogg playback
2023-03-12 21:40:16 +00:00
dc212e80d1 Audio
* Added `sound` sfx channel
* Refactored and unified sound & music calls
* Fixed missing sounds in astoria events
* Removed hide_screens label (Redundant)
* Removed play_music, play_sound call labels
2023-03-11 22:01:39 +00:00
b2e7c44b2e Narrator
* Reworked narrator calls and unified them across the entire game
* Added narrator screen inheriting from say screen
* Removed obsolete narrator code
2023-03-11 19:43:02 +00:00
fcd56f4516 Bug fixes
* Fixed parcel icon references
* Fixed character studio pose reference
* Fixed and updated expression editor to work with new paths, and disabled editor initialization until it is explicitly executed
* Fixed common wardrobe functions initialization offset
* Fixed typos
2023-03-09 21:56:16 +00:00
52b9c50c7b Bug fixes
* Fixed temporarily hidden clothes being excluded from staleness checks during pose changes
* Fixed Luna's lion outfit
* Replaced list method call with a for loop, to avoid large list memory allocation
* Fixed big booba an dumpy cheats
* Fixed body controller submodule hash generator
* Fixed cho panties throw crashing the game
* Fixed Outfit/Clothing unlock referenced methods
* Excluded body submodule from doll and icon image generation (superseded by bodyparts)
2023-03-03 00:50:50 +00:00
96f0113c95 Nicknames
* Unified naming convention for nicknames as per writer's request
* Fixed dum lack of dynamic name flag
2023-03-01 22:14:00 +00:00
fb8e3aab0f Outfit import/export
* Re-implemented image payload injection using Python3-compliant methods
* Added sanity checks for image importing and exporting
* Added compression for the payload
* Added user input for exported image file names
* Removed redundant layer for Tonks' ribbon bra
* Updated MyMod clothing definition example.
* Fixed regression in outfit clone functions
2023-02-10 23:12:16 +00:00
5fdf1e87fe Bug fixes
* Fixed traceback crash (doh!) caused by uncaught ast eval exception
* Fixed dev colour code info screen
2023-02-09 19:35:52 +00:00
2acccbea5a Bodyparts, Modding, Bug fixes
* Added DollBodypart class to allow more extensive modding support for characters, along with dedicates layers for breasts, hips and so on...
* Added more bangs into DollClothDynamic, allowing tracking of singular objects and the ability to chainload the IDs
* Added get_character_body global method
* Added istype global method
* Improved caching, layering for dynamic clothes
* Improved hashing for Doll instances
* Improved readability and improved internal naming convention for Doll-type classes
* Removed dedicated buttplug slot (superseded by multislot reimplementation)
* Fixed clothing supplied skin layer issues with zorders
* Fixed DollClothDynamic __repr__ lack of quotes
* Fixed Hermione's open_wide_tongue mouth
* Fixed Hermione's tattoos missing images
* Fixed Cho's 'goodbye' after-summon skit using wrong number of expressions
2023-02-07 19:22:05 +00:00
99f174cfbb Refactoring, Optimizations, Bug fixes
* Fixed Hermione's hslut panties
* Refactored image calls
* Refactored character poses (partially)
* Added hash generation to all Doll-type displayables
* Hashed and cached Doll layers (Greatly improves rollback performance)
* Fixed outfit and colour randomization
* Added is_stale method to doll-type displayables to reduce code complexity
* Removed doll-related redundant global methods
* Added AVIF format support
* Simplified Doll posing
* and more...
2023-01-18 20:22:59 +00:00
c1b04f6ccd IO Overhaul, Refactoring, and more
* Refactored DollFace
* Refactored DollBody
* Refactored DollCum
* Refactored DollCloth
* Refactored Doll
* Refactored clothing item zorders
* Refactored implementation of body, face, cum, clothing layers
* Refactored function calls
* Removed DollLipstick
* Added DollMakeup class, allowing adding dynamic clothes tracking face states
* Added DollClothDynamic, allowing dynamic clothes tracking other cloth states with bangs support
* Added cache to frequently called functions, drastically reducing the overhead
* Added hash system, reducing clone redundancy
* Added layer modifiers support for all types (face, body, cum, clothes etc.)
* Added support for an arbitrary number of equipped multislot clothing items (makeup, tattoos, piercings, etc.)
* Simplified initialization for clothing items and dolls
* Simplified class function calls
* Reduced the number of image creation calls
* Added hue support for additional skin layers
* Added displayable support to image cropping function
* Replaced store cache with built-in functools cache for _list_files function
* Refactored all character files
* and more...
2023-01-14 23:04:54 +00:00