Suggestion: iOS Quest interpreter

Peter Pears
Hey there. I'd like to this this suggestion to Alex and anyone who'd care to comment.

I know that Quest has a nifty way of wrapping games into an iOS app. That's very cool indeed, but it seems to me that it was underused. I suppose one of the reasons is, lots of people don't HAVE an iOS device. Another reason is the extra step of getting the game converted, then put in the app store. It takes some dedication, when most people just want to finish their game, polish it up, and release it to the unsuspecting world for them to enjoy - in an *immediate* fashion.

(more ambitious Quest projects are birds of a different feather, of course)

I was wondering, therefore, whether it wouldn't be a good idea to get that framework into an iOS *interpreter* for any Quest games. I suggested this some time ago in another place, and Alex told me of a few Apple limitations that made it hard or impossible, and I'd like to point to iFrotz as an example of how it can be achieved (one of the best features of iFrotz is how I can just go in there, using an application like iMazing, née DiskAid, and just extract the savegame file so I can, if I want to, switch between desktop and portable play as the occasion mandates).

I am all for playing portable IF, it's a beauty of a thing. I would very much like to take a game I'm enjoying out on the road, and play it at my leisure instead of the few hours I spend home, most of which are devoted to sleeping, eating, bodily functions-ing, and working. An interpreter would make that possible; an app-wrapper like there is now just makes it possible to me to play a very, very, very, very limited selection, and they're not even games that grab my interest.

Alex
I would love for Quest interpreters to exist on other platforms - not just iOS, but Android, OS X and Linux too. I've always said I'm happy to support anybody who wants to create these, but I don't have the time to create them myself.

My focus at the moment is fleshing out Squiffy and QuestKit. Both of these platforms create games directly in HTML and JavaScript, which removes the need for interpreters entirely (essentially any web browser is the interpreter).

What that means is now is actually a good time if anybody wants to start work on an interpreter for "classic" Quest, as it is not likely to change very much in the future. Again I'm more than happy to provide support and guidance, and the source code for the Windows version is on GitHub as a guide.

Peter Pears
I was under the impression that the existing code used to "appify" games would mean that the majority of the hard work had already been done... well, shows how much I know about real programming!

Alex
Not quite, QuestJS is a converter not an interpreter. It's C# code that takes a Quest game and turns it into JavaScript. The resulting JavaScript is stand-alone, and can be wrapped using Phonegap or similar to make it look like an app.

What stops this being used as an interpreter app is:

- performance - the conversion is quite slow (once converted, the JS is quick though). Conversion is done on a desktop machine, it would be even slower getting a phone to do the conversion itself.
- the converter is written using C#

What would be nice is a native JavaScript interpreter, which could take a .aslx or .quest file and run it directly. That would give us a cross-platform Quest interpreter (could be packaged up for iOS, OS X etc), and it would also make web-based games as quick as downloaded ones, because the game would be running in the browser and not on the server. That's a big effort but a lot of gains, so it's something I will probably need to consider doing at some point in the next few years.

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

Support

Forums