Best method for story scripting?

You can write your topic however you want, but you need to answer these questions:

  1. What do you want to achieve? Keep it simple and clear!

Im working on a horror game. I built all of the necessary things but now I’m not pretty sure how to script the story efficiently.

  1. What is the issue? Include screenshots / videos if possible!

I don’t really have an issue I’m asking you guys what maybe your technique is or if you have any tricks and efficient ways so you don’t sit hours on a simple like 10min story.

  1. What solutions have you tried so far? Did you look for solutions on the Developer Hub?

I know that I can make it with parts and when a part is touched something happens. But that isn’t very efficient in my pov.

After that, you should include more details if you have any. Try to make your topic as descriptive as possible, so that it’s easier for people to help you!

—-

Please do not ask people to write entire scripts or design entire systems for you. If you can’t answer the three questions above, you should probably pick a different category.

2 Likes

You could use a proximity prompt if you don’t want to deal with hitboxes. If your system will have complex conversation trees, a good method could be a dictionary/object in a module script where each node has a key. You can then have the different responses include the key the player should be sent to(maybe also do an exit and a success key) and have a separate handler to manage this system.

3 Likes

Okay thanks! That are some good ideas!

can you please give an example, this seems really interesting but i don’t fully understand it

Which part? For storing the conversation, I like to use a module like this:

return {
    Start = {
        Prompt = "Hello there.",
        Answers = {
            Second = "Hi, can I ask you something?",
            Exit = "Goodbye",
        },
    },
    Second = {
        Prompt = "Sorry, I am a little busy atm.",
        Answers = {
            Exit = "No problem, talk to you later.",
        },
    },
}

As for the handler, you would just need to show the prompt and answers. Depending on the answer chosen you can then take them to another page. I would recommend having one global conversation module, maybe link different parts to trigger different conversations(could also use Tags and Attributes) and then require the specified conversation and run it.

Seems like it would depend on the story.

It could be that you are leaving clues for people to gather up so they reveal the story.

It could be that the story is revealed through triggers; like touching something or entering a certain area.

It could be that it is a bunch of cutscenes.

I could be that you use a mix of things to keep it interesting.

Maybe they fall through the floor and find a clue.

Maybe…

Could you try to write algoritm, add uis, story, lore etc