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.