Cost Granularity in Card Games

In Charmed Chains, I chose some early restrictions to emulate some of how Yugioh plays, and over time I’ve been shifting towards different ideas of what I want to do with the game. I chose these restrictions because there are a lot of indie and industry collectible card games that emulate Magic The Gathering (Force of Will, Hearthstone, Lorcana, Final Fantasy, Digimon, etc) in whole or part, and very few that emulate Yugioh (Dual Spirits). When I started making this game, I was really into Yugioh (I’ve recently been swallowed whole by MtG Commander), and I was very much inspired by different facets of Yugioh’s design that I felt could be pushed further (having a defined grid and effects that are based on columns), as well as some aspects of Magic The Gathering (blockers getting a choice in whether to take damage with their creatures, or let it hit them directly).

However, these limitations have lead to some issues with granularity, which I’ve previously discussed. I’m worried that low granularity in creature costs will lead to homogenization in people’s decks, unless I either adopt a resource system more similar to most card games, or start to enforce more strict archetypal synergies, like Yugioh did.

To understand the issues I’m facing, first I’ll need to explain how the resources in Yugioh and Magic The Gathering work.

Continue reading

Celia’s Tips for Clear Writing

A lot of what I’ve ended up critiquing video essayists and other games writers about is the clarity of their writing. I feel like many people are trying to create “Good Writing” rather than communicate effectively. Many video essays are written more like political speeches than they are trying to be direct and informative. It feels like they are informed by what makes good fictional writing more than good technical writing, and try to carry a vibe to the detriment of their message.

Here are the principles I follow to make my writing direct and effective:

Continue reading

Pseudoregalia Review

Pseudoregalia is an indie 3d platformer metroidvania, a rare combination. And it has the best movement I’ve ever seen outside of a Mario game. It starts off a little slow, but quickly ramps up as you get the slide and wallkick powerups. The game is very short, I was able to beat it in only 5 hours.

Movement & Powerups

There are a number of optional collectibles throughout the game, augmenting your health, regeneration, or giving small buffs, but obviously the movement powerups are the only thing that really matters. Each of the movement powerups allows you to access new areas, but also just enhances the way you move through the game in general. Slide initially lets you slide under small gaps, but eventually gets upgraded into a slide jump that lets you jump across massive gaps, and even bunnyhop to maintain momentum.

Another powerup gives you 3 wall kicks, which push you away from walls if you kick into them directly, requiring you to use them carefully to scale walls. Eventually you get a ground pound, which lets you jump extra high by jumping as you hit the ground, like Mario in Odyssey, and if you jump at the start of the groundpound, you’ll do a backflip, which helps counter the momentum of a wall kick, raising you neatly onto a platform after kicking off of it. This is like the missing link in the movement that really helps it all fit together. Finally, there is a wall run, which is obtained last. It snaps onto walls reliably and generally feels pretty good to use.

Continue reading

How to Pick a Fighting Game Character

The first step in picking up any fighting game is picking a character. Character crisis is a familiar experience for any fighting game player, from beginner to veteran. Even seasoned professionals with decades of experience go through character crisis.

If you’re completely new to fighting games, there are 3 basic mindsets to how you should pick a character:

  1. Eat your peas and carrots, pick a shoto.
  2. Pick a character you think is fun or cool!

Continue reading

What is Charmed Chains? (My New Card Game)

For the past year I’ve been drafting ideas for a constructed card game (a game where you build a deck out of a bunch of cards, then play an opponent). I’ve been hinting at this game a little in recent posts. My working title for the game is: Charmed Chains.

I think the best way of illustrating what the game is about is by showing you the game mat:

Every card in the game is either a Familiar (Creature/Monster), or a Charm (effect card, like a spell). Familiars and Charms are played to the board, and can have effects specific to where they are placed. Familiars can move during the battle phase, and many charm effects extend across the row or column they’re placed in.

This means Charmed Chains is a game about position and placement of your cards. As the attacker: You want to place your familiars in places where they can destroy or attack past your opponent, and the defender wants to move their familiars to block or evade your attacks. You also want to move your familiars into position to take advantage of buffs your charms will provide, and evade the debuffs of your opponent.

Continue reading

Card Game Design as Systems Architecture

Designing a card game has honestly called on more of my programmer skills than thinking about video games. Card games are surprisingly a lot like enterprise web applications. Cards go through lifecycles and have callback functions and methods similar to an object going through its lifecycle in any enterprise application.

Lifecycle Hooks & Callback Functions

Objects in an enterprise software application, such as components in Angular or React, go through a lifecycle as they are instantiated, go through state changes, and are eventually destroyed. Each of these has a “lifecycle hook”, which is a function that is called when that particular lifecycle event happens.

In card game terms, these are similar to effects that trigger when a card enters the battlefield, leaves the battlefield, is tapped, or attacks or blocks. Trigger conditions are lifecycle hooks for cards.

A callback function is one that triggers when another object goes through some type of change. It’s subscribing to another object’s state, then doing something when that object does something.

Continue reading

Witcher 2 Review

Note: I wrote this up 5 years ago and intended to publish it, but I guess it got lost on the cutting room floor. My bad!

In Witcher 2, you have 2 swords, steel and silver (for humans and monsters respectively), and 5 spells you can cast: Aard, Axii, Igni, Quen, and Yrden.

Aard and Igni are projectiles, dealing damage/stun on impact. Igni deals more damage and burns the target for damage over time. Aard knocks the target back, stunning them, knocking them down, or dizzying them, setting up for a 1-hit kill. Quen is a shield that will block 1 hit’s worth of damage. Axii will convert one enemy into an ally temporarily, but needs to be channeled over time and has a chance to fail. Yrden places a trap on the ground that will stun an enemy who steps on it, holding them in place until it wears off or they are hit out of it. There are upgrades to each of these, Aard and Igni gain range and area of effect, Quen can reflect damage back onto opponents, Axii buffs the opponents you control, and Yrden lets you place multiple traps.

Almost every enemy in the entire game follows a similar template, they run at you, do attacks straight ahead of them, will not rotate while performing attacks, sometimes block moves that hit them from the front, and you can get behind them to deal double damage to their back.

This means fighting enemies is generally a process of rolling around them to get to their backside and hitting them for as much as you can. This can be accomplished by baiting them into doing attacks and moving while they’re occupied. This method of play, rolling behind enemies to backstab them with Quen shields up, is how all the best players play the game, and encouraged by the game design on multiple levels.

Continue reading

Mashing: Rote Memory vs System Mastery

Many players of fighting games and beat em up games start out by mashing. When you have 2-6 attack buttons, it can be hard to tell the difference between moves, so you might as well press buttons and hope something good comes out. A better player will understand when to use each move, but a worse one will see a large movelist, say “nah, pass” and just mash it out.

Some games are designed to actually facilitate and reward this type of mashing, games with strings (a sequence of unique moves activated by pressing buttons in a specific order). By mashing the buttons, you’ll accidentally end up doing all sorts of moves, and since neither you nor your opponent has any idea what you’re about to do, that makes you unpredictable, and ironically more effective in a genre that is advanced rock paper scissors.

It’s easy for intermediate level players to shut down this sort of play by simply blocking and waiting for an unsafe move to punish, or by throwing out “knowledge check” moves that require a specific counter (you can also call this spamming). However among beginners, it can allow them to develop a surprising level of basic competency at the game. They might be throwing moves out randomly at first, but sometimes they see something cool happen, and remember the feeling in their hands when they got that, allowing them to iterate and repeat it. Also helpful is these games list the strings in the move list, so beginners can learn a string as easily as checking.

For many beginners, these strings are literally what combos are. They’ll call them “combos”, not knowing there’s a larger combo system in the game. In a way, this is really helpful for beginners, compared to other games, because strings don’t involve tight timing, and are listed right there.

Continue reading

Tiers are for Queers

And the queers always pick a top tier.

Tier lists have been controversial since the dawn of fighting games, and have slowly seeped into every other competitive game featuring pre-game or mid-game loadout choices.

From a casual perspective, it can be easy to be skeptical of tier lists, especially in modern times. Casual players typically don’t play the game consistently enough to be able to execute the counters that can shut a low tier character down.

Alex in 3rd Strike might be scary to someone who can barely block crossups, but a higher level player can simply parry option-select Alex’s crossup stomp, tapping exactly as it connects, and either getting a parry if it’s same-side, or a block if it’s crossup. Urien might seem mediocre, since he doesn’t have incredible frame data, his specials are slow or unsafe, and have crappy hitboxes on top of being mostly charge moves, but when his moves are mastered, he has ridiculous combo damage and setups into unblockables.

A higher level player can play Chun Li, Ken, or Dudley, and simply tank Alex’s slash elbow, or block the EX slash elbow, and punish it with a super. Chun Li can get roundhouse kicked in the face by Q, and then punish him with super art 2 for more damage than the roundhouse.

These types of weaknesses aren’t as obvious at low level, so it can be hard for lower level players to understand the true shape of the game.

The fact that characters are different from one another means that some will be better against others. They’ll counter each other. If a character counters a lot of other characters, especially if it’s by a wide margin, then that’s a top tier.

Continue reading

How do you Set the MAXIMUM LIMIT? (For Health & such)

Almost every game has resources of some type or another, whether that’s health, mana, meter, etc. A topic that is rarely discussed with these is: Exactly how much health should you have, and how much damage should stuff do? What should your resource limit be, how much should stuff cost? How fast should it be built up? The decisions made in each of these can significantly affect the tone and feeling of something.

The most critical technique for thinking about this problem is thinking in percentages. The actual values can be arbitrary, but percentages help you keep track of the actual impact. A combo across different games could deal 8000 damage, 120 damage, or just 6 damage, and in each case, that could be worth 90% of someone’s healthbar. Thinking in percentages helps you weigh the relative impact of something, without getting bogged down in the exact numbers.

This type of thinking also suggests thinking about the resource in terms of how many times it can be tapped before it’s extinguished. If each touch deals about 10% of your health bar, a game will have 10 touches before it’s over. If a touch can deal up to 80%, then it’s a 2-touch game. Consider the range of variability between how much impact each touch makes as well.

In Card Games, instead of touches, it’s measured as a “clock”. The clock is how many turns a player has left before they lose the game. In real-time games with fine-grain health and guaranteed hits, this type of thing is measured in DPS (Damage Per Second) and/or TTK (Time to Kill). In these cases, it’s worth considering what tradeoffs a player should be making in order to get a faster clock, or a lower time to kill. It’s also worth considering how fast the average clock for a match should be, or what the average time to kill is across the game, and watching out when those things end up lower or higher than you originally planned.

Continue reading