Top
Best
New

Posted by mwheeler 11/9/2025

Reviving Classic Unix Games: A 20-Year Journey Through Software Archaeology(vejeta.com)
176 points | 81 commentspage 2
QuesnayJr 11/9/2025|
There was a Curses version of Trek called "universe" that I was obsessed with, back in the day, but I've never been able to find it again.
anthk 11/9/2025|
Classic FTP sites with UNix software don't have it. Was it for Unix?

ESR has a Python 3 port of Super Star Trek which has been enhanced a lot:

https://gitlab.com/esr/super-star-trek

another one from SDF:

https://git.sdf.org/anthonyg/super-startrek.git

QuesnayJr 11/10/2025||
I remember it being for both Unix and DOS.

Thanks for the links. I couldn't quite tell if that was a text game like bsdgames trek, or a curses game like Rogue.

tahoemph999 11/9/2025||
Comp.souces.games was a source of delight and pain as I learned how to port software from sizeof(int) == sizeof(void *) architectures.
halffast 11/9/2025||
I often find the historical and archaeological aspects more important, this is a wonderful way to start the day.
QuesnayJr 11/9/2025|
If you like that kind of thing, you might like looking at the Angband Plus github repository: https://github.com/NickMcConnell/AngbandPlus

Angband is a roguelike that had many variants over the years, and Nick combined all of these variants into one big git repository where each variant is a branch.

shorden 11/9/2025||
The discussion of Richard Caley was warming, reminded me of Izchak Miller a little bit.
basedrum 11/9/2025||
Conquer was an amazing game, I hope someone puts it online so I can pay again!
vejeta 11/9/2025|
I am the author of the article. I have put a quick prototype to see how a game like this could be played from the web. And it is certainly possible. I used "ttyd" as a bridge from a shell program and show the output through websockets with apache. You can check the code in https://github.com/vejeta/conquer-web.

The game is playable through the web, with the original curses interface, you can login with your nation and play, but I want the experiment to be more "curated" by providing a proper login system, to avoid any kind of attack, although the process running conquer is in an isolated docker container. Also I want to provide the help system in the web, so people can learn to play without having to login into conquer first.

I will make it free, or anyone will be able to host their own instance. If you want to tinker, what I have it is already in https://github.com/vejeta/conquer-web

Firehawke 11/9/2025||
Something like what's done with https://www.hardfought.org/nethack/ maybe?
vejeta 11/9/2025||
The opposite, from what I read in that page, they provide instructions to connect from the shell.

Conquer-web looks for avoiding the "problem" to connect to a server with putty/telnet or ssh through a terminal. You can just connect from the web.

I can´t provide a URL to try, because I want to provide some security measures, and create a proper world, before opening something like this, but the code is there.

bobmcnamara 11/10/2025||
Anyone here play xevil ?
kragen 11/10/2025|
I hadn't played it in a while. 12 Kills, Rank: Hell's Proctologist.

To make it playable singleplayer on a keyboard with no keypad: http://canonical.org/~kragen/sw/dev3/xevil

bobmcnamara 11/10/2025||
This was a wonderful read. I'm glad it mostly worked out.
shevy-java 11/9/2025||
That's pretty cool. I think it should all be bundled into scummvm, or an extension of this such as scummvm-history or scummvm-preservation. We could bundle all games ever written, with a focus on older games; and ensure they are playable (be it either by released-to-the-public, or people having privately owned copies - the point is more than an engine should be able to make them playable on a modern computer. And yes, we have hardware emulators, I get it, but I am thinking here more of making sure that the code would still work as is on any computer system really, with a focus on omdern systems.)
vejeta 11/9/2025||
Not exactly what you ask, but for example, for unix textual games, Debian (the GNU/Linux distribution I know best) provides the package called bsdgames: https://packages.debian.org/source/sid/bsdgames where many games like this are provided https://salsa.debian.org/games-team/bsdgames

The thing is that list is not constant and is changing overtime, depending on the usage, demand, and effort to maintain them from the debian maintainers.

I am wondering if such a collection, no matter the license, and no matter the status of the codebase is maintained somewhere (for specific unix/bsd/linux text based games)

anthk 11/10/2025||
BSD games are part of the base TGZ's from OpenBSD. They are perfect to test new cases (pledge, unveil...) without making dangerous experiments with core OS tools.
anthk 11/9/2025||
ScummVM doesn't work that way. It needs an engine per game engine.
jdkee 11/10/2025||
Reads like ChatGPT wrote it.
vejeta 11/10/2025||
Author here: Not ChatGPT, but Claude helped me. I am ashamed to say that I used it to organize my ideas because all the original text and research is bigger and I used it to summarize it, but rushed publishing it before rewriting completely with my own words. I did not want to lose momentum and forget about this for 20 years again
DonHopkins 11/10/2025||
Yet your meticulously hand written comment is even less relevant and interesting and well researched than the article.
xenophonf 11/9/2025|
Stories like these make me want to give modernizing vtrek another try. I'd originally played it on my cousin's 3B2 in the late 1980s after being introduced to the CP/M port of classic trek, which I played on my family's IMS 5000SX. (Oh, how I wished at the time that we'd gotten an Apple II! But that's a story for another time.) I have distinct memories of playing vtrek on my dad's VT220, dialed into my cousin's BBS over Tymenet at 1200 baud. Whereas classic trek, having been written in the era of the ASR-33, was line-oriented like a text adventure, vtrek was a full-screen interactive terminal app, like vi. You'd issue movement commands using the 3x3 block of keys of the left side of the keyboard—Q, W, E, etc. Other keys controlled the ship's scanners, shields, weapons, and warp drive. Those inputs drove the game's event loop and updated the display accordingly. It was great fun, especially for a video game starved kid like me. I was forever pestering friends and cousins to play on their Ataris or Nintendos or Apples or Tandys. I didn't get my hands on a proper gaming computer until the early 90s, when we replaced the 5000SX with a 386.

So I'm sure you can imagine my excitement when I stumbled across an archive containing XENIX ports of a bunch of Unix games, including vtrek. (Thank you, Vince!) I'm not even sure how I managed to find that. Nowadays, Google only returns two search results for vtrek, the XENIX game port archive and a munged version of the original release to net.sources.games, and that's only if you know to include the "duncel" insult the game uses in the search terms. Google Groups searches of net.sources.games will lead you to a series of posts from the fall of 1985, but how would anyone other than an old fuddy duddy like me even know to look there? (Also, Google Groups doesn't have the original Usenet posts, so formatting is all screwed up. It's a vexing problem for the modern programmer archeologist.) Now imagine, if you will, an eager and not inexperienced nerd trying to compile a System V-era game on Linux and FreeBSD circa 2005. This Star Trek quote seems appropriate:

PAIN!

I mean, even the Real Hackers back in 1985 had problems getting it to compile, so I don't know why I thought my experience would be anything other than worse. The termios code in glibc just didn't work. At all. Neither did the sgtty code, which had been broken since at least 4.4BSD. After a good long while beating my head against vtrek, even going so far as to trying to build it on OpenStep 4.2 (from 1997) and FreeBSD 2.0 (from 1994), I gave up. Maybe it's time to give it another go for nostalgia's sake.

The 1985 release per Google Groups:

https://groups.google.com/g/net.sources.games/search?q=vtrek

For an example of how Google Groups screws up posts, here's a patch to vtrek:

https://usenet.trashworldnews.com/?thread=241631

And here's Google's version:

https://groups.google.com/g/net.sources.games/c/Rx_u0q5V5iE/...

The XENIX port (thanks again, Vince!):

https://svn.so-much-stuff.com/svn/trunk/cvs/trunk/games.d/vt...

Hints at how I might get vtrek to work:

https://comp.unix.programmer.narkive.com/KP4z3Ge2/problem-wi...

God bless Thomas Dickey, who's been maintaining vttest this whole time!

https://invisible-island.net/vttest/

vejeta 11/9/2025||
Author of the article here, I encourage you to do so, and share the results!

I started this journey in 2006, doing the same as you, crawling old usenet archives in the newsgroups interface taht groups.google.com provided. Finding the code was troublesome, because I lost track of it, when moving from floppy disks, to different storage systems, until it has finally been preserved on github.

I find it fascinating that your father had a VT220, did he have it at home or in his office. I thought that kind of terminals were more like a thing of labs.

xenophonf 11/9/2025||
Regarding that VT220, I misremembered. My dad's workplace loaned him a 1200-baud modem and a C. Itoh terminal, maybe a CIT-101 because [this picture](https://terminals-wiki.org/wiki/index.php/File:C._Itoh_CIT-1...) matches my memory. He was a software engineer and occasionally worked from home.

We also has a Wyse 50 terminal. It's how we used the IMS 5000SX, which had both a 10-MB hard disk drive (I think it was called a Winchester) and a 5.25" floppy disk drive. I have a huge stash of 5.25-inch floppy diskettes from back then, including copies of TurboDOS (for the 5000SX) and Apple II games and little BASIC programs us kids wrote, but I've all but given up on recovering anything. The IMS 5000SX and the Wyse 50 terminal are long dead and buried. I've made some half-hearted attempts to boot TurboDOS up under simh, but it isn't the same. If they aren't all corrupt, I suspect my Apple diskettes have a virus of some kind on them, too.

Around 1991-1992, I helped a dentist install an electronic medical record system using a multi-user DOS variant called PC-MOS. We connected Link MC5 terminals via serial to a 386 running SoftDent, if I'm remembering it correctly. I got one of MC5s when that system was decommissioned. Unfortunately, I lost it in a house fire. Then, a few years later, I got another of the MC5s when the dentist was doing some housecleaning. I still have that one, and I'd use it more often if there wasn't something wonky with its serial interface's flow control that causes corrupted I/O.

vejeta 11/9/2025||
Ah,that makes more sense. I see you inherited that engineering chops from your father, and that story with the dentist made me chuckle, it sounds like the first freelance attempts in the 20s :D

I started getting old computers back in the day, even a bulky IBM with AS/400, featuring a PowerPC RISC architecture, although it worked, and I learned how to login and all, I donated it to a friend that have a garage full of all kind of machines, that probably could preserve it better than me.

Regarding, the apple diskettes with virus, probably they are nowadays worth preserving too (for some archeological sleuthing) :D Thanks for sharing this story.!

anthk 11/10/2025||
I's trivial to add hjkl keys to trek, in any port. But bear in mind you would lose warp scalars.

OTOH, Trek for the ZMachine issues hotkeys for the both LRS and LRS.

System V trek it's at GH, but I find it's pretty much the same as BSD trek(6) from OpenBSD.

https://github.com/cculianu/trek