Have you tried ADRIFT

Lol, that would be quite some dedication. I am keeping my fingers crossed that I’ll be able to convert it with Mono one of these days.

That seems about right since Steve Jobs was more an ethical compass than a programmer.

I’d say more filter than compass. And I’m not sure how well ethical fits.


As for the poll: I’d definitely give Adrift a try, but I’ve already invested a lot of time in Inform. Only so many hours in the day etc. That said, why doesn’t someone run a Try A New System comp?

Possibly, I was going by this.

You mean like this?

I’d say you chose the wrong language to develop it with, as well as a wrong GUI design. “Wrong” from the point of view of making it easily portable by others, not “wrong” in general, of course. I was able to port Tads and Hugo relatively easy to Linux and Mac because they are written in portable (not platform-specific) C and C++, and those languages have a plethora of compilers, libraries, tools and support frameworks for me to choose from. More than any other language, which means you get the largest possible audience of people who might want to do a port. The code compiles on virtually every system under the sun. All I had to do was to fill-in the platform-specific code (like the GUI, timers, graphics, etc.) Glulx and most Z implementations work the same way. And as it happens, Z, Glulx, Tads and Hugo are all available on the three common platforms (Windows, Mac and Linux). Adrift and Quest on the other hand don’t have that kind of cross-platform support.

This is no coincidence. Of course the most natural choice for writing Windows software might be .NET, just as the most natural choice for the Mac might be Objective C. But if you instead go with languages that are supported well under all systems, porting will be easier. One has to also keep in mind that porting is more than just having the software run as-is on different platforms; the GUI might have to be totally different. So keeping the core of the software platform-independent allows the porter to adapt the software to local system conventions.

I understand that the effort required to rewrite Adrift from scratch in ANSI C (or C++) is prohibitive. But still, it’s something to keep in mind if one day you decide to start an Adrift 6 from scratch.

Btw, if Adrift was written in the same portable manner as Tads and Hugo, I would have ported it over to Linux and Mac long ago :slight_smile:

Well, only if it was also open source…

I knew it wasn’t open source, but I didn’t know there was no source available. I seem to remember that the announcement of Adrift 5 mentioned availability of sources. I guess I was mistaken. I didn’t actually look for the sources, since Adrift uses .NET so there wasn’t much I could do with them anyway.

By the way, Hugo isn’t open source either. But the source code is available for porting purposes.

Both Adrift and Quest can work with Mono so they are capable of being ported to all the main platforms. If they were written in C or C++ I’d say there’s a good chance they either wouldn’t exist at all or would be at far earlier stages of development.

There is a QuestConsole project in the Quest source code which plays Quest games in a console window - it works perfectly well on a Mac.

To turn it into a proper Mac application it would need to be wired up to Chromium Embedded - which really shouldn’t be that difficult. The Editor would be more complex to port, but much of the GUI is actually dynamically generated from definitions in the Core library XML files - so once the work has been done to lay out controls based on these definitions, extra tabs and text boxes for example can be added simply by updating the Core library, and the changes will then be automatically picked up by the Windows, Web and Mac/Linux versions.

And that reminds me - you can already run Quest on your Mac, or iPad or iPhone for that matter, as both the Editor and Player have web versions. You can start writing a game at work in your lunch hour on your locked down corporate PC, work on it on your Mac in the evening, and tweak it in the middle of the night in bed from your iPad.

I was referring to how easy or difficult it is for others to get involved with the projects and doing porting. Which is what happened with Z/Glulx/Tads/Hugo. Of course you can port .NET to other platforms. It’s just more difficult to find people to do it if you don’t have the resources and time to do it yourself.

The Z-Machine and Glulx are by far the most reliably ported, which is definitely due to the quality of their VM specifications. Their compilers are less reliably ported. Inform 7 supports Windows, Mac and Linux, but remember that the editors are entirely separate projects with no code in common as far as I know.

I would strongly encourage opening the source code for the interpreters of every system, even if the compilers remain closed source. (Remember sadly this is still the case for Inform 7!)

That’s aesthetic compass. Wittgenstein said “Ethics and aesthetics are one and the same,” but the view is not widely held.

JavaScript or Python are probably the languages of choice if the priority is choosing a technology that others want to be involved with: github.com/languages

A Python port of Quest’s WorldModel would be a good project. I’ve already sort of done a JavaScript conversion - it’s what the iOS/Android app conversions use. It’s actually reasonably straightforward, as much of Quest’s functionality is implemented in Quest scripts, so you don’t need to reimplement the parser or any logic that decides which objects are visible. You just need to be able to parse XML, execute regexes, maintain a list of objects with arbitrary attributes, evaluate expressions, interpret scripts and implement various functions. Maybe I’ll tackle this myself at some point - would be a good way for me to learn Python at least.

To be honest, and i feel embarrassingly shallow saying this, but my biggest problem with Adrift is how the games look in the runner. It’s hard to describe, it feels “hokey” while z-machine games feels more “solid”. I also don’t like the automap feature, it takes me out of the immersion.

Adrift was my first encounter with IF and i quickly gravitated towards Inform and especially Inform 7 when it comes to development and games that comes as zblorb files etc simply because Inform looked more elegant, just the website was extremely appealing in it’s elegance, design and imagery and the actual program (Inform 7) followed suit perfectly. Because of this i have probably missed a lot of great games and developing with Adrift 4 and 5 is something i have only glanced over.

Now i should say that even though i have been into IF for a long time and have known about both Inform 6, 7 and Adrift and played around with them for years i only recently got into actually writing my own stuff for real so what I’m writing here is sort of a quasi-first impression. Hope it helps though!

I will never ever install Mono.

Why’s that then?

That’s a surprising comment. Are we talking fonts and colours here, or text responses? And you can turn the map off.

Microsoft tech is generally disliked and untrusted in Linux circles. Example:

linuxplanet.com/linuxplanet/reports/6793/1

But you can find more opinions by googling for “linux mono controversy.” I do share the belief that Mono should not be used. I don’t have it installed and don’t plan to. Of course I also share the belief that people are free to disagree with me and make their own decisions.

I can see there is an argument for keeping Mono and anything that needs Mono out of Linux distributions (there may be a risk that MS gets some control of Linux otherwise), but is that really a good reason for avoiding Mono entirely? If the very worst happens, and Microsoft starts invoking patents, are they really going to to go after you personally if you keep using Adrift?

That makes it easier than porting ADRIFT or Quest 4, but noticeably harder than porting Zcode or Glulx: The Inform compiler already converts most of those (regexes, objects with attributes, expressions, most of those functions) to its own VM.

Yeah i think i’m gonna have to take that part back, i have since posting that had another look at Adrift and i see that it’s possible to change things to look more like what i’m used to. :wink: