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!

Violent Sol Worlds Now On Kickstarter

Violent Sol Worlds has officially launched its Kickstarter project – here

Violent Sol Worlds is a story driven, single player, action hero combat game with a massively procedural generated planet covered in caves and complexes with an AI director that injects events and stories into the world. The entire game is highly mod-able including gear improvements, vehicles, drops, and much, much more.

PostCard_Kickstarter.png

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

 

The Power of POC in Game Development

What is a POC?  It stands for “Proof of Concept”

Ok, so that is out of the way, what is a POC used for?  We used it for Violent Sol Worlds early on to verify to ourselves that certain game play elements would be fun.  We made three POC’s.  The first was the top down walking and shooting, the second was the car driving, and the third was crafting.

PhysicsDebugWorks.gif

Each one of these POC’s had a singular purpose.  They were built to determine if the individual game play element was entertaining enough to be in a game.  We saw the potential for all three to be entertaining so Violent Sol Worlds was born into development. The POC’s were very useful and we used them effectively to understand if the game idea we had was actually a game that would be entertaining.

CowShooting.png

Now we are far along in development and we found another reason to use a POC.  That reason was physics.  We have had several iterations of our physics now and wanted to get a version that would be the correct version for Violent Sol Worlds.  So we determined that a POC would be a good way to get there.

So we started making a new program that would simulate closely the game when it pertains to physics.  The purpose was for a simple, only physics, POC that would show that the physics implementation was more correct for the game.  Once we had something that worked well we began to plug it into the game.

DrawingNormalsOfFaces.PNG

Once we plugged the physics into the game, we began to debug the integration issues.  Here is where a POC is proving very useful.  The integration of the new physics required a lot of changes in the game.  This was complex, but the physics system itself remained intact from the POC.  We are having an interesting mathematics issue which is causing the player to be able to move through objects in specific directions.

Tracing through the code was not good enough and proved to be misleading.  So we took the exact physics body files from the game and put them into the physics POC and tried to duplicate the problem there.  Turns out the POC works great.

WallAndPlayer.PNG

What do we do now?  We plan on debugging the two implementations at the same time and walking through the code step by step and seeing what part of the math deviates and when.  This will help pinpoint the problem and get us closer to fixing this problem.

So it turns out writing POC’s is a very powerful tool in all stages of game development.  I strongly recommend that you use them to help you develop systems for your games.  It simplifies things and gives you a tool that helps in your debugging and learning. Let us all know how you’ve used POC’s in your game development by leaving a comment.

Also come check out the game here on IndieDB

Proof of Concept (POC) Everything

There is a good quote that always strikes me and I believe it is a good call to action for POCs.

Our approach to making games is to find the fun first and then use the technology to enhance the fun

-Sid Meier

If you just start coding your game from idea and start throwing stuff in you are not necessarily finding the fun first.  What I like to do is to figure out a cool concept, as few neat sounding game-play elements and code up some quick little programs to show off those game-play elements.

The key here is speed.  Do not spend time designing an awesome architecture.  Do not spend time making sure it is pretty.  Get the game-play in to your own hands and see if you still think it is fun.  For example, for Violent Sol Worlds we started off with the idea we wanted a top-down shooter.  So I started to create a POC of a guy shootingCowAndGuy.

This POC at first looked terrible, with borrowed graphics but I could walk around and shoot one immobile cow.  It turned out that it was fun to shoot an walk around, but the addition of blood from the cow made it more fun.  The feedback was the true start of fun.  At that point I thought the cow was detracting from the fun because it was an innocent cow.  What would it be like to shoot something that moved, and shoot stuff like a building etc?

  So I quickly threw in a wall and animated a bug creature I had been drawing.  It was a lot more fun to shoot something moving.  But the feedback was BLOODall wrong now for the bugs.  They would need to die.  So I coded in hit points and had them disappear when it hit 0.  This still broke the experience and the fun.

When I added blood and body parts from the bugs being shot and killed it changed the world.  It turned from something that I would launch and stop in seconds to something I found myself playing for minutes and it was just a POC.
20150510-143127_capture

You see without the POC I would not have noticed so many subtle things that make the action game-play fun.  It is about moving around and shooting, but it was more about what you were shooting and how it felt to shoot them than anything else.  This process did not take weeks, it took hours and the learning experience it was, was worth every minute.  It changes designs, it effects decisions, and best of all it’s a quick process and adds value.  


@magicrat_larry – Join me on Twitter

Violent Sol Worlds home

IndieDB

Facebook – join the conversation