Showing posts with label Lead Designer. Show all posts
Showing posts with label Lead Designer. Show all posts

Thursday, December 11, 2008

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?

Wednesday, December 10, 2008

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.

Thursday, December 4, 2008

One day

Greetings,

One day away from the Alpha Milestone. Things are getting stressful and thing.

I'm going to sleep now.

Wednesday, December 3, 2008

Misconfudulation

Greetings,

Communication is key in the games industry. If you can't communicate efficiently and effectively, you put yourself in a very problematic position. Today, I was in that position.

It all started this morning at our round table meeting, when I complained about the fact that I couldn't start the HUD until we had written another piece of code that supports it (a dynamic buffer class). I also mentioned that one of the tasks I was working on yesterday couldn't be completed, due to that same piece of code. In the spirit of team-ship, my colleagues suggested a simple solution to the problem: "do it yourself." :P.

For the next few hours, I set about writing the dynamic buffer class. Little did I know, Nick (who sits directly opposite me) was working on the exact same piece of code...

Damnit.

So basically, I just did a lot of work, for nothing... And we're behind schedule... And now I have to go, because I've got to work on the HUD.

Monday, December 1, 2008

-IOU One Title-

I started off this week by learning how to implement and code threads. Threads are kind of like tiny little sub-programs, which act together to form a larger program. Threads are given their own small amount of processing time, and can even reserve a little bit of memory for themselves too. For example, most games split off a seperate thread for sound/music. This means that if a game is busy loading (or stalling), the music continues, regardless of what's happening with the rest of the game. The same thing happens with MMO games. Have you ever noticed when your internet connection stalls but everything in the game world keeps on rendering? That's because there are separate threads to handle rendering and internet stuff.

This is all well and good, but its a pain in the aft-end to debug. One thread by itself can be a lot of trouble to manage, and up until now, we've never used multiple threads in our projects. Introducing another thread into the mix is going to be like lighting both ends of a firework...

But you never know, it might go off without a bang.

Friday, November 28, 2008

Fridayday-dayday

Yay! It's Friday, possibly my favorite day of the week! How can one be angry, knowing that the weekend is only a few hours away?

Anyway, today we finally got around to fixing things that have been broken for a very long time. Namely, heap corruptions (the worst of the worst). We've fixed a whole lotta problems, but unfortunately we still haven't found them all.
Its a good thing we decided to stop adding new things and fixing the old ones. If there's one thing people hate, it's a buggy game.

So, assuming we can get all these problems fixed before Monday, we might actually have a semi-working game by the start of next week...

At least I hope so, because I'm getting in some testers on Monday.

Thursday, November 27, 2008

Mmmmmm.... GUI

As part of our project, we decided to create our own GUI, similar to what Windows provides. This means we've had to make a whole lot of weird things, such as buttons, tab orders, list boxes and scroll bars. The Idea behind this GUI stuff is that we want to try and keep our code nice and expandable; should we ever decide to swap out our renderer or go cross platform, we can change a few classes and the game will work...

OK, so there's a bit more to it than that, but that's the basic philosophy.

Wednesday, November 26, 2008

I Like Turtles

Greetings,

Finally, the wait is over and we can get back to coding. I'm filled with happiness. There's something soothing about sitting down, and coding up some of the ol' if else. Come to think of it, the soothing feeling tends to go away, usually when you realize that your code has to be scrapped because its grown self-aware and turned on the development team...

Anyway,
Maybe its just me, but for a few hours before your code goes to HAL, you are at peace.

Tuesday, November 25, 2008

More Fridgedness

Greetings,

It's the second day of feature freeze here, and things are starting to get stressy. We really have to get the updated project plan finished before the end of the day, because we're already two days behind schedule and we can't afford to lose any more time.

Here's the trouble though: the project plan rules all. We're going to have to abide by it, whether or not its any good. However, the more time we put in here, the less time we're going to have in Production. Conversely, the less time we put in on the project plan, the more problems are going to arise we get back to production again...

We really should have got this nutted out during pre-production, but being our first large-scale team project, we weren't completely sure as to how the whole thing worked. Nevertheless, we stuffed up and now we've got to fix it.

Oh, and remember: take care not to believe in the impossible, otherwise you're likely to find yourself stranded 400 feet above the ground, strapped to a banjo, wearing a Hawaiian shirt.

Monday, November 24, 2008

Begin Phase Two

Greetings,

Today we started the second phase of our project... Actually, let me rephrase that, today we were supposed to start the second phase of our project.

I say 'supposed' because we got frozen... Feature frozen... Because we have to rework the production plan. Not that this is a bad thing, its just a little inconvenient.

So, we've spent the whole day dividing up the remaining classes and assigning them to people, so they suss them out and provide a task list based on their required functionality. Not a fun process, but unfortunately its necessary.

Keeping the Romans at bay,
Ben.

Thursday, November 20, 2008

First pictures

There it is, the first screen-shot of our game. Isn't it wonderful? It's taken us all day, and our first milestone is tommorow, but we finally have something on screen. Look at it, it's beautiful.

Wednesday, November 19, 2008

Test Harnesses

Today, I've been writing test harnesses. Test harnesses are a really good habit to develop if you're a programmer. Basically, a test harness takes a given piece of code, and starts thrashing the candy out of it. If the code doesn't break, it passes. This is good, because it enables you to find bugs right from the point they are created and before that piece of code is injected into the system.

It's actually quite fun to break other people's code as well...

Tuesday, November 18, 2008

BUGS!!!!

Greetings.

I hate bugs, they are time consuming, take years off your life, and most of the time, the problem is started by some small -stupid- mistake (like that ol' ampersand).

A word of advice to aspiring c++ programmers: always set your pointers back to zero after you're done with them. It isn't that hard, it only requires one line of code, and it will save your team mates hours of trouble...

Two hours to be exact. That's right, it took two hours, just to find a wild pointer (that's what we call them). If it had been set back to zero, it would have taken five minutes to find and fix, but no, it took TWO HOURS!

Now I'm upset.

Monday, November 17, 2008

Concept art!!!!

Greetings.

I've been working on models for the past few days, and I thought I'd show everyone some of the models I've made(Keep in mind that these are shots taken from inside the 3d art package I've been using, and aren't representative of the final product).

To the left, we have a tree. I'm fairly proud of how this one turned out, as I've never modeled a tree before. The only problem with this picture of the tree is that the lighting is rather harsh on the leaves. This will be fixed in the final product.

In the top right, we have a T.A.D, or Temporal Anchoring Device. T.A.Ds are able to detach objects from the current time line for a little while... I'll explain that better another time.

Lastly, in the bottom right, is a picture of a Timecrystal. Bonus points if you can guess where I got the idea from.

So... That's that. Until next time, keep your mind out of the gutter, otherwise you'll clog the pipes.

Friday, November 14, 2008

The end of an eratic week.

Greetings,

It's that time of the week again. Everyone's mentally exhausted, people speak words but they don't form sentences, and the only thing keeping us awake is the "V" plugged into our veins. Oh, and we've run out of candy.

So now I'm counting down the minutes until 5.00 (It's 3.56 by the way). Then I'm going to go home, go to sleep (hopefully in the bed) , wakeup Monday morning and start the cycle again.

I guess I should say something random and spontaneous...

Err... Asbestos is good for the heart, but bad for the soul.

Take care now, bye bye then.

Thursday, November 13, 2008

Artwork

Greetings.

As your impeccable observational skills might suggest, I am currently working on the artwork for our game. I'm not a professional artist, but since I'm one of two people who knows how to export .x models from 3D art packages, and Josh is busy being lord-high-programmer, it's my job to create the assets. I'll try to get some pictures on here for people to see within the next day or so.

Remember to take good care of your Turtle,
Ben.

Wednesday, November 12, 2008

Stuff

Greetings.

In accordance, with the team's new "blame" policy, I was forced to carry the blame for the entire day, because I forgot an "=" and a "0". Now it's gone though, which is good, because I was slowly losing my insanity to the effects of the blame hat.
It gets to you... Sitting there, with the word "BLAME" written on it in large block letters...

Silently taunting you...

Gnawing away at the fringes of your mind...

Anyway, I guess I should sign off now, as my ramblings are growing thin...

One last thing,

To take a Panda by surprise, approach not from the back, as it will see you coming. For maximum con-panda-bility, approach from the sides.

Tuesday, November 11, 2008

What Ben has to say about all this

Greetings. I am Ben, the Lead Designer on this project. It is my job to bring everyone's dreams to life, create wonderful, shiny things and most importantly, create a fun game.

After all this talk of making a game, I suppose I should actually explain what we're making.

In short, brace yourself...we're making a multi-player 3rd person action-strategy time-travel game with puzzle elements.

In long, we're creating a game where the player takes on the role of a space-merchant, who after a series of unfortunate events has crash-landed on an alien planet. On board the space-merchant's ship was a delicate load of Timecrystals, which became scattered about the area when he crashed. Your goal is to retrieve the Timecrystals, while outsmarting a rival merchant who has landed in the area and decided to take the Timecrystals for himself.

When a player touches a Timecrystal, time resets, kind of like what happened to Bill Murray in Groundhog Day. However, unlike Bill Murray, our space-merchant is able to see his past selves, or "Timeghosts" recreating the actions he took in the previous time line...

That's the core of our game. It takes a while to sink in, so I'll leave it at that for the mean time...

And remember, scooters are only dead if you let them be.

Benjamin Maher,
Lead designer.