24 January, 2012

Data structures

So to start off this semester of study I am focusing a bit more on data structures, as well as learning more about Java and C# with the XNA Game creation code.  Before diving off into coding I have realized that it is much more important to understand the principles of effective and efficient programming.  In talking with a mentor about my proposed landscape system he brought up a good point.  If I am trying to render thousands of objects that share similar characteristics, like the triblock, that making each one it's own unique object will take a long time to process and will eat up tons of memory.  So finding an effective way to represent all of the landscape can be rather difficult to do.  This reinforces the decision I made earlier to have indestructible landscape that can be built on, even though that removes the possibility of tunneling under enemy bases and defenses.  If the only blocks that can be placed and destroyed by players are the ones that they have gathered the resources for and taken the time to craft then the total amount of memory usage should be considerably smaller.  I hope that through the course of this semester I will be able to find what data structures will be most appropriate for everything that I wish to put into this game.

23 January, 2012

The Multipurpose handle

So in looking at how I want to display things I had an idea about how tools will be displayed.  I am taking the perspective that the aliens in charge only wish to provide the most basic equipment to the humans, and many things are in reality virtual objects.  So as far as actual physical objects go every player will have the suit and an all purpose handle.  For the three main modes that will always be available for players in the field the handle will  change what kind of output it gets.  I envision this handle being somewhat like a WII remote in size.  For ranged weapon mode a glowing pistol/rifle will be attached, with the handle being the handle of the weapon.  For melee weapon/tool mode a glowing blade will appear on the end of it.  In placement mode a beam of light will come out of the end of the handle and whatever object the player wishes to place will show up either 1 a wireframe of the object in the color of the faction to indicate that it can be placed there or 2 a grey wireframe to indicate that it is a no go at that spot.  The last mode I think I want to have is just the laser pointer with the option of visible beam and invisible beam(it will default to invisible) which will help players to quickly communicate if they see something that they wish to draw their teammates attention to.

Why so few posts

I was looking back through the posts that I have done in the past, and I found that there were several posts which weren't particularly productive and might have shown a bit of negativity.  While part of my goal in documenting this process is to show the entire process that I am having to go through to make this game,  I also wish to be efficient in my communications and leave out unnecessary parts, though I suppose you the reader can always decide which posts to read and not read anyway.  So if it seems like there isn't much coming out, it's because I would rather have quality over quantity.

01 January, 2012

Where MMO's currently fall short

I might have wrote concerning this in the past, but I think it is important to revisit.  I have had a few thoughts about  how I feel the dynamic of massively multiplayer games is currently failing.  I feel a lot of it comes back to a paradigm which could be traced back to games like the original final fantasy and dragon warrior for the original nintendo.  A long time ago role playing video games were single player and players started out as weak and poorly geared characters who then began a long journey to becoming stronger, more powerful, and well geared  adventurers who could beat increasingly stronger enemies.  This paradigm also was present in non video game type role playing games like Dungeons and Dragons and then many other variety of role playing games similar to them.  This paradigm of leveling up and becoming increasingly stronger was very successful and almost became pervasive in a world of offline video gaming, so the fact that online games would build off of it is only natural.

Enter the world of the internet, where players can now play games with other people in online worlds.  The most famous example of this would probably be World of Warcraft though there are many of them out there with a growing number of them coming out every year.  Just as in the single player paradigm of the single player role playing games, online game players start as weak and lowly characters who are able to progress through the acquisition of experience, wealth, and a whole assortment of items which allow them to complete quest after quest.  The problem arises when players try to play together in these environments.  I'll illustrate these problems with several scenarios featuring players A and B.

Scenario 1.
A has been playing an online game for several months now and has a level 25 character.  He is good friends with player B, who after having heard of this game and having many invitations from A to play finally decides to play the game.  Here is the problem.  B must now start as a level one lowlife with nothing to his name, and starts to play the game in the way that single player rpgs go.  If A wishes to play with B, he must either take his level 25 character back to the low level area where there is no challenge and the character does not progress, or he can start another character from the ground up so he can accompany B in this new game.  A is now at odds with B in that A must stop his progression on his level 25 character if he wishes to play with B, which usually results with A impatiently rushing B along.  B in the mean time may feel rushed and that he is not able to enjoy the game because A is trying to get him up to his level.  What will usually occur in these situations is B finds another lowly beginner to play with or will elect to play alone as beginning levels don't really require teamwork.  In the mean time A is playing with the other level 25s and progressing along there.  Eventually, perhaps months or maybe even years later, A and B are on a level playing ground and can enjoy the game together.  That may or may not happen as A and B may have stopped playing this game and have moved on to another game where the same situation happens.  The moral of the story is that these friends aren't able to enjoy  playing online games together.  Players have tried many tactics to overcoming this problem, including power leveling( high level players assisting low level players to get levels quickly), buying gold from gold sellers for real money, or just buying an account where someone has already done all of the work of leveling up.  All of these solutions have their own set of problems, but I digress.

Scenario 2
A and B start playing a game at the same time, but A has a lot more free time and motivation to play than B does and soon A is 5 levels higher than B.  As time progresses the gap between these two players grows ever larger and soon it is not any fun for either player when they play together.  This defeats the purpose of playing the game and soon A and B either find new friends to play with or will stop playing the game.

Scenario 3
A is a self proclaimed hard core gamer who decides that he must have the very best in the game before anyone else.  To this end A quits his job and has very little interaction with anyone outside of the game.  B is a friend who also enjoys games, but does not feel the need to have the best of the best, nor does he think that the game should trump life.  A ends up spending every waking moment for months or possibly even years doing the mindless quests and hunting the rarest of monsters for the chance of the rarest of drops to happen.  When B suggests that they play together, A notes that because B has not spent the necessary amount of time in the game and therefore cannot kill things fast enough, is too weak to fight the ultimate monster, etc.... So even though both players are the same level, the gear disparity makes it so they are still not on an equal playing field and cannot enjoy the game together.

So what is my point with all of these scenarios.  My point is that the progression paradigm that works so well in single player games actually interferes with the social aspect of online games.


What is needed is a Paradigm shift.

Imagine now that the progression paradigm is changed to remove the concept of leveling up.  In scenario one A and B are no longer at odds because there is no longer a level disparity.  They can play together even though A has played 3 months longer than B.  In scenario 2 it doesn't matter that A plays more than B since the amount of time that one spends in the game does not progress the character farther.  And in scenario 3 A does not feel the compulsion to play the game to the exclusion of all else since no matter how much he plays he will have the best the game has to offer and B will be able to play with him even though he may not share the same level of motivation.

I know that some of you reading this are thinking "without progression what is the motivation to play".  Well from what I have learned from research on MMOs from sources like the Daedalus Project many people play these games not because they wish to progress through a game, it is because they want to play with friends or other humans.  This would suggest that if A were able to more easily and enjoyably play with B, then they will be more likely to play the game.  I'm not suggesting that there be no objectives at all, though there are examples of games that have been successful there too like the Endless Forest.

I hope to provide in this game a place where people can play together, working to a goal side by side regardless of how long one has been playing or any other factor.  It's also my hope that other MMOs will come to the realization that the progression paradigm is getting in the way of social interaction.  After all the reason many people play multiplayer games is to have fun with friends.