Create a gist now

Instantly share code, notes, and snippets.

What would you like to do?

Important Notes and Tests

  • You must start a new game. The old save files will break.
  • A few features are in mid progress, but I wanted to stick to the release schedule. So, check everything out but no need to report until next update. Expect a few things to be buggy.

The Short Changeling

  • Unit Stats are now available to see. In Battle, long press on any units shield. In the Camp scene, click Stats & Abilities.
  • A new ability, Charge, has been added to melee units when engaging, and within 400px of target.
  • A new ability, Flee, has been added to melee units when engaged.
  • Bonuses from abilities (i.e.: +5 STR) now briefly appear above the shield of the affected unit.
  • The action bar now uses isolated, circular icons. This makes for easy placeholders / free concepts until final icon design.
  • Stou has his first ability. Haste is the temporary placeholder, but the Action Bar supports two distinct squads.
  • Levels now give rewards of food and gold, shown on the experience screen.
  • Units now have critical wounds (currently 50% of deaths), shown on experience screen.
  • Multiple display improvements to experience screen and level bars
  • The Camp scene shows a squads experience
  • Squads can be healed, and units recruited using food and gold in the Camp scene.
  • Fix low hanging iPhone width / alignment / display bugs.
  • Spawning units in Battle now respects critical wounds / save file so the proper amount of troops show.

The Big Things

STATS, ATTRIBUTES, RESISTANCE & MODIFIERS

The new slide out window activated by long pressing a units shield is key for two reasons. First, it sets up a way for us to brainstorm comparing two units and whether or not a fight could be won. But more importantly, it serves as a debug tool for now. Abilities and attributes are extremely complicated, so having a visual tool to see current status will go a long way.

FLEE

Implementing Charge was cool, but it is a standard ability that just alters walking speed and strength for a duration. Flee, on the other hand, requires custom state and behaviors. It is not fully complete just yet … maybe about 80% done. Here is what roughly works:

  • New criteria for ability of isEngaged
  • New attribute Morale
  • New state machine to handle disengaging and turning around to run
  • New waypoints on each map to determine where to run to. Checks for behind enemy, and closest exit
  • If a unit flees off of the map, it dies
  • AI ignores Fleeing units
  • Squads have a disabled state now, which stops things like the action bar from working. This opens the door for spells like Frozen, Root, etc.
  • If engaged, enemy will pursue fleeing squad for 5 seconds
  • Flee gives -100 morale to target, and also +5 strength to anyone engaged. First time an ability can have two targets, which opens door for new ideas
  • After 10 seconds, Flee will do random checks against morale to see if they should regroup

EXPERIENCE AND REWARDS

This build introduces the basic concept of an economy. In short, units can be healed with gold, and max capacity can be increased with food. Each level has rewards, and those are issued when completing a level in campaign mode. Also, the experience bar has been hardened, and now handles leveling up (start refilling again from beginning), accurate percentages, etc.

ACTION BAR & ICONS

By refactoring the action bar to use actual circles we can iterate quickly and consistently with the current UI. I’ve mapped each ability, resistance and stat with an icon. So, the same icons will appear in the Unit Upgrade screen as those that appear in the Battle screen. As a first example, look above a units head after casting an ability on them. +5 with an icon will appear. Next, attack an enemy, and see the icon that appears on their shield to indicate an attack. We don’t have to settle on this design language, but it gives us an idea of how flexible we ultimately need the design to be.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment