Another month has passed, and that means it’s time to provide an update on Telepath Tactics! So what’s new?
First, there’s this! Much as with the voice actors from my last game, I’ve been wanting to interview some of the folks who’ve helped me out with various aspects of Telepath Tactics. These are extremely talented people, and they deserve recognition for their efforts. I’ve started out by interviewing Telepath Tactics composer Ryan Richko. He has interesting things to say about composing for video games, but just as importantly, there is some pretty awesome music embedded in the article. I suggest giving it a listen if you haven’t yet!
Now, with that out of the way, let’s move on to what we accomplished on the game itself this month:
–new sprite variant graphics! Since I am now paying for all of the remaining graphics work out-of-pocket, I am forced to be more cost-conscious than ever–therefore, where we needed a few new sprite variants for characters with unique complexions or hair, I took care of those myself. I also pixeled most of the remaining animations for the game’s variant sprites. All told, this probably saved me something in the neighborhood of $500-600 in exchange for about 6.5 hours of my time. (In theory, it would have been better to spend that time creating new battles, but y’know: the sprites needed to be made.) A sampling of the results:
–shove and pull animations for the bandit class are completed at last, meaning that all of the game’s 23 base character classes are now 100% fully animated!
–new promoted unit sprites! Lorne Whiting has finished designing promoted rest sprites for every single character class, with gender variations. Click the image to view it at full size! (Note: the image displays only a single gender for each class; there are actually close to double the number of sprites shown, and in four directions. Making graphics for a strategy RPG is a lot of work!) Next up, we’ll be animating the promoted units’ walk cycles and creating their variants of existing attack animations.
–more interface improvements! Specifically:
- I pixeled some lovely new sliders for the settings menu.
- when you select an attack, the attack name now remains at the top of the screen for as long as you take while targeting it.
- there are now proper hotkeys for Talk, Use, and Open/Close Door.
- when selecting Talk, Open/Close Door, or Use, if there is only one thing adjacent to the character that can be interacted with in that way, the game now automatically interacts with it instead of making you click a targeting reticle.
- the dialog box now dynamically rearranges itself to use the extra room at the top of the box if there’s no speaker in a given dialog branch.
- vastly improved in-game behavior during exploration mode.
- all of a character’s attacks now show in the detailed character screen in exploration mode (even if they can’t actually use said attacks while in exploration mode).
- in addition to showing an attack’s effect and accuracy, attack reticles now also display the relevant stats for your target(s), meaning that you no longer need to cancel an attack to check on the target’s health, energy, or what-have-you; see the screenies below!
—optimized character rest sprites, cropping out about 33% of existing (unused) space in their sprite sheets.
–I’ve added a bevy of new recruitable characters to the game: Des Serret, Hee’la, Tremolo Phalanges, Harriet Glaive, Lord Dakarai, Phoebe Wittler, Teresa Dayo, and Harynx.
–I’ve updated the main campaign with several cut scenes advancing the plot and introducing new characters; with a multi-screen explorable area filled with NPCs, loot, gambling, and optional dialog; and with three new battles.
–the game now supports quest items! These are items that cannot be disposed of or used; mainly, this is for items that are there for plot reasons.
—new sounds: a rain loop, and a one-shot thunder sound effect.
—new weapons: the shiv (a weak knife) and iron wrench (used by the Engineer).
—updated class-restricted equipment in the main campaign to account for character promotions (so promoted characters can use all the equipment that their unpromoted variants can use).
—created upgraded versions of existing weapons: steel mace, flail; steel axe, duoterre axe; steel lance, halberd, duoterre lance; steel spear, duoterre spear; recurve bow, recurve longbow; steel knife, and duoterre knife. (Swords and rapiers have already been in the game for some time.) The most powerful weapon in each class can be used only by promoted characters.
—new Mantis Knight attacks: Halberd and Charge. The Mantis Knight is, of course, the promoted version of the Cavalier; and these are both attacks she can learn. Halberd is similar to Lance, in that it’s a melee attack that allows the attacker to continue moving afterwards. However, unlike Lance, Halberd is a Slash (i.e. not Pierce) attack, and it deals slightly more damage in exchange for a 10% chance of missing. Charge, on the other hand, is pretty much exactly what it sounds like! Since the promoted unit sprites are not yet animated, I made a little video showing Charge in action using the unpromoted cavalier sprite for now:
–I also went ahead and created a Charge attack animation for the unpromoted Cavalier sprites. Since Charge is an attack exclusively for promoted characters, these aren’t going to be used in the main campaign–they’re just there to keep things quick and easy when the time comes to modify all existing attack animations for the promoted characters (leaving brand-new animations to be done at the last minute is a recipe for disaster):
–as a necessary part of getting Charge working, I coded support for attacks that move the attacker adjacent to the target into the game. (More on that here.)
—new dialog trigger: OnLoaded. This runs the dialog just as soon as the level loads, before the loading screen is removed. (This allows me to make changes to the level via scripts before the player is able to see them happening onscreen.)
—new dialog triggers: OnLockedDoor and OnUsing. The first is triggered by trying to open a locked door without having the necessary key; and the second is triggered by clicking Use on a useable object on the battlefield. This allows for greater flexibility when creating explorable areas (and battles too, for that matter).
—new reply type: LoseBattle. This causes the battle to end as soon as the player clicks, with the enemy victorious.
—new script action: TransferChar. This swaps a character from whatever army roster it’s currently on to another (assuming that said character is still alive).
—new script action: RemoveSpawn. This prevents a character from spawning on a future turn.
—expanded capabilities for certain script actions. The SetStat, IfStatGoTo, IfStatRun, and SetValByStat script actions can now directly modify or read a character’s X and Y coordinates. (If coordinates are modified via SetStat, the character will be placed directly onto the corresponding space on the battlefield.) The AddTextOverlay action now has an optional second parameter: the number of frames for the text to remain onscreen.
—new special character for dialog and scripts: -SCENE-. The -SCENE- character will automatically be replaced by the name of the current battle or cut scene, as defined by the level’s mapname attribute (i.e. not its file name).
—expanded ID support within the dialog system; you can now use it to designate particular speakers (eschewing the need to rely on the AssignSpeakerAtCoords action), as well as for OnTalk triggers (allowing you to assign particular conversations to different, identically named characters).
—the dialog editor now accepts square brackets and hyphens in the Actions and Replies parameter fields, allowing you to use R, ID, -FNAME-, and other special characters there.
—updated documentation in the game manual.
–lots of bug fixes, testing, and balance changes to the main campaign.
I am pleased with what I created this month, though I wish I’d created more battles. The three new battles I made are each cool in their own ways, with the last of the three being particularly impressive and elaborate. Meanwhile, the explorable area I created–the bandit fortress–provides a nice little break from the battle/cut scene/battle/cut scene structure of the early game; it fleshes out the antagonists a bit more; it gives the player some light role-playing opportunities with Emma; and it provides a nice, memorable sequence moving into the mid-game.
However, as George R. R. Martin puts it: winter is coming! As much as I enjoyed creating the bandit fortress, I’d forgotten how incredibly time-consuming it is to make explorable non-combat areas filled with NPCs, dialog trees, and interactive environments. There’s a reason I chose to get away from this after Telepath RPG: Servants of God: I cannot make something (1) long enough to be compelling, (2) make it non-linear, (3) do so as a solo developer, and (4) do it in a reasonable span of time. Not all at once. Something has to give. With the end of the year looming, it is clear that thing #2 cannot stay: I simply cannot afford to take 10 days creating a single explorable area again. It’s back to creating content that provides a better ratio of playtime-to-creation-time.
To that end, my goal for the next month is to create and balance 10 new battles in the main campaign. The main campaign currently contains 10 battles; thus, if I meet my goal, I will double the number of battles it contains. That might sound like a tall order, but I think I can make it happen if I focus and don’t get bogged down with creating cut scenes or adding new features. (Going back and adding in cut scenes and character dialog can come later.)
To assist with my goal, I have now entered “Hermit Mode”–which is to say, I am turning down all social invitations from friends and family so I can sit at home alone each evening, pounding this stuff out. I believe the industry term for this is “crunch.” I envy those developers who have the benefit of not needing to worry about a separate day job sucking up 2/3rds of each weekday; crunch is terrible no matter who you are, but at least they stand to get a better return for their trouble.
Oh well; no sense in complaining. Until next month, tactics fans!