How viable would it be to make something this complex in ChoiceScript?


To quote the Game Ideas thread: “(I’d like to make) a heist game, where you have the task of putting together a team, and planning and executing a heist. You would have the choice of several different NPCs for your team, and, while the game would fairly short, it would be extremely replayable, because you could build new teams and have a whole new dynamic every time.”

Basically, all NPCs react differently to each other. Maybe A is the best safecracker in the business, but if you piss him off, he won’t agree to be part of your team. B isn’t as good, but he’s willing to work for you … except, he continuously pisses off C. So you don’t choose C, you choose D for your team, and D and B get along fine. But D might prefer an explosive entrance to your sneaky plan. So, in essence, the characters react to each other; you have new conflicts or a new dynamic every time. One lineup might allow you to pull off the heist without a hitch, but then you have to contend with a double cross. Another lineup might be more reliable but your team will squabble all the time. Things like that. Experimenting with new lineups would add a ton of replayability.

It’s a very complex idea, and I’m not sure how complicated it would be to code such a game.


From working on Community College Hero, I can tell you that coding the actions of a group of people who are always around each other is very challenging. Many CoGs have large casts but the NPCs much more with the MC than with each other.

I think @jeanwriter’s Guenevere (sp?) is the best example of successful hyper-detailed group dynamics, but I’m sure there are others.

I think she is successful be because the group dynamics are a central part of herb story.

I say go for it, especially if the relationships are going to be your main focus.


It does sound like a complex idea, lethal or non lethal, what happens when the police show up, how the other members of your gang react. Yet, it could be a very thrilling CoG.

The escape should be in three mini coopers though.


I really have to be more careful posting from my phone. Sorry for the gibberish.


It’s not a question of whether *it* can be done in Choicescript, but rather whether or not *you* can do it in Choicescript - and there’s only one way to find that out: By giving it a try.


I’d say there are two ways that I could think of that you could go about this, either create a hidden status for how each criminal feels for the others, or simply decide on some established relationships beforehand and use *if,*else to dictate the story.

For instance if you have 6 criminals, then you’d end up with 36 number variables to keep check of their relationships. Including their relationship with you. While this would probably be the most work, it would also be the most dynamic, as their relations could change during missions. (6*6)

Otherwise we’re talking about maybe 18 Connections, 3 for each. Two Connections with some select fellows and one with you, for instance. This would be more static but wouldn’t require you to lower and raise their statuses, other than maybe with you. (6*3)

You could of course combine the two as well I guess.

Disclaimer: I am not in any way shape or form skilled at math, my calculations may need be double and triple checked.


I have a wip where you can pick different npc’s, ‘Ghost in the Library’, it can be done, but it is very labor intensive as far as the code and group interaction. I have set it aside to work on Norif for now. Short game with group interaction is a good idea.


If you haven’t already play Zombie Exodus. Examine the characters and the variations in party members, and their opinions about you. It’s absolutely crazy the amount of depth JimD’s gone into. Some characters might be alive, or dead, they may be dating you or not, they may be dating each other, all depending on your actions and choices.

It’s possible.


Definitely possible. I’m trying it out with a cast of 20 playable NPC’s. It is a lot of work, but it is fully possible. It also requires many variables, especially with the complex interactions.


Ok, I’ll give it a try once I’ve finished my current WIP and see how it goes :slight_smile:


Seems like you’ve already got the answer you’re looking for, but I want to add a little bit. In my current WIP, I have things similar to what you describe and my advice to you is to spend as much time as you can working out the code systems before you even get to writing. I developed them as I went along and it got so confusing so fast, but then I went back and spent a buttload of time documenting and organizing the systems, creating all the variables I needed, etc., and it really helps!