├── .github ├── pull_request_template.md └── workflows │ └── release.yml ├── .gitignore ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── README.md ├── mkdocs.yml ├── pages ├── addingfunctionality │ ├── chapbook │ │ ├── chapbook_adding_functionality.md │ │ ├── chapbook_adding_functionality_example.html │ │ └── chapbook_adding_functionality_twee.txt │ ├── snowman │ │ ├── snowman_adding_functionality.md │ │ ├── snowman_adding_functionality_example.html │ │ └── snowman_adding_functionality_twee.txt │ └── sugarcube │ │ ├── sugarcube_adding_functionality.md │ │ ├── sugarcube_adding_functionality_example.html │ │ └── sugarcube_adding_functionality_twee.txt ├── arrays │ ├── chapbook │ │ ├── chapbook_arrays.md │ │ ├── chapbook_arrays_example.html │ │ └── chapbook_arrays_twee.txt │ ├── harlowe │ │ ├── harlowe_arrays.md │ │ ├── harlowe_arrays_example.html │ │ └── harlowe_arrays_twee.txt │ ├── snowman │ │ ├── snowman_arrays.md │ │ ├── snowman_arrays_example.html │ │ └── snowman_arrays_twee.txt │ └── sugarcube │ │ ├── sugarcube_arrays.md │ │ ├── sugarcube_arrays_example.html │ │ └── sugarcube_arrays_twee.txt ├── audio │ ├── chapbook │ │ ├── chapbook_audio.md │ │ ├── chapbook_audio_example.html │ │ ├── chapbook_audio_twee.txt │ │ ├── testpattern.ogg │ │ └── testpattern.wav │ ├── harlowe │ │ ├── harlowe_audio.md │ │ ├── harlowe_audio_example.html │ │ ├── harlowe_audio_twee.txt │ │ ├── testpattern.ogg │ │ └── testpattern.wav │ ├── snowman │ │ ├── snowman_audio.md │ │ ├── snowman_audio_example.html │ │ ├── snowman_audio_twee.txt │ │ ├── testpattern.ogg │ │ └── testpattern.wav │ └── sugarcube │ │ ├── sugarcube_audio.md │ │ ├── sugarcube_audio_example.html │ │ ├── sugarcube_audio_twee.txt │ │ ├── testpattern.ogg │ │ └── testpattern.wav ├── clamping_numbers │ ├── chapbook │ │ ├── chapbook_clamping_numbers.md │ │ ├── chapbook_clamping_numbers_example.html │ │ └── chapbook_clamping_numbers_twee.txt │ ├── harlowe │ │ ├── harlowe_clamping_numbers.md │ │ ├── harlowe_clamping_numbers_example.html │ │ └── harlowe_clamping_numbers_twee.txt │ ├── snowman │ │ ├── snowman_clamping_numbers.md │ │ ├── snowman_clamping_numbers_example.html │ │ └── snowman_clamping_numbers_twee.txt │ └── sugarcube │ │ ├── sugarcube_clamping_numbers.md │ │ ├── sugarcube_clamping_numbers_example.html │ │ └── sugarcube_clamping_numbers_twee.txt ├── conditionalstatements │ ├── chapbook │ │ ├── chapbook_conditionalstatements.md │ │ ├── chapbook_conditionalstatements_example.html │ │ └── chapbook_conditionalstatements_twee.txt │ ├── harlowe │ │ ├── harlowe_conditionalstatements.md │ │ ├── harlowe_conditionalstatements_example.html │ │ └── harlowe_conditionalstatements_twee.txt │ ├── snowman │ │ ├── snowman_conditionalstatements.md │ │ ├── snowman_conditionalstatements_example.html │ │ └── snowman_conditionalstatements_twee.txt │ └── sugarcube │ │ ├── sugarcube_conditionalstatements.md │ │ ├── sugarcube_conditionalstatements_example.html │ │ └── sugarcube_conditionalstatements_twee.txt ├── css │ ├── selectors.md │ └── storyformats │ │ ├── chapbook.md │ │ ├── harlowe.md │ │ ├── images │ │ ├── chapbook-css.png │ │ ├── chapbook-example.png │ │ ├── harlowe-link.png │ │ ├── harlowe-page.png │ │ ├── harlowe-passage.png │ │ └── harlowe-sidebar.png │ │ ├── snowman.md │ │ └── sugarcube.md ├── cssselectors │ ├── chapbook │ │ ├── chapbook_cssselectors.md │ │ ├── chapbook_cssselectors_example.html │ │ └── chapbook_cssselectors_twee.txt │ ├── harlowe │ │ ├── harlowe_cssselectors.md │ │ ├── harlowe_cssselectors_example.html │ │ └── harlowe_cssselectors_twee.txt │ ├── snowman │ │ ├── snowman_cssselectors.md │ │ ├── snowman_cssselectors_example.html │ │ └── snowman_cssselectors_twee.txt │ ├── snowman_2 │ │ ├── snowman_cssselectors.md │ │ ├── snowman_cssselectors_example.html │ │ └── snowman_cssselectors_twee.txt │ └── sugarcube │ │ ├── sugarcube_cssselectors.md │ │ ├── sugarcube_cssselectors_example.html │ │ └── sugarcube_cssselectors_twee.txt ├── cycling │ ├── chapbook │ │ ├── chapbook_cycling.md │ │ ├── chapbook_cycling_example.html │ │ └── chapbook_cycling_twee.txt │ ├── harlowe │ │ ├── harlowe_cycling.md │ │ ├── harlowe_cycling_example.html │ │ └── harlowe_cycling_twee.txt │ ├── harlowe_3 │ │ ├── harlowe_cycling.md │ │ ├── harlowe_cycling_example.html │ │ └── harlowe_cycling_twee.txt │ ├── snowman │ │ ├── snowman_cycling.md │ │ ├── snowman_cycling_example.html │ │ └── snowman_cycling_twee.txt │ └── sugarcube │ │ ├── sugarcube_cycling.md │ │ ├── sugarcube_cycling_example.html │ │ └── sugarcube_cycling_twee.txt ├── dateandtime │ ├── chapbook │ │ ├── chapbook_dateandtime.md │ │ ├── chapbook_dateandtime_example.html │ │ └── chapbook_dateandtime_twee.txt │ ├── harlowe │ │ ├── harlowe_dateandtime.md │ │ ├── harlowe_dateandtime_example.html │ │ └── harlowe_dateandtime_twee.txt │ ├── snowman │ │ ├── snowman_dateandtime.md │ │ ├── snowman_dateandtime_example.html │ │ └── snowman_dateandtime_twee.txt │ └── sugarcube │ │ ├── sugarcube_dateandtime.md │ │ ├── sugarcube_dateandtime_example.html │ │ └── sugarcube_dateandtime_twee.txt ├── delayedtext │ ├── chapbook │ │ ├── chapbook_delayedtext.md │ │ ├── chapbook_delayedtext_example.html │ │ └── chapbook_delayedtext_twee.txt │ ├── harlowe │ │ ├── harlowe_delayedtext.md │ │ ├── harlowe_delayedtext_example.html │ │ └── harlowe_delayedtext_twee.txt │ ├── snowman │ │ ├── snowman_delayedtext.md │ │ ├── snowman_delayedtext_example.html │ │ └── snowman_delayedtext_twee.txt │ └── sugarcube │ │ ├── sugarcube_delayedtext.md │ │ ├── sugarcube_delayedtext_example.html │ │ └── sugarcube_delayedtext_twee.txt ├── deletingvariables │ ├── chapbook │ │ ├── chapbook_deletingvariables.md │ │ ├── chapbook_deletingvariables_example.html │ │ └── chapbook_deletingvariables_twee.txt │ ├── snowman │ │ ├── snowman_deletingvariables.md │ │ ├── snowman_deletingvariables_example.html │ │ └── snowman_deletingvariables_twee.txt │ └── sugarcube │ │ ├── sugarcube_deletingvariables.md │ │ ├── sugarcube_deletingvariables_example.html │ │ └── sugarcube_deletingvariables_twee.txt ├── dicerolling │ ├── chapbook │ │ ├── chapbook_dicerolling.md │ │ ├── chapbook_dicerolling_example.html │ │ └── chapbook_dicerolling_twee.txt │ ├── harlowe │ │ ├── harlowe_dicerolling.md │ │ ├── harlowe_dicerolling_example.html │ │ └── harlowe_dicerolling_twee.txt │ ├── snowman │ │ ├── snowman_dicerolling.md │ │ ├── snowman_dicerolling_example.html │ │ └── snowman_dicerolling_twee.txt │ └── sugarcube │ │ ├── sugarcube_dicerolling.md │ │ ├── sugarcube_dicerolling_example.html │ │ └── sugarcube_dicerolling_twee.txt ├── dropdown │ ├── chapbook │ │ ├── chapbook_dropdown.md │ │ ├── chapbook_dropdown_example.html │ │ └── chapbook_dropdown_twee.txt │ └── harlowe │ │ ├── harlowe_dropdown.md │ │ ├── harlowe_dropdown_example.html │ │ └── harlowe_dropdown_twee.txt ├── dungeonmoving │ ├── harlowe │ │ ├── harlowe_dungeonmoving.md │ │ ├── harlowe_dungeonmoving_example.html │ │ └── harlowe_dungeonmoving_twee.txt │ ├── snowman │ │ ├── snowman_dungeonmoving.md │ │ ├── snowman_dungeonmoving_example.html │ │ └── snowman_dungeonmoving_twee.txt │ ├── sugarcane │ │ ├── sugarcane_dungeonmoving.md │ │ ├── sugarcane_dungeonmoving_example.html │ │ └── sugarcane_dungeonmoving_twee.txt │ └── sugarcube │ │ ├── sugarcube_dungeonmoving.md │ │ ├── sugarcube_dungeonmoving_example.html │ │ └── sugarcube_dungeonmoving_twee.txt ├── fairmath │ ├── chapbook │ │ ├── chapbook_fairmath.md │ │ ├── chapbook_fairmath_example.html │ │ └── chapbook_fairmath_twee.txt │ ├── harlowe │ │ ├── harlowe_fairmath.md │ │ ├── harlowe_fairmath_example.html │ │ └── harlowe_fairmath_twee.txt │ ├── snowman │ │ ├── snowman_fairmath.md │ │ ├── snowman_fairmath_example.html │ │ └── snowman_fairmath_twee.txt │ └── sugarcube │ │ ├── sugarcube_fairmath.md │ │ ├── sugarcube_fairmath_example.html │ │ └── sugarcube_fairmath_twee.txt ├── formatting.md ├── geolocation │ ├── chapbook │ │ ├── chapbook_geolocation.md │ │ ├── chapbook_geolocation_example.html │ │ └── chapbook_geolocation_twee.txt │ ├── harlowe │ │ ├── harlowe_geolocation.md │ │ ├── harlowe_geolocation_example.html │ │ └── harlowe_geolocation_twee.txt │ ├── snowman │ │ ├── snowman_geolocation.md │ │ ├── snowman_geolocation_example.html │ │ └── snowman_geolocation_twee.txt │ └── sugarcube │ │ ├── sugarcube_geolocation.md │ │ ├── sugarcube_geolocation_example.html │ │ └── sugarcube_geolocation_twee.txt ├── googlefonts │ ├── chapbook │ │ ├── chapbook_googlefonts.md │ │ ├── chapbook_googlefonts_example.html │ │ └── chapbook_googlefonts_twee.txt │ ├── harlowe │ │ ├── harlowe_googlefonts.md │ │ ├── harlowe_googlefonts_example.html │ │ └── harlowe_googlefonts_twee.txt │ ├── snowman │ │ ├── snowman_googlefonts.md │ │ ├── snowman_googlefonts_example.html │ │ └── snowman_googlefonts_twee.txt │ ├── sugarcane │ │ ├── sugarcane_googlefonts.md │ │ ├── sugarcane_googlefonts_example.html │ │ └── sugarcane_googlefonts_twee.txt │ └── sugarcube │ │ ├── sugarcube_googlefonts.md │ │ ├── sugarcube_googlefonts_example.html │ │ └── sugarcube_googlefonts_twee.txt ├── headersandfooters │ ├── chapbook │ │ ├── chapbook_headersandfooters.md │ │ ├── chapbook_headersandfooters_example.html │ │ └── chapbook_headersandfooters_twee.txt │ ├── harlowe │ │ ├── harlowe_headersandfooters.md │ │ ├── harlowe_headersandfooters_example.html │ │ └── harlowe_headersandfooters_twee.txt │ ├── snowman │ │ ├── snowman_headersandfooters.md │ │ ├── snowman_headersandfooters_example.html │ │ └── snowman_headersandfooters_twee.txt │ └── sugarcube │ │ ├── sugarcube_headersandfooters.md │ │ ├── sugarcube_headersandfooters_example.html │ │ └── sugarcube_headersandfooters_twee.txt ├── hiddenlink │ ├── harlowe │ │ ├── harlowe_hiddenlink.md │ │ ├── harlowe_hiddenlink_example.html │ │ └── harlowe_hiddenlink_twee.txt │ ├── snowman │ │ ├── snowman_hiddenlink.md │ │ ├── snowman_hiddenlink_example.html │ │ └── snowman_hiddenlink_twee.txt │ └── sugarcube │ │ ├── sugarcube_hiddenlink.md │ │ ├── sugarcube_hiddenlink_example.html │ │ └── sugarcube_hiddenlink_twee.txt ├── html │ ├── reviewing.md │ └── storyformats │ │ ├── chapbook.md │ │ ├── harlowe.md │ │ ├── snowman.md │ │ └── sugarcube.md ├── images │ ├── chapbook │ │ ├── chapbook_images.md │ │ ├── chapbook_images_example.html │ │ └── chapbook_images_twee.txt │ ├── harlowe │ │ ├── harlowe_images.md │ │ ├── harlowe_images_example.html │ │ └── harlowe_images_twee.txt │ ├── snowman │ │ ├── snowman_images.md │ │ ├── snowman_images_example.html │ │ └── snowman_images_twee.txt │ └── sugarcube │ │ ├── sugarcube_images.md │ │ ├── sugarcube_images_example.html │ │ └── sugarcube_images_twee.txt ├── importexternaljs │ ├── chapbook │ │ ├── chapbook_importexternaljs.md │ │ ├── chapbook_importexternaljs_example.html │ │ └── chapbook_importexternaljs_twee.txt │ ├── harlowe │ │ ├── harlowe_importexternaljs.md │ │ ├── harlowe_importexternaljs_example.html │ │ └── harlowe_importexternaljs_twee.txt │ ├── snowman │ │ ├── snowman_importexternaljs.md │ │ ├── snowman_importexternaljs_example.html │ │ └── snowman_importexternaljs_twee.txt │ └── sugarcube │ │ ├── sugarcube_importexternaljs.md │ │ ├── sugarcube_importexternaljs_example.html │ │ └── sugarcube_importexternaljs_twee.txt ├── index.md ├── introduction │ ├── images │ │ ├── AddAFormat.png │ │ ├── AddPassage.png │ │ ├── Archive.png │ │ ├── CurrentStoryFormats.png │ │ ├── DebugHarlowe.png │ │ ├── DebugSnowman.png │ │ ├── DebugSugarCube.png │ │ ├── FindAndReplace.png │ │ ├── FindAndReplace_Button.png │ │ ├── Formats.png │ │ ├── Help.png │ │ ├── ImportFromFile.png │ │ ├── Language.png │ │ ├── LanguageChoice.png │ │ ├── OpenStoryMenu.png │ │ ├── PassageTitles.png │ │ ├── PassageView.png │ │ ├── PlayStory.png │ │ ├── PlusStory.png │ │ ├── ProofCopy.png │ │ ├── ProofingFormats.png │ │ ├── QuickFind.png │ │ ├── RemainingSpace.png │ │ ├── Rename.png │ │ ├── ReturnStoryList.png │ │ ├── SidebarMenu.png │ │ ├── StoryFormats.png │ │ ├── StoryJavaScript.png │ │ ├── StoryList.png │ │ ├── StoryMenu.png │ │ ├── StoryStatistics.png │ │ ├── StoryStructure.png │ │ ├── StoryStylesheet.png │ │ ├── TestStory.png │ │ ├── Theme.png │ │ ├── TitlesAndExcerpts.png │ │ ├── VersionAndBug.png │ │ ├── introduction-color-spacing.png │ │ ├── introduction-passage-title.png │ │ └── introduction-tag-colors.png │ ├── passages.md │ ├── story_formats.md │ ├── twine2_passages_view.md │ └── twine2_story_listing.md ├── js │ ├── reviewing.md │ └── storyformats │ │ ├── chapbook.md │ │ ├── harlowe.md │ │ ├── snowman.md │ │ └── sugarcube.md ├── keyboard │ ├── chapbook │ │ ├── chapbook_keyboard.md │ │ ├── chapbook_keyboard_example.html │ │ └── chapbook_keyboard_twee.txt │ ├── harlowe │ │ ├── harlowe_keyboard.md │ │ ├── harlowe_keyboard_example.html │ │ └── harlowe_keyboard_twee.txt │ ├── snowman │ │ ├── snowman_keyboard.md │ │ ├── snowman_keyboard_example.html │ │ └── snowman_keyboard_twee.txt │ └── sugarcube │ │ ├── sugarcube_keyboard.md │ │ ├── sugarcube_keyboard_example.html │ │ └── sugarcube_keyboard_twee.txt ├── loadscreen │ └── sugarcube │ │ ├── sugarcube_loadscreen.md │ │ ├── sugarcube_loadscreen_example.html │ │ └── sugarcube_loadscreen_twee.txt ├── lockandkey_variable │ ├── chapbook │ │ ├── chapbook_lockandkey_variable.md │ │ ├── chapbook_lockandkey_variable_example.html │ │ └── chapbook_lockandkey_variable_twee.txt │ ├── harlowe │ │ ├── harlowe_lockandkey_variable.md │ │ ├── harlowe_lockandkey_variable_example.html │ │ └── harlowe_lockandkey_variable_twee.txt │ ├── snowman │ │ ├── snowman_lockandkey_variable.md │ │ ├── snowman_lockandkey_variable_example.html │ │ └── snowman_lockandkey_variable_twee.txt │ └── sugarcube │ │ ├── sugarcube_lockandkey_variable.md │ │ ├── sugarcube_lockandkey_variable_example.html │ │ └── sugarcube_lockandkey_variable_twee.txt ├── looping │ ├── chapbook │ │ ├── chapbook_looping.md │ │ ├── chapbook_looping_example.html │ │ └── chapbook_looping_twee.txt │ ├── harlowe │ │ ├── harlowe_looping.md │ │ ├── harlowe_looping_example.html │ │ └── harlowe_looping_twee.txt │ ├── snowman │ │ ├── snowman_looping.md │ │ ├── snowman_looping_example.html │ │ └── snowman_looping_twee.txt │ └── sugarcube │ │ ├── sugarcube_looping.md │ │ ├── sugarcube_looping_example.html │ │ └── sugarcube_looping_twee.txt ├── markup │ ├── chapbook │ │ ├── chapbook_markup.md │ │ ├── chapbook_markup_example.html │ │ └── chapbook_markup_twee.txt │ ├── harlowe │ │ ├── harlowe_markup.md │ │ ├── harlowe_markup_example.html │ │ └── harlowe_markup_twee.txt │ ├── snowman │ │ ├── snowman_markup.md │ │ ├── snowman_markup_example.html │ │ └── snowman_markup_twee.txt │ ├── sugarcane │ │ ├── sugarcane_markup.md │ │ ├── sugarcane_markup_example.html │ │ └── sugarcane_markup_twee.txt │ └── sugarcube │ │ ├── sugarcube_markup.md │ │ ├── sugarcube_markup_example.html │ │ └── sugarcube_markup_twee.txt ├── modal │ ├── harlowe │ │ ├── harlowe_modal.md │ │ ├── harlowe_modal_example.html │ │ └── harlowe_modal_twee.txt │ ├── snowman │ │ ├── snowman_modal.md │ │ ├── snowman_modal_example.html │ │ └── snowman_modal_twee.txt │ └── sugarcube │ │ ├── sugarcube_modal.md │ │ ├── sugarcube_modal_example.html │ │ └── sugarcube_modal_twee.txt ├── modularity │ ├── harlowe │ │ ├── harlowe_modularity.md │ │ ├── harlowe_modularity_example.html │ │ └── harlowe_modularity_twee.txt │ ├── snowman │ │ ├── snowman_modularity.md │ │ ├── snowman_modularity_example.html │ │ └── snowman_modularity_twee.txt │ └── sugarcube │ │ ├── sugarcube_modularity.md │ │ ├── sugarcube_modularity_example.html │ │ └── sugarcube_modularity_twee.txt ├── passageevents │ ├── snowman │ │ ├── snowman_passage_events.md │ │ ├── snowman_passage_events_example.html │ │ └── snowman_passage_events_twee.txt │ ├── snowman_2 │ │ ├── snowman_passage_events.md │ │ ├── snowman_passage_events_example.html │ │ └── snowman_passage_events_twee.txt │ └── sugarcube │ │ ├── sugarcube_passage_events.md │ │ ├── sugarcube_passage_events_example.html │ │ └── sugarcube_passage_events_twee.txt ├── passagesinpassages │ ├── chapbook │ │ ├── chapbook_passagesinpassages.md │ │ ├── chapbook_passagesinpassages_example.html │ │ └── chapbook_passagesinpassages_twee.txt │ ├── harlowe │ │ ├── harlowe_passagesinpassages.md │ │ ├── harlowe_passagesinpassages_example.html │ │ └── harlowe_passagesinpassages_twee.txt │ ├── snowman │ │ ├── snowman_passagesinpassages.md │ │ ├── snowman_passagesinpassages_example.html │ │ └── snowman_passagesinpassages_twee.txt │ └── sugarcube │ │ ├── sugarcube_passagesinpassages.md │ │ ├── sugarcube_passagesinpassages_example.html │ │ └── sugarcube_passagesinpassages_twee.txt ├── passagetags │ ├── chapbook │ │ ├── chapbook_passagetags.md │ │ ├── chapbook_passagetags_example.html │ │ └── chapbook_passagetags_twee.txt │ ├── harlowe │ │ ├── harlowe_passagetags.md │ │ ├── harlowe_passagetags_example.html │ │ └── harlowe_passagetags_twee.txt │ ├── snowman │ │ ├── snowman_passagetags.md │ │ ├── snowman_passagetags_example.html │ │ └── snowman_passagetags_twee.txt │ ├── sugarcane │ │ ├── sugarcane_passagetags.md │ │ ├── sugarcane_passagetags_example.html │ │ └── sugarcane_passagetags_twee.txt │ └── sugarcube │ │ ├── sugarcube_passagetags.md │ │ ├── sugarcube_passagetags_example.html │ │ └── sugarcube_passagetags_twee.txt ├── passagetoelement │ ├── snowman │ │ ├── snowman_passagetoelement.md │ │ ├── snowman_passagetoelement_example.html │ │ └── snowman_passagetoelement_twee.txt │ └── sugarcube │ │ ├── sugarcube_passagetoelement.md │ │ ├── sugarcube_passagetoelement_example.html │ │ └── sugarcube_passagetoelement_twee.txt ├── passagetransitions │ ├── harlowe │ │ ├── harlowe_passagetransitions.md │ │ ├── harlowe_passagetransitions_example.html │ │ └── harlowe_passagetransitions_twee.txt │ ├── snowman │ │ ├── snowman_passagetransitions.md │ │ ├── snowman_passagetransitions_example.html │ │ └── snowman_passagetransitions_twee.txt │ ├── snowman_2 │ │ ├── snowman_2_passagetransitions.md │ │ ├── snowman_2_passagetransitions_example.html │ │ └── snowman_2_passagetransitions_twee.txt │ └── sugarcube │ │ ├── sugarcube_passagetransitions.md │ │ ├── sugarcube_passagetransitions_example.html │ │ └── sugarcube_passagetransitions_twee.txt ├── passagevisits │ ├── chapbook │ │ ├── chapbook_passagevisits.md │ │ ├── chapbook_passagevisits_example.html │ │ └── chapbook_passagevisits_twee.txt │ ├── harlowe │ │ ├── harlowe_passagevisits.md │ │ ├── harlowe_passagevisits_example.html │ │ └── harlowe_passagevisits_twee.txt │ ├── harlowe_3.1 │ │ ├── harlowe_passagevisits.md │ │ ├── harlowe_passagevisits_example.html │ │ └── harlowe_passagevisits_twee.txt │ ├── snowman │ │ ├── snowman_passagevisits.md │ │ ├── snowman_passagevisits_example.html │ │ └── snowman_passagevisits_twee.txt │ └── sugarcube │ │ ├── sugarcube_passagevisits.md │ │ ├── sugarcube_passagevisits_example.html │ │ └── sugarcube_passagevisits_twee.txt ├── playerstatistics │ ├── chapbook │ │ ├── chapbook_player_statistics.md │ │ ├── chapbook_player_statistics_example.html │ │ └── chapbook_player_statistics_twee.txt │ ├── harlowe │ │ ├── harlowe_player_statistics.md │ │ ├── harlowe_player_statistics_example.html │ │ └── harlowe_player_statistics_twee.txt │ ├── snowman │ │ ├── snowman_player_statistics.md │ │ ├── snowman_player_statistics_example.html │ │ └── snowman_player_statistics_twee.txt │ └── sugarcube │ │ ├── sugarcube_player_statistics.md │ │ ├── sugarcube_player_statistics_example.html │ │ └── sugarcube_player_statistics_twee.txt ├── programmaticundo │ ├── harlowe │ │ ├── harlowe_programmaticundo.md │ │ ├── harlowe_programmaticundo_example.html │ │ └── harlowe_programmaticundo_twee.txt │ ├── snowman │ │ ├── snowman_programmaticundo.md │ │ ├── snowman_programmaticundo_example.html │ │ └── snowman_programmaticundo_twee.txt │ └── sugarcube │ │ ├── sugarcube_programmaticundo.md │ │ ├── sugarcube_programmaticundo_example.html │ │ └── sugarcube_programmaticundo_twee.txt ├── questions │ ├── getting_started.md │ ├── links.md │ ├── making.md │ ├── need_to_know.md │ ├── stories_saved.md │ └── style_text.md ├── releasenotes │ ├── twine1 │ │ ├── 1.4.1.md │ │ ├── 1.4.2.md │ │ ├── 1.4.3.md │ │ └── 1.4.md │ └── twine2 │ │ ├── 2.0.1.md │ │ ├── 2.0.10.md │ │ ├── 2.0.11.md │ │ ├── 2.0.2.md │ │ ├── 2.0.3.md │ │ ├── 2.0.4.md │ │ ├── 2.0.5.md │ │ ├── 2.0.6.md │ │ ├── 2.0.7.md │ │ ├── 2.0.8.md │ │ ├── 2.0.9.md │ │ ├── 2.1.0.md │ │ ├── 2.1.1.md │ │ ├── 2.1.2.md │ │ ├── 2.1.3.md │ │ ├── 2.2.0.md │ │ ├── 2.2.1.md │ │ ├── 2.3.0.md │ │ ├── 2.3.1.md │ │ ├── 2.3.10.md │ │ ├── 2.3.11.md │ │ ├── 2.3.12.md │ │ ├── 2.3.13.md │ │ ├── 2.3.14.md │ │ ├── 2.3.15.md │ │ ├── 2.3.16.md │ │ ├── 2.3.2.md │ │ ├── 2.3.3.md │ │ ├── 2.3.4.md │ │ ├── 2.3.5.md │ │ ├── 2.3.6.md │ │ ├── 2.3.7.md │ │ ├── 2.3.8.md │ │ ├── 2.3.9.md │ │ ├── 2.4.0.md │ │ ├── 2.4.1.md │ │ ├── 2.5.0.md │ │ ├── 2.5.1.md │ │ ├── 2.6.0.md │ │ ├── 2.6.1.md │ │ └── 2.6.2.md ├── savinggames │ ├── harlowe │ │ ├── harlowe_savinggames.md │ │ ├── harlowe_savinggames_example.html │ │ └── harlowe_savinggames_twee.txt │ ├── snowman │ │ ├── snowman_savinggames.md │ │ ├── snowman_savinggames_example.html │ │ └── snowman_savinggames_twee.txt │ └── sugarcube │ │ ├── sugarcube_savinggames.md │ │ ├── sugarcube_savinggames_example.html │ │ └── sugarcube_savinggames_twee.txt ├── settingandshowing │ ├── chapbook │ │ ├── chapbook_settingandshowing.md │ │ ├── chapbook_settingandshowing_example.html │ │ └── chapbook_settingandshowing_twee.txt │ ├── harlowe │ │ ├── harlowe_settingandshowing.md │ │ ├── harlowe_settingandshowing_example.html │ │ └── harlowe_settingandshowing_twee.txt │ ├── snowman │ │ ├── snowman_settingandshowing.md │ │ ├── snowman_settingandshowing_example.html │ │ └── snowman_settingandshowing_twee.txt │ └── sugarcube │ │ ├── sugarcube_settingandshowing.md │ │ ├── sugarcube_settingandshowing_example.html │ │ └── sugarcube_settingandshowing_twee.txt ├── sidebar_left │ ├── harlowe │ │ ├── harlowe_sidebar_left.md │ │ ├── harlowe_sidebar_left_example.html │ │ └── harlowe_sidebar_left_twee.txt │ ├── harlowe_2 │ │ ├── harlowe_sidebar_left.md │ │ ├── harlowe_sidebar_left_example.html │ │ └── harlowe_sidebar_left_twee.txt │ ├── snowman │ │ ├── snowman_sidebar_left.md │ │ ├── snowman_sidebar_left_example.html │ │ └── snowman_sidebar_left_twee.txt │ └── sugarcube │ │ ├── sugarcube_sidebar_left.md │ │ ├── sugarcube_sidebar_left_example.html │ │ └── sugarcube_sidebar_left_twee.txt ├── spaceexploration │ ├── chapbook │ │ ├── chapbook_space_exploration.md │ │ ├── chapbook_space_exploration_example.html │ │ └── chapbook_space_exploration_twee.txt │ ├── harlowe │ │ ├── harlowe_space_exploration.md │ │ ├── harlowe_space_exploration_example.html │ │ └── harlowe_space_exploration_twee.txt │ ├── snowman │ │ ├── snowman_space_exploration.md │ │ ├── snowman_space_exploration_example.html │ │ └── snowman_space_exploration_twee.txt │ └── sugarcube │ │ ├── sugarcube_space_exploration.md │ │ ├── sugarcube_space_exploration_example.html │ │ └── sugarcube_space_exploration_twee.txt ├── starting │ └── twine2 │ │ ├── adding_to_IFDB.md │ │ ├── creatinglinks.md │ │ ├── firststory.md │ │ ├── images │ │ ├── starting-debug-passage.png │ │ ├── starting-default-text.png │ │ ├── starting-itchio-account.jpg │ │ ├── starting-itchio-browser.jpg │ │ ├── starting-itchio-create.jpg │ │ ├── starting-itchio-devlog.jpg │ │ ├── starting-itchio-embed.jpg │ │ ├── starting-itchio-engine.jpg │ │ ├── starting-itchio-frame.jpg │ │ ├── starting-itchio-project-type.jpg │ │ ├── starting-itchio-upload.jpg │ │ ├── starting-itchio-zip.jpg │ │ ├── starting-linked.png │ │ ├── starting-new-format.png │ │ ├── starting-paperthin.png │ │ ├── starting-passage-editing.png │ │ ├── starting-passage-link.png │ │ ├── starting-passage-view.png │ │ ├── starting-play-example.png │ │ ├── starting-play-link.png │ │ ├── starting-proofing.png │ │ ├── starting-second-passage.png │ │ ├── starting-start-passage.png │ │ ├── starting-story-list.png │ │ ├── starting-testing-passages.png │ │ ├── starting-testing.png │ │ └── starting-title.png │ │ ├── publishing_on_borogoveio.md │ │ ├── publishing_on_itchio.md │ │ ├── review.md │ │ └── storyformat.md ├── statichealthbars │ ├── chapbook │ │ ├── chapbook_statichealthbars.md │ │ ├── chapbook_statichealthbars_example.html │ │ └── chapbook_statichealthbars_twee.txt │ ├── harlowe │ │ ├── harlowe_statichealthbars.md │ │ ├── harlowe_statichealthbars_example.html │ │ └── harlowe_statichealthbars_twee.txt │ ├── snowman │ │ ├── snowman_statichealthbars.md │ │ ├── snowman_statichealthbars_example.html │ │ └── snowman_statichealthbars_twee.txt │ └── sugarcube │ │ ├── sugarcube_statichealthbars.md │ │ ├── sugarcube_statichealthbars_example.html │ │ └── sugarcube_statichealthbars_twee.txt ├── storyandpassage │ ├── chapbook │ │ ├── chapbook_storyandpassage.md │ │ ├── chapbook_storyandpassage_example.html │ │ └── chapbook_storyandpassage_twee.txt │ ├── snowman │ │ ├── snowman_storyandpassage.md │ │ ├── snowman_storyandpassage_example.html │ │ └── snowman_storyandpassage_twee.txt │ └── sugarcube │ │ ├── sugarcube_storyandpassage.md │ │ ├── sugarcube_storyandpassage_example.html │ │ └── sugarcube_storyandpassage_twee.txt ├── storylets │ └── harlowe │ │ ├── harlowe_storylets.md │ │ ├── harlowe_storylets_example.html │ │ └── harlowe_storylets_twee.txt ├── storystyling │ ├── chapbook │ │ ├── chapbook_storystyling.md │ │ ├── chapbook_storystyling_example.html │ │ └── chapbook_storystyling_twee.txt │ ├── harlowe │ │ ├── harlowe_storystyling.md │ │ ├── harlowe_storystyling_example.html │ │ └── harlowe_storystyling_twee.txt │ ├── snowman │ │ ├── snowman_storystyling.md │ │ ├── snowman_storystyling_example.html │ │ └── snowman_storystyling_twee.txt │ └── sugarcube │ │ ├── sugarcube_storystyling.md │ │ ├── sugarcube_storystyling_example.html │ │ └── sugarcube_storystyling_twee.txt ├── style_guide.md ├── stylesheets │ ├── logo.svg │ └── overrides.css ├── template_type │ └── sugarcube │ │ ├── sugarcube_templates.md │ │ ├── sugarcube_templates_example.html │ │ └── sugarcube_templates_twee.txt ├── terms │ ├── terms_cookbook.md │ ├── terms_css.md │ ├── terms_html.md │ ├── terms_javascript.md │ ├── terms_macros.md │ ├── terms_markdown_and_markup.md │ ├── terms_passages.md │ ├── terms_stories.md │ ├── terms_storyformats.md │ ├── terms_twee.md │ ├── terms_twine.md │ └── terms_variables.md ├── timedpassages │ ├── chapbook │ │ ├── chapbook_timedpassages.md │ │ ├── chapbook_timedpassages_example.html │ │ └── chapbook_timedpassages_twee.txt │ ├── harlowe │ │ ├── harlowe_timedpassages.md │ │ ├── harlowe_timedpassages_example.html │ │ └── harlowe_timedpassages_twee.txt │ ├── snowman │ │ ├── snowman_timedpassages.md │ │ ├── snowman_timedpassages_example.html │ │ └── snowman_timedpassages_twee.txt │ └── sugarcube │ │ ├── sugarcube_timedpassages.md │ │ ├── sugarcube_timedpassages_example.html │ │ └── sugarcube_timedpassages_twee.txt ├── timedprogressbars │ ├── snowman │ │ ├── snowman_timed_progress_bars.md │ │ ├── snowman_timed_progress_bars_example.html │ │ └── snowman_timed_progress_bars_twee.txt │ └── sugarcube │ │ ├── sugarcube_timed_progress_bars.md │ │ ├── sugarcube_timed_progress_bars_example.html │ │ └── sugarcube_timed_progress_bars_twee.txt ├── turncounter │ ├── chapbook │ │ ├── chapbook_turncounter.md │ │ ├── chapbook_turncounter_example.html │ │ └── chapbook_turncounter_twee.txt │ ├── harlowe │ │ ├── harlowe_turncounter.md │ │ ├── harlowe_turncounter_example.html │ │ └── harlowe_turncounter_twee.txt │ ├── snowman │ │ ├── snowman_turncounter.md │ │ ├── snowman_turncounter_example.html │ │ └── snowman_turncounter_twee.txt │ └── sugarcube │ │ ├── sugarcube_turncounter.md │ │ ├── sugarcube_turncounter_example.html │ │ └── sugarcube_turncounter_twee.txt ├── twine-cookbook-print.epub ├── twine1 │ ├── editor │ │ ├── browser_support.md │ │ ├── choosing_between_twine_and_twee.md │ │ ├── code.md │ │ ├── css.md │ │ ├── editing_passages.md │ │ ├── expressions.md │ │ ├── functions.md │ │ ├── general_questions.md │ │ ├── images.md │ │ ├── installing.md │ │ ├── proofing.md │ │ ├── replacing_text.md │ │ ├── story_files.md │ │ ├── story_map.md │ │ └── writing_macros.md │ ├── functions │ │ ├── alert.md │ │ ├── confirm.md │ │ ├── either.md │ │ ├── open.md │ │ ├── parameter.md │ │ ├── passage.md │ │ ├── previous.md │ │ ├── prompt.md │ │ ├── random.md │ │ ├── rot13.md │ │ ├── tags.md │ │ ├── turns.md │ │ ├── visited.md │ │ └── visitedtag.md │ ├── macros │ │ ├── back.md │ │ ├── button.md │ │ ├── checkbox.md │ │ ├── choice.md │ │ ├── display.md │ │ ├── else.md │ │ ├── endif.md │ │ ├── endsilently.md │ │ ├── forget.md │ │ ├── if.md │ │ ├── nobr.md │ │ ├── print.md │ │ ├── radio.md │ │ ├── remember.md │ │ ├── return.md │ │ ├── set.md │ │ ├── silently.md │ │ └── textinput.md │ ├── storyformats │ │ ├── jonah │ │ │ ├── index.md │ │ │ └── questions.md │ │ └── sugarcane │ │ │ ├── index.md │ │ │ └── questions.md │ └── terms │ │ ├── formatting.md │ │ ├── links.md │ │ ├── passages.md │ │ ├── scripts.md │ │ ├── specialpassages.md │ │ ├── storyformats.md │ │ └── tags.md ├── typewriter │ ├── chapbook │ │ ├── chapbook_typewriter.md │ │ ├── chapbook_typewriter_example.html │ │ └── chapbook_typewriter_twee.txt │ ├── harlowe │ │ ├── harlowe_typewriter.md │ │ ├── harlowe_typewriter_example.html │ │ └── harlowe_typewriter_twee.txt │ ├── snowman │ │ ├── snowman_typewriter.md │ │ ├── snowman_typewriter_example.html │ │ └── snowman_typewriter_twee.txt │ └── sugarcube │ │ ├── sugarcube_typewriter.md │ │ ├── sugarcube_typewriter_example.html │ │ └── sugarcube_typewriter_twee.txt ├── using_cookbook.md └── usingaddons │ └── sugarcube │ ├── sugarcube_usingaddons.md │ ├── sugarcube_usingaddons_example.html │ └── sugarcube_usingaddons_twee.txt └── requirements.txt /.github/pull_request_template.md: -------------------------------------------------------------------------------- 1 | **Issue:** 2 | 3 | Fixes # . (Please reference the related issue here. If there is no related issue, please open one. If the PR does not close the referenced issue, please remove "Fixes.") 4 | 5 | **Description:** 6 | 7 | Please briefly describe the changes this PR makes. 8 | 9 | **Credit:** 10 | 11 | If you are not already credited in the cookbook, you can describe how you wish to be credited. You may provide a name or username and a website to link to. -------------------------------------------------------------------------------- /.github/workflows/release.yml: -------------------------------------------------------------------------------- 1 | name: Release to twinery.org 2 | 3 | on: 4 | push: 5 | branches: 6 | - 'main' 7 | - 'master' 8 | 9 | jobs: 10 | release: 11 | runs-on: ubuntu-latest 12 | steps: 13 | - uses: actions/checkout@v2 14 | - uses: actions/setup-python@v2 15 | with: 16 | python-version: '3.x' 17 | - name: Install dependencies 18 | run: | 19 | python -m pip install --upgrade pip 20 | pip install -r requirements.txt 21 | - name: Build HTML 22 | run: mkdocs build 23 | - name: Upload to twinery.org 24 | run: | 25 | mkdir ~/.ssh 26 | echo "$RSYNC_PRIVATE_KEY" > ~/.ssh/id_rsa 27 | chmod 600 ~/.ssh/id_rsa 28 | ssh-keyscan -H twinery.org > ~/.ssh/known_hosts 29 | rsync --chmod=775 --delete --omit-dir-times --recursive --verbose docs/* githubactions@twinery.org:/var/www/html/cookbook 30 | env: 31 | RSYNC_PRIVATE_KEY: ${{ secrets.RSYNC_PRIVATE_KEY }} 32 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | .DS_Store? 3 | *.DS_Store 4 | Thumbs.db 5 | /_book 6 | /.vscode 7 | docs -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 | ## Contributions 2 | 3 | The cookbook welcomes and encourages contributions from anyone. These can be suggestions, new recipes, updates, or corrections. Please follow the process outlined below when making a contribution. 4 | 5 | ### 1. Open an Issue 6 | 7 | Before doing anything else, please open an issue detailing the proposed changes. This is to prevent multiple people from working independently on the same changes, and also allows for comments and feedback on proposed changes before any significant work is done. 8 | 9 | ### 2. Create a Pull Request 10 | 11 | **Note:** Please use the pull request template! 12 | 13 | All pull requests should refer to an issue, and only one issue. Please note in your pull request how you would like to be credited in the cookbook, providing a name or handle and (optionally) a link to a website. If not otherwise provided, the GitHub username and profile page for the person opening the PR will be credited. 14 | 15 | ### 3. Approval or Rejection of Changes 16 | 17 | Pull requests must receive approval at least two of the cookbook's editors. Once a PR has been approved, it can be merged by any editor. Likewise, if a PR is rejected by at least two editors, it can be closed. -------------------------------------------------------------------------------- /pages/addingfunctionality/chapbook/chapbook_adding_functionality.md: -------------------------------------------------------------------------------- 1 | # "Adding Functionality": Chapbook (v1.0.0) 2 | 3 | ## Summary 4 | 5 | Chapbook allows for creation of [custom inserts and modifiers](https://klembot.github.io/chapbook/guide/advanced/adding-custom-inserts.html). 6 | 7 | The example below adds an insert that displays a 😀 emoji. 8 | 9 | ## Example 10 | 11 | [Download Example](chapbook_adding_functionality_example.html){: target="_top" download="chapbook_adding_functionality_example.html"} 12 | 13 | ## Twee Code 14 | 15 | ```twee 16 | :: StoryTitle 17 | Adding Functionality 18 | 19 | :: UserScript[script] 20 | engine.extend('1.0.0', () => { 21 | config.template.inserts = [{ 22 | match: /^smiley face$/i, 23 | render: () => '😀' 24 | }, ...config.template.inserts]; 25 | }); 26 | 27 | :: Start 28 | Hello there {smiley face} 29 | 30 | ``` 31 | 32 | [Download Twee Code](chapbook_adding_functionality_twee.txt){ target="_top" download="chapbook_adding_functionality_twee.txt"} 33 | -------------------------------------------------------------------------------- /pages/addingfunctionality/chapbook/chapbook_adding_functionality_twee.txt: -------------------------------------------------------------------------------- 1 | :: StoryTitle 2 | Adding Functionality 3 | 4 | :: UserScript[script] 5 | engine.extend('1.0.0', () => { 6 | config.template.inserts = [{ 7 | match: /^smiley face$/i, 8 | render: () => '😀' 9 | }, ...config.template.inserts]; 10 | }); 11 | 12 | :: Start 13 | Hello there {smiley face} 14 | -------------------------------------------------------------------------------- /pages/addingfunctionality/snowman/snowman_adding_functionality_twee.txt: -------------------------------------------------------------------------------- 1 | :: StoryTitle 2 | Adding Functionality in Snowman 3 | 4 | :: UserScript[script] 5 | // Use or create window.setup 6 | window.setup = window.setup || {}; 7 | 8 | // Create global function 9 | window.setup.showCurrentTime = function() { 10 | return new Date(); 11 | } 12 | 13 | :: Start 14 | The current time is <%= setup.showCurrentTime() %> 15 | -------------------------------------------------------------------------------- /pages/addingfunctionality/sugarcube/sugarcube_adding_functionality_twee.txt: -------------------------------------------------------------------------------- 1 | :: StoryTitle 2 | Adding Functionality in SugarCube 3 | 4 | :: UserScript[script] 5 | Macro.add("currenttime", { 6 | tags: null, 7 | handler: function() { 8 | // Try the following code and catch any errors 9 | try { 10 | 11 | // Get the current time and save it to the payload 12 | this.payload.contents = new Date(); 13 | 14 | // Wikify (and append) the current payload contents 15 | jQuery(this.output).wiki(this.payload.contents); 16 | 17 | } 18 | catch (ex) { 19 | // Return any errors 20 | return this.error("Error: " + ex.message); 21 | } 22 | } 23 | }); 24 | 25 | :: Start 26 | <><> 27 | -------------------------------------------------------------------------------- /pages/arrays/chapbook/chapbook_arrays_twee.txt: -------------------------------------------------------------------------------- 1 | :: StoryTitle 2 | Arrays for Chapbook 3 | 4 | :: Start 5 | arrayExample: [13, 15] 6 | exampleValue: arrayExample[0] 7 | -- 8 | Chapbook can't display indexed array values currently. However, setting a value based on a position in an array will show. 9 | 10 | Here is an {exampleValue}. 11 | 12 | -------------------------------------------------------------------------------- /pages/audio/chapbook/chapbook_audio.md: -------------------------------------------------------------------------------- 1 | # "Audio": Chapbook (v1.0.0) 2 | 3 | !!! Information 4 | This examples uses two additional files, [testpattern.ogg](testpattern.ogg) and [testpattern.wav](testpattern.wav). Both files need to be downloaded and placed in the same folder as the HTML file in order to work as designed. 5 | 6 | ## Summary 7 | 8 | Chapbook supports both [looping sounds](https://klembot.github.io/chapbook/guide/multimedia/audio.html) (which it calls ambient) and one-off sound (which it calls effects). It only allows playing one sound at a time. 9 | 10 | ## Example 11 | 12 | [Download](chapbook_audio_example.html){: target="_top" download="chapbook_audio_example.html"} 13 | 14 | ## Twee Code 15 | 16 | ```twee 17 | :: Start 18 | sound.ambient.test.url: 'testpattern.ogg' 19 | sound.ambient.test.description: 'An audio test pattern' 20 | -- 21 | 22 | > [[Play sound]] 23 | > [[Stop the sound]] 24 | 25 | :: Play sound 26 | {ambient sound: 'test'} 27 | 28 | [[Return->Start]] 29 | 30 | :: Stop the sound 31 | sound.ambient.test.playing: false 32 | -- 33 | 34 | [[Return->Start]] 35 | ``` 36 | 37 | [Twee Download](chapbook_audio_twee.txt){ target="_top" download="chapbook_audio_twee.txt"} 38 | -------------------------------------------------------------------------------- /pages/audio/chapbook/chapbook_audio_twee.txt: -------------------------------------------------------------------------------- 1 | :: Start 2 | sound.ambient.test.url: 'testpattern.ogg' 3 | sound.ambient.test.description: 'An audio test pattern' 4 | -- 5 | 6 | > [[Play sound]] 7 | > [[Stop the sound]] 8 | 9 | :: Play sound 10 | {ambient sound: 'test'} 11 | 12 | [[Return->Start]] 13 | 14 | :: Stop the sound 15 | sound.ambient.test.playing: false 16 | -- 17 | 18 | [[Return->Start]] 19 | -------------------------------------------------------------------------------- /pages/audio/chapbook/testpattern.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iftechfoundation/twine-cookbook/208a75496a6841797739cdf83a455d5b0fb680c9/pages/audio/chapbook/testpattern.ogg -------------------------------------------------------------------------------- /pages/audio/chapbook/testpattern.wav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iftechfoundation/twine-cookbook/208a75496a6841797739cdf83a455d5b0fb680c9/pages/audio/chapbook/testpattern.wav -------------------------------------------------------------------------------- /pages/audio/harlowe/harlowe_audio_twee.txt: -------------------------------------------------------------------------------- 1 | :: StoryTitle 2 | Audio in Harlowe 3 | 4 | :: Start 5 | 10 | -------------------------------------------------------------------------------- /pages/audio/harlowe/testpattern.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iftechfoundation/twine-cookbook/208a75496a6841797739cdf83a455d5b0fb680c9/pages/audio/harlowe/testpattern.ogg -------------------------------------------------------------------------------- /pages/audio/harlowe/testpattern.wav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iftechfoundation/twine-cookbook/208a75496a6841797739cdf83a455d5b0fb680c9/pages/audio/harlowe/testpattern.wav -------------------------------------------------------------------------------- /pages/audio/snowman/snowman_audio_twee.txt: -------------------------------------------------------------------------------- 1 | :: StoryTitle 2 | Audio in Snowman 3 | 4 | :: Start 5 | 10 | -------------------------------------------------------------------------------- /pages/audio/snowman/testpattern.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iftechfoundation/twine-cookbook/208a75496a6841797739cdf83a455d5b0fb680c9/pages/audio/snowman/testpattern.ogg -------------------------------------------------------------------------------- /pages/audio/snowman/testpattern.wav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iftechfoundation/twine-cookbook/208a75496a6841797739cdf83a455d5b0fb680c9/pages/audio/snowman/testpattern.wav -------------------------------------------------------------------------------- /pages/audio/sugarcube/sugarcube_audio_twee.txt: -------------------------------------------------------------------------------- 1 | :: StoryTitle 2 | Audio in SugarCube 3 | 4 | :: Start 5 | <> 6 | <