Saturday, December 13, 2008

Final Week

This is the final week of our course. Final submission of our game is on Wednesday and the last day of our course is Friday. We still have a lot of work to do between now and Wednesday. I'll be here Sat and Sun working on the code, and most of the team will be too.

Paul

Friday, December 12, 2008

Late Night

With today being our Beta Milestone, I spent a lot of time last night polishing up sections of code. Most of the game elements are in the game, and it it looking good (or at least I think so, but I'm probably biased).

We've also got some testers coming in today to playtest that game. They were supposed to be coming in yesterday, but lets just say that we failed on that one. Probably the biggest problem was that an hour before the testing was supposed to take place, everyone was frantically working on and uploading last minute fixes/improvements into the game, but because of the sheer ferocity of the moment some people didn't check their code before committing , then everyone had buggy builds.

On the flip side, today we can only improve on our performance.

Leaps and Bounds

Wow...a lot of progress today. Most of the game elements are now present in the game engine, it's just a matter of polishing and finishing the build we currently have in preparation for submission, which is what we'll be doing tomorrow. I anticipate a busy day ahead!

Paul

Thursday, December 11, 2008

Crunch time!

The heat is on. Tomorrow the Beta build is due. This means the game need to be finished, minus a little polishing. It also mean no sleep tonight. Bring on the V!

Megadoom

Greetings,

Less than 24 hours before the beta build is due... Scary stuff.
The game isn't in a perfect state (far from it, in fact), but it has come a long way in the past week. The Alpha build was bordering on unplayable, the current build we have at the moment is a lot more stable than the one we submitted last Friday, and there are hints of game-play present...
Even slight hints of "fun", one might say.

Anyway, we have a lot of work to do, so I better get back to coding.

If two's company, and three's a crowd, then what is four?

Testers and Beta Build

Thursday... the day before our beta build is due. We have testers coming in today, in fifteen minutes actually, and we are rushing around trying to get everything ready for them. The testers were meant to come in fifteen minutes ago, but we found some last minute bugs and managed to get them to come at 2:30 instead of 2pm. How embarrassing!

The game itself now is looking pretty nicely, except for the fact that when you try to turn right or left with the Xbox controller you spin around at like a million kilometers an hour.

I have just been assigned the task of writing out some instructions, so better get on to doing that! Let's hope that we're ready in... eleven minutes.

Wednesday, December 10, 2008

User Feedback

Well its over due but the ability to provide the player with text feedback is finally done. Now when the user is able to interact with a game object or something occurs in the game that the user should know about a messege is sent to the screen. Now how cool is that!

The Level Editor

Well its been talked about, but here is the overview of what in the end it will be able to do.

Make Maps!

In detail...
Add lights, fog, custom made models, map size, premade models, buttons, walls, portcullis(Gate), rotating walls, shops, spawn points and im sure theres more.

Well thats what im working on. Must find out what day we are able to release it to the public.

~~Keegan

Patches

With the Beta milestone this Friday, we've got a lot of work to do to deliver on what we promised. I've implemented the collisions again (for what I hope is the last time), and they are looking really good. Your avatar has momentum so it bounces off the walls and energy is lost in the collision.

I've been working on blended models for Timeghosts and the Timewake, but so far I have had no success. Timeghosts and the Timewake require partial transparencies, while the GUI components require full transparency for their borders. I hope to get it finished tomorrow.

Minimap

Greetings,

Today I completed the minimap. Its a perfect example of the maths we've learned since the start of the year. In order to get it running, I had to cull out all the points on the screen that shouldn't be shown, then I had to convert a 3d point in space into a 2d point in space and rotate it so that it shows the player's perspective. Finally, I had to move that point from the origin, out to where the minimap is shown on screen...

Trying to visualize it all at once gave me one giant headache, which is why I used pseudocode. Pseudocode is like a recipe for baking code, it details the step by step instructions for making a piece of code, and it's a quick and easy way to overcome a problem that's giving you hardship. By using pseudocode, I managed to create a near-perfect minimap, the first time it was run.

Not...much...time

Short blog post...not much time...2 days to go...hair falling out...getting closer but still seems far away from completion...argh...

Paul

Crunchie Time

While I want to avoid the whole "crunch" work ethic in general, and hopefully have us leisurely completing the milestone by this Friday, it always seems to me like there is always something more to be done, or some extra polish that could be added, or one extra bug to fix.

So, we are going to have to work intentionally and stay focused over the next 3 days to get to where we need to be. With approximately 200 outstanding items, with 10 programmers over 2 days, that's 10 items a day per programmer we need to complete to be finished by Thursday night, leaving us Friday to polish up the submission. It probably won't work exactly like that, but it gives a rough idea of whats ahead of us. Some of the items are minor bug fixes while others are balancing gameplay and testing that all the components are as bug free as possible.

While it is fairly intense, I can't really complain. I love making games! Even though we are in what I would call a pressure cooker situation, I wouldn't have it any other way. I've learnt more about programming and also learnt things about myself and what I'm capable of (overcoming fear of giving presentations for example) that I wouldnt have otherwise had I not participated in this course.

Bring it on!
Paul

Tuesday, December 9, 2008

More collisions

Looks like I've spent a lot of time on the collision checks, and other mathematical functions. One of the problems was that player now has momentum, which means that the way that he moves is drastically different than the previous method. Now I've got to re-work the collisions to take this new data into account.

In other news, I've enabled alpha blending into the renderer. I haven't been able to test this though because nothing is using a draw function that utilities alpha blending yet. I guess it's just another thing to add to our list.

I also got to play around with priority queues today, boy was that a learning experience. Here's the important lesson to learn with priority queues: When trying to debug them in the watch window, the elements may not be ordered correctly, but they will be when you pop them off. Go Science!

Monday, December 8, 2008

Time to work even harder.

Its that time, we have hit the crunch time. We are all determined to get this game finished and up to our own high standards, and that of our producer's.

The level editor for the game is comming along better than it was a week ago. This will allow other people to make maps for the game.

Well untill i have time to blog again.
Keegan.

Milestone Review

We had some feedback from our producer today on our Alpha milestone submission. Basically there's a lot of work left to go and we have just under 4 days to do it in. There's still a lot of bugs to iron out and a few features that are not visible in the game yet.

It's going to be a busy week.

Paul

My Priority

So I've had the big task or practically re-working our render manager to enable alpha blending.

What this means is that I need to store two lists of render entities: one that has alpha enabled, and another that doesn't. The list of alpha not-enabled is rendered out first, followed by the alpha list.

The small problem is that the alpha enabled entities need to be ordered by their Z-Buffer depth so that they are rendered on top of the others from far to near. The basic maths involved is to follow the transformation pipeline by multiplying each entities world matrix by the current camera view matrix. From here, each entity is positioned in relation to the origin looking down the Z-Axis. To get the Z-Buffer depth, you can then pull it out of the world matrix from the z depth.

To make the sorting easier, I plan to use a priority cue. I think of it as a learning experience. This process needs to take place each frame, because the camera has most likely moved, so I've got to make sure that the function isn't too time hungry.