Skip to main content
Participating Frequently
September 28, 2023
Question

Best method to create a choose your own adventure styled document

  • September 28, 2023
  • 3 replies
  • 2906 views

Hi!

I am working on a project which used the choose your own adventure style of narration, so each paragraph has a number which gets referenced several times.

Because I need the agility to move paragraphs around and shuffling them through the book, if I did it with plain text, what would happen is that you'd fin on page 1, a paragraph with the title "60" for example, because I ahve moved it from a page much further along. Yes, I could change the title from "60" to "2" for example, but then all of the texts everywhere in the book which referenced "60" would be wrong and the reader would be unable to complete the story.

 

My solution is creating variables, so I crea a number of variables equal to the numbers of paragraphs, so if there are 120 paragraphs there will be 120 variables, and whenever I switch things around, I only need to change the variable number once, and all of the instance of that number gets changed everywhere I placed in the document.

 

Is this the best way of doing it or is it over engineering? Without a proper dockable Variable panel this task feels extremely klunky and slow.

Do you think there is a better solution or am I doing something wrong?

 

Cheers!

This topic has been closed for replies.

3 replies

Robert at ID-Tasker
Legend
September 29, 2023

How about Bookmarks and Cross-References? 

 

ArtcakeAuthor
Participating Frequently
September 29, 2023

I do not believe I have used any of t hem, before I do some extended research into those, would you kindly explain very roughly how both function? Thanks!

ArtcakeAuthor
Participating Frequently
October 1, 2023

Robert's suggestion is 100% correct, and it's how I have made CYOA-style stories in the past. There are multiple ways to do it, but there are only two really meaningful methods for someone in your shoes.

 

If you go to Window -> Type -> Cross-References, and click on the flyout menu in the upper right hand corner, you can choose "Insert Cross-Reference." This will allow you to choose "Paragraph" in the "Link to" dropdown, and then the Destination will actually show you the first words of each of your paragraphs. You can choose to limit the paragraphs displayed by source document and paragraph style. 

 

Below that, you can choose the format of the cross-reference, and you'll probably need to click on the little pencil edit-me icon to massage the format of the displayed cross-reference to your specifications. 

 

If the whole-paragraph method of referencing feels clumsy to you (as it often does for me) then you can instead start by putting little invisible named markers into your paragraphs. So e.g. you put your cursor at the beginning of the "your character falls down the mineshaft and dies" paragraph, go to the flyout menu of the Cross-References panel and choose "New Hyperlink Destination." Then you can choose to insert a Text Anchor (an invisible zero-width character in your text) and give it a simple name ("Mineshaft Death"). Then, when you need to make a cross-reference to it, you can pick "Text Anchor" instead of "Paragraph" from the Link To dropdown, and point your reference to "Mineshaft Death." 

 

I strongly prefer the second method because I usually work with languages I can't read, but even when working in English I'd rather look for a word or two in the Cross-References panel, instead of needing to actually search through paragraph text. 

 

 

 

 


Thank you, I think the Cross Reference works really well. This way if I have to move paragraphs around and re-number them, all of the attached cross reference points updates as well, very helpful. The only downside I find is that there is no way for me to tell which one has the Cross Reference on, (fitting this system retroactively can lead to to some mistakes. Even enabling Hidden characters does not seem to show this.

 

Also having to go always on the top menu as opposed to a short cut or a right click, is definetly a pain!

rayek.elfin
Legend
September 29, 2023

Just to be on the same page here: this is meant to be published digitally? Not on paper?

ArtcakeAuthor
Participating Frequently
September 29, 2023

This is a physical booklet aid which will be used for a table top game.

James Gifford—NitroPress
Legend
September 29, 2023

Oh, never mind my answer, then; I ass/u/med this was to be a digital doc of some sort. As Robert T notes, the cross-refs feature is probably your best friend here. I'd suggest a training course or some fairly deep study so you can master its power (and pitfalls) to your best advantage.

James Gifford—NitroPress
Legend
September 28, 2023

I'm not sure there is any canned, out-of-the-box tech that will do this — easily and well, at least. It would take custom coding in Javascript or the like, an actual "app" in which the content pieces were secondary to the overall structure.

 

It could, however, be done in HTML with little or no scripting/coding, although a little, through PHP or the like, would make it easier to shuffle name and page and segment variables.

 

I'm not saying it couldn't be done via InDesign, exporting to Publish Online or EPUB, but... it would be messy, slow and unreliable without lots of custom scripting.