Wednesday, December 30, 2009

Boost problem solved!

It seems I solved my problem from last night. One thing about linux is if you have too many things installed in the root directory (instead of the home directory) there may not be enough room left to run the gui. In order to fix this problem, I logged into the console as root and deleted some libraries. When I installed this system, apparently I had not given enough room for the / partition.

I decided to delete guichan, a library I probably used for the Mana World that I never manged to compile, let alone run. Also I removed a bunch of libraries and documentation for MIT scheme. At one time, i thought it would be fun to go through the MIT course ware. Then I realized that I was not interested in pie in the sky projects and algorithms, but rather down to earth real code that compiles and runs. Sure, I need to know some algorithms, but if you are going to code, you might as well code in a useful language like C.

I also deleted the libraries for kopete, an ancient IM program that always told me I had exceeded the rate limit for icq. Once upon a time, it worked properly, but now it was just any annoying start up feature so I was just as glad to be rid of it.

Finally, I ran shutdown -r now in root mode. that shutdown and rebooted the computer so that I could log into the gui.

Its strange to say this, but I was worried I would have to reinstall linux and maybe accidently overwrite my home directory. Apparently, despite what the mean person in the freenode chat channel said when I gripped about the boost library and called it a piece of garbage, I do not need to go back to windows.

Boost yourself to hell!

Yesterday I got the brilliant (no stupid) idea to try and install licq on my computer. For those who do not know, licq is an instant messageing application that uses the icq protocol. I have an ancient version of mandrake 10.0 on that computer. I figured I would install licq so that I could get in contact with some of my old friends from ultima online if they were still using icq (who uses icq these days? anyone?)

I figured that former Ultima Online players would be in a good position to help me develop this game because I would not have to spend hours upon hours explaining the game design to them. They already know for the most part what features it is supposed to have, so I do not have to go into detail about things like banking, dyeable clothing, skill based systems or most importantly, what features an mmorpg should have that most are lacking (things such as customizable housing and being able to leave items on the ground come to mind)

Anyway, after I installed the pre-requiste boost libraries needed to compile licq, I then went a head and installed licq. It seemed to work fine. I did not message anyone because there were few people on, and I was kind of tired anyway (yes, I have a massive contact list of practically every aquentence I ever had in UO.) I got my whole contact list, and yes, there appeared to be some people online as well. I was pleased, but at the same time disappointed that there were not more people to try and contact. Before I went to bed, I turned the computer off. When I went to boot it into Linux this afternoon, I was left with a terminal login screen an a failure to get the x11 server started. I could login as root (I forgot my user password lol) and look around directories and use commands, but some things just do not work very well in the command line, so I would like my gui back.

The ultimate lesson that can be learned from this is libraries suck, dependency hunt sucks, even if you thought it works, it can just be broke and you won't find out until you reboot your computer. I wonder if I will be able to fix the issue before I die. Also the boost documentation was terriable. I did hardly know what I was doing half the time, and I had to spent a lot more time reading documentation to install it than I would have liked. I feel that the free software community does not appreciate good writers and would not know how to write documentation for stupid libraries (that they should not have anyway) if it bit them.

Monday, December 21, 2009

Why I started my own project team

In the beginning, I was not someone who wanted to spend my life making video games. I started down a completely different track in school. Sure, I spent a lot of time playing video games, but when it came time to pick my major, I took my fathers advice and majored in electrical engineering technology, something you can make money it as he put it. It was only too late that I realized I had no intrest in working at the kinds of jobs that require that sort of degree. I walked into this one place my first day, and knew I would not enjoy it. As a result, I did not go to work, nor even look for a job. I did not worry about money at first, because my husband has a four year in the same proffession, so I figured he would be making big bucks. Little did I know, with housing price inflation, his salary would not be enough to afford the kind of lifestyle I wanted.

I could not deal very well with the negative choices I had made, so I spent a great deal of time playing Ultima Online. I also got very intrested in GNU/Linux and the free software movement after one version of Ultima Online did not run on windows XP when it first came out. (then windows xp deleted my files)
I thought that everything would go in the Linux direction, so I just needed some patience, and Ultima Online would create an official client for Linux. That did not happen, and also Ultima Online changed the game play in ways I did not like. The more I played Ultima Online, the more fundamental design flaws I saw in the game. For instance, found items were still better than crafted items, doing too many things client side caused cheating to be rampent, there were no other races except human (elves and gargoyles were added later, but never orcs or undead) Player run shards existed, but there was no easy way to add new artwork to an existing game without the source code, in addition all the fundamental design flaws of the game, plus the fact that it is intellectual property of EA posed problems.

After a while, I realized that if I did not start the design team from scratch, no one would bother to do it. I considering joining other project teams for games unrelated to what I really wanted to make, but mostly found that either I did not enjoy the game enough, or the project had policies that I did not agree with (either dependency hunt or standards of realism aka "quality")

Sunday, December 6, 2009

Flustrated with my project team

I know the rest of the projects memebers will not like to hear this, but I am flustrated with my project team. I know I have written about this numerious times in several posts before hand. I just feel that nothing is getting done because

I am thinking about kicking the last two people off the team. All they do is argue with each other and with me about things that have nothing to do with the wograld source code.
The first is a guy. He makes piles of notes and no one else can read about the code and refuses to explain them to anyone else. He is also very difficult to work with because he worries other people will see him as inadiquite. I guess the whole free software culture of "quality" has gotten to him and taken away his ego even though he did over 90% of the code work on the project, in fact all of it. I took care of all the adminstration things like, figuring out what we needed to know, setting up the sourceforge website, etc.

The girl, I'm not sure if I should call her a "girl" at her age, is so obsessed with stupid stuff like cooking for her husband and exercise. Then, when I tell her to get on it, she makes some excuse about not being able to concentrate. Not able to concentrate. What kind of B.S. is that. If you look in the project history, you would see she had no contributions except to add this person we did not even know as a project member. I had to remind her these are real people on sourceforge, and not just test identies. People wanted to know why they should not have two or three accounts at source forge, and why they should learn to use version control. Okay, yeah, it might not be apparently obvious, but I feel that both of these people insist on too much hand-holding.

I'm thinking maybe I should take the advice of a former IT manager I talked to, and just get a whole new team. A team that does not need their hands held. A team that will be just as passionate about the aims of the project as I am, a team that will take over and practically run the project for me while meeting and exceeding all of the goals of the project.

Every time I suggest it to the current project members, they get themselves in gear for a couple days and attempt to make some progress. Invariably, they get sidetracked by issues like the fact it does not compile on solaris. Then they just forget the whole thing.

Admittedly, last month was bad, with car troubles and the fact I worked on it less than I normally do, due to Nano-Wri-mo I'm still working on the novel, but at a less frantic pace now, since I got over 50k words in last month, I would be happy with just 30k words this month and some editing. Of course, writing the novel probably will not fix the project team even though the novel is about a free software project developer.

Saturday, November 21, 2009

Crafting in multiplayer online rpgs

A lot of times, crafting in multiplayer online rpgs leaves much to be desired. Usually, monster loot drops are much better than anything a player can make out of component parts. I would like to reverse this trend. I would prefer to have player crafted items be better than anything you can find on monsters. I feel this would add much to the game. The other problem that I have seen in some multiplayer online rpgs is that you have to craft thousands of items to gain a few skill points. I think this is wasteful of a players time. I think how world of warcraft did it where it only took a few craftings of the item to raise skill at a certain level, and the time consuming part was gathering resources. I feel this is better since it means that players will do less sitting in one spot for hours trying to raise a crafting skill.

The negative side of player crafted items being too powerful, is that it can leave monster loot a little less exciting. But monster loot could still have random drops thosse could be taken apart with something similar to the world of warcraft disenchant skill, allowing the item properties to be separated from the items. Maybe they could be reused to make newer stronger items. The other idea I have for crafting is something similar to the diablo2 gem system. In diablo 2, you could collect gems. With a horadric cube, you would put 3 gems of any property, so long as it was all the same property and the same color gem at the same level into the cube. Thosse three gems could then be upgraded to the next higher level. So for instance, you could put 3 chipped rubies into the gem and get a flawed ruby. 3 flawed rubies would get you a ruby, 3 rubies will get you a flawless ruby, and 3 flawless a perfect ruby. The gems in diablo had different properties depending on what item they were put into. Later, in the expansion, diablo2 added jewels that had the same properties no matter what item you put them into, and runes that became a completely different type of rune when you put 3 of them into the cube. I would like to do something similar with the disenchanted components from monster items, or other stuff that you may be able to find or mine.

I think all items should be like socket items, except instead of being permanite like in diablo, you could break the item in order to remove the components that had the properties in them. People would end up making custom items depending on the kind of monsters/players they were fighting, or what kind of template and stats and skills they had. You could then break the item, so that there would always be a market for armor pieces since you would always need new ones to put the gems into.

I think it would take the flustration out of waiting for ever to find the random properties on an item you need, at the same time make looting monsters fun and intresting. I only wish I had the skill to add this new crafting idea into the user interface. It would make a great addition to our game, while keeping it fresh and exciting forever.

Shell Scripts part 2

I know in my last blog I said that I only needed the Makefile.am in the directories. Well, I found out I was wrong. Makefile.in is what is needed to make the configure create the Makefile without all the autotools. This is a better way to go in case someone has a different version of autotools. Old versions of autotools do not work with new versions of scripts, and you can not use different versions of autotools for the configure and then another for the make.
I'm still somewhat confused as to how all the autoscripts work. It is better than having to write an install program from scratch. I hate to think of what is involved in making binary packages for a distro, but since we do not have a release yet, I do not think we need to worry about it. I have found that binary distro packages are not that great anyway, because only the old version is packaged up, and not the latest version that you invariably need if you want to play a multi-player game with other people. Often, you all need the same version.

I am also still no expert on shell scripts although I have learned some things. In all honesty, I would rather be writing quests/dialog or creating artwork than trying to figure out all the arcane meanings of funny script terms. Once I know how it works, I do not mind creating scripts, it is the learning part I detest. In fact, that is a big part of what I spent November on rather than just working on the shell script. I have been writing a novel about a guy who starts a free software project.

Thursday, November 12, 2009

Shell Scripts

The title of my post will be Shell Scripts, yet again. I am still learning the unix commands and how to put them together. It should be simple to write a script to systimatically go through all the wograld directories and delete the Makefile and Makefile.in that do not need to be there. I'm pretty sure now that it is only supposed to be Makefile.am in each directory. This is something I did not realize before. Also, I need to write a script that goes through every file and then replaces every instance of crossfire with wograld. I know that one is probably going to be a pain. How am I going to like it when every file asks me if it is okay to overwrite it. On the other hand, I do not see how else to do a true fork of the project, and I do not think doing every single line by hand would be less tedious, it would probably be more tedious. Even if I have to confirm every instance of mv, it would still be faster than replacing every instance of crossfire in every file with wograld by hand.
I would not be surprised though if I never figure it out or if it is 100 years before the shell script gets written. It just seems like something that is too complex for any mortal being to do. Ironically, neither of the other team members are capable of doing it even though both of them made a living in computers and programming. Shell scripters are probably pretty rare and value able.

Saturday, October 31, 2009

Learning Gnu Autotools

I recently began learning more about how to use Gnu-Autotools. I found out that unfortunately, we filled up the CVS with stuff that should not be there, including makefiles. Now that I understand Autotools better, I see how we did not know what we were doing. It took me a while to figure out how to use autotools and what they were good for. I got so wrapped up in learning how to program in C, that I did not realize that the things I really wanted to change were in the shell script for compiling and running. The scripts have what the program is named and where it is installed. It took me a long time to understand what all the configure and makefiles are. Including but not limited to config.ac config.guess, Makefile, Makefile.am Makefile.in etc. I had a book on Gnu Make, but did not realize that what I really needed was the books on Autoconf and Automake. You can download them from www.gnu.org .

Saturday, September 5, 2009

Food on a CVS Book

A pristine book is a book that has not been read. That is my motto. Unfortunatly, some other people do not get it. If you need your books perfect, don't read them. They can look nice on a shelf and take up space. However, I do not believe that books should be used that way. I care about one thing and one thing only when I get books, that is the contents of the book.

One of our developers was complaining that her book had food all over it. I do not notice or care that books are not perfect. I do not get distracted by pencil marks, doodles, crumbs, fingerprints, blood smears etc on a book. In fact I like the fact that it feels well used and worn, Some how it gets me more involved in the material. When a book is perfect, it feels like it is a harder book to comprehend with more difficult material that no one has understood before. When it is old and worn out, it feels like territory other people have gone through, so I can always ask some one else about the material if I do not understand it. Also, the more I read a book and practice with it, the better I understand the text. That is probably why I always feel more comfortable with old books rather than new ones. The other nasty thing about new books is they are more likely to lead to paper cuts if you are not careful. Certain kinds of paper is worse at this than others, and not that the book has particularly sharp paper, but I have learned that I have to be careful with paper because it could hurt me.

What does this have to do with wograld project development? I realized that we did not know what version of the game we were using. Our lead developer said he fixed it so the crash bugs are gone, and it seems to work fine on my machine. However on our other developers Solaris system, the thing crashes just like it used to, not the same crash bug actually though, because it doesn't get as far as loading the maps that were not finished. It doesn't even get to scorn. Just walk a few feet and the whole thing crashes. I realize that we need some way to keep track of different version of the game, and using tags in CVS seems to be the way to go. I brought up subversion and how people think it is better, but that would require either waiting for the book or reading the pdf files, neither of the other people on the project are particularly interested in version control. It just seems like a nessesary evil. The thing is how to use it effectively, something I don't feel that we are doing.

I read that some newbie developer on some other project team messed up the CVS. I hope we don't end up having that problem. Then again, I feel if someone does not want to learn version control, they should not be working on a project, because it is something that has to be done.

Monday, August 24, 2009

Looking for artists

Only now have I begun to realize the extent of the artwork that will be needed for this game. All those animations of every pixel, from front to back of each piece of clothing, not to mention the paper doll artwork for the upcoming paper doll feature will take an awful lot of time to do. It would be nice to have some help on the project. That said however, there are certain things I would stipulate out of our artists.

1) Absolutely no copy-pasting from other games, yes that includes free-software games, because no one wants to look at the same artwork they have already seen, Wograld should have a unique look all its own (modified public domain and GPL art is ok, provided it fits into the game.) ,

2.) Its okay if the piece isn't up with the rest of the artwork, but there is no need to reject artwork that fits all the criteria (better than the current (mostly non-existent or old crossfire) artwork) and also nothing that breaks rule one, and it must also be in the proper perspective for the game. I won't be too much of a drag about style unless it is blatantly bad (such as too realistic, not pixelated enough etc)

3) No emotional abuse of other team members - period, this will not be tolerated. This is not a contest and artists should each work on different things to avoid walking over each others territory and turning it into a contest rather than getting the project done. I admit I started doing that with some of gnurpgs/ Serpentshard's tiles and realized that I was wasting time instead of getting the project out the door.

4) there is a limit to how much "better" a piece can really get. Often, all that needs to be done is a re coloration to make it more appealing, using intermediate colors rather than photo-realism gray and brown. I will put an end to the stupidness of "better and better art" found in some other games. When it is done, it is done, there is no "making it better."

Wednesday, August 19, 2009

Ego - why developers need it.

Sometimes people make out developer egos to be the big evil in a software project. They worry about things like the quality of the work and give harsh critics to developers of their contributions, be it code, documentation, music or artwork. Sometimes a person may want to work on a project, but feel that no matter what they do it is not good enough to get on any project and that they will not be recognized for what they contribute. Many of these people just give up, feeling that the lead developer will not be happy with their work no matter what they do.
They feel they have just wasted all that time working on things that will not be used for the project. I know, because I have been there along with several other people. It was one of the things that motivated me to start my own project rather than try to work on some one else's project.
I know that a lot of projects wish they had more people developing on the project, but at the same time have such high expectations for the quality of contributions that they do not find what they are looking for. Wograld is more of an entry level project. The art and code needed is pretty simple. Just a semester of C or the equivalent experience is all that is needed for programming. For art you just need to be able to use a simple editor like the gimp. A lot of the artwork is simply editing some sprites so they look better. The code also has a lot that is fairly simplistic. The time consuming part of the code is getting up to speed on the current code base and what it does, and then making some modifications. That is much easier than trying to write the game from scratch.
I think too much critic can turn otherwise good developers away from a project. Many people have their self-confidence sabotaged at work. They do not need more of this when they come home to do a hobby project. I believe developers should receive a lot of praise for the things they do right. It encourages them to work harder on the project, putting in more time and effort and producing more results.

Tuesday, August 18, 2009

Maps and hunting down bugs.

I finally got the lead programmer to do some work on the project again. Maybe it was because I took away his big bag of chips and soda pop, as well as two certain people being away for a week. Anyway, we finally got the major crash bug fixed. You can now walk around on the scorn map and not crash just because you try to enter places like the scorn school. I heard those areas were never finished even in the original crossfire. I also started working on the graphics again. I have completed an undead lady from four different directions with two frames each to replace the same 8 frames that all crossfire characters have. I also did a few terrain tiles. Map changes are still tedious and the map editor could use some work to fully display the new tiles. It would be nice to have some more help on the project, but I really only need someone who is dedicated since the project requires a lot of getting up to speed, figuring out how the code and maps work etc. Unlike the artwork, the code seems to take a lot of getting up to speed on it, rather than just making things of a certain size and copying them in, and then running some scripts. The directories are still the crossfire directories. It should really have separate directories for wograld. You also have to run the server as root, otherwise it will not have the permission to write to certain folders and you will not be able to save your characters or maps.
The reason the map and editor is so critical to fix, is because I need it working so I can see how my new terrain tiles look before putting them in the game. Not that I have not already done some of this work in the gimp. Also, Wograld is not crossfire. I want it to be a completely different game with different areas and maps.
There are many things I would like to add such as wearable clothing, but I think it is important to get the basics down first, by that I mean things like the menus and maps not crashing when you teleport into them. For some reason, our lead programmer found a bug where if you walk into nevar, it crashes. There is also buffer overflow errors. I don't want to add tons of new features over that kind of serious buggy code.

Thursday, July 23, 2009

C code and the overwhelmingness of large projects.

I remember the first time I looked at the wograld code. It was like reading Chinesee. Gradually, it has started to make more sense. I found all those c and h files to be overwhelming as well, seeing as there were so many of them. The lead developer somehow managed to change things so that it would do different things, but at the time, I just wanted to leave it to him because I couldn't see how I was going to figure out how to read it. I think that part of the reason there are not more good free software games is there is such a long time from the newbie who has never written a line of C code, to a good working game that does what you want. The intermediate steps can seem so tedious and painful, particularly when you don't know how to include libraries and it takes months to find a person who can answer a simple newbie question.

Once I found the resources, my learning of programming became much faster, and I was able to make headway where I had not made it before, and also to make better use of the resources I did have.

Some people think that programming and programming talent is like an inborn skill. Either you have it or you do not. I do not agree with those people.

Anyway, in case newbies in C programming have not found this resource, I will list this message board here since it has been a tremendous help in learning C programming.

http://cboard.cprogramming.com/
http://www.cprogramming.com/

Tuesday, July 7, 2009

The problem with Leveling in games

Many typical RPGs and like games, such as Crossfire, have a level system. This system frequently has levels that can go as high as in the 100's or as low as ten (but frequently this number is scaled up and up in order for the developers to create more content without doing any real work). When a character gains a level, she also gains stats. She might gain in strength, dexterity, intellect, or whatever other attributes are put into the game. The problem is she has 100 levels, so say she starts with 20 strength, and then gains a point in strength every level, now at level 100 she has 120 strength. The newbie character logs in with his 20 strength newbie. The problem is she is going to really be 6 times more powerful, so then, what happens if she decides now that she has maxed out her character, her new mission in life is to grief newbies. The newbies don't really have much of a chance against her.

But the real issue is that instead of 100 levels, there might be thousands of levels. By the time you get a maxed leveled character, that is several years of work. No lifers play day in and day out to get max level, and some games don't even really have a cap on levels, so the no lifer has this character that is several times more powerful than that of the casual player. The no lifer then dominates everyone, and everyone else realizes they will never get that powerful, so they quit. This is bad for the game, because eventually the no-lifer realizes that he is the only one left playing it, and he would rather rank up on a chart where he has some real competition, not just who had no life for so many years.

Ultima Online did it well. Swing a sword, gain points in dexterity and strength, cast a spell, gain a point in intellect, up to a reasonable cap for your total stats. I think it was something like 255 total, with a max of 150 in any given stat, and up to 25 more points with stat scrolls. But this way there were no uber l33t character with thousands more hit points than the newbie. Sure, maxed our characters were more powerful than the newbies, but anyone could easily get a maxed out character with just a little bit of time and effort, so most people had maxed out characters. The games focus was not on character development, beyond tweaking your template for a given game play change. The focus was on actually playing the game, going to dungeons, finding loot, crafting, and finding resources, socializing, and trading. People did not think of it as a grind game where the primary focus was character development. How you played your character mattered far more, as did customizing your template and equipment for your play style.

Friday, June 26, 2009

Useless Slashdot Articule

Today I read a useless slashdot article. It was about developers and motivation. I thought it would be worth a look. Turns out, all the comments were completely useless. I don't know why that someone would ask that of the wonderful "community" The RTFM crowd is not a place to find motivation, its more like the community of do not even bother. No, they will not help you with your project. I don't know what it is about the mean nerd community, but they tend to enshrine the tenants of "how to ask smart questions" and other stuff like that, encouraging others to be discouraging. I saw quite a lot of reply s promoting obviously useless things like the over-advertised prescription drugs and giving up on the project (either temporarily or permanently).
Other communities are not like this. It seems that nerds have a lot of time to tell someone useless dis advice, and not enough time to actually program anything useful.
I wish now that I had not wasted my time reading that article. As if I don't have enough to deal with learning C then having to read something nice like that. For those who don't listen and like to waste time, here it is.
Slashdot Timewaster

Sunday, June 21, 2009

Wograld History, not as easy as it seems.

One of the reasons I think I initially put off the website is because I wanted some kind of world lore that made sense for the game, I had this idea of four races and nine stupidities, but then I had really no back story. For instance, I wondered, why were the stupidities important to the populace? How did the four races come to exist in the world. Try as I might, I could not answer those questions. About a year or so ago, I seemed to have written up something about a tyrant who united all the races and that the nine stupidities were a bunch of vague principles that originally tied to common sayings in the realm, but solidified into a set of principles that were used to defeat the tyrant. As far as the races went, I knew that orcs and elves could become the other race, same with humans and undead, and that undead and elves were originally considered immortal while orcs and humans were mortal, whatever the heck that meant.

One thing I have realized that as I have gotten a more in depth view of history than what i had in school. I have come to realize, that people today do not really understand the past, or even how people of that time may have thought or seen the world. I often speculated especially about ancient magic and what it must have been like. Was religion and magic always so closely interwoven? Were the gods really demons? Were the demons really gods? Why did the mysteries disappear? People can only speculated based on the writings and art that they find, but so much would not have survived the ravages of time, particularly in hot and humid climates such as Africa and the Americas. Also, a lot was destroyed by war, with a new king or tyrant removing the face and symbols of his predecessors in order to make it so that he was the only history that ever existed, and that the past did not. People like to think that certain things are or were timeless, but was that truly so? I feel it is not enough to say that is always the way it has been, one can only go further back and farther away.

One thing about the setting of Wograld, after the tyrant king, people are on an upswing. It is not falling into a dark age where people forget how to do even basic tasks, but rather, suddenly can craft new weapons and armor that they could not before. There is an enhancement in the learning of combat techniques and magic.

But the new skills and powers are not without their detractors, in fact, after the tyrant, it is almost an uphill battle to learn new things, since the races of Wograld seem to be afraid of it. This is where the demons come into play. Demons are an idea that I had after thinking about what to do about the skill system. What if, in order to raise your skill caps, you had to summon demons and ask them to train you in various skills? Wouldn't that be neat. Typically people think of demons in games as either monsters to fight, or little familiar creatures for warlocks and summoners to use in combat. But I like the idea of a whole new take on that idea. (well, actually a very old idea)

Wednesday, June 17, 2009

Working on the Project Website

A long time ago, I started work on the project website. I managed to upload the first page. Then I got the brilliant (actually stupid) idea that I should make it look nice with CSS or something. That simply led to it not getting done as I tried to fool around with how it was supposed to look in CSS. People don't really decide to play or not games based on how great the website is. The main thing is find the information you need and go download and run a copy of the game.

I had wasted a lot of time prior to that trying to figure out how Drupal works. Drupal is this really bloated content management system that you don't need to display basic information about a game, but one of my friends used it extensively for his website and recommended it. This is before I ever heard of CSS. Of course his website is a whole different animal from making a game website. A game website is just basically information thrown up on the web and organized in some kind of manner. In fact, I just went to a website today that was basically just a wiki for this game engine I was looking at. Wiki's make it look like it is very in progress and anyone can just add anything. However, wikis don't really have the polish of a more traditional website.

Monday, June 15, 2009

Structs and typedefs

My learning of the C code hasn't been an easy thing, as many other people who have tried to learn C programming on their own can recall. I came across an old message board post today when just glancing at some FLOSS websites. It was a discussion about someone giving C programming tutorials. Realistically, I don't think programmers for this project are going to come from the free software community of already existing programmers. If someone is already that good with free software and programming, they probably have numerous, harder projects to actually work on. I think it would be better to find a bunch of retro gamers and teach them to program in C.

The big problem is finding any good programming material on the web and in books. I have already read 4 books on the subject, Problem Solving and Program Design in C by Jeri R. Hanly, Elliot Koffman and Frank L. Friedman is the one I am reading from now. This big blue book is more about teaching algorithms than just teaching the syntax, something that is needed if you want to go ahead with the code. Some the examples are very poor though. There was this problem where they used a bunch of doubles, but then had it scanf as a float. In addition I have also worked from the infamous K&R, Joy of C and a C primer. The primer book was the one that was most geared towards complete newbies, while the rest of them were more advanced and really needed some prior programming experience.

I have started looking at the code for the X11 client again. It looks like a bunch of structs and typedefs. Not really knowing the x11 function calls as well as not really knowing the rest of the code make it hard to figure out what it does. I really have not gotten much help from the other team members as I would like. I think that is why it may be better to look for more programmers in that community rather than trying to get the current programmers to work on the project. People don't really get commited to anything without a personal stake in the end result. On the other hand I do know how much I want a 2d, pvp, skill based, mmorpg. I doubt it is the most in demand
game ever, but there is probably enough demand to get a few other people involved at least.

I'm already thinking of the fun of writing quests and sticking tilesets on the map. I just wish the user interface and current crossfire gameplay didn't suck so bad. Last time I tried to play test it a week or so ago, I ended up crashing again by going into the wrong map. I started to looked a the difference in some of the files, but my lead programmer changed a lot of things, and didn't really document his changes, this being his first free software project as well.

Sunday, June 7, 2009

Learning C the hard way

I thought that the C coding job was just something I could assign to another project member. I was wrong. I also though that you could read C programming books and then dive right into the code. I was wrong about that to. Apparently, unlike things such as version control and ht ml, learning the C programming language is going to take a long long time. Part of it is because the books written about programming in C are very bad. And the other part is unlike other things, there is just so much to learn before you get a working knowledge of C. Every semi-colon, every comma makes a difference in being able to compile and run the program. Also, functions don't necessarily work the way you think they should. Take scanf for instance. The whole deal that spaces meant a new entry with scanf took me a while to figure out. Also, you have to be careful that you are not inputting things in that you don't mean to. String processing doesn't work like you think it should. And I haven't even done an in depth study of structures yet, something I will need to do to be able to understand the wograld code. The problem with most programming books is this. they give you examples, but when you try to build something on your own you are left in the dark. Then, other books have algorithms in them, but those algorithms will give you no way to implement that in the C code. You end up spending your time hunting down syntax errors because you can't implement the algorithm.

Friday, May 29, 2009

Why Quest based games are stupid.

I'm really tired of all these Quest based games. Basically, the idea behind the quest based game is this. You run around and do quests for various npcs. They have a checklist of things for you to do, like gather ten rat tails. Then they give you a prize Most of the time, it is not very good, even when it is good, it quickly loses its useage. You could fill the game up with numerious useless quests to fill up a characters quest roster. Then, after you have finished them, you are given several more.
The quest systems seems to be combined with the equally lame level system in order to keep the level grind intresting. Actually, I often feel like quest based games are too much like my life. One tends to pick up a whole bunch of them, and as soon as you stop doing quests, you find there is really nothing else to do in the game, because the rest of the game and its content wasn't filled out.
Now, I am not wholely against the ideas of npcs handing out quests. I just think that it should be a side thing rather than the whole meat and bones of the game. I do not want players to feel that they are checking off a list of things to do for some npc in town. Now, I know some people seem to like that, but then there are 99999 other games for them to play that have that sort of thing.
I think, orginally, the purpose of quests was to give an epic feel to the game, but instead of feeling like some great hero, I end up feeling like some errand boy doing stuff for the townsfolk who sit in the tavern and drink, while I am running around from dawn till dusk killing rats and other vermin.

Wednesday, May 27, 2009

Losing House Keys, Even when you don't die.

This last couple days, rather than being able to work on much of anything pertaining to Wograld. I have been searching for my house keys. This is one thing that games can easily fix that cannot be easily fixed in meat space. That is losing your means of entering your house. In addition, the bad guy who looted the keys from you can break in and take all your stuff. In my case it isn't so bad since I can (mostly) rely on family members to let me in, since usually someone is home here. It still sucks though because I also lost keys to my storage unit, a dresser drawer key (that fortunately wasn't locked) and my favorite irreplaceable key chain.

I remember when I played Ultima Online in the early days, besides pk stat loss (Crossfire is worse because it has stat loss for everyone not just pks), boring gold only monster loot and terrible lag, it also had this problem that when you lost your house key, there was no way you could get it back or change the locks. Therefore, once someone stole and/or looted the key, there was no way to ever make the house safe again for anyone to store things. The looter could not have it be safe, because you probably had a copy of extra keys as well. The only way to fix this was to demolish the house and start over, but since every time someone used a key on the house, it refreshed it, well you can guess what happened, griefers (intentionally or not) filled the landscape with virtually useless houses.

Anyway, later versions of UO, as well as many other games, don't have that annoying feature. You can have a ban list, and those characters can not enter your house at all. It is like a magic force field just doesn't let them inside, another method is to have an invite list, letting only thosse people you allow access parts of the house. In Uo there were four tiers of permissions owner, co-owner, friend and guest (or something like that) the owner was the only one who could demolish the house, the co-owner could add people at the lower tiers as well as move containers that were locked down around the house, friends were allowed to access certain containers that were marked as friend. It was handy to friend your guildmates and put extra supplies in those chests. Finnaly, on private floors there was a guest status that allowed you to enter into areas you might not otherwise be allowed inside. This level did not allow you to access any containers or anything, just walk around the building. While this was fun and very convenient, some people missed being able to have all out battles in homes without the I ban thee going on. Dueling areas still worked very well, however the maximum housing size was not ideal for some types of combat. In addition archers could stand in windows, shoot arrows out, and be perfectly safe from looting. Since in crossfire, the internals of houses are seperate maps, I can't imagine this to be an issue, although I supposed someone could run between maps to avoid dying or something.

Monday, May 18, 2009

Skill Development Overview part1

As I have already stated, I really don't like a level system in rpgs, I much prefer a skill based system. Many games have combined the two somewhat such as World of Warcraft having a level system for your characters, while crafting is a skill based grind. I have not completely worked out how Wogralds skill and system is going to work out yet, all I know is that I don't want what is currently in crossfire, or another generic level up sort of game.

In Ultima Online, every skill you could use in game from tailoring, to cooking to magic was skill based. But there were also "default" skills, things any character could do as soon as they were made, things that may have actually taken skill points in other games to complete. A good example in Ultima Online is carving the hides off of corpses. This was an easy resource to harvest in that game, while in other games it takes a speacial skinning skill. I often wonder if certain skills should be default, and/or certain skills everyone should be able to learn up to a certain level, such as cooking.

Many games end up tweaking the skill system and the way it works after the game comes out and is play tested. Too many things that seem like a good idea on paper, end up being problematic when there are real people involved playing the game. For instance. Some games have you make thousands of items over and over again to gain a small amount of skill. People find this repetative, and then end up getting macro bots to do the tedious skill grind for them. You can put the macroing into the game, such as in phantasyrpg, where you can simpely tell it how many times you want to mine, typing in a number up to a certain amount of digits.

I like the gain on use idea for skills. I believe this is already in crossfire, with weapons levels going up with usage. There are a couple annoying things with this though. First of all, if you allow skill gaining in pvp, a person could get a sparing partner, train with the same person all day and night, and eventually both people would end up with high skills. The other thing is where newbies fight low level monsters to gain skill up to the maximum amount. We should limit how much you can gain from easier stuff.

Monday, May 4, 2009

Local and Global Chat

I received two more of the x11 books today, so now i have 0, 1, 2, 3, 4, 5, 6, and 8. I heard there wasn't a 7, I don't know if thats true though. Hopefully it will have all the information in it I need to begin programming x11. I am tired of using the buggy default C functions scanf and gets, I heard gets is really bad and you shouldn't use it, but that is no reason to pay any attention until something breaks. There is a problem with them that whenever you run a function before using them, it seems to skip over the input getting step. Hopefully I know enough C syntax to begin programming instead of leaving it entirely up to other people like I was doing before.

But what I really want to discuss is local and global chat. I was reading how in Darkfall there is no local chat. That really changes the social dynamic of the game, making it a less social game. Apparently, most of the chat goes on in guild chat. I think just having global chat is too overwhelming, espeacially since there are more than 8 people on the server. I think that if you are in a large crowd and everything you say has to be directed at every single person, it makes you just want to shut up about some things, because you can't really get to know people as individuals, just what ever they chose to broadcast about themselves. It is like if everyone just read blogs and no one ever used email or instant messageing, you wouldn't really get to know people because when you blog, unless you limit it to friends only, you are broadcasting to the whole internet. Maybe that isn't always such a good thing.

Sometimes things are too personal, and you don't want everyone to know them. For instance, on a pvp server, you don't want every pker in a large area to know that you and a couple other people are going to try and hunt kobolds. Then the pks will come and kill your small band, taking your loot away. It would be better if only you and the couple other people in the area heard it. Then you have a chance of having a successful hunt without the gank squad showing up. Now, there is the possibility that your other party member could try and pk you anyway, but that risk is much lower than if the whole server knows what you are up to.

One possiable way to deal with no local chat is to mostly only have guild chat. Guilds are groups that play together. They could find each
other outside of the game on places such as message forums and websites. The problem is that some players new to the game may not even know about the guilds, or even have an idea of what guild would most fit their play style until playing the game a bit. Also, players may fall out with guilds, or wish to form new ones while in game. If you don't have a local chat, it can be hard to get people to met up and decide if they like playing with the other players enough to want to join the guild. Furthermore, some things make sense to happen outside of guilds. It would be like if you only talked with your family members ever, except when you were blogging or something. It would get hard pretty quickly, since you might end up with the warped way of thinking that your family (or guild) has set up. Seeing other people and talking to them one vs one or on a small group basis can do more to change a persons mind about something rather than hearing everything broadcast over the global channels. I would not want all my personal problems broadcast on live tv for everyone to see. Some people might like that, but I doubt the majority of us would want that to go on.

Friday, April 24, 2009

The rest of the X11 books.

Apparently, I am still missing books 1, 6, 7 of the x11 series. The lead programmer just finished with his math grad school final, so he should be getting back into programming again. Hopefully books documenting x11 will make the whole coding project go much faster and not make us feel like we are digging with spoons again.

Why have I decided to go with x11, well for starters, it is what the whole thing is based on. I don't want to learn some half finished library only to find out that it doesn't do what I want anyway. At least I know what x11 does, windowing menus. So I should be able to get a better user interface with windows you can close so they don't take up the whole screen.

I asked him if he could find the books in pdf format. He mentioned that it is not free - licensed stuff for the x11 documentation. Apparently, x11 is such a huge thing that it needed a series of 8, no make that 9 books starting with book 0. I didn't realize that till now. No wonder no one else wanted to get into it and wanted to use useless stuff like python and Lua. Since the books are out of date though, they appear to be fairly cheap, although how well the whole thing will work is another matter, but x11 is supposed to be stable, just like the standard C library, one can hope anyway. The C you use today should be able to be compiled on tomarrows C compilers and not make a whole new update c.01 that is incompatable.

Saturday, April 18, 2009

Updates for the last couple weeks

I have been very bad about updateing this blog the past couple weeks. Our lead programmer did order the X11 books, and will begin workinng on a fix for the menu issue that is shown in the screenshots on the website. I have unfortunatly been busy with a lot of real life stuff that I will not bore you with here.

Suffice to say, I did go to take a look at an art school. Not that I think a lot of formal art training is nessesery to make this game look good or anything like that, but when you have degrees in something then you can thrown your weight around. There are a lot of people in this world that only care about prestiege and letters after your name. Not that any of those types would want to look at or work on this project anyway.

I have to say I was really impressed with the student works. They seem to understand, just like the developers behind World of Warcraft, that the concept is more even more important than the execution. You have to make it appealing. The old "lets try to make everything realism" is dead. You don't just make graphics "better and better" by increasing technical skill, machine hardware demands and realism, like some physics major would like to believe. What is ultimately more important, espeacially in games of this sort, is to communicate a certain feel to the player of the game. Artwork is supposed to evoke emotion, not just try to be a blind copy of something that has been done beforehand by someone else elsewhere.

Eventually, I do plan to have other artists on the project, the look and feel of this game is pretty easy to create for so that I think even a newbie could make good looking tiles. I'm not trying to overdo the shading to make it seem like you just stepped into a photograph. If I was going for that, I would just photograph the stuff I wanted in game rather than waste time drawing it out, cut it, resize and paste it. Why go through all the drawing trouble anyway then?

Tuesday, March 24, 2009

Libre Planet Conference

This past weekend I went to the Libre Planet Conference. It was great. I finally discussed some of the issues the project was having with a different set of people and got some different input from what I had heard before.

I found out that the main reason our lead programmer did not want to continue the project is because he could not get x11 to display the stats in the window and I kept bugging him about it. X11 is something easier said than done, and I guess we will have to take a look at a manual instead of just guessing. The other alternative is to try using some other libraries. I am not really opposed to using libraries per ce, but there are a couple things I am really opposed to having in this project. These are, having users do dependency hunting to get the game to install, and needing to use things like proprietary graphics drivers to get Open GL to work. While I might be ok with allowing something like sdl to be separate from the game, I would not be ok with any library that is not a stable version being a separate download, because else a new version of it could break the entire game, making it uncompileable. If there is any doubt that it would lead to dependency hunt instead of a working project, I don't really want it in the game. It is always easier to just include the whole thing, even if it makes the download bigger rather than force the user to grapple with things they should not have to. Worse yet, library dependencies can be so bad that even developers have trouble getting the game to work.

Opinions varied widely as to what libraries were good to use instead of just plain old x11, I hear everything under the sun, from QT, to GTK, to open gl (although I would certainly not take the last suggestion, no matter how fast it would make the game, it just causes all those proprietary graphics driver headaches for enough users at this point that I feel it is not worthwhile.)
I heard a prominent programmer say that SDL is slow, but then again the highly successful (relatively speaking) battle for wesnoth project uses SDL, so it can't be all that bad.
Another way to eliminate dependency hunt would be to get the project into the distros, (espeacialy once we get it a bit more polished) I've heard that it can be relativly hard to get even completed games into distrobutions such as Debian, Fedora and Ubuntu though.

Friday, March 13, 2009

Developers and Obsession

One thing I've noticed about all developers, free software developers in particular, is that they tend to become obsessed with things far beyond a point that any ordinary person would take a given obsession. When this is a nessary free software project that needs to be worked on, that can be a good thing. However, it can be a very bad thing when this is applied to other areas of life so that the software project is never even started, much less reaching a stable working condition. I wanted to check up on one of our developers, because she had not contributed to anything in the project for years, yet always gave these indications that she was still intrested in working on it. Yet, when I find her, I find that working on the project is all but impossible, because she has a new obsession. Making everything immaculatly clean all the time. When ever she sits down, she sees a speck of dust. She changes her outfit several times a day, and consiquently has an awful lot of laundry. Dishes must be done immedicatly after eating. You can not even finish a nice cup of tea, because first there will be some speak of dirt somewhere that must be cleaned immediatly, and then the tea cup, still hot and half full that you are not finished with, must be tossed out and thrown in the dishwasher. It would be one thing if she just took certain times out of the day to do some cleaning, but to make a never ending constant thing that seems to know no bounds means that there is no time left to do any sort work on the project. I find more and more that people prone to obession always find stupid things to obesss about for hours on end to the detriment of anything that is good and productive and fun in this world. Having a few obsessive obsess on something so pointless like that is

Thursday, March 12, 2009

Domain Names and Namecheap

Recently, I have been working a little bit on the website. I moved, but I still have not gotten a chance to get everything unpacked, between people complaining about where I move things (hey, I need my backup cds to work on this project)
I currently own wograld.org, as well as wograld.com, wograld.net and wograld.info. I figure that when my game becomes a big success, those domains will be worth a lot of money, so better buy them now. Besides, people might type in the wrong domain name anyway.

Unfortunatly, Namecheap is currently undergoing maintanance. What do you expect for a company called namecheap? Anyway, it isn't that bad, except I could never figure out how to get the pop3 email working so I gave that up. I don't understand these unix gurus and how they tell you not to use the easy emails like Yahoo mail and gmail, and say you should get off the cloud and download your own email. Not everyone has an IQ of 200 and the ability to learn sys admin stuff from the lousy man pages they have on these sites. This is another reason I don't want just anyone on the project team, no matter how good you are, if you can not commuicate with normal people, then I don't think that you would understand this project and what it is supposed to do anyway.

Wograld.org makes the most sense for the project website page, since it is the .org. What else other than an org would be making up a project? Also, this way, if I ever decide to host it someplace other than sourceforge, I can just redirect it from the wograld.org.

Monday, March 9, 2009

Buying a New Laptop

I decided to buy a new Laptop today. It is going to be an IBM Thinkpad. I want to take it to the Libre Planet Conference in a few weeks to show off the wograld project. Hopefully I will manage to get it all set up, considering all the other stuff I have to do right now, like clean out the basement and care for my grandmother who had dementia, I worry I won't get it set up. Worse yet, the wograld website is still a mess, even though I managed to make Wograld.org point to the sourceforge website now. I wish I didn't have so much other stuff to worry about and do all the time.

I have noticed that the sourceforge documentation has improved since back when I was working on Wograld a couple years ago. The vhost thing makes sense now.

Saturday, March 7, 2009

Housing and Realism

I recently found out that Wograld current housing tool requires you to buy building materials, unlike the housing tool in Ultima Online that just required you to have the gold in your bank box to create the ready made additions. While Wogralds current version of the housing tool could be considered more realistic and true to life, Ultima Online's housing tool could be said to be designed to maximize fun in the game. How much fun it is to have to remember how many boards or ingots you need to finish off your dwelling? Sure it is more realistic, but the reality is people don't play these games for realism. If it was realistic, we would have a housing mortgage crisis. Players would no longer be able to afford their in game houses anymore, and would have to move back into thier bank boxes.

Even Ultima Onlines housing tool had limits however. Some of them were well deserved, such as limited the creation of houses to certain tiles already existing in the game. This makes sense, otherwise the new houses would take too much time to load on screen, making for a laggy experience. The other, unessarly limitation is that Ultima Online's houses had to be physically possiable. Since crossfire as a whole does not really support this notion (what with buildings that have maps inside maps inside maps) It does not seem that Wograld nessarly has to follow in the footsteps of the idea that the world has to obey the same physical laws of the universe. For instance, why not have housing that is an inverted pyramidal shape? Maybe that is too wierd for most people however, but the idea that it is wierd and alien would probably draw people into the game because they would see stuff they have never seen before. Too many games, once you have seen a little bit of the world, you feel you have seen it all. You feel like it is just like every other game you ever played. The world is the same, it fits the same genre of sword and sorcerey, or some poorly written sci-fi.

Even Ultima, a pretty classic medieval style world had some science fiction elements. Once players get imersed in a world however, the worldlore becomes less important and the gameplay more important. It doesn't matter if the orcs are supposed to be at war with the humans, if game mechanics make it easier for them to work together, then they will do so. These kinds of things are set more by how the hard coded programming rules of the game are writen rather than what some talentless hack of a writer threw up on the website in her spare time.

Given that Wograld is not trying to be an emulated clone of your real life (if your so called real life was so wonderful you probably would not waste hours upon hours of your time on Wograld anyway,) it makes little sense to emulate the parts of reality that you dislike. The functionality of a game mechanic to achieve a certain goal, a certain feel for the game, trumps up the nagging voice of trying to be realistic in the sense of emulating real life.

Monday, March 2, 2009

Why monster spawns must be limited

Monster spawns need to be limited in any game. Originally, Crossfire did not have this limitation. What happens, is monsters can keep spawning and fill up the entire tiled map. While this may seem like fun for players, it is a nightmare for the computer to keep up with all those objects running around the map. What eventually would happen is there would be so much spawn the computer would run out of space and it would crash the server. Therefore, limits need to be put on how many monsters can be spawned a one time. This could be linked to the monster spawn generators. Every generator could keep track of the number of monsters it has spawned and every monster could have mark saying what generator it comes from. The generators could keep track of how many are spawned at once.

I remember one very buggy version of Ultima Online I played where monsters refused to respawn because the generator got corrupted somehow. This would not happen in Wograld as long as we keep the map reset feature, since then the spawn generators as well as all the creatures on that map get completey destroyed, and then refreshed when someone comes back to that area. As long as that feature is kept, the spawn generators should not be getting bugged.

Thursday, February 26, 2009

Death and Looting

One thing I would like to see added to Wograld is the ability to put stuff in a safe place and then loot the characters body after they die. Wograld, currently based on the Crossfire engine, just has the ability to respawn after you die with experience loss. Once levels are removed from the game and skill as well as stat loss upon death is taken out, it makes sense to have some kind of penalty for death. In World of Warcraft, this was a gold cost for equipment repair and a temporary stat loss, in Ultima Online it was dropping items when you died, that was later turned into a gold cost so that people would not have to keep getting new items all the time.

Personally, I prefer to replace items rather than just have it cost gold. It keeps crafters in game and the in game economy thriving. Even when the shard is made up of mostly veteran players rather than newbies, the economy will continue to thrive when you have to replace your stuff after death. It will mean that monster loot and reasources will always mean something to players given that they will have to be replentished, not just when they wear out, but when you die.

Some people do not like the fact that you can lose a hard earned unique item in the game. They then do not use the item in case they lose it. In wograld, I would like to make it so that the greatest items are crafted by players rather than dropped as monster loot. I do not feel that the gods should craft an elite sword of uberness and give it to a player as a quest or tourney reward or whatever. In Ultima Online, player crafters left their mark on an item. I want to extend the customization of items further. I do not think magic items should drop at all. They should always be crafted by a player character and dropped from a player character when he or she dies.

It may take various skill levels and amounts of resources to make different items, but this should not be the province of the otherworldly beings known as GMs, Seers, Administrators or whatever. It needs to be put in game by the highly skilled player crafters themselves. First, there is the quest, the ability to find that hard to find resource, fight off whatever monsters, players, and terrain to get to it. Then there is the skill required by the crafter to use it. Meaning time that the player has spent training the skill up, gathering resources to train and then learning the skill. Lastly, some crafting would have a chance of failure, using the resources up without giving you the newly crafted item.
Some people feel this takes away from the getting items for quest mentality found in other games. No, you get the resources from the quests, you don't get elite items.

Perhaps it would be possible to find items, but they would need to be repaired and enhanced by a crafter before use. That dragons blade is awfully dull, not to mention it has a curse on it draining the wielder of life as he or she wields it. It would become a mighty and powerful weapon given the help of the right crafter. But you can't just take swords like that without the blacksmith to help you out.
The end result is there would be no unique hard to find items that everyone would need.

I know currently, Wograld does not have what have been refered to in other games as "corpse runs" technically, these do not make a whole lot of sense. You run back to where you died and try to get your stuff back. There has to be a better way to do it while still allowing you to get some of your items back, and allowing other players to either loot you and hold some of your stuff for you, and allow some looting in pvp.

Wednesday, February 25, 2009

Dropping items on the ground, an essential feature

Far too many so called MMORPGS, massive multiplayer online roleplaying games, for those who do not know the term, do not allow you to place items on the ground in the game world. One such game that is popular and lacking in this feature is World of Warcraft. When I first began playing World of Warcraft, I thought it would be more like Ultima Online, except with more races, a level based system, and better looking graphics. However, I realized within a few hours of playing the game, how many important features that I had come to enjoy in Ulitma Online, World of Warcraft lacked. In Ultima Online, just as in Crossfire, the engine Wograld is based on, you can put items on the ground. Evenutally these items decay on a set timer, either from the time they were last picked up, or from resetting an area as in Crossfire. Otherwise, memory and space in the game world would be eaten up with items. Ultima Online eventually found a way around the player tendancy to save every rusty dagger and empty box, a method called housing lockdowns. The way the lockdown system works, is you have a certain number of "places" for items to belong in your house. Each container holds a certain number of items, in UOs case, that number was 125, that would automatically not decay. Also, each piece of furnature would count towards the lockdown limit. In order to lock it down, your character would have to say "I wish to lock this down" but really that could have been changed to anything. Anyway, it would not allow you to make anymore than the number of lockdowns on the house into non decaying items.

Diablo2 also has items that can be dropped on the ground and a decay timer, so I was somewhat surprised that this was not implimented into World of Warcraft, given that even a classic 3d game such as Ultima 9 had this feature of being able to place items on the ground.

Anyway, I feel that, along with housing, dropping items on the ground should be an essential feature of rpgs. Putting items on the ground opens up numerous possiblities for roleplaying your characters that not putting them on the ground does not. For instance, you could make a circle out of an item, like say, flowers, and leave it up for an in game celebration of some event. Impassable obsticules like say, crates, can slow players down who are trying to get somewhere, given they would have to pick them up and move the crates to get through the area. After a long hard day of adventuring, it is nice to be able to put that mug of ale on the actual counter in the tavern, instead of just having to hold it in your inventory.

Sunday, February 22, 2009

Housing, lockdowns and Siege Warfare

In most kinds of strategy games, there is a war going on. Eventually, one player or team dominates the map, banishing the other players to oblivion. This works great when that is the object of the game. It does not work so well, however, when the game is a peristant world based on world lore where the war lasts for years and years. One faction dominating the world ruins the persistant world for all the other players not in that faction, because they have no hope of beating the dominating empire. This has happened in both Ultima Online (on the standard shards in felucia not the siege ruleset shards) and also in Shadowbane.
Many times, this happens because game designers trying to design a pvp world think that it is better to be able to completey destroy towns and housing, allowing one faction to win destroying the map and the reason for playing to begin with.

Let us look at warfare and faction in the real world. Why does one empire not dominate our entire globe? There are several reasons for this. The first of these is that for thousands of years we did not have a fast system of communication with the other people around the world. It was hard for news to travel very far very fast. But this is far from the only reason that we do not have a gobal empire. There are several different cultures and terrain types thoughout the world. Certain cultures seem to thrive in certain terrain types, and wither away on others. For instance, Muslims thrive in the desert, and do poorly in temperate or humid climates. Furthmore, if one faction gets ahead technologically, others soon follow. Even if the faction that got ahead technologically tries to keep the technology to itself, somehow, it always gets out to the other enemy side of the fence. Finally, war is a costly thing for all sides, the wars are usually over resources, as soon as there are less people less resources are needed, so the fighting stops. For the most part, no one is trying to completely eliminate the other side. First of all, it is futile to try to eliminate a people that is as strong as your people are, secondly it just seems that people would rather trade for what they need rather than dominate the whole world.

Some pvp based mmorpgs try to have things in game like siege warfare and house destruction. The trouble is, once the winning guild takes the losing guilds houses, what are they going to do with it? In Ultima Online, you were limited to one house per account, a guideline that makes sense. There are only so many houses a person can occupy in real life as well. It makes little sense to have a lot of houses everywhere, and not even remember how many you have (like a certain presidential candidate who did not win the US election) Players characters can really only be in one location at a time, so the same guild does not really need ten different towns. One town is adaquite for the needs of most guilds (although perhaps they might have outposts for specifice purposes) really, there is only one place where a given group of people tend to hang out and meet up. It is easier to find your friends and guild mates where you already know they will be, rather than trying to be everywhere at once when you don't know where to go. Furthermore, consider travel times. That is why it makes sense to have a home base rather than scattering the empire all over the world.

Realistcally, a human does not want the orc stick huts built on the undesirable savannah or the orc forts built into the sides of the moutains. The orcs have no desire for the thick forests found in human and elven lands. While undead seem to be more comfortable in any terrain, they tend to perfer places that are more remote and out of the way, as well as places that have an erie or gloomy feel, such as swamps.

Logically, it makes no sense to raid and destroy towns filled with a bunch of monsters living a low level of of sophistication. Where are you going to put the hundreds of rusty swords that you loot from the losing guilds treasury? Thats right, you don't need that stuff. No one in your guild can use it, and they sure are not buying it at the shops. If they actually had something worth taking, however, it would make more sense. If they are guarding a mine with valuable minerals, or protecting an area with dragons that have solid scales for armor, well, then it makes sense to kill them and take the resources.

You could cite vengance as a reason for doing this, after all orcs killed your family, or whatever, but the fact of the matter is, as soon as you wipe them out in one area, they keep coming back, and if they don't then the world gets peaceful and boring. You spend the rest of the time picking flowers and decorating your over-priced home. Wait a moment, this was supposed to be a pvp game, so where are the other players to fight. Thats right, they all quit because you looted their last rusty sword and had no way to get back on their feet.

Thats why you should not be able to take houses from other players and loot all their stuff. If you think that is a good idea, then I have houses in Detroit Michiagan and Baltimore Maryland to sell you. After all, land is valuable wherever it is, even if no one wants to live there.

Friday, February 20, 2009

Why I hate dependancy hell

I posted a message on the wesnoth forums today advertising for a new lead programmer. They seemed to be really keen on all those libraries that, for the most part, make the game difficult to compile. Even when you do manage to compile and run it, it is not easy for the newbies.

The current lead programmer and I discussed this matter. Even though he is no longer contributing much to the project, he and I agree that games should not be harder to install than the dos emulator or wine. This is what gives unix and linux gaming such a poor reputation. I truely do not understand the rest of the impractical community. It is bad enough that microsoft windblows dominated the desktop for over a decade. It is much worse that they continue to push out proprietary software and limit what computers can do. In fact, Windows Vista was so bad that many popular computer manufacturers offered a downgrade to XP. We shouldn't give them the gaming advantage, particularly when dealing with games that rely primarly on gameplay, rather than graphics, since we don't have the proprietary video card driver excuse.

Furthermore, I do not feel that a language a programmer would like to learn should determine the game mechanics or the direction that the game should go. It is one thing if the progammer is actually a person who enjoys playing computer games and creates a game that he or she will enjoy playing. It is another to create something that is tedious and boring to play for everyone including the original creator.

Thursday, February 19, 2009

Why I prefer 3rd person view

I was thinking about this last night before I went to bed. I almost wanted to type this blog up then, but I didn't want to wake anyone else up.

I have never liked playing from the first person perspective in games. First off, they are almost always 3d or psduo-3d. Games such as Ultima 1 in the dungeon levels fit this description as does the early might and magic series of games. Later games that had this perspective included Halflife, Marrowwind (although you could switch out of it in Marrowind if you wanted) and a number of other 3d online games have this, but I have always prefered the over the shoulder or rear end view to actually trying to navagate the world in the first person.

Some people seem to think that playing the game from the first person perspective makes the game more immersive. The idea is that you are the character navigating around the world playing the game. However, I have found it to be somewhat disorienting.

Several years ago, people tried fully imersive 3d type systems for playing games, such as looking through glasses so you would not see anything else except for the game world. There is a reason this did not become popular, and it is not about the cost of 3d glasses or other items need to play the game. Like most things, the more of them that would have been made, the more the cost would come down. The real problem is people would get sick trying to go around and navigate a fully immersive 3d world like that. Hence, people are stuck looking at a flat computer screen at a psudo 3d character. It feels like you are supposed to be the character, and yet you still have all that other stuff going on. You can see your real life computer, and the stuff that is happening around you, your real set of hands and the lines around the computer screen. When you have a third person perspective, it is easier to make it feel natural. It is more like you are just rearanging objects or characters on the screen instead of trying to pretend that you are somewhere you are obviously not.

In first person, it is hard to see what your character is wearing. I find it kind of neat to see how the character looks and the way they move. In first person, I do not get the same sense of joy seeing them all decked out.

The other thing I like about the 3rd person perspective is that feeling of being detached from what is happening to the character. Sometimes it is hard to turn away from the game and you get so stuck on what is happening to the character that the game becomes flustrating or upseting. Putting things in 3rd person makes it easier to put it all into perspective, because then you realize it is just a little figure that you are moving about the screen and not really you who is taking the beating.

Wednesday, February 18, 2009

Housing in single and multi-player rpgs

One of the topics that I think needs to be addressed in a lot of rpgs is this idea of housing. Usually in single player rpgs, you play this adventurer character, who completes quests and stays at various inns in the world, never really having a house of his or her own, or a place to call home. Often, early in the game of the single player rpg, the main character or characters gets sucked out of their own world, kicked out of the town or has their home town destroyed early on. This makes the characters into adventurers of some sort. Even if in the story, the characters have a home, they end up so far away from it trying to solve a problem that has somehow effected their homeland to the degree that they need to leave it to try to solve the problem.

One of the things you can do, however in some single player rpgs, notabley in the Ultima series, is establish a sort of home base if you will. This is a place where the character or party of characters can drop off extra items they have acquired, and they will not decay or be taken away from the characters. The characters can return there later to pick up items they find out they need. Perhaps you should not have picked up those twenty rusty swords in the goblin den, espeacialy considering you only have four party members who each have magic swords, but that little girls hair ribbon that you thought had no use, may be a key plot item you need in order to defeat the evil dragon king. The problem is those torn cushions back in the warlock tower next to the water fall that were used for summoning the demon, later do not have any plot value, but you picked them up anyway, thinking they might be important, but it turns out you don't need them. Therefore, it does turn out having a storage spot comes in handy, when you have so many quest items like that and you are not sure what you need anymore.

Multi player games tend to more often option to offer a sort of home-base, so the characters do not have to live our of their backpacks. But in multi-player games, this is not the only, or even the main reason for housing. A big part of housing in multi-player involves inviting your friends over to show them all the cool stuff you collected on your adventures. It also offers a place to train your characters, hold in game events, meet up before that big dungeon trip, or any number of other reasons players can think of for characters to socialize.

These are, of course, in addition to the home base sort of feeling that housing gives to the characters in single player mode. I still remember my time playing serpents isle. There was a house on serpents isle where I ended up leaving extra goblin loot. Their was a chest in the house, and in the basement a naga kept spawning. Even though it had been abandoned and no one was living there for quite some time, I found myself trying to decorate it and make a home for myself out of the place. Another place I espeacily liked, espeacialy in Ultima Nine was Lord Britishes castle. He really knew how to make the avatar feel at home there. In Ultima Nine, I ended up storing all my loot in that one room of the castle. Unfortunately, it got rather cluttered, but that did not prevent the Avatar from falling asleep on the bed and waking up refreshed in the morning, (or night, sometimes the avatar kept some really strange hours)

Crossfire, the original engine that Wograld is currently based on, does have player housing, a feature I feel is a must for a fully imersive rpg. However it needs some great improvements. Given the poor user interface for the game, it is still hard to figure out exactly what needs to be improved, but once that is fixed, features will need to be added, modified (and yes even removed) from the game.

Tuesday, February 17, 2009

Skill based rpgs vs Class based rpgs

I was discussing last night with our wograld project unix guru last night. She says that she prefers class based rpgs to skill based rpgs. She thinks it is preferable to have classes in games such as mage, cleric, warrior, rogue etc, I on the other hand, prefer skill set based games, where every character can chose different skill sets to make their own templates. The reason I prefer skill sets is that I hate in multi player waiting around to see that you have certain types of characters in order for your party to work such as healer, or tank, or worse yet, a mage or warlock to transport your characters from place to place. I believe that there are certain skills every character should have, rather than to speacilize to much. The skills I believe are essential are healing, and transportation in most games.

She mostly plays single player games such as never winter nights, where you have a party of adventurer to cover the skills you don't have or you simply play the game a certain way based on the class you have, rather than worrying about other players and what skills they have. This maybe biased her against skill based systems, but she believes that applies to real life as well, and that people should speacilize like in doing certain chores around the house. But then I point out, what if someone gets too sick to do the chores anymore. Then the other person doesn't know what to do and the whole places gets messy, the dishes don't get washed or the bills don't get paid. This is why I believe that there are certain things everyone must know regardless of their skills.

Monday, February 16, 2009

Filling in Game lore part1

I took a break from the WOGRALD project for a number of reasons, that are more embaresing to admit than not being able to program in C. (something I did learn)

First of all, I wanted a way to fill out the game lore for the project. I had something all written up, but it just did not seem compelling enough. I wanted to really draw people into the game, make them feel immersed in the world before I even began to work on the project. I came up with the idea several years ago of the nine stupidites, basically things people do that are considered to be stupid, not as in retarded stupid, but as in lacking in the common sense department, as in the dress sense of your average programmer. Programmers tend to wear clothing until it gets big gaping holes, then they even continue to wear them, oblivious to the fact that the pants are now indecent and the shirt looks like a rag. Even if it is pointed out to them, the self confident coder geek will tell you how wonderful that torn up shirt and pants are, and how they will never part with them. Its not really about the outfit though, I don't really know why people do that. I'm not trying to say this to get after programmers and make them suddenly dress like sleezy wall-street suits, but I did think that if I dressed up like a programmer, then I would learn to code. I don't know if this really works though. I don't think you have to wear the holy shirts to get top quality code done.

Then I spent some time studying the occult. I came to realize that all the major games that I really liked that did well, the authors had spent an awful lot of time pouring through grimores and religious mythology. They studied all the demon names, angel names, spirit names, ancient magic sigils, etc. They knew how to use a pentagram and what way it should be pointing to get the results one wants in a ritual. Draw the demon sigil out in blood, make a pact, etc etc.

At first that all sounds irrelavant, because why would you need to know all this real lore to make your imaginary world, but mythology is what builds a world, it is what makes it compelling. And that is why religious fundimentalists will never create the best video games.