Sunday, 27 December 2015

Dreaming of a white fish Inform XMAS

It was Jean Baudrillard who postulated that we'd all end up speaking in ironic quotes in the hyperreality he also postulated. I think he also coined the phrase 'hyperirony', but Google isn't confirming that point right now, and the ace essay I wrote about this during my degree is both twenty years old and not located in the house in which I'm typing this post on an iPad+bluetooth keyboard combo.

I'm weary in life of being spoken to in ironic quotes I don't understand, but of course when I do it to others (minus the 'not understanding' part) I expect I'm doing it well. I choose source material judiciously, not from obscure hipster cartoons screening on pay TV in another country, for instance.

Often I choose to quote The Simpsons, as they have covered almost everything, and usually done it better and funnier than others. So, my general XMAS message is:

"Have a – nice Christmas!
Have a – nice Christmas!
Have a – nice Christmas!
Non-Christian friend"

PS I am irreligious.

---

In Inform-dom, we have been gifted a new version of Inform. It's 6M62:

http://www.intfiction.org/forum/viewtopic.php?f=7&t=19449

I like these letters, 6M62. They look bold and ground-touching. Not like my least favourite letters of late, '6L02', who looked veritably frail and consumptive.

---

In my own Inform-dom, I am well advanced in progress on my CYOA extension. There's still lots to do, though. More coding, making examples, some testing. But the work goes on. This is no vaporware.

Occasionally I speculate on the 'you need an interpreter' paradigm of most parser-based games that grew out of the modern community. Sometimes it feels like it just shifted the obligation to update software so that it keeps working from one group of people to another. That's a simplistic summation, but in the current situation, I don't think I ever worked out if anyone has a particular idea about where the emphases of compatibility should be. The core idea that the games are just words and that users should be able to control the appearance of the words is a good one, except for the million exceptions including graphics, sounds, and various UIs that authors want to use. And being an author and not being able to control stuff can be maddening. So even when the onus is left on the interpreter to be kept up to date (and not your game), from an author's perspective, you may end up with multiple versions of your game where one thing is broken in each one depending on where/how the user plays it, or where it never looks the way you'd really like it to.

That sounds a bit dispiriting, an effect enhanced by me writing it in a dispiriting fashion. But it's not like this is a new situation. Plus, this is XMAS! So get confident, stupid! The reason I vexed on these points a little here is as a prelude to pointing out how I'm going in almost the opposite direction of my traditional design impulses (which are author-biased and pro specificsim) in my choice-based extension. It harkens back to the 'the game is just the words' idea. The author links the word(s) to a choice or, uh, link, but the player can receive these any way they want. If you (THE PLAYER) want hyperlinks for your touch device or for clicking on with a mouse, you can have them. If you want letters of keys you could press, you can have them. You can also have both. So the approach is intended as a bit fire-and-forget for the author. Stop programming interfaces and just put your content in, and expect it to work on desktops, mobiles and in screen readers.

Now, one of the eternal vetters of ideas at intfiction.org, Peter Piers, said 'What if the author wants to override something? eg block hyperlinks, or keypresses, or whatever.' Certainly it remains that there are ways to do this, but as work on this extension has continued, I've realised which basket it's throwing its eggs into more forcefully, and that is the 'let the player control the interface' basket. The controls are simple and plugged into the game by the extension, so it's an extremely far cry from having to hack Gargoyle's template to force it to print in your particular favoured shade of ectoplasm green :(

So! This extension has a design emphasis about how it's going to do things. I think it's a good one for this project.

Wednesday, 9 December 2015

ANDROMEDA 1983

Marco Innocenti has just released ANDROMEDA 1983, an 80s'n'8-bit-styled fun-emphasising remake of his first Andromeda game, Andromeda Awakening from IFComp 2011. It's as if Andromeda Awakening had been released in 1983 for the Commodore 64, Apple II and ZX Spectrum as an adventure game with graphics and music. I produced the looping SID chippy soundtrack for the game.


1983 ain't heavy. As Marco said on intficiton.org,

"DISCLAIMER: this is not REALLY intended as a REAL GAME. It's 50% a joke and 50% nostalgia. You, Constant Readers, will tell me where do you fall. It's pretty short, it won't kill your time too much...

PS: Don't expect anything easy or polite to the player. What's actually there, trying and helping the player, was made by the Inform people and it's still there because it was too much struggle to remove. Honestly, it is a feeling I wanted to replicate, and that feeling had no synonyms, most of the time."

As a fan of the original game, I got an extra kick out of 1983, but play-wise it can stand on its own. It obviously wasn't worth trying to reproduce all the complexities of the original game in this format, so it's become a new, simpler game using some of the same basic story, locations and ingredients.

As a grizzled Apple II and Commodore 64 veteran, what really bowled me over when Marco first showed me this were the graphics. It's a very specific aesthetic he's recreated incorporating both the colour palette of the Commodore 64 and some of the pixel-dithering tricks used to produce textures on the considerably less colourful Apple II screen – as if the game's creators had indeed tried to port the game's graphics as consistently as they could across these different 8-bit machines.


Saturday, 5 December 2015

Inform 7 news: Wade Clarke's new Menus and Basic Help Menu now available in the public library

After much file-wrangling by the Inform extensions file-wrangler, Mark Musante, for which I am grateful, two new versions of extensions of mine have debuted in the Inform 7 public library this week. They are Menus version 4 and Basic Help Menu version 3.

  • If you're using Mac OS X, the extensions are available from the public library section in the Inform 7 application. With your internet turned on, click the Extensions tab at the lower right of your window, then the Public Library tab in the top right corner. The extensions are in section 11.2 - 'Out of World Actions and Effects' - 'Helping and Hinting'.)

About Menus 4

As previously advertised, my Menus is a significant update of Emily Short's old/classic Menus with a lot of additional features which make it more modern and flexible. I consider the most important of these to be:

  1. Single keypress operation – no need to scroll a cursor about, and
  2. Has a screen reader mode for screen reader-compatibility

These features alone make a menu system powered by this extension far more accessible to anyone playing on a mobile device or using a screen reader. In this light, I strongly recommend that folks wanting to add menus to any new Inform 6L38 project build it with my Menus extension rather than the old Menus.

By the way, I should point out I'm not obliviously shaving skin off Emily Short's nose. I discussed the state of the menus extensions with both her and Inform code maestro Dannii Willis, and we've all been looking at ways forward. My Menus extension doesn't have exactly the same API (Application-Programming Interface) as Emily's, so it's for the sake of compatibility with old projects that the old Menus remains in the public library rather than being replaced by mine. Also, Dannii has plans to revamp Emily's extension in such a way that it will have some of the features of mine but will also retain Emily's API for backwards compatibility. If that comes about, that may be the extension which replaces Emily's in the library.

Basically, my extension is ready to go now, addresses some accessibility issues, has some cool and powerful extra features and has already been through three iterations of polishing and bug-removal.

If you're wondering why I changed the API in my extension, I had to to support some more of its advanced features, like the book mode with automatic pagination.

About Basic Help Menu 3

This extension is the equivalent of Emily's old Basic Help Menu, just recoded for compatibility with my own Menus and with the help information updated to reflect the times in which we live. It adds a Basic Help Menu to your project which contains some how-to-play parser IF info.

Friday, 23 October 2015

IFComp 2015 review: Taghairm by Chandler Groover

All the mini-reviews of the Twine game Taghairm have been like this: 'Taghairm – it's the game for people who don't like cats!'

Well, I hadn't played Taghairm yet, I hadn't even met it, but I was starting to develop a manic pissed-off response to this repeated consumer advice. Don't tell me I can't enter into some fiction, presumably about maiming cats, just because I like cats!

After the teenaged part of my brain stuck its middle finger up at all those reviews, I went off to play Taghairm.

An all-spoiler review follows, and incidentally, it contains no user help about what a 'Taghairm' even is. I'm guessing enough other reviewers will have covered that by now.

Monday, 19 October 2015

Work in progress: CYOA Framework for Glulx

I've broken off my IFComp game-reviewing streak to take advantage of time and motivation opportunities to work on a new extension for Inform 7. It's called 'CYOA Framework for Glulx' and its goal is to help folks produce hyperlink/keypress-driven CYOAs in Inform. I want the results to be author and player-friendly, flexible and easy to publish online.

By coming off the back of Inform the extension also supports a lot of cool things that aren't always handled well by other CYOA producing systems: Proper UNDO, transcripting, game-saving (by named files with a save dialogue, or by a single-keypress quicksave slot; the author can decide which) and, if you want it, the full world model. But I'm also putting in a switch so you can turn the world model OFF. This way you can just connect nodes of prose to each other with choices if that's what you need.

With previously available tools, it's been difficult to stop Inform 7 running everything through its 'press RETURN' parser. As an author, that's exactly the thing I don't want it doing when I'm trying to collect and react to discrete keypresses or clicked choices. My way to get around this in the past worked okay, but was super-hacky, and certainly couldn't support the world model, genuine UNDOs, genuine time management or non-manually managed game saves. I should point out I have nothing against super-hackiness per se if it gets the job done for an individual, but if you're making a tool for other people to use, super-hackiness is neither portable nor user-friendly.

The background on why I'm making this extension now:

Before knuckling down to work on my planned big parser game set in the Andromeda universe (click this for my blog post about that) I felt I wanted to get another smaller IF out. I decided it would be a CYOA, because even a small parser IF takes me ages.

As I discussed my super-hack approach to making an Inform 7 CYOA over on intfiction.org, Andrew Plotkin mentioned that he'd made an experimental extension called 'Unified Glulx Input' which might be able to help with this project. I tried it and it really did. Then climbingstars chimed in with some extra UNDO help I needed.

After programming away at my extension for the past week, I've just shared a minor tech demo of the work in progress on intfiction. I have a thread open to get feedback on it (the first post has links to the demo). I'll report back on future progress with the extension in this blog.

* I've only released one thing with my previous super-hacky method, an Apple II CYOA game I ported to Inform 7 and put inside Leadlight Gamma as an easter egg. What's interesting about that one is that it also fakes some BASIC line numbers. Each node is identified by its original BASIC program line number from Applesoft.

Thursday, 15 October 2015

IFComp 2015 review: The Insect Massacre by Tom Delanoy

The Insect Massacre is a Twine hyperlinks game about which it's possible to expose little more than the blurb does if one is to avoid specific spoilerdom. That blurb is:

"A short murder mystery set aboard a space station."

The title is explained in a neat way which I will also not explain here. Actually, this review will be only non-significant-spoiler by my standards, so there is no text hidden behind a cut.

I found the game's mystery intriguing. The events of the story are concrete enough to provoke speculation, but blurry enough around the edges so as to ward off absolute explanation. Multiple plays are required to investigate multiple angles. Each session requires little time.

The game's aesthetic delivery was beguiling on the first playthrough, if a bit confusing in terms of indicating who was speaking in each scene. The speech is effected with colour-coded names matched to coloured lines of text. My proper gripe is that on the second and subsequent plays, the unskippable Twine delays, pauses and fade-ins that were enforced on material I'd already read felt pointless and tedious. Text is basically not a temporal delivery vehicle like music or film, especially text in a branching story. I don't know if Twine provides capabilities for authors to set options for this kind of thing (eg author-enforced pacing the first time material is encountered, material skippable with a mouseclick the second+ times?) but if it hasn't, it should. If it has, I hope more authors will start using it when it is appropriate to do so.

Fortunately, The Insect Massacre is short enough, even on replays, that it isn't too hurt by its eternally slowly-fading-in text. It is particularly good at making the player guess at the implications of the choices it presents, and not because the choices are at all vague, but because of carefully deployed elements of the game once again not discussed in this spoiler-minimised review. I continued to think about The Insect Massacre afterwards.

Saturday, 10 October 2015

IFComp 2015 review: Pit of the Condemned by Matthew Holland

Pit of the Condemned is an Evade-The-Wumpus-like game in which you play a convict sentenced to die at the hands of The Beast. The site for your intended death is an abandoned city that's now used only to host deadly spectacles. A bloodthirsty public watches your struggles from innaccessible locations overhead.

In the paragraph above, I just summarised a mixture of information from the game's blurb and from its opening scene. And the blurb component of that info is not even fully present in the game, meaning if you didn't read the blurb, you'd never know it. Unfortunately, the above summary is about all there is to the aesthetic of Pit. None of the implications of the game's setting or vaguely Hunger Games-sounding society come up during play. It's purely about the mechanic of moving through a large network of empty rooms and searching for a weapon or escape route while the beast chases you.

Pit is a short game to play, and in its simplicity it again ('again' in the context of my reviews of this year's IFComp entries) reminds me of the BASIC games David Ahl collated in books for the then new microcomputers of the 1970s. Unlike War of the Willows, the game I made this comment about the first time around, Pit doesn't have enough additional adornment or flair to sell its universe, to make its chase vivid or exciting like it needs to be.

Further reviewage with spoilers below.