Unfortunately, when you take a leap forward in a game design and tell the public about something they have not seen before, there is some natural skepticism. We understand and sympathize, after all we are also game players, and we have also fallen prey to the marketing hype that just isn't always true once you get into a game.
The game industry is not an easy one, and making MMOs is difficult. While MMO game designers want to be innovative, they are often hampered by financial concerns and deadlines. We understand, and have been there ourselves on other projects. Fortunately, we got a chance to do something different this time, and stick to the design and goals, rather than be forced to push the game out before it is ready.
But, the perception of marketing hype rather than substance affects us all, so how do we overcome this and make you believe in Citadel of Sorcery? That's a tough nut to crack. We'd like to address, as best as we can, some of the concerns we have read about from players about our project.
The top concerns are as follows.
1) The graphics don’t look as good as they could.
2) After eight years of work, shouldn’t it be further along?
3) How can a small independently financed team make a major MMORPG?
4) Isn’t a full size planet too big?
5) Isn’t what you are promising, impossible?
Let me take them in order.
We won’t be adding final graphics in all areas until we are in the final stretch of the game development. So, what you are seeing now are Pre-Alpha graphics. The reason we didn't create game launch ready art is because we didn’t know how long it would take a smaller team to reach the point where we were at Alpha, building to Beta, which is when we would start putting in the final graphics. Otherwise, if we tried to put them in early on, we would likely have to redo all that work again, if too much time passed and computers got faster (which they always do) and graphic cards got better (which they always do).
The graphics you see now are a mix of things, a few nicer ones, with a lot of placeholder. Why do them to even this quality if they aren’t final? That is easily answered, we needed to test various systems along the way, and for that we need certain things, like models that use up texture space. We needed to test polygon density, with over 10 million polys in a small area, to make sure our engine was able to handle this without loading any Zones. We are testing a whole newly developed technology that uses Voxel based models in the distance and transitions them to skinned polygon models close up and seamlessly. This is part of that idea of never making a player wait to load a Zone, and allowing them to travel to what they see, directly.
As far as we know, no one out there has attempted a world of this size and detail for an MMO; it required us to build a new engine from the ground up, and that means we needed to test it. What you see in art is what we needed to stress test this new technology, but it isn’t final art for the players.
Boy, wouldn’t be like to be! But the answer is ‘no’. How long it takes to make something that has never been done before is anyone’s guess. Not only that, but even if you COULD estimate that impossible number, you would also need to know how many people were working on it. Our team size started very small, it has grown in spurts, now and then, going up from eight to now just under forty. The team will continue to change and grow. There is still no way to know exactly how long it will take to reach Alpha. The further along we get, the better idea we get as to how long the rest will take. The good news is that most of the risky technology is already working, but there is still a lot of man hours to go in just making content and building that final art. The fact is, we set out to make something wildly new, and we decided from the beginning, instead of buckling to a time schedule and delivering less than what we designed and promised, we would spend the time we needed to actually give the players something new and different. We are sticking to that goal and have for the past eight years. We are exactly to where we could reach in that time with the personnel we have, and are working hard to get it to Alpha and beyond.
Slowly. I could just stop there and point to the paragraph above as explanation, but I won’t. Another word is ‘sacrifice’. Here is the longer answer though. First, you make sure your team is experienced and hardworking, rather than a bunch of dreamers. You have to know what you are doing. Next, you spend a LOT of time on the design. You do this not only to design a good game, but to design ways and systems that achieve your goals with fewer people.
We did this when we designed the Enact Tool Set. We have been working on that tool set now for several years, and we have some of the major components working and building the game world. With Enact one person can do a LOT of work. Since it runs in the game world, there is no gap between work and testing, which speeds things up significantly. It also needs a lot of automated bug tracking, to speed up finding issues, and Enact generates reports of odd activities to us automatically, and it takes us to those moments with the click of a button.
But there is much more to this. We’re building a massive game, bigger than other fantasy MMORPGs, so we had to spend our time creating automation rather than hand making everything. By shifting our focus to programming automated systems we were able to work with a much smaller team. We wrote (and continue to write) systems that create what we need procedurally.
Example, instead of a person placing a tree down and then hand rotating it into place, we spent three years of a programmer’s time creating PlanetForge. I’m not going to go into the technical aspects of this (though there is a video on this on YouTube in the Citadel of Sorcery channel, if you want to go to sleep, it’s very technical), but PlanetForge creates a planet and grows all the foliage, without a single human being needed. This is a HUGE savings and therefore cuts millions of dollars off of the price needed to make this game. It is the single biggest savings in the entire process. That’s how you make a game like this with a small team!
Beyond PlanetForge, there are other systems being written by other programmers that also save us time and money. There is the auto road generator, and the systems to build towns, villages, etc. These not only build the town, they come decorated and with a full A.I. net installed. Even NPCs are generated through another NPC creation system that auto names, creates, and places the NPCs in the world. Now, make no mistake, it takes some human touch to build this game. A human created the initial bodies that are varied by the system. A human decorated the room logically, so that the computer could use that direction in the creation of the town, castle, etc. However, we don’t have to have real people doing repetitive tasks; computers are good for that, which keeps our people working on creative parts only.
We have some of these systems working and are still working on others, but we have enough done to know they work.
Finally, I should note that even with all the efficient planning and automated systems, it still costs money to make this game. Adding more people will dramatically speed up the process, especially on the creative end. However, our team has donated several million dollars to keep it going and will continue to donate for as long as necessary to get either more financing, or just complete the game. After eight years of work, none of us are going to walk away at this stage; we have too much invested, and have come too far to give up now, when we can see the end of the Alpha road up ahead.
Why build a full size planet? That’s not great for a game, right? People, places and events will be too far apart. This is another concern people have when we mention the full size planet. Well, just because we have one, doesn’t mean we need to space things out. We don’t, instead we pick several territories in different biomes of the world. Each is chosen in a logical location, like an area bordered by the sea on one side, mountains on another and a river on the third and a desert on the forth (if this was roughly rectangular). Then we build stories and adventures within these different territories. Everything within a territory is close enough so keep travel time down, yet the territory is big enough for grand adventures. Each territory is the size of a typical MMO game, but we use quite a few.
So why have this big planet if that’s true? Well, two things: it gives us lots of room to grow (make more territories), as well as the feeling of it being a true world, which it is. Finally, it is great for exploration. While in a Territory you always know that there is a lot more out there, and you may go out beyond the settled borders and go exploring the ‘Wild’ if you want, mapping the uncharted world.
The fact is, once we figured out how to create the terrain, why not have a real world? We’ll use it as needed and eventually offer new games on this same planet, allowing players to move their character on to new stories. It’s a big playground, we’ll start you with a lot of developed area, and use more of it as we need to, yet we keep the actual game play developed areas tight enough for fun activity.
At the beginning of the project, we asked ourselves the same question on many areas of the future design. We don’t have to ask them anymore, simply because we have them working already. Some things were impossible at the time of our initial design, but we aimed far ahead of the technology that was available at that time. Over the last eight years computers and video cards have gotten better, as we expected they would, and caught up to our design. But let’s get into specifics in at least some areas, to address those questions out there (yes, we’ve seen your posts on the net).
a) NPCs living full lives. We get a lot of scoffing at this one. Let’s break it down some, so you understand what we mean and the difference between what we are doing and most other games. An NPC in many other games works like this, you put them somewhere and that’s where they stay. They may even move around a little, but basically, they stay there and do the same things all the time, even day and night in many games.
We wanted our NPCs to act like living people. I say ‘act’ because they aren’t living people, they are just a good simulation of that. We use what we call an A.I. net for this, instead of scripting. In scripting NPCs are put through a series of instructions that simulate a life. This is pretty good stuff, better than many MMOs include. However, we wanted our NPCs to be even better than scripted, so we designed two tools in the Enact Tool Set, the A.I. net and the Event tool.
The A.I. net allows the NPCs to constantly make decisions on what they want to do based on a lot of parameters. What day and time is it? What is their job? Who are their friends (and enemies). What are the activities they enjoy? What factions or groups do they belong to? Are they married? What is their personality? Where do they live? What is happening in the world today? Using these, and many more elements, NPCs are constantly judging what they should be doing vs. what they want to be doing, and then making a decision on what they are actually going to do. Sound familiar? That’s pretty much what you do each day, right?
Because of this A.I. net, after we make our NPCs and get them into the world, we can’t tell you what they will do, because they are deciding things all the time based on all that data. We’d have to follow one around to see. Now, we can predict, with some accuracy what they are going to do; we can do the same thing for real people we know. For example, if we know someone works between 8 and 5 at a store, we can assume that’s where they might be, and they will be there, mostly. It’s the same for our NPCs, however your friend might get sick and stay home from work, and our NPCs might do the same.
But the system doesn’t stop there. Your life isn’t that orderly, we sometimes wish it was, but outside forces impact your life all the time. The same thing happens to our NPCs, and this is where the Enact Event system comes in. Let us give you an example:
Let’s say that on Wednesdays, at 5pm, our NPC named Broderick gets off work at the stable and generally likes to stop by a pub on the way home for a drink with friends. On this day, he would probably do that, and let’s say that’s the decision he makes this time. Great, he heads to meet his NPC friends at the pub. On the way there he runs into an old friend he hasn’t seen in awhile. Broderick can and will amend his plans based on this new ‘Event’. So he makes an unscheduled stop to talk to the old friend. On completing that conversation, Broderick continues toward the pub, but then passes a flower seller who calls out to him. Broderick then has to decide if he wants to stop to look, listen to her, or continue. But he’s already late, so he goes on past. However around the next corner he runs into a problem; a thief has stolen something and the guards are questioning possible witnesses, and they tell Borderick to stop so that he can be questioned. Broderick has no choice here; he can’t disobey the guard, so he stops and is eventually questioned. When he is done, he decides that it’s too late to get to the pub, so he heads home to eat dinner and eventually go to bed.
That is a real example of how our NPCs work. This isn’t just a design or concept; there are hundreds of NPCs living these kinds of lives in the game world, right now. They have been doing this for a couple years now, as we test out the systems. It’s all there, and really it’s not that hard to create using the Enact Tools.
b) A full size planet. People scoff at this as well, but it really isn’t science fiction. In the end, it is just a series of procedural systems that create each element and then do it a lot of times. Computers are good at that, doing things a lot of times. We had to write the code for each phase, but once written the computers can do it again and again. Once we coded how to grow a tree, we could then alter the parameters and have it grow a different kind of tree. Once we could do that, we just told the computer to do that a trillion times, and off it goes. This is simplifying something that was a LOT of programming work. It required years actually and still continues, but in the end that’s all it is, a good programmer writing a good procedural, then having the computer use it. If you are interested in the technical aspects of this, watch the video about PlanetForge on Youtube, in the Citadel of Sorcery group.
c) Personal Stories which are different for each player. Yes, we can do that too. It’s not as hard as you think, it’s just that most game companies are in a hurry to get their game out, for budget reasons. It’s certainly not impossible!
Here is a brief look at how we do that. Quests are written to have not only variable paths through, but whole sections that may or may not be seen by every player. Next, we make it so that the quest module has a lot of choice as to who, what, and where each piece of a quest takes place, who is in it, and what things are involved. Then we have the TrueQuesting module; when a quest is given to a player, it looks at that player’s database file as well, as who is with him, and what is going on at the moment in the world, and then the TrueQuesting module alters the quest to tie it into these things.
No, all this wasn’t easy to design or code, but hard doesn’t mean impossible. Once you create these systems have your writers work within those rules, give your Level Designers the Enact Tools needed to construct these stories, and finally the TrueQuesting module automatically alters them to the individual player… you get personal stories that change for each player and a level of replayability unmatched as far as we know. This was one of the most difficult things to design and make for Citadel of Sorcery, but we have a saying, “if it was easy, everyone would do it.” We did it the hard way to give players a better experience in our world.
So there you have it, as you see, it can be done. All it takes is a group of people willing to do things in ways that break the mold and stick to it for as long as it takes to achieve those goals. That’s what we’re doing at MMO Magic, Inc. We invite you to become part of this movement to make a better MMO game for the players. Come help us build this by becoming one of our backers on Kickstarter, which is running right now, just go here:http://tiny.cc/CoS_MMORPG