Are there any existing IF engines that could incorporate 2D puzzles?

I am new here, and apologies if this is the wrong place to post this question.
(originally this was posted in GameDev.stackexchange but it was downvoted, and I think considered off-topic).

I am planning to create a tutorial for the vim editor, which will be in the form of an interactive fiction game.

I would like to incorporate 2D puzzles for the player to complete. For example, the “replace the words in this text fragment using vim commands”.
And the puzzles would form part of the narrative.

The game advances by typing in commands, like in a game built with Inform.

However, I am not certain that Inform allows for puzzles.

Is there an IF engine which allows for interaction with 2D graphics?
There was a game a while ago called “In Memoriam” which was graphical, but involved text-based puzzles. I’d like to create something similar, but with more text, less graphics.

1 Like

You can build a 2D terminal-window style interface in an Inform game. The game UI supports this; Infocom used it in games like Bureaucracy (the initial input form) and Seastalker (the sonar map display). In the extreme case, there’s .

However, Inform doesn’t give you a lot of support for this sort of thing. For anything fancy you wind up writing a bunch of fussy move-the-cursor code. Replicating the vim editor is possible but it will be work.

1 Like

That is amazing - a tetris game in Inform.

Thank you so much Andrew.

(I’m hoping that) I wouldn’t be replicating vim in it’s entirety - just subsets. Although, I am starting to wonder how a subset would work, and whether a text adventure is the right thing to do. The alternative is to create something similar to “Vim Adventures” (which is a 2D side scroller - not IF at all).

I will investigate both those games - much appreciated.

Another matter is what an “interactive fiction game” means in this context. Unless your game has any concept of rooms or inventory or objects that can be carried around, you’re not going to be helped a lot by the Inform language or standard library. Which is true of Freefall/Tetris as well, of course.

AXMA-JS can incorporate full JavaScript, and there is a demo that incorporates a 2d puzzle.

You can also take a look at wurm, that like freefall also comes with inform source code.

Hmm, that link to wurm seems to be down.

Thank you! This might very well be what I’m looking for.

Yes this is a good point.
Yes there would be “rooms”, and I guess these would be plot points in the story.
I was thinking that at each room, a command (or clue to a command maybe) is learnt, and then that has to be employed in the ensuing puzzles.
Whatever the story or adventure, it would have to be fairly linear.

The link works for me, but searching for wurm on ifdb should get you to the same page.

I know INSTEAD has a special direct mode with sprites, pixels, module music and LOVE 2D support. So you can make a CYOA that turns into a full 2D game and then into a parser. (It’s as hard as it sounds for new programmers though because you’re not operating with low-level SDL but not programming with some kind of asset manager either). Parser module is very polished with mobile suggestions and autocompletion but no English documentation at the moment, so I imagine it will be mostly learning-by-example.

If you’re writing in Javascript, you can string together any high-level 2D library (there’s a ton) and probably ISHML.