[HN Gopher] Show HN: Kaboom.js is a zero-dependency declarative ...
       ___________________________________________________________________
        
       Show HN: Kaboom.js is a zero-dependency declarative JavaScript game
       library
        
       Author : slmjkdbtl
       Score  : 103 points
       Date   : 2021-04-07 18:19 UTC (4 hours ago)
        
 (HTM) web link (kaboomjs.com)
 (TXT) w3m dump (kaboomjs.com)
        
       | sebringj wrote:
       | This is the first time I've seen a dev-made musical intro video
       | for a game platform and it was great!
        
         | searchableguy wrote:
         | Yup, totally awesome.
        
         | slmjkdbtl wrote:
         | Thank you! Had fun working on that hh
        
         | matsemann wrote:
         | The video, song, logo. Everything so fun and cool, made me
         | laugh. Really looks like the author went the extra mile.
        
       | [deleted]
        
       | gremlinsinc wrote:
       | Looks cool, can this work on mobile? Via react native or
       | something?
        
         | slmjkdbtl wrote:
         | It's not on mobile yet, but I'm thinking using QuickJS +
         | platform native APIs to enable them run on native platforms
         | (like React Native but only care about getting window with
         | graphics / audio context, thinking about using sokol for that).
         | But yeah you can always just put a webview and run it.
        
           | tpetry wrote:
           | None of the demos seems to work on mobile. Which is kind of
           | expected as they depend on a spacebar. But even the buttons
           | example does not work as there is no mouse click on mobile?
        
             | slmjkdbtl wrote:
             | yeah, the click ones should be trivial I'll add support now
        
           | abalaji wrote:
           | honestly that could be huge. Imagine a repl.it arcade on iOS,
           | kids would go wild to make stuff their friends could play on
           | their phones.
           | 
           | At least middle school me would have.
        
         | Mobleysoft wrote:
         | Should be possible with Apache Cordova.
        
       | tpetry wrote:
       | That looks like really nice concept for very quick game
       | prototypes.
       | 
       | Is there something similar?
        
         | slmjkdbtl wrote:
         | You mean quick game making tools? Yeah there're some good
         | alternatives like love2d, pico8, compared to these kaboom
         | provide more abstractions and helpers and runs natively on web,
         | but it's also less mature than these since it's much younger
        
           | spicybright wrote:
           | TIC-80 is also another fantasy console like pico8, same idea.
        
             | slmjkdbtl wrote:
             | yea! TIC-80 is probably the best open source one it's
             | written in taste
        
       | pipnonsense wrote:
       | That's interesting. As side-projects I just created two sibling
       | games using JavaScript:
       | 
       | https://www.gameofpainting.com
       | 
       | https://www.paintingpuzzles.com
       | 
       | I optimized for the "fasted path to ship", so I used React only,
       | as it is what I know. The games reflect the limitations of the
       | tools of course. They are just tapping games with simple game
       | logic.
       | 
       | It would be nice to have something more powerful but still in a
       | language that I know (I have no intention of going full game-
       | developer). I'll take a look at it.
        
       | slmjkdbtl wrote:
       | Hi! My name is tga and I'm the author of kaboom.js. I'm working
       | at replit and this is part of the effort of us trying to make
       | game dev more accessible to beginners & intermediate programmers.
       | 
       | Kaboom is like a summary of me trying to learn game dev. There're
       | a lot of tools and most of them tend to get bloaty as they go on,
       | they often require complicated setups and hard to really for
       | beginners to really get started, one goal of kaboom is to allow
       | beginners to get a game up and running with no effort and start
       | enjoying the game dev fun right away.
       | 
       | Using Js is because I want it to run natively on browser, also it
       | seems like the "go-to" beginner language right now, but I'm also
       | thinking about making Kaboom Native where it uses QuickJS +
       | platform native APIs (thinking sokol for that) to run on native
       | platforms, so you can write your game in Js once and run on every
       | platform natively (so unlike other cross platform engines, it
       | doesn't require emscripten / WASM on web)
       | 
       | Inspired by fantasy consoles, there's also a special editor on
       | replit that enables you code and manage / create assets in the
       | same environment, check it out! https://replit.com/kaboom (still
       | in early dev)
       | 
       | Ask me anything!
        
         | dvfjsdhgfv wrote:
         | I just wanted to say thank you, it looks superfun!
        
         | shuding wrote:
         | Wow great work tga, love it!!
        
           | slmjkdbtl wrote:
           | hh thank you shu!
        
         | amasad wrote:
         | Worth noting that while Kaboom.js is aimed at novices, it
         | turned out to be super fun for developers too. Our team is
         | having a lot of fun with it -- you can have an idea write a
         | game in 30 minutes to an hour in typically less than 100 LoC.
         | Some examples from our team and community:
         | 
         | - ReplJewled https://replit.com/@ConnorBrewster/ReplJeweled
         | 
         | - Flappy Mark https://replit.com/@slmjkdbtl/flappymark
         | 
         | - Bamboo Ninja https://replit.com/@RoBlockHead/KaboomJam
         | 
         | - Cookie Vs Oreo https://replit.com/@Coder100/COOKIE-VS-OREOS-
         | KABOOMJS-BOOMOM...
        
         | ngokevin wrote:
         | Cool! Not currently working on it personally anymore but I co-
         | created A-Frame which is also declarative gamedev library
         | (using HTML). Seemed successful at getting non-gamedevs and
         | webdevs to build 3D/VR for the first time, and was popular with
         | educators and kids. An HTML interface at the top level made it
         | much more friendly for people even intimidated by JS.
         | 
         | We were heavily relying on Glitch and driving bunch of traffic
         | to them at first, but now featuring a replit as one of the
         | starter playground examples.
        
           | slmjkdbtl wrote:
           | Hi! A-Frame is super interesting and I love how it has an
           | innovative markup style and have a customizable entity
           | component system at the same time. I've always known about it
           | but never really dived in myself but looks like there's tons
           | of good stuff and inspiration! Will definitely take a closer
           | look. Thanks for replying and creating A-Frame!
        
         | basicallysteve wrote:
         | Hey! So I discovered kaboom.js yesterday and I think it's
         | really cool! I'd like to starting building some games, but I
         | was thinking about maybe making them multiplayer, running
         | commands through websockets or something. I don't see any ways
         | to control character outside of key pressing or clicks. Do you
         | think this would be possible?
        
           | slmjkdbtl wrote:
           | It definitely possible if you build your own networking
           | stack, but native multiplayer support is planned! Also you
           | can control characters through any events, like
           | socket.on("msg", () => { player.move(...) })
        
       | Mobleysoft wrote:
       | This is very cool. What was your inspiration for this?
        
         | slmjkdbtl wrote:
         | Hi! It's mainly a summary of me trying to learn game dev and
         | reflection on current tools, also Scratch kinda inspired the
         | "blocky declarative" style because we hope kids can make games
         | with kaboom with "real code" just after they completed learning
         | Scratch. Also a lot of softwares I like e.g love2d, PICO8,
         | sokol, Amulet, Klik & Play
        
         | MaxLeiter wrote:
         | They didn't create it, this was made by the team at repl.it. In
         | case a mod sees this, it would be great to be able to provide a
         | reason for flagging a submission
         | 
         | Edit: assumptions bad
        
           | amasad wrote:
           | @slmjkdbtl works at Replit and he designed and lead this
           | project :)
        
             | MaxLeiter wrote:
             | Ah my mistake! Awesome to see. Thanks for all the great
             | work
        
       | abalaji wrote:
       | I wasn't alive for the web in the '90s but I really dig the retro
       | vibe
       | 
       | Super neat project!
        
       | evo_9 wrote:
       | I expected to see an example of this game written in this
       | library. That would be an added clever bonus to the name of the
       | project: https://en.wikipedia.org/wiki/Kaboom!_(video_game)
        
       ___________________________________________________________________
       (page generated 2021-04-07 23:01 UTC)