How important is scrolling in a text game?

I don’t know if I agree here. Having long dialogues of between the player and the game does affect the presentation, which in turn directly affects the overall experience. I’m not saying scroll back is bad, I’m just saying including it in your game is a significant decision.

5 Likes

As with everything you need to weigh the pros and cons. When adding features to an already complex system you have to ask yourself how much time you want to spend fixing the bugs that will inevitably appear in the least expected place (I’m busy fixing bugs right now).

3 Likes

Ozmoo (Z-code interpreter for Commodore 8-bit machines) has support for scrollback, and I think it’s the only 8-bit interpreter that does. The amount of text you can go back and look at is just 4-10 KB on a regular 8-bit machine, or 64 KB or 1 MB on machines with extended memory available. We’ve received some feedback that at least some users find it really valuable.

5 Likes

Another problem with Twine, perhaps related to scroll back or maybe not, is the lack of transcripting that can be sent back to the author during beta testing.

I have no idea what order any of the players of my last game tackled the puzzles, or how sequence impacted their experiences.

6 Likes

The command for starting a transcript in Adventuron is TSTART. The specific command used feels a little obscure, but it is a built-in feature of the platform. Not scrollback specifically, but a means to access the text.

4 Likes

Ah, that’s good to know, thank you!

3 Likes

bit late to the convo and almost mistook having a scrollbar on the page as the scrolling bit… cause many Twine projects (esp in the Tumblr IF Scene) have very long passages… but that’s not that :joy:

Essentially building your own with DOM macros (<<append>>, <<replace>>). It’s not the best but it works. Refreshing the page will remove everything however.
There are also custom macros that could to the job. IIRC Cycy’s CTP.

I’ve managed to create one-ish with SugarCube with Chapel’s File Custom Macro, where you can save the content of a variable in a text file. I’m sure it would be possible to make something like a proper transcript by messing around with the code of that macro…

5 Likes

A cool thing about Dendry is that control over page breaks is entirely determined by the author. If one doesn’t use the new-page: true command, then there is unlimited scrollback. Customarily, page breaks are used to indicate scene transitions or other major breaks in the story, but one can also make a game without any page breaks at all (although it might be unwieldy with a 50k word novel, and might even slow down the browser).

I do think it would be a good idea to have a transcript feature in dendry (brb implementing that now).

Among choice-based systems, ren’py also has unlimited scrollback/auto-logging I believe.

Tbh I feel like the opposite of this is true - most of the games in choice-based systems without scrollback tend to have more text per choice (see: Choicescript, tumblr-style twine games). Parser games and choice-based games in systems with scrollback (ink, renpy, possibly dendry) tend to have shorter passages between clicks…

Most choicescript or tumblr-style twine games have separate stat pages so that obviates some of the drawbacks of no scrollback.

7 Likes

I will happily admit that my experience is sporadic these days.

Parser games have plenty of one-liner responses but the chunky passages have gotten chunkier over the years. (Adventure’s “Breathtaking View” was twenty lines of text, but authors rightly regarded that as a transgressive exception.)

3 Likes

I often get frustrated in hyperlink games when I can’t hit the Back button to see the previous page, because I’ve accidentally (or unthinkingly) clicked something before I finished reading the text, or if I just get confused by something on the new page and want to re-read the previous page to get the right context in my head. And this is separate from wanting to Undo my choice; mostly I’d be fine just being able to re-read the previous page (or maybe the last few pages) without the ability to click a different link. (Whether it’s a Back button or scrollback doesn’t matter too much, I think.)

This goes double for timed text, where the page changes without me clicking anything. It feels like authors who do this expect you’re watching the screen with full attention like you’re in a movie theater. But when I’m playing a game I’m at home with distractions (or my mind just wanders) and I want to be able to rewind (or at least pause).

Ideally, of course, I’d always want the option to have infinite scrollback and undo from any point. But I recognize that some authors feel it would be too tempting for players to undo and it would make decisions less meaningful. Maybe the best solution would be to enable this mode after you reach an ending. (I’d also want to be able to skip ahead past passages I’ve already read.)

7 Likes

The approach I have taken in Rez is this:

Rez is built using scenes (units of play) and cards (units of content) where scenes group cards. You can think of a card as being broadly analogous to a Twine passage.

Scenes have a layout into which the cards “played” into the scene get displayed. In the “single” layout there is one card and when another card is played it replaces the previous card.

However there is also a “stack” layout where new cards are appended (or prepended) to the previous cards played and they all get rendered.

Additionally, because a new card is played in response to an event, we typically don’t want to see the same content for the previous card. For example, the card may have presented two choices, but it’s no longer meaningful to present them, so we have the notion of “flipped” content. Each time a new card is played, the previous card gets flipped.

In the example above the flipped content would display something like “You picked option A” as a lead in to the new card played which, presumably, talks about the implication of A and the new choices available due to that choice.

I’m not sure whether it makes more sense to add new content at the top or at the bottom (potentially forcing people to scroll) so I implemented both. I guess it would be easy enough to allow players to decide whether they wanted the game to auto-scroll to display new content in the latter case.

4 Likes

You must always frotz the frugle!

4 Likes

Has there ever been an interpreter that just auto-transcripted everything that it played? Like if you play Zork it makes a Zork folder and logs a transcript of every session: Zork.1.txt Zork.2.txt. …

3 Likes

Not that I know of. It’s a plausible idea given modern storage sizes.

3 Likes

Especially when beta-testing - I can’t count how many times I’ve forgotten to start a transcript or forgotten to turn it back on if I restarted. I’d love an interpreter that just kept records of all playthroughs. The player could choose to delete them of course, but since it’s text it shouldn’t fill up hard drives indiscriminately.

The interpreter could even have an option “Automatically log all transcripts” and allow the user to specify a folder.

6 Likes

Restarting the game should not turn off the transcript if you previously had it on, at least for the Z-machine.

1 Like

Of course. I mean if I turn off my computer and walk away, have a sandwich, tour the English countryside, and come back a week later.

[EDITED TO ADD THE OXFORD COMMA]

5 Likes

I’d love this feature if it came to fruition.

5 Likes

First of all, I would both use and appreciate such a feature.

Secondly, this made me actually lol, because I imagined you literally boarding a flight, landing in London, renting a car, and driving out into the English Countryside… Then all of that in reverse, just to arrive back at your desk and continue with your playthrough of Mentula Macanus: Apocolocyntosis.

3 Likes