Home Artists Posts Import Register

Content

Hello blunderful ones, I just released the second version of my Wonderful 101 mod which now has a name: Teio Form. Since it’s the main thing I worked on for the past few weeks, I thought I would take some time to talk about certain choices made during its development.


The interface itself now has a princely theme.

Harsher Scoring
This is the closest anything in Teio Form comes to game design. Users are given a choice to enable a harsher scoring system which has two components.

The first component rebalances the amount of points awarded for various actions. By default 200 points are given for a Unite Guts reflection but since Guts is so useful and easy to execute this one gets the hardest nerf down to a mere 50 points. Conversely, the high risk Hero Counter awards the same amount of points as before and the cumbersome Throw awards even more points than usual. The goal isn’t to be cruel for cruelty’s sake, just to rebalance it so that rewards more closely match the risk involved.


Guts only awards 50 points, you'll have to rack up points some other way.

There's a danger in overcorrecting here, potentially causing players to use less enjoyable actions like the Throw on a frequent basis. To avoid this I've used a fairly light touch so apart from Unite Guts I've been conservative with my adjustments. As someone who has several hundred hours in the game, I feel I’ve struck a decent balance. Hopefully this makes certain actions more appealing on a situational basis.

The second component is more interesting, it targets the Dizzy bonus specifically. By default a Dizzy bonus will award 100 points which can be earned as long as an opponent is kept airborne via juggling. Once a player realizes that the Sword is the best juggler, they can fall into a pattern of launching with Sword then performing the maximum number of Sword hits possible before using Unite Tombstone to return to the ground and reset their jump. This sequence of attacks can be repeated indefinitely, awarding 100 bonus points for every hit.

Since the Wonder Liner is such a large part of what makes The Wonderful 101 unique, it seems like the scoring system could do more to incentivise its use. Thankfully Bayonetta provided a helpful template. In Bayonetta a player’s score will decay the longer they go without using a Wicked Weave. In other words an attack which is initially worth 10 points can be worth as little as 1 point if the player hasn’t landed a Wicked Weave in a while.

My Wonderful 101 equivalent uses weapon swapping instead. If the player refuses to switch weapon then a juggle will award this sequence of points: 100, 100, 100, 100, 50, 50, 25, 25, 10, 10, 5, 4, 3, 2, 1, 1, 1...

By swapping weapon the above sequence can be reset, awarding 100 points again for the next 4 attacks.


Score decay in effect, these would normally be worth 100 points each.

Here’s some of my thinking behind these changes. First of all, it was tempting to award 200 points for the initial attack after using a new weapon thereby actively rewarding more weapon swaps but as a player this would feel like punishment for not changing after every single attack. We crave those maximum point values which is why I let the player get multiple attacks off before they have to change, it simply feels good. As for the exact number of 4, this was chosen because Sword has the longest combo and the 5th Sword attack will send an airborne enemy to the ground. In other words, when a player reaches that 5th attack they need to vary their behaviour somehow if they want to keep the enemy airborne. Often this is done by using a special attack like Wonderful Rising to continue the juggle. By waiting until that 5th hit before the punishment begins to take effect, it feels reasonable because the player knows they could have swapped weapon by now. Assuming the enemy is still airborne, they must have done something other than just hammer the attack button already. They’re clearly not asleep at the wheel so it’s the right time for the decay to kick in. If they persist long enough the eventual countdown from 5 to 1 makes little difference to their final score but hopefully serves the purpose of highlighting this decay to the player.

As you might imagine this scoring system took some work to set up. I needed access to the player’s bonus points and a variable that tells me which weapon they’re currently holding. (Both of these things were surprisingly difficult to isolate.) Finding these values can be tedious but tinkering with them is always fun so after getting past the hard part it was tempting to craft a more elaborate system. At this point we might ask: What’s stopping a player from using Sword, swapping to Hand in order to reset the bonus and then immediately swapping back to Sword? The answer is nothing. You might consider that a flaw but fixing it through the scoring system would introduce a worse flaw, it would make the rules considerably more opaque. Viewtiful Joe’s transparent scoring system - which I outlined in my Viewtiful Joe commentary - is something I really appreciate. To expand on this a little, scoring systems are like a judge watching over your shoulder. A bad judge is temperamental or makes decisions which seem arbitrary. A good judge is fair and outlines the exact criteria against which you will be judged. Above all else it’s important to consider what effect this has on a player while they’re playing. For a player to truly engage with scoring, the rules have to be relatively simple since players will need to be able to remember those rules while also engaging in fast-paced combat. If the rules are too opaque or difficult to remember then scoring becomes guesswork which doesn't feel as satisfying. In this case, simple is best. You either swapped weapon recently or you didn't, that's simple enough to remember.

Even if the game had no Unite Gauge I would probably still use this system but the gauge makes this decision even easier because weapon swaps essentially have a cost. Doing the Sword-Hand-Sword swap I outlined earlier just to reset the bonus is pretty wasteful. In other words this new scoring quirk interacts with the Unite Gauge in an elegant way. At least I think so anyway. You might have guessed but this is the feature I’m most excited about. If you download the mod I hope you’ll give this one a try.

Name & Theme
The best name suggested to me was The Wonderful 101 Unlimited, so why did I choose Teio Form instead? Simply put I don’t want to risk stepping on Platinum’s toes. While it seems unlikely we’ll be getting any more Wonderful 101 content once the Kickstarter obligations are finished, I still wanted to leave that name alone in case they ever choose to use it. Teio Form is Vorkken’s equivalent to the team’s Unlimited Form so it seemed like a way of using that name without using it. I doubt Platinum would ever need Teio Form for anything else.

I realize that Teio Form sounds weird and perhaps a little unappealing but I've warmed to it and I hope you will too. As with a lot of names in The Wonderful 101, Teio Form is a Japanese corruption, in this case it means Emperor Form. The Form part itself is also a pun since the mod is a form you fill in. As a hacker it’s fun to take on the theme of the antagonist and after adding some visuals it became clear that this was actually a good idea for another reason. My initial vision was just to copy the in-game UI but now if you have the game and mod open at the same time it’s abundantly clear which is which. They’re complimentary items so I think it makes sense to mimic the rival rather than the protagonist.

As a happy coincidence, players looking to restore their characters need to go to the Wonderful Codes menu and enter Vorkken’s wonderful code to get their characters back. It just so happened that Vorkken’s one made the most sense for this procedure because Vorkken’s pack only unlocks characters. This allows me to run that code in its entirety and just append additional characters afterwards. Players don’t end up unlocking a Custom Block or Wonderful Cake unnecessarily.

Motivation
I've never made a mod before so take everything from this point with grain of salt. Despite having no experience, I think a couple of things went right with my process. It helps to start with a large number of ideas. Hacking feels like crapshoot at times where things which seem easy can be hard or vice versa. It takes one injection to disable the Wonder Liner Slow Mo effect but five injections just to hide the player's health bar. As a result of this unpredictability I've only accomplished around half of the stuff on my list. Thankfully it was a big list so the mod now has nearly 20 options. It helped to be able to bounce around from one idea to another whenever I got frustrated.

Even so, persistence was also key. Often when I gave up on a certain idea I would revisit it later and have better luck. I was particularly dead set on finding an elegant way to restore secret characters after my dissatisfaction with the previous version which relied on resetting the Mix Master bottlecap. This would essentially cause the game to recheck all bottlecaps thereby reunlocking any corresponding characters. With the introduction of Wonderful Codes (an easier way of unlocking characters) there's probably a much larger number of players who unlocked characters without the corresponding bottlecaps so I was determined to find a method which could support those too. It took at least two full days of searching to find the right approach using the Wonderful Codes menu. The main obstacle here turned out to be a check which stops players from entering a Wonderful Code twice, it was surprisingly hard to circumvent.

Getting around this block was crucial so players could restore characters repeatedly.

At times it was tempting to give up but it helped that I felt like the right person for the job. One of the things that propelled me to start working on this was knowing that the pool of people with the ability, time and passion to make hacks for this particular game must be very small. Considering that I had to submit a request to Nexus Mods for the game to get its own page and that my mod is still the only one on the list, this is so far proving to be a Venn diagram of one. Personally I've thrived under this condition. Knowing that I'm one of very few people who could step up to this task has made it exceptionally easy to stay focused. I put more than a few 16 hour days into this and barely felt the time pass.

I have the most and least downloaded Wonderful 101 mod.

In my previous post I mentioned that game criticism seems to be the field where most of my skills overlap. Some amount of overlap was happening here too between my interest in The Wonderful 101, game engines and assembly programming. Combine them all and you get the Teio Form mod. I feel like working within your overlaps is a good recipe for motivation and thus success.

Some Specifics
I've learned a lot about doing this stuff and developed some habits/patterns along the way. As an example, the dark background of the form itself proved to be a minor stumbling block. Apparently Windows checkboxes can't have their text styled on an individual basis, including color. Black text on a dark background is obviously a bad idea so the workaround is to have a checkbox with no text field and a corresponding label (which can be styled) placed next to it. Not only does this double the amount of components needed for each checkbox but it also means that labels can no longer be clicked to check the box. I was so unhappy with this approach I almost gave up on styling the form completely but I managed to write a new function which made this much more bearable.


This saved many lines of code and potentially even more headaches.

As long as the components are named correctly, the above code will tick the corresponding checkbox when a label is clicked. This might seem like overkill for such a small form but these kinds of refinements are helpful because they reduce the likelihood of error. If I manually linked each label to its checkbox (which is what I actually tried at first) then there's a much greater chance of making a mistake somewhere along the way. Using a system like this makes it much more consistent. Still, it’s pretty crazy that all of this was necessary just to get some white text. At least now I know what I’m getting into next time I decide to use a dark background.

Another little feature of the mod is that it can be booted before the game and will latch on automatically once the game appears. Normally you're supposed to launch the game first but saving users from themselves is good practice whenever possible. As an additional step, the form will close automatically when the game is closed which avoids having to deal with the nasty scenario of a user ticking a bunch of options then restarting the game.


These timers handle opening or closing the process, they check once per second.

Although I’m proud of some aspects there's plenty of room for improvement as illustrated by this snippet which hides the secret character checkboxes when not in use:


Inelegant is putting it nicely.

It's probably worth streamlining the above monstrosity, although in my defense it's not quite as bad as it seems at first glace. There's a difference between writing a program of your own and hacking one. Apart from some DLC, The Wonderful 101 is practically finished so I know this list is unlikely to grow or shrink. With that in mind, you could even argue it would be illogical for me to spend any additional time fixing it up. Even so, some kind of group tag would collapse all of those statements into a couple of lines which would be nice. I’m not familiar enough with the syntax to have done that yet, assuming it’s possible. I also made a rookie mistake with this function:


I lost cool guy points for writing this.

It works but it could be condensed into a single line with

checkbox.Checked = !checkbox.Checked

My programming is rusty and this is something I’d never tried before so apart from a few stumbles I’d say this is solid enough attempt overall. Some of the good parts can be reused on future projects, the rest I’ll clean up later.

Blunderful
Finally I’ll talk about what I think will be my biggest takeaway from this blunderful project. Mousing over an option on the form will prompt users with some help text explaining that option in more detail. This is one benefit of moving from a simple cheat table to a form. More importantly, users can now be warned to backup their save file before removing or restoring characters which makes this version much more self contained than the previous one where some outside information was necessary to understand those features. It should now be possible for someone to download the mod without any foreknowledge and use it just fine.

As a result of this helptext the word Wonder now appeared several times but since Vorkken repeatedly mistakes the word Wonder as Blunder in-game, I decided to follow that convention on the form so every instance of Wonder been Blunderised. My defense is that it’s fun. I hope you’ll agree.

This wasn’t an impulsive decision but it should’ve been. I’m ashamed of my hesitation which I think arose because modding is a new venture for me. When starting out the temptation is to do things “properly” as much as possible and rightly so I suppose since this blunderful idea raises at least one legitimate concern. When restoring characters, the user is prompted to visit the “Blunderful Codes” menu which doesn’t exist, there’s only the Wonderful Codes menu. I’m counting on them to understand what I mean which is certainly bad practice if you’re looking to minimize confusion. You might say it affects usability, you might say it’s a faux pas. I say whatever, it’s fun.


Note the blunderful use of Blunderful instead of Blunderful.

When you start making concessions you’re on the road to banality. Of course there’s a strong argument to be made for a healthy balance but the gist is that I would rather make too few concessions to common sense than too many. This was a reminder that I need to stand by that conviction regardless of what I choose to do next. I’ve gotten comfortable making videos to my liking over the years and that attitude needs to persist elsewhere or I’ll be setting myself back to square one for no reason. Hence blunderful.

Conclusion
Anyway, I think that wraps things up. As I said, I have many more ideas that could be integrated into Teio Form. Some have eluded me so far but with persistence they might be possible so I plan to continue working on it for now. I'll also need to update the mod whenever a patch releases which I think will be a smooth albeit time consuming process. I've learned a lot about using Cheat Engine in this short span and while I'm honestly not passionate about modding in a general sense, I am really enjoying the work. Depending on how this goes I might even turn my attention to another game at some point.

Thanks for reading, I hope you found something worthwhile here. If you own The Wonderful 101 on PC please take the mod for a spin. As of writing it has 16 downloads, I’m hoping to reach 101 some day.

Comments

Anonymous

This is Blunderful. You can bet I'll be getting on this whenever I get the PC version.

James Stevenson

This looks great, looking forward to seeing more mods in the future.

Anonymous

Seriously bummed that i own it on Switch and PS4 and cant justify buying it again

gibbdude

You absolute legend, this is amazing.

Anonymous

This is really cool, I think it's impressive that you took it into your own hands to make the improvements you wanted to see.

Anonymous

Man you made me finally made me break down and reinstall my Windows partition for this and... like maybe three other games. Cheat Engine is the bane of my existence. Love the mod so far, only two things on my wishlist is trainer persistence (ticks stay ticked on relaunch) and some toggle for the auto save (L/R3 or a button combo? or keystroke?) to help with PP runs. I'm so glad you took a crack at this, the results are fantastic so far