• HertzDentalBar@lemmy.blahaj.zone
      link
      fedilink
      English
      arrow-up
      3
      ·
      10 hours ago

      I remember playing ASCII games as a kid, I gotta get back into it. There was a program or website where one could download community created ASCII games and I remember building one or two.

      • tal@lemmy.today
        link
        fedilink
        English
        arrow-up
        3
        ·
        edit-2
        7 hours ago

        I sat down to log into a couple MUDs yesterday. Didn’t stick with it — the combat still hasn’t evolved enough for me — but you could play that on anything capable of displaying text on a screen and running telnet.

        It looks like some crazy person has been doing a TCP/IP stack for the 128K Mac, the first Macintosh ever released, from 1984, as well as a telnet client. So you can technically lug a 42-year-old computer out of an antique store and play currently-being-developed Internet games…though you won’t be getting color, since that came a while down the road.

        If you get some device that can expose a serial console on some system to TCP/IP — not sure how far back you need to go for that — you could technically play it on a teletype from the 1930s.

        The “some device” will have to be later, though, so that’s maybe kinda cheaty.

        Technically, Debian Linux has been run on an Intel CPU from 1971, but it isn’t fast enough to be a practical host for such a teletype in that environment. Even stripped down forms of Linux are going to be “too big” to be such a host.

        It does sound like the Commodore 64 has a package, Novaterm 10, that runs TCP/IP and telnet, but I don’t know whether it can output to the C64’s serial port rather than video display; you could play locally on one of those, but probably not run on a teletype. That being said, it probably shows that it’s technically-possible, since I’m sure that if it can run a virtual terminal program, it has the resources to just dump the text to an actual terminal via a serial port. I’d guess that there’s probably some system out there circa 1980 that someone has probably built that can both run a TCP/IP stack and expose a serial console to a 1930s teletype to play current Internet games.

    • tal@lemmy.today
      link
      fedilink
      English
      arrow-up
      3
      ·
      edit-2
      10 hours ago

      I agree with you that it’s a good game, and it’s very playable on an older computer, but it’s actually not the lightest-weight game from a CPU standpoint. I mean, realistically, that thing should be able to get by with very little CPU usage and essentially none if you’re not pushing buttons, but it actually uses a fair bit of CPU time when you’re just sitting there staring at the screen. It’s actually kind of bugged me, because while it’s irrelevant on a desktop, it really consumes more battery on a not-plugged-in-to-wall-power laptop than is necessary, and it’d otherwise be such a phenomenal game for disconnected laptop use.

      Go run top and just leave the game sitting there and it’ll be keeping an average of multiple cores hot on my laptop at 240 Hz running at vsync rate. And the world state isn’t changing – the game is turn-based.

      You can constrain the framerate down to 10 FPS — and that significantly reduces CPU usage, down to an average of 37% of a core, on my system, at the cost of limiting the speed at which the game runs autoexplore, since it will always draw at least one frame in a given state, and at the cost of making the game feel sluggish and unresponsive.

      And you’ll get that CPU usage even if you turn off all the graphical “glitz” have it just showing ASCII.

      My guess is that they probably could probably benefit by (a) having a lightweight visual “display” thread that doesn’t do anything expensive, just update any animations and draw that to the screen, and if there are no animations, not even run a refresh at all, and (b) having a separate “heavyweight” thread for game logic that only runs if the world state has changed (autoexplore, automove, resting, or the player has pressed a key).

      Cataclysm: Dark Days Ahead, which is a similar game (internally a turn-based game that’s basically generating an ASCII grid that can provide some light graphical glitz and tiles) also consumes a lot of CPU time when idle.

      If you want another game of a similar sort that uses a surprising amount of CPU time, Dwarf Fortress. That being said, Dwarf Fortress is real time, so one can’t beat it up as much for consuming CPU time while the player is idle.