Vosyl

Black-Tailed Jackrabbit

Known Obscurant ▼ Anti-Social ▲ No Label
.
Psychology & Criminology Student.
.
A Trans Woman in her early thirties. I write,
draw, and even play music. An avid comicbook nerd,
a chess geek, and indie ttrpg enjoyer.
.
I'm also a part-time supervillain.
.
∍⧽⧼∊
ϴ⨺



First up, Hi. I'm Vosyl, and this is jackrabbit. The Cohost co-lumn where I try and rubberduck my programming, game developing woes onto you lot. I am one of those people that attached themselves to the Korps, and have decided my big debut project is going to be a CYOA (Choose Your Own Adventure) Game.
I have spent something of the past year working on the narrative aspects, and lately have started throwing it into Twine (available here: https://twinery.org/ ) using the Sugarcube Format. Only recently have I figured out the syntax to make variables work. These are less useful for the main character(s) but for the lesser figures who aren't a concrete? Migraine-saver, if I decide to change one's name later down the line. I can just alter the variable and every instance where their name is called up wil be the newly set value. Less reliance on feedback from testers or proofreading it the twelveth time over.


Variables are also good for storing player choices. To give an example, Yvonne MacStitch, has fairly predefined powers yet they're also mysterious and prone to being misunderstood. In response to a hero being grabbed by her, asks under duress what 'they' are, and they being these black ribbons picking the hero up by the neck.

So quick firing options:

  1. Darkness. (A Crown response; seeking power and dominion, to be beyond reproach)
  2. Dreams. (A ' Gestalt' response; balanced and the most 'default' choice)
  3. Desires. (A 'Eye' response; outward-looking, empathic, wants to understand others)
  4. Despair. (A 'Hand' response; fearful of intimacy, world is against me so better run away mentality, embrace being a prey species)

Having a variable set to one of these options, I can then check at opportune times which one the player picked and have that style future dialogue, and have it affect Yvonne's outlook and how she relates to her powers. It helps make the game more personalized for the players playthrough.

While this was the main feat, I also did the following:

  • Clicking on the links to new passages influence attribute gain. Four attributes (You've seen them already: crown, eye, hand, gestalt.) in total, and actions no matter how small will improve them. Opening up more options, dialogue, and potentially upgrades that'll allow exploring new routes to progress through a chapter.
  • Twine also uses local storage with its asset folder. No more src = a url, and should improve performance and allow offline play.
  • A dent has been made in the CSS.

My current issue is that the original format was Harlowe. When I realized that harlowe had severe limitations around what I could do involving javascript, I moved onto Sugarcube. Now once again I'm running into issues and turns out while I'm still a novice to programming. The solution does seem to be: "Better Tools" as my more adept programming friends are encouraging me to adopt Unreal Engine or Unity. Which feels excessive especially for a CYOA text-based game, but the issues I'm having are undenable.

I'm having difficulty working with the format's code and the actual html and css. The texture images I want to grunge up the user interface can only be used in the Body { } of the css. and the html/style tags can't seem to make use of the ID. Which leads me to believe that the format is acting as a kind of funnel. Taking the complexity of the design languages oversimplifies them. I can write "[src[image_name.format]]" to create an image, but I can't set an id for CSS to stylize it, and within CSS the image is only displayed when part of the body { } which means I can't use more than one image and the shader set-up I have.

Solution I'm going to follow-up on is to try it with an engine I'm more familiar with than force sugarcube to yield. That's going to be Gamemaker Studio 2, as turns out I'm in luck and someone did meake a tutorial: https://www.youtube.com/watch?v=3m--qRe2gWE


You must log in to comment.