FPS.cob: A first person shooter in COBOL

(github.com)

46 points | by MBCook 1 hour ago

6 comments

  • ltheanine 1 hour ago
    It would be nice to have screenshots. Also it’s just a single commit, did you use AI? Quoting the readme: “FPS.cob is what you get when you decide that game development is too easy nowadays”.
    • networked 56 minutes ago
      Submitted a PR: https://github.com/icitry/FPS.cob/pull/6/changes. You can see a screenshot at the link.
    • vintermann 56 minutes ago
      I hope for their sake that it's an agentic AI experiment.
      • moregrist 12 minutes ago
        Why the negativity?

        If someone wants to have fun in COBOL, let them have fun in COBOL.

        If it’s agentic fun, that’s cool. If it’s an interest in the language, that’s cool. It’s not like you have to have an ROI for a fun side project.

  • petercooper 1 hour ago
    As a few people have asked for screenshots, I spun it up. Here's a video of the basic gameplay: https://peterc.org/misc/fpscob.mp4 .. it's clunky, but it does play.
  • bottlepalm 59 minutes ago
    You know what, that is some pretty readable code.. COBOL might have been on to something there. I've gotten so used to syntax soup this is refreshing.

    https://github.com/icitry/FPS.cob/blob/main/fps.cob

    • giraffe_lady 46 minutes ago
      I had to get into an old tcl program for work recently and had the same thought. I wouldn't necessarily pick it today but it was kind of nice in a way that's unfamiliar to me from modern development.
      • moregrist 8 minutes ago
        The tcl syntax is fine. And modern tcl is fine.

        But tcl 7.x and before was a pure string-based language. Everything was essentially a eval(). People would hit syntax errors on production code.

        Fun, painful times.

        The flip side: the interpreter is super simple and fun to write.

  • tlb 55 minutes ago
    They should compile it to WASM and host it.
  • spzb 1 hour ago
    Doesn't run for me. Just I/O errors and quits.
  • rroriz 1 hour ago
    Come on, we need screenshots!