Advice on Prioritization When Writing a Game

When writing a game in Choicescript, is it better to write out most of the story first, then go back and code, or to be meticulous in coding as you write? So far I have been doing the latter but I would like to hear the opinions of any other writer or author who would like to give one.


I do the latter as well. I find that trying to wrestle the code into the shape I want often gives me ideas that I wouldn’t have had otherwise. Even when I write with pen in a notebook, I write the code out as well.


I personally couldn’t write the whole story and then try to put the coding at once in later, it’d be a huge chore to have to do all the coding and testing in one go. If it’s coded in sections, you can check and bugfix as you go. I usually try to put in at least the basic coding as I write, although it does mean I have to adjust many of the stats at the end to make sure they come out right.


I’ve done both ways and the latter is definitely less stressful!

Agree with the other responses you’ve had and want to add that when editing and polishing the later drafts, your code and stats might get refined, as well. In IF, I think it’s better to think of the writing and code in tandem as complimenting each other so they can evolve together, rather than as separate entities. Also makes story branching SO much easier.


A lot of it depends on how comfortable you are with choicescript. For myself, and probably anyone with a programming background, it’s just labels, variables, if and else statements. Because I denote these things in the text itself (while I’m writing in a word document) converting to choicescript is an almost mindless activity.

And because I find it easier to read, edit and spellcheck my work in a word processor over an IDE, I prefer to get all the writing done first. To show branches I just use brackets, but if your story has deep branches inside of branches it would definitely not be ideal.

For me at least, I don’t like shifting from the right side of my brain to the left too often.


Actually, it strikes me that you didn’t mention the third option, which is to write all of the code first, and then the text. That, I actually have done when planning out a particularly complex mechanic in a chapter. I do all the code, and then put little placeholders for the text so that I can play through it and see if everything looks ok.

I don’t like doing it, though.


I do that most of the time. The only problem is that you can then later miss or forget to replace some of the filler text and end up with something like

*if (combat<25)
      You get stabbed. Ow.

My secret is I put “xxx” next to any placeholder text so I can easily do a search for stuff I need to replace.


Please note that I am an amateur at this and have little experience to back the process I am presenting. I think it works, but I don’t really know how well it works as I don’t have enough data yet to back it up. Anyway, if you would like the advice of a novice:

I would suggest first planning your story. Not really writing it, but turning it over, thinking through the characters, setting, plot. Hopefully you should know how you want you story to go before writing a word down. Try and think not just about story, but how it is to read and, in the case of ChoiceScript, to play the game. Some stories may not be fun and therefore to tell them in an interactive medium you need to find another way to make them engaging.

Then, take the idea in you head and flesh it out. I prefer to make a storyboard of some sort, but any way that you want to ensure that you have a full, engaging story is fine. You’ll find yourself changing the original idea throughout this, but that is to be expected. Most of those changes will make your story better as you come to better understand what you are writing about.

After finishing this, I would start writing. I would suggest coding and writing at the same time, as this allows you to play your game as you do it. You may think that your story is coming along great and then go back and play it a few minutes later and see that the pacing is not right. Without being able to play the game, you may not notice game play details such as this. In my mind, its much better to be able to catch these early than risking missing them as you go through later. Then the later revisions are much easier as you have a better understanding of your own game and have already cleared out many of the egregious errors that may have slipped by if you had written or coded separately.

1 Like

I write herehere and use <------------- marks. :slight_smile:

Oh, and I absolutely code and write at the same time. :slight_smile:


Hahaha, this is really funny. I use the *comment command and then TYPE ALL CAPS QUICK NOTE ON WHAT NEEDS TO GO THERE. If I’m feeling really fancy/urgent, I might throw in a row of **********************s. :laughing:


Just a question: why not put *comment placeholder text?

*comment is wonderful to use while scripting because you can do so much with it…

Ninja’d by @MizArtist33 … I guess I should read the entire thread.


I could do that too. I’ve just been using “xxx” for so long in my writing as placeholder text that I’m totally set in my ways. But a *comment makes lots of sense.


Well, I am not a published author or anything like that. I am just a guy who has the current hobby of writing an interactive novel with choice of script, so take this as just my personal feelings and method.

I usually write everything at the same time. Strange as it may sound, writing the code simultaneously helps me understand where I can or can’t take the story, and the other way around. And besides, I don’t really plan every single detail of a story, I have the general plot, a detailed account on the setting, some pre-created characters (others I create as I go along), but not a “chapter by chapter” or a “choice by choice” plan of it. And when one goes with the flow, writing everything simultaneously is a good way to go, even if for no more than just pause the story and consider what should happen next.

And besides, I take an awkward pleasure into seeing my story becoming playable, so a meticulous code creation as I go along is a must.