Two things Squiffy needs to add

Squiffy is the best choice-based text adventure maker ever. It's so much better than Twine. Here are two game elements Squiffy markdown should include:

  1. In Javascript you can make random things happen.

    var coin = Math.ceil(Math.random() *2 );
    squiffy.set("coin", coin);

This should be marked down in Squiffy as

{random weekday:Monday:Tuesday:Wednesday:Thursday:Friday}
{random coin:heads:tails}
{random die:1-6}

This is the same syntax as the already-existing {rotate coin:heads:tails}. Easy to learn and remember.

  1. In HTML and Javascript you can make inputs for the player to type in, and you have to use javascript to make Squiffy read it.

     What's your name? I'm  <input id="name">. [Next]


squiffy.set("name", jQuery("#name").val());

This should be marked down in Squiffy as


That's it. Squiffy should just know what {name} means from this.

Again though, Squiffy is already the very best choice-based text adventure tool that exists!

I agree - been writing in squiffy for years and have greatly enjoyed it. It allows me to make random gamebooks with replay value.

One issue with the dice - you might also want to have a range, since I might want to do a probability (1-100). Or, of course, I could roll a tens and a ones die.

The only other thing I'd need is a squiffy.story.go() command. Sometimes I want to just breeze through a section (like if I'd doing a lot of calculations to determine what path the game should take. I don't always want a section to hang waiting for player input.

Thanks, Bluevoss. Your posts on this forum have been consistently beneficial. I edited one of my examples to reflect your suggestion concerning number ranges.

I'd love Squiffy to have some better conditional logic - an elseif would be insanely easier than nesting multiple ifs.

And a small thing, but a .squiffy-section class, in addition to #squiffy-section-x would be really useful. A default custom.css called from the index.html would be handy too!

This topic is now closed. Topics are closed after 60 days of inactivity.