Tag Info

Hot answers tagged

276

World of Warcraft has: 5,500,000 – Lines of code 1,500,000 – Art assets 33,681 – Production tasks 70,167 – Spells 37,537 – NPCs (non-player characters) 27 – Hours of music 2600 – Quests in the original World of Warcraft 2700+ - Additional quests in WoW: The Burning Crusade 2350+ - Additional quests in WoW: Wrath of the Lich King 7650+ - Quests total (how ...


166

The first problem is that the software itself is very complicated, particularly for a new or inexperienced game developer. You have to maintain (at the very least) a client and server application while providing more content than you would expect for a "regular" multiplayer or single-player game. Even on their own as a single player game, an RPG with the ...


116

Money sinks are I guess the only real answer. Which means items or currency getting lost forever. Eve Online blatantly has this through the mass destruction of items and ships through pvp (only partially replaced by insurance). Eve also has many other money sinks such as office rent, station fuels, ammunition etc. Other games have similar consumables, ...


80

The thing to remember is that an MMO is literally the most complicated piece of software one can make. Take every single problem that exists in software engineering, and you have it in an MMO. A) Every problem from a normal game. 1) Resource streaming for an open world. 2) Particle system running on 5 year old commodity hardware 3) Physics system to ...


62

It's not so much hard to develop an MMO, as to develop another World of Warcraft. If you're willing to settle for only having a few thousand players, you can make an MMO, such as: A Tale in the Desert (created by one person) ATITD Wikipedia Sherwood Dungeon (created by one person) How one man made an MMO Maid Marion Wikipedia Runescape Latest Version ...


50

Notice that only one person here before me has given the correct answer - "currency can't inflate if there's a limited amount of it." Indeed, with infinite resource generation, currency will actually deflate, as the amount of resources goes up and the amount of currency stays fixed. It's an economy. You're not the Fed. Stop minting currency, and stop ...


46

Don't. Filters don't work. At least, only filters don't work. Whitelists, blacklists, it doesn't matter. Neither of these will ever prevent kids from harassing each other. The only way to make this work would be to not filter the chat, but to provide large building-blocks for sentences. For example, a kid might select "Do you want to..." and the options for ...


45

I'll disagree with most of the popular posts on here and say that it's really NOT that much work to create an MMO. But don't confuse MMO with WOW. Really, the idea of an MMO can be broken down into: O - Online. This is a game played over the net M - Multiplayer. Not just you. M - Massive. This implies that you are playing multiplayer with people you ...


41

Several of the above answers mention some important ways to reduce inflation but there's a few important money sinks that deserve some more explanation: Economic exchange fees: These are fees from converting a player's wealth from one form to another. A prime example of this in nearly every game is the vendor sell price. NPC vendors will always pay less ...


39

I may be wrong, but your question makes it seem like you are missing a lot of knowledge in order to successfully write an MMO server. I know this message will likely fall on deaf ears because I was in your position when I started programming. My answer: If I were you I would start smaller. If you want to learn to write an MMO server I would do the ...


34

What else could be done to level the playing field between those players who play 40+ hours a week and those who can't play more than 10? A simple way to avoid turning off players who don't have the time available to invest in grinding is to remove grinding from the game as much as is reasonable; keep progression curves linear or shallow. But, I ...


33

We did, hopefully Ben Z will give a better explanation of the reasons than I can since he was actually the original author of our database. The short version is that relational DBs are not very useful for games because they cannot efficiently store heavily structured hierarchical data, which makes up the vast majority of data an MMO needs for normal ...


31

Developing an MMO is super easy. It takes no more than four hours. Developing an MMO that people want to PLAY is a very different matter.


31

Much of game design is about resource management, because deciding how best to use limited resources is an interesting choice that games can easily implement. Limiting the inventory forces players to think about the value of each item and make decisions on whether to hoard or sell their loot, and on which items to carry out into battle with them.


30

Okay this answer is more of an observation. Full disclosure I haven't worked on MMORPG. I have worked at what was one of the top 10 most visited sites back in 2009, and I have worked at game engine company that thought they were making MMORPG tech (I don't know if shipped). If you look at companies that have achieved massive scale (Google, Facebook, ...


29

Try to keep this as simple as possible and interfaces well defined and documented. Maintaining and debugging a complex system in production easily turns into hell. So if there is a simple and a complex approach, think twice before you go with the complex one. Defining Services I think the first step is to identify services and their dependencies: Static ...


28

I asked myself the same question a long time ago. The best way to answer it is this: Design the simplest, dumbest MMO you can imagine. Say, each player is a little ball rolling around, doing absolutely nothing but watch other players. Use, no textures, just solid colors. No lighting, no combat, no interactions. Nothing. Simple, right? Now write it, complete ...


26

Update For those interested, I did a write up about these problems and a few others, as well as possible solution. You can find it at my blog. @JoshPetrie hit a lot of it on the nose, but I'll add a little to it as well. Some friends and I a while back wanted to make a real MMORTS and went through the process of building a general game design outline ...


26

It's unlikely to make sense. When I get 100 Zorkmids from Player A and 100 Zorkmids from Player B, I have 200 Zorkmids. When I then pay 50 Zorkmids to Player C, will C get them from the Zorkmids I got form A or those I got from B? Do I have control over this? Does it even matter? A Zorkmid is a Zorkmid. It definitely doesn't matter for real-world banks ...


23

Most companies use C++. Eve is an outlier, the core graphics engine is in C++, while the game logic is, as others have noted, in Python. CCP also makes a lot of contributions to Stackless itself, which is in C for the most part. WoW is C++ for the game itself, though the UI is scripted in Lua. Cryptic (Champions Online, Star Trek Online) uses plain C, but ...


23

What you do depends on the nature of the achievement. Unless your achievements all fit a simple pattern (collect X number of Ys), you're going to have to special-case them to some degree. Using a message-based communication system, you can provide hooks that makes the special-case coding localized. You can have certain actions fire messages to listeners who ...


22

Easy answer The cost of running an MMO? In United States Dollars? ITS OVER 9000 (dollars)!!!!! Useful Answer Scope of question So, dividing your question up into chunks, you seem to want to know about the costs of: Development (making the game) Marketing (making people aware of the game) Infrastructure (base cost of server hardware and supporting ...


22

How can files be used to keep track of players positions? You write the player position to the file. For example, if you identify every player with a unique number (or a GUID), you could use that as the file name. In the file, simply write the position data out in a format you can parse later. For example, 467239.txt might contain 20, 3, 19 if player ...


20

Creating resources endlessly is an issue but completely closed systems have their downfalls too. Take a look at Shattered World. Completely closed economy with player run shops, banks, etc. Monsters in the world were actually equipped by items purchased from player shops by the game. The hoarding instinct mentioned above killed the game though. There were ...


20

Most MMOs these days have anything important done server-side, for safety reasons. You can't off-load much to the client, which is why one of the first things axed are AI routines. I think most developers consider client-side to be hackable as a rule, not an exception. Scalify's Badumna ( http://www.scalify.com/badumna.php ) tries to off-load part of it on ...


19

One crucial aspect that I don't see people mentioning here: make sure you have at least one money sink that scales up automatically as people get richer. Fees for walking around the world and armor repair won't scale up, since they're based on fixed values. Special novelty items that you can buy for large amounts of gold do scale up, in an economic sense, ...


19

It seems like the obvious answer is to do most of your detection client-side (for smoothness), and then you interpolate to what the server says if your client is too far off. The server will tick at a less frequent rate than the client (like, say, 10hz), and would probably need to have some basic "can this player have reached where he says he currently is ...


19

For RPGs, you might look at: Elder Scrolls: Skyrim Elder Scrolls: Oblivion Construction Wiki Elder Scrolls: Oblivion, Modding Faq Mount and Blade Mod Repository M&B is more recent than Oblivion, but both are still played (and worth playing). For MMOs, Edward83's recommendation of Lua is good, however - for World of Warcraft, you would only be using ...


18

TL;DR: Lua does have overhead, but if used properly it is negligible and easily mitigated. Don't use it for heavy math operations or transforming geometry. You will probably not see any performance problems at all using it to script a GUI. I've done some basic benchmarks regarding Lua's performance as a game scripting language, and it's pretty damn fast. ...



Only top voted, non community-wiki answers of a minimum length are eligible