Tankz screenshot 1

Sunday 22 January 2012

Lighting update

Well after a grueling night/morning of banging my head on the wall, I've managed to produce some basic multiplicative lighting effects. Looks pretty sweet! Got a nifty little muzzle flash on the gun when it fires. Doesn't look too bad.

Saturday 21 January 2012

Yay for recoil and cheesy additive lighting!

Today I added a little bit of production value to Tankz. I've paved the way for weapon customization, and added a 'recoil' effect on the main cannon. It looks pretty cool. I've also added some non-HLSL lighting for the time being. Once I can figure it out, it will be slick looking multiply-style lighting(maybe even dynamic shadows!), but for now its just cheesy additive. Oh well. All in time!

Tuesday 17 January 2012

Tankz receives multiple improvements

Another productive night.

Functionality has been added to the main menu - rather than searching in some file, you can now enter your name in a "player profile" section. Additionally, when you choose 'Join Game' from the main menu, you are prompted for the host's IP address.

On the networking side of things, the game now elegantly handles disconnects and so the server truly is persistant. Players can now come and go as they please, and will correctly download the current score.

HLSL also makes its debut in the game tonight - Tankz now has full pixel shader(2.0) support. Should be interesting to see what kinds of effects I can come up with.


..wow that's an ugly tank.

Wednesday 11 January 2012

Tankz Front End is born

Tonight was fairly productive - Tankz now has a Main Menu that greets you upon startup. There are several options, only 2 of which are functional at the moment - Join Game and Exit. The whole thing went together smoothly and without error. All in all a good night!

Saturday 7 January 2012

I pulled a Homer

To "pull a Homer": To succeed despite idiocy

Today was a bizzare day for coding. I was trying to work on the collision detection (Rectangular, server-side) as it was a bit shifty. The harder i tried, the more the code got screwed up and farther the results were from what I wanted. I got to the point where I was frustrated and I actually lost track of what I was doing and what changes I was making. At this point id given up, thought i'd wrecked my game irreperably when i clicked 'debug' just out of habit.. and it worked. Not only did the collision detection suddenly work perfectly, but a glitch to do with bullet positioning worked itself out at the same time. I have no idea what change I made or how. It was as though the gods of coding decided to give me a break. Very wierd experience.

Anyway - update: collision detection is now more accurate ;) Also, dramatically reduced network packet size which has resulted in a noticable performance boost.

Features

Here's a list of basic features of the game as of right now:
  • Realistic tank control; turret moves independant of chassis
  • Shadow effects
  • Fancy bitmapped fonts
  • Huge maps, scrolling backgrounds.
  • Map decals (Trees, roads, etc)
  • Collision detection, damage, explosions
  • Upto 4 player(this will steadily increase) deathmatch(more modes later) over the internet via Lidgren networking library
  • Dedicated server support
  • Scoreboard
  • XBOX 360 Controller for Windows support - including rumble support
The next update will include network optomizations, possibly prediction, a FrontEnd that will accept input for user's name and host IP to join, and some improved hit detection.



EDIT: This video is old and outdated. The game looks better now. Might be a while before a new video is uploaded, so this is just a basic idea of a very early multiplayer alpha. Theres more polish and depth now. ;)

Friday 6 January 2012

Tankz Blog Test

Hi! Post is a test. Eventually this will be filled with info about my project in progress, which for the time being is titled, "Tankz". Top down, 2D tank shootemup. (MULTIPLAYER!)

Programmed in C#/XNA using the Lidgren networking library. As of the time of this writing, theres a functional deathmatch mode where you can log into a persistant server, blast the hell out of whoever's online, check the current score.. etc.

Eventually there will be deep customization, more game modes, more production value (once i learn HLSL). Best of all? The target pricepoint! Free! As of the time of this writing, I do not plan to charge for Tankz. DISCLAIMER - THIS MAY CHANGE! If it does, it wont be much. A buck or 2 at the ABSOLUTE most. But in all likelyhood from where I'm sittin' right now, it'l probably be free.