Dev notes for Twine story entitled Dorn

- Posted in Coding by
dev.tw
        passworded access to Developer Notes
dorn_head_foot.tw
        contains header and footer passage 
          for use with hbar and bbar tags\
dorn_intro.tw
        contains passages comprising the Intro to the game/story
dorn_2.tw
        contains ?# passages that form the beginning of this hyperfic
dorn_last.tw
        contains scripts and special passages
        contains code for the playtime macro
        contains code for the fade-in macro
        contains code for hashing to enable passwording
        contains code to implement [nosave] tag for passages
        contains Config data:
          maxSlotSaves = 3
          maxStates = 50
          saves.isAllowed conditions
        contains code to check for [noreturn] tag, for menuing
        contains code to add visits to passage(s) programmatically 
               during initialization (for testing)
        contains code in PassageReady to track total number of passage visits

Important notes regarding Harlowe 3 programming in Twine

- Posted in Coding by

Well, I've learned an important lesson regarding menuing in Harlowe. Don't set variables inside menu passages. I've also found some resources online including Tweego templates, SugarCube templates, etc.

I've also developed some interest in learning SugarCube, but I'm not entirely sure I have the programming chops for it.

I'm spending some time looking over [this][1] often-cited introductory material on Twine.

In the current story I'm writing, I've been able to figure out how to advance the story both by clicking on links (the hallmark of Twine) and by just clicking on or tapping the screen.

Here is the Save/Load code I'm currently using:

<div id="text_centered"><small> 
    {(link-repeat:'[Save]<saverepeat|')[
        (if: (save-game:"GameSlot1"))[
            (replace: ?saverepeat)[SAVE AGAIN!]
            (dialog: "#### Save Successful!")
        ]
        (if: not (save-game:"GameSlot1"))[
            (replace: ?saverepeat)[Save... Again?]
            (dialog: "### Save Failed...", "Bummer...")
        ]
    ]
    (link-repeat:'Load')[
        (if: (savedgames:) contains "GameSlot1") [
            (dialog: "### Loaded Save", "Yay!")
            (load-game:"GameSlot1")      
    ]
  (else:)[
    (dialog: "### No Savefile!", "Ah...")
  ]
]}
</small></div>