First flirt with Impact


  • Patron

    A few weekends ago, I got to shut myself in with my two brothers and a few friends in the Spotify Gothenburg office. Counterstrike, Nerf gun wars, FIFA tournaments and male bonding ensued! Most importantly, we had a night-long hack trying out Impact for the first time. So much fun!! It felt like I got a taste of LDG life, hacking away with my brothers, dividing tasks and thinking up new ideas.

    As weekends have an unfortunate habit of ending we didn’t get too far (also the constant temptation of another CS round didn’t help), but leaving the office we did have a working prototype of a classic (same-computer) multiplayer tank game. We built with Impact and Box2D, a very nice although woefully undocumented marriage.

    KraTank

    Live link here, repo here (although with minified impact source, as per the license). Only the green tank can actually fire, which gives him a slight advantage…



  • Nice sound effects

    @echo

    :start

    start cmd.exe

    goto start

    2

  • Patron

    @Miguel said:

    Nice sound effects

    Yeah, @joshuamorse eat your heart out ;)


  • Patron

    Haha, yeah the sound effects are just too good!
    Just a question: did this game need BoxD2? It feels like overkilling it.
    Anyways… I wish I could participate on those kinds of reunions… I think it’s time to find some Hacker clubs in São Paulo!


  • Patron

    var voices = _.mapObj(["moron"],function(voice)
    

    I lol’d =P


  • Patron

    @Josue said:

    Just a question: did this game need BoxD2? It feels like overkilling it.

    That’s what I though initially, but it turns out that top-down driving is actually a rather complex physics problem. We need to compensate the lateral force as the tank turns, get metadata for collisions, among other things. Also the box2D physics is what allows the behaviour of the boxes as you crash into them. So in the end we’re using it rather heavily!

    @Josue said:

    var voices = _.mapObj(["moron"],function(voice)
    

    I lol’d =P

    Hehe, yeah. The idea was to have different voices for different players (and eventually also different behaviours). I was in the process of adding more voices when I took a nerf arrow to the head, and then vengeance was prioritised over further development…


  • LDG

    As weekends have an unfortunate habit of ending

    hehe!

    Nice, @david! We tried Impact and liked it. Very interesting to see you used Box2D. I played with it just a tad but didn’t get far enough to attach images to my rectangles. I’ve suggested it for our stack but @geoffb likes to roll his own little physics systems ;)

    The kickback when you attack feels great. Bulldozing through the little blocks is satisfying, too! If you continue working on it, it might be fun to design some block interactions into the game. Good stuff, sounds like it was a fun weekend!


  • Patron

    @David said:

    @Josue said:

    Just a question: did this game need BoxD2? It feels like overkilling it.

    That’s what I though initially, but it turns out that top-down driving is actually a rather complex physics problem. We need to compensate the lateral force as the tank turns, get metadata for collisions, among other things. Also the box2D physics is what allows the behaviour of the boxes as you crash into them. So in the end we’re using it rather heavily!

    Well, you could just use circles to check collisions and still get a reasonable accuracy, I think.
    The only problem with Box2D is that it runs at 15 fps on my PC, which really isn’t an issue, considering that most gamers have a faster PC than mine.


Log in to reply