Community Interview: Demoder

This week we've spoken with our very own AOU Partner: Demoder, also going by the name SavagedLight on IRC. Demoder has been a prominent member in the AO community as a 3rd party developer for quite a while now.

Hello Demoder, thank you for taking your time to participate in this series of interviews.

You’ve been around in the community for quite some time, could you share some of your AO history with us?
I started playing AO permanently in December 2004, as a froob. I played every day, and really enjoyed what I got. Sometime in January 2005, I noticed these über composite expertise nanos in the general nano crystals booth, and at the time I thought the saved NCU space was definitely worth going paid. Sometime later I discovered there were more to it than the composite nanos. :)

What made you start playing Anarchy Online?
A friend (Onack) suggested playing Anarchy Online. After checking what the game was about, I discovered it was made by Funcom, the developer of my favorite (and fully-voiced-in-Norwegian) RPG “The Longest Journey”. After a little bit more reading, I figured this would definitely be good. And it was. :)

This isn’t the first time you’ve been put in the spotlight. How did it feel when Means thanked you for your contributions in FWM a year back?
It was surprising to get that kind of attention! I generally dislike being in the spotlight, and I actually panicked a little. :P It did generate quite a bit of traffic to the new tower war tracker though, which made some bugs and performance issues easier to spot and fix.

You’re one of the few women in the community that doesn’t completely hide her gender. Does being a girl in an MMO community add any hardships?
I actually DID hide my gender for quite a while, but I eventually figured it was silly to do so.
People generally don’t seem to care what gender other people are, but there’s the odd exception which starts behaving badly when they realize I’m a girl. The particularly annoying ones start overdoing dirty talk. I actually had one person stalk me in-game. Let’s say I’m thankful there’s an /ignore function, and that the game world is large enough to make it hard for people to follow you around everywhere to otherwise harass you.

You’ve been quite active in the 3rd party community, what lead you to get started on AO related projects?
As charming, involving and sophisticated AO is, it has always had potential to be better in some aspects. After having leveled up quite a few levels on my new alt, I went to the map shop booth and looked for maps & upgrades I could use. After getting halfway through the list, I thought: “Well... I’m going to have to do this for every other alt of mine. Might be faster to just make a program for this...”, and so I did. At the time, the only programming language I was familiar with was PHP, so the tool turned into a webpage. After having used it on most my alts, I decided to create a thread on the AO forums about it... And that’s how I dipped my first toe into AO’s 3rd party developer community.

Since you’ve started, which projects have you been involved with?
There’s too many to mention all of them, but I’ll try to pick a few interesting ones:

The tower war tracker (http://towerwars.info/) started out as a custom bot which reported tower war activity to a dedicated IRC channel, for PvPers in alliance to follow. Once this was working properly, I figured it would be nifty to display live activity and generate some statistics on historic tower war activity, so I started logging it all to a database. About a year after logging begun on RK2, I added bots for logging RK1 & RK3, and made the website known to the public. I should probably stand trial for the horrible design of the original site, but in my defense: It was functional! Most of the time, anyway.

I started working on a relaunch of the tracker as a new website during spring of 2010. Vhab caught interest, and volunteered to make a proper website design, and I am quoting: “We can’t have the new site looking like the old one!”. Many weeks later, the site was up and running. I’m still tweaking it, fixing bugs and adding new features when time allows.

I’ve also worked on Vhab’s chat client, “Vha.Chat”. I encountered it by chance on the AO forums, and started playing around with it. I liked what I saw, and since I was in a programming mood I looked through the code to try and understand how it worked, and see if I could improve anything. I asked Vhab questions about it, what he had planned to do forward, those kinds of things. Once he showed me it was easy to submit my code changes to him for evaluation and implementation, a coding spree was born. I worked on it most of my wake time for a couple of weeks; so much fun learning! He was really nice about the whole thing, and guided me along the way when I encountered obstacles I couldn’t get past on my own, no matter how silly they were. He has been a good friend and mentor ever since.

As time passed, I’ve started working on a new chat bot for AO named Bot#, which is based on the Vha.Chat libraries. It’s currently powering Itemsbot on both dimensions.

I’ve also made “Anarchy Online Map Compiler” (used by Onack for his planet maps), “Which PF maps am I missing?” (Used to figure out which PF maps/upgrades you should get), and many more.

That’s quite a few! Did you manage all of these alone?
Absolutely not! Off the top of my head, I’ll have to give special thanks to Graft for being extremely helpful and contributing many of the more advanced core features of Bot#. I’ve also had good use of Xyphos’ open source tools, which have let things like the new Central Items Database and in turn relaunch of Itemsbot become possible.
The community have also been very eager to suggest new features and report bugs, which have improved the tools & services a lot.

Your projects have been getting bigger and more complex the last few years, Do you have professional experience as a programmer?
I do not have any form of education or work experience related to programming per se, other than a very basic introduction course to HTML, JavaScript and PHP, which didn’t really cover anything I hadn’t already learned on my own. Programming is a hobby and a learning experience for me. I enjoy facing problems which need to be solved, and I enjoy learning new things in the process. If something useful comes out of it, that’s great!
I’ve learned almost everything I know of programming and how AO works through experimenting, reading documentation, and looking at how other people write their code.

There have been a lot of feedback from the AO community over the years, which have improved the quality of the tools I’ve made; both as a direct result of the feedback, but also through showing me new ways to look at things. In recent years, I’ve found that AO's third party developer community is a great resource for collaboration on larger projects where several people want to achieve related things, and for figuring out the details in how AO works. It’s also nice how different people have different approaches at the same problem. This often leads to discussions, which in turn result in a better approach to solving the problem at hand.

Your track record is quite amazing, what keeps you hanging in there?
I mostly code for the fun of learning. It’s definitely extra fun when the tools I make can help other people enjoy the game more, though! AO is really a puzzle game to me, where I get to test my math and organizing skills (or lack thereof) in-game, for example when twinking; And a creative outlet through the AO forums and programming. :)

It’s also motivating to see the AO team is very open to community participation, such as Docaholic’s new icons and the updated default planet map by Onack, as well as helping out where they weren’t expected to; such as making it possible for custom planet maps to define where zones are located on the map.

Is there anything new on the horizon you’re willing to share with us?
I’m working on a number of long-term projects which may or may not turn into something useful, but I think the most interesting one is probably the Planetmap Viewer, which will let people display a planet map with their character location on a secondary monitor.

As some may have noticed, Itemsbot is currently displaying where many items can be bought. It’ll eventually let you know which items are quest rewards and where items can be looted as well. I’m aware this feature is currently too verbose, but rest assured, it’ll be fixed soon. All of these features will be available to all chatbots which utilize the CIDB to perform item searches.