Fight system for game-book type game

Progress on my WIPs has stalled lately due to too much work in my daytime job. However, I’m still churning different ideas in my head for future WIPs (that I would optimistically not start until 2018 anyway).

I have been given much thought to trying to churn out a game that could be like some of the old gamebooks of the past (such as deathtrap dungeon, for example). Obviously, for that you’d need a simple yet powerful combat system, that was not repetitive enough for players to get bored, yet that could be copy-pasted all over the game with minor modifications. Any thoughts on how this could be done, and what the code would look like?

NOTE: I KNOW that this is not what most HG/CoGs are like, that most games on this site are about narrative (and I have made the same comments to other people myself, etc). Just, I’d somehow like to eventually try to write such a game as a tribute to the gamebooks of the past (attempting to re-read them nowadays clearly shows that most (all?) of them are inferior to some of the better CoG/HGs, but nevertheless many of us grew up on them and they have a place in our hearts). Obviously they might not be for everybody, but for those who might enjoy such a thing

I’ll assume… you need some variables such as [ATT], [DEF], and [CRIT]?
Or maybe we can remove that [DEF] to make things simpler (Lone Wolf Saga relies purely on HP pool rather than Defense, IIRC).

Anyway, how you want this fight system to be?
Something like what is done in The Great Tournament (You hit him. He hit you. You dodge him. Repeat) or something more like Magium where each sequence of attack turns also move the narrative forward (You hit him, he is forced to retreat, he unleashed his inner evil-power, you run away)

Repetitive combat system or (I would call it) Narrative combat system?

1 Like

Well that’s exactly what this thread is aiming at: what are the pros and cons of each system? I also implemented a turn combat system in Tokyo Wizard, which eventually became rather complex. So I was wondering what other people thought about which was the best way to make such a system work?

It’s like adding too much or too little salt to food.
There has to be a balance depending on what you’re eating.

If the complexity of the combat system overwhelms the story… there’s too much salt.

1 Like

Hmm… If I think about it, CoG is all about narrative.

So flavor text! :raised_hands:

So in this case, my “Narrative combat system” might be suited better. :thinking:

But the repetitive combat system is… easier to code?
I mean, writing a single blob of codes and applying it on multiple places is much easier than writing different events for every different combat interactions, right?


You could make random rolls to check against stats to simulate a dice, but I am not sure it would be fun.

In the books you sat with you dice and paper and rolled yourself so you didn’t really read the same over and over again, combat was a stop in the reading, but here you run the risk of reading the same sentence over and over again, so whatever you do it would have to be short to avoid repetiveness.

Also, I would like to point out that while I love the game books, I cheated. I always just declared that I won the fight and then continued on, I don’t think I was the only one who loved the books, but did that.

1 Like

@DreamingGames Yes, I have to confess I (and many other people) cheated, and that was part of the fun. I read some interview with Ian Livingstone, who said he noted while riding the bus and looking at people who played his books how they also kept fingers inserted into the book in order so that they could go back if they got killed (which I guess most people did!). This was always part of the fun of playing these books… the cheating element.

In Tokyo Wizard I tried to go around this by introducing different difficulty setting, so that the MC could automatically win all combats. So, things can be tweaked to make the combat really easy. In an earlier game WIP (the nebula, should get around to uploading that again, after dropbox…) I was using random rolls, but not sure it was the best way.

How difficult would it be to implement a narrative combat system that was also repetitive? I guess you could randomize the narrative part of the text, but that might be a bit too much work… mmmmmm

If you are interested in random rolls as dices, you should check out breach: the archangel job here on the forum, which makes extensive use of it.

The thing with these games is that you can’t cheat unless you can code and have it on a device where you can get to the code. So what might have worked in the books, might not work here.

Another way to do combat could be to have a certain amongst of HP, then have a set number of ‘rounds’ where you, as the writer, can narratively write and more and more intense battle and if the player doesn’t run out of hp at the final round, they automatically survive/win.

Another good thing is check points, to simulate those ‘fingers in between pages’, so people don’t have to start from the start every time they died.

1 Like

That’s quite a good method, actually! If not for me being idealistic and dislike the idea of “unused content of playthrough” :expressionless:

I mean, it’s possible that the player win a fight in a single round, while the author writes tons of unique-rounds (because it’s a boss fight, for example).

Besides, leaving the fight scenes on this case can be quite awkward and forced. It’s possible that each round have different “finishing move” when you defeat your opponent, and linking them back to the main story can be quite a tedious task :thinking:

But it really is not a problem if not because of, as I said earlier, my idealism :sob:

1 Like

You as the writer can totally ‘cheat’, though, by determine the damage output.

You just make sure that the player can’t damage the opponent enough to win/survive until the final round. (I think Lucid does something close to this in the lost heir series.)

Or you can just keep the number of round so small that it mangeable to write an out from the fight no matter what in all rounds. I would not advise to go much longer than three rounds anyways, because this is not a video game, but a text based game and as such I think a too drawn out fight would be tedious.

As for an out of the fight. If you know that round three is going to be the final round no matter what, you can easily write the out transition from fight to non fight because you, as the writer, know that this is the end of the battle.


I think that it’s always a fine balance between repetition, unique content and as @Szaal has pointed out, “unused content of a playthrough”. In the WIP I am currently, I worked with the stage system, but it can be really tedious to work with (esp since you want to create realistic, interesting choices)

One way I find that works to reduce the “unused content” and improve the uniqueness of each fight is to break down a single fight into 3 stages (any shorter seems a bit too little for me, but it’s personal preference). Each stage then provides a conditional advantage or disadvantage for the next stage.

Temp variables can be used to track choice, after which these can be used to adjust win-lose conditionals/stats. If the MC successfully breaks his opponent’s shield, further offensive strikes would deal more damage. Hence, each fight is progressive and each action is meaningful without the writer having to write separate branches that continue to branch with each action (and subsequently descend into a mess).

Not sure if I’m explaining myself clearly but I hope this adds to the discussion!

1 Like