Monthly Archives: June 2014

Dreamblazers Devlog: Week of June 30, 2014

Last week’s achievements

* Sent art feedback for Kelly, Telia, Princess Leaf
* Sent art requirements for Winter, Jig (normal outfit), and Minori
* Revised art feedback for Telia, Princess Leaf, and Lash

Current focus

Character design.

Weekly goals

* Send in art feedback for Tango, Kelly, Telia, Jig (alternate outfit), and Lash, plus feedback for any updates that come back

Comments

This week has been all about art—and about realizing my entire life has been a battle between the practical vs. the personal. Perhaps everyone’s life is no different. Go to school and get good grades, but make some friends. Get a good job and make some money, but don’t forget your moral values. Keep your business relationships business and your friendly relationships friendly.

As I wrote my character profile for Minori, I mentioned that she’s a great athlete but she doesn’t need to be portrayed as a tomboy; she’s perfectly comfortable with both her “feminine” and “masculine” sides and slightly more with the former. I wrote that Dreamblazers stars “characters just like me who fit into the margins instead of the majorities.”

What’s that mean? In most demographics, I’m one of the only people I’ve ever met who’s like me. Faith? I grew up agnostic and Christ found me later. Gender? Don’t know, don’t care, maybe even don’t have one. Sexual orientation? None: I’m asexual. Race? Mixed and one of them is such a minority that even Street Fighter, the most diverse series ever, doesn’t represent it.

I choose to be me. Not a statistic, but me. Not a cause, but me. Not even a set of beliefs or values, but me.

So I’m shedding one more element of society. I’m becoming even more me and even less everyone else. And this time it’s on purpose! After nearly thirty years of false dichotomy, no, I will not separate the personal from the practical any longer. I am not my money, my career, or anything less—nor anything else—than a person who loves and feels. A practical relationship isn’t worth having. Flora means a lot to me and I told her so.

With that said, what does it mean for Dreamblazers?

“Writers aren’t people exactly. Or, if they’re any good, they’re a whole lot of people trying so hard to be one person.” -F. Scott Fitzgerald

Truth be told, nearly all of my characters are self-inserts, including ones who I didn’t intend to be. Cotelle is my battle between kindness and pride; Leaf my curiosity and unending questions; Ardis my distinctiveness and disdain for the mundane; Jelia my fluid identity and inner child; Sakura my conflict between individual and collective priorities; Evelyn my unseen tension between actions and feelings; Hikaru my defensive response to utilitarian angst; Celty my social uncertainty and desire for ultimate freedom; Astrid my proactive response to utilitarian angst; Telia my self-importance and ego; Tango my love and idealism; Kelly my latent resentment; Jig my eccentricity and faith; Minori my creativity and warmth.

Because they all mean a lot to me, seeing a designer go hurts deeply and personally. However, it’s also because of this that after a rough week of tears, reflection, and prayer, I’m confident everything will be alright. I’m the spirit of my characters and I’m always here.

Dreamblazers Devlog: Week of June 23, 2014

Last week’s achievements

* Added hit rates to all existing damaging attacks
* Added critical hit rates to all existing damaging attacks
* Tweaked EP costs of ~80% of attacks that cost EP

Current focus

Character design.

Weekly goals

* Send in art feedback for Tango, Telia, Kelly, and Princess Leaf; pending Flora’s availability, send in requirements for other characters, title screen art, or ending screen art

Comments

Positive battle progress for sure, but…

This week’s big news is that my wonderful character designer Flora informed me last night that she’s changing careers and will no longer be freelancing as of some time in August (approximately). Obviously I wish her all of the best! I’ll be hoping for her success in whatever she does and I’ve already prayed for the same and will continue to.

On a personal level, this hits very, very, very hard. As I write this sentence, it’s 11:33 AM; usually I don’t even wake up until 2:00 or 3:00 PM, so I can’t post these devlogs until 4:00 to 6:00, but I didn’t have the energy left to stay up late last night and I didn’t have the inner peace to not wake up early today. Drained and unsettled!

Flora will get a mega farewell email from me, that’s for sure.

On a professional level, I spent a few hours assessing how to move forward and we’re actually in about as good a spot as can be imagined given the circumstances. She and I finished (or will finish) designing various “groupings” of characters from the same social circles, so the foundation is at least 90% there and we can be very happy with that.

On the flip side, the groupings who we didn’t finish either didn’t start or pretty much didn’t start: we never touched the characters of a certain alien-like species, we never got to any non-humanoid creatures, we only did one of the serious antagonists, we only did one of the comedic antagonists, and we only did one of the superhero characters.

In other words, we focused extremely well on primary protagonists and important NPCs. Even if art style discrepancies creep in between Flora’s designs and another artist’s designs, any dissonance should be diminished because the characters themselves serve different roles.

With all of that said, Flora’s still here for now and she’s giving herself a transition month of dedicated freelancing to find fitting cutoffs with her clients, so I’m devoting all of my efforts to getting as much done with her as possible. I’ll do game dev stuff during any lulls between sending feedback and waiting for new drafts, but my main goal is to close out this artist relationship in the strongest way.

Dreamblazers Devlog: Week of June 16, 2014

Last week’s achievements

* Preliminarily finalized dodge rate formula
* Sent art feedback for Jig (alternate outfit) round 2 and Lash round 2

Current focus

Balancing and testing enemies and enemy groups.

Weekly goals

* Send in art feedback for at least two out of Tango, Telia, and Kelly
* Send in face portrait requirements for at least three characters
* Add hit rates to all existing attacks
* Test a range of player party attacks against various early-game enemy groups and vice versa

Comments

Considering I got swept up in E3 hype for half the week and only had three and a half effective days (late Thursday to Sunday), I pulled off basically everything I intended to. Getting evasion correct proved more challenging than expected, though; I didn’t have my breakthrough until nearly midnight on Sunday. Testing nine characters or monsters against each other in various permutations, I aimed for a few key points:

* Celty, who has the game-best accuracy and game-best evasion, should almost always be able to hit a character who has exactly her stats
* Even characters or monsters with notably above average accuracy should have trouble hitting her even half the time
* Playable damage dealer characters, including fairly inaccurate ones, should always hit enemies except for the most extreme cases, who they should still hit more often than not
* Evasive playable characters should have dodge rates hovering around 25-40% against average enemies
* Level advantage should give a bonus to hit rate but not to dodge rate
* A certain early-game joke boss should almost never hit Celty but should hit “normal” evasive characters like Evelyn and Sakura around half the time

I went through a couple dozen iterations of increasingly intricate formulas, each missing the mark on at least one of these points, but found my solution when I decided to start from scratch, tossed out all the mounting complexity, and created a simpler formula. Now I only need to test a bit further to make sure it holds up at higher levels, then start running real in-game simulations with multiple-character parties and enemy parties.

Dreamblazers Devlog: Week of June 9, 2014

Last week’s achievements

* Finished creating early-game moves used by the original player party…
* …then rebalanced nearly all of them after testing
* Rebalanced damage formulas
* Rebalanced damage of nearly all enemy moves after testing
* Rebalanced a few enemies’ stats

Current focus

Balancing and testing enemies and enemy groups.

Weekly goals

* Send in art feedback for at least 60% of everything that came in (a large batch arrived on Sunday night, so I didn’t finish it)
* Implement dodge rate formula and add hit rates to all existing attacks
* Test a range of player party attacks against various early-game enemy groups and vice versa

Comments

I probably should have known this after three and a half years of relying on Scald burns in Pokémon, but comparatively speaking, 30% is a very high chance when it represents the odds of your most brokenly powerful monsters using their most brokenly powerful attacks.

This week is all about nerfing without neutering. So far I’ve largely been taking the powerhouse attacks down several pegs while elevating the weaker attacks to compensate, making monsters more consistently threatening but holding back from letting them one-shot party members. The other key will be adding the dodging formula since Celty is an artful dodger who needs her core ability added.

Dreamblazers Devlog: Week of June 2, 2014

Last week’s achievements

* Finished creating moves used by Miharu overworld enemies: Energy Siphon, Pounce, Pummel, Radiant Flare, Rush, Seize, Silk Wrap, Siren Song, Slash, Smash Takedown, Spiky Vines, Super Hammer, Super Tackle, Swiften, Tackle, Tempest, Thunderbolt, Trap Wrap, Vital Fang, Whiptail, Wild Charge, Wild Thrash, Zap
* Assigned Miharu overworld enemies to learn their moves
* Created and assigned battle AI to all Miharu overworld enemies
* Put together all enemy groups for the Miharu overworld

Current focus

Balancing and testing enemies and enemy groups.

Sample stuff

AI for Kobold Chief (ability names blacked out)

AI for Griffinaire (ability names blacked out)

Weekly goals

* Send in art feedback for everything that comes in
* Finish creating early-game moves used by the original player party
* Test a range of player party attacks against various early-game enemy groups and vice versa

Comments

I achieved everything I expected to this past week and a bit more; instead of only covering 25% of overworld enemy AI, I did all of it, which is great. I owe a lot to ORK Framework for making battle AI sensible to a designer. =) Just need minor polish for the early party, then it’s time to begin testing!

I’ll end with a few words (or a few hundred) about battle patterns…

Even Year 1999 Me (or so) understood in some primitive sense the value of challenge and battle AI, but today I’d say I was a bit heavy on the challenge at the expense of the AI.

For example, in a document that looks like it’s from 1999 or 2000, I have a paragraph about a battle with a single powerful boss, two archers who use a lock-on ability and then get guaranteed criticals on their target for the rest of the battle, two mages who boost enemy party stats twice each per turn, and a warrior who can attack twice per turn. The idea was that since the main boss has too much health to take it down first, the player has to chip away at the weaker foes like the mages and the archers while the main boss runs wild.

I can tell exactly which games my younger self borrowed most ideas from, but this particular battle seems incredibly forward-thinking. It’s a lot like a Bravely Default or Etrian Odyssey boss fight, but BD and EO didn’t exist at that time and I can’t name any RPGs of that era that could have modeled a battle of that complexity for me. If anything, I probably ported player party dynamics over to enemies.

However intricate it might be, though, I believe the battle is flawed: just like certain EO bosses who use their ultimate attack every fifth turn, it’s too consistent. Five of the six enemy party members do only one thing and four of those six only do that one thing to one specific character; the archers pick a target and stick with it while the mages will only target unboosted allies.

With no random chances modifying the sequence of events, winning the battle boils down to identifying a pattern and then going through the motions. For all its moving parts and hard-hitting enemies, it’s not especially more exciting than Final Fantasy VI‘s Whelk, the tutorial boss. Remember not to attack when it’s in its shell. Remember to target the mages and archers first.

To my credit, at the time Star Ocean: The Second Story was my newest Top 5 Game and the idea would fit much better in real-time action battles, which emphasize player execution instead of player comprehension. Any turn-based PvE (Player vs. Environment) battle system, however—even halfway real-time Final Fantasy or Chrono Trigger ATB systems—requires a degree of randomness to feel dynamic.

This boss fight will still exist in a new form, but winning won’t be as simple as figuring out the “trick.” The enemies might use the pattern above or they might do something different. Status effects will come into play. Critical hits will be likely instead of guaranteed, but they won’t be limited to one singled-out target. The enemy side will have healing. Compared to the original full aggro DPS idea, the battle will probably be less challenging, but definitely more unpredictable and engaging.

For me that comes a little later, though. I’ve got an overworld and normal encounters to take care of before I get to dungeons and boss battles!