4 ms·
Ask HN: Need rules suggestions for my multi-player snake game
So I'm building a multi-player snake game with HTML canvas, MooTools, node.js, and socket.io as a learning experience. I just completed what I thought was the hard part, which was making the bare bones of the game like having 2 snakes in an arena, making a snack/score system, and most importantly having the two browsers be perfectly in sync with each other while updating 15 times a second (spend all day removing lag from responsiveness and synchronization).
I just realized that I completely suck at making rules for a compelling game. The rules in the game as of right now are simple but flawed. You get 100 points for each snack eaten and you win whenever your opponent dies. You get a bonus if you kill your opponent, which means they crash into you and not the wall. The flaw in this is, you getting a high score is entirely dependent on your opponent not sucking and not crashing into walls and such, because when that happens, the game is over and you can't score any more. I definitely want a leaderboard so this can be frustrating to good players.
So I guess I'm just wondering, what kind of multi-player snake game would be the most fun for you? Would you want more than two snakes per arena? What kind of bonus should you get for killing other snakes? Should you win via a point system from eating snacks or how many times you kill your opponent?
Here was my main thought process when starting this project:
1) You grow your snake by eating snacks like a traditional snake game
2) The longer you grow, the easier it is to trap your opponent
However I'm having a tough time assembling these ideas into rules for a full game. Any ideas or help would be very appreciated!
- redguava 14y agoI think the leaderboard should be based on your win/loss record. Leave snacks as a way to get bigger and give you a better chance to win the game... they don't need points as well. The game is a classic, no need to change much, adding multiplayer is enough.
- lopatin 14y agoThanks for the feedback! That actually makes a lot of sense. I was thinking that I would be changing more by removing score, but I'm starting to realize that having two objectives (getting a high score + trapping the other snake) is too confusing and they can't really work together. Especially since my aim is a minimalistic game, in the spirit of snake.
- 9mit3t2m9h9a 14y agoIf you want to allow for high scores, you could let people collect score over unbroken chains of victories.
- lopatin 14y agoNice, I think I might have two leaderboards, especially since I have the room on the screen for more. One for win/loss ratio and one for either length of winning streak or accumulated score for a streak. Yep I think this is coming together. I won't ditch the idea of having a score, but I will ditch the idea of competing against your opponent based on score. You won't even see your opponent's score, only yours. You compete for survival. And the accumulated score will be a sort of trophy :)
- caw 14y agoI had a similar idea in my video game design glass.(We ultimately went with something else). You can get rid of the wall deaths and instead make them elastic collisions. You turn either left or right when you hit the wall, and that crutch will force players to defeat each other. Of course, there's always the "hard mode" option where you disable this.
- debacle 14y agoI always thought you died in snake because you ate yourself, not because you crashed into yourself. I've actually been working on a similar game for a while. Email me if you want to chat about some ideas I've been tossing around.