v0.11.4 - The Sprite Chart Removal Update
I feel so much lighter now~ -Monika
Gameplay Changes
-
the farewell select menu now has another button that launches your most frequently used farewell. this changes as your most frequently used farewell changes.
-
random chatter settings are now affected by affection - lower affection levels have slower random chatter settings available
-
repeat topics setting now starts as enabled
-
scrollable menus that have multiselect use a new checkbox UI
-
the Outfit Mode checkbox now has a better looking UI
-
random limit topic will no longer be shown constantly if a user does not have repeat topics enabled and is out of random topics. The topic is limited to once every two weeks.
-
all input (name/instrument) boxes now are limited to mostly latin-based characters (aka standard alphabet + some punctuation)
-
dialogue boxes no longer dissolve with Monika
-
back buttons in menus no longer scroll with other buttons
-
piano no longer crashes if a sprite is missing
Topic Changes
Additions
monika_asimov_three_laws
monika_why_spaceroom
monika_why_do_you_read
monika_eating_meat
monika_remembrance
monika_discworld
- 5 new farewells
- 2 new songs
- 2 new listens
- 1 new greeting
- 1 new mood
- 1 new brb
Changes
monika_naps
- fixed nap checkmonika_attractiveness
- extensively rewritten to fix inconsistencies between this topic and other topics- back from work greeting - additional dialogue options added to Bad and Really Bad routes
- youtuber impersonation greeting - limited to one time only
Removals
mas_mood_lucky
Spritepack Changes
Additions
- Green Hoodie by @Olliesama
- Heart Choker by @SirNimblyBottoms
Fixes
-
typofixes
-
fixed
xdotool
crashes on Linux -
fixed crashes involving suntimes (
buildupdate
, index crashes) -
fixed nap check in
monika_naps
-
fixed "Falling in Love at a Coffee Shop" song not appearing in song menu after it is initially shown
-
fix "bad command" not showing correct sys path on Windows
-
fixed dicts not being accessible in dialogue substitution
-
fixed crash in snow weather prog point
-
fixed raise/lower volume hotkeys (+/-) being disabled forever
API Changes
Sprites
- Monika sprite code combinations are now generated dynamically - no need for lengthy sprite chart files
- the sprite checker tool can now switch between checking sprite validity for dynamic or original sprite generation
Dialogue
- player nicknames should now be selected with
mas_get_player_nickname
instead of usingplayer
- new
dissolve_monika
transition - should be used when wanting to apply dissolve to Monika in topics. (See #6033) - specific labels can be called when a topic is derandomed on a per-topic basis. See #6117 for more info
- scrollable menus must use a new set of constants for area. see #5944 for more info.
Farewells
- docking station farewells can now be customized without copying the flow by setting certain variables. See #5957 for more info
random
property is now ignored in farewells
Event objects
- added various convenience functions for Events: (#6027)
mas_checkEVL
- evals an arbitrary function with an Event given an eventlabel, accounting for invalid eventlabels. This should rarely be used.mas_getEVLPropValue
- retrieves an Event property given an eventlabel, accounting for invalid eventlabelsmas_setEVLPropValues
- sets arbitary properties on an Event given an eventlabel, account for invalid eventlabelsmas_isPoolEVL
- checks if the Event associated with the given eventlabel is a pool event, accounting for invalid eventlabelsmas_isRandomEVL
- checks if the Event associated with the given eventlabel is a random event, accounting for invalid eventlabelsmas_isUnlockedEVL
- checks if the Event associated with the given eventlabel is unlocked, accounting for invalid eventlabelsmas_getEVL_last_seen
- gets thelast_seen
property from the Event associated with the given eventlabel, accounting for invalid eventlabelsmas_getEVL_shown_count
- gets theshown_count
property from the Event associated with the given eventlabel, accounting for invalid eventlabelsmas_inRulesEVL
- checks if the Event associated with the given eventlabel contains the given keys in its rules dict, accounting for invalid eventlabelsmas_assignModifyEVLPropValue
- applies an assignment operation to a property on the Event associated with the given eventlabel, accounting for invalid eventlabels. This should rarely be used.
mas_globals.this_ev
- set to the current Event object whencall_next_event
is called. Does not work with delegate topics (see #6069)__repr__
is now defined for Event - it shows the event label.- The
no unlock
rule has been changed tono_unlock
Backgrounds
MASFilterableBackground
now has support forex_props
EXP_TYPE_OUTDOOR
- denotes a background is not in a roomEXP_SKIP_LEADIN
- denotes that this background should skip intro dialgoue when changingEXP_SKIP_TRANSITION
- denotes that this background should skip transitionEXP_SKIP_OUTRO
- denotes that this background should skip outro dialogue when changing
mas_startupBackground
- newstartup
kwarg passed in to let backgrounds know if they are being set on startup or notmas_change_background
- now runs progpoints after background setup.- the
disable_progressive
arg now locks weather and masks for a background - set both
disable_progressive
andhide_masks
to True to mark the background as not supporting weather
- the
mas_getBackground
- returns a background given a background ID
Submods
- exceptions are now raised if a duplicate submod is loaded
Utils
mas_utils.stdout_as
- context manager generator that can replace stdout with a given stream- input filters moved to
definitions
mas_globals.is_steam
- new global var that is True if we are running from steam