17 September 2010

Open source MMOG and VW servers

Current MMOG clients are usually thick clients. Hence, programmers just need to emulate the server side of an MMOG. Here are several projects that could be worth looking at.

MMOG Project name Active since Programing language(s) Client Particularities
EverQuest EQclassic (no public sources) Early 2009 C++ Based on EQ Trilogy (second expansion) From scratch
EQEmulator (SVN) August 2003 C++ Latest EQ client The EQEmu test server is one of the biggest private servers
EverQuest 2 EQ2Emulator (SVN) July 2007 C++ ? -
Lineage 2 L2Jserver (SVN) June 2004 Java ? -
Ragnarök Online eAthena (SVN) 2003 C Latest official or custom-hacked (XRAY) RO client -
Helios Emu (SVN) June 2006 Delphi ? inactive?
- Red Dwarf (SVN) 2007 Java ? Forked in February 2010 from Project Darkstar, originally from SUN
Ryzom Ryzom Core (SVN) at least 2004 C++ both client and server became open source in May 2010
Second Life Open Sim (Sources, SVN, forge) 2007? C# Latest SL viewer? allows many different viewers, hypergrid, IBM collaboration
Star Wars Galaxy SWGEmu (SVN) December 2007 C++ ? -
Ultima Online UOX3 (packs) October 1997 (inactive now) C++ ? many forkings
World of Warcraft Arcemu (SVN) June 2008 Lua and C++ Latest WoW client? both branched from AscentEmu, but I can not find its source code
Mangos (SVN) September 2005 C and C++ Latest WoW client?

13 September 2010

Ethnographic play on a 25-rate RO private server

I wanted to play RO for some days. Something quick, but not too easy, and with not too many people to have to talk to while leveling. Kind of a nostalgic try. So I picked a private server which drop and XP rates are 25. That means killing a monster brings 25 times more XP to the avatar than on the official servers, and a 1% chance to drop an item becomes 25% on this server. I conducted an «ethnographic» play: based on my (relatively extended) knowledge of the game I analyzed the server through player avatars in the game but also on the control panel of the website. I found the private server on ratemyserver.net (RMS), but I will not write its name here so that nothing bad happens to its administrator. Launching a private server is an illegal activity after all.


At 3pm on Friday, the control panel showed 2 players were connected: T an Assassin and J a Hunter, both around level 80. These are the most solo classes of the game. When I logged in, it was not long before T arrived and, without a word, sent me an invitation to join guild G1, which he was the guild master of. I accepted, and saw in the guild panel that J the Hunter was also in the guild. Three days later, on Sunday night, there were 9 players connected on the server at 7pm. Among them, 4 belonged to guild G1, 2 to guild G2, 2 were not in a guild and 1 was an AFK merchant, used as a mule selling items to other players.

As mentioned before, the guild master of guild G1 was T, an Assassin. He had spent the last 2 days camping equipment on a low-level randomly-appearing monster called Ghostring. He had reached level 98 and had not made any other character. He was very confident and experienced in the game, and gave advice to the other 2 players he had recently recruited in his guild. IRL he was a 19-year-old jobless American. He started playing RO in 2007, had played on iRO Loki (official international server) and 5 other (much more populated) private servers, ranging from 6 to very high rates.
The sub Guild Master was J, the Hunter. He had actually played a lot and was now a lvl-96 Sniper. He had managed to collect a few Field Manuals in fishing, a custom activity of the server. When used by a player, manuals give 3 times more XP for 30 minutes. Although J seemed less confident than T, he said he started playing RO in 2006 on RuRO, the official Russian server. He gave spontaneously several items to other guild members. J and T talked quite much together in the guild chat. IRL, J was a 19-year-old Russian who worked in a call-center. He found his job boring and managed to play at work.
A was recruited after J. He was a lvl-90 Monk, a quite complex class combining support and high damage attacks. He was a basic member of the guild but talked a lot with J and T when he was connected. Each of them gave advice about where to XP or which equipment to get. He said he started playing on several euRO free-trial accounts in 2004, and tried another private server later. He looked quite unexperienced. IRL, he was a 19-year-old German working in a call-center as well (but not playing at work). When they realized through the guild chat that they were all the same age and two of them had the same job, they enthusiastically sent Facebook invitations to each other.
B was a lvl-96 Rogue recruited last. Rogues are a mixed class between Assassin and Hunter. B was not connected at that time.

In the other guild, the guild master was a quite experienced lvl-98 Hunter very in view on the forum. He had, among others, argued that the custom items provided by the administrator were balanced while another player thought they were not. The second player in the guild was a cheerful Bard, a support and/or high-attack version of Hunter. I was enrolled by him in the guild, and he even asked if I needed any piece of equipment. During week days, they were never connected before 5pm, I concluded they worked or went to school. Most of the time they were connected, the guild chat stood silent. When they happened to speak, it was in German to each other and out of the guild chat. Later, the Bard added that the 25-rate server opened following the wipe of a high-rate server. Maybe they knew each other before the low-rate server opened?

Server features

The capital city was Prontera. @go was given to players, but not @storage or @warp; this meant players had to go back to the capital to go where they wanted or use their storage. In my opinion, this increased the frequency of little social events that happened in the capital between players. The custom NPC were those usually found on any private server; they were:

  • The Warpra teleports players wherever they want for free. This solves the problem of long and boring transportation time when there is no player to teleport other players to their destination.
  • The Healer heals players and solves the scarcity of support-class avatars who, most of the time, need a group to XP quickly.
  • Stat and Skill Reseter: resets the avatar skill and stat points. If a player wants to change his character build (eg from a Support Paladin to a Tank Paladin), she can.
  • Job Master saves players the time to do job changing quests.
  • Banker, Identifier, Bonus skill giver (to save time to the player), Universal Renter (for Cart, Falcon or mount)

There was also a Kafra Employee that lets the player save his respawn point when dead or open his storage, but this is an NPC found on official servers as well. A vending zone had been added as well where Merchants could set up their shops, but the server population was too small to have any virtual economy. The guild versus guild event, the WoE, was supposed to happen twice a week but was deactivated by S, the administrator of the server, probably because there were not big enough guilds.

S was German, although his advertising for the server on RMS mentioned the server and forum language was English. He came on the forum once or twice a day to reply to suggestions or technical problems with the game. He did not harass players for votes or donations, and stayed remarkably quiet. In the game, his player account was the Monk A. As a Game Master, He never improvised any live event for the players. Technically, he designed and coded his own website and control panel, manipulated client-side files, added and edited a few small NPCs in the game, tried (and failed...) to balance his custom items (eg the fishing rewards) but never seemed to have modified the server source code.


Certainly, the players from this private server had different origins (Russia, Germany, France, US) and had different gaming expertise. However, all the players were all males of the same age (16-25) and had all tried official servers and/or private servers before. They all played solo but their belonging to a guild showed they wanted to socialize with other players. Alone Together.

This private server had several custom hats. They all required grinding at least a hundred items, and rewarded the player with unbalanced items (eg inflicting +12% damage on other players). Somehow, it was too easy, but players did not seem to see it this way, or at least they did not complain about it - for now... I doubt the administrator had the community management, game design, programming, and graphic skills required to make his server grow as much as he would like to, but I am sure he had the will. Private server administrators are a particular kind of consumer of MMOG company's products - they use the game client. Of course, this is an illegal activity, or maybe a not-yet-channeled activity. MMOG companies could choose to design their games and pay attention to these determined and skilled consumers. They could be included in the product community as content contributors.

07 September 2010

Feeds I follow v2

Back in January, I made a list of the 200+ feeds I was following. Time to update it. Reading all of the 200+ feeds took me too much time and I could not keep up with the reading every day, so I am now down to 99 feeds. I am open to any suggestion :-)

Burning NorthCenter for Computer Games & Virtual Worlds
flickeringcolours v2Game Balance Concepts
Mitu.nuTeaching Game Design
The LudologistLudicwrath | Exploring Ludology
Penny ArcadeVirtual Shackles
Game Design AdvanceLook In The Air
Metaverse LawScienceDaily: Video Game News
ScienceDaily: Virtual Reality NewsVirtual Economy Research Network
AntipwnBroken Toys
Elder GameGame Design Aspect of the Month
Mobhunter.comTradeskill Perspectives
Virtual GunmenWolfshead Online
Derek's Blog on Games, Home Theater and ProgrammingMeasuring Gameplay - article
Of Course I'll Play It!Psychochild's Blog
Scott Hartsman - Off the RecordT=Machine - MMOG development
Double BufferedGaffer on Games
Gamasutra Feature ArticlesGamasutra.com - Expert Blogs
Game AI for DevelopersGameDev.net - Latest Articles and Columns
JakeWorld!PlayNoEvil Game Security News & Analysis
Kotaku: TopMassively
The Escapist : ColumnsCreating Living Online Worlds
A ding worldBlessing of Kings
Stropp's WorldThat's a Terrible Idea
The Border HouseThe Pink Pigtail Inn
Uploads by TheDoddlerGame in Society
Games and Culture OnlineFirst ArticlesGames and Culture recent issues
Many-to-ManyPARC PlayOn 2.0
Psy et Geek ;-)Terra Nova
The Psychology of Video GamesVirtual Cultures
Eating BeesEmergent Future
Massive Guys on Massive GamesNerfbat
The Mod Squad. Blog.Chungking Espresso
Critical DistancePopMatters: Moving Pixels
The Brainy GamerDernières actualités business - JeuxOnLine
edge online keynotesGamesIndustry.biz - News
A Tree Falling in the ForestGame Tycoon
MMO TidbitsReality Panic
Virtual Goods InsiderFluxblog
The Big PictureApplied Game Design
SirlinClick Nothing
FullbrightGame Design Aspect of the Month
Game of Designihobo
Lost GardenMagical Wasteland
Mike Darga's Game Design BlogOnline Alchemy
Pixel Popperspost-hype
Raph's Website - Game talkThe Bottom Feeder
Information Is Beautiful

06 September 2010

Bowling Bash build

EDIT: This is a pre-RENEWAL build, but it might still be worth it in Renewal :-)

The name of this blog, Bowling Bash, comes from the eponymous Ragnarök Online Knight skill. Here is how to build a BB Knight (or LK). I am not an expert BB LK, but I used to play it a lot in WoE (guild versus guild events) and in small PvM parties. For PvM or leveling, the build is either STR(+DEX)+Spear Stab (you will need potions or a Priest) or AGI+Quicken (little DEX or Heal needed). To my mind, the trickiest and most interesting builds are those for WoE. Below are a few build possibilities; I suggest you adjust and try them so that you find the one that fits your needs perfectly.


- Easier to get Harder to get
Sword Blade or Saber (3slot) with Hydra and Skel Worker cards Sword Guardian Card(s) on a slotted Executioner (quest) or Schweizersabel (should be surprising against Unfrozen armors)
Spear Pike or Trident (3slot) with Hydra and Skel Worker cards Brocca, Assaulter Spear (obtained in the Battlegrounds), or Glorious Spear (most recommended, obtained in the KVM Battlegrounds).
Top Head Helm, Bone Helm or Magni's Cap (combo with Odin's Blessing and Stone Buckler), Grand Peco card Feather Beret (quest), slotted Alice Doll with Vanberk Card or Giant Majestic Goat (from the Sealed Shrine quest)
Middle Head Geek Glasses, Fin Helm or Evil Wing Ears Slotted Sunglasses (temporary quest) with Vanberk or Maya Purple Card or Robo Eye (custom or temporary quest?)
Low Head Gangster Mask or Iron Cain Pirate Dagger (temporary quests) or Well-Chewed Pencil (Back to school quest)
Shield Shield, Mirror Shield or Stone Buckler with Thara Frog Card (if one-hand weapon) Valkyrja's Shield with Thara Frog Card (if one-hand weapon)
Armor Full Plate or Odin's Blessing with Pecopeco Card or Picky Card Valkyrian Armor or Glittering Jacket with Ghostring, Evil Druid or Marc Cards
Garment Muffler, Manteau or Wool Scarf with Raydric Card Pauldron, Diabolus Manteau or Nydhorgg's Shadow Garb with Raydric Card, or Asprika
Shoes Boots or High Quality Sandals with Matyr or Verit Card Greaves or Diabolus Boots with Firelock Soldier or Ice Titan Card, or Variant Shoes
Accessories Ring with Mantis Card Megingjard


STRbuffed, try to reach a 10 threshold (eg 84+26, 99+31 or 55+105)
VITbuffed, try to get 100 (eg 82+18 or 92+8) to gain Stun and Silence immunity
DEXaim for an even number (eg 78+32) to get HP bonus; the more, the higher chance to hit your enemy
AGIwhat is left; the more, the faster you can launch BB

Below are several build examples. They are just build styles/aspects, as you will have to adapt them to your gear, whether you want to use food buffs, etc. In parentheses are the bonus points for Lord Knight job level 70.

typeSTR (+15)AGI (+8)VIT (+8)DEX (+9)
High DEX, low STR, needs 2 Megingjard35408297
6x STR, likely to use a Megingjard67418575
High STR, could avoid using any Megingjard97128356
Not using any VIT food78319261


05 September 2010

Map updates and nostalgia

Nostalgia of the good old times spent in an old version of an MMORPG may have many origins. Back in the days, there were

  • more friendly and well-mannered players,
  • more original monsters,
  • more believable NPCs,
  • a less frivolous virtual economy,
  • less competitive guilds,
  • balanced equipment,
  • authentic choices in avatar appearances/classes/races that have now been updated,
  • ...

But in my opinion, updates are most strikingly received by players through the new maps. Characters of a new race start in new maps. New monsters and NPCs are found on new maps. New (unbalanced?) items are dropped in new maps. Many players go to the new maps at the same time, hence one can measure the new gaming atmosphere there. So ... everything is linked to the new maps! Let us look at RO, EQ and WoW map updates.



A new version of the Payon city was added on kRO Sakray (the Korean test server) in September 2004 with Episode 6.9.

// --- Ep6.9 - New Payon ---
// Requires kRO Sakray 09-03
(from eA svn)

The city previously counted 5 or 6 visitable houses and was very small compared to other cities of the world. A big castle and several houses were added to the city with the update. Nothing else but a larger city was added at that time (no new monsters, NPCs, items or classes). But many players have complained about the new Payon map: God how I miss the old Payon so much...the map was so much easier to navigate through and to memorize... and others have expressed nostalgy about it: Really missed the old payon. So many old memories with firends there. /sob Some players from private servers have asked for the old Payon town to be added in addition to the existing new Payon.


As for Morocc, a new version of the city replaced the old one in September 2007 with Episode 12.

// --- Episode 12: Satan Morroc & Schwaltzvalt Seige ---
// -- 2007-09-19sdata_k.gpf
(from eA svn)

Unlike Payon, the Morocc update brought an entire new content set: a remake of the city map, new fields, new monsters, new drops and a new dungeon with a 2-phased 20-million-HP final boss ending a quest (bosses are usually less than 10M HP and quests are rare in RO). I did not see as much complain as for Payon, maybe because there was not only an old map update, but also a lot of new high-level content added.


WoW started in late 2004 with 2 continents: Kalimdor and the Eastern Kingdoms. This pre-BC period has been called Vanilla. Then BC brought the Outland (and 2 new beginning maps) and WotLK Northrend. In the latest update, Cataclysm, Blizzard has decided to add new zones and modify existing maps.

However, some players have started a petition for Blizzard to launch Vanilla servers. Others like the Madcow studio have cleverly identified how Ragnaros - Vanilla-dungeon MC's final boss - would feel after the BC update. In the Molten Chorus, Ragnaros and Executus sing on the Yesterday tune of the Beatles Yesterday, we were everybody's favorite raid and Suddenly, everybody's level 70, we have a shorter life expectancy. Although Ragnaros will be back for Cataclysm, no wonder how clothing such a the "I Heart MC" nearby could appear.


The vanilla period of EQ is called EQ Classic. It lasted between 1999 (when the game started) and 2000 (when the first expansion, Kunark, was implemented). EQ Classic had 77 maps. Since then, around 330 maps have been added (around 400 total).

As for the WoW Vanilla petition, there is a Classic EQ petition.

A few teams have tried to develop a server-side version (also called emulator) of Classic EQ. Eqclassic have not finished their development yet, but Project 1999 was launched in October 2009. A poll of 799 players of Project 1999 revealed 57% started playing EQ in its Classic period and 2% played EQ for the first time on this emulator. Although there are around 500 players online, the team is aware of the legal issues raised by their emulator.

Edit (September 7th): my point is: whatever the update size, there will always be nostalgic players.