Skip to main content
GameDev.net gamedev.net
🔒 Locked

Seattle Jam Blog Entry

Started by Mike Bossy Dec 2, 2006 at 2:14 AM 18 replies 2.6k views
Original Post
Mike Bossy
Mike Bossy
Let's use this thread as a mini blog for what we're doing on the indie dev jam. We'll post what decisions we make along with what we're working on. We can use my web space on gamedev to post any files we come up with as well. The fun begins tomorrow at 12 noon. See you all there.
Mike Bossy
Mike Bossy
12:30pm

The gang's all here. We number 4 people right now. The bold decision has been made to give XNA Express a go. Two of us have limited C# experience and zero experience with the XNA framework so it should be fun :)

We've decided on working together on a single game around turn based tactics. Think Advanced Wars with a twist. We haven't quite decided on the twist yet but first things first. Installing Visual C# and the XNA framework.
Mike Bossy
Mike Bossy
2pm - I'll try to update more frequently but we got in heads down mode getting things started and software installed.

So the Advanced Wars idea is a go. The theme is computer battle so instead of land and water you have a motherboard, chips, resistors, etc.

Battle units will be around things like viruses, worms, trojans, etc.

We've got one person working on the basic rendering system, another working on the map structure, a third working on the server component and somehow I got stuck on art. Everyone is going to regret the decision of putting me on art when they see how ugly the game looks :)

So turn based online multi-player IndieWars is the goal. 22 hours left to get there.
Mike Bossy
Mike Bossy
2:45pm

We have basic rendering of tiles working with a randomly generated map. Next up is getting some basic input and scrolling going. Map work continues as C# and the .NET framework are being learned on the fly. The basic background tiles are completed. I'm not sure what the status of the networking stuff is but JF is busy typing away so I think it's going :)

I'll try and get a screenshot of the current state in the next update.
Mike Bossy
Mike Bossy
4pm

We have our first screenshot. Enjoy! Art for the units is also done and we're starting on the battle logic. We're going to use just a basic rock paper scissor method for that.

Randomly generated map


Mike Bossy
Mike Bossy
4:45pm

Map and game entity work continues. We now have basic game entities rendering. Battle formula is decided on. Lunch has been eaten in some form or another.

Man I'm getting old. We've only been at this for about 8 hours but my forearms are already tired from creating ugly art.
silverphyre673
silverphyre673
Wish I could be there :( I just spent my day taking standardized tests for 4 hours. Next time. Having fun?
my siteGenius is 1% inspiration and 99% perspiration
Mike Bossy
Mike Bossy
6pm

6 hours in. We now have a cursor you can move around the scrolling map along with a nice UI side panel made from a breadboard. Pretty sweet. 2nd screenshot is below.

Some tweaks made to the battle system to take terrain into account and it's starting to look good.

Now with cursor and UI Panel!!

[Edited by - Mike Bossy on December 2, 2006 8:47:03 PM]
Mike Bossy
Mike Bossy
6:45pm

Fixed the previous screenshot. I think I have the battle formula to a point that it's close enough to cut it.

AttackStrength = ((AttackerHP / 10.0f) * Strength * Instigator * AttackerTerrain);Shielding = ShieldsAgainst * DefenderTerrain;return (AttackStrength * Shielding);


Using the following table as constants:

Type Strength Shields1 Shields2 Shields3 shields 4 Shields 5 Shields6
Virus1 1 10 0.5 0.3 0.8 0.5 0.2 0.1
Virus2 2 20 0.8 0.5 0.9 0.8 0.4 0.2
Worm1 3 10 0.2 0.1 0.5 0.3 0.8 0.5
Worm2 4 20 0.4 0.2 0.8 0.5 0.9 0.8
Trojan1 5 10 0.8 0.5 0.2 0.1 0.5 0.3
Trojan2 6 20 0.9 0.8 0.4 0.2 0.8 0.5

Bomb1 1 10 0.5 0.3 0.8 0.5 0.2 0.1
Bomb2 2 20 0.8 0.5 0.9 0.8 0.4 0.2
Spy1 3 10 0.2 0.1 0.5 0.3 0.8 0.5
Spy2 4 20 0.4 0.2 0.8 0.5 0.9 0.8
Root1 5 10 0.8 0.5 0.2 0.1 0.5 0.3
Root2 6 20 0.9 0.8 0.4 0.2 0.8 0.5

Mike Bossy
Mike Bossy
7:45pm

First integration between people. Map rendering now uses real maps!! My art sucks.

Now with units rendering!
Mike Bossy
Mike Bossy
8:30pm

Elf needs food. Badly. I need food.

Working on our second integration. We've got text rendering working and unit shading based on what team they belong to. I added keyboard support for those of us who don't have fancy game controllers to plug into our laptops. We also have the ability to select and move units. You can move them anywhere you want but I'm told that implementing some pathfinding to prevent invalid moves will be a piece of cake. (not being coded by me!)


Work has begun on the map editor as well so we can have fun user generated content!! Whee!!
Mike Bossy
Mike Bossy
10:30pm

Dinner is over with a little online fragfest to relieve some stress. It's back to work. Showing users where they can move to is up next along with getting the back battle logic. Map editor is still on tap too.
Mike Bossy
Mike Bossy
12:00pm

Fog of war is now rendering. I'll get a screenshot up as soon as I get the latest "build". Bunch of utility work into the map object to make finding out what is around a a given unit on the map. Sleep issues are starting to set in
as my math skills have started to degrade.

Latest Screeny

Mike Bossy
Mike Bossy
1:30am

We're wrapping up for the night. We're going to meet up in the morning to continue. All in all the first 13.5 hours have been a success. We have most of the rendering up and running. We have a network server ready to receive and broadcast state changes. We have a map editor that uses all real art assets and allows you to create your own maps. We also have the beginning of some basic gameplay elements.

Tomorrow morning I'm hoping to wrap up the attacking code. Right now I can detect which of the neighbouring cells around you have other units into it. I just need to change that to filter out to only enemy units. After that some ugly attack UI and then call the attack functions we aready have ready to go.

I'm happy with what we've accomplished in the first leg and I think we'll still be able to get some good stuff done tomorrow.

Until the morning.
Mike Bossy
Mike Bossy
10am

After some sleep and a nice warm shower I'm back with a coffee in hand. The rest of the guys will be showing up in a bit. I'm not sure how long we're all committed to working today but I'd love to see us keep going to get something truely playable. To that end I will be working on some of the game logic around moving and attacking units this morning.
Mike Bossy
Mike Bossy
12:30pm

First new "build" of the day. Using proper source control would have been nice and will be a must have in future events.

We now have some basic animations moving characters. Displaying unit information when units are selected. I was about to implement attacking until I found a bug in my code seeing who I can attack. I'll be looking into that next.

We also will have map loading in on the next merge and build.

So far so good on day #2!
Mike Bossy
Mike Bossy
2pm

Targetting and attacking is in!! You can't kill anyone yet but you can see their hitpoints go down. We'r also working on integrating pathfinding in so you can only move to legal squares as you can currently run all over the place. Work is beginning on the player class whch will limite players to moving their own pieces and knowing when it's the end of their turn.

No new sezy screen shots but there are game play elements in the game now. They might even be mildly balanced.
Mike Bossy
Mike Bossy
4:30pm

We've decided to wrap it up. We've managed to get a bunch of work done in the 19+ hours we worked on this thing. In the end the experience is what we were looking for out of this experience. We've learned a little about what's involved in trying to throw a weekend game dev session but we've also learned a lot about rapid development. There's no reason every pro development shop shouldn't use similar techniques to prototype all of their ideas before diving into huge budgets. That would save us from so many scary games that shouldn't be made.

XNA express is a sweet little environment. We managed to throw together a lot of functionality in a minimum of time and didn't run into one random crash or weird bug. We were able to concentrate of implementing functionality instead of ugly low level details. This is key for this type of event.

We all have a copy of the last build and hopefully some of us will wrap up some loose ends. It was way too agressive a project to finish in the alloted time but we pretty much knew that at the start. The finished project was not the real goal. I believed we reached the real goal of having a fun coding session with some new people and we were all forced to think about different parts of the development process. (I know I'll never look at dev art the same way again!)

Driv3MeFar
Driv3MeFar
Postmortem:

This was my first project of any substance in C# and, needless to say, in the XNA framework. As such, there was much fumbling around and not using language features cleverly. In the end, I probably caused more bugs than did anything productive [wink] (I also didn't have a laptop that could run a game using the XNA framework which made working on one somewhat challenging).

But it was, all in all, rather enjoyable. Now that I've seen XNA in action I can definitely see how usefull it could be, especially for an Indie developer. It makes prototyping ideas extremely easy, and the ammount of existing code you can leverage is pretty astounding.

If nothing else, I'm definitely much more interesting in XNA and C# in general than I was 2 days ago.
nekura
nekura
Wish I coulda gone to this, but then again I did more than enough coding these past few days in order to make first playable this Friday. XD
Douglas

Topic Locked

This topic has been locked by a moderator. New replies are not allowed.

Sign in to reply to this topic.