Fix texture flicker in Unicorn Way (WC_Unicorn) - #149
Open
alberto-is wants to merge 3 commits into
Open
Conversation
Adds the dynamod command group (list, set, toggle, remove) for QA use to manage a character's dynamods at runtime, enabling isolation of objects the server should not spawn (e.g. client-rendered zone effects).
Adds the dynamod command group (list, set, toggle, remove) to the commands reference.
New characters now spawn with the WC_Rattlebones_ButterFlyZone instance dynamod set to off (Wizard.cs), so the client-rendered zone effect is no longer spawned by the server and no longer overlaps the static scene. The default spawn also moves to the Headmistress House (Imlight.ini), where the first quest is given, so players pick it up immediately and the issue resolves itself.
Jooty
self-requested a review
August 8, 2026 15:11
Jooty
reviewed
Aug 12, 2026
Comment on lines
+159
to
+168
| // Client-rendered zone effects must not be spawned by the server, as the | ||
| // duplicated copy overlaps the static scene and causes texture flicker | ||
| // (e.g. the wall foliage in Unicorn Way). Default these off so new | ||
| // characters don't need the first quest to fix it. | ||
| DynamodSet.AddDynamod(new Dynamod { | ||
| ZoneName = "", | ||
| ClientTag = "WC_Rattlebones_ButterFlyZone instance", | ||
| ModState = "Off" | ||
| }); | ||
|
|
Contributor
There was a problem hiding this comment.
You should stray away from setting dynamods through code, because it's adding a second maintainability layer.
Let the quest results handle dynamod changes. If a player forces a teleport outside the starting zone, assume they know what they're doing and that things WILL be broken.
Jooty
requested changes
Aug 12, 2026
Jooty
left a comment
Contributor
There was a problem hiding this comment.
Good commands. PR ties with Revive101/spiraldb#1 (good catch).
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes (partially): #140
Fixes the "extreme bugginess with textures" reported in Unicorn Way. The static wall foliage was flickering between a green and a withered state. Those two states come from two zone-wide ambient effects that overlap each other:
WC_Rattlebones_ButterFlyZone instance(green ivy) andWC_Rattlebones_FogZone instance(withered ivy + fog).Also adds the new
dynamoddebug commands (list,set,toggle,remove) used to diagnose and manage character dynamods at runtime.Root cause
Unicorn Way renders two overlapping zone-wide ambient effects, both spawned by the server as dynamic objects:
WC_Rattlebones_ButterFlyZone instancerenders the green ivy (butterflies).WC_Rattlebones_FogZone instancerenders the withered ivy + fog.When both flags are active the two textures overlap, which produces the z-fighting/flicker between green and withered as the player moves.
In addition, the missions did not manage these flags correctly:
WC-COMMONS-MAIN-001turnsButterFlyZonetooff.WC-UNICORN-MAIN-007turnsFogZone(andWC_Debris) tooff.ButterFlyZoneback toon, so after completing the zone both flags ended upoffand the "revived" green state never appeared.Changes
WC_Rattlebones_ButterFlyZone instancedynamod tooffat creation (Wizard.cs), so the object is not spawned for them until it is turned on.WizardCity/Interiors/WC_Headmistress_House), where the first quest is given, so new players pick it up immediately and the problem resolves itself. This also helps with the first mission not appearing for fresh characters.dynamoddebug commands (list,set,toggle,remove) for QA to manage dynamods at runtime and isolate similar zone effects.Dependencies
This fix also depends on another pull request in spiraldb. There, the corresponding mission was fixed so it flips the
WC_Rattlebones_ButterFlyZone instanceflag toon(before turning the fog off), so the green "revived" state actually appears after completing the zone. Without that quest-side change,ButterFlyZonestaysoffand no green shows.Verification
dynamoddebug command.ButterFlyZone = onandFogZone = off, the green ivy appears on its own (the intended revived look) and remains stable.Notes