Innocence Seekers: Akari of the Light – Battle system test (current progress, part 2)

This is my second post detailing my progress in developing the battle system test. So far, I’ve just started creating the battle interface, and I’ve begun the player panel. The player panel is an important part of the battle interface, as it holds the most important information on the state of the party.

The following screenshots show the player panel:

Battle System Test
The player panel of the battle system test.

This shows the player panel, located on the lower left part of the window. The left column shows the player characters’ names, the middle column the characters’ current and maximum HP, and the right column the characters’ current and maximum MP. Note that there is a fairly large gap between the rows; this empty space will be filled with the character’s current status (such as whether the character is incapacitated, or what status effects apply to the character).

Battle System Test
The player panel of the battle system test, with Japanese text.

This screenshot is identical to the first screenshot, but I’ve experimented with Japanese text.

Next I intend to add the enemy panel, which will show similar information to the player panel (with the exception of MP, which is not used for enemies). Later, I’ll add health bars for both player characters and enemies, magic bars for player characters, and the command panel.

As for the stat editor, I’ve added the ability to paste (but not copy) content from the clipboard, by using Ctrl+V. However, at this point, it does not work well with IMEs. This had given me an opportunity to test Unicode input, and while testing, I had found a bug in the backspace code. Originally, I specified a loop which will continue running as long as the final character in the reduced string was 0x80 or higher. However, I found that the loop did not work, and the cause was that the std::string overload for the [] operator emitted a signed character, when I’ve tested whether the value was higher than 0x80. Since 0x80 was interpreted as a (32-bit) integer, and characters were 8-bit, this meant I was comparing a negative number with something higher than INT8_MAX. After fixing this bug (and a couple of others related to how I handled UTF-8; I had to keep the character which was removed from the string, and repeat the loop if the value was between 0x80 and 0xbf), I managed to get backspace working properly.

I’ll continue in a future post. Until then, it’s goodbye.

P.S. Today, Yui Ogura turns 21. I wish her a happy birthday.

P.P.S. Speaking of which, it’s also Yayoi’s birthday. One interesting thing about her is that even though she was often ignored by her parents, her older sisters actually looked after her. It is mentioned at one point that when Yayoi had a birthday party once (at Michiru’s house), her parents didn’t give anything to her, but Mutsuki and Kisaragi pooled their allowances to give Yayoi a Magical Kurumi-chan figurine (of Aya). Because of this, Yayoi doesn’t think much of her parents (to the point where only their deaths made her care about them), but respects and looks up to her older sisters very much.

P.P.P.S. I just read the chapter of New Game! where Aoba and Nene’s friend from high school, Hotaru, returned from France for the New Year. One can easily tell that she’s been fairly influenced by French culture, to the point of kissing her friends.


Posted

in

by