The Unix Heritage Society mailing list
 help / color / mirror / Atom feed
From: segaloco via TUHS <tuhs@tuhs.org>
To: Henry Bent <henry.r.bent@gmail.com>
Cc: The Eunuchs Hysterical Society <tuhs@tuhs.org>
Subject: [TUHS] Re: Unix game origins - stories similar to Crowther's Adventure
Date: Wed, 01 Feb 2023 18:33:11 +0000	[thread overview]
Message-ID: <9rlsK1lcp2ffNj2lkBadLwVDPzGlSjgLbwwByJXMv4FDhSsmezMSUlcXw4jZjc0rM8XtULgrAv6I2g-nurUzaS_fZicDHORQVLSU0fzEydY=@protonmail.com> (raw)
In-Reply-To: <CAEdTPBertjtWMaCA5gDbUDjPMgvHwdqHbsxJ9dnw6t2oSWxnWA@mail.gmail.com>

[-- Attachment #1: Type: text/plain, Size: 3336 bytes --]

In the annals of UNIX gaming, have there ever been notable games that have operated as multiple processes, perhaps using formal IPC or even just pipes or shared files for communication between separate processes (games with networking notwithstanding)?

Reason I ask is I've been thinking about the feasibility of such an architecture, what with perhaps a "system server" process that reads various IPC for messages from a "game" process and then internally translates those into X11 calls, OpenGL, etc. Could even be multiple servers for different concerns (display, audio, input, networking obviously).

This would be similar to a multi-threaded engine except that we're using system processes and IPC rather than threads and synchronization primitives (on some implementations, these may converge pretty heavily). An added benefit I could see would be having the one server running with the ability to arbitrate multiple games through the same pipelines. Think something like SDL but running as a server taking IPC calls to do things instead of just a library being called in the same process space. This is probably a bit more Plan 9-ish that UNIX-ish, but would be an interesting use of the system architecture.

A compelling argument for not doing things this way would be platform lock-in, as sure other operating systems would probably provide similar enough process and IPC mechanisms to achieve the same end result, but no such thing would exist on the preponderance of embedded platforms running no OS, such as cartridge-based consoles. Still, I could see such an architecture begetting clean separation of system interfacing from game logic which would then lend itself well to library-ization of the system server part in embedded cases where it has to be directly entered rather than IPC'd to from yonder process. There is then of course the performance hit of communicating between the different components via IPC rather than it all being self-contained, but as we all know, an increase in maintainability and code clarity sometimes makes a little performance and/or size hit worth it.

Anyone know of anyone doing this back before id, Unreal, and Unity cornered the game engine market?

- Matt G.
------- Original Message -------
On Wednesday, February 1st, 2023 at 9:52 AM, Henry Bent <henry.r.bent@gmail.com> wrote:

> On Tue, 31 Jan 2023 at 21:32, Will Senn <will.senn@gmail.com> wrote:
>
>> All,
>>
>> I just saw this over on dragonflydigest.com:
>>
>> https://0j2zj3i75g.unbox.ifarchive.org/0j2zj3i75g/Article.html
>>
>> It's an article from 2007 about the history and genesis of the Colossal Cave Adventure game - replete with lots of pics. What I found fascinating was that the game is based on the author's actual cave explorations vis a vis the real Colossal Cave. Gives you a whole new appreciation for the game.
>
> My uncle, Richard Zopf, did extensive exploration of Mammoth Cave with Will Crowther. My understanding is that Colossal Cave was truly impressive in its ability to replicate the real situations that the cavers faced, especially given the limitations of the storage and processing abilities of the machines at the time. To my mind this stands well apart from the more rudimentary early computer games which were very math/logic driven vs. the concept of an "open world" exploration.
>
> -Henry

[-- Attachment #2: Type: text/html, Size: 5123 bytes --]

  reply	other threads:[~2023-02-01 18:33 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-02-01  2:30 [TUHS] " Will Senn
2023-02-01  2:58 ` [TUHS] " Clem Cole
2023-02-01  4:50   ` Douglas McIlroy
2023-02-01  5:36     ` Rob Pike
2023-02-01 20:23       ` Dave Horsfall
2023-02-02 15:35         ` Marc Donner
2023-02-03  2:15           ` Adam Thornton
2023-02-01  6:27     ` Jonathan Gray
2023-02-01  7:09       ` Jonathan Gray
2023-02-01 14:41 ` Rich Salz
2023-02-01 15:22   ` Will Senn
2023-02-01 17:34     ` Rich Salz
2023-02-01 17:52 ` Henry Bent
2023-02-01 18:33   ` segaloco via TUHS [this message]
2023-02-01 19:09     ` Rich Salz
2023-02-01 19:16       ` Dan Cross
2023-02-01 20:21 Douglas McIlroy
2023-02-01 20:41 ` A. P. Garcia
2023-02-01 20:47   ` ron minnich
2023-02-01 23:31     ` Douglas McIlroy
2023-02-01 23:24 ` Dan Cross
2023-02-02  0:43 Noel Chiappa

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='9rlsK1lcp2ffNj2lkBadLwVDPzGlSjgLbwwByJXMv4FDhSsmezMSUlcXw4jZjc0rM8XtULgrAv6I2g-nurUzaS_fZicDHORQVLSU0fzEydY=@protonmail.com' \
    --to=tuhs@tuhs.org \
    --cc=henry.r.bent@gmail.com \
    --cc=segaloco@protonmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).