What’s a Good Game?

I’ve been asking myself the question, what’s a good game.  It’s a hard question to answer.  Most of the time it comes with a reference, like XCom, or Civilization.  The problem is what makes a good game.  To some it must be graphically amazing.  Some people a story must grab them personally.  It is so personal, that no two people are alike.

So for me, I love a tactical game.  It can be real-time, it can be turn based, but I love strategy and besting an opponent.  I hate multiplayer though.  I want to crush an AI that does not tell me how bad my mom is.  The thing is, I think that good games are probably more generic than this.

Can we take every game and say if it is good or not?  The problem is every game is liked by somebody.  So we can at least say there are never any truly bad games to 100% of people.  So what makes a game good?  Have you ever told anyone about a game that you thought was awesome that you only played for 2 minutes and never will play again?

So, at least one characteristic of a good game is that people play it for a long time.  But, then you look at Steam and see that tons of people are playing games for a long time and reviewing them poorly, so why is that?  So if you play something for a long time but hate it was the game bad?  I don’t think it really was.

You put your life into a game, if you play it for hours, it was good.  Even if it strikes you in the end as not being that great, it grabbed you for hours of your short life.  You were giving it a shot, it had enough greatness in it to have you give priceless time.  So I contend that your final thoughts on a game don’t really matter if you played it long enough.  That could be crazy to state, because you could wish you never bought it, but if it made you feel something, isn’t that what a good game does?

What do you think?  What makes a great/good game to you?  Try to not use a reference to describe it.  It’s a challenge to nail down.  That is why I love making games.

The Power of Threading

I know a lot of people are afraid of threads when programming.  I kinda was for a long time.  They are confusing at times and can get out of hand as well.  The problem is to make a complicated game of any kind you have to learn them.  You don’t have to love them, but you have to get used to them so you can do things that games need, like streaming content, animated loading screens, and much more.

In short threading is powerful, but without planning it will knock you on your butt. 

In the early days of developing Violent Sol Worlds we did not use any threading.  We quickly realized that to do a giant streaming world you would need them.  The issue with plugging threading in is that it has to be planned.  If you do not plan it out, things will get out of hand quick.  The critical issue is design.  When you start your game, make sure you think of it in terms of what has to be running on the main thread and what can happen, out of time, with the main thread.

content loading is fairly easy to have happen in the background

What do I mean about main thread?  That is the main game loop, often times you care about rendering in that loop and player input etc.  The other stuff, like loading content, physics, AI, other strange interesting game-like things, can all be done outside of the main game loop.  I learned having something like content loading is fairly easy to have happen in the background.

How you ask?  You need to plan that out well.  If the game has a list of render entities that get drawn to the screen, you need to code that in a way that things can be added and removed from that list at a random time and not have things blow up.  In this way you can have the main thread put requests out to the loader thread to load in and create entities to draw.  The loader will work on them on its own timeline and eventually just pop them onto the list to be drawn to the screen.

In short threading is powerful, but without planning it will knock you on your butt.  Keep in mind that if planned out from the beginning you will have a powerful tool at your games side.  Often times some of the neatest things are done with threading and allow for a better user experience in your game.  Happy threading everyone!

New Release – Cornflower Corbin

I am proud to announce that Afterthought Games, our game studio, has released Cornflower Corbin on Steam.  Support indie, buy it today!

CorbinBanner.png

Cornflower Corbin is a family friendly, campy, side scrolling shooter about a whale, with a laser, that is trying to get the love of his life back after the evil Mecha Shark takes her from him. He is painfully assisted by his best friend Paul, an oversize clown fish that jokes a little too much, and has to battle his way through a barrage of enemies to get her back. Corbin’s secret power is in his growth. You see the bigger he gets, the harder his lasers hit. But beware, he also gets slower and becomes a bigger target, so finding a balance in size to damage is key. The game is set up to be stat heavy with leaderboards. So get ready to compete with other players by taking out more turtles and sharks than they do.

features

  • Procedural generated enemies making the game change a little bit each time you play
  • Five levels of action including 5 boss fights and 3 mini boss fights
  • Endurance mode where the waves just keep on coming
  • Leader-boards and stat collection for things like shots fired and sharks taken out

DHdnWXbVoAAxOMi

SquidBossTakedown.PNG

 

I need your very important vote

I need your vote, yes yours.  You have a few seconds to make a difference, simply click the image below and help an indie developer out by voting for Violent Sol Worlds for Indie of the Year.  I’ve been personally working on this game for over a year and it would mean a ton.  Your vote really matters and we need every one of them.

Indie of the Year Awards

vsw_paper_1000_1000

 

Stand up and Entertain With Me

What most people cannot keep up with is the pace of entertainment.  When you get into game development on your own as an indie game developer you have to become an entertainer.  If you do not entertain at a high pace you basically go unnoticed and are simply a programmer.  There are many programmers in the world, be something better, something more.

I call it the pace of entertainment.  You have to be willing to do things at a pace that isn’t just on the weekends or when your favorite TV show isn’t on.  It’s called sacrifice learn to love it.  If you do not, you will just be a programmer.  Why is being an indie game developer so high paced you ask?  It isn’t if you don’t mind failing.  You can just be a programmer and code a game that doesn’t sell.  That is your choice.  You can also entertain daily, if not hourly, and begin to reap rewards of sales later on.

I know it is not all about money, but do you like working at that grocery store, that bank, that oil change place?  Probably not.  Make it your life’s mission to entertain while coding your game.  Blog about things, post on twitter even when there is nothing to sell.  Don’t just wait until the last minute and hope for the best or lean on another to carry something forward.  Be the one person that makes your dream come true, if you do not you will die without ever seeing it happen.

If you want to be a real indie game developer, not just a programmer of games, entertain at the pace of entertainment.  Stop saying you are busy, stop being the same guy or girl as yesterday and make it happen.  Start today, I know you think you are not entertaining, or this stuff is not my thing. Trust me, I hate doing it too, get over it.  Stand up and entertain with me.  


Come be a part of our Kickstarter – Violent Sol Worlds

Vote for Greenlight here

Check out more information on Violent Sol here

Follow me on Twitter @magicrat_larry

Here Kitty Kitty, Let Me Grab You

So we added a pet element to our game.  Who doesn’t want a little kitty in a survival, action, top-down, simulation?Stand_Cat_000  You can have a pet, and if it is small enough you can pick it up.  So I have been making animations of every combination for our demo to demonstrate this.  So I have a shooting, standing, and walking animation.  That is a lot of tweaking animations to get get it with a cat and without a cat.

So in the actual game design we need to figure out a better way to add equipment and such to a player so that we do not have to animate every combination of stuff on a player.  For a game-play demo that is 1 step above a Proof Of Concept it is fine though.  I cannot wait to get back to designed code though.

Bugs Everywhere!

I’ve been the giant Raid can today.  Smashing bugs left and right.  I did manage to add in some new content into the game demo though.  Ironically, it is a new bug.  You can see it in the featured image of this article.

Mostly though, I have been killing bugs in code.  That is what a ton of your time is filled with for a game developer.  You find, and fix bugs like a madman.  It is both frustrating and rewarding.  If you find a good one and it take some genius to fix then it is rewarding.  If you find millions of dumb stupid problems that are brainless then it is a slog.

Thankfully today has bee rewarding for the most part.

Game Developer SMASH!!!!

Let me explain this in three phases and I am sure all you game developers will understand.

Phase 1:  The Plan

Today, my wife and daughter were leaving for about 4 hours and leaving me home to work on the game.  Awesome!!!  So the plan is to crank through the remaining physics task to get the car to not be completely jacked up by a collision with a human sized bug.  So Seems easy, I can crank that out and maybe have some time to play a game or two afterwards.  I’m excited.

Phase 2: Let’s Do This

I sit down after they leave and crack down on this physics thing.  Turns out, this is not easy, go figure.  I bust my butt on it for hours getting nowhere.  No matter what I do I cannot get a good outcome.  I have my car driving and the wheels literally flying off for no reason.  I get frustrated, the doomed feeling sets in.  I did nothing, I think to myself.  Then I hear it, my wife and kid are home, 4 hours are gone, nothing to show for it besides the pure joy of pounding on code that was pointless.  At this point my brain is jumping into the computer and killing all the bad things in violent, terrible, imaginative glory.

Phase 3: Just One More Go

I sit down, right after my wife and daughter go to bed.  I open the laptop, look at the code and see a variable being set in some obscure location in our jacked up proof of concept code.  I start playing with that variable.  It turns out that is the most important thing in my life, I just didn’t know it.  So now I am happy.  What a strange way to be happy huh?

The Glamorous World of Game Development

I think there is a misconception, game development is such a great job, all the fun, all the excitement, all the joy of Christmas every day.  I’m sorry, that is not true.  Let me explain what game development is like for me, and remember I love it.

You get up early, look at your task list, if you are lucky there is a task on there that sounds fun.  You begin working on that task, it expands to a large programming mess.  You stop programming and design a better system to fix or create whatever you were doing.  If you are lucky once the task is complete the game still compiles and nothing different is displayed.

I know there are some days where you create that awesome effect that changes the look and feel of everything, but most days are debugging, tweaking, or designing.  If you throw in marketing you got a real nice day.  See, game development is one of the hardest programming jobs you can have.  It is not like business software, you actually care about memory usage and display rate.

The next time you are sitting at home playing some game, and think how great it would be to be a game developer, stop and think of the massive effort, stubborn commitment, and tears it took to put that game together.  Then smile and keep playing.

Be Something For Real

I’m learning recently that there are many people in the world of game development, or even regular Tech careers who are pretending to be one of whatever they are doing.  What I mean is they act like a programmer, web designer, or game developer, but they do not truly, either believe they are one, or love it at all.

If you are in game development, or your career, for anything other than the love of it, you are on the wrong path.  Don’t take this road, it is an unhappy mess for you.  Nothing will satisfy you if you do.  Choose what you love, not what is the new awesome thing everyone else acted like they loved in college.  Take the world by the face by understanding yourself and what you truly want and leave the careers to others that you do not love.  You will enjoy life a ton more, be something, but be something for real, not for money, or popularity.