Show HN: QBasic Gorillas (Repeeled)

(gameswithtony.com)

27 points | by TonyAlicea10 a day ago ago

25 comments

  • rjh29 9 hours ago ago

    "practice techniques for AI-assisted development"

    I guess people don't like to admit that AI is doing 95% of their job so they pretend they are "practicing techniques" or "experimenting with new models", or "heavily planning the spec"

    Writing what you want in English and having the AI spit it out does not take any skill anymore, it's not 2022.

    • TonyAlicea10 8 hours ago ago

      There’s a marked difference in quality depending on context, usage of sub-agents, initial specs, and model-wise a big difference from what Opus would produce and Fable.

      I’m not saying I’m hand coding, but saying getting good outputs doesn’t take any technique means your definition of good outputs probably isn’t very refined. And saying it hasn’t taken technique for 4 years is just flat wrong.

      • rjh29 7 hours ago ago

        I agree there is some technique involved. It's just so trivial compared to hand coding that I find the comparison meaningless.

  • BrunkenClaas 11 hours ago ago

    Gorillas was the first game I "learned" programming on as a kid. Fun times going through the source code without understanding anything and inferring it by my self. Well, sort of. :)

    • TonyAlicea10 8 hours ago ago

      Same. This was true for so many of us. An open source education.

  • vunderba a day ago ago

    As somebody who grew up in the era of MS-DOS and QBASIC - it's pretty amusing to see two AI-assisted GORILLA.BAS web games in the past week.

    https://news.ycombinator.com/item?id=48856350

    Can also play the original as well online

    https://classicreload.com/play/qbasic-gorillas.html

    Feedback

    - the wind/round text should NOT be placed over buildings because.... one of the buildings is gray thus making it almost impossible to read.

    - I'd honestly get rid of the pseudo-CRT scanline filter - it looks grainy more than anything. For a better reference see https://github.com/gingerbeardman/webgl-crt-shader

    - When implementing camera follow one thing you need is a sort of "grace window". Right now it's so tightly coupled to the movement of the banana it practically gives you whiplash.

    • bashtoni 21 hours ago ago

      I don't know if the poster changed the filter after reading your comment, but the filter that is there now looks great to my eyes.

      • vunderba 21 hours ago ago

        I don't think they updated it - it still looks a very simplistic combination of slightly high frequency noise + artificial horz scanlines.

        I grew up in the era, and a couple of my buddies still keep a few CRTs for playing NES games so its immediately apparent to me. Similar to when laymen use AI to generate "pixel art" without doing any grid alignment or palette reduction.

        Retroarch also has some decent approximations of CRT scanline using shaders as well (see crt-geom crt-lottes)

        https://www.retroarch.com/?page=shaders

        • TonyAlicea10 21 hours ago ago

          I understand, I'm not going for accuracy, just suggestion. For someone like you it won't feel right, I totally get it.

      • TonyAlicea10 21 hours ago ago

        Nope, haven't changed it! I think it's an aesthetic preference thing.

    • TonyAlicea10 21 hours ago ago

      I've made two updates: the wind and round text should be more legible with a slightly transparent background under it. The camera is less whiplash-y and pauses for a moment after the banana hit if it's zoomed out and the zoom in is a bit slower.

    • TonyAlicea10 a day ago ago

      I hadn’t seen the other one! I grew up with this as well.

      I like the camera grace window idea. I’ve been pondering how to handle the post-hit zoom in.

      Good call on the wind text. I like the filter (?). I’ll look at your link.

      Thanks for the feedback!

  • pimlottc a day ago ago

    The arrow length does not represent power accurately, There's a minimum arrow length even when power is nearly 0, which means when the arrow is twice as long, the power is actually almost 50 times higher! It should be directly proportional. Perhaps there should be different indicators for "power" and "direction" -- maybe a fixed-length dotted line arrow for direction? And/or a power bar that is not anchored to the player position?

    The arrow for wind strength also seems to be a different scale, making it hard to judge how much to compensate.

    • TonyAlicea10 a day ago ago

      Fair. This is a direct port in some areas of the 1991 game, which strategically was more try something then dial it in. I’ll ponder. It’s almost arcade vs simulation in some ways.

      That is, if you can calculate it too easily then the first player always has a huge advantage.

  • elsig60 a day ago ago

    I like it. I know it's silly, but I could clearly waste time on this. BTW great idea to build fun stuff to practice new tools.

    • TonyAlicea10 a day ago ago

      Yes! Fun things that either you’d never have taken the time to build otherwise, or recreations of things that you know well.

      Things where you know how they’re supposed to make you feel (like games from childhood), and getting that experience match is an exercise.

  • disillusionist a day ago ago

    holy gorilla! i think QBasic Gorillas is the first graphics game i have memory of playing as a child. i remember attempting to read the code as a kid and being wildly confused by it. thanks for the brief trip down memory lane.

    • TonyAlicea10 a day ago ago

      I think the first one for me was The Oregon Trail followed shortly by QBasic Gorillas and Nibbles. It was my first step in coding beyond Turtle Graphics on an Apple from even earlier in childhood.

      Opening up the QBasic source code was eye opening for me: that computers weren't the realm of hackers typing incomprehensible text on TV and swapping floppy disks, but something that could start to make sense. My TRS-80 came next, and, for me, the rest was history.

      Good memories. I wonder what the memories will be for kids right now in the age of LLMs.

  • jsmo 18 hours ago ago

    Amazing, better than when I was a kid

    • TonyAlicea10 18 hours ago ago

      Thank you! I tried to add just a little snazz without changing the core.

  • Dwedit a day ago ago

    How much is yours, and how much is the LLM's?

    • TonyAlicea10 a day ago ago

      Code-wise, mostly LLM. I gave it the original QBasic source code so that's not mine either.

      This experiment was a guidance experiment for me with Fable. Heavy spec and planning architecturally and UX, and strictly no JS frameworks or dependencies.

      I do these kind of experiments with new models, and Fable has been the most successful so far for capturing the intended UX and feel per spec.

  • fragmede 10 hours ago ago

    There's a different input type for numbers, which power and angle are going to be, vs full text input.

  • netsharc a day ago ago

    Trying to aim with the mouse immediately shows me "made by a fucking clanker"...

    • TonyAlicea10 a day ago ago

      I did let the LLM handle the mouse and touch aiming for v1. That’s an experiment as I prefer typing in the boxes or using arrow keys.

      I think it needs tweaking to let you hone in a value better. What are you thinking?