Team Comment - Adrick on the Faction System - November 27, 2001
Factions, Factions, Factions...

In this team comments Iíd like to focus on Player vs. Player combat, specifically within the context of the UO Faction System.

When I first joined the team in June of 2000, one of my initial big challenges was to get up to speed on the faction system. This system had already been coded and was in QAís hands when Evocare and I were challenged with getting it released as part of the Renaissance upgrade. After spending about a week researching what was there and writing up documentation, we decided to expand on the system to include a broader audience. We spent about three weeks writing documents and coding additions. I wrote faction traps, redid the gumps, and worked a lot on the craftables. Evocare wrote the enhanced faction guard AI, added faction silver and faction allied monsters. We wanted the system to include more than just hard core PvPers, while making it fun and challenging for all. We wanted to include crafters and PvMers, as well as provide some political context to offices.

After the initial release, Evocare and Vex worked on factions up until February of this year. They fixed several bugs and added trap removal kits, and a few other balance issues were addressed.

In March, the task of addressing some of the remaining bugs in the system began. In publish 14 (which was publish 13 for a while), approximately 30 annoying bugs with the system, as well as some balance issues, were resolved. You can find complete information on the faction fixes that are being implemented in Publish 14 by clicking here.

Moving forward, we plan on addressing some balance issues with the strongholds, and working on removing ways blues can interfere in faction fights. Our goal is to have all bugs and major balance concerns addressed once Publish 15 is live, so that any future work on factions will focus more on enhancements.

I know many of you will have strong opinions on future faction changes, so Iíd like to throw out some ideas for the future. These things are not currently scheduled, and may not be implemented at all, but Iíd like to hear your thoughts on the following possibilities.

1] Lowering the corruption times down to about 8 hours or so to allow more fast-paced conflict and create less of a chance that off-hour, low peak hours will determine the fate of a faction.

2] Allowing guilds to form new factions, possibly as part of an alliance system.

3] Expanding the control factions have over Felucca by looking into dynamic spawns of monsters and resources.

4] Adding more political elements to the leadership of a faction beyond simply voting. This would include putting in some checks and balances to ensure that the commander and those who he appoints are doing a good job in the eyes of a majority of the faction. Also, as part of this, allowing players to vote to remove other players considered a spy by a majority of the faction.

5] Allowing factions to have control over both the town and surrounding area (follow up to item #3). An idea here is that all resource gathering could be taxed by the controlling faction.

All of these, and more, are only ideas we are currently discussing as possible enhancements, and we welcome feedback on these or other enhancements. Please feel free to talk about these on our boards, or email suggestions to me at [email protected].

Take care,

Pete "Adrick" Warner
Designer Ė UO Live

Team Comment - Adrick Analyzes Bug Fixing - October 1, 2001
One of my main areas of focus is fixing bugs - especially critical ones that affect the entire service. Since bug fixes comprise a huge percentage of the changes we make to UO, I want to take this opportunity to talk a little bit about what goes into fixing a bug and getting the fix live on all the shards. There are several steps to this process, and Iíll go over each one.

1] Identify the bug. This comes in many forms, including GM reports from support calls, QA testers, and player submissions through email or via our boards. The most important part of this step is information Ė as in what shard, what time, the specific circumstances, etc. Basically, we need as much information as possible that will allow us to reproduce the bug in a development environment. Itís rather an impossible task to fix a bug we canít reproduce.

2] Reproduce the bug. Using the information obtained in step 1, a designer or a QA tester will attempt to follow a step-by-step procedure to reproduce the bug, which usually leads to a bit more information. Most often, this is done on our standalone servers, which are sort of like mini UO servers running the code branch of our choice. Sometimes, due to the differences between an areaserver (standalone) and full server set (production shards), we have to work on a test center to get the bug reproduced. If it involves crossing server boundaries, then it requires a test center or a production shard.

3] Prioritize the bug. If itís a legitimate bug, it either needs to be fixed within our normal development cycle, or if itís much more serious, it needs to be pushed to the front of the cycle. In order to determine priority, a couple of questions need to be asked. Does it affect a majority of the service? Is it an exploit? Is it a crasher (shard or client)? These types of bugs are always fixed as quickly as possible regardless of what else is on the schedule, and the rest are moved into the normal cycle.

4] Assign and fix the bug. For ASAP bugs, we call a meeting to determine what the fix will be, who will be responsible for the fix, and what the timeline will be in order to get it tested and published. Other bugs are assigned to the team members in charge of those areas. Some bugs are fixed by programmers, others are fixed by designers, and some require both design and programming resources.

5] Test the fix. Once we have fixed the bug, itís published to a test center and given to QA to see if it passes; they test the systems affected and pass or fail it. If it fails, itís returned to step 4. Once passed by QA, it moves to step 6.

6] Publish the fix. Sometimes itís to one shard first; other times it goes to all the shards in their normal maintenance schedule.

7] Monitor feedback. The support staff monitors the shards to make sure no side effects happen and that the bug in question is indeed fixed. Our GMs are one of the best sources for feedback because they take the calls and see firsthand what is going on in the game.

I enjoy fixing bugs because, as a player, it was always a source of frustration for me. It is also challenging, because the unique nature of the game causes the systems to affect each other in what seems to be very strange ways at times. Bug fixes arenít always the most visible changes, but doing it well involves using problem solving skills and close attention to detail. The reward comes from seeing players being able to play the game and not having it ruined by an exploit, or being able to simply enjoy a system in the game when it works as it was designed to.

Pete "Adrick" Warner
Designer - UO Live

Team Comment - Comments from Adrick - April 30, 2001

My last comments were back in November around the time of the UO World Faire, an event I enjoyed very much. It was fun to meet the players and hear what the community had to say about the game and the future from their individual perspectives.

In these Comments, I thought I would take some time to let people know what it is Iíve been doing over the last several months and what I am currently working on.

Right after the Faire, I was given the assignment of managing a new project - localization - from the design side. What a task it was, and we are still working on it! It was a huge learning experience for me, and even to this day the magnitude of what we had to do is mind boggling. Our goal was to make the game accessible to non-English speaking players with as minimal an impact on our current playerbase as possible. This was challenging, because when the game was originally designed it was not done so with the intent that it would be localized. Many things had to be rewritten - some from scratch - to accommodate our supported languages. During this process I learned a ton about how the game works. I was on the project for about 4 months and over its course I made changes to over 500 scripts - the biggest portion were all of the gumps in the game. Things like the house gump, the faction gumps and the guildstone gump had to be rewritten to allow them to be localized. So why localization? Iíve heard that question a lot. The reason we localized UO is to expand our playerbase by bringing UO to people that would not have any interest in playing the game because of the language barrier. The result of this is that as the UO playerbase grows, our resources from the development side will as well. The current team is the largest ever in the history of the game - the prospect of a growing and expanding playerbase is what allows us to do this, and that means better quality content delivered on a more regular basis.

Now that Third Dawn has shipped, the designers have once again been given areas of the code to manage. IĎm very pleased to be working on the faction system, the guild system, and all player/player interactions such as reputation, trade and the party system. All of these areas are of great interest to me, and as we move forward it will be my primary focus both to clean these systems of bugs and exploits and to stabilize them. I am currently working on fully documenting these systems and identifying the bugs that need to be fixed.

Iím particularly excited to be working again on the faction system and building on the initial design that I helped write and code when I first joined the team almost a year ago. I think the faction system can be improved and expanded in many ways. The area I am most concerned about is the amount of blue interference that is occurring in and around the strongholds and in the 8 faction towns, and I am working on several ways to limit this or remove it altogether. In addition to this problem, I'll also be focusing on other bug fixes and balancing issues over the next few weeks. The second area I am responsible for is the guild system, which I think is one of the most important systems in our game. It is a great community builder and organizer, and a way for people to work together towards a common goal. I expect to be spending a lot of time making these two systems work together, as they overlap in many areas and depend a lot on each other. The final area (player/player interactions) is also a challenge. Iíll be responsible for making sure that these interactions are bug and exploit-free (mostly regarding scams), and working to provide the players with a comfortable experience when interacting with other players (at least from a game mechanics standpoint).

Well, thatís it for now - thanks again for your time, and as always feel free to contact me at my email ([email protected])or on the boards with suggestions, ideas and concerns.

Take care,

Pete ďAdrickĒ Warner
Designer - Ultima Online

Team Comment - Comments from Adrick - November 1, 2000
Hello - Iíd like to take this opportunity to introduce myself to you and offer some insight from my experience of going from a player to a designer. My name is Pete Warner. I am a designer on the UO Live team. I guess you could say I started this journey when I was in my early teens with a TRS-80 and the language known as BASIC. I hacked around playing those early games from a tape drive, cartridge, or later 5 1/4" floppy disks, games such as the Sands of Egypt, Bedlam, and Dungeons of Dagarath. It was many years later that I played my first Ultima game, Ultima V. I really enjoyed it and began playing more and more games as the industry started cranking them out. Another strong influence on me was the D&D pen and paper games that I played all through high school. I was a dungeon master, though not a very good one because I would fixate too much on details. This was a constant annoyance to my friends who didnít care that the world had gods and this grand detailed fiction; they just wanted to kill a monster and gain a level.

My first experience in online gaming was Diablo. The game was a lot of fun for me, but it wasnít persistent. As the magic faded for me with Diablo there was this new game in the stores called Ultima Online. I began playing it during the first week of release and became totally immersed in it. I went from being a pretty heavy gamer to a ďsuper hard-core 8-10 hours every dayĒ game player. . I found the social interactions, player vs. player, and competitive nature of the game to be absolutely an addiction. I became very active on the message boards on the fan sites, and was literally immersed for 90% of my waking hours in Ultima-Online. By day I would post and read from work, and by night I would rush home to play with my friends.

As a player in Ultima, I was heavily involved in Player Vs. Player. I began as a gung-ho anti pk and later was drawn to the dark side of lawful-evil (pk) gasp - a term I never liked. I was evil but had a purpose in the world and wanted to contribute to it, not take away from it. I wouldnít say I was an elite pvper, I actually got involved in a lot of the politics and plots which often tend to detract from one another. I just enjoyed converting souls from the side of good to our way of thinking, based on a rule set that didnít include notoriety or red/blue. I was an Idealist, and still am to a lesser degree, and I played the game as such. A majority of my playtime was spent in the Imperium, a large RP/PVP guild on the Napa Valley shard. Some may remember the no plate law and the Inquisition that enforced it. Anyway...

Some of you may know me from the website Battle Vortex. It was here that I hooked up with one of my closest friends, Fear, and co-hosted/produced a RealAudio show where we interviewed Origin dev team members and webmasters/players who shared a passion for the game. It was in this venue that I started to really listen and hear other opinions about the game and understand the conflicts between playstyles and beliefs that the game generated. Though we were bringing news to the public, we were also ranters, complaining and offering our ideas of how the game should be, etc. ďThis sux!!!! Why donít you do it this way etc, etc.Ē Little did I know I was in for an education when I accepted the design position in June of this year.

As a player it was easy to design - just throw out ideas and suggestions that I thought would be cool. As a designer - this is not so. Several important things come into play; balance - what is good for the game as a whole, time - implementing and attempting to balance an idea or system with all of the other complex systems of the game takes time and lots of it, something I am learning while working on the faction system. Another thing that must be considered is legacy issues that your idea or system will affect. Yet another concern a designer faces is scalability, how well will a system work with 10 players, 100 players, 1000, 10,000. How will players react to a change? How will it affect a casual player vs. a hard core gamer like myself? All of these are factors in designing on a MMORPG.

So what does a designer do at OSI? Itís two-fold really. First we come up with ideas and concepts that will enhance the game, add value to a system already in place, or fix an imbalance, bug or exploit. Secondly we write the scripts that make this happen along with the programmers, who work more with the server or client C code. We are also heavily involved in the QA process in that we test our code as best as we can and work with the quality team to ensure that we deliver the best product possible to the players. This doesnít always work as intended and its one of the major frustrations of the job. The last thing we want to do with the code is introduce another bug or imbalance into a system we are trying to eliminate them from.

My main areas of focus in the game are player interactions. Things such as reputation, guilds, trade, and the economy are my primary responsibility. I never knew my economics degree would be put to use in a computer game. I was responsible for the looting interaction changes, where we made it so only those doing damage could lawfully loot a corpse in pvp. I helped the team with the dungeon changes (my dungeon was Hythloth). I spent several weeks on the faction system, fixing bugs, testing and adding new features such as the faction traps and enhanced faction stone gumps. I worked closely with Evocare, and the rest of the team ironing out these new additions to the system. Iím very excited about the faction system and look forward to player reaction when it makes it to all the shards.

So what are my goals and hopes for Ultima Online moving forward? I guess if I could see one thing in the game improved its predictability of play. The unexpected is sometimes very fun in a game, but when the unexpected occurs in the form of bugs or exploits, it can often be very discouraging to players. I think we have made some improvements here but we have a long way to go. As a player one of the most frustrating things I faced were bugs and those who exploited them. Iíd like to be a part of bringing positive change in this area and will continue this effort into the future.

Well I better wrap this up - I donít want to write a novel. Iím excited about the future of Ultima Online and am proud to be a member of the UO design team. I look forward to the World Faire this November and the chance to discuss the future of Ultima with you in person. I just hope Tyrant doesnít have me scheduled for any dunk tanks...

Thanks much for your time,

[email protected]
Designer - UO Live