How to make IF combat interesting?

I enjoyed “Slap that Fish” and “Gun Mute” both of which you should examine, whether or not you borrow from those combat mechanics.

2 Likes

Doug referred to Gun Mute which is about gun shooting. That brings up an important question to the OP: What genre? Fantasy, SciFi, middle ages or maybe contempory?

2 Likes

I’ll bring up Black Knife Dungeon here – which I feel like I do most times this topic comes up? – since I think it does a good job of puzzle-ifying an RPG combat system and rewarding player skill without requiring deep rules or simulation or anything like that:

To my mind there are two and a half challenges to work through when making a piece of IF that involves combat:

  1. How do you make the interface as clean as possible? From the OP it sounds like you’re thinking of a parser rather than choice game, but parser interfaces can be laborious and unfun when it comes to the repetitive typing that many combat systems require. In a roguelike, you might only need to push an arrow key to bump into an enemy and attack them; in a traditional CRPG or action RPG you’re just clicking. Typing ATTACK GOBLIN over and over isn’t much fun, though, all the more so if there are several goblins. Inventory and resource management can also get fiddly.

  2. How much randomness do you want in the combat? The traditional DnD model tends to have high randomness – characters usually miss a lot, with fairly variable damage – balanced (add scare quotes there according to taste) by the fact that most individual attacks aren’t that meaningful relative to a character’s health; thus, there’s high randomness but encounters involve a large number of rolls, so the variability tends to average out over time. Connecting this with the prior point, though, that approach could easily get tedious in a piece of IF.

2.5) Is the goal to make each combat interesting, or to make the meta-challenge of managing resources over multiple combats interesting? Most roguelikes fall into the latter category, where any individual combat is probably straightforward, but figuring out how far to push your luck and when to dip into your limited supply of expendable resources is where the action is. Again, though, that structure might require a longer/more combat-and-dice-rolling focused design than will work easily with a typical IF game’s structure.

7 Likes

To comment on your number 2, the new Baldur’s Gate 3 suffers from this (hmm, and number 1 to some degree; fighting a large number of enemies, you can go make a cup of tea while they take their turn).

You are a wizard with your one big spell, you case it… and it fails. You get to try again after your next long rest… Not so bad at higher level, but early levels are very frustrating.

2 Likes

To be honest with you, the type of RPG combat that would port to IF the most faithfully would be turn-based JRPG combat, in particular similar to styles found in Final Fantasy 1 through 10-2, and countless other JRPGs.

The combat involves the navigation of menus, and even when selecting the target of an attack or a healing spell, the older games included a small menu list of available targets instead of moving a cursor between on screen targets. Even all the relavent in-battle messages were communicated in text, including dialog, whether or not an attack missed, damage dealt, etc, etc. Even the end of the battle would announce items won, experience garnered, and any new abilities learned, all in text.

The only thing that would need to be translated into text is the description of the enemies and the attacks and spells themselves.

I’ve actually been chewing on a Final Fantasy VIII port to Inform or TADS. It would follow all the same characters and plot beats of the original game, but it would be all text, making it more accessible to a wider audience. Additionally, I wanted to leverage the strengths of IF and cheap text, by allowing more branching than the original game. For example, there’s a part of the game, where Squall and company are rushing to unlock a defensive secret deep in Balamb Garden to help prevent eminent destruction by incoming Galbadian missiles. The problem, is the urgency is manufactured. You can take as long as you wish, hours, days even, and, as long as you don’t die, the missiles never arrive. It removes the suspence and also shows the writer’s unwillingness to allow actual failure without a game over screen. If I were to port this, I would allow Squall and Company to potentially fail in this effort, and, more importantly, allow them to live with the consequences.

Here's an example of allowing a failure state to play out:

Squall and company fail to activate the secret of Balamb Garden in time and Balamb Garden is destroyed by Galbadian missiles. While Squall and company are protected by being deep underground at the time of the strike, and other party members are off-site having attempted to prevent the missile strikes in the first place, a number of important characters would be killed in this event, including Cid, the headmaster, virtually the entire student body and faculty, and Elone, who was hiding in the Garden, unbeknownst to Squall at the time.

The world of Final Fantasy 8 would be thrown into chaos. Not only would the loss of the powerful institution leave a void in the fight against the sorceress Edea and her malevolent ambitions, but the sorceress’ unintentional murder of Elone would stymie her plans as well.

Squall and company are left scattered and desperate. The main characters are all left to fend for themselves in a world now under Galbadian control. They must navigate the dangerous landscape while dealing with their emotions and uncertainty.

The group forms a resistance to counter Galbadia’s rule and to locate any remnants of Balamb Garden’s survivors. They become part of an underground network of rebels, working to expose Galbadia’s atrocities and liberate oppressed regions.

Without Balamb Garden’s intervention, Edea’s tyranny becomes more pronounced. She extends her control over nations and tightens her grip on the world. She razes Timber to the ground in retaliation for partisan activity.

Sorceress Ultimecia, who is controlling Sorceress Edea from the future, is forced to find a new strategy, with Elone dead. So, she sets her sights on freeing Sorceress Adel from their orbital prison so she can consolidate control over both Esthar and Galbadia, which would allow her to redirect the formidable combined resources and tech of both nations towards finding another way to replicate Ellone’s powers. (As Dr. Odine of Esthar was researching this to begin with before the capture of Sorceress Adel)

This results in Sorceress Ultimecia taking control of Rinoa in a similar plot to the original game, freeing Sorceress Edea.

Sorceress Edea is a more broken woman in this scenario, as she had directly caused the deaths of her husband, Cid, and her adopted daughter, Ellone. Rather than seeking out a way to remove her powers, she chooses, in her grief and guilt, to instead to go on a suicide attack on Galbadia, and attacks Deling City with her formidable powers, gutting much of the city and leaving a significant power vaccum in Galbadia. Rinoa’s father, General Caraway, conflicted between destroying the regime that controlled Galbadia and protecting its people from harm, sets off hidden explosive charges buried under the Presidential palace, hidden there as an insurance policy by former paranoid president Vinzer Deling to decapitate a possible coup, killing Sorceress Edea and demolishing the center of government and the symbol of power for Galbadia.

This intense power vacuum sets up a multifaceted civil war waged by competing Galbadian Generals and Admirals turned warlords.

And so on…

Ostensibly, I would still allow the player to possibly play through the game in the canon manner, but allow divergence in places where I feel AAA budget and time constraints for what was an enormous game at the time preventing needed variance and exploration.

Anyway, back to my original point, from a combat standpoint, I feel turn-based JPRG combat loses the least of its essence when translated into text only IF.

(ETA: Just realized I accidentally put out an additional pitch beyond what I was already doing, lol. Whoops. Ideas are cheap.)

5 Likes

Some historically similar or potentially relevant discussions:

7 Likes

Hah! I just defeated the Hellhounds of the Slaver King!

I used a cunningly calculated sequence of commands that went a little like this:
>ASSAIL HOUNDS, G, G, G, G, G, G

Fortunately the flavour text (and all other text) in Treasures of a Slaver’s Kingdom is really well written.

6 Likes

Thanks! As the author of Kerkerkruip, maybe I can add some thoughts. There are different ways of approaching combat, including having the player win automatically against weaker opponents, or turning it into a puzzle. But let’s assume that you want to make a tactical combat system. Then the necessary ingredients are

  1. Choice: the players needs more options than just ‘attack’.
  2. Trade-offs: the choices allow you to accept risks now that can lead to rewards later.

A good example is potions in roguelikes. Drinking the strength or healing potion now will decrease the risk of the fight. But not drinking it, thus accepting risk now, leads to a rewards, namely, still having those potions later on.

To make this more central to every moment of combat, Kerkerkruip has the attack/concentrate choice. Concentrating is taking risk now, for a reward one or two or three actions later. (There are many other risk/reward systems in Kerkerkruip, interacting with each other and working at different time scales, but I won’t try to exhaustively describe them. But they way powers are gained is another one; ment is another one; religion is another one.)

So if you don’t want to get as complicated as Kerkerkruip, but do want to have tactical combat, you should probably think of one or more risk/reward systems and implement them. :slight_smile:

10 Likes

I really like the idea of a puzzle-based combat; I actually was hundreds of times in the thick of violent hand-to-hand political disagreement, often in position of leadership, (I’m a “man of service of order”, if one catch the drift…) I know well that swinging the wood is a part of solving the disagreement, the other, major, part is watching the opponent(s) for openings and/or weak spots, or even (low…) cunningly create openings/weakness, something like:

> x fascist. hit fascist's weak spot

Best regards from Italy,
dott. Piergiorgio.

3 Likes

Are you talking about real life brawling with political opponents? Or interactive fiction?

1 Like

IRL.

Best regards from Italy :wink:

This is good timing, I’m looking for advice. Right now I’m working on a combat system that works like this.

  • You go around activating various spaceships for battle.
  • During battle, you can use the weapon of any ship you have activated.
  • Each ship can only be set to use one of four attacks prior to battle.
  • Each attack is unlocked through a puzzle rather than combat. The best attacks are obtained by solving harder puzzles.
  • Each attack has a probability-based chance of success (behind the scenes randomness). However, there is a red/blue polarity system which means that each ship can only be used about half the time, tangible randomness that prevents players from spamming a certain attack.
  • There are no levels/grinding and no items.

I’m not really an expert on RPGs apart from Pokemon and some Fire Emblem-likes. I’m pretty sure I could implement it. To anyone, does this sound overly complicated for players or too easy to exploit? Or is there anything like it?

5 Likes

It doesn’t sound bad at all. But it seems to me that it has nothing to do with RPGs, instead it is a strategy game.

I would suggest putting this in a different thread (but am not 100% sure).

It doesn’t sound too complicated to me.

Who would be the players opponent? The computer, another player or MMO?

1 Like

In all fairness, the title of the topic just mentions IF combat, and, while mentioning RPGs, the OP doesn’t rule anything out.

2 Likes

I mentioned RPGs because P.B. Parjeter mentioned them. But I think the two questions don’t have much in common because the spaceship fights don’t have skills, leveling etc.

Ok, one can say, there still is something in common.

P.S. i, too am thinking about writing an IF-RPG.

3 Likes

I believe this is the big challenge facing interactive fiction. Not combat specifically, but what to do when you’re not solving puzzles, mapping, or making Choices-with-a-capital-C. Otherwise IF’s fortunes are tied to the public taste for those particular mechanics. It’s hard to make an engaging mechanic that’s turn-based and minimally spatial, and IF usually chooses to be both. Although real-time parser combat could be fun for faster typists.

But I’ve been brainstorming this in the background for a while and here are some ideas.

Introduce a reduced spatial element. One example is the combat from the DOS RPG Dragon Wars, which is textual and resembles JRPG combat, but with the notion of distance on one axis added to each group of combatants. For example you could have soldiers at 20’, archers at 50’, and a wizard at 90’. I really recommend playing this game if possible because I feel the depth axis adds more depth than you might expect. Actually, if you extended the depth axis and the length of combat, this could be a whole game by itself without the rest of the RPG.

Another example of a reduced spatial element would be enlarging the area of combat to cover adjacent rooms as well. You’d be able to see combatants in adjacent rooms, as well as used ranged attacks against them. They and you would move around the map. But the number of rooms in play would be limited enough that you wouldn’t miss having it laid out map-style. I really like this one because it doesn’t rely on additional mechanics beyond the map connections you already have.

Multiple actions per turn. Dragon wars is a good example again, but many party-based turn-based games would also be. And of course this is a big technique in Eurogames.

Speaking of borrowing from tabletop games, card-based mechanics were big recently (still are?). A hand of cards should be easy to represent in text. There are a lot of ways to fluff this—it doesn’t have to come off like an attempt to follow that trend. For instance, what if your “cards” were a semi-random selection of attacks supposedly based on the state and environment of the combat?

(I also think the board game mancala has potential as a fairly deep game with only one spatial axis, but I haven’t thought of a concept I really like yet. Something to do with the combatants’ vital force circulating through their bodies?)

6 Likes

The thing I’m currently working on (in TADS3) has a mostly-static “real world” and a procgen-lite “dungeon world”.

One of the game mechanic involves befriending characters in the real world to help you explore the dungeon world. The different characters provide different skills, which in turn provide different approaches to solving problems (both in the real and dungeon worlds). So for example one NPC might be good at sneaking around, and so could help you avoid enemies in the dungeon world. And one of the ideas I’m experimenting with is having an NPC that’s good at just straight up fighting (which would otherwise not be an option).

The way I’ve been approaching the combat aspect is to treat it more or less like a card-based game under the hood. Kinda like Gloomhaven, if you’re familiar with it: each character has a “hand” consisting of cards containing various abilities, and each turn you’re selecting a “card” and using its ability. Instead of “straight” RPG-ish “attack +2” sorts of abilities (which is mostly what Gloomhaven uses), they’re something more like the old Lost Worlds (and Ace of Aces) gamebooks: your abilities are things like “duck”, “overhead smash”, “low swing”, “block”, and so on. “Easy” actions are always available (you can always just try to run away, for example), but “hard” actions can only be used once every couple turns (like a card that gets discarded and isn’t available again until you recover your discards).

As the character accomplishes various things, they can acquire new “cards” to be used later (bonk a couple skeletons on the head and discover you can take off their heads in a single blow if you do it right, boom that’s a new move).

In terms of the player experience, this is mostly just a series of context-specific actions that can only be used by a specific character.

I think the approach I’m leaning toward is just switching the player character to be the combat guy if combat is initiated. I’d previously been working on changes to the parser loop such that in certain circumstances the player would be given a sequence of character-specific prompts for multiple commands which would then be executed simultaneously, like:

ALICE> S
BOB> TAKE ARTIFACT OF UNSPEAKABLE EVIL FROM THE ALTAR
CAROL> PUNCH SKELETON

Where Alice is the most-of-the-time player, Carol is the fighter, and Bob is some other NPC currently with the “main” player (the core idea I’d been working on is that the player is basically the navigator and the NPCs would have all of the useful “adventuring” skills). Under the hood that worked by processing the turn as if the player was just doing whatever the player command was, and each of NPCs would conduct their turn as if the player had given them an BOB, [do something] command. Which worked, but ended up posing “puzzle containment” problems.

Not sure if anything like this will end up in the final game…I’m certain I don’t want to implement a full-on RPG engine to handle combat, and I’m not sure that a RPG-like thing might feel unsatisfying (like you’re just playing rock-scissors-paper repeatedly or something like that).

But throwing it out there anyway in case it inspires someone else to do something better.

7 Likes

This is what I’m currently dealing with now in DOTG. I decided against using a “turn-based” RPG-style system, because 1) I am terrible at coding, anyway. Everything is already hacked and cobbled together, adding a combat system like that on top of it all is just needlessly bleh to my already blee-brain. And 2), also, I’ve just seen these mechanics in action even in games that are amazingly coded.

And frankly, they are boring. It’s just clicking a link over and over again. So what I’ve done is essentially made a “conversational-combat” system whereby you are able to find objects/items, have a sparse inventory, and that opens up different dialogue options. Your class also impacts your dialogue and action choices, so say a Soldier with a Caveman and Combat perk will have conversational options available to him like:

<<if $class is "soldier">><<link 'SMASH HER OVER THE HEAD WITH A CHAIR.' 'Next Passage'>><<set $roll random(1, 20)>> <</link>> ((CAVEMAN 20%)) You pick up the chair in front of you and smash the annoying weirdo in the face with it. Who says violence doesn't solve problems?<</if>>

And that will generate a result based on success/failure - and that’s pretty much where I end the combat. It is linked to health stats - so the person could get hit with a chair and then pull out a gun and shoot you and that takes off 50% of your health. Now you have conversational options dealing with your health loss.

Shit like that, so it’s more organic and not really a “combat-mechanic” based game. You pretty much are “solving encounters.” So there’s a 20% chance you’ll succeed and Smack Dat Person Gud, but that other 80% says you are a Stupid Cave Boy and you throw the chair at the wall instead. And this person is watching you be a complete moron, and will respond that way.

So it’s a bit of the “click to attack” shit, but more embedded as a conversational agent.

3 Likes

It doesn’t sound bad at all. But it seems to me that it has nothing to do with RPGs, instead it is a strategy game.

True, I am not too familiar with the details of these genres.

Who would be the players opponent? The computer, another player or MMO?

The computer would be the opponent, and far less varied in options than the player. Basically just rising difficulty through better chances as the story progresses.

There’s a free card game called Agent Decker that uses a line of cards to represent events and a stack of cards to represent actions. It’s far from fiction or tabletop RPGs, but that is the sort of linear approach that I think you are describing.

2 Likes

Here’s another one, from the tabletop game Homeworlds: instead of playing on a board with spaces connected to adjacent spaces, use some other principle to determine when locations are connected. In Homeworlds the rule is that two star systems A and B are connected if no stars (plastic pyramids) in A are the same size as one in B. Players can also “discover” a new star system, so new routes can actually appear during play.

I imagine you could have a lot of fun thinking up complex but intuitive rules for when locations are connected.

In the context of a combat system, “locations” don’t have to be rooms but could be any network of stances or attacks. So for instance you could make the player play Hunt the Wumpus on an evolving graph of dodges and feints.

7 Likes