Comp Entries that Run on a Server

I’ve been alerted that many IFComp judges prefer to play games in their Web browser. I’d like to know more about how the process of hosting the entries works. Will the Comp provide hosting on a server for all entries? If so, is there some form of technical support that will be available to insure that the games run properly from Day 1 of the voting?

I’m working on a TADS 3 game, and it can be compiled to run on a server, but how that works may be different from a Twine game or something else, and I have no knowledge of what the differences might be. So it would be nice to learn more about it.

2 Likes

The games are web-hosted on the IFComp server during the run of the Comp. As long as you can upload an HTML file or a zip with index.html in the top layer, the “play online” button will automatically appear. The zip can include support folders and other files for download as long as index is in the top layer.

They will be removed after the Comp and redirect to IFDB so this won’t be a permanent home.

And as long as you have an intent in, you can upload test copies of your game way before the deadline, preview how it looks on the site, and playtest to make sure how/if everything is working. I highly recommend doing so even if the game isn’t done just to work out bugs. Another option they give you is to host the game yourself somewhere and provide an HTML document with a link as the upload if you want it on itch.io or your own personal website.

In my experience, the IFComp staff has been very helpful troubleshooting one-on-one via email and in group emails with support and instructions before the games are released and all throughout the comp.

1 Like

Thanks, Hanon. I’m trying to think ahead on this, so as not to put months of work into writing a game and then find that I’ve blindsided myself.

The whole business of browser-based IF is foreign to me. I can see that it’s the wave of the future. In fact, this morning I found myself contemplating doing a second project in Twine (which I would have to learn…), just to have something that’s, uhh, modern.

1 Like

Worst case scenario, you can make a TADS game available for download only.

So in 2007, when I entered into the IF Comp, I uploaded a .z8 file with a bunch of other stuff. But no index.html to launch the game.

I’ve seen a lot of pages like this in past IF Comps, so is there a template for something like this now?

I thought these pages were put up on the back end by the organizers, between the entry date and the site going public. I guess not.

Thanks for the info - D

I’m not sure Comp games were playable online back in 2007. I only started in 2013, and there was no play-online option.

When you’re logged into your Comp account, you have an option to upload your game pretty much from the very beginning, and you can preview and play it right there. What you upload is what people will see. You can pretty much privately stage and test your game from the moment it’s uploaded before they are released.

I’m afraid I don’t have pictures of it since the website isn’t in submission mode, but I’ll try to make some after July. I think once intents are open the full functionality is operational.

1 Like

Yeah, that’s going to make it a little harder to release a .z8 game this year.

  • Thanks

I’d never released a game with a website version before the current Spring Thing, but Inform 7 makes it really easy to do that. It made a folder of my Napier’s Cache game with the website, including Javascript interpreter, which I then bundled up into a Zip and uploaded to the Spring Thing site.

To be honest I didn’t expect it to work at all haha! But I was really pleased by how easy it was to do. I can’t remember if IF Comp asks for web versions of games as well, though when I uploaded my Border Reivers a few years ago the IF Comp people handled making it playable online behind the scenes. I just had to upload a game file. But if you do have to upload a website version, and if you are using Inform 7, it is remarkably easy to do. But you probably won’t have to.

2 Likes

Maybe that’s why the IF Comp entries look alike, because of Inform 7.

But I program in Inform 6, so all I have is a .z8 file that I’m compiling on the command line.

Also, Border Reivers is a .gblorb out of Inform 7, so yeah, it looks like the same thing is probably being used. Quixe. But I don’t think Quixe handles .z5 or .z8, I think it was designed for .gblorb and .ulx

I had Parchment running locally, calling a story file in the url, but it’s not working for my game now. It was calling zcode.appspot.com, but the whole http://iplayif.com/ website looks different, so they probably changed something.

The part about Inform 7 makes sense though. Thanks.

1 Like

I think you’ll be fine.

From https://ifcomp.org/about/faq:

How do I make a “Play Online” button appear for my entry?

The “Play Online” button appears only for entries whose uploaded game-file meets any one of these criteria:

  • It is an Inform-generated story file (e.g. a .gblorb or a .z8 ).
  • It is an HTML file.
  • It is a zip archive with exactly one HTML file at its top level.
  • is a zip archive with more than one HTML file at its top level, and one of these files is named index.html.

So as I suspected you will just need to provide a game file, and it should be playable online - sorted out by the competition organisers.

But as far as I’m aware it still isn’t a requirement that your game be playable online. Downloads are fine. But online is a bonus :slight_smile:

3 Likes

Hi Jim,

I made my 2017 TADS 3 entry playable online and it had the necessary support files (index.html). I recall that the IFComp couldn’t host the TADS file and I had to find my own way of hosting it. I don’t recall what the limitation was but am hoping that has since been addressed.

Since I plan on trying to enter this year, I was going to ask if that was addressed when the site allows submissions in early July.

– Mike

I don’t know what their setup is. For testing purposes I’m putting the web-playable version up on my own website’s server. (I seldom use the site, but I’ve owned the URL for 20 years, and the hosting is cheap.) Having done that, I can let testers play it using a simple URL that references the TADS “virtual server” (or whatever they call it). It’s quite simple. Unless IFComp has their own server, I’ll just do that – and if they don’t have a server, you’re certainly welcome to use mine.

2 Likes

Thanks for the offer, Jim.

Robb can host the story file on his site, I just thought it would be neater to have everything run through IFComp like Inform and Twine do.

– Mike

To close the loop here…

I confirmed that TADS story files that are web-enabled are still not supported by the IFComp. I have created an enhancement request in IFComp’s GitHub repository. (https://github.com/iftechfoundation/ifcomp/issues/209).

It’s worth pointing out that the Inform and Twine entries don’t have any backend - they just run in the browser.

In the same way we could port the regular TADS 3 VM (not web enabled) to run in the browser.

If you need a server backend for a comp entry, in the past it’s been your responsibility to provide it. But if you are making a TADS web ui entry, can’t you use the one on the tads.org domain?

I don’t know what a backend is. What I’m doing, at present (for testing purposes) is using the thingamabob, whatever it is, at http://gs.tads.io as part of the URL that I send to testers. I would imagine the same thing could be done for comp entries too. At that point, the comp entry in TADS would be uploaded to the comp server, where it would sit alongside the Twine and Inform entries. All that would be different would be the URL provided to players (in whatever way URLs are ever provided to those who play comp entries).

This seems pretty transparent to me. I don’t know why game authors would need to do anything different because they’re using TADS rather than Inform or Twine. I readily acknowledge that I’m not an expert, however. If there’s a difference that I haven’t grokked, I guess I’d like to understand what it is.

So a Twine game or an Inform game when exported to a website, is just simple static HTML and Javascript. It’s called “static” because the files don’t change, and it doesn’t need any special webserver software, you can put it anywhere that lets you uploads basic web pages. You can even email someone your website, or give it to them on a USB drive, and it will work. You don’t even need internet access.

TADS 3 webui is not like that. Every time you enter a command it sends your command to a server, which processes it, and sends the result to your browser. It’s more like a chat bot, where you send a message and the bot replies.

The IFComp site is set up to host static websites, because all it needs to do is give your browser the HTML/JS/images etc. But it can’t host custom server software, that would be a security nightmare. So if someone wants to submit an entry that needs a server they need to host that themselves. Or in the case of TADS, they can use the http://gs.tads.io server.

I think you’re saying the same thing I was saying. Correct me if I’m wrong, but once a player has accessed the .t3 file from your server using a URL that includes the gs.tads.io portion of the link, your server is in no danger of a security breach. All that’s happening is that gs.tads.io is communicating directly with the player’s browser.

Or am I wrong about that?

If I’m understanding the situation correctly, then the only thing the Comp team has to do is provide a URL to the game that is formatted correctly to include the gs.tads.io portion of the link text.

Yeah I think so. I guess the comp site could automatically construct the full gs.tads.io URL instead of requiring authors to provide it.

But as I also said, it’s not impossible to make a TADS 3 interpreter that would work as a static webpage like Parchment does for Inform.

I’m sure it’s not impossible if you’re an actual programmer. That would leave me out; I’m just an author who knows how to use T3 and adv3Lite. And MJR himself no longer seems to have much interest in T3 programming.