KittenAqua / TrainworksModdingTools

Modding framework for the 2020 PC game Monster Train
15 stars 9 forks source link

Custom clans breaks dark forge UI, extra softlocking buttons #103

Open Tempus opened 4 years ago

Tempus commented 4 years ago

Notably, Shiny Shoe is getting bug reports on this.

image

Tempus commented 4 years ago

This issue is caused by the game not correctly loading the Spine animation.

On this screen, the game will attempt to Instantiate the character in the lower left in ChampionUpgradeScreen.InitializeOptions() at the very end of the code block.

This will crash in ShinyShoe.CharacterUIMeshSpine.Setup() due to the game not finding the Idle animation for the Spine object.

Later on in a battle, the exact same setup function is called and correctly finds the Idle animation, which plays just fine.

After examining the objects in game using RuntimeUnityEditor, SkeletonAnimation's state property is unpopulated for some reason in the Dark Forge. The shaders match, which confirms that Trainworks.CharacterAssetConstructor.CreateCharacterGameObject(AssetReference assetRef, Sprite sprite, GameObject skeletonData) was successfully run (this is where we create the Spine object).

It's unclear at this time exactly why the same setup code is working in battle but not in the Dark Forge.

Tempus commented 4 years ago

Shiny Shoe has implemented a workaround for this that will go to staging. We can fix it if we really want the custom champion to be animated.