This is the very first gameplay video footage of the basketball game I'm working on.
The quality of the video is very crappy, I'll try to record a new one with a better quality soon.
Here are a few things which are already implemented:
- Initial throw in. For now, the pawn which touches the ball grabs it instead of tipping it to its teammate. This will be fixed soon.
- The player can pass the ball to its AI teammate, and make the teammate pass the ball back to him
- The player and the bots can shoot. For now, everybody always score. I've started to implement missed shots, but it had some impact on succeeded shoots. I'll write a post about how I manage the interactions between the ball and the basket, and how I will fix the issues. Also, a post about the different ball states, and how I compute the ball trajectory when the players shoot is already planned.
- The behavior of the pawns (player and bots) is implemented when a basket is scored. I make heavy use of states to achieve that. Again, I think I'll write a post about that.
- It's not very clear by now, but the concept of periods and possessions is roughly implemented: there are 2 countdown timers in the middle of the top edge of the screen, which are started / paused / resumed according to the basket ball rules. Note though that when a possession ends and the attacking team didn't shoot, nothing happens; there is no side switch at half time; the possession is ended only when the ball touches the rim, not when a team intercepts the ball (which is not implemented yet BTW)
- There is a basic AI behavior. When a bot has the ball, it runs (backwards!) toward the basket, and when it is close enough, it jump shoots. A lot has yet to be done here. This will of course be the subject of a few posts I guess
- The video doesn't show it, but I have implemented a debug system (taken from here) which allows me to display some debug infos about the input system, collisions, etc... To switch between several camera views. To draw the ball trajectory in the space, and finally to draw the AI destination.
As you can see, this is not very much. But at least this is a good start. I expect to be able to bring features more quickly, now that I have taken the grasp on how UDK works in general. There are LOTS of things to do, obviously. But these are cool things, which should be fun to implement: AI, Dunks (and make the ball in the hands of the dunker match with the rim), basic menu, etc...
And when I'll have a solid basic gameplay, I'll start implementing the features which will IMHO make this game even better than NBA-Jam 🙂
But more on that later, I don't want to spoil so early.