Help with choosing an engine

so i’ve only joined the IF community very recently, and i am planning on my first interactive fiction game. the problem i’m having is what engine to choose.

i have the basics of the game planned out – it’s about a student spending a week at school going around causing chaos. it’s more RPG-like rather than a straightforward interactive story (e.g. it doesn’t have a clear storyline from beginning to end), so i have considered making an RPG at some point… but it seems a bit hard for me at the moment. and it also seems that maybe IF engines can accomplish what i want to do.

anyways, i’ve looked into two major engines that seem to be really popular, Inform 7 and Twine, and i’m having trouble deciding which one.

the game involves:

  • the player going around campus (which is a map), and interacting with different people (students or faculty) who will give them missions, which the player should complete and recieve an achievement.
  • an inventory system
  • time, as classes and the dorm and stuff are based on time, and the player can rewind time if they find out how
  • state-tracker, like sleep, hunger, and health, and keep a log of how and why these states changed every time they change
  • revive after death. there are many ways you can die, but i don’t want them to be permanent (as dying is also part of the game). instead after dying player should be rewinded to the last point where they can’t get stuck dying again.
  • have a character follow you around, but also does stuff on their own (likely behind your back)
  • ease of translation. while all the stuff mentioned above could be achieved in Inform (i think? if i try) the biggest problem of parser games is that they’re dang hard to translate. i want to make this game available in both English and Chinese but parser games are really hard to run in Chinese.
    • i looked into Vorple, which provides hypertext for Inform, but this is where it stunts me: if everything’s hypertext, can i do these stuff in Twine? and what story format to choose?

thank you for reading through all that rambling! if somebody could give me suggestions i couldn’t appreciate more. (btw, i have some JS and CSS experience so a lot of coding wouldn’t bother me. if this game really isn’t fit for IF i could always look into RPGs again!)

1 Like

What kind of input are you looking to do?

  • input a command with a keyboard → Inform (or other parser programs)
  • the player clicks on a list of choice or links → Twine ( or other choice-based/hyperlinks programs)

What you are looking to do is technically possible in both, though they will need to be implemented differently depending on the program you choose…

Yup! Localisation is possible in Twine (I’ve done it for a bunch of my projects for English/French). Can be as easy as creating different paths of passages, each having on translation.

1 Like

Would translation be easier if the player did not type full commands that needed to be understood by the parser, but instead chose an option from a list?

With Inform 7, I think it’s possible to give players a numbered list of options, and then the player types a number, instead of a command. I don’t know if I’ve ever seen a whole game done that way in Inform 7, but I imagine it’s possible.

1 Like

my main stumble is that, if i make a whole list of choices, that would have to include “examine (everything)”, “take (everything)”, which would be a long list in a room with a lot of stuff. and, if i make a link for everything, i could just use Twine – but how easy would rooms, items, time, characters, and state trackers (things easily done in Inform) be to implement in Twine?

i know; that’s like, the one difference between Inform and Twine.

i guess the question now is, do i make Inform look like Twine, or make Twine act like Inform? how easy would either option be? or is there a third?

passages and variables, essentially.

You could have the “item” be a link to examine it.
Plasmophorsis did a funky thing for interaction with elements (listbox + links)

I’ve made Twine behave like Inform before, and while it was a fun challenge, I may not recommend it (because it’s a lot of hassle and you build the whole system from scratch.

From your previous answers, you seem to be more going the way of parsers rather than choice-based/hyperlinks. It is possible to change how Inform looks with some extensions (new shiny one). But there are other parser programs out there, like Adventuron, where you can customise how the Interface look (without it looking like a Twine).

1 Like

thank you! i’ll go with the “make Inform look like Twine (kind of)” route

i’m not sure if you can answer this question, but comparing the Vorple extension, the Bisquixe extension, and Adventuron that you recommended, what are their pros and cons?

1 Like

I’ve only done stuff with Adventuron, so far… so :woman_shrugging:
I did like Adventuron for how beginner friendly it is compared to Inform for what is worth.

You could also look at a parser-choice hybrid authoring system, for example, Gruescript. I haven’t used it, and I don’t know if it does everything you want, but it is designed to make parser-like games that are clickable.

Gruescript by Robin Johnson (itch.io)

This seems like a good question for @mathbrush.

1 Like

practically, your story mix elements of Persona and the first Life is Strange, so I think that more than an engine you should think about a language, and I’m not sure that Adventuron can handle the coding needed, but surely Inform 7 can handle this.

Personally, I suspect that the specs indicates that TADS 3 is slightly more indicated than Inform 7, but with the help of this community, your project is more than feasible under Inform 7.

Best regards from Italy,
dott. Piergiorgio.

While I think there are potentially a lot of advantages to realizing your design spec in a parser engine, if the translation goal is an important one to you, I’d steer clear of Inform and TADS, since I don’t believe there’s anything like a stable library translating either into Chinese. Of course this might not be a big deal if the player never inputs a command and you go hyperlink-only, via Vorple or Bisquixe or whatever (just to throw another engine in the mix, Dialog is a parser engine also has native support for link-based gameplay, so that might be an easier hybrid option). But I suspect the amount of work required to get that all working is significantly greater than the amount of work required to just implement stuff like an inventory and navigation system in Twine, especially if you’ve already got some experience with JavaScript and CSS.

2 Likes

I agree with going with Twine. Inform, Dialog and TADS can do a lot of these things (a character following you around, tracking sleep hunger and health, inventory system, time).

But, each of those languages is not currently set up for Chinese translation. Dialog has some limitations (see this thread on Dialog and Japanese: An experiment with parsing Japanese - #25 by MultidimensionalStep). Inform 7 is going to get unicode support soon but not yet: About inform7 imput Chinese question - #2 by mathbrush. TADS can work with Chinese but it takes a lot of work: About TADS3 show Chinese problem.

If you just use links in Inform, you could do it all in Chinese, since typing it in is the hard part. I use hyperlinks in Bisquixe but you can also do them in base Inform.

Twine on the other hand is basically just as flexible as javascript and html are flexible. It can do so much! There are already tons of example games with twine. You can download any modern twine games and open them up in the editor and see their code. For Chinese text and choice-based system, I definitely think it is best.

But everyone else already said these things. What I’d like to add is, I’d try making only some of these things at once. Try making a small game that has just inventory and conversations. Then add hunger timers, etc, one at a time. It’s very rare for someone to make a game as complex as the one you’ve described, especially on their first game. Doing a little piece at a time can make it a lot easier! And then you can find out if it’s fun or not. A lot of Twine and Inform combat games are not fun at all. A lot of people don’t like hunger and sleep timers. But if you make a little piece at a time, you can try each piece and see if it’s fun for you!

8 Likes

thanks a ton for the advice, guys! i’ll check out all the solutions and see which one i want best :innocent:

Following on from the advice to only do some of it, consider doing some miniature standalone games, each giving you chance to practise one or two of the things you will implement in the larger game. They can have the same or completely different story premises, but will give you practise with the options you use.

6 Likes