40 comments

  • marcingas 2 hours ago ago

    Author here! Thanks for posting! This game is written in a Clojure-like programming language I've made. So this is a (B)rogue-like in a Clojure-like :)

    What I think is interesting is that this game computes the entire world state each tick and does so efficiently thanks to persistent data structures.

    To anyone who dared to fire it up: thank you for playing, I'm curious what you think!

    • biosubterranean 8 minutes ago ago

      Little buggy (dying from things not on the screen), but I love the dwarf fortress esque vibes

    • jackpirate an hour ago ago

      The name let-go of your programming language is awesome!

      • marcingas an hour ago ago

        Thanks! Please check it out and leave me a star if you like it :)

  • Jeremy1026 2 hours ago ago

    Gets stuck in a redirect loop with the message:

    > Interactive input unavailable (no cross-origin isolation).

    > Deploy coi-serviceworker-js alongside this file.

    in Safari on 26.4

  • pgt an hour ago ago

    Not a Rogue-like specialist, it's hard – I haven't made it out of level 1 yet.

  • Parcival 3 hours ago ago

    Pretty fun! I keep getting instantly killed by things though and I'm not sure why, possibly a bug.

    • andai 3 hours ago ago

      I see you haven't played Noita!

      • marcingas an hour ago ago

        Noita was another inspiartion when making this - the inverted power curve is real! Start squishy, become a god, die anyway.

      • CyberShadow an hour ago ago

        No, I think I'm seeing the same bug. Time seems to sometimes subjectively freeze:

            ─── Messages ───                                                                                                                                                                                                              
              Old man shuts the gate behind you. You hear him mutter "every time, I swear..."                                                                                                                                              
              You must retrieve the Amulet of Lost Semicolons.                                                                                                                                                                             
              You kill the rat! (sneak attack!)                                                                                                                                                                                            
              The rat squeals and dies!                                                                                                                                                                                                    
              You wait. (x10)                                                                                                                                 ᛜ                                                                            
            ᚢ You kill the rat! (sneak attack!)                                                             ᛉ                                                                                                                              
              The rat squeals and dies!                                                                                                                                                                                                    
              You hear muttering.                                                  ᛋ                                                                                                                                                       
              You hear muttering.                                                                                                                                                                                                          
              You hear muttering.                                                                                                                                                                                                          
              You hear a distant creak.                                                                                                                       ᛖ                                                     ᛃ                      
              The runestone crumbles as you touch it. You learn: ᛟ means "ice"!                                               ᛚ                                                                                                            
              You hear a distant creak.                                                                                                                                                                                                    
              The goblin misses you. (x3)                                                                                                                                                                                                  
              The goblin hits you for 4.                                                                                                                                                                                                   
              The goblin hits you for 3.                                                                                                           ᛏ                                                                                       
              The goblin hits you for 4.                                                                                                                                                                                                   
              The goblin hits you for 3.                                                                                                                                                                                                   
              The goblin misses you.                                                                                                 ᛚ                                                                                                     
              The goblin hits you for 4.                                                                                                                                                                                                   
              The goblin hits you for 2.                                                                                                                                                                                                   
              The goblin hits you for 4.                                                                                                                                                                                                   
              The goblin misses you.                                                                                                                                                                                                       
              The goblin hits you for 2.                                                                                                                                                                                                   
              The goblin misses you. (x2)                                                                                                                                                                                                  
              The goblin hits you for 2.                                                                                                                                                                                                   
              The goblin kills you!                                                                                                                                                                                                        
              You die...
        
        Note how there were no user action messages during the time the goblin was attacking.
        • marcingas an hour ago ago

          Definitely a bug. I'll look into this at some point. Please note that this is not a finished game by any means. If anyone asked I'd call it a tech demo at this point :)

          • CyberShadow 19 minutes ago ago

            Seems to be that the sort function accepts a ternary predicate but then passes it to an implementation accepting a boolean one?

        • fhn an hour ago ago

          yeah. something is wrong. You don't even get to fight back.

    • devindotcom 2 hours ago ago

      that's actually a beloved feature of "true" roguelikes

  • gchamonlive 3 hours ago ago

    Reminds me a lot of NetHack, good times

  • Razengan 3 hours ago ago

    Noun of Noun

  • sandoze 3 hours ago ago

    No credit for the art direction and inspiration? Brogue?

    Or did I miss the attribution?

    * Edit: I’m not looking for the downvotes or to stir things up. I’m simply calling out that this is a small niche community we notice these things, we’re very free with our code, and copy is a compliment, but so is attribution.

    The author wasn’t so much inspired the by Brogue style, but copied it directly down to the animations and ASCII.

    • bayarearefugee 3 hours ago ago

      > No credit for the art direction and inspiration? Brogue?

      In the age of LLMs the "author" might not even know where the art direction and inspiration came from!

      • marcingas 2 hours ago ago

        I know, this is intentional :)

        I took things I like from Brogue and added my own spin on it.

    • somewhatgoated 3 hours ago ago

      Calling it rogue-like is basically attribution since Brogue is just the follow-up to Rogue which invented the genre

      • sandoze 3 hours ago ago

        I’ll be sure to keep that in mind with my next plumber platformer

        • somewhatgoated an hour ago ago

          No one calls them plumber platformer though…

          If you call it “Mario-like” then I would say most people would understand where the inspiration comes from.

    • marcingas 2 hours ago ago

      yeah, this is a Brogue-like. I love Brogue and have been inspired by it. XsofY is not an exact clone but I've studied Brogue C source heavily when making this.

      I'll link to Brogue in the README :)

      • sandoze 2 hours ago ago

        Amazing and great work!

    • deathanatos 2 hours ago ago

      While I can see perhaps a claim of "inspiration", when I put Brogue & this side-by-side, while artistically there is similarity, I wouldn't say "copied".

      Brouge isn't the only rouge-like with LoS mechanics.

      • marcingas an hour ago ago

        Brogue is insanely well balanced and ingeniously designed. XsofY is a mere tribute ;)

    • BeetleB 3 hours ago ago

      Wouldn't the credit go to ... rogue?

  • otikik 2 hours ago ago

    Found it a bit annoying having to press 'i' at the start in order to equip the dagger and armor that were on my backpack, but well done.

    • fhn an hour ago ago

      yep. should be equipped from the start.

    • marcingas an hour ago ago

      Agree, will patch this.

  • bennettpompi1 3 hours ago ago

    fun project!

  • butz 41 minutes ago ago

    [dead]

  • binary0010 33 minutes ago ago

    Isn't this the kind of thing you can essentially fully offload to Claude code these days? Don't really get the point of these tiny primarily llm generated game clones tbh.

    • marcingas 25 minutes ago ago

      I see your point but I like to think it's not as sloppy as you'd expect. This one is written in a programming language I've been making since 2021 and it's not a direct Brogue clone despite its looks.

    • frakt0x90 27 minutes ago ago

      Is this a troll comment? I don't see where the author used AI to generate the code and if you don't see the point of experimenting with technology, you're on the wrong website.