Archive for February, 2013
This past week I spent a lot of time setting up the RPG gun, as well as working on a rough first pass on projectile class that allows me to track a target. I think the RPG will help make the other guns much quicker to setup to work. I also setup a the damage on the machine gun correctly now, which acts more as a “drain” instead of firing tons of projectiles. My son ended up getting really interested in helping me tweak the values in the game which led to some really cool tests. I’ve got some flying enemies that take damage and blow up correctly now.
Lets start with looking at the variables I need for the projectile. ( Please note all this is still very early and not final at all )
public GameObject currentTarget; public GameObject launcher; public float speed = 10.0f; public float damage = 10.0f; public float lifeTime = 5.0f; public float ignoreCollisionTime = 1.0f; public GameObject explosionParticle; public bool bRadius = false; public float Radius = 100.0f; public bool bFindNewTarget = true; private float aliveTime = 0.0f;
Please note this is part of documentation I wrote for the opensource feather web framework currently available on GitHub. You can find the document in its original form here: https://github.com/maddogawl/feather/blob/master/featherdoc/docs/state%20machines.md
feather Finite State Machines
Finite State Machines (FSM) are well understood in computer science, and as such they won’t be covered much here. There are some really good articles online that you can check out to read more in depth analysis on FSM’s.
Links to some good articles
In the simplest definition a FSM is a set of states and transitions. A FSM can only be in one state a time, thus allowing you to easily build state driven applications like Rich Internet Applications. In more complex systems that utilize state machines you will begin to see hierarchical state machines, and states that have their own state machines.
In general Finite State Machines are a tool that simplifies common problems including UI management and async flow.
Benefits of State Machines
An application could easily be created without utilizing FSM’s, but there are some clear advantages to using them.
– Flexibility : Code can easily be tweaked and extended with proper use of state machines.
– Debugging : Code that is isolated in small testable states makes it much easier to track down defects in the software.
– Simplicity : Its human nature to think of things in terms of states. It is generally simple to break down parts of software in terms of states.
Handling Machine Gun Projectiles
Its been a tough week for me, we had a lot of things come up this past week that were unexpected, so I have a much smaller update this week.
I finally got the machine gun “AK47” turret completely hooked up. In the process I decided that making all turret guns share the same code just wouldn’t work with the new version after the prototype. So now I have a hierarchy of states that each turret gun derives from and then I just override the necessary functionality. This allows me to not fire a “projectile” for each shot, but instead it finds a target and plays an “effect” and drains the enemy’s health based on the damage rate.
Anyway here is a quick screen cap of the AK47 in action.
Darksiders 2: The end of a franchise?
I started Darksiders 2 expecting a 10 – 15 hour game, but what I got was a game much much longer than that. The game ended up taking me 27 hours to complete, and I didn’t even come close to completing all the side quests. I played the game on the PC after finding a great deal on Steam over Christmas. The PC port is very basic, with basically no graphic options, and runs at the same resolution that it does on the consoles. The game definitely lacks attention to detail in some areas especially texturing of environments, but you quickly ignore all that when you get sucked into the world.
What I liked:
- I love the loot, every battle had me running around checking each item and changing my loadout.
- Death’s abilities, I love how different the character could play, I chose to be more focused on leveling up minions to do my fighting for me.
- The combat feels so good, simple enough yet still feels like you need to be strategic especially in harder areas.
- The puzzles, always feel fresh and different, even though some are repeated throughout the game. I love the “Zelda” feel of the dungeons.
- The world is amazing, it feels giant and sprawling, with hidden things everywhere.
- Traveling through time, although very basic felt really cool
What I didn’t like:
- Loot really doesn’t change appearance enough ( just slightly )
- Boss battles, really are basic, but they are passable
- Dust doesn’t actually seem to help out as much as I would of liked, there are times he would lead me through endless loops.
- The ending was very disappointing for me, I was hoping for a grand reunion between Death and War.
- Texture quality on PC
- You have to have your controller plugged in before starting the game, or your stuck with Keyboard and mouse controls
I truly will miss this franchise, and I am really sad that THQ is no more, especially after having worked with that publisher with a few of the titles I’ve worked on. I hear the developers from Vigil were snatched up by Crytek, so hopefully something else amazing will come.
I would recommend anyone interested in Darksiders to definitely play this one, but be ready for a fairly long game, although the high points definitely outweigh the lows.
Until next time, let me know what you think of this game.
I actually sat down tonight and wrote down the list of games I want to play that are already out, games I would like to play through again, and games that i’m most excited for in 2013. The list ended up much longer than I expected primarily because of the steam sales over Christmas that filled my queue of games for the year.
Games I need to play ( kinda in order of how badly I want to play them )
- Ni No Kuni
- Mass Effect 3
- Darksiders 2 ( Almost at the end: Finish )
- Witcher 2
- Legend of Grimrock
- Borderlands 2 ( Currently Level 18: Finish )
- Max Payne 3
- Alan Wake
- Civilization V
- Sleeping Dogs
- Fire Emblem: The Awakening
- The Walking Dead
- Saints Row: The Third
- Tropico 4
- Space Marine
- Assassin’s Creed Brotherhood
- Batman Arkham City
- Dark Souls: Prepare to Die Edition
- Dota 2
- Company of Heroes Tales of Valor campaign
Games that I would love to play through again
- XCOM: Enemy Unknown ( I love this game )
- Skyrim ( I want to roll a new character maybe try some DLC )
- Company of Heroes ( Lets prepare for COH2 )
Short list of games i’m super excited for this year
- Heart of the Swarm
- Company of Heroes 2 ( Please still come out )
- Dead Space 3
- Bioshock Infinite
I’ve already got Heart of the Swarm preordered, I am itching to play that one. I really hope COH2 comes out this year after the sad news with THQ. I’m sure I missed some of the games that are due out this year, but honestly it seems like a slow year in releases, but I think the reason is primarily because the new consoles are right around the corner 🙂
Let me know what games are on your list for this year.