1. Telepath Tactics Liberated
  2. News

Telepath Tactics Liberated News

Version 1.0.56: Bug Fixes (Particularly for Gamepad) And Some Other Improvements

Hi all! It's come to my attention that the game the game was having issues with gamepad controls after the last update. I took a look at the code and I believe I've fixed it (but as always, please let me know in the forums if there's something more I didn't catch!)

[h3]Let's start with the bug fixes in this update:[/h3]

  • fixed: on certain buttons, selecting them with the gamepad could double-invoke their methods, leading to errors (up to and including the game freezing).
  • fixed: when playing with gamepad, at the very start of battle, the selector was spawning in the very top-left of the map instead of over someone in the player's army.
  • fixed: actions bar button tooltips were displaying strangely in gamepad mode.
  • fixed: the virtual cursor was not visible when choosing between yes or no in any in-battle warning pop-up windows.
  • fixed: if an army in a battle was completely neutral by way of being allied to every other army, the game would treat them as having vanquished all enemies and immediately end the battle with them as the victor.
  • AI fix: the retreat AI algorithm was not accounting for area preference or patrol tags, causing characters with no usable skills to retreat without regard for the areas they were supposed to be moving towards.
  • fixed: mousing over a unit and then immediately mousing over the deployment window thereafter without ever mousing off the unit could cause the unit's mouseover tooltip to become "stuck" onscreen for a time.
  • fixed: it was possible for cavaliers to charge across a path with an elevation difference of 2 or greater, just so long as they effectively charged off of the cliff rather than up it.
  • fixed: in some circumstances, the game could save (and reload) past instances of generic templated units in a way that would reintroduce tags placed onto those unit types in past battles.
  • fixed: changes to the code made it so generalized character death barks could again get queued in addition to specific death-triggered dialogue for the same character.
  • fixed: bridges below the level of the terrain could cause the game to use the bridge's elevation instead of the ground's for purposes of calculating which spaces are moveable for a non-flying unit.
  • fixed: under some circumstances where the AI had a character move and use a non-turn-ending skill, the AI could queue up further actions for the character where they moved and used a skill, but then fail to execute the "actually moving" part, resulting in the character attacking outside their normal range.
  • fixed: proc gen battle map names were not being saved in the "battle start" save files used when restarting a battle, resulting in the map's internal file name displaying instead.


[h3]It's not just bug fixes; we also have some nice quality of life buffs (and AI improvements too)![/h3]

  • a longtime request is now working in-engine: you can now create a mid-battle save on the first turn of a fight, right after deployment!
  • the game now displays gameplay tips on the loading screen when transitioning scenes.
  • when playing with the gamepad, switching to the actions bar with 'X' now defaults to selecting the first available skill.
  • AI improvement: the AI now does a much better job of appropriately balancing the value of reaching a preferred area versus the value of moving toward a character it would like to attack (but cannot yet reach).
  • AI improvement: the AI now imposes a scoring penalty for any move that would take a character who is already inside their preferred area outside of that area.
  • AI improvement: reduced the minimum calculated value of usage before enemies will use items, avoiding situations where enemies won't use bandages even though it's optimal to do so.
  • AI improvement: AI-controlled units now value Defending status proportionally more as they become more injured, and more based on their ability to counterattack.


[h3]And finally, we have a lot of new tools and bug fixes for campaign creators:[/h3]

  • added the missing army palettes from the original Telepath Tactics (Orange and Pink) into the engine.
  • the LevelUpArmy script action now works in cut scenes.
  • the game can now process custom strings used as part of a scene's display name.
  • new condition: Drop Items On Death. Lets you set a particular army to not drop items when a character in that army dies. Parameters: army number, drops items (boolean value--true by default).
  • new script action: StripItemsFromUnit. Removes all items from the named character's inventory and places them in a roster's reserve supplies.
  • new script action: AddNickname. Gives a character a new nickname to be used by a second character in dialogue. (To make it a nickname everyone uses, leave the Second Character Name parameter blank.) Parameters: Character Name, New Nickname, Second Character Name.
  • new script action: HideDialogueBox. Allows you to manually hide the dialogue box during dialogue.
  • new script action: ShowDialogueBox. Causes a hidden dialogue box to reappear.
  • new script action: HideActionsMenu. Allows you to manually hide the actions bar during battle.
  • new script action: ShowActionsMenu. Causes a hidden actions bar to reappear.
  • new script action: AddTriggerCharPortrait. Adds the portrait of whatever character triggered the dialogue, without regard to whether their name is used as speaker for the current branch. Has the same parameters as AddSpeakerPortrait.
  • new dialogue trigger type: OnSkillUsed. Triggers dialogue when a given skill is used. To satisfy the trigger, the skill usage must be effective in some way (i.e. not just attacking an ally or healing an enemy). Parameters: skill name, user army, and user name.
  • new tag: RemoveAll. This tells the game to remove all existing tags from the unit.
  • three new special string stats are supported for SetStringByStat: First Name, Last Name, and Nickname. (These are read-only, so don't try using them as a parameter with SetStat.)
  • added last name as a supported attribute value for the SetStringByNPC script action.
  • TargetPreference tags now support the use of custom string variables for their target name parameter.
  • updated in-game documentation for the IfBioDetail-type script actions and the -BIO:X- special character with the default bio detail types.
  • fixed: in-game documentation for the AddNPC script action was missing the tenth parameter, Blood Relative.
  • fixed: in-game documentation for the SetStringByNPC script action was missing blood relative among the supported attribute values listed.
  • fixed: getting a unit's load ID via the SetStringByStat script action would return an empty string for proc gen characters. (It now returns the unit's name, which can stand in for its load ID in virtually every use case.)
  • fixed: the Delete Row and Delete Column algorithms in the Map Editor were faulty, with their use potentially causing the game to lose track of where units should be until the map was reloaded.
  • fixed: in the Map Editor, adding a new column to the very rightmost edge of a map would secretly cause the game to add a second column, invisibly offsetting mouseover coordinates and making the selector appear in the wrong spot when mousing over units.

Version 1.0.55: Presentational polish, patrol AI, bug fixes, and more!

Greetings, tactics fans! It's been another month of work on Together in Battle--and that means there's another month's worth of engine improvements, bug fixes, and campaign creator goodies available for Telepath Tactics Liberated!

[h3]First, I rewrote a couple of things in the engine from the ground up specifically to work better for players with older (or lower-end) machines:[/h3]

  • parabolic movement has been completely overhauled to improve performance on slower systems. Whether it's hopping between terrain elevations, the Stone Golem's Throw skill, or the assassin's Leap, parabolic arcs no longer lag behind the other, accompanying animations on slower machines.



  • the game's dodge animations have likewise been overhauled so that they, like the new parabolic animations, are driven purely by code and math rather than Unity's Animator component. This massively improves performance and ensures that there are not timing mismatches on slower systems.
  • the timing of combat sequences concluding is no longer tied to a Unity camera animation, ensuring that things progress at the intended clip regardless of system power.



[h3]That's not all, however! We also have a mixture of UI and presentation improvements:[/h3]

  • received, incorporated a brand-new visual effect for Overheat!



  • created a new sound effect for Overheat.
  • the combat camera now pans over to the attack even if combat zoom is turned off, reducing graphical issues resulting from visual effect layering.
  • reduced the height on the pop-up text animation to aid readability.
  • cleaned up the timing on character "hop" animations when changing elevation.
  • right-clicking rugs and other objects set to be treated as part of the floor no longer opens the character screen.
  • status effect tooltips now dynamically display the actual power of the status effect conferred for those occasions where a status effect power differs from its ordinary default value.
  • repositioned status effect tooltips within the character screen so the mouse cursor doesn't obscure any of the text.
  • the Defending status effect can now stack in its power and is hard-coded to disappear when a unit gains a new turn or becomes Enthralled.



[h3]Next, we have a variety of bug fixes:[/h3]

  • fixed: the deployment window's starting text was being overwritten by default localization values.
  • fixed: the order of the Combat Zoom setting options was switched in the localization file, causing 'Attacks Only' to be interpreted as 'Off' and vice versa.
  • fixed: sometimes, the tooltip for an item's Give button wouldn't show up upon mousing over it.
  • fixed misaligned mouseover zones for status effect icons in the character screen.
  • fixed: the counterattacks icon did not display correctly when providing in-shop explanations for why characters wanted Vengeful weapons.
  • fixed: you could click an enemy to show their moveable spaces under fog of war.
  • fixed: the AI could disregard a valid move onto an AreaPreference space if no valid skill targets existed within range of the destination.
  • fixed: if a character was moved via a Teleport-type skill (such as Shadowport or Juxtapose), the game would not check to see if it should drop them into water, lava, or a chasm upon reaching their new position.
  • fixed: you could undo after using a Move skill that also moves a second character (like Trade or Juxtapose).
  • fixed: due to an oversight when implementing the new move-tracking code, the computer could fail to clear its internal list of viable moves when an enemy's attack slew a character and triggered a death monologue, which in rare cases could result in the AI proceeding with the second-ranked move without recalculating based on the updated state of the battlefield.
  • fixed: the AI would get locked into an infinite loop when swimming with proc gen units generated with the Swimmer trait.
  • fixed: due to recent changes in the AI code, the game would throw a null error if an enemy drowned to death at the start of the AI's turn.
  • fixed: it was possible for an AI-controlled character with a preferred area tag and no viable moves to remain on the "calculate a move" list forever despite having no viable moves, thereby preventing the computer from ever ending its turn.
  • fixed: if any of an AI-controlled unit's skills could affect a target worth affecting, all of that unit's skills would be marked as worth using as part of short-range moves toward a preferred area, leading to the unit potentially inappropriately attacking scenery.
  • fixed: smashing an enemy up against the edge of the map could only ever deal a single tile's worth of collision damage even if using a skill with multiple tiles worth of extra knockback.
  • fixed: Create skills would not function on spaces containing rugs or other objects with a true "treatAsFloor" attribute.
  • fixed: door-affecting script actions such as Lock could trigger OnDoor dialogue when used in OnLoaded dialogue.
  • fixed: the AI was not set to recalculate moves upon removing Inactive tags from a CPU-controlled unit mid-turn.
  • fixed: under certain circumstances, dummy attack tiles shown upon mousing over an attack button could inappropriately vanish (or fail to appear at all).
  • fixed: if a new turn belongs to an army with no units remaining, the game would skip to the next turn without triggering any OnTurn or BeforeTurn dialogue set to trigger on that turn.
  • fixed: bridges below the level of the terrain could cause the game to use the bridge's elevation instead of the ground's for purposes of calculating movement and elevation bonuses.
  • fixed: the in-battle pop up text showing experience gain from using a battle primer would scale the displayed experience against the resulting level rather than the level at the time of use, frequently resulting in it announcing less experience than was actually gained.
  • fixed: a character portrait added to the left edge of the screen and that same portrait walking to the left edge of the screen would end up in positions about 5 pixels off from each other.



[h3]And last but not least, we have new tools and improvements for campaign creators![/h3]

  • dialogue branches now support an attribute called "show single replies." This forces the game to show a reply button on this dialogue branch even if only a single reply remains--useful for moments when the player says or does a particular thing.
  • new clothing for female human portraits: RoyalDese.
  • new clothing for male human portraits: Blacksmith.
  • added a new skin tone that can be used for character portraits: Ruddy Brown.
  • added three new eye colors that can be used for character portraits: Aqua, Red, and Violet.
  • new dialogue trigger supported: OnUnitAttacked. This works just like OnCharAttacked, except that the unit attacked does not have to be a character to trigger the dialogue. (Someone attacking a specified object, for instance, can trigger the dialogue with OnUnitAttacked.)
  • new script action: AddTagToGroup. This works just like AddTagToArmy, but instead of specifying an army number, you specify an AggroGroup number. Every unit in the specified AggroGroup will receive the new tag you provide.
  • new script action: RemoveTagFromGroup. This works just like RemoveTagFromArmy, but instead of specifying an army number, you specify an AggroGroup number. Every unit in the specified AggroGroup will lose whatever tag you provide.
  • new optional parameter in the Deployment battle condition: maximum characters. This allows additional deployment spots to be placed on the battlefield without increasing the maximum number of deployable characters for the battle.
  • new AI tag type supported: Patrol. This works like AreaPreference, except that it acts upon a looping sequence of areas for the character to prefer. Once the character reaches the first area in the sequence, their preference shifts to the next one, and so on.
  • new option for the IfInArea-type script actions: you can now use an army in the Character Name parameter (e.g. "Army 0", Army 1", and so on) and the game will check for any character belonging to that specific army.
  • new custom menu gray-out/warning type: avgLvl. Calculates the average level of the characters in the current roster and grays out the button or pops up a warning if their average level falls outside the specified range.
  • the blacksmith interface now supports renaming weapons!
  • it is now possible to alter a piece of equipment's name via an equipment-altering consumable using Name as the attribute to alter.
  • added support for Name as an Attribute to Alter in the item editor within the campaign creation suite.
  • updated the item editor's built-in guides to include Name.
  • fixed: the "force name" feature for characters in proc gen map army groups was not being applied to units drawn from PremadeUnits.xml, only to units procedurally generated from scratch.
  • fixed: bridges below the level of the terrain would cause the map editor to set the cursor elevation (and the elevation of further objects placed on the space) to the bridge's elevation instead of the ground's.
  • fixed: in some circumstances, adding a row to a map could produce a null error.
  • fixed a null error in the cut scene and map editors caused by the game expecting the online bug reporting component to be present.
  • fixed: in some circumstances, displaying dialogue in the cut scene editor could cause a null error due to the game attempting to call the gamepad menu navigator component.
  • fixed: the "force species" attribute could be used to create proc gen characters of a species not compatible with the chosen class, resulting in issues like missing portraits and sprites.


That's all for this update, folks! As ever, if you're enjoying the game, please don't forget to leave a review--it really helps a lot.

Want to chat with other players and make suggestions? The Sinister Design Discord is a great place to do that; I'm there myself quite regularly and love chatting with players. 🙂 Until next time!


Tactically yours,

Craig

Telepath Tactics is part of Freedom Games Publisher Sale!

Hi everyone - if you were thinking about getting the game, now is a great time to do so.

[h3]The game will be 40% off from April 15th through the 22nd![/h3]

Make sure to check out Freedom Games Publisher Sale page to pick up some awesome indie games at great prices. Whether you like to play alone or with friends, there are some great deals you won't want to miss out on!


https://store.steampowered.com/app/1849820/Telepath_Tactics_Liberated/

Version 1.0.54: Online bug reporting, store UI tweaks, campaign creator tools!

Greetings, tactics fans! As per usual, continued development on Together in Battle has produced some new features and bug fixes that benefit Telepath Tactics Liberated as well. As is my wont, I've decided to share them with you!

[h2]Without further ado, here are the latest new features:[/h2]
  • the game now has built-in bug reporting!

    To use it, simply press the Report an Issue button in the main menu during a battle or cut scene. This will open up a window where you can write what happened and submit your report to me directly! When you do this, the game will automatically generate a log and send it to me along with other relevant info so I can start tracking down the bug as soon as possible. (This works when playing with gamepad, too, via the new virtual keyboard.)

    Special thanks to Ross Przybylski for his help troubleshooting the PHP back-end!



  • I've further improved the shop explanation for why characters want equipment: when the reason a character wants something is stat-related, the game now lists as many as 3 stats the equipment will improve (not just 1), making it possible to compare benefits from upgraded armor at a glance.
  • cleaned up the shop interface a bit: the text that notes when you've bought or sold something can no longer overlap with the page-swapping buttons, and is now far less likely to end up truncated.
  • balance improvement: Umber Gnawbone's Psy is now boosted by 6 and his Energy boosted by 36 when playing on Veteran difficulty or above.
  • improved the weather effects for rain.
  • added some more audiovisual feedback to key presses in the virtual keyboard. Additionally, when using the virtual keyboard, the game now displays a flashing caret in the associated input text box as though the box were actually selected, making it easier to keep track of where you're typing.
  • refactored some of the game's movement code to make it a bit less painful to change.

[h2]I also fixed a handful of bugs:[/h2]
  • fixed: loading a saved game with stairs mid-scene, stairs could end up counting their own saved elevation for purposes of determining base elevation before applying Elev tags, thereby raising themselves up higher than the terrain called for (and potentially making themselves untraversable in the bargain).
  • fixed: height was set incorrectly for the promoted shadowling cast animation.
  • fixed: height was set incorrectly for the promoted cavalier lance and charge animations.
  • fixed: the Blizzard weather effect was no longer displaying properly.
  • fixed: placing traps, bridges, and barricades had begun spawning spark particles after the last update.
  • fixed: there were a few lines of code I had been using for testing that I forgot to turn off which set almost every proc gen character's personality type to Sensitive.
  • fixed: certain text sprites (such as Regenerating, Strength, or Talkable) had faint lines appear near the edges of the image due to trilinear filtering bleed from adjacent icons in the spritesheet.
  • fixed: gamepad focus on the virtual keyboard would get overriden by the underlying dialogue tree when input text was enabled in the very first branch of dialogue.
  • fixed: the dialogue interface's virtual keyboard gamepad navigation was not working as intended when used in battles.
  • fixed: the map editor was spawning invisible "Blank" game objects whenever new units were placed on the map; not terribly consequential, but this probably produced a small drag on performance over time.
  • fixed: certain messages in the shop interface were missing localization support.
  • fixed in v. 1.0.54a: a progression-blocker following the Adelbrae Battle in the Randomizer Campaign.
  • fixed in v. 1.0.54a: the Protector's Tome had ceased to work properly in the Randomizer Campaign.

[h2]And lastly, we have a whole bunch of improvements for custom campaign makers![/h2]
  • new script action: ShowBlacksmith. This calls up the shop interface in a brand-new "blacksmith mode", displaying weapons possessed by the group which are below their maximum uses remaining. Clicking a weapon in this mode causes it to be repaired in exchange for the repair cost (equal to the proportion of maximum uses to be replenished times the weapon's original sale price).
  • the character creator now allows you to manually set the clothing used by a character portrait! This lets you give a character an outfit different from their class default. Human characters, especially, have a variety of alternative civilian clothing to choose from, enabling the creation of custom villager and merchant portraits (among other things).



  • the character creator now allows you to manually set the scale of character portraits so characters will be larger or smaller when they appear in dialogue.
  • improved click detection for portrait accessory and clothing buttons in their respective character creator submenus.
  • new cutscene backgrounds added to the game: Blacksmith, Riverbank, Riverbank_Sunset, and Riverbank_Night.



  • new Attribute to Alter supported for equipment-modifying items: Max Uses. Increases the maximum durability of a weapon.
  • new Attribute to Alter supported for equipment-modifying items: Tag. Causes the item to add a tag to equipment (such as BonusDmg, ModDmgVsSpecies, ModDmgVsWeapon, ModSkillAccuracy, ModSkillKnockback, ModSkillPower, StopsCounters, etc.)
  • updated the Item Editor's built-in guides to reflect the new equipment-altering attributes.
  • new item graphics: Book White, Counterweight, Oil-filled Sheath, Poison Sheath, Pouch, Reinforcing Spine, Spring Shoes.



  • new skill button graphics: Clothing, Pocket Sand.
  • new sound effects: Boing, Hammering, Plant Rustle, PoofCloud, Water Splash Light.
  • new destructible object set added to the game: Sandstone castle walls. These pair nicely with the CastleSandstone tileset added to the map editor in the last update.
  • renamed the StairsLimestone destructible object set to StairsSandstone for the sake of consistency. These, too, go nicely with the CastleSandstone tileset.
  • new destructible object added to the game: Puddle. Drops dodge and cold resistance for whoever stands in it while slightly raising heat resistance.
  • new 3D particle effect: WaterSmall. A small splash for moving through shallow water (as opposed to the preexisting big splash used when falling into deep water).
  • new trigger type added to the game: Move Over. These behave like Pressure triggers, except that they don't interrupt unit movement or clear the undo stack upon triggering. As such, they are intended purely for small, non-mechanics-related effects (particle effects, audio cues, etc.) when walking over certain spaces.
  • tall grasses now make rustling noises when characters walk onto or through them.
  • new optional parameter added to the PlaySound script action: pitch range. Accepts a range of positive decimal values, where 1.0 is the sound's normal pitch, values below 1.0 deepen the pitch, and values above 1.0 raise the pitch. If the parameter is used, the game will randomly choose a pitch value from within the supplied range when playing the sound effect.
  • the script actions IfGoneGoTo and IfGoneRun can now find objects by their load ID.
  • new special character added to the game: -ATKMOVETYPE-. This lets you check whether the current skill's move type is Normal, Parabolic, Teleport, ToTarget, WithTarget, or Special.
  • fixed: the in-game documentation for SocialUnitsToList was missing the last parameter (amount).
  • fixed: with the introduction of differing portrait scales for proc gen characters, the character creator could start to progressively shrink the preview portrait when cycling through different features.
  • fixed a typo in the default CharAttributes file that would cause the character creator to throw a range error when trying to randomly generate character dialogue.
  • fixed: deprecated palette code could sometimes cause null errors to pop up when adding certain accessories to portraits for certain characters in the character creator.
  • fixed: the Jwalaa item graphic was misnamed in AssetNames, and was therefore not showing up in the item graphics browser.


That's all I have for this update! If you're enjoying the game, please don't forget to leave a review--that can make a surprisingly big difference to its success.

And why not come join us on the The Sinister Design Discord? I'm on there often and I'm always eager to hear your suggestions. Until next time!


Tactically yours,

Craig

Telepath Tactics is part of the Steam Spring Sale!

Hi everyone!

If you were thinking about getting the game, now is a great time to do so as we are part of the Steam Spring Sale! From March 14th until the 21st, the game will be on sale for 40% off! Make sure to check out Freedom Games' Steam Spring Sale page to pick up some great games to play.


https://store.steampowered.com/app/1849820/Telepath_Tactics_Liberated/