Most appealing game navigation

I really don’t think “commercial games” is what was meant - commercial IF is itself a tiny (in fact barely existing) niche, but it’s true for almost all IF authors that audience response and engagement is a crucial motivation. That’s why IFComp gets so many entries, some of which aren’t really suitable for IFComp: it’s the best way to find an audience.

3 Likes

The best game navigation system can’t be chosen in a vacuum; it depends what kind of game/story you want.

This is really good for games that are primarily about exploring a story space rather than a physical space, if that makes sense. Most games like this don’t have elaborate inventory systems or open-ended areas where many different actions are plausible.

I wouldn’t do this unless you’re equally as passionate about the artwork/visual design end of things as the programming. If creating all those images sounds tedious (which I would sympathize with!), better to skip it.

As others have said, creating a text parser from scratch with all the features players of modern IF expect would be a lot of work. But perhaps you can think of interesting ways to use a more limited parser. There have been many experiments along these lines. I’m curious to see what would happen if you tried developing one independently.

I’m not sure I fully understand this one - it sounds like navigation would be out of the player’s direct control, and the player would try doing various things to move around, but perhaps not know the exact result in advance? That could be either really interesting or really frustrating to play.

1 Like

Will it help you to understand what I mean if you think of it as art house vs. blockbuster movies? The shifting emphasis just means you misunderstand.

I’m not going to explain it to you. Either you get it or you don’t. We have had some discussions about this, where people are seeking outlet for Fringe IF, and finding none.

No, I think I understand you - I just think you’re wrong. Niche games have a smaller and more specific audience, but, usually, the authors still need their games to find that audience to make the whole process satisfying. That’s true for art house movies as well. Lots of films are made with no expectation of making a hundred million dollars at the box office, but all films are made in the hope of finding something from the audience - some kind of critical apprecation or pleasure.

6 Likes

Definitely not meant as snark! Sorry for being unclear and/or snarky, @tundish – it was just a recent example of what I was talking about.

And yes, progress often requires growing pains, and submitting games made in WIP engines is a good way to stress test the engine as well as the game, but I think beta testing before submission is important in those cases. (Not saying you didn’t do that, speaking generally here.)

tl;dr” for my post: provide for compass directions with abbreviations (N, NW, …). GO TO as optional addition.


I’d like to emphasize Mike’s point here.

If you want to make “a 2022 version of the Infocom games”, as you said, that sounds as if you’re aiming for parser-based gameplay.
That implies that the players will enter at the very least the non-movement commands on an input line, their hands not leaving the keyboard. (Unless you are building an entire textual point-and-click UI, or a UI like the Legend Entertainment games where you can choose between direct typing and building your commands by clicking on menus.)

Since the players will spend much of their time on the keyboard, it would be clunky to force them to use the mouse for movement.

So, assuming now that movement by typed commands is the expected default, the question arises which form it takes: compass directions or location names.

If you want to leave out the compass directions in your game for artistic reasons, that’s of course a valid choice; and I’ve seen it work well in some games, where it did seem to contribute a bit to the immersiveness of the prose.
But since you’re also designing an engine, I’d recommend to build in the facilities for the standard compass commands.

For adjacent and nearby locations, it is quicker and easier to type “N” or “SW” (be sure to provide those abbreviations!) than to type “CONSERVATORY”, “CHAMPS-ÉLYSÉES”, “AN(A)ESTHESIOLOGY” (department).

Plus, the compass makes it easier for many people to build a mental map, as Mike already hinted at.

GO TO is a very nice and useful addition when the map is large and the player wants to get to a far room, as in Hadean Lands mentioned above, or in Eric Eve’s games like Nightfall.

Here’s what Nightfall provides, quoting from the help text:

"Nightfall takes place in a city the Player Character knows well; he’s lived there all his life and so has a far better knowledge of the local geography than the player begins with. To help bridge this knowledge gap you can use the command GO TO X or FIND X (these mean the same thing) to go either to a named destination or an object the player knows about. This command will take the player character towards his destination one step at a time. To continue towards the destination, use the CONTINUE command (which you can abbreviate to C). Note that the CONTINUE command can be used after any number of intervening commands, including explicit compass-movement commands.

The exit lister in the status line shows a list of directions you can go in from your current location. Any directions in upper case indicate directions to locations you haven’t yet visited."

8 Likes

Great thoughtful response thanks.
Item 4: computer changes rooms. means that in addition to the normal game navigation, conditions in the game (ie. FSM) can change Room description, links, or automatically transport to a location that normal navigation can’t get you there. (ie. If you are in the cellar, and drop your candle, and the floor is covered in gasoline, the current room is deleted, and you end up in ‘heaven’?

Great ideas here:

  1. Use more than one NAV strategy
  2. Use different NAV for different situations, as needed
  • Note: my effort is just for me, my family and relatives - I’m not planning on selling it.
  • I plan on creating a complete story, with outlines, maps, story boards,etc. BEFORE doing any coding. Although many functions will be reusable in other games, I’m not trying to program a general purpose engine.
  • I need to play some of the games and read some of the stories you’ve mentioned. That will help me a lot !

For text entry, I plan on having a Lexicon, consisting (for one thing), a huge synonym table. take= pickup, acquire, grab, , , ,etc.
(I realize this will be a huge effort, but for me thats fun).

Wow. You really are an expert programmer, aren’t you? Glad to see another one who knows the value of Design Document. Most people just point at the code and say “There’s your documentation!”, which is false, even in Python!

Thank you for saying it. And you’re right. We artists create things because we need to. Not because we want to be popular. Or, at least, I do, lest I go insane. Please put me in as beta tester, assuming your program runs on Raspberry Pi. Thanks.

I just checked out ‘Blue Lacuna’, its demonstrates the value of well written narrative vs images. The imagination is powerful, if the author is good.

1 Like

Good Point !

That’s a great point. Switching between keyboard and mouse can be a bummer. I think I have played games with text input and a compass rose to click on for directional navigation, and once I’m on the keyboard I ignore the compass rose completely, opting to type N, NW, etc.

Dialog has a mode where the game can be played by clicking or typing, and it always works best with one or the other instead of switching back and forth.

3 Likes

@tobiasvl No snark intended or detected over here :slightly_smiling_face:

I’m not wishing necessarily for preeminent. Right now I’d like to claim credible and hope we can incrementally achieve popular by about 2030 :wink:

Until Python can be credibly compiled, it will always be inferior in this domain, particularly in education. Public school administrators (Admin and IT) will always be very restrictive with apps that can be installed on general use school computers. Having to include Python with an IF story complicates that a lot. I was able to circumvent that policy somewhat by providing computers that were not tied into the school network in any way.

The indentation function delimiting among other things including dynamic typing make Python difficult to write code with. I guess it is better than BASIC and Pascal…

YMMV

I feel like I’m banging my drum too much, so I will step back from the forum for a while…
This is to articulate my current thinking. After that I will shut up for a bit.

Ponder for a moment the physical phases; solid, liquid, and gas.
Oh, and also recognise that’s an incomplete model. Glass feels like a solid but ancient church windows are witness to the fact that it flows under gravity.

What’s solid in IF is the Z-machine VM. Built from that is Inform 7. There is a community of very dedicated conservators who preserve the operation of that paradigm in the face of the 21st century forced march of tech gimmickry.

In liquid form flow Twine and Ren’Py. They are flexible; they can adapt. They twinkle. That appeals to young authors, who seek fun in offers of wordy happiness.

Billowing overhead is the type of thing I seem to be doing right now. A way of bringing stories to the web, and interactivity to a screenplay.

My thing is a gas. It’s nuts. I am not at all qualified to attempt it. But that’s how I am spending my time.
Imagine Bandersnatch on a Raspberry Pi, with the best text parser ever implemented.

I’ll be back when I have something to show you.

3 Likes

2 posts were split to a new topic: The States of Matter

This is probably a question for another topic, and I may be missing something, but Ren’py has been distributing python apps for years without making anyone install any external library. Isn’t this something you can leverage ? (Not that I believe that python can change anything to the future of anything anyway)

Ren’Py currently runs on Python 2. Unfortunately, even though the code apparently exists to put in significant Python 2 programs into Ren’Py, I’m not yet good enough at Ren’Py to actually make the process work.

(It’s completely useless for native Python 3 until a version is released that is based on Python 3. That’s been in development for a long time - it will be called Re’Py 8 when it’s done - but for now, anything on the current version of Python would have to be downgraded before attempting to put it into Ren’Py.)

1 Like

@gandalf As someone with 25+ years of software development experience, some who has flirted too long with custom engine development (Storytron), and someone who just wrote their first interactive fiction game for Parsercomp 2021, I would recommend that you take another look at Inform 7 (you did mention “a 2022 version of the Infocom games” in your original post).

I think you will find Inform 7 is a very powerful programming language that will provide you with a great deal of technical satisfaction. While its natural language syntax and grammar can seem strange at first you will find the familiar data and control structures like If/Then/Else, While/EndWhile, etc. underneath.

My own experience with Inform 7 over the past year and a half has provided me with a variety of technical challenges and much personal satisfaction.

While rooted in the parser-based world there are numerous Inform 7 extensions, written in the language itself, that let you modify how it looks, behaves, and operates. I am currently working with Eric Eve’s Conversation Framework and Jon Ingold’s Flexible Windows (see screenshot below).

I’m so captivated by Inform 7 right now that I’m considering one of two side projects—an updated version of @Ron_Newcomb’s Inform 7 For Programmers or a refactor of @DavidC’s FyreVM (haven’t decided which yet or reached out to either individual).

The upcoming open source of Inform 7 also offers the exciting possibility of using Inform 7 as a narrative engine. I find that idea very exciting.

Of course, for a software developer, the allure of writing your own game engine is a powerful one (I still feel it myself from time to time). If you decide to go that route I wish you the best of luck.

But I hope you give Inform 7 another look.

3 Likes

Thanks Bill, Good advice, I will definitely check it out. I’m always open to suggestions, because programming is ‘like a box of chocolates’ !!

YES !! You are right ! (for me) Inform 7 is a perfect place to start. I spent a few hours reviewing some tutorials. Most tutorials say that you don’t have to know programming to use it. But of course, you are programming it, just using a high level lang (close to english), but the structures are the same
For example: Bedroom is a room. (same as string bedroom), the instructions are sequential, and can obviously follow the basic structured programming concept of 1 input, 1 output per routine,etc.
. . .Anyway for me, it does two important things, lets me get right into the story, and keeps me thinking logically. (not easy for a 75 yr old :slight_smile: )