Phlog Collection 2025-11-04

I haven't set up an automated way to push my Gopher phlogs from Cyberhole Online up here yet, so I'm just going to manually paste for the moment. So this may be a bit random.

mdh@Aegura:~/Code/CodeJS/Cyberhole/gopher/hole/phlog% cat `ls -1 *.txt|sort -r`|pbcopy

i=== Digital Mark's Phlog ===
2025-11-04 19:06:46 UTC
Momentary Thoughts About Game Design

I've been making games for 46-ish years, and I still don't know how to
make a "compelling narrative". Sometimes I have good gameplay and "kill
the thing" plots.

A few times I've worked at studios and had a writer who could produce
lore text, but we still didn't have much story.

That's why my games are mostly interface first, what does the technology
let me do, then work out some game logic behind it.

I generally reject the narrativist view of games. Games are interaction
+ challenge = fun. Books and movies are characters + plot = fun. Visual
novels combine book style with illustrations and a homeopathic level of
interaction, maybe one choice every 10-20 minutes for most. Modern MMOs
& mobage are largely predefined characters on a rails plot, with a
shooting or action game in between. Designers for these hate the idea
of you having your own character or making plot choices.

What I find interesting is exploring a world, fighting, and building. So
Atari 2600 games are still fascinating; the absolute focus on gameplay
was required by the limitations of the machine. Luanti (and that "mines
craft" game that's like it) is endlessly fun. Juice Galaxy is amazing,
just weird blobby monsters, toys, and vehicles in procgen world. AAA
titles are basically all crap, they have characters I can't stand, doing
things I don't want to do, minutes of fun after hours of hitting X.

Text adventures are in a weird space, where there's varying levels of
exploration or plot railroad, varying levels of character predefinition.
Hitchhiker's Guide to the Galaxy is fun once (possibly frustrating for
months), but it's very linear and you are Arthur Dent, of the late
Earth. Zork and Colossal Cave Adventure are still fun, because there's
no fixed path to solve everything, and you're not defined by the game.

A lot of people do like the excruciatingly long cutscenes and "Press F
to Pay Respects" pseudo-gameplay, I'm well aware I'm an outlier. But
that's why I make my games for me. If someone else has fun, too, that's
a sweet bonus!

2025-10-31 05:10:56 UTC
Cyber Mudhole

Starting on the Lisp Game Jam Autumn 2025
https://itch.io/jam/autumn-lisp-game-jam-2025

Plan is to put up a Terminal that talks to a MUD written in my Kawa
servlet platform.

I wrote a long, mostly aspirational, list of MUD commands inspired by
LambdaMoo and TinyMUD; it's not very like my old combat-oriented
Circle MUD. I doubt I'll get more than a fraction of the commands
done, but if multiple players can move around and say and emote, it's
good enough.

The way this works is there's a Java servlet container, and a single
servlet that takes POST requests for commands, then returns all your
chat history since last call. If it polls every so often with empty
command, it should look real-time-ish, and connection keep-alive
should prevent it from hammering the server.

The servlets are in Kawa Scheme, which compiles to normal enough Java
classes. I'll put the whole framework up on gitlab or whatever as I
get towards the end, it's definitely changing a lot each update right
now.

2025-09-02 13:03:13 UTC
Phlogging Like a Typewriter

One thing that occurs to me when writing gopher phlogs, is the 70-
column limit feels like typing on paper. Get near the end and I have
to guess if the next word will fit or not, and whack the carriage
return DING all the way back. I haven't got in the habit of hyphen-
ating words but I did it right there!

Is the physical act of typing different when you don't have auto
word wrap on? I could vi :set tw=70, but I don't.

2025-09-02 12:32:03 UTC
Mystic Dungeon beta

I have a barely-working version of the Mystic Dungeon, my dungeon
exploration game. Everything in the game system works again,
and I've added three new stores (one you won't find for a while!),
and some secrets to find outside of town.

Right now messaging is incredibly spammy and ugly, using up the full
screen if you move fast. Just wait a few seconds and the messages
will dissipate. I'll fix those in the next pass.

You can save [F3] and load [F2] and it's saved to local storage.

https://cyberhole.online/dungeon

Have fun, and let me know what you think!

2025-08-18 08:34:55 UTC
Amazing (converting MysticDungeon games)

I've now managed to convert one of the MysticDungeon.club games, see
front page of https://cyberhole.online/

That wasn't too hard. It's using like 1/2 of the code of the previous
version, and doesn't rely on Node or have to be built, I can just empty
cache and reload a page. But it's a little harder to debug, eslint
doesn't work well on pile-o-random-js.

Amazing's not that impressive, and I'll probably do LostTreasure and
some other small ones, then get the big stuff converted. PortalWorlds
and Dungeon both rely on a shitload of libraries.

The high score server's gone, which is unfortunate. There's a few
options to replace it. A server running Scheme, of course. Or maybe some
web service that I can ajax out to? Cross-site posting is complicated
now.

2025-08-01 03:30:30 UTC
TinyBasicWeb

Now I have a working boot-to-READY prompt BASIC!
It's pretty primitive still, just enough to do interactive
forms, and I plan to put in some web tech (REMOTE and REDIR)
commands which will make it useful for that.

Currently some BASIC microcomputer games will work in it.

So with that basically (o_o) functional, I can focus on
adding more services to the CYBER HOLE.

2025-07-23 02:06:47 UTC
Gopher Holed

And now the CYBER HOLE has my phlog! I can either log in and
write-phlog.zsh, or do it locally and scp into place, refresh and
it's rebuilt by script.

Just finished the Lispy Gopher Show
gopher://gopher.club/1/users/screwtape
(who hasn't been updating his phlog, but like I'm Mr Reliability?)

RIP Ozzy Osbourne. The best and drunkest of us.

2025-04-27 14:39:03 UTC
Dayglo Decade

I was listening to Children of the CPU
https://childrenofthecpu.bandcamp.com

While testing out my write-phlog script.

2025-04-27 13:47:08 UTC
First post

So driven by my Hypertext post
https://mdhughes.tech/2025/04/22/some-of-my-history-of-hypertext/

I needed to set up Gopher again, and not just on SDF or tilde.town.
Talking to Screwtape & CatK got me moving on it.

Currently I'm running Motsognir,
https://motsognir.sourceforge.net
since it works well on BSD; on MacOS, I had to comment out the "dot
feature" to make it compile, but I changed NoTxtPeriod=1, the default is
just wrong, so it's fine.

Which has made it pretty easy to set up CGI (Common Gateway Interface!)
scripts to generate header, footer, and phlog indexes.

And I use shell scripts to start, stop the server, and generate phlog
posts in my format (TIME.txt filename; TIME, TITLE, blank for body); I
would use RFC822 but it's a little more parsing, and the date format is
wrong.

For client, I mostly test in Lynx
https://lynx.invisible-island.net
but also Lagrange
https://github.com/skyjake/lagrange

Which has revealed a few bugs in how I write gophermaps!
In particular, Lynx doesn't care if you list a text file as a dir or
text or binary, it'll render it anyway. Lagrange is very picky, so a
dumb directory doesn't work with it.

Some of My History of Hypertext

So in 1979, young Digital Mark is shown a computer, a TRS-80 Model I, by 4th-grade teacher. Other kids play Snake, I hit break and type LIST, seeing BASIC code, because I've been reading the instruction card. "I can read and learn this!" Nothing else now matters to Mark.

That summer, I take an adult college summer course on programming. Over the next few years before I get my Atari 800, I use school computers, mostly TRS-80 but some Apple ][, to program obsessively. Libraries and book stores are scoured for information.

The main sources of knowledge for me then were:

  • Stimulating Simulations, by C. William Engel (1977)
  • Creative Computing magazine, ed. David H. Ahl (1974-85)
  • Basic Computer Games, Microcomputer Edition, by David H. Ahl (1978)
  • some TRS-80 Level II BASIC book
  • My Computer Likes Me When I Speak BASIC, by Bob Albrecht, People's Computer Company (1972)
  • Computer Lib/Dream Machines, by Ted Nelson (1974-5)

The first three I could buy, the last two I only ever found in the library. They are now all on Internet Archive. As noted here a few years ago.

Computer Lib is bizarre rantings mixed with really visionary stuff. It's a two-sided flippy book, pages numbered CL 1-68 one side, DM 1-60 the other). Computer Lib is about how computers work "now" (1965-1974), teletypes talking to mainframes or minicomputers. This is important! There's a range of computing levels.

Ted talks about BASIC and how to use it seriously, using arrays as data structures, in a few pages. Some weird stuff about other languages I haven't heard of. More about data structures, links between data in different places. I'M LIKE TEN YEARS OLD, man, you can't dump that on me! I didn't fully understand this stuff until Sedgewick's Algorithms years later.

Political ranting, some of it now unacceptably phrased, but CYBERCRUD is a good primer on how computers aren't the problem, people with computers are the problem. This echoes the People's Computer Company slogans

BASIC is the People's Language!

Use computers FOR people, not against them!

Dream Machines has a 1975 supplement about the Altair, bitmap graphics, and cheap microcomputers, which largely lines up with Computer Lib's earlier predictions. It goes in depth into how you can use graphics, image and audio processing.

If Computers Are The Wave Of The Future, Displays Are The Surfboard

Branching Presentational Systems - Hypermedia

And here he develops a theory of Hypertext, "by which I mean non-sequential writing". Everything you now know about the World Wide Web and GUIs, you pretty much got by way of Ted Nelson, Doug Englebart of NLS, JCR Licklider of Project MAC (multi-user time-sharing), and Ivan Sutherland of Sketch. I read this wide-eyed and believing everything.

The giant over-arching project for this is XANADU (earworm Olivia Newton-John song here). Xanadu is a very well-specified, complex, solves everything system. Ted's argument is that long-run everyone will use his system for every computation. This starts at DM 44, read that entire section if you read nothing else.

Returning CL/DM must've been the hardest thing ever. I read it again a few times over the years. (I have a stack of notes about it from more recent reading, but I'm here staying brief and focused.)

Over the next decade, we got and then slowly lost things like Hypercard. HC's an amazing technology, it is The Future We Didn't Get, because it was Mac-only, monochrome-only, Hypertalk is a somewhat annoying hybrid of BASIC, COBOL, and C, limited to either tiny windows smaller than the small Mac desktop, or full-screen Mac 512x344. Later that got better, and Myst was written in HC + many addons, but it remained a weird silo.

Repeatedly Ted Nelson says Xanadu is coming soon, shares new technical details which conflict with previous statements, various people on his team promote it, then unpromote it. The exchange in Dr Dobb's Journal 1983 disillusions me, convinces me Xanadu will not be coming soon.

The Internet became available to me in 1989, and Gopher came out in 1991, providing a real hypertext solution. It didn't have inline links, "transclusion" (include a chunk from another document), or bidirectional links, but it did let you make complex menus with text, links, images and other media, and interaction with forms/search fields. Gopher became the best way to hyperlink and index everything.

The WWW was not an attractive system until Mosaic came out in 1993, mid-year it got inline image tags and imagemaps as a dumb hack, and Netscape Navigator commercialized it in 1994. Gopher might've survived this except the UMinn administration tried to extort payments for servers in 1993. I moved everything into my web site, as did everyone else.

The thing is, these are not Xanadu. Ted got increasingly strident that the WWW is not Hypertext because it's not bidirectional etc. But of course this is impossible: A local database can be forced to be consistent, but a network of unreliable computers cannot. One-way works with stupid complexity and GeoCities, and two-way does not. Imagine entering a web page and seeing 500 "sites who called here" links, some of them private. Each of them has to validate that it's paid the micropayment for copyright access to the site. It's not "web scale".

In the end, post 2000, there's a demo "release" of Xanadu, with a hand-hacked single-site database, no editor, no way to link your own stuff with it. It's not anything.

More notes to come, we'll be talking about this more on the Lispy Gopher Climate Show every Tuesday midnight UTC (like 17:00 PST). hashtag