Hacker News new | past | comments | ask | show | jobs | submit login
This Post Took 3 Years to Write (brawl.in)
160 points by kenpratt on Sept 12, 2013 | hide | past | favorite | 61 comments



"Like who you work with: In life, and in business, surrounding yourself with people you enjoy makes difficult times easy."

A very underrated statement. This really matters. No matter what you do in life, it always comes down to the people you do it with. E.g. People don't leave a company, they leave their boss. People don't leave a marriage, they leave their spouse etc etc.


That is a very valuable statement, however, in longer term commitments like friendship and marriage, the prerequisite you can continue to like the people around you, is that you must first like yourself. You will eventually start to see yourself in their eyes.


People don't leave a company, they leave their boss.

Sometimes, even if your boss is nice, you do leave the company.


I'm not sure where I read this, but one theory is that as long as two of the three "work pillars" are satisfied, you're ok in your current position. The three pillars are colleagues, salary and working tasks.


This is so, so important. The people you surround yourself with (and this is just as true personally as it is professionally) really shape who you become. Want to do amazing things? Surround yourself with others who already are (or are at least trying really hard).


I don't agree. I prefer to work and be alone.


If I take your meaning correctly, you do agree! You also would prefer to work with the same set of people you want to hang out with. It's just in your case that set is empty in both instances.


Both sets are non-empty.


In Tutorial, when being instructed to place the 8th-grader, it's not clear that it should be placed on a specific tile out of 6 (?) highlighted. Took me some clicking around to notice that small green arrow against greenish tile and realize that.

Later on, same hiccup with "Now press forward". Green smallish arrow against cyan background next to green header pointing at green field... you see where I'm going.

  --
All in all, while this is not something that I'd play, it appears to be really well done and it leaves great first impression. Congrats on the launch and here's to hoping it will make you rich, healthy and happy! :)


I clicked like 50 times thinking surely this is broken. Then finally figured it out.

Also, I kind of wanted to play, but was annoyed that I had to type in a username and password. I am so tired of typing in another username and password. Just let me authenticate with something else if I'm too lazy, please!


I had the same issue with the tutorial. Looks very polished, too. Congrats on launching.


Also, having the modal boxes jump around is kind of annoying.


Same here. If you transition one into another - fade out content, resize and move into new place, fade in new content - and do it quickly (200-400ms), you'll get nice continuity and better flow to the tutorial. But as others have said - great job as it is!


Something that is not said often enough: congratulations on launching! Even if it was years behind schedule


Thanks! I'm more of the "launch early and iterate" philosophy, but unfortunately with games you need to be much more polished than a web/SaaS app.


An interesting example of this is Dejobaan "1, 2, 3 Kick It! Drop that beat like an ugly baby" which is effectively a mashup of their earlier game, "AaaaaAAaaaAAAaaAAAAaAAAAA!!!" and AudioSurf. They released a prototype to pre purchasers, which then they put on Steam (privately) for ease of distribution.

Leading up to Portal 2's release, with the potato promotion, a still unfinished "Kick It!" was involved as part of the promotion, with users needing to obtain a certain ingame achievement. However, it was not at all made clear to users that this game was still in alpha. Tons of users had a bad experience, and a game that wasn't even really intended to be played yet ended up getting exposed to the games industry at large, of course, with a horrible reception.


Congratulations!

Please don't let the delay overly worry you. Here's what the great master Shigeru Miyamoto said: "A delayed game is eventually good, a bad game is bad forever." (from: http://nintendo.wikia.com/wiki/Shigeru_Miyamoto/Quotes).

Of course, you could do 'updates' but you have to make a good impression with your first cut.


Agree. Congrats. BTW, the game is just great. Keep working.


Good work!

I tried out the tutorial and thought it was pretty good, but wanted more before signing up. I'd recommend putting in another larger battle where the tutorial ends, so I can get a feel for how the game plays.


Good feedback. Having less friction before asking players to commit, would surly help. Something we'll look into for the future.


Agreed, although I must say I was positively surprised that I could actually try out the game before having to sign up in the first place. More people should definitely do something like this.


I felt the same way. And then I signed up with a bogus account, and it wanted an e-mail verification.... Why make me e-mail verify?


E-mail verify is a GOOD THING. They're going to need your e-mail address anyway, for the inevitable password resets and such. And almost nothing drives me more nuts than sites that take down an e-mail address during registration/account creation and then DON'T verify it. Why? Because I've discovered that there are thousands of idiots out there who either don't know their own e-mail address and accidentally type in mine, have a personal vendetta against me (so they sign me up for crap sites using my e-mail address), or want to sign up but use a disposable e-mail address to do so (and again they use mine). Apparently I have a common-sounding-enough (err, you know what I mean) username on GMail that people are constantly signing up for crap and using [myusername]@gmail.com to do so, and I am SO TIRED of receiving it all.

If more websites would verify, then this wouldn't be a problem.


it's a free to play game, so they need a way to talk you into spending money :)


Gave the tutorial a try and signed up.

We're huge fans of tactical strategy games here in the office, so I've shot the link around to get a few people up and running. Small game studio based out of Toronto here, so if you'd like some feedback from peers, let me know and I'd be happy to collect what feedback we can offer. :)

Congrats on launching!


I'm the other 1/2 of the development team. Glad to have some other devs kick the tires. Would love whatever feedback you have! Thanks!


Cool! You guys have an email I can reach out to? Might take us a bit to get some more game time under our belts. :)


Yup. You can use the in-site Feedback link, or hit us up at hello@atomicbrawl.com


Consider it done. :)


There's some pretty unpleasant stuff in the "Terms and Conditions". I didn't agree.

* If you link to the site, you can only say nice things

* You can't opt out of their emails

* They say, "please refer to our privacy policy" but there isn't one (this might be an oversight or maybe I just missed it)

[edit for formatting]


Valid feedback, not an excuse, but we drafted this with a lawyer ages ago and haven't had the funds to properly revise. That said - it's not an excuse, and I have nothing to say but we're sorry. It was an launch oversight.

We will look to revise this to get rid of the yucky stuff. Lawyers can't be that expensive :/

That said, you can opt out of all emails, and we obviously the link stuff is just dumb and not enforceable.

Apologies.


Thank you for the response. Is there any reason why you can't just take those clauses out?

You also say that you might change the terms at any time. Go ahead and change them. :-)


Valid point. I guess we don't really need lawyers to remove stuff, likely only to add them. We'll take them out this evening.

[EDIT: Terms have been updated. Thanks again for bringing this to our attention]


Don’t waste hours hours on something someone else can do in minutes. Value your time.

Yep, hence why I hire designers..


I played through a dummy game for about 20 minutes.

This seems like it will be a lot of fun. My suggestion: Make basic info (attack,movement, etc) about the brawlers viewable without clicking. There's too much clicking as a new player because I don't know what anything does.


"Had 1,867,713 additions, 1,748,514 deletions and 4,923 project commits."

Damn you're persistent!

In hindsight, why did take so much longer than initially expected? Poor estimation of the initial target, or a large change from the initial target?


I think to be fair, a bunch of those insertions/deletions were from checking in node_modules early in the dev cycle. But the 5k commits is accurate :)

And for schedule, it was vast underestimation of the scope of a digital CCG combined with having day jobs => bad estimation and inconsistent hours.


I suspect that managing a day job and a kid impacted the schedule quite a bit. I recall a quote from another thread, "Once you have kids you are only allowed one hobby."


Tip to others trying the game: Play multiple games at once. Start a game, then open the menu on the left, click Start Game, and begin another. I've found some players are quite unresponsive and having a few on the go keeps it interesting. You get notified when it is your turn in each game. Enjoyed my first foray into this game, nice work guys :)

Feedback:

- As someone else said the 'End Turn' button should disappear or be more heavily disabled when it's not your turn. A more prominent alert at the top of the screen when the turn hands over would be nice too.

- Notifying of the turns you need to take is great when you have multiple games on the go and totally saved the experience for me. It would be even better if you could jump between games more quickly. Imagine a quick-jump menu on the right with all your active games in it.

- Music/Sound please! (I'm sure you're working on this!)


My main feedback based on playing one game is that "End turn" shouldn't be visible, even faded, if it's not my turn. I found myself clicking that a lot during my first game because I wasn't sure if I'd passed control to the opponent or not.


Isn't it great that stuff like this isn't getting getting built in Flash anymore.


Well, that felt intuitive. I didn't want to click on a card then click the (i) to view a detailed description. So I held ctrl and clicked it. It worked!

I'm going through the challenges right now. So far I'm really enjoying this. Nice work!


Right-clicking to get info was what came to my mind -- which also works!


Awesome game! Totally with you..Launching as early as possible with a MVP simply doesnt work for games.. There are some exceptions if you target the right audience (Minecraft) but in general gamers are very unforgiving. This being a side project made by 2 people who have jobs and families i can only imagine what kind of work went into that. Great job!


Great game! Do you have short overview of what you used for making this game (frameworks, database, hardware, etc.)?


Sure - I can speak to that a bit (there's a bit more information in an interview we did over at: http://blog.nodefly.com/post/49780591448/nodefly-buzz-atomic...)

We're currently running an all javascript (coffeescript) stack. In the backend we have a variety of node.js servers. We have the following "types" of servers:

- Metagame: handles our web api requests - Game: handles all the game logic, on the server. no client side game logic. Because we're all JS - client is effectively open-source. - Notification: routes messages and notifications to the users, utilizes 0mq between servers. - Matchmaker: takes in requests for game searches, keeps requests in memory, and finds matches. - Overseer: orchestrates where all the servers live. Want to know the address of a server? talk to the overseerer. Need to spin up a new game server? Overseerer. - League: Handles league management.

We currently have physical 6 servers (2 metagame, 2 game, 2 for the others). The metagame mixes web-sockets and standard web requests. The game server is web-socket only. These are the only two servers that talk to the clients. All other servers just network between themselves.

The Metagame, and Game server are fronted by nginx which acts as a reverse proxy, does ssl termination, caching policies, etc. All our assets (images, etc) are stored on Amazon Cloudfront, and cached forever. All filenames encode the MD5 signature of the file to ensure that we can cache everything forever, speeding up the clients.

We're currently using MongoDB to store all our game data. We use http://www.objectrocket.com/.

We were also accepted into the Rackspace (http://www.rackspace.com/) startup program which provides us a lot of free servers for a year. While we don't need all 6 servers right now, we can test out the infrastructure and launch this way, allowing us scale up easier. Free for a year was a good reason to move away from AWS - where we previously resided.

We went with nodejs - largely because of the "fun" factor. When we started we didn't have a ton of familiarity with it, but we wanted something different, and node had a lot of buzz at that time. While writing it in C, Java, or Erlang would of been more in our wheelhouse, we knew this was a hobby project and wanted to learn something new and enjoy ourself. It turned out to be a good choice, node is great. It performs well, and is a joy to work with. I've always felt that server side performance just needs to be good enough, you can optimize and optimize and optimize, but at the end of the day your stack needs to be architected such that it can run on 100s of computers at a time. You can only run with 1 server for so long, so creating something is scalable in hardware is more important then squeezing a single server for all it's worth. Node, combined my 0mq (for us) makes this a snap. My 2 cents anyhow.

Mongo was chosen for a similar reason. It has nice aspects to it, and is a great compliment to an all JS system. For us, we're not query heavy so it was a good choice. That said, as we add features, I can see partitioning our data into mongo data and more traditional RDBMS data. Mongo is good for certain classes of data, but you need to know what you're getting into. If you'd like me to talk to anything else, let me know.


Very cool, thanks for the info. I don't play games, but I do develop servers and I find this fascinating.


Thanks for the in-depth answer!


Played the game, it is very good. A couple of points, - I was also confused by the end turn button. - Is there time limit on the move? It wasn't very clear to me. -It wasn't clear to me that traps affect friendly units (A warning would be good.


Not having a time limit is a big issue. Currently I have 5 games where the opponents are AWOL.


Not sure how I feel about the considerable bonuses for supporters. Maybe less cards/gold and more aesthetic things? Gold bonus and 50% more cards per challenge reward is quite high.


> Had 1,867,713 additions, 1,748,514 deletions and 4,923 project commits.

93% of the code written was replaced at an average of 734 lines changed per commit. That is some serious coding.


Not sure if anyone here had the pleasure of playing "Glitch", but the copy done by Chris Shorrock is wonderfully crafted and reminiscent of the game.


That's what I thought! Even the artwork style looks similar. The gameplay is very different though.


Copy?


Copywriting. All the character descriptions and such.


Congrats on launching! Not much of a gaming guy but liked the tutorial you have. Good luck!


I forgot how tedious signup forms are. OpenID or facebook/twitter login?


I emailed them to recommend Persona. Would get rid of the separate email verification step, too.


Oh my god someone wrote something awesome

I am going to be the best, like no one ever was


> Keep emotions out of arguments.

Impossible.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: