Saturday, November 08, 2008

Happy Birthday EverQuest II

Today is EQII's 4th birthday. I started playing EQII 4 years ago today when myself and several of my guild-mates from EQ created characters on Crushbone. Four years ago I was working as software developer at a consulting company in Memphis Tennessee. I'm really lucky to have been part of the EQII development team for the past 2 years and I look forward to many more years in the industry.

Thursday, November 06, 2008

Not much to report...

Things have been rather quiet since the introduction of guild halls and I haven't had much to report.

I haven't had any huge tasks related to the expansion since my main focus had been the guild halls for past several months. However, I have been busy working on two other features that you should see in the next month or two. Unfortunately neither of them have been announced yet, so there isn't much I can say about them. One of the features is a new UI element that will give you insight into information that previously has remained somewhat of a mystery. I think everyone will really like this feature and I'm looking forward to it going live myself.

Other than that I've been working on the occasional bug fix or random new feature. Today I added a feature that many people have requested for houses and guild halls. This feature will allow anyone with Trustee access to return a No-Trade house item to it's owner through the mail system. I also added the item level to the Supply Depot window so you can sort the items by tier/level.

The Persona window was also expanded to include quite a bit more statistic data about your character. Some of these new stats are related to the expansion like Critical Mitigation but many of them are existing stats like Spell Cast/Recovery/Reuse percent.

That's about all for now. I'll try to post again as soon as I have more to add. Thanks for reading!

Friday, August 15, 2008

Guild halls announced at Fan Faire

We just finished the guild hall panel here at Fan Faire and received an extremely positive response. I'm really excited about them and very happy that we're able to talk about them now. If you missed the panel, don't worry there will be lots of information circulating about them now.

Monday, July 21, 2008

EQII In-Game Help System

One of the changes rolling out with GU47 is an overhaul of the in-game help system. This was one of those pet-projects that I wanted to do, but wasn't on the schedule so most of the work was done outside of my workday.

The help window was modified to use our integrated Mozilla browser and all of the existing help files were converted to HTML. I went through all of the help files and updated any content that was out-of-date to the best of my knowledge. This update also includes the new integrated voice chat, so a new section was added to cover this feature.

One of the other things I've wanted to do for awhile is add context-sensitive help buttons to most of the game windows. So, all of the major UI windows now have a help button in the upper-right corner next to the "close" and "window settings" buttons. This button opens the help window and takes you directly to the topic related to that window.

The other challenge was that every game window didn't already have a help topic that specifically addressed how to use that window. Rather than having some windows link to existing topics and others link to new topics, I created a whole new section under "User Interface" called "Game Windows". This topic is like an index to every window in the game that has context-sensitive help. Where it made sense, I moved existing help content related to game windows to these new topics.

The new HTML-based help looks a lot better than the old text help, and now we have the ability to include images, screen-shots, etc. Originally I was going to try to add more visual elements to the help topics, but just reading and updated all the existing help text took a lot more time than I expected. For now, I think this is a great change to the help system, it looks good and the content is now up-to-date. With the new context-sensitive help buttons on the windows, it should be even easier to get help on specific features. In the future I still hope to go back and make the help topics even more visually appealing.

Monday, June 23, 2008

Integrated voice chat coming soon to EQII

I'm very excited that this week we're rolling out an update to the Test Server that will include our integrated voice chat. This feature is due for release with GU47 in about a month. Pushing an update to Test this early is something we don't do very often, but for a feature of this magnitude, we want the community to have plenty of time to try it out and give us feedback.

I had the privilege last week to participate in our usability studies making use of our brand new usability lab on-site at SOE. The lab is really amazing and the process of studying usability has always fascinated me. We brought in several groups of players during multiple play sessions to try this feature out while they play. The groups consisted of players with literally no EQII experience to players who play 20+ hours a week.

We watched them learn how to enable the voice chat and use it in different environments. They were given different tasks throughout the session and we observed how they responded. In some cases players would instantly know how to respond. In other situations players would fumble around the UI looking for a specific option or a clue as to how to complete their goal. These were the situations that concerned us most and led to us making quite a few changes to the user-interface. There were no major changes, but lots of polish to make sure it was easy to use.

One of the more interesting things we observed from users who were new to voice chat is that they didn't realize from the beginning that there were definable keys to control the push-to-talk feature. Our Voice Bar has a talk button that lights up when you're talking, but you can also push the button to talk. Many players found this from the very beginning and continued to use this button in order to talk to their group-mates. We made the mistake in assuming that people would find the push-to-talk feature under options, but we quickly found that this wasn't the case. As a fix, we simply added a tooltip to the Talk button that shows which key is bound to the push-to-talk feature. Now if anyone puts their mouse over this button to talk, they should notice the tooltip which will hopefully clue them in that you can press a button to talk without having to use your mouse. It's simple things like this that we often overlook due to our own experiences but are key in designing a user-interface that appeals to all players.

Now to round out the blog post, I'll conduct my own question and answer session based on concerns I've seen posted on various community sites.

Fictitious Interviewer: Does the new voice chat feature go through existing EQII servers and could it potentially cause lag for me or my guild.

Me: The EQII client uses the Vivox API which will run in it's own process. It uses very little CPU time and should not introduce any client lag. As far as the voice network traffic, all of this goes to completely different servers. You can compare this almost directly to existing voice clients and how their traffic is sent someplace other than EQII servers. Ours works the same way, so this traffic will in no way affect your gameplace experience. In addition, if you do not want to use voice chat, disabling it will remove any possibility of it consuming local resources.

F.I.: How does the sound quality compare to other voice chat systems? Is it as good as Ventrilo?

Me: I'm picky when it comes to sound quality and my first concern when I heard we were going to add this feature was that if it didn't sound good, no one would use it. I can honestly tell you that the sound quality is the best I've ever heard. I use Ventrilo daily and the Vivox system sounds awesome. It's like you're talking to someone over a crystal-clear phone line. However, there are several options to adjust volume and mic sensitivity. I've noticed that if a person boosts their mic sensitivity too high, it will become distorted. I'm sure this is an artifact of the amplification. They key is to increase the volume on your speakers if voice chat isn't loud enough, rather than increasing the in-game settings too high.

F.I.: Why are you spending time adding a feature that people can already get through other means instead of putting something better into the game or fixing existing bugs?

Me: Integrating voice chat into our MMO's is just the next step in gaming evolution. SOE as a company is taking the initiative to integrate this into as many of our games as possible. We'll even be integrating it into the new Station Launcher. We know that this feature won't be a benefit to everyone, but as with all new features we add, some people like them and some people don't. For new players, the integrated voice chat will be leaps-and-bounds easier to use than setting up a separate client. For many guilds, this feature will eliminate monthly fees that they pay for voice servers. I can tell you that we've not neglected other features or bug fixes as a result of this feature.

F.I.: Is SOE implementing this feature so they can moderate us or spy on our conversations?

Me: Yes, we want to hear your leet raid strats! NO, I'm just kidding. This is not some under-handed attempt at gaining control over your communications. There is absolutely no truth to these conspiracy theories.

[End of Interview]

If you're still reading this, I apologize for such a long blog post. Unless of course you are REALLY bored at work with nothing else to do. (Note: I'm writing this Monday morning at 2am, so I'm not neglecting my own work.) :p

If all goes well we'll be pushing the update to Test sometime Monday. If for some reason we've broken something that must be fixed first, look for it ASAP. I know many of us will be hoping on the Test Server as soon as its live to chat with people and test it out first-hand.

TALK to you soon!

Saturday, May 31, 2008

Possible lag fix coming soon

I found an issue today that was causing examine information for the spells on your hotbars to be fetched more often than necessary. It's very difficult to measure the impact of this change on my developer machine without testing it in a raid environment. Hopefully this will fix the lag issue that was introduced around GU43/44. Look for the hotfix sometime early next week.

Saturday, May 17, 2008

EQII Phone

In true geek fashion, I've adorned my phone with an EQII skin.

Long live Antonia Bayle!

Tuesday, April 15, 2008

Just saying hello

Unfortunately I haven't had any cool things to report lately like Autenil.

However, in response to his blog post about fixing a memory leak, I decided I'd tell everyone what I did today.

I made some blinky lights on the user interface blink on and off today! Ooooh, they are pretty too! :)

Ok, so it doesn't sound as glamorous as reference-counting smart-pointers and unions. I've been splitting my time between Guild Hall functionality and implementing the user-interface for the built-in voice chat. I made a lot of headway in the voice chat system today and I think everyone is really going to like it. Autenil is implementing the server-side code and communications layer to the voice-chat servers. I'm just putting a nice face on it with the goal of it being easy to understand and intuitive to use.

For you UI modders out there, I'm running as much data as I can through the dynamic data system. Since G15 support is a must-have for most Teamspeak and Ventrilo users I plan on shipping a new G15 page that mimics the functionality you'd get from these other voice chat systems.

If you're concerned about added lag, don't be. The voice communication is going through a completely different set of servers and the bandwidth usage should be about the same as using Teamspeak or Ventrilo. The only extra game overhead is determining what channels you should have available when you log in, join a group, etc. We plan on rolling the voice chat system out to the Test Server as far in advance as possible so we can get some good testing on it. When this happens, I'm going to try to recruit as many people as possible to hop on the test server and help us test it out. I really want to get some good feedback from everyone before this goes live.

I'm also really excited about all the cool features you'll get with Guild Halls, so hopefully we'll be able to release more information about them in the near future.

Thursday, March 27, 2008

WYWSITUN: Autenil Edition

If you haven't checked out Autenil's blog yet, and you like this type of behind-the-scenes information, I encourage you to check out his latest blog post.

Infinite Loops Are Bad

Thursday, March 20, 2008

WYWSITUN Volume 1: Adjacency System Changes

U R probably wondering WTF does WYWSITUN mean.

It means "What You Won't See In The Update Notes".

We actually do a lot of work here at SOE, contrary to popular belief. :) Sometimes the things we work on aren't really worthy of the update notes. Although, I think it would be cool if we started including more detailed info in the update notes. Many people would probably be interested to read some of the technical details.

Until then, I'll just blog about some of these things. So without further ado, welcome to Volume 1 of WYWSITUN.

Something I've worked on a little bit recently is tweaking our adjacency system. What is an adjacency system? Well, its a small part of the server that determines which objects are near you. I guess you could more accurately refer to it as a "sub-system" of the server. Why do we need an Adjacency Sub-System (A.S.S. for short)? Without our ASS, we would have to send you updates for every object in a zone.

When Kunark was in development, we needed a faster and more efficient ASS because the zones were so much larger than previous expansions. One of the things the new system does is cap out when a maximum number of objects are sent to a client. This keeps a player from being bombarded with too many updates in really crowded areas. Instead, you just don't see as many objects as you would normally see. However, with the new system, I've noticed a couple of different issues.

Issue #1: Sometimes doors that are really far away don't render and you see black holes beyond the door. The reason you see a black hole is because the client determines that the door is shut, so it doesn't need to render whats inside the building. But since the door isn't rendering either, it just looks really bad. This is noticeable in Neriak when you stand before the bridge heading to the docks. At the other end of the docks is a building with a door, and sometimes this door doesn't render. I've made a change that increases the priority of doors and other important objects so they should render now from much further away, even if you're in a crowded area like Neriak.

Issue #2: Inanimate objects were causing you to hit the cap of max objects, thus cutting down the number of objects you'd see in an area. Inanimate objects are very lightweight to send to the client because they don't move or do anything to cause constant updates. So basically once we inform the client they are there, there's not a lot of overhead in keeping them relevant to you. An example of where you could see this problem in action is the Village of Somborn in Loping Plains. If you stood outside the church facing the guy that sells Wargs in the corner, most of the time you won't see him or the wargs render if you have your graphics settings somewhat low. This is because the tents behind you have a lot of static objects in them like bottles, papers, etc. Static objects like these will no longer cause you to hit the max cap of adjacent objects.

When GU44 goes live you should now see objects rendering from further away without impacting performance much. There's one other thing to keep in mind. The first step in getting an object rendered is for the server to notify your client that it's there. The second step is for your client to determine if it should be drawn or not. If your graphics settings are set to favor performance over quality, some objects may not be drawn even though the client knows about them. Another change I made is to increase the default rendering distance for some of the lower graphics settings. But if you still see objects not rendering when you think they should be, all you need to do is adjust the value of "cl_lod_scale". Set this value to 1 and you should be fine. You can also find this setting under Options -> Display -> Model Detail -> Level of detail bias.

Bonus: What does Level of detail bias do?

Level of Detail (LOD) describes how an object is rendered. An object rendered at the highest level of detail will show every detail of the model with the highest quality texture. As the LOD goes down, the model gets less detailed. So objects that are far away render at a lower LOD. After all, you won't notice the intricate detail in something when its far away. Once it gets far enough away, it will stop rendering altogether.

Each object determines the LOD it should be rendered at a given distance. So for example, a chair might render at its highest LOD up to 10 meters away. Between 10 and 20 meters it might render at its lowest LOD. And beyond 20 meters it may not render at all.

So back to the original question, what does Level of detail bias do? The distance of an object is multiplied by this value to determine what LOD should be used. So if your cl_lod_scale value is set to 2, a chair at 8 meters away would render as if it were 16 meters away. This would cause the chair to render at the lower LOD instead of the higher LOD. So basically putting this value to "1" tells the client to render objects from the distances in which they were intended to render. A higher number renders them as if they were further away.

So if objects are disappearing sooner than you would like, just decrease this value until you're happy with the results. Tweaking this value in combination with the adjacency changes that go live in GU44 should help in making objects appear when they would normally be gone.

Stay tuned for WYWSITUN Volume 2: Nerfing Rangers
(just kidding)

Tuesday, March 11, 2008

EQ2Flames vs SOE

There is so much I'd love to say about this issue right now, but most of it will have to wait.

The drama thats happening on eq2flames is ridiculous. Of course the entire argument is one-sided over there because none of the devs dare get in the middle of it.

LFG was simply removed from the Influencers program for lack of involvement and communication. SOE was in no way severing ties with the entire eq2flames community. But because of his public post of Grimwell's email, and declaring "FFA" on SOE, the dev information was posted, and now SOE has no choice but steer clear of eq2flames.

I'm very angry and upset over this whole thing because it hurts the entire community and may ultimately hurt EQ2. If you don't care for the game, you should move on and play something else, but to try to ruin a community for those that do love it is just wrong.

Wednesday, March 05, 2008

Armchair Programmers 4TW!

My hat is off to other developers whether you work on games, websites, business apps or whatever. Programming takes a certain kind of mindset but its both fun and challenging.

However, comments like this make me want to slap someone with a trout.

I'm a programmer and if their code is so poorly written they can't segregate and thread that logic then... well... that's just piss poor programming. Object design mehodology has been around for a lot of years now. It's only the terms that have changed the last few years. And given the other SOE titles out there it's crazy to think they don't have the code already and simply need to plug and play -- once again if they can't -- it's piss poor programming.

First off, Object Oriented Programming has NOTHING to do with multi-threading. Also, whether or not an application is a good candidate for multiple processes/threads/cores has nothing to do with how well it is written. So making a statement that EQ2 is made up of piss poor programming because it doesn't fully make use of multiple processors kind of makes me angry.

I'll be the first person to stand up and tell you that the EQ2 code-base isn't perfect. Find me an application that *IS* perfect, with over a million lines of source code, is over 6 years old and has been worked on by countless people who have come and gone, and I will gladly hand in my resignation. Especially an application like an MMO that is constantly growing and changing as new features are added.

All that aside, we are working very hard to improve the performance of the EQ2 client. It might not be in the form of multiple-cores, but we are looking into all possibilities.

Any programmer that thinks you can flip a switch or "plug and play" some code from another application and you magically have a high performing multi-threaded application seriously needs to find another line of work.

Friday, February 22, 2008

I'm SO making one of these!

First, take a look at this website.

This is just too funny... I was skimming over several pages of the website and found a few things that just made me LOL literally.

Take this example from the "directions for use" page.

2. Have a locked cabinet

Aliens have taken ten helmets from abductees and several Velostat lined baseball caps. If you are not wearing a hat they will go through your entire house looking for them. They will not, however, go into a locked cabinet. Before you make a helmet have some kind of cabinet or trunk that you can lock. That way they won’t take it.

BAHAHAHAHAHA! What keeps an alien from going through a locked cabinet?

4. Secure the helmet with tape or string

Almost any kind of tape or string wrapped around the helmet several times will prevent aliens from removing the helmet if they manage to get close to you.

Aliens have somehow figured out how to space travel, but they can't get a hat off someone's head if its taped on?


6. Where the helmet as often as possible

I guess good grammar is not a prerequisite for fighting off alien forces!

I could go on forever, this site is just TOO funny... back to work.

New Loot Options + Game Update Previews

GU43 is coming up soon and in addition to the G15 support that I already mentioned, I worked on adding 2 new looting methods.

Need Before Greed looting is something thats been on our list to add for well over a year, probably more like 2 years. Now groups have the ability to choose Need Before Greed looting which will present each member with a Need, Greed and Decline button. All players that submit "need" requests will be rolled first. If no players submit "need", then all "greed" roles will happen next.

We've also added an item rarity threshold to the group options. This will allow you to specify, Treasure +, Legendary +, Fabled + or All Items. Any item above the specified tier will use whatever loot option is chosen. Any items BELOW the tier will be automatically assigned via Round Robin.

The main reason for using Round-Robin versus the existing free-for-all, is that we'd have to wait for the lottery to finish to know which items were left. Also, people would have to click the chest once to initiate the lottery and than anyone wanting to loot the free for all items would still have to click the chest to see if something else was in it. This is why we decided to go with an auto-assign option like Round Robin. Now when you click the chest, all low-tier items will get assigned automatically, then every group member will see a popup loot window for each item above the tier.

Just be sure you set the tier high enough if you are concerned about No-Trade items being assigned to the wrong people. I would assume that most players in raiding guilds with fabled armor don't care about treasured items, so they may set the tier to legendary and above, and just let No-Trade treasured be auto-assigned as vendor trash. However, any groups where people think you might want some of that treasured gear just needs to be sure that the tier is set low enough to that it gets lotto'd.

Its a very difficult balance to strike between providing way too many options, and just enough so that everyone is happy. Hopefully these options will provide enough flexibility without being too confusing.

On a side note...

Lots of people responding to the GU43 Preview post flaming about how small the update is. First, keep in mind this is only a preview, everything is not mentioned here. Second, remember we're coming off of an update that introduced LOTS of new content. There is always bug fixing and balancing associated with the new content, and that can easily bleed into the next month's update. Also, when we spend lots of time on bug fixes and performance improvements, those items won't always show up on an update, but it doesn't mean we aren't working hard to make the game better. Then on top of that, we are already working on features for future updates. Our development schedule has to run far enough in advance so that we have time to test and bug fix features before they are released.

Since we went from a 6-month to a 12-month expansion cycle we've been able to release some pretty big features as game updates. Unfortunately now many people have taken this for granted and expect EVERY update to have huge features in them. If a specific game update seems small, just keep in mind all of the things I mentioned above.

Tuesday, February 19, 2008

Through the Fire and Flames

This post is not about a guitar hero song, or the band Dragonforce, but the title does a great job of describing what it feels like to try to communicate with people on public forums about EQ2 issues.

Just so you understand where I'm coming from, I wanted to point out this post on our official forums.

I occasionally pop onto our forums when I'm compiling code or taking a quick break and check out the recent topics to see what people are discussing. If someone asks a question and I can answer it, I try to be as helpful as possible. Today, a friend of mine points out this response to a thread I participated in and it really made me angry.

First off its interesting how the flame turns into an issue about not prioritizing my work and doing my job when they don't even look at the date of my post to see that I responded at 5am on Sunday morning.

Secondly, people always assume that if you work at SOE, you have the authority to post on any topic you want. Like any other company out there in the world, we have specific jobs at SOE. Some of us are coders, some of us are game designers that populate the world, make quests, make spells or balance classes. Out of respect for our fellow employees, we only try to respond to topics related to what we're working on. The designers really wouldn't appreciate it if I started promising things that weren't part of my job. This doesn't mean that I don't care about the issues, its just not my place to respond to it.

I'd really love to post my opinions on class balance because I do think we have room for improvement, but the public forums are not a place for me to post my opinions.

On one hand, people complain that developers don't participate enough in the threads, but then they get flamed when they do. We're only human, I'm not sure what people really expect from us.

There are a lot of SOE haters out there, and it really kind of gets me down. I have been a huge fan of EQ1 and EQ2 since they were first released. I've only been an SOE employee for about 18 months now and really love my job. I started work here with tons of enthusiasm and a true desire to make the game better for everyone. I still play EQ2 almost every night and raid at least 14 hours a week. So when someone posts comments to the effect that devs don't care, it angers me because it couldn't be further from the truth.

I suppose as long as our game is played by so many different people, there will always be 'those' type of people out there. I just do my best to ignore them and move on. Their negativity will not affect my enthusiasm or discourage me from interacting with the community.

Wednesday, February 06, 2008

GU42 is now live!

GU42 went live today, and epic quests are creating a huge buzz. It's really cool to see so many people working together to try to figure it out. I'm anxious to work on the epic for my Guardian as well! But don't worry, I have no inside information and I'll be looking for the same spoilers online as everyone else. :) EQ2I 4tw!

I'll be interested to hear what people think of the Connection Stats window and the new Mannequins. There has been a bit of discontent on the forums about the mannequins already. I know that many people were hoping that the mannequins would actually store the item like a bank vault, but it doesn't work that way. I really do feel like the way we implemented mannequins is for the best for everyone. Solving the storage problem is a completely separate issue.

Since we introduced appearance items, people are starting to save old armor sets so they can wear them later on. This is creating a storage issue. I'd love to see some kind of wardrobe in your house that would allow you to store several armor sets by name and easily allow you to swap it with your existing appearance gear. This would make changing clothes a snap, and hopefully alleviate some of the storage problem. I've pitched the idea, but whether or not it happens is up to people above me. Sometimes ideas like these can lead to other solutions, so as I've mentioned before, there are no promises about any of this. But hopefully in the future we'll see some solution that will help with this issue.

On another note, I found an optimization a couple of days ago that will decrease the amount of database space we're using to save items and equipment. This obviously won't have any affect on players, but it feels good to find things like that. And any changes we can make to reduce disk usage or increase speed always helps.

Monday, February 04, 2008

Not much new to report, yet.

I've been extremely busy at work lately with a couple of big projects and fixing bugs for GU42, but unfortunately nothing is far enough along that I can really talk about it yet. The mannequins are going in with GU42 as well as the connection stats window. The G15 support is done and going in with GU43. The major project I'm working on now should also be going in with GU43.

I'll post details about it as soon as possible.

Thursday, January 17, 2008

Logitech G15 support

One of the things I love about my job is having a bit of freedom to work on my own pet projects from time to time. As long as I run the feature/idea past our technical director or producer and no one has a problem with it, I try to make time to work on things that I'd like to see in the game.

My latest pet project is something I've been wanting to do for over a year, and thats add support for the Logitech G15 Gaming Keyboards. If you haven't seen the G15, its a very nice back-lit keyboard with programmable macro buttons. But the coolest thing about it is a popup LCD panel at the top of the keyboard. Logitech has an API that applications can use to interface with the LCD screen and display custom data.

The possibilities for gaming are endless, and many other games have had support for the G15 for a very long time. In that respect, EQ2 has fallen behind. Granted it's not a huge feature, but there are enough users out there with the G15 that people have been asking for this for quite awhile.

I could have had this feature done a long time ago except that I tend to sometimes over-complicate things. In the past couple of days I decided this is something I really wanted to finish. I re-evaluated my plans and came up with an implementation that is much simpler. So I stayed at work until about 10:30 tonight working on it, and basically have it done now.

The nice thing about the implementation is that UI modders can decide what data they want to put on the LCD. Using our existing UI files, modders and players can create as many pages of data as they want and have them displayed on the LCD. Anything that we refer to as "DynamicData" can be displayed. This can be data like your character's name, class, stats, etc.

I'm excited about this feature finally being done, and I think the community will really enjoy it. Hopefully you'll see it go live in about a month.

Monday, January 14, 2008

Go Chargers!

Despite some pretty crappy ref calls, a missed field goal, and too many penalties, the Chargers still managed to pull off an impressive win against the Colts on Sunday!

Now the only thing that stands in their way of the Super Bowl are the 17-0 Patriots.

Wednesday, January 09, 2008

Armor Dummies

This was actually a feature I did before Christmas and wanted to blog about it. For awhile we've wanted a way for people to display armor and weapons in their homes.

The art department made some great mannequin models and I had to come up with a way to allow you to equip armor and weapons on them. The easiest way to equip an item is simply to drag the item from your inventory and drop it on the mannequin. Assuming you own the mannequin, it will equip that item on it, but the item will remain in your bags. This will allow you to display your best set of armor without forcing you to leave it behind in your house.

I also created a new UI window that you can access by right-clicking the dummy and selecting "customize". This window shows all the slots that this item allows you to equip things into. This was done so that down the road we could create items where you could only equip specific things, such as a display for swords, or maybe some kind of stand that you'd set a helmet on.

The cool thing is that anyone can access this window, even if they don't own the mannequin, so people can see what item is equipped on it. This is a great feature for craftsmen that want to set up a store to show off their wares.


Connection Statistics Window

No doubt if you've played EQ and then tried EQ2 at some point you were probably wondering where the window is that shows your ping to the servers. I think it was F11 in EQ. I know this is something I always wanted to see in EQ2 and I'm not sure why it was never put in. This feature eventually made it into our "Bucket of Awesome" which is just a queue for tasks we think are good ideas and will try to implement at some point in the future.

When we got back from our Christmas vacation and while many people were still out of the office I decided I'd go ahead and try to implement this feature. It went through several iterations before what I ended up with was a window that shows three statistics, ping, bytes per second and frames per second. Having a built in FPS meter will be handy for trying to determine what settings give you the best possible performance.

There's also a handy little bar graph to the right of the statistics that graph the last 30 seconds of data. Originally this graph only showed ping history, but I made a change so that you can display 30 seconds history of either of the three stats. You also have the ability to hide the graph altogether if you just want to make the window as small as possible and only care about your current stats.

Assuming no one has any issue with displaying these statistics in game, hopefully this window should make it onto live servers with the next Game Update.


Hello again

I've decided to resurrect my blog and see if I can keep it going this time. In October of 2006 Tiffany and I relocated from Memphis to San Diego because I accepted a position as a programmer with Sony Online Entertainment. So in the past year, I've certainly had plenty of things I've wanted to blog about.

I'll try to write as much as possible about the things I'm working on since people may find it somewhat interesting. Of course there are certain things I probably can't go in too much detail about, and some things I just can't talk about at all until the time is right.

However, I'll give this disclaimer right off the bat. Obviously anything I write about here is my own opinion and does not reflect the opinion of SOE or other SOE employees and management. When discussing game-specific features I might be working on, or ideas that I have, this in no way guarantees that the feature or idea will appear in the game at all, or as I've described.