Book Image

Dynamic Story Scripting with the ink Scripting Language

By : Daniel Cox
Book Image

Dynamic Story Scripting with the ink Scripting Language

By: Daniel Cox

Overview of this book

ink is a narrative scripting language designed for use with game engines such as Unity through a plugin that provides an application programming interface (API) to help you to move between the branches of a story and access the values within it. Hands-On Dynamic Story Scripting with the ink Scripting Language begins by showing you how ink understands stories and how to write some simple branching projects. You'll then move on to advanced usage with looping structures, discovering how to use variables to set up dynamic events in a story and defining simple rules to create complex narratives for use with larger Unity projects. As you advance, you'll learn how the Unity plugin allows access to a running story through its API and explore the ways in which this can be used to move data in and out of an ink story to adapt to different interactions and forms of user input. You'll also work with three specific use cases of ink with Unity by writing a dialogue system and creating quest structures and other branching narrative patterns. Finally, this will help you to find out how ink can be used to generate procedural storytelling patterns for Unity projects using different forms of data input. By the end of this book, you will be able to move from a simple story to an intricate Unity project using ink to power complex narrative structures.
Table of Contents (18 chapters)
1
Section 1: ink Language Basics
7
Section 2: ink Unity API
12
Section 3: Narrative Scripting with ink

Preface

Dynamic Story Scripting with the ink Scripting Language teaches you an easy-to-learn narrative scripting language. Instead of needing to build an entirely new system for every project, ink allows authors to create story-driven content using a robust markup language designed for simple and advanced narrative experiences alike. Combined with the ink Unity Integration plugin, authors can work with developers to write all their story content in one language, ink, and access its variables, call functions, or move between sections of a story using code in Unity.

In this book, we will start with the ink itself. The first five chapters will walk you through how ink understands stories, manages the flow, the movement between sections of a story, and how to store and manipulate different values within a story. This will lead directly into the middle four chapters, which cover how to use the ink Unity Integration plugin and the application programming interface it provides to communicate between ink stories and Unity projects.

Finally, the last three chapters will highlight three common use cases. We will start with creating a dialogue system and review some approaches to handling data when using ink and Unity. Next, we examine how to create an advanced quest tracking system where each ink story contains a quest, but Unity is used to track values between them. The last use case will review some common terms and patterns across ink and Unity to help developers get started using procedural storytelling in their projects.