VNLEWIKIBuild stories. Connect worlds.Deutsch
VNLE Handbook

Understand the editor

Build your story step by step. Each tool starts with a simple situation, followed by a practical example from the sample project. Use the menu to jump straight to a tool.

Control names match the English interface. Names such as Welcome or Received belong to the example project. The Harbour Key: download and follow along

Move chapters and scenes

Drag a chapter to its new position in the sidebar. Drag a scene before or after another scene; the bright line marks the insertion point. Drop a scene on a chapter to append it there, even when collapsed. Alternatively, open the three-dot menu on the active chapter or scene and choose Move to select a destination and position. Undo reverses the move; Save preserves the order. This organizes your project without changing connections or game logic.

Rename or delete chapters and scenes

Select a scene in the sidebar or click a chapter name. The three-dot menu appears only on the active scene and chapter. Choose Rename, enter a name and save. Delete scene removes the scene, its nodes and entry points. Delete chapter also removes every scene inside it. Every deletion asks for confirmation, showing the name and the exact scene count for a chapter. Cancel changes nothing.

The confirmation also shows affected jumps, substory calls and export profiles. Jumps from other scenes remain but need a new target afterward. Export profiles with no remaining entry points are removed. Shared texts, images, characters and resources are kept. Undo restores deleted content and references together. Save the version you want to keep.

Chapters and scenes

Chapters organize your story. A scene contains a connected conversation flow.

A simple example

Your story follows a journey. Use the plus beside Chapters to create Arrival, then Add scene to create At the gate and At the inn. Open a scene to build its conversation. The list order does not connect conversations: you decide how the story moves between them.

Try it: The Harbour Key

Open Harbour, where Mira’s conversation begins. Mira’s request contains her short request; Warehouse contains the warehouse conversation. Search for Warehouse on the left to open that scene.

Open the example project and walkthrough →

Canvas and search

The canvas shows your story as connected boxes, called nodes. Lines show what happens after each step.

A simple example

Create two dialogues saying “Hello!” and “Good to see you.”. Click Next on the right of the first, then the input on the left of the second. The line now shows that the second line follows the first. Drag the background to move around the canvas.

Try it: The Harbour Key

Open Harbour and use the magnifier in the block toolbar to search for Welcome. Select the result. VNLE centers the greeting on the canvas. Follow its connections to understand Mira’s conversation.

Open the example project and walkthrough →

Dialogue

A dialogue shows a spoken line or narration. You can assign a character and an expression.

A simple example

A guard should say “The gate closes at sunset.”. Choose Dialogue, write the line and select a character you created under Speaker. Connect Next to End. Use Set as start to make the dialogue an entry point, then choose Play story to read your first line.

Try it: The Harbour Key

Welcome uses Mira as its speaker. Later, Your remaining gold displays money through a placeholder bound to Gold. After a successful purchase it shows 5 instead of 10. Simply typing a number into the line would not update it automatically.

Open the example project and walkthrough →

Choice

A choice shows several replies to the player. Each reply can lead to a different part of the story.

A simple example

The guard asks “Where would you like to go?”. Create a Choice with “To the market” and “To the inn”. Connect each reply to its own dialogue. During play, the player chooses the route. An unconnected reply cannot take them onwards.

Try it: The Harbour Key

Open Choose a reply. One reply leads to the purchase, the other to the farewell. Play both routes. Replies can also have conditions. Define what happens if none of the replies are available.

Open the example project and walkthrough →

Condition

A condition checks a value and automatically takes the Yes or No route. For example: does the player have enough gold?

A simple example

A ferryman charges three coins. Create a numeric Coins value under Variables. Add a Condition checking whether Coins is at least 3. Connect Yes to “Come aboard!” and No to “You need more money.” The route is chosen automatically. This check does not subtract any coins.

Change variable

This block changes a stored value. For example, subtract gold or remember that a quest was accepted.

A simple example

The player has persuaded a guard. Under Variables, create a true/false value GateOpen, initially false. Choose More blocks → Change variable, select GateOpen and set it to true. Connect Next to the following dialogue. A later Condition can use it. The change itself shows no extra dialogue line.

Try it: The Harbour Key

Pay five gold subtracts 5 from Gold and records the accepted quest through QuestAccepted. Remember the key later sets HasKey to true. If the handover fails, Refund the payment returns the money. The purchase should only succeed once the key has been handed over.

Open the example project and walkthrough →

Command

A game action asks your game to do something, such as give an item. The conversation waits for the game’s response. In editor preview, you select a test response yourself.

A simple example

A chest should put a sword into the inventory. Under Game actions, define Give item with an item input and the outcomes Received and No room. Select it in a Game action block and connect both routes. In the editor you choose the test response yourself. In your finished game, the action must be connected to the inventory: VNLE does not create one on its own.

Try it: The Harbour Key

Receive the key uses Give item with Warehouse key. Its project-defined outcomes are Received and Declined. Try both test responses. The included example game performs the actual handover; declining leads to a refund.

Open the example project and walkthrough →

Jump

A jump continues the conversation at another entry point. The entry point can be in another scene.

A simple example

After the conversation at the gate, the story should continue at the market. Create an entry point in the market scene. Under More blocks, add a Jump and choose that entry as its target. Play continues there without automatically returning to the gate.

Try it: The Harbour Key

Go to the warehouse leads to Warehouse at its warehouse entry point. There the story checks whether the player has the key. Stored values such as HasKey survive the scene change.

Open the example project and walkthrough →

Call substory

A call takes a short detour into another conversation sequence. Afterwards, the story can continue from where it left off.

A simple example

Several conversations should offer the same directions. Build them in a separate scene. Choose More blocks → Call substory and select its entry point. Connect After returning to the original conversation’s continuation. End the directions with Return so you can reuse them.

Try it: The Harbour Key

Ask Mira calls Mira’s request at mira_request. Mira explains the warehouse, then returns to Already have the key?. Start in Harbour to experience the complete detour and return.

Open the example project and walkthrough →

Return

Return ends that detour and goes back to the conversation that called it. The call remembers where to continue.

A simple example

The directions are complete. Add Return at the end and connect the last dialogue to it. The original conversation resumes where it called the directions. Without a previous call there is nowhere to return to. Use End for an ordinary conversation ending.

Try it: The Harbour Key

In Mira’s request, Return to the question finishes the detour. Play from the Harbour start, rather than starting the substory directly, so the story knows where to return.

Open the example project and walkthrough →

End

End finishes the current conversation flow. The game can then close the dialogue box.

A simple example

A merchant says “See you tomorrow!”. Create End and connect the farewell’s Next output to it. The conversation is finished. This need not end your whole game: your game can allow movement again afterwards.

Try it: The Harbour Key

Return to the game ends the warehouse conversation. Despite its custom name, it is an End block, not a Return block. Check the icon and block type: its name alone does not determine its behavior.

Open the example project and walkthrough →

Characters

Define who is speaking here: their name, portrait and expressions. You select the character later in a dialogue.

A simple example

A guard should speak with a name and portrait. Open Characters, create Ada and add a portrait. Select Ada under Speaker in a dialogue. You can add another image for a surprised expression and select it for the appropriate line.

Try it: The Harbour Key

Open Mira under Characters, then open Welcome. This shows the connection between character and dialogue. You do not need to enter the name and image again for each line.

Open the example project and walkthrough →

Resources

Resources describe things in your game world: items, quests, locations and minigames. Dialogue and game actions can refer to those same things.

A simple example

Your game contains an Old key. Under Resources, create it as an item with a name and description. Select it later as a game-action input. The entry describes the key; an action in your game must still put it into the inventory.

Try it: The Harbour Key

You will find Warehouse key as an item, Open the warehouse as a quest and Old warehouse as a location. Receive the key refers to that same key, so the item remains identifiable when its name is translated.

Open the example project and walkthrough →

Variables

A variable is a named value that remembers a number, text or yes/no. For example, Gold remembers money and HasKey remembers whether the player has a key.

A simple example

Should the story remember whether you helped a guard? Under Variables, create a true/false value HelpedGuard, initially false. After helping, Change variable sets it to true. A Condition can later choose a friendlier greeting. Use a number for coins or text for a nickname.

Try it: The Harbour Key

Gold starts at 10. HasKey, QuestAccepted and QuestComplete start as false. Follow Gold from the purchase check to Your remaining gold: checking, changing and displaying all use the same stored value.

Open the example project and walkthrough →

Play and check your story

Preview lets you play your story inside the editor. Project check helps you find missing connections and other problems.

A simple example

You want to try both replies. Choose Play story. Use the testing tools to bookmark a point before the choice, then return to try the other reply. Test values do not change your project. If you edit the dialogue, restart to include the change. Project check helps find issues such as missing connections.

Try it: The Harbour Key

Start Harbour at harbour_start. Try buying with enough gold and with too little. Try Received and Declined at the game action. Is gold deducted or refunded correctly? Does the player only get the key after a successful handover?

Open the example project and walkthrough →

Save and share

Save keeps your work on your computer. Export creates a package to share. The team dialog in the project menu exchanges changes with GitHub.

A simple example

Save keeps your work in the local project. To share a copy, open the project menu at the top left and choose Export entire project as ZIP. Neither sends changes to your team. For GitHub, use the team dialog: compare first, then send.

Try it: The Harbour Key

Download the example, extract it and open the included project folder. Edit Welcome, save and reopen the project. Your text remains. A ZIP export includes the editable copy and, for a valid story, the files for your game.

Open the example project and walkthrough →

Localization

Translate one story into several languages. Connections, choices and stored values stay shared.

A simple example

A dialogue should say “Good morning!” in English and “Guten Morgen!” in German. Open Localization, add the target language, select the row and enter the translation. Play in both languages. You translate the text without rebuilding the conversation.

Try it: The Harbour Key

The example includes English and German. Compare Mira’s greeting. Keep the placeholder for remaining gold so the current amount appears in both versions. Translation package lets you share the texts as an Excel file for translation.

Open the example project and walkthrough →