Hi
user
Admin Login:
Username:
Password:
Name:
Compiling Your Story: Using Techniques from Compiler Design to Check Your Narrative
--client
lca
--show
lca2020
--room room_5 15130 --force
Next: 1 NTFS really isn't that bad
show more...
Marks
Author(s):
Jon Manning
Location
Room 5
Date
jan Thu 16
Days Raw Files
Start
10:45
First Raw Start
error-in-template
Duration
0:45:0
Offset
None
End
11:30
Last Raw End
Chapters
Total cuts_time
None min.
https://lca2020.linux.org.au/schedule/presentation/94/
raw-playlist
raw-mp4-playlist
encoded-files-playlist
mp4
svg
png
assets
release.pdf
Compiling_Your_Story_Using_Techniques_from_Compiler_Design_to_Check_Your_Narrative.json
logs
Admin:
episode
episode list
cut list
raw files day
marks day
marks day
image_files
State:
---------
borked
edit
encode
push to queue
post
richard
review 1
email
review 2
make public
tweet
to-miror
conf
done
Locked:
clear this to unlock
Locked by:
user/process that locked.
Start:
initially scheduled time from master, adjusted to match reality
Duration:
length in hh:mm:ss
Name:
Video Title (shows in video search results)
Emails:
email(s) of the presenter(s)
Released:
Unknown
Yes
No
has someone authorised pubication
Normalise:
Channelcopy:
m=mono, 01=copy left to right, 10=right to left, 00=ignore.
Thumbnail:
filename.png
Description:
Programmers are used to their compilers catching tiny problems in their code. When you're a writer, it's harder to catch these problems. Wouldn't it be nice if you could run an error-checker on your dialogue? This talk discusses the application of compiler optimisation and correctness checking techniques to branching narratives, which allow authors to verify the logic of their narrative independently of running it in the game. Yarn Spinner is an open source narrative design tool used in many games, including Night in the Woods (Infinite Fall / Finji) and OK KO: Let’s Play Heroes (Capybara Games / Cartoon Network), that allows both writers and narrative designers to write, edit, script and manage their game's dialog using a simple scripting language that's reminiscent of Twine. While most games devise their dialog in script form, it's typically implemented using another system, such as a spreadsheet, or node-based tools. By contrast, Yarn Spinner implements a domain-specific language designed to be easy for a non-programmer to write their dialogue in, and easy for a programmer to implement gameplay-specific behaviour. Compilers for most programming languages are designed to catch common mistakes, and give warnings where appropriate. In recent years, tools for static analysis of programs - a technique where a compiler analyses the behaviour of code without running it - have allowed programmers to detect subtle bugs that a simpler compiler could not. For example, it's possible to identify a combination of branches that lead to an uninitialised variable being returned from a function. Because Yarn Spinner is a complete programming language, we are able to apply the same techniques from compiler design to assist writers. For example, a compiler is able to analyse a branching narrative tree, take into account the variables that are checked to decide what options are available, and determine that a line of dialog can never be reached. These techniques allow for more reliable testing of dialogue. Testing a branching piece of dialogue often relies on the tester repeating a number of decisions in order to set up the necessary state, which can be repetitive and tedious. However, a static analyser is able to identify what the values of certain variables _must be_ in order for a line to be accessed, which allows the tester to jump straight to the lines under test, skipping large amounts of per-test setup time. This allows someone who’s trying to test out a conversation to do it in realistic conditions, skipping past the repetition while also guaranteeing that the state of the dialogue is the same as if they’d performed it manually. In this talk, I’ll discuss work on Yarn Spinner that implements symbolic execution and basic block analysis, which allows writers to easily spot problems in the implementation of their narrative, saving development and testing time, and avoiding wasted production resources. Come and learn how to get started with these techniques, and how to use them in Yarn Spinner, the open source narrative design tool!
markdown
Comment:
production notes
Rf filename:
root is .../show/dv/location/, example: 2013-03-13/13:13:30.dv
Sequence:
get this:
check and save to add this
Veyepar
Video Eyeball Processor and Review