Archive for September, 2007

Server Performance

Thursday, September 13th, 2007

Over the past few days, our servers have been performing poorly. Today, duels.com reached a point where proxy errors became the norm. We then made the decision to take the site down for about an hour to address the issues. (We had originally planned on performing maintenance on Friday morning). After a few false starts, we believe we have addressed the main performance problems.

duels.com has evolved into a complex system in a short period of time. We have consciously made the decision to deliver functionality as quickly as possible. At times, the price we pay is bugs and poor performance. We make every effort to resolve all problems in a timely manner, but we are not always able to stay ahead. Today was one of those times.

Rest assured that we are as frustrated by server lag as you are. We are avid players, too. Here’s a glimpse into our plans to further increase performance:

    1. We had 2 additional servers arrive this week. Another powerful server that will join our database topology is on its way. These additional servers will allow to handle more users as well as have automated failover. This will allow me to sleep better at night.
    2. We continue to add indexes to our database tables and optimize queries.
    3. We are breaking off some of the main components in duels into sub-systems. This will allow us to scale the various pieces independently of one another.

      All of these efforts should lead to a more enjoyable gaming experience.

      Fuel the Fire

      Friday, September 7th, 2007

      This morning we updated Duels with the new Badges functionality that I’ve been working on all week. It’s true that Yogi had already written code and the database structure for Badges, but his implementation was very specific to the Badge of Leadership which you can only earn points for by recruiting people to join Duels. The finalized version of Badges is more generic to support Badges for all sorts of applications such as winning streaks or rewarding people who help out in the forums.

      I hope the Badge of Leadership proves to be a success as more Badges will be added over time. The next piece of functionality for me is implementing Guilds.

      Blerg Needs No Introduction

      Tuesday, September 4th, 2007

      Blerg first found a wormhole in a beer bottle discarded by Keanu Reeves after a Dogstar concert. After trying unsuccessfully to sell said beer bottle on ebay (is Golden Palace out of money?), Blerg decided he would be the one to venture into the beer bottle. He stole a miniaturization ray from Area 54 and shrunk himself down to bottle size and took the red…I mean ventured into the bottle. [Cool Dr. Who effects go here.] Finding Phyrra at the other end of the wormhole, he first declared himself the ruler of Blergland. Since the only resident of Phyrra, Loki, wouldn’t agree to call the place Blergland, Blerg agreed to call the place Phyrra and set about the construction of the Arena. A place for Duelists from every corner of the Megaverse to come and compete for riches and power.

      Game Guide (wiki) moved

      Tuesday, September 4th, 2007

      We have moved the Game Guide to a separate server. Compared to the rest of duels.com, the wiki receives very few page hits. However, it does represent a tiny step in our efforts to separate out the various components of Duels. This will allow us to scale the different systems independently of one another. Please let us know if you notice any weirdness.

      Set Release

      Sunday, September 2nd, 2007

      We’ve just released the Yumeria Rising set, the latest noble set for Duels.

      Yumeria Rising

      I thought I would give some insight into what it takes to release a set.

      Sets are composed of several pieces (not necessarily in order):

      1. A spreadsheet of the items
      2. Images of several types
      3. Descriptions and names for each items

      The item spreadsheet is updated as new item components come in - such as graphics. The spreadsheet is used to calculate Power and various other item attributes.

      Once the hard work is done, we take the spreadsheet of all the items and run it through a number of scripts. First, SQL scripts are generated. We then upload the new images to Amazon’s S3 service. After loading our QA environment with the new items, we generate the packs according to the specified distribution of items and scrolls. The packs are also randomized during this process.  The randomization occurs at pack creation time, as we’ve learned that MySQL’s “order by rand()” is slow on large tables.

      Even with fast hardware, our servers struggle to generate the number of packs that we do. While 300,000 Yumeria Rising packs wasn’t bad, 1.5 M for the Duels Core II set gave our servers quite a workout.

      After a few rounds of QA, we prepare to release the packs into the game. Currently, we take take the site down for about 15-20 minutes to release a new set. In the future, we’ll add new sets while the site remains up and responsive.

      While Duels.com is on a coffee break, we load the database with the new packs and if necessary, update the code base. We then turn the site back on and hope you guys enjoy the fruits of our labor.

      Loki Introduction

      Sunday, September 2nd, 2007

      Hi, I’m Loki in Duels… Outside of Duels I’m Andrew Busey.  I’ve been building and playing MMORPG type of games since before they had shiny graphics - all the way back to MUDs  (Multi-User Dungeons).  My original gamename (is that a word?  if not, I’m declaring it one) was Tarod - a really cool book from a series by Louise Cooper called the Time Master Trilogy (The Initiate, The Outcast, The Master).   It’s a cool series, if you like fantasy and you can find it, it is definitely worth reading.   Anyway, when I started playing World of Warcraft I switched to Loki.  Then I transferred servers and couldn’t get Loki… so my main character ended up being named Yesreally (level 70 Hunter).   I’ve stopped playing though - Duels has taken all my time over the last several months.  (And it’s more fun ;-)).

      Well there you go.  If you want a more formal background you can go to Oxygen Games.