How to make different arcs in one story

Hello folks,

I have several questions- but most of them boil down to the scenes. Is there a way to organize scenes where you could make them go through a set number, but then not roll over to the next set? For example, say this is your *scene_list:

[quote]*startup
*choose_your_occupation
*principal_morning
*principal_lunch
*principal_afternoon

*teacher_morning
*teacher_lunch
*teacher_afternoon

*student_morning
*student_lunch
*student_afternoon
[/quote]

Can you make different arcs that don’t roll over on each other as soon as the last scene in the set is over? Even better- is there a better(easier) way to make this sort of thing work?

You can use *goto_scene in order to navigate between scenes instead of *finish. If you do that you don’t even need a scene list, you can just tell it precisely which scene to go to and in what order.

2 Likes

But if I were to use *goto_scene, wouldn’t I need a scene list? Sorry, I’m new to coding, and many things about it puzzle me.

When you use the finish command it tells the game to go to the next scene on the scene list.

However, you don’t have to use finish.

In your example you could do

*goto_scene teacher_morning

and then in teacher morning you could have a

*goto_scene teacher_afternoon

And that’s the order it’ll travel to scenes in. Just as long as you don’t use the *finish command.

@Reaperoa’s guide has some explanations in the basic commands section.

Yes you will need you list of ALL scenes in your startup file then later anywhere in a file you can write
*goto_scene such_and_such

you can also go to a certain label in a scene as well from another scene. for example let’s say i have a few scenes like his

*scene_list 
  dogs
  cats 
  pigs

and let’s say im in scene dogs but want to go to scene pigs you just simply write:
*goto scene_pigs
now if you want to go there and to a certain label in the pig scene you can write
*goto_scene pigs mud_time

and it will take you to the
*label mud_time label in scene pigs

so the word after the first space after *goto_scene will order what scene to jump to and the words after the next space will be what label you want if you want to do that as well
hope that helps

1 Like

Thanks for the help guys, this helps me tremendously.

@RockStarPenguin

Actually no you don’t. You don’t need to list any scenes there at all. (But you probably should). Your scene_list can be blank as long as you never use the *finish command.

You do need to have all the scenes as text files in your scenes folder but that’s a given.

@Silhuetta Have you looked at the wiki? choicescriptdev.wikia.com

Oh I see… I never knew that…so pretty much the only reason for the scene list is if you want to use the *finish command? and only if it’s more linear… to be honest I never use the *finish command =p

Scene list also makes it easier if I’m testing games, looking at code. It lets me know which files to read and in what order. I love detailed scenes lists where every single scene file is listed there. It makes things a lot easier for me.

It’s probably bad practice not to have a scene list.

To my understanding, not including a *scene_list will also make the game fail to compile properly, but that’s not a general use thing for WIPs, so it’s more of a requirement for hosting, than for a functioning game.

3 Likes

In the future. It might be easier for them to have different endings. If the system they use to write is made a bit easier for them. I think personally they should have a little app they can see it before they publish. The easier it is on the writers to create different arcs. The better the stories will be in my point of view.

@Joshua_Devon I’m not sure what you mean. It’s already easy to create as many different endings as you like.

I thought this thread was explaining an easier way to do it. I’ve never written a story or had to do code. I thought this thread was simply making it easier. My mistake.

Oh.

The thread was asking how. We were explaining the answer. That it’s easy enough to do.

So now you know. :slight_smile: