A bullet hell game written in bash

(twitter.com)

104 points | by taviso 121 days ago

9 comments

  • nine_k 121 days ago
    So, the game is written in bash much like AI stuff is written in Python.

    The heavy lifting is done by a native-code library, while the bash code provides the glue and the overall control logic. (Much like having heavy lifting done by PyTorch with Python code providing general guidance.)

    And this is completely fine, to my mind. Bash is intended to be a glue language orchestrating execution of native code. Usually it starts processes, but here it interacts with a native-code library.

    See:

    https://github.com/taviso/ctypes.sh/

    https://github.com/raysan5/raylib

    • Lockal 121 days ago
      I don't agree that the comparison is correct. In modern AI, Python is either used to describe a graph built of predefined operations or as a language that is translated into this graph (or into C++/CUDA, potentially through multiple intermediate representation languages). Once the translation is done, Python, with its GIL and object-based model, is almost not involved.

      In contrast, game uses an imperative, immediate rendering library, where the developer directly controls every sprite with something like `pos += velocity * dt`. It's very classic, and it reminds me of the Touhou PC-98 Restoration Project - https://github.com/nmlgc/ReC98/blob/master/th05/main/boss/b1...

    • PaulHoule 121 days ago
      That ctypes.sh makes me think of Microsoft Powershell which is able to script COM objects much as Visual Basic. It's the moral equivalent of ctypes, although ctypes is in the wild and wooly world of C where there isn't any concept of memory safety, garbage collection and all that, whereas COM provides an OO-like API that looks horribly overengineered from the C world.
  • luma 121 days ago
    Anyone got a link to the repo? Another twitter thread where most of the detail is locked behind a login. Why anyone uses this platform for publishing today is beyond me.
  • gregopet 121 days ago
    bash.. the developer's and the player's experience can't be that different.
  • forrestthewoods 121 days ago
    Hideous, I hate-love it.

    Has anyone made Doom in bash?

  • andybak 121 days ago
    I swear this is a post title I saw the LLM that was trained on HN archives come up with.
    • bitwize 121 days ago
      It'd be peak hackernews (in a good way) if someone saw that AI headline and thought, "Hey, I think I'll actually write that!"
  • hkc88hkc 121 days ago
    Bash, but amazing, lol
  • fc15004 121 days ago
    [flagged]
  • fc15004 121 days ago
    [flagged]
  • fc15004 121 days ago
    [flagged]