119 comments

  • pvsukale3 2321 days ago
    I opened this game in an incognito tab. And started dev tools. The entire game is only 2.8 MB. It loads fast. Such graphics, much small. A lesson for modern web developers about website obesity and performance.
    • WhitneyLand 2321 days ago
      Yes, also the immediacy of experience. No signup, no prompts or forms, no friction. Just one click and you’re immersed in the action.

      When companies clutter first experience with legal disclaimers, signup offers, and every other thing, I wonder if they are always carefully balancing the competing interests of business and product design as a big picture weighing everything together.

      To the extent they do that’s great, but it seems sometimes its a lawyer trying to do and think only of their job, a marketing person only thinking of their job, sales only thinking about revenue, rather than globally optimized decision.

      • rictic 2321 days ago
        And developers only thinking about the development experience. In my next project I'm going to monitor the gzipped size of my deployed site as part of continuous integration.
        • potench 2321 days ago
          npm bundlesize might help you: https://github.com/siddharthkp/bundlesize
          • kevas 2321 days ago
            This is what gets me... here's a dependency to reduce the size of your dependencies. I understand that it's useful, but at what point enough?
            • yoz-y 2321 days ago
              It is a development dependency though. So it does not get included in the final bundle at all.
    • chickenfries 2321 days ago
      I mean this is nice but it's really not a lesson for web developers. The fact that this is 2.8mb doesn't really teach a web developer any lessons, unless you think that large website payloads exist because developers are literally too lazy or don't know how asset optimization works.

      Instead, having worked in web development, I know that website payload size is often driven by having to include vendored javascript for business reasons (analytics and social are big culprits) or because your boss doesn't give you the time to focus on performance because for the business, it is good enough and they want to use their limited web development resources to do something other than shrinking javascript payloads.

      Another thing, you're impressed by the graphics and how the developer was able to include them while keeping the payload small. It seems to be made using vectors and particle effects. Both of these techniques are not heavy in terms of payload. Shaders and particle effects are generally very small amounts of code. Think about how this is different for a website that heavily relies on all sorts of user-generated content: jpgs, mp4, gif, png, etc. Much larger assets than a few shaders and svg.

      • rev_bird 2321 days ago
        >unless you think that large website payloads exist because developers are literally too lazy or don't know how asset optimization works.

        For what it's worth, I do think this. It's easy to just drag another JS library into your code without thinking of how long it's going to take to load.

        • chickenfries 2321 days ago
          I don't know what to tell you if you're convinced that's the problem. I know and work with many web developers who do care about performance. I follow the blogs of many web developers who write about performance.

          I don't doubt that there are junior web developers who don't know much better. But I don't really meet anyone who says that they just don't care about performance.

          • debaserab2 2321 days ago
            Caring about performance means weighing the decision carefully when choosing vendor libraries that fill up your payload. You can consciously care about performance but still be negligent to the things that affect it.

            I see competent devs reach for libraries all the time when a simple solution already exists within the language. It's easy to feel like you're doing the right thing by not reinventing the wheel.

            Areas I see this happening a lot in are anything dealing with file systems, HTTP request/responses, database connections, DOM/string manipulation/parsing/validation. The common theme among all these things is usually a lack of understanding of what the library/package does well enough to implement the specific use case needed.

          • BurningFrog 2321 days ago
            Let me just point out that you can care deeply about performance and still lack the skills to achieve it.
            • chickenfries 2321 days ago
              Yes, I agreed with you in my post.

              > I don't doubt that there are junior web developers who don't know much better.

              I just think it's very... puritanical the way that people bemoan the state of websites as a personal failing of web developers as a profession rather than the a result of what kind of deliverables their employers care about and are willing to pay for.

              • CaptSpify 2320 days ago
                Whenever I see the term "web developers" in this context, I'm assuming it means all of the decisions they make given the requirements and inputs from others in the business.

                I think the web is currently terrible and I think modern web-development is to blame, but that includes the people behind the web-devs making the decisions that are being pushed onto the web-devs.

                There are a lot of things to blame for the current state of the web, but ultimately the current practice of web-development (and whatever behind-the-scenes processes that involves) is clearly the biggest reason why.

                • chickenfries 2320 days ago
                  See in my mind that’s like blaming construction workers for condos built quickly with shoddy materials. I don’t choose the materials I work with most of the time. I have worked on maybe one greenfield application in my entire life. It was really small and performed well. Everything else has been making the best out of bad decisions made by other people.
                  • CaptSpify 2320 days ago
                    I agree that it isn't fair, but that's also just how it goes. I get blamed all the time for poor decisions made by my group, even if I agree that they are poor decisions.
        • kbutler 2320 days ago
          Website payload is easily measurable (it is probably the most easily measurable factor), and optimizing it is attractive to developers. That doesn't mean it is the most important factor, much less the only important aspect of development.

          Rather than "lazy" or "don't know", how about:

          - it's fast enough

          - have other priorities (security, stability, usability, functionality)

          - optimize developer time

          ...

          • TeMPOraL 2320 days ago
            > it's fast enough

            It's fast enough for people with as good computers and Internet connections as me, who are also employed at the same company as I am, and so do not use anything but the product on their computer at the same time.

            > optimize developer time

            Saving 1h for a developer for each 30min wasted over the lifetime of the application * number of users. Yeah, that scales right. Electricity is free too.

            • kbutler 2320 days ago
              So you're writing all your web applications in hand-optimized assembly language? respect

              If improving performance is not a significant concern to your customers or benefit to you, further optimizing performance should probably not be a significant concern for you.

              Your time is the least scalable thing you've got - you're not getting any more of it.

              • TeMPOraL 2320 days ago
                No, of course not. I just try to write code in a performant way the first time around[0] - it's usually more than enough.

                The problem here is lack of effective feedback on the market. You may be writing your application totally bloated, and due to the nature of software, you might not notice any significant impact on your business. It turns out that your application may be lagging just enough to make it unusable for the 1% of your userbase that has shitty connection... that's basically an accessibility problem.

                But then that "accessibility problem" actually impacts your customers too, just not in a way most of them can tie back to you. It's your app, plus that other app, plus that third app, and suddenly their stupidly powerful[1] computer becomes sluggish, and they can't get any work done.

                Performance is commons. Unless you're writing bare-metal embedded, your software is not running alone on the machine. By producing bloated code, you're implicitly taking away your users' productivity beyond what you could with little extra care. It's something that I try to keep in mind when writing software, too.

                (Also, RE developer time tradeoff - people seem to not appreciate how software scales. If you save 100 man hours of development time at the expense of 1h per user over their whole use of the application, with 1M user you just wasted the world 1Mh - 100h = 999.9k man hours. Something to keep in mind, too.)

                Related: http://idlewords.com/talks/website_obesity.htm.

                --

                [0] - It's usually entirely possible to write code both fast and clean, if you don't overdo abstractions. As a bonus, the code is usually simple.

                [1] - Compared to what they had 5 years ago. User-facing software seems to be not gaining useful features, but rather constantly losing them. And yet it becomes only ever slower, for no actually good reason, just accumulation of bloat at every level of the stack.

            • chickenfries 2320 days ago
              So is there any situation where you would say that the gains from performance optimization are marginal?

              Also, you fail to consider the opportunity cost of developer time. It's not free. Your business needs you to do other things. Also, like GP said, there are factors to performance beyond payload size. Do you actually develop web applications for a job where someone else decides the priorities?

              • TeMPOraL 2320 days ago
                > So is there any situation where you would say that the gains from performance optimization are marginal?

                Yes! But the current trends around software - and in particular web stuff, both in-browser and in-browser-but-pretending-to-be-native - very, very far from that point.

                Look, I know that business has its priorities. But I have a right to dislike a business based on its priorities, and I believe chasing ultra-short-term gains by resorting to shitty engineering is a bad thing, and I do avoid using products of such companies, and I do call it out when I see it. Ultimately, business priorities are determined by the market, and I'm doing what little I can to create market pressures towards user-respecting solutions.

                And yes, I've been doing webdev as a regular employee, and I always pushed against both needless inefficiency and user-hostile "features", with quite a good success.

                • chickenfries 2320 days ago
                  We're on the same side. The difference is that I see most developers to essentially be like me: wanting and knowing how to do the right thing, arguing with their Bosses and PMs, but still failing to get performance to be as big a priority as they'd like. You seem to think that since you care and have been able to deliver the kind of performance you want, that other people must not be trying hard enough or know how to write well-performing apps.

                  Maybe you can share some advice about how you get your boss or PM to care about performance. Because I've tried your arguments, and it's not like by explaining the amortized cost of performance I'll get an extra week or sprint to improve performance.

        • sebringj 2321 days ago
          If you balance pay vs. skill and the rarity of such an incredible web game...things are quite the way they should be. Reality. No one is going to pay an average web developer to care that much because they themselves do not care enough to invest in the talent or the time involved.
          • chickenfries 2321 days ago
            Even if you're a great developer, you might not be getting paid to care about performance. If "loads fast" is not a deliverable your employer cares about, they are not going to give you the time or budget to care about performance. Think of how many websites, especially for marketing purposes, are built by contractors who are getting tasked with making shiny, asset heavy websites that look good on the nice macbooks of businesses paying them. I've never seen a heard a client say "oh and make sure the page loads in under 2s" to be honest.
            • ryandrake 2320 days ago
              When you're talking about code written for hire, you have to separate the developer's priorities/cares from the company's. There are many, MANY companies that do not care about performance or quality, where good enough means "At least won't actively enrage customers." These companies sometimes hire individual developers who do care about performance and quality. But if you're Third Developer From The Left on Project 123, what you personally care about is irrelevant.

              This is one of the reasons I got out of actually writing software as a profession. My interests as a developer rarely aligned with my employers' business goals. I got tired of the whole "Cram features as fast as you can, quality be damned" mode of development and bailed.

              • TeMPOraL 2320 days ago
                I'm increasingly feeling the same frustration with the industry. What do you do nowadays, if I may ask?
                • ryandrake 2320 days ago
                  Still in software, but I've been bouncing back and forth between product management and project management. I feel these roles (esp. Product) better allow one to "set the tone" on the priorities, compared to the individual engineer role. I can focus on what is the business case for undertaking engineering activities, manage risk, and help management balance features vs. quality. Suits me better. If I want to code I do it at home on my personal projects 100% on my own terms.
              • chickenfries 2320 days ago
                Yes, thank you. I suspect all of these people complaining about the size of web pages don't actually work as web developers. Especially because they think the only aspect of performance that matters is payload size.
            • flamedoge 2321 days ago
              facebook takes 25s to fully load
              • chickenfries 2321 days ago
                Not on any of my devices. And time until “fully loaded” is just one piece of the performance pie.
      • manigandham 2321 days ago
        This is true for the sites, however then it's the vendors who are then lazy and put out bloated packages, which is much worse since they have an outsized impact on all the sites they're included on.
        • chickenfries 2321 days ago
          Yes. Not only that, it's the cumulative effect of having to include tags from so many vendors.
      • fkld 2321 days ago
        Oh please STFU
    • 0xcde4c3db 2321 days ago
      Am I horribly out of touch to think that 2.8 MB seems big for this level of complexity? I'm not saying every web game needs to be a js1k, but that's roughly the size of a well-above-average SNES or Genesis game (e.g. Super Metroid or Phantasy Star IV).
      • ivm 2321 days ago
        Yes, but that's what the world without Flash games looks like. :)
    • subcosmos 2321 days ago
      As an obesity geneticist, I fully approve of your invention of this term! LOL
    • grondilu 2321 days ago
      This is the kind of gaming experience I'm hoping webassembly will bring. No installation, just visit a website and play.
      • iainmerrick 2321 days ago
        Why do you need webassembly for that, since this game already works great right now?
        • TeMPOraL 2320 days ago
          So that you can write in something saner than JavaScript, for starters.
          • iainmerrick 2319 days ago
            You can already compile C/C++ (and I think Rust) to JavaScript via Emscripten.
            • steveklabnik 2319 days ago
              Yes, you can use Emscripten with Rust.
        • grondilu 2321 days ago
          For more CPU demanding games, that is. Like AAA games.
      • thaumasiotes 2321 days ago
        Isn't that the gaming experience Flash already brought?
        • jhasse 2321 days ago
          You had to install Flash though.
          • fb03 2321 days ago
            It was really nice to see browsers simply incorporate slow but steadily all the APIs that made Flash worth its plugin install (canvas, opengl, webaudio, input devices, sockets). Instead of battling head on with it they simply made it pointless since you now have the same capabilities inside the engine.
          • thaumasiotes 2320 days ago
            > You had to install Flash

            That's a choice by the browser, just like wasm.

    • posterboy 2320 days ago
      > 2.8MB

      > small

      > website obesity

      Phis is not a website, but my throttled phone connection disagrees either way.

      Please have a look at js1k. Or go directly to size coding, e.g. .kkrieger, which is a FSP game techdemo in 96kb, see https://news.ycombinator.com/item?id=14409210

  • pj_mukh 2321 days ago
    Request: a campaign mode where you download my cities' map and let me flyover and protect it from inbound hordes. Maybe let me network with other players in my city to coordinate defence or watch our neighbourhoods burn!
  • gadgetoid 2321 days ago
    This is incredible! Were you a Subspace Continuum player? The similarities are many and my (albeit not great) skills translate right over. Although discrete life/weapon energy removes some of the 1v1 strategy, it doesn't feel lacking at all. Dogfighting is a lot of fun, lots of generally pleasant players in from HN. Love it! Wasted hours grinding level 4 but the rainbow flag was worth it so I can dominate with flair :D

    This. Is. Ace! Thank you!

    Callsign: tseug

    • AnkhMorporkian 2321 days ago
      If (s)he isn't a Continuum player, I would be astounded. The default ship is pretty much the Warbird without a bullet. It handles like... identically.

      To the developer, if you want another, I develop another popular online game (TagPro) and I desperately want to help you make this a bigger game. This has incredible potential, and it mirrors a game I've been developing for like a year. I haven't had this much fun with a webgame in a long time.

      Feel free to email me, my email is in my profile

      • elsherbini 2320 days ago
        TagPro is amazing, thanks for developing it! I love games with such simple controls and goals that lead to emergent strategies.

        [0] http://tagpro.koalabeast.com/

        • AnkhMorporkian 2311 days ago
          I'm glad you like it! I've taken a leave of absence because my IRL situation has become intense, but I'll definitely be going back. If you like the particle effects, that's my doing. If you don't, well, blame LuckySpammer.
    • danneu 2319 days ago
      I started building a lil thing inspired by Continuum: https://github.com/danneu/p2-space-arena

      Never did much game dev before but it gave me a lot of respect for people who can build one. It would probably take me a year just to figure out lag compensation.

  • Aaronmacaron 2321 days ago
    I'm amazed by how well this works on mobile. I literally played this game for about half an hour on my phone in the HN app web view because it's just so much fun. I'm used to normal web pages that don't even really work on mobile and this game just worked seamlessly without any problems whatsoever. Great Job!
    • sillysaurus3 2321 days ago
      Meanwhile, I tried 3 different browsers and can't get past the "enter your name" screen on mobile. Apparently native inputs are too dated to use.
      • fivesigma 2321 days ago
        Admittedly mobile was a bit of an afterthought and I only tested it on 4 devices. What device are you using?
        • sillysaurus3 2321 days ago
          iOS 8.1.2 model A1532. I don't upgrade because it will slow down my phone.

          Probably not worth supporting. :) Adding new features and figuring out ways to keep people playing might be much more worth your time.

          • jachee 2321 days ago
            It says, right on the mobile mode interstitial, that it "requires the latest mobile/tablet hardware." And yet, you seem surprised when it doesn't work on older hardware?
          • flashman 2321 days ago
            > Probably not worth supporting.

            I was going to disagree because the same countries that really like web games are often the ones using older handsets, but Apple themselves say only 8% of handsets are on iOS < v10: https://developer.apple.com/support/app-store/

            • sleepychu 2320 days ago
              1 in 10 handsets isn't a market you want?
              • imtringued 2320 days ago
                Even at it's peak apple only had 23% market share. 1 in 10 out of 23% is 2.3% and not everyone plays this game on a phone so the percentage is even lower in reality.
                • sleepychu 2320 days ago
                  Not this game but in general.

                  Good point about market share though, hadn't considered that.

      • bufferoverflow 2321 days ago
        Worked fine on my aging Nexus 5X.
        • andai 2321 days ago
          Aging?! Worked fine on my S4!
          • styfle 2320 days ago
            Works fine on the iPhone 6 running iOS 11
      • make3 2320 days ago
        you're doing something wrong
  • ajp 2321 days ago
    Kind of reminds me of SubSpace. I think, it has been a very long time since I've played it.
    • vvanders 2321 days ago
      Yup, pretty much same mechanics.

      The netcode in subspace was a bit better, probably due to needing to deal with 200ms+ pings that were common back in that era.

    • dannyrosen 2321 days ago
      Thought the same exact thing. Whatever happened to SubSpace?
      • meritt 2321 days ago
        http://store.steampowered.com/app/352700/Subspace_Continuum/

        Subspace Continuum is an anti-hacking fork released in 2001 (Subspace was released in '95) and is now the only official version of the game.

      • Tharkun 2321 days ago
        It's still alive, to some extent. Priit Kasesalu (of Skyroads, Kazaa and Skype fame) wrote an alternative client back in 2001: Continuum. Some of the bigger servers (EG, TW) are still around. Many of the smaller ones like SFSS have long since perished.
    • mck- 2321 days ago
      Yes! Loved that game. You could mount each other and create the almighty LevTerr. I wonder if it's still alive
      • spython 2321 days ago
        Trench Wars zone is still alive and you can play the game. Though there are always the same <100 players around: http://www.subspace.tw/
  • MrAwesomeSauce 2320 days ago
    This really is an addictive game and the attention to detail is amazing. As a web developer myself, I'm quite familiar with building a typical web application but nothing close to this. If you ever decide to write a piece explaining how you built this at the high level, peeps like myself will find it extremely valuable.
  • manigandham 2321 days ago
    Reminds me of `Raptor: Call of the Shadows`: https://www.youtube.com/watch?v=j19rc8YB3sY

    Plenty of nostalgia there as that was the first computer game I ever played and a classic from the 90s.

    • mistakenot238 2321 days ago
      Swear I used to play that on my dads amiga - good times.
    • alfla 2320 days ago
      Same here! Played it on my dad's old black and white display AST laptop :-)
  • throwanem 2321 days ago
    That was a lot of fun! One quick request - can the level-up popup not appear square in the middle of the screen? That can be a real problem if you happen to level while you're in the middle of a fight.

    One other quick request, now I think of it - can the key event handler pass F11 through? Being able to un-fullscreen would be handy.

    Awesome game! I look forward to the writeup on the tech stack and how it's done.

    • pqh 2318 days ago
      I had this problem and the solution was to use the game's `f` keybinding for fullscreen instead. Or open the game in a separate window, because ALT-F4 is the only way to close it.
  • Decabytes 2321 days ago
    Is it just me or is this becoming a more popular Internet game format. The reason I ask is because Slither.io uses this same idea.
    • PhasmaFelis 2321 days ago
      Here's a list of several hundred(!) games in the IO format: http://iogames.space/
    • DiThi 2321 days ago
      This is the so called "io game" genre, started by agar.io.
    • djsumdog 2321 days ago
      The new era of Flash-type games?
      • DiThi 2321 days ago
        "io games": Massively multi-player, real time, no login, no rounds (continuous game), just type your name and play.

        There probably were a few flash games like this, but didn't caught on like it has now.

        • milofeynman 2321 days ago
          How do they pay for server cost? Someone told me slither.io had made it's owner millions. I'm assuming there are ads?
          • ag_47 2320 days ago
            Yea they show ads in between game sessions.
        • samschooler 2320 days ago
          Casual Collective with their robot battle games from 10 years ago. Though they did have more configuration, you could just add your name, pick a bot and play.

          http://www.kongregate.com/games/CasualCollective/minions

          http://everybodyedits.com was one of the first MMOs I played with no config (except a name and a map to join). In addition all of the maps were editable. So it was unique in that every map was completely user created.

          • DiThi 2319 days ago
            What I said... It's not a new idea, but it didn't made a genre back then. It was a very different internet world, too.
  • iamd3vil 2321 days ago
    Really fun game. Very smooth and addictive. Curious to know about tech stack
    • irascible 2321 days ago
      I think pixi.js and websocket + node backend.
  • orb_yt 2321 days ago
    How long has this been released? Seems very polished. How long did it take you to build?
    • Aaronmacaron 2321 days ago
      In the changelog (https://airma.sh/changelog) it says today (10th Dec 17) was the first release.
      • PhasmaFelis 2321 days ago
        I'd implied the same from the general player skill level. It's nice to play against people who are just as bad as me for a change!
  • jws 2321 days ago
    A lot of friendly fire among the HN crowd. "Make go boom" appears to be our goal.
    • tricolon 2321 days ago
      There are teams?
    • proactivesvcs 2321 days ago
      The Brits seemed to be fairly good towards each other :-D
    • stefanwlb 2321 days ago
      Maybe you were in a F-F-A game :D
  • sicco 2320 days ago
    This game reminds me of XPilot released back in 1992: https://en.wikipedia.org/wiki/XPilot

    Some gameplay footage: https://www.youtube.com/watch?v=LiO6XYt8M14&list=PL192CF249E...

  • bojo 2321 days ago
    Apparently these are called "io games". I was visiting family last month and watched my nephew play these for hours.

    Large list here: http://iogames.space

  • smnscu 2321 days ago
    Staying #1 is incredibly exhilarating. My strategy was upgrading defense and staying out of big clusters while still shooting towards them.
    • airfoil 2321 days ago
      Yes, that strategy works well. I've also found that "hitting the brakes and they'll fly right by" works really well in a knife fight.
  • borplk 2321 days ago
    What does it use for networking?
    • fivesigma 2321 days ago
      Just plain ol' Websockets. But with a twist.

      I use 2 WS connections mirroring some packets on both, to deal with head-of-line blocking.

      • johnhenry 2321 days ago
        Interesting. Could you talk more about this?
        • DiThi 2321 days ago
          (Not OP but I had the same idea)

          When a packet is lost in a TCP stream, it must be retransmitted, and until the client receives it, all further packets are stuck in limbo (received by the client, but cannot be seen). For this reason, most games use UDP instead, and are designed so some packet loss is acceptable (if I received where you are at frame N, it no longer matters if I receive where you were at frame N-1).

          Minecraft uses TCP, that's why in very populated servers occasionally you can see the whole world freeze for a second.

          In the browser we have UDP with WebRTC data, the problem is that not all browsers support it, it may not work in some places and for now it's more difficult to work with.

          An easy compromise is to use several TCP connections, so if one packet is lost, instead of having N packets stuck for a moment, you have 1/N where N is the number of connections. And if important packets are sent through all channels, the chance that they arrive too late is much lower.

          • dested 2321 days ago
            Do both websocket connections send the same data, or do you split your data logically between two channels (movement data vs state data)
            • DiThi 2321 days ago
              I interleave information that becomes redundant (like the position of players, I can handle losing every other packet for a while, interpolating/predicting missing info) but send important data in all channels (like when a rocket is fired, it's just one event that must be seen).

              Again, I'm not OP but I did similar things and explained what probably happens with this game.

        • fivesigma 2321 days ago
          What DiThi said (read his excellent post)

          There's also another important detail. Due to delayed ACKs on Windows and battery-preserving TCP stacks on most mobile devices/laptops, some of your packets will be delayed. Even with TCP_NODELAY. Desktop OSX/Linux do not display this behavior.

          The only solution I have found, and it's a rather crude one, is to blast the server every 50ms with a 1-byte packet. It is ugly but it works well.

        • fivesigma 2321 days ago
          Will do when this is over. Right now I'm trying to prevent servers from melting. HN traffic...
          • Fifer82 2321 days ago
            Also want to show appreciation for your work.

            I tried to create a game similar to this (I spent 6 months on it). Very basic Geometry. Circles. I got the concept working well locally, but I ran into problems on how to deal with the networking. I got things running in Node with SocketIO and so on but there could be 400 players, each made of upto 8 moving pieces, and each can fire several times a second.

            I spent a lot of time on a book, "Real time collision detection" and generally I have fond memories of the whole project and trying different partition and slicing up space.

            However, how to package and deal with this snapshot of world "over the network" or for example "how to smooth any lag relative to the client"... this middle region was largely undocumented or ill accessible to me.

            I will look forward to when/if you write any thoughts.

            • fivesigma 2321 days ago
              I will definitely do a write-up but you're right. It's really hard to find info on any of that online.

              A lot of trial and error.

              • pmchung 2317 days ago
                Do you have a blog? Been visiting this daily to see if there's a new update about the write up on networking trial errors. :)
              • Fifer82 2317 days ago
                I am still playing :D
          • Meegul 2321 days ago
            You've done a great job! It's stayed very responsive for the time I've played. I haven't even noticed any dropped packets, so your method for dealing with them seems to be working very well despite the high load.
            • fivesigma 2321 days ago
              Nothing too fancy. Just proper devops and a lot of testing.

              https://i.imgur.com/oSwGgFA.png

              • comboy 2321 days ago
                That is fancy. It is actually so beautiful I got emotional.
                • fivesigma 2321 days ago
                  THE comboy of bitcoinity fame? I'm honored.

                  I remember donating back in the day!

                  • comboy 2321 days ago
                    Huh wow, thanks :) I need to make bitcoinity working as stable as airma.sh does. Congrats on the well earned success btw, clearly the game is here to stay.

                    It would be sweet to be able to change fire from spacebar to something else. Spacebar tends to be big and loud.

              • swanify 2321 days ago
                Where are you hosting it? That looks quite custom to gaming
                • fivesigma 2321 days ago
                  It better be! It's my homegrown panel that I use for all my projects.
                  • mcescalante 2320 days ago
                    I would love to hear more about this dashboard in your write up. Would love to create something like this myself :)
                  • meebs 2320 days ago
                    Do you have a blog or write ups about this process / your workflow / etc.? I feel as a novice I could learn a lot.
              • ngrilly 2321 days ago
                Is it an home made dashboard or do you use some standard tool?
          • pvsukale3 2321 days ago
            Great job with the Game. Would love to read an article about how you developed this game and handled initial traffic.
          • Kiro 2321 days ago
            Really looking forward to a write-up!
          • z3t4 2321 days ago
            Would be nice to know what you use for hit detection and interpolation, it seems very smooth!
          • alphaomegacode 2321 days ago
            Fantastic game. Enjoyable, simple. Wish you all the best with it. Thank you for your outstanding work
    • stuxnet79 2321 days ago
      Very curious about this as well. I was expecting this submission to be an endorsement for WebRTC.
      • meritt 2321 days ago
        WebRTC really isn't suitable for multiplayer gaming due to it being entirely P2P. You need the server to operate as a single source of truth and enforce clients to play by the rules.
        • londons_explore 2321 days ago
          Having both models works well...

          TCP from a master server to every client.

          and

          UDP low latency links from every client to every other client.

          The client code sends a sample of received UDP packets to the server over the TCP connection, who will then verify that all info contained in the packets is true and accurate and nobody was cheating.

          It's a nice model because you get the super low latency between clients, and at the same time within a few hundred milliseconds you can detect cheaters and kick/ban them.

          Obviously, you have to design your game to handle asynchronous lossy information from many different sources and nobody having a complete and whole view of the game until half a second later or so. Thats quite do-able though by timestamping every event and then running rollback-able or checkpointed synchronous simulation on all clients.

          • alanning 2320 days ago
            Know of any games that have implemented this method?
        • lxtx 2321 days ago
          It is not entirely P2P, a server can act as a "peer" for all clients and handle the connections itself.
        • gregmac 2321 days ago
          I'm not that familiar with WebRTC, but can the server not act as the only peer?
        • TheCowboy 2321 days ago
          Is it entirely P2P? It seems like it has use cases for streaming audio and video, where low-latency is desired and dropped packets are acceptable.
          • meritt 2321 days ago
            Yep. The server provides signaling (who the peers are, what data is being requested/should be snet, etc) but you're absolutely correct: WebRTC primarily envisioned for high-bandwidth peer-to-peer suitable content such as video/audio/file-sharing.

            People have tried using it for gaming (e.g. server is the master peer) but it's tenuous and folks should just stick to WS.

  • LyalinDotCom 2321 days ago
    I played it for two minutes and immmedialy had great memories of Subspace multiplayer.

    And it even still exists! store.steampowered.com/app/352700/Subspace_Continuum/

  • feikname 2321 days ago
    Very nice game, but I couldn't enjoy much because of my high ping. I'd like to see an South America and Africa servers. AFAIK AWS provides South America servers for Sao Paulo, Brazil.

    Are there any plans on letting anyone host their own servers?

  • jmtame 2321 days ago
    Does this remind anyone else of the old Subspace/Continuum game?
    • module0000 2321 days ago
      YES!!!! It’s the first thing I thought of... are we getting old?
  • GistNoesis 2321 days ago
    +1 for flat earther physics with teleportation from north-pole to south-pole :) Just kidding, well done.
  • NKCSS 2321 days ago
    Played on the pc for about 20 minutes; great fun but controls mess up sometimes (shooting). Tried on my iPhone6s but screen isn’t correctly; bottom 20px or so are missing in safari.

    Great fun though!

  • drewmol 2321 days ago
    Kudos! I appreciate anything that works out of the box with uMatrix blocking enabled.

    Gameplay wise: looks like you may want to slow down the reverse speed... or not it's pretty fun as is

  • sidcool 2321 days ago
    What did u use too make the game?
    • fivesigma 2321 days ago
      PIXI.js for the graphics. Serverside is mostly Node.js.
      • sidcool 2321 days ago
        No websockets for persistent connections? How are you handling RTC?
        • Kiro 2321 days ago
          Open up the Network tab and you'll see that it's using WebSockets.
          • sidcool 2321 days ago
            Ah. Sounds cool. Would WebRTC serve better here?
  • neya 2321 days ago
    This reminds me of two very popular age old games (from around 1990's) called Inner Space and Critical Mass.

    [1] http://www.sdispace.com/index.html

    [2] http://www.windowsgames.co.uk/critical.html

    Love this game :)

  • thesquib 2321 days ago
    Would love a write up on how you achieved such smooth responsive game play!
  • exodust 2321 days ago
    Needs error handling for unsupported browsers, which seems to be anything other than bleeding edge latest browser version. Can't get past "enter name", it just sits there doing nothing. I prefer to hold off on bleeding edge browser versions because backwards compatibility is a good thing to test for.
  • major505 2321 days ago
    Well great... i'm addicted. There goes my project deadline.
  • mistakenot238 2321 days ago
    I'm not proud that most of my kills were AFK, but meh, I mostly sustain myself on low hanging fruit.
    • JorgeGT 2321 days ago
      All's fair in love and war.
  • umen 2320 days ago
    Great game!! can i ask you which hosting are you using ? how many servers what are there configuration ?
  • jnet 2320 days ago
    What a very well executed fun game. And it performs extremely well on my lap top. Great job!
  • orless 2321 days ago
    I don't know if this is HN effect or what but I just dont't get to the game. All I see after log in is some terrain and, a few moments later "Destroyed by " someone. No units movement, nothing.
    • djsumdog 2321 days ago
      Works fine for me on FF57/Linux. Tons of people on too .. lots of fun and addictive.
    • fivesigma 2321 days ago
      Everything is running smoothly so it's not the HN effect.

      Might I ask what OS/Browser/ISP are you using?

      • the_jeremy 2321 days ago
        I also have this problem. Windows 10, Chrome (hardware accel disabled), Comcast.
        • elsherbini 2320 days ago
          I had to enable hardware acceleration to get more than 1 frame/second. It was smooth with hardware acceleration turned on.

          I'm running chrome on ubuntu on a dell xps 13

        • drewmol 2321 days ago
          Maybe the JS Comcast is injecting that says you need a new modem is having an adverse effect, or maybe you just need a new modem. /s
  • anilshanbhag 2321 days ago
    The game space is a little crowded i felt. Otherwise pretty cool game ! Do you plan to open source or do you know of a HTML5 game of similar complexity that is ? Would love to read the code.
    • Jarwain 2321 days ago
      On the map I played, everyone spawns in over Europe. However, there's a whole entire world and NA and Eastern China was typically pretty barren
  • kharms 2321 days ago
    The gameplay reminds me a bit of an old favorite of mine - Starport: Galactic Empires. I wonder of games of that nature could undergo a revival as browser games.
  • nwrk 2321 days ago
    Arrrgh, clicked too! So much fun and beware - addictive!
  • indescions_2017 2321 days ago
    Works great in Firefox 57. But Chrome 63 on Linux 17.10. With GPU accel. The bitmap sprites are just rendering as weird grey bounding rects :(
    • fivesigma 2321 days ago
      I have tested all browsers on Linux. Got a screenshot?
    • DennisP 2321 days ago
      Chrome 63 on Mac is working fine.
  • marxdeveloper 2321 days ago
    I have now accidentally closed the game twice ctrl + w and bookmarked once ctrl + d but the game itself is so much fun :) +1 from me
    • Kairin 2321 days ago
      Use mouse mode :)
      • marxdeveloper 2321 days ago
        Actually arrow keys are good enough to avoid that trap
  • madcow2011 2320 days ago
    You know, I really had stuff I needed to do today...Thanks a lot... /s :) Awesome game, can't seem to stop playing
  • devwastaken 2321 days ago
    This was definitely thought out. Can't even put Zalgo text as a username and have it fill the screen to cheat :^).
  • ruc0la 2321 days ago
    Please add regular sign-up form as well! I do not want to use one of my social network profiles to save my progress.
  • somid3 2321 days ago
    WOW -- where did my last hour go!
  • AngeloAnolin 2321 days ago
    Really enjoyed this even after playing a few minutes. Good graphics and nice controls.
  • Abishek_Muthian 2321 days ago
    Congratulations, great game.

    1. Was cross-hair/radar lock, omitted on purpose to improve screen on time or would any upgrade give that ability ?

    2. Analytics - In the free for all, do see players avoiding other players if they see their country flag on them?

  • qmarchi 2321 days ago
    I can't seem to get my aircraft to move forward using a keyboard. Flying backwards is fine, but using the ^ key is a nogo. Controller works fin theough!

    OS: Windows 10 (Build 16251) Browser: Firefox Developer Edition (58.0b10 64-bit)

    • mechanical_berk 2321 days ago
      Same issue on both Firefox (57.0.2) and Chrome (62.0.3202.94) on Windows 10 (build 16299.64). At least for me forward doesn't seem to be completely ignored; while holding it down it will occasionally spurt forward a bit.
    • samstave 2321 days ago
      Off topic, but did they really have 16,251 builds of windows.

      Is that low, high or normal(expected)?

    • behringer 2320 days ago
      I had to refresh the page once or twice throughout my play time because of key issues.
  • fabiospampinato 2320 days ago
    Damn, this game is so addictive, and so well done. Congratulations!

    I wish there were more stuff to upgrade/unlock, I've reached level 6 and even't unlocked anything in the past 3 levels.

    Hi from "Moz://a" in the game!

    • fabiospampinato 2320 days ago
      There should be an option for following/friending people, I had fun with a few guys and I'd like to know if they are logged and where they are.
    • fabiospampinato 2320 days ago
      This game should be monetized, a couple of ideas:

      1. You could sell "upgrades packets" in the login screen, so that one can start playing with an upgraded aircraft from the very beginning. 2. There could be other aircrafts that could be either unlocked with enough points or bought.

      • Fnoord 2320 days ago
        > This game should be monetized, a couple of ideas:

        Sure, but please no P2W (Pay 2 Win).

        > 1. You could sell "upgrades packets" in the login screen, so that one can start playing with an upgraded aircraft from the very beginning. 2. There could be other aircrafts that could be either unlocked with enough points or bought.

        That's P2W. That has nothing to do with gaming, but with insecure people who wanna pay money to feel good cause else they can't win. And those who don't pay end up as being NS (narcissistic supply). Fuck that.

        I don't know how to monetise the game other than serving some adds in the screen during the warming up. But please not via P2W mechanics. It ruins the equal playing field, and it lowers the quality of the game cause the good players who know about the mechanism won't fall for this.

  • brian-armstrong 2321 days ago
    This game is great. I opened it and lost an hour then and there. Well done, OP!
  • threeeyed-raven 2321 days ago
    This thing is addicting as crap. Hahah just spent the last few hours. 3.15 KD!
  • akeck 2321 days ago
    Completely playable on a 2009 MacBook. Thanks for keeping it tiny and clean!
  • yabbadoo 2320 days ago
    super addictive game! IMO, when you're at the top, it's a bit much to lose so many upgrades since they take a lot of time to farm! Also, perhaps shared killing-scores and team mode!! Good job!
  • spookyuser 2321 days ago
    Really fun! I was super excited to see that it also supports controllers but for some reason there is at least a one second delay between button presses on my xbox controller and the game :(
    • fivesigma 2321 days ago
      Are you using Chrome? Gamepad API is a bit buggy on 62.x
      • spookyuser 2321 days ago
        Yeah I was. I'll try it on Firefox, thanks!
  • aarondf 2321 days ago
    Holy crap that game is fun
  • 7ewis 2321 days ago
    Man, that game is addicting.

    I have so much work to do but can't keep off it!

  • Etheryte 2321 days ago
    This is super addictive, well done. Runs incredibly fast too. As a strategy tip, you can fly in reverse, it's great for dodging missles and maneuvering in general.
  • batrat 2321 days ago
    So much productivity for today. :) Very nice game. Congrats.
  • shaded-enmity 2321 days ago
    Great game, would be nice to be able to switch off controllers though - when I bumped into my G29 it immediately registered and I had to start steering :)
  • erikig 2321 days ago
    Works buttery smooth on Chrome 53 on Android over a cell connection (90ms latency). Can't wait to review on desktop to view the WebSocket traffic!
  • MulliMulli 2321 days ago
    Awesome game, played for almost ah hour already!
  • blumomo 2321 days ago
    Now somebody say web apps are not the future.
  • kbumsik 2321 days ago
    BTW, it does not recognize 4 simultanous key inputs on Firefox 57. Other than that, it is really cool game! Great job!
    • fivesigma 2321 days ago
      That is up to your keyboard hardware. Unfortunately, most consumer level keyboards can't handle that.
      • explainplease 2320 days ago
        Please forgive the random reply, but it's the closest to a direct message I can get. :)

        Suggestion: place powerups in areas of the map that have not seen combat recently.

        It seems like almost all the combat is over Europe, and the other areas of the map are almost always completely unpopulated. The most fun fight I had was when one other aircraft and I got into a dogfight near SA/Antarctica. It lasted several minutes, just the two of us. Even so, it only happened because I followed him there, and apparently he was just exploring the map.

        So if you were to track combat activity on something like a heat map, you could spawn upgrades and powerups in cold areas of the map. This would encourage players to go hunting for them. As a result, different areas of the map would see combat regularly, and the hotspots would move around.

        Also, if you spawned players in away from other players, it would encourage encounters around the map instead of concentrated in one area.

        Finally, I use WASD in home-row position, and I'd like to rebind the the shoot and action keys. If you could make this possible, it'd be great.

        Thanks for sharing your work. It's a fun game.

      • kbumsik 2321 days ago
        Oh, I didn't know that. Thank you very much for the quick reply!
  • edpichler 2321 days ago
    It's well coded, very fast, small size, runs even in mobile, and the most important it's funny to play!
  • hsson 2321 days ago
    Very good on mobile, got in first place a couple of times. Should stop disclaiming about the mobile experience
  • Improvotter 2321 days ago
    And I quit... This is too addicting...
  • ateesdalejr 2321 days ago
    Really slow in the seattle area. Not sure if this is because of servers being overloaded right now.
  • whage 2321 days ago
    Such a simple and good looking game. Fantastic! Gives you a sense of just how big our oceans are.
  • rsashwin 2321 days ago
    what is the backend tech being used?
  • ranyefet 2321 days ago
    I just played the game for 30 mins on my iPad Pro and its really fun and addictive, great work!
  • lanius 2321 days ago
    Very fun! I think the Mohawk helicopter has the most potential due to its strafe ability.
  • stefantheard 2320 days ago
    Really demonstrates how far clean responsive physics and simple mechanics will get you!
  • deforciant 2321 days ago
    Amazing game! fun fact - works a lot smoother on mobile nexus 6P than MB Pro 2015 :)
  • nsxwolf 2320 days ago
    Really fun and I played for a long time with no connection issues or bugs.
  • puddlypanda123 2321 days ago
    This game is so awesome! Can you make a tutorial on how you designed it?
  • dbg31415 2321 days ago
    Well there went an hour and a half of my time. Very nicely done.
  • max23_ 2321 days ago
    The gameplay is smooth and everything is nicely done. Good job!
  • wesamco 2321 days ago
    dammit this is addictive, even to me! please add a "auto lock" feature, that you can find in military aircrafts since the 80s, like a "god mode".
    • wesamco 2321 days ago
      damn you too for making me waste more than half an hour! ;) I actually don't play video games.
  • iamjeff 2321 days ago
    What a bloody delight!
  • jonplackett 2321 days ago
    this is fun! how did you make it? give us some details.
  • JepZ 2321 days ago
    CTF is actually fun too, it just needs more players :D
  • denvercoder904 2321 days ago
    How does one turn into a helicopter or a large drone?
    • jsnell 2321 days ago
      For a couple of seconds until you spawn, you can click on the icon of the type of plane you want. The icons are on the left side of the screen.
    • spydum 2321 days ago
      i suspect you register and begin to level up?
      • Kinrany 2321 days ago
        You don't have to register, they're all in the upper left corner.
  • lubesGordi 2320 days ago
    Very cool! Can you tell us about the back end arch?
  • rdl 2321 days ago
    This worked surprisingly well on iPad. Great game!
  • XCSme 2314 days ago
    Very cool! What server company are you using?
  • misotaur 2321 days ago
    Nifty and addictive little game! Good job.
  • y0ss 2321 days ago
    ADDICTIVE! Very nice game, well done!
  • sidcool 2321 days ago
    Super smooth.
  • shortoncash 2321 days ago
    This is incredibly fun. Nice job.
  • CraneWorm 2321 days ago
    Good game, I really enjoy it.
  • rlv-dan 2321 days ago
    Does not load in Palemoon :-(
  • elheffe80 2321 days ago
    Damn you. This is amazing.
  • ngrilly 2321 days ago
    This is fucking amazing!!!
  • tonetheman 2321 days ago
    Fun fun fun. Good stuff.
  • thejosh 2321 days ago
    This is great, it's going to be the next big hit, calling it now. Awesome work :).
  • pacomerh 2321 days ago
    great execution, love this game. Whats next for this project?
  • DC-3 2321 days ago
    This is fantastic fun.
  • Keyframe 2321 days ago
    Addictive! Great job!
  • swanify 2321 days ago
    You're traffic is about to go up, I just put it on ProductHunt also :)
  • skraelingjar 2321 days ago
    Great job! Would love to read a write up on how you made it.
  • SubiculumCode 2321 days ago
    Hey pretty fun.
  • robmaceachern 2321 days ago
    A+ nice work!
  • sagivo 2321 days ago
    the best game i had in a long time
  • kelvin0 2321 days ago
    A W E S O M E! So simple, so much fun!
  • OutsmartDan 2321 days ago
    So amazing
  • mdrzn 2321 days ago
    Real fun
  • orliesaurus 2321 days ago
    This is SO MUCH FUN! (and so smooth!)
  • ryanmarsh 2321 days ago
    OMG this game is so fun. Great job!
  • dufia 2321 days ago
    works great, impressive!
  • skellertor 2321 days ago
    What a fun little game! Well done
  • cschep 2320 days ago
    this is very well done!
  • stealthcat 2321 days ago
    no strafing?
    • Kairin 2321 days ago
      Mohawk can strafe
  • simook 2320 days ago
    This is awesome!
  • mring33621 2321 days ago
    totally fun!
  • b0rsuk 2321 days ago
    Gameplay feedback:

      Mohawk (helicopter) and Prowler (stealthy) don't seem worth it.
    
    The helicopter dies from a single stray rocket, random spam and attacks from behind. Alt+arrow for strafe worked in DooM because field of view always pointed away from the player. Here, strafing is hard to get used to. Since there are already 2 keys for ability, why not make one of them "strafe left" and the other "strafe right" ? Also, because helicopter lacks a clear point, it's harder to aim.

    Stealthy Prowler is very slow and not especially fun to play. To the point that only effective way to play is to cloak after every rocket fired. You crawl towards a victim, then shoot at close range, then recloak. Visual notification is quite subtle, there's no sound and you end up mashing the ability key never quite sure if it already worked. So it kinda works against newbies... but sneak attacks are also effective with Goliath (the fat one) and Tornado (multifire). So I don't see the point. And here's the kicker: advanced players see it because they play (and aim!) by radar. This is an issue when fighting away from the crowd.

    Thoughts on upgrades: - I would appreciate a kind of "laser sight" upgrade. Each level would render a laser line in front of your plane, and the line would get longer with levels.

    • jsmthrowaway 2321 days ago
      I agree on Mohawk. Mohawk would be more worth it if score degraded a little more slowly. As it exists, Mohawk is a one-way ticket to the bottom of the scoreboard because it's so difficult to stay alive. (By the way, if you're reading and didn't realize, you can select any other ship any time. The buttons look disabled but they aren't.)

      Prowler is awesome against the Goliath. So, so good. In fact, I'd say the Prowler is the Goliath's main counter, and when I lasted ~15min at #1 in a Goliath, it was a skilled Prowler that finally started annoying me, made me start missing my deflects, and knocked me off my balance. I was thinking the Goliath is unnecessarily OP, but the Prowler handles it. (Smart Prowler pilots: go stalk Goliaths.) Might OP the Prowler, but making it shoot a spread like the Tornado might turn the Prowler into basically an instant-backstab Rogue. Now that I've typed that, yeah, that'd be OP, don't do that.

      This game is heavily influenced by Subspace/Continuum, and it's fairly obvious. I could even tell which ship mapped to which fighter in this, and I appreciated how well my skill transferred. My main annoyance was that score drop. I maintained about a 5:1 KD across 500 kills and regularly flopped from #1 to #25 to #2 to #30, because the score you lose on death is a little imbalanced. A few deaths in a row and you can lose 10-15 places, which seems a little rapid. Maybe knock a little off that multiplier on death, but leave the killer's score gain alone? The only way to stay near the top is not die, which makes sense since it's called a bounty, I suppose. Still rough.

      Other random feedback to the author: Inferno needs a buff. That speed penalty hurts and is a pretty rapid way to die -- I noticed I was avoiding it as I played. Most of the power-ups and abilities could stand to last quite a bit longer, too. And spawners could really use a lockout on shooting for the same duration as their protective shield; you can spawn in, immediately press spacebar, and probably get a kill on a surprised person who happened to float through where you pop up with no chance to avoid.

      Great game, though, I didn't expect to get sucked into a browser game for three hours. I'll be playing it again.

      Tip I didn't realize until a long way in: 1, 2, 3, 4 map to upgrades. I was the idiot using the mouse.

      • ryankupyn 2321 days ago
        I think the rapid score moves are psychologically useful. For every person who slides rapidly downwards on a few unlucky hits, there's another who gets a few good shots, shoots up the board, and thinks "hey, I'm actually not bad at this!" which might make them more likely to stick around.
      • Fnoord 2321 days ago
        Mohawk is strong on the side, spraying continuously. If they can be flanked its game over (tho a good player can reposition). I didn't play CTF though.

        Prowler is not very good against Goliath because the Goliath can deflect, and its deflect ability unstealths the Prowler. Only a Goliath who has bad reflexes and goes in a straight line gets hosed. And one rocket doesn't kill the Goliath. And as soon as they know Prowler is on them, they're on their toes.

        Even in a FFA game a Goliath is easy to take, but only once they unloaded their energy bar or took a few hits. Other players can help with that, consciously or not. And if the Goliath has a large bounty on their head, it is in their interest to help. FFA isn't literally FFA all the time. Sometimes interests align. The bounty system aids that, and its fun. K/D ratio is the real, publicly hidden score.

        As a player you should avoid being near the spawn points. You learn where they are after a while. Planes always spawn facing north.

        • behringer 2320 days ago
          I find the Goliath simple to take down with a Prowler. Even when they discover you, you're close enough to fire. Even with a skilled player as long as you're not directly in his line of fire you're safe.
          • Fnoord 2320 days ago
            Then you played against bad Goliaths. You get slowly to them, and you don't one shot them. If they don't go in a steady line either (which they shouldn't and wouldn't if they knew enemy was around), then you won't kill them. When I played Goliath, Prowlers weren't my concern. My concern was resource starve or multiple vs 1 (the former usually due to the latter). A Prowler is great to one shot others; damaged airplanes and Mohawk. You don't easily one shot a Goliath. Not in the least w/o external help.
            • behringer 2320 days ago
              it doesn't matter what direction you're in. That first shot is a surprise attack. Immediately cloak and turn, and ram it two more times the same way, and he's dead. He can decloak you, but it won't stop you. Sometimes you get unlucky and the missile flips, but not often.
              • Fnoord 2320 days ago
                Ah, you got unlucky. Yeah whenever I read "lucky" or "unlucky" in gaming I frown. Its a self deception to deal with the painful truth that you didn't play good enough.

                That wasn't luck; that was skill. They reacted to your missile. Either you're in range of him and he can decloak you, or he has enough time to deflect, or is resource starved due to bad play or overburdened from you (unlikely given you're Prowler) or others (bingo), or he is actually not moving in a straight line which he shouldn't (a premise you ignored thus far). Especially not if you just rammed it already, or if you kept killing them. Like, hello anticipation? Heck, if you kept killing them then they shouldn't stick to Goliath.

                I found the Mohawk much more suitable to kill Goliath. He can't deflect all the missiles, and if he does its just a matter of avoiding him enough. As long as you can aim you'll deplete his resources way faster than any other airplane can. I found it great in CTF (though not in FFA; although FFA doesn't interest me as much as CTF). I find FFA unrewarding because you can't compete on K/D radio and there doesn't seem to be some kind of goal (the bounty # just dampens your K/D ratio and seems to be have the purpose of a recent scoreboard). To me, FFA is practice for CTF/BTR. Ironically, a good enemy of Mohawk is a skilled Prowler who can anticipate movement and aim. Didn't see many of those around though.

                Another observation is that the Mohawk is great to spray with the flame buff.

                Its also funny how much more defensive people play in BTR. If they put in that effort during CTF and FFA I'd have a way more difficult time.

                • ytwySXpMbS 2315 days ago
                  I think saying luck has no part in playing games is ridiculous. I have many times spammed deflect and killed someone in Goliath.
      • cjslep 2321 days ago
        Were you BeatDaddy on the Euro server? I was zkdbnz.

        Reason I bring this up is to back up this point with a caveat: a skilled Prowler pilot is able to solo take down a Goliath only if the Prowler is faster (with upgrades).

        On the EU server, the meta was missile spam fest over Europe. So I took the stealth ship to the North Atlantic and Arctic Ocean. There, the playstyle of the Prowler is one of patience.

        Your first goal is to never die. Period. This is how I was able to be consistently top 4, and off-and-on #1 on the server depending on the other players's fluctuations.

        The second objective is one of cowardice. You are paper thin. One hit will decloak you and worse, you are so low health that a single helicopter missile will finish you off. This means the playstyle is to find a handful of jet pilots that are dogfighting. Be close enough to them you can zip in, but far enough away you are still on the outskirts. This means you have to learn to be incredibly agile dodging missiles and learn how to read dogfights, which takes practice. It also means no one else gets to see your skills doing this, and therefore will assume you are a shitty pilot.

        The third rule is one of ruthlessness. As soon as one of the dogfighters is damaged, swoop in on top of them and fire right before you pass over them. This takes timing so you don't run into other missiles (rule #1). The reason for this is because you do have 1 shot before you have to flee and re-stealth. But the other reason is for the surprise factor and hiding amongst the explosion (if you hit your target). It buys you precious milliseconds to re-stealth.

        With this playstyle I rarely died, and went after the top dogfighters over Africa: k, jj, test, qjp (?). After a couple of pickoffs and being told to fly a real plane, I sat near the top of the score board regardless of fluctuations.

        That is, until BeatDaddy came along. A Goliath pilot of great skill, he took out most challengers. However, as a Prowler I was able to almost solo him until jj out of the blue took my kill. So I killed JJ. :)

        The strategy is simple. Only shoot the Goliath from the sides or back (avoiding the big missile) and only when in range of the AoE effect. Why? You want to force the Goliath pilot to waste their energy spamming the AoE. You have time on your side, you can hit them once every 10 seconds or so and still whittle them down because of the slow Regen.

        But beware, big missile is 1 hit kill!

        I never was able to fully solo BeatDaddy, as once I lost my upgrades from an unrelated death the Prowler cannot tackle a more upgraded Goliath.

        • Jd 2321 days ago
          For Goliaths the optimal strategy I found was to tail them and wait until they ran into some trouble on the front end. Its easier to make it a pack kill. Wait for a moment of weakness and then finish it off.

          In general the optimal strategy seems to be sniping. Stay on the edges of the map (N. Europe, mid Africa) and then sweep in to more highly trafficked areas and pump in missiles. If you are ever hit retreat immediately until you recover your health. That's a pretty low risk way to stay at the top of the leaderboard.

        • stjoris 2321 days ago
          JJ here, that was a nice skirmish, well done on the stealth kills.
          • cjslep 2321 days ago
            Thanks, had a lot of fun! Hope you did too.
        • p932 2320 days ago
          You should definitely get a proper plane ;). k
        • Fnoord 2320 days ago
          > Your first goal is to never die. Period.

          > The second objective is one of cowardice.

          Those should be your goals in BTR and perhaps also in FFA (with less punishment so requires more discipline). If you find yourself unable to follow this playstyle I recommend trying out BTR for a while and apply the lessons from adapting your playstyle there on FFA. But FFA is just warming up for CTF/BTR IMO.

          The reason why I quoted this is that it is untrue in CTF. Cowardice doesn't yield you the flag in CTF so you need some people on offensive. How many? That depends how good your defensive holds as well as how good you're at intercepting (f.e. I like to switch to Predator when I want to intercept). In CTF, the strategy you mentioned allows for a strong long term solution because defending is much easier than offending. But sometimes you need to sacrifice yourself for the team, or you need to attack (which puts a massive crosshair on you). Getting a lot of kills (and pretty much therefore upgrades) isn't difficult whilst you're not going for the flag. Also, if you're escorting the flag carrier your first goal isn't you not dying; its them carrying the flag to safety. There are some tactics like spraying and stopping the enemy with distractions but that won't stop players who have strategic oversight. At best you're a nuisance to them; that could be your goal.

          The Mohawk (helicopter) is great in CTF because of its speed and because it can put pressure on key points, and its a strong contender versus stationary and slow. Strafing required some practice but eventually you will get the hang of it. Its sometimes a bit "YOLO", like for example flying through explosions where I am not entirely sure if its friendly missiles or not. Then I end up with say an upgrade, but I wasn't sure it was safe. I took quite some risks grabbing some upgrades. Defensive upgrade can safe you there. Another thing to remember with Mohawk is that Prowler can be seen on radar and they cannot keep up with you if you don't want them to. If you can strafe and spray and be a bit unpredictable with your movement you can give other players a hard time aiming (although I found many people to be rather terrible with aiming).

          > I never was able to fully solo BeatDaddy, as once I lost my upgrades from an unrelated death the Prowler cannot tackle a more upgraded Goliath.

          That's because the Prowler isn't that great against a Goliath; it is good to snipe one shot kills.

          I found the best recipe in non-CTF for Goliath is to ignore them. The Goliath players are constantly playing "you can't kill me nanana". True, I can't, but you can't kill me either in my Prowler/Mohawk/Predator/Tornado and even Goliath itself. Instead of seeing them as a target you want to kill, see them as something which is out there to lure you to beat them in tennis or (ping) pong where they have an easy time to bounce all your balls back. Yet if you don't play, you can't lose, and meanwhile you can win from all the other players and they (the Goliath players) can't beat you either. If more people would do this, it gets very boring for the Goliath players. That's when you read in chat "I'm at the Canary Islands come and get me". I'm still chuckling on that one. You just know he's bottomfeeding from noobs who go for the "challenge", to grab some upgrades.

          That's for FFA. That doesn't work in BTR though. BTR makes for a very boring Goliath matches IMO. In CTF, Goliath is very weak IMO. I don't see the point. Its very slow, it can't easily build up upgrades, and it can't troll/lure. It can sit on a chokepoint but then there's other stronger contenders. Only thing is 2 or 3 of them I couldn't get past when they were defending. Cause I couldn't kill them and they shot me. But that was me soloing on offensive versus 5 people on defensive. Some good Tornado players were also able to kill me. And in the end I did get past.

      • b0rsuk 2321 days ago
        I don't agree Prowler is good against Goliaths. Even if you find one that stays on the edge of the crowd and doesn't use radar, it takes so long to kill a G because of your poor damage potential. It's easy for another player to swoop in and steal your kill. And it only gets worse as Goliath upgrades Defense, Speed, and Energy.
      • b0rsuk 2321 days ago
        Prowler is even better against Mohawk, especially those staying on the edge. One shot, one kill, they don't see it coming.
    • seangrogg 2320 days ago
      I was playing Goliath last night (boop, FFA) and both of these craft do have their uses - they're actually far more worrisome to the Goliath than a Predator or Tornado.

      The Prowlers are great at whittling down a Goliath and otherwise being a psychological nuisance; while there is some counterplay involved a lot of it comes down to a mixture of luck and intuition.

      The Mowhawks are just downright nightmares over open water. They fire much faster than you can deflect, can maintain enough range to avoid the missiles you do deflect, won't die outright to one of their own missiles you've deflected, and will often outrun your missiles. In open waters they should win a 1v1 situation through overwhelming bullet hell mechanics; your best bet is to take them into mountains where you can limit their movement advantage.

      I do think it would be interesting if each craft had its own upgrade line, but I imagine that'd muck with being able to change frames during gameplay.

    • 3Pi 2321 days ago
      I really enjoyed this, primarily playing as the Tornado.

      The main issue I had with the game was trying to get to spectator mode - it was a very short amount of time between respawns which was great, but hard to actually hit when trying. I'd suggest either or both of a hotkey to enter spectator mode, or a button to spectate after next death.

    • sh4z 2321 days ago
      To me it seems like Goliath becomes way stronger than any other ship once you have a lot of upgrades. Basically impossible to kill someone playing it safe with a max upgraded Goliath
      • b0rsuk 2321 days ago
        Upgrades are designed in such way that Goliath benefits from them more than other aircraft.

        Defense: +5% per upgrade. Goliath gains the most, while a Mohawk (helicopter) with 2 Defense upgrades blows up from a single Predator (default) missile. But you still need those 3 or 4 defense upgrades to survive a stray missile, or more importantly - a Prowler.

        Speed: extra speed is not much needed on already fast aircraft, sight distance is limited and human reaction is limited.

        Energy: it lets Goliath deflect and shoot more often. Others are not as energy intensive.

      • b0rsuk 2321 days ago
        Goliath is strong, and I haven't seen a very good player playing it (I was leading the list with it for some time). But I think a Mohawk (helicopter) player would eat it whole. Mohawk has high rate of fire so reflecting missiles isn't much use. It's also fast and its missiles are fast, so it should be like shooting a fish in the barrel. Oh, and you can strafe!
      • jsmthrowaway 2321 days ago
        Impossible 1-on-1, maybe. Bring friends/enemies and a Goliath goes down quick, especially if you can time your shots as the Goliath is deflecting someone else's.
        • PhasmaFelis 2321 days ago
          If it takes multiple attackers to reliably bring down one Goliath, that's clearly overpowered.
          • behringer 2320 days ago
            It doesn't. You can take it down fairly easily with the prowler. Takes about 3 shots. The prowler easily takes out Goliaths and Mohawks. It's a great unit.
      • jlos 2320 days ago
        The Tornado (3 missile) can take one out if the shots are well timed, i.e. waiting for other players to attack and it uses a number of deflects.
    • b0rsuk 2321 days ago
      Another upgrade idea: anti-missile system. Rather than destroying, slowing or deflecting missiles, it would draw a vector in front of each missile as it gets close to you. Higher level could warn you earlier and draw more useful vectors.
    • JepZ 2321 days ago
      The prowler can be very useful in CTF. Nevertheless, I think it should be faster when its not cloaked ;-)

      Actually I think all aircrafts could use a a little bit more speed.

      • pqh 2321 days ago
        I'd be happy with more turn speed on all aircraft. Or maybe dual-stick control. :]
    • claudiulodro 2321 days ago
      Helicopter all day! That fire rate is so good! To each their own :)
      • shash7 2321 days ago
        Ya. Just spam attach in a straight line to wipe out everyone in your path.
    • spydum 2321 days ago
      while I agree about the prowler, i was holding #1 for a solid hour or two in the mohawk. It takes some strategy (mostly about orienting yourself north frequently), but it still is useful. I agree, if POV could be toggled to follow, it would be really solid. also, leveling up defense makes it suck less.
      • b0rsuk 2321 days ago
        "orienting yourself to face north" is not a strategy, it's an interface deficiency. Yes, it would really help if viewport rotated with your aircraft !
    • behringer 2320 days ago
      The prowler is one of my favorites. Can take out a goliath or mohawk easily. The other units usually need assistance to destroy.
  • myf01d 2321 days ago
    you just wasted my entire day :D

    btw it performs better on Firefox 57 than chrome, I had some lags on chrome then switched to Firefox and it worked without a single lag

    • Kairin 2321 days ago
      It's the new Firefox that makes it better. Previous versions got outperformed by Chrome!
  • briholt 2321 days ago
    Awesome game. My only request would be make the planes less maneuverable and move more like real planes. This would make it less chaotic and allow more dog-fight and strategic play.
  • hanzulrich 2321 days ago
    This is actually really impressive well done
  • nkkollaw 2321 days ago
    Wow.

    It's fun, and implemented beautifully.

    Great job!

  • alexasmyths 2321 days ago
    Bravo! Cute game. So many things done well.
  • deathplus 2316 days ago
    #funz0

    @fivesigma thank you!!!

    #2k17

  • samstave 2321 days ago
    blue tooth physical keyboard on ipad: caps lock kills controls.

    please update to ignore case in controls.

    also bug, BT KB kills any touch control on an ipad... plus it hangs on a certain direction and contrl dies very fast...

    way too buggy to even play on an ipad with a BT KB

    • fivesigma 2321 days ago
      Safari on iOS is generally buggy. WebGL and WebAudio are very glitchy.

      I don't have a BT KB so I didn't test that case. Will do!

      • samstave 2320 days ago
        I am using chrome on the ipad