Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
Tags

Sup Ramza, hope your weekend is going well :)

It launches smoothly now, thank you. So, I was trying to get the name change to work, still wasn't changing even though the sprites and faces were. I even tried using the Cosmetic Equipment demo to no avail. Then I noticed in your screen you were using the Angel set. I was working with Harold's Wolf set. THAT was the issue lol. For some reason, the first Cosmetic Set in the Structure List won't change the priority name. But the second will with no apparent problem: 

So far I've been able to get by in my project by making a dummy set in the first slot, and just not using it. Also, in the first set, the "ActorSprites" parameter in the structure list can't be empty or the second won't work either. The values don't have to be filled with anything, but the plain text does have to be there, if I'm explaining that right: 

Sorry to keep bothering you T_T

No bother at all, in fact, I appreciate your in-depth testing, it makes finding the problem easier.

I tracked this one down to the fact that I used an if statement that checked for a 'falsy' statement, instead of for if a value was undefined. The normal if check (if (VARIABLENAME){ do stuff }) will return false if VARIABLENAME doesn't exist. Unfortunately, it will also return false if it has the number value 0, as well. I was using the above to check if a priority name had been defined for the current set, but it never checked against set number 0 (the first one) because if the value was zero, it was treating it as if it had not been defined.

I also corrected the other problem you found. Although you didn't mention specifically, starting the game when the ActorSprite value of any set is completely blank will cause the plugin to throw an error and not load, but won't cause the engine to crash, instead allowing you to play the project with all cosmetic set effects disabled. This is because the default value is supposed to be an empty array. If the value is instead blank, the plugin fails to parse it's data entirely, throws an error and fails to load. If the data is a blank array, it can parse it as nothing, and move on.

To correct that, I changed the plugin parameter to be [] by default, instead of blank. So if you create a new set that contains no actor specific sprites, and never touch the ActorSprites parameter, it won't remain blank and crash the project.

These fixes are already uploaded. I added a revision to v1.21, and you can download it at the same link as before.

-Ramza

It works perfectly! Thanks for everything my dude. You really went out of your way.