DevBlog 1.1: Monkey Fight - Premise and Ideas
After a quick demo project using Mirror, an open-source high level networking API that I'm using as a replacement for the deprecated UNet, I'm ready to tackle a REAL project: Monkey Fight.
Here's the premise:
You are a monkey. You have banana-themed weapons. Free-for-all death match with other players, who are also monkeys.
Simple enough, right?
Here's the kicker: Each player has an Ape Rage bar which increases in some as-of-yet unspecified way (through damage dealt, killstreak, what have you...) and, when full, allows you to activate Ape Rage mode, doubling your damage, speed, etc.
This guy, a rigged monkey model free from TurboSquid, will be our player. I've found that sorting by free on these types of sites is bound to give you endearing models like this one.
Or this one:
When I was originally searching for free monkey models, I found this dapper fellow, and I just had to find some way to fit it into the game: thus, the ape rage mechanic was born. when you start to go into ape rage, your model flickers between the original model and this one, transforming totally into this one and doubling in size as ape rage activates and loud monkey noises start to play. I have a very clear vision for this part, trust me.
In terms of objectives, it will likely be just a free-for-all deathmatch with a leaderboard showing kills, deaths, killstreak. Maybe I'll add a team mode but there wouldn't be all that much of a point to that since the highest amount of people I could see playing this game at once is, maybe, three.
(...It is interesting, though, to note that I still have a free domain available from the github developer pack: if I can figure out how to get Mirror to connect online, sans hamachi, I can host a web player where players host rooms)
In terms of mechanics there's nothing too intensive here. The players will have access to maybe four weapons (bazooka, pistol, boomerang, sniper rifle... perhaps bow and arrow), and I'd like it if these weapons generated on the ground and you could pick them up, or pick them up off the bodies of other players. Naturally, ammo and health pickups would periodically generate.
I'll have to learn a bit about terrain generation to make the map (yes, just one, unfortunately.) I found a set of castle assets from the one and only kenney.nl, so I'm thinking the map is a castle on a sandy island in the middle of the ocean, with palm trees and such.
Now, for the networking stuff:
In terms of players, movement and shots, I think, should be handled server-side, with animations handled client-side. Granted, I'll probably try all sorts of different combinations here to find which one feels the least terrible. Shots would be much more fluid of handled on the client side, but that would be a bit cheesy and open the door to cheaters (oh, god forbid anyone cheats on monkey fight) so at the moment let's say server side.
The big challenge of this game will be the syncing of animations through the network. I'll have to learn animation layering, so that I can have the players' legs walking while they shoot, run or reload, and I'll also have to figure out animation syncing.
The next biggest challenge will be the animations themselves, along with the unique models for the weapons and such. I am no modeler or animator, but you gotta do what you gotta do.
My next post will be about animation layering, probably. No networking just yet.


Comments
Post a Comment