Flu, LEGO and Crowd Simulators

This week I have developed a rather nasty case of flu. A particularly devilish strain of flu  that just happened to seemingly know that this week was the one week I wanted to be firing on all cylinders! As I write this post I’m bed-ridden and shaking like a leaf, but my condition is definitely improving so I should be better for just before Christmas.

On Monday I travelled down to Wolverhampton to stay overnight for a teaching event on Tuesday at Highfields School, normally I’d take an early train down on the morning of the event, but to ensure I’d get a better nights sleep my boss booked me a hotel! I was really looking forward to a relaxing night’s sleep… but that’s when the flu kicked in. Whoops.

I wasn’t exactly running on all cylinders when I got to the school, but I was still taken aback by the sheer awesomeness that surrounded me there. There were no corridors in the school… all the classrooms were wonderfully open-plan and there were canteens and seating areas on every floor. I was incredibly jealous – all the students had access to a cyber-café and had been given free laptops to do their work on. Their product design department had a 3D printer AND a laser cutter – sheer bloody madness!

We then proceeded to start work on the LEGO event for the day – two guys from LEGO Education came in to run the event and I was tasked with aiding the students with anything they needed help with. They were tasked with making robots to do specific challenges as part of the “Green City Challenge” pack, which has several different engineering problems incorporated into it – pushing, lifting and carrying being the main three that were tackled during the day.

Lego Robot

It was good to work with LEGO during the day, I’d not used Mindstorms equipment in years so I was a little rusty. But it’s really easy to pick up and the kids took to it like a duck to water. They didn’t need much help and really got into it once they understood the basic principals of moving the motors on their robot. It was an awesome day apart from feeling really crumby in the physical well-being department.

Other than that I’ve also been working on my dissertation in my spare time. I’m currently working on the model design for my characters in the crowd simulation I’m adding to. Carefully programming in vertices and having them deform and change based on the characters body type. I’ve been wrecking my brains over a bug I’ve been having for AGES and not been able to notice. A bug that meant my little models were rendering in very ‘abstract’ ways:

Vertex Problems

The bug had eluded me for ages until last night when my girlfriend pointed it out to me when I was grumbling through my array of indices: I’d accidentally skipped a few numbers in the array… Whoops! So after changing that I can now declare proudly that my project is now progressing nicely again! I’ll be doing another post about my current final-year project progress as and when I have my model completed and working reasonably well.

Also… today is the start of the Steam Christmas Sale… may we all be blessed by Gaben’s great deals.

 

My First Ludum Dare Is Over!

So I just submitted my finalised build of the game to the Ludum Dare website. It’s probably got more bugs than I can shake a stick at, but I’ve fixed as many as I could find in the last few hours and added as much visual polish as I could. It’s now time to pack for tomorrow’s trip to Wolverhampton for teaching stuff and then put my feet up and have a cup of tea. I am knackered!

I proudly present “THE EVIL REVEAL” a game in which you play an evil CEO who has plans for world domination. You are about to present your evil plans to the company’s board of investors… hoping that they’ll all fall into line and become your evil minions. Unfortunately for you: All of your employees have consciences, and will eventually become scared of your insanely evil ramblings. When they get too scared, they’ll attempt to flee the room and alert the authorities! Luckily, you have an array of dastardly traps set up in order to kill and maim your enemies!

Evil Plan Reveal

So here’s a little post mortem from my first attempt at a Ludum Dare:

What Went Well:

  • Programming/Designing Speed: The time-period I had to make the game was quite tight, not only due to the 48 hour limit but also I had some other things on at the time… I’ll talk about them in the second section.
  • Idea Generation: I came up with quite a few ideas in the morning for the game I was going to make, but I’d like to thank Alex Saye for providing me with the inspiration for the final version of my game by showing me this Mitchell and Webb comedy sketch.
  • Graphics: I really like the style I achieved in this game, I was going for a style similar to that of Lone Survivor. I think it works quite well and its definitely different from what I normally do when it comes to art in games… not to say that my traditional style menu screen didn’t pop-up like usual.

What Didn’t Go Well:

  • Lack of OOP methodology: I’m afraid I slipped quickly into a non-object oriented approach quite quickly when I started this project, unfortunately meaning I ended up with LOADS of arrays for storing different Board Member variables (like whether they were on fire or if they were dead.) One day I’ll learn to pre-plan my classes… but right now my clsSprite.cs file has never really done me wrong!
  • Going Out Drinking: I kinda might have gone out drinking with friends on Saturday night. This probably cut out a massive amount of time I could have used to make the game better. But I feel that I made up for it by coding til about 6AM afterwards though.
  • Sleeping In: Pretty self explanatory – I’m in serious need of a fixed sleep pattern as I keep waking up at midday. Like with the point above this cut deeply into my possible coding and asset creation time.
  • Balancing Issues: The final game is a little broken if you play it right. The flame-thrower is really OP right now and it spreads like wildfire between the Board Members and always guarantees a kill. It kinda makes the Tesla Coil useless… but it’s still a lot of fun to hear a loud zap noise as the people get killed by it.
  • Lack of AI: I considered having some form of AI to allow the board members to avoid getting hit by certain traps. It would have been really cool to see them avoid traps that they’ve seen other board members get nabbed by – unfortunately due to time constraints and my lack of path-finding knowledge this was to remain a dream!

Just to finish things off, here is a trailer for the game that I whipped up in about ten minutes:

What Time Is This?!

Six in the morning… I think I’m seeing things in my living room and I’m getting tunnel vision. I think it’s about time for me to call it a night here on my frantic programming and artistic madness. It’s probably for the best as I think I’ve got the vast majority of the major work completed… now I’ve just got to polish and add more features when I wake up in the morning/afternoon. I also need to balance the game a little as there are points where the player isn’t doing much for long periods of time, and its far too easy to kill people right now… maybe a health bar is in order?

Goodnight to all! Let’s hope I don’t sleep in too late…

Ludum Dare 25 Afternoonish Update

I’ve been working on the game most of the day and now have a working basic prototype. I’ve got to work on the art and UI quite a bit before its completed, but things are going quite well! I’ve implemented a group of board members who each have a ‘fear/doubt’ meter, when it gets to zero, they will flee and attempt to alert the authorities to your dastardly deeds. I’ve also put in a basic trapdoor trap… but I’m considering changing it into a spike trap and making things a little bit gorier.

Unfortunately tonight is also the pre-Christmas meet-up and night out with some of my friends who have just arrived home from their respective universities. So I’m going to have to put the programming on a hold for a few hours and go and have a few drinks – I hope some awesome ideas strike whilst I’m out there so I can implement them when I get back.

My First Ludum Dare!

So I just started work on my first jam for Ludum Dare. I woke up kind of late this morning so I’ve only just started programming and brainstorming for the game… whoops! This dare’s theme is “You are the Villain!” which I hope will lead to some awesome games in the end. I’ve still got fond memories of playing Evil Genius very late into the night during my teenage years and relishing every minute of it.

After a chat with Alex Saye I’ve decided on my final idea for the game, you play an evil CEO of a giant corporation. You have decided to call a meeting of all investors in order to reveal your dastardly bastardly evil plans for world domination. Of course not everyone in your company is particularly happy with this change in the company’s image… so you have to “deal” with them.

Each person at the table will have a ‘fear’ meter which will slowly drain, when it reaches the bottom they’ll dart for the door and try and escape. You have to kill them before they leave the room and blab about your plans to the local authorities. To begin with I’ll add trapdoors to the game as the most basic trap… I’ll add more if I have time. (Shark Pits, Fire-Traps, Acid Showers etc. etc.)

I hope to have a basic prototype completed before I go out tonight for a few drinks with my brother. Then I’ll polish it up early tomorrow and feature creep late into the afternoon! I’m not expecting to enter the competition this time around… considering this is my first Ludum Dare and I’ve not really planned ahead for it – so I’m not really prepared for super late-night crunches right now.

Oh, and good luck to everyone else I know who is competing!

Games Engines Assignment – Scores and Extras

Today I managed to get back into the computer labs to continue work on my PhysX assignment. The plan right now is to have about 90-100% of the implementation done before I leave for home on Thursday – when I get home I won’t be able to work on the code properly as I don’t have the right set up on my laptop. Today I implemented a scoring system now and physics feedback for when the ball hits a block. I’ve also added rotating motor joint objects on either side of the screen to enhance gameplay.

Tomorrow I hope to add in lives and an end-game mechanic. Then do some cool stuff to make the bricks explosively shatter everywhere when they’re hit. (Not sure how I’m going to implement that yet… probably with an array – but we’ll see how much time I have to do it!)

“The Legend Of Groomp” and 1st Year Game Challenges

Each year I’ve been at the University Of Lincoln I’ve really looked forward to seeing the games made by the new first years. This year I wasn’t disappointed, there’s some real talent in that group, and I’m really looking forward to seeing them all progress through the year.

Each year the first years have been tested with the creation of a one-button game, here was my attempt. Below is 2011 video for the first year “One Button Game” challenge:

One game that really caught my eye this year (2012) was Alex Saye‘s “The Legend Of Groomp” a tower defence game, here is a basic description:

The Legend of Groomp is a simple tower defense game where you must defend against a horder of soldiers using up to nine different spells. Spells are cast by either tapping or holding the Space bar. To unlock spells, you must get experience by killing enemies. Stronger enemies give more experience!

My gosh is this game fun. It’s got a really clever take on the one button game genre, using taps and hold-downs of the space button to decide which power to use. The game itself is so juicy – spells feel incredibly good to use, even those at a low level. The spells the player can use also can chain together, for example the flame-thrower can be chained up with a push spell to set other enemies on fire!

One of my personal favourite spells is the lightning spell, as it makes enemies spasm wildly and forks across the map in a very cool way. I also love the way that catapults lob rocks at the castle, and then they bounce off under physics… hilariously killing their own men. There is so much to this game, which is especially impressive when you think that they only had two weeks to develop it from start to finish – it has a very high level of polish.

I highly recommend trying the game out it’s so good. Also it’s free to download and play… so what exactly are you waiting for?! Download it  for Windows!

If you’re interested in playing some of the other games made for the 1st year game-maker challenges, check them out here:

Good News Everyone!

Today I received my initial mark and feedback for the first Advanced Games Studies assignment, I got 79% which is a reasonably safe 1st. It also means I don’t have to work on sprint 2 to improve my grade, which gives me extra time on my dissertation, and I like extra time for everything!

I’ve also implemented some more stuff in my PhysX Games Engine assignment, there are now blocks that the ball destroys when it hits them, I’m pretty happy with it (The video below doesn’t show the ball reacting to the blocks, but it does now… trust me.) This coming week I hope to finish implementing some extra PhysX features like joints and convex objects in order to get a higher grade!

I’ve also hit 20,000 words in my novel, I should hopefully have a complete first draft by the end of December. I’ve had a look into getting it printed, 100 copies should cost around £300… which is steep but I can reclaim the costs if I sell the books for £5.00 each. Where I’m going to get the initial funds from I do not know, but hopefully I’ll have a job come summer to pay for it! I’ve also looked into releasing it for the Kindle, which could be a cool idea.

To quote my old history teacher Dr. Perry: “Happy days chums!”

Now for a well deserved drink in the nearby student pub!

Games Engines Assignment – PhysX Cloth Works!

I implemented the basics of my breakout trampoline idea today in our Game Engines workshop, it works reasonably well. I’ve added a ‘shoot’ mechanic which stretches the cloth into a bouncy trampoline, launching the ball into the air! I’ll probably have to make the ball bounce higher in the final version, as it doesn’t go too far right now… might have something to do with its weight or the gravity in the scene.

One thing I need to work on is the collision detection between the ball and the cloth below – even after having increased the thickness of both the cloth and the collision skins, it will occasionally fall through when the cloth is subjected to high powered forces. But this is a prototype after-all so it’ll be fine in the long run!

Advanced Games Studies Work (Great Balls Of Fire!)

After a little bit of coding and fiddling with rigid bodies and triggers – I’ve added in some rather nice-looking fireballs to Team 1’s game. They react nicely with the world and damage the slimes on collision… I can’t help but think it makes the slimes far less threatening – but that’s fine right now.

Here is a quick video showing off the implementation of fireball projectile weapons: