Monday, June 01, 2009

Watch our announcements LIVE

Friday, May 29, 2009

Geek Chart

I just added it to the blog. It is supposed to track my geeky activity and show the world how much of a geek I am, and how much time I spend with Internet Novelties. Just signed up for stumble upon just so the chart would be complete. What a total dork.

It’s AAAliveeee!!!…. well sort of.

Yesterday evening I began to inject some life into my entities by coding the Behaviour Class that goes inside the CSimpleAI Component, my first AI component in the game, which, at least for now, is the very basic Brain of my entities. The cool thing being obviously, that not every entity has a that component.

This morning I finished coding the very basic first behaviour to make into the game. BehaviourGoToPosition, which takes an entity, a Vector in the 3D space(target_position), and a speed value. The AI component takes care of passing the parent entity that it belongs to on the the Behaviour it currently has, and the values I passed as the target_position, and speed where totally hardcoded and arbitrary… calm down there! I’m just kick starting the whole thing.

A added this behaviour to the component as the initial Behaviour and voilà!!!

The entity quickly went where it should be going! OH! The joy of creating “life”!

Monday, May 25, 2009

Progress at last

It’s bank holiday Monday so instead of slacking and playing games all day long I played a bit in the morning then had to drag myself to the front of the computer to tackle the problem I have been long stuck on.

I had no idea how to reference the parent Entity inside the components. It was pretty simple really.

All I had to do was to add a function to my IComponent interface (and implement them in the Components).

EntityBase GetParentEntity()
void SetParentEntity(Entitybase entity).

Now when I add the component that I read from the Data I have in the XML file, I also add a reference to the parent entity.

component.SetParentEntity(this)

it was very simple and it was right in front of me all along, but it took a long thread from people from work to get the idea right in my head.

Now on to implementing SimpleAI. Now we are moving into more complex stuff.

Thursday, May 07, 2009

A blog by email test

A bit of my desk...

Wednesday, May 06, 2009

Hiatus

I haven’t been very good lately. Left my project untouched for a couple of months. I hit a road block on my entity building, and my brain froze. That and I had some games to go through.

Prince of Persia: Pretty good, most critics say is far too easy, I say is fluid. I really liked the experience. The Epilogue bit has all the nagging issues of the old Prince of Persia Games that made them frustrating. It’s almost like they tried to make up for the fact that the game was “too” user friendly. The part that I liked. Specially after playing the nearly pixel perfect jumping and thoroughly convoluted experience that is Mirror’s Edge. Don’t get me wrong, it’s a great design and with lot’s of production value but it keeps forgetting why did it came to this world, and what the fun part of the game is “free running”. It’s almost like someone that wasn’t working directly on the project gone and said… hmm… you need more combat, more enemies, there isn’t enough frustration in the game.

Dead Space: I decided that I had “cojones” and chose to play it on Hard from the start, just like I did with Gears of War 2, Halo 3, Bioshock and some other FPS. Damn! Dead Space is hard. Hard and scary, Yatzee forgive me but he is probably suffered from horror desensitization or something. This game scares the crap out of me and I found myself too stressed out to carry on playing. When I come back I will probably put the difficult down… maybe…I want those extra achievements.

And that brings me to the last one, which probably should require a post of it’s own.

Banjo-Kazooie: Nuts & Bolts by my fellow colleagues at Rare: God what a fantastic game! Though you really need to spend more than five hours on it to start enjoying it. It is a meta-linguistic-piece-of-art-of-a-game if ever there was one.

“Hero Klungo Sssavesss Teh World” is the work of a genius.

I know the whole “Are games art?” malarkey depends on a very subjective point of view, and what is your personal conception of art, and blah, blah, blah...  and for most it’s not even worth discussing, but in my opinion, that little “fake” 8-bit platformer touches so many subjects with such subtlety that it can’t be just out of pure luck, it’s true genius. It’s like the game is an very tongue-in-cheek interactive statement about everything that was wrong with pixel-perfect platformers, while touching subjects of game programming, art, design, production, and the whole game development process. It may be that you may need to be a hardcore gamer or actually work in the games industry to get the humour of it. It’s a piece of art directed to a niche, but a piece of art nonetheless.

Wednesday, March 11, 2009

A different approach

I was looking at my post the other day and thinking about the whole scheduling malarkey. So I have asked for some input from a friend and colleague. We are both lucky because I give him a lift to work every day and I get to pick his brains, so, I think it’s a fair deal.

He said that I really shouldn’t over plan things because due to my level of experience in software engineering it is likely that I’ll get a lot of things wrong. Even experienced engineers make mistakes and have to do a lot of rework. I should try a different approach.

So this is basically his advice. Look to your project and think about what you need it to do, and everything you think you might need in order to get that to happen. Plan those tasks, prioritize according to the dependencies and then start coding straight away. You will get results, and your project will move forward, there will be a lot of refactoring but there would be a lot of refactoring anyways because it’s unlikely that you will stick with the first implementation of any code that you write, and Get Cracking.

So I chose something I need to do. I need to have a spaceship on the screen that moves around, and can be targeted, attacked, destroyed and can fight back. Doesn’t seem much. But breaking down what I need to make this happen I came across a small mountain of work.

So far I have a pretty busy schedule that leads up to the end of April. In total I have:

  • 4 Art Tasks: No big deal
  • 1 Audio Task: No big deal
  • 31 Code Tasks: Ahem…

And I can start working straight away. At least I already have a secondary viewport that draws my current target on in. Pretty neat… but I guess I’ll only put a video of it when I finish my March/April Sprint.

And the winner is

bafta 

I am thrilled that FABLE II has won the BAFTA for Action & Adventure Game last night!

Monday, March 09, 2009

The Boring Stuff?

I got to a point of my little XNA project that I’m quite comfortable to set myself a deadline for completion. Two years. TWO YEARS??? Well… I am working on my own after all, and it’s a little but ambitious projects. 

Now, if I want to get this out of the door I need to set myself some deadlines… Let’s say, Complete my code by next March, have all the final Assets in game by next September, and have six months to fix bugs and polish.

It’s all fun and games when you are coding and you get visual improvements on the screen. There is a sense that things are moving forward. Up to this point I have been pretty much doing what I felt like doing. All important things that were needed in the final project but now I have reached a point when every time I want to sit down and do some work on it, I need to first spend about an hour reviewing the code I have already written trying to work out what my next step should be. And that’s wasting precious time. Especially because I might decide to work on something that isn’t as important than something else in the huge mountain of works there is to be done.

How big is the mountain? How many things do I have to do, what should I be working on now? The good thing about being working on the games industry is that I now have a pretty good picture of how game development works as a whole. And how much more work there is to be done than one actually would think there was, and how we go about managing the production cycles.

The big difference here is that I am on my own and I can’t do everything simultaneously like it’s done in the industry. But I need to take advantage of that. In the development process of a large game there is a lot of reworking, things that get changed, chucked away, designs that sprout out of nowhere in the middle of a milestone, and other things like that. Most of this is because things are done simultaneously and due to communication problems. Unless I get a split personality in the middle of the process communication with myself isn’t exactly a problem so when I tell myself I need these model to look like this, I will immediately understand what I mean and won’t spend two days working on something that does not please me. And I won’t do things simultaneously, which means it’s unlikely that things I change will have an unexpected effect, and if they do I can resolve it there an then. All and all it means that the project will move a lot slower but it should be leaner.

Basically, looking to the near future of the project there is little code work to be done, but lots of planning. Up until the end of the month I need to have:

Finished the design of the Mechanics and Systems.
Model the Code Structure
Schedule Code Tasks
Schedule the whole project.

My Photo
Name: Hulshof
Location: Guildford, Surrey, United Kingdom

Gameplay and Cutscene Scripter At Lionhead Studios. Also 2D/3D Artist, Writer/Blogger, and Videogame addict in my spared time.

Powered by Blogger

Atom RSS feed Follow me on Twitter Facebook
Delicious LinkedIn Last.fm
Last.fm Last.fm StumbleUpon
YouTube