That was me at first, but after just a few weeks of having to look everything up and long sessions of debugging and having nightmares about “extracting another token” it became really quite straightforward. Reading the code of Choice of the Dragon was key. Also playing lots and lots of Choice games to understand what the code could do was also really important.

8 Likes

CSIDE is basically a custom word processor that makes it easier to see and write ChoiceScript code, by automatically adding colours for bits of code, and auto-filling some commands / doing some things for you (e.g. when you type an open bracket, it will put a closed bracket in for you after your cursor; and when you need to do a new line, it will put in the correct amount of indent for you). You don’t have to use it to write in CS, but it makes it much more pleasant!

I can definitely understand that – I do find it is more effort to sit down and write when doing both at once, and of course you have to be at a computer rather than pen and paper. Probably one of the many reasons why my piece isn’t close to finished yet… :sweat_smile:

For me, the main thing is to be thinking in a world of choices – my favourite CS games are ones with frequent choices, even if they’re only subtle and don’t lead to a new plot branch, like different lines of dialogue or different ways to react to a situation. There tend to be lots of little choices like this, and they’re cumbersome to write in an ordinary document (only so many times you can fit in ‘go to page/section x’ before you get lost while editing).

It might work to write the rough body of a story as normal, with broad branches and big scenes planned, then go back and add in the more detailed/smaller choices when you code. I can only speak for myself though, it’s very individual and I don’t think there’s really a wrong way to do it!

Also this for sure. Looking at the code of some existing Choice Of Games stories was super helpful for me to see how it works in practice.

5 Likes

I personally found the tutorials that you can download via the Choicescript IDE app was easier to use than reading the choicescript wiki.

To answer your questions, I write the story and code at the same time just because it’s easier to do compared to writing and then coding later.

@rinari outlined an excellent method of writing for an interactive novel… which is the formula I most often use unless I plan to attempt to write a wildly different storyline. I don’t really have a set plan except for a basic skeleton structure for how I think I want it to go but usually I find more interesting ways it could go as I’m writing… which then gets tampered with my coding limitations.

5 Likes

Usually I write out the entire story in a word document first adding in important notes, ie. stat increase/decrease branch decisions or story lines etc. Then I go into Notepad++ and do all of the coding and use that opportunity to make any edits and I usually go from beginning to end as personally I find it easier to think about my game in that way.

2 Likes

That’s almost exactly what I do. I’ve heard that some people just write their story into whatever their coding mechanism is, but my MO is that it’s better to write the story, write the stats and branches, and then piece them together with code.

2 Likes

funny, i wonder if there’s a correlation between writing with CSIDE and preferring to write and code at once. when i finally decided to take the plunge and get serious about making a game, i started with Notepad++ and reading the Choice of Games site’s tutorial (+ supplementing with the wiki). while I was doing that, I was doing all of my writing in a word document. however, just because of the kind of learner i am, learning Choicescript like this was impossible. i do better with demonstrative learning i guess?

so then i found out about CSIDE and that tutorial was exactly what i needed. felt similar to the kind of walkthroughs you could purchase for learning how to use a Microsoft PC (the giant, heavy ass spiral-bound books xD), which i used to use for fun as a kid :laughing: my dad had a bunch of those in the late 90s. anyway, i started learning with CSIDE and suddenly the method of importing already written things was getting completely disrupted by being able to see what the code looks like in relative real time since CSIDE has that testing panel. idk, the whole visual nature of the program is the reason it works well for me, there are just certain portions of my creative process that i like to have my hand held thru i guess :sweat_smile:

now i write as i code and though it directly impedes my speed (i’m a compulsive perfectionist about writing, so writing while coding does slow me down. i’m way better at leaving things in their first draft form when i’m just adding to a word document, but tweaking code inevitably makes me reread things a lot.), i still think it works best for me. idk why, i just confused myself when i wrote in a separate doc and would move things over to CSIDE! probably because i was struggling to organize all the different indented narrative on the inflexible formatting of a traditional word processor. :man_shrugging:t5:

5 Likes

Personally, I’m against writing and coding at same time. They’re two very different processes requiring very different types of revisoning (editing vs debugging). I’ve found that if I’m at all concerned about coding, then I won’t be writing at my best and vice versa.

There are differences in writing in a word processor vs a text editor, even if a lot of it is just psychological nuance. Being able to write without colorful key-worded tags and in the same font in which it’s going to be read, for example, gives you an immediate feel for what’s going to be presented to the reader. Also, curly quotations (“ ”) will always look better than straight ones (" ") but that might just be my personal preference, lol!

There’s also the issue of convenience: I’ve found CSIDE to actually be too convenient! When it comes to making these games, the more times you’re forced to look over your work the better off it tends to be. That said, being able to rapidly prototype your chapters is very useful when you’re starting out in choicescript.

What I do is write on Google Docs using pseudocode for the choicescript. Pseudocode is a lot like normal code, but it’s meant as a placeholder to be replaced later when I’m converting everything into choicescript. Here’s some examples:

//if (attractedTo = "female")
You find her/him in the backyard cutting the grass.

A. [Attack]
B. [Defend]

[A.

]
[B.

]

After I write everything up, I do a find+replace for her/him -> (dollar sign){herhim} and so on. It’s more natural to write without $'s and brackets, plus I’ve found gender variables easier to catch this way because there shouldn’t be any /'s when I’m done replacing. I don’t have to worry about tabs, either.

Ultimately, my view is this: proficiency in programming choicescript is an ability that, once you have adequate mastery over, it should no longer be your concern. It has a very low skill ceiling. It may take a few weeks, but once you know your way around nested *if statements and the stats screen, you’re pretty much set.

Writing in comparison has a gigantic skill ceiling: the sky is the limit as far as how good you can get and the level of mastery you can strive towards. That should be where 99% of your mental energy is directed towards. Once you get more comfortable in choicescript, you’ll find this increasingly the case.

6 Likes

Interesting!

Do you do this write up/find+replace in Google Docs or in Choicescript? I’ve tried some Google Docs but am hesitate to write big chunks (and frankly haven’t found the time yet to experiment with small chunk) because I’m afraid that the indentations or something else won’t take after I copy and paste the Google Doc script into Choicescript.

Yep! I do the find + replace command (ctrl+h) in Google Docs. Make sure to go case sensitive because of She/He vs she/he and so on. When it comes to porting over from Google Docs to a text editor, I do it in small chunks at a time. After fixing the tabs up properly and converting my pseudocode into choicescript, I move on to the next chunk until the chapter’s done.

1 Like

Haha! That’s a first. Makes me want to add a ‘Hard Mode’ setting :face_with_hand_over_mouth:
Maybe like: The Most Dangerous Writing App

6 Likes

I tend to write out a mind map, then code the choices first. Then I go through and write all the text. Then if I don’t like how something fits with the overall story, I can see if it would be congruous with the rest of the story and decide whether to remove it or not.

That’s a thing?

Welp, looks like I know what to do today.

1 Like

you’re braver than i. I got anxiety just from reading what that site apparently does :sweat_smile: I’ve lost so much brainstorming and literal chapters of work so many times in my life, that site is horror incarnate to me :joy:

2 Likes