Hide
Writing an article is easy - try our reStructured Text demo Join Siafoo Now or Learn More

A little background for the project:

The Lord of the Rings Online is a Massively Multiplayer Online Roleplaying Game developed by Turbine, Inc. I started playing when the game was in Open Beta phase (April 2007) and have been playing since. LOTRO, while similar in its interface elements to World of Warcraft, doesn't give its players quite as many 'numbers' as WoW does. While many of WoW's players have made a very in-depth hobby out of theorycrafting, it is somewhat difficult to do the same thing in LOTRO because of the limited ways in which players can get information about the combat system.

Enter combat parsers. I know of two that have been developed - one simply called 'LOTRO Log Parser' made by a guildmate (or kinmate, in LOTRO-speak) of mine who stopped playing a while back and also stopped maintaining the project. Another parser called 'CStats' is well-known and used often by those who theorycraft or wish to gather data to prove/disprove claims of overpoweredness/underpoweredness. I tested cstats briefly and took a glance at its source code. It appears very well written and the program is of high quality.

So, with at least one good parser out there already, what business do I have writing one of my own? Two reasons: It's a learning exercise, and my application will have at least one thing in it that I believe is particularly unique - the ability to 'replay' a logfile and watch the numbers ticking away as if you were currently in combat, even if you're not even playing the game. More on that in a later entry.

I am writing my parser (or analyzer, as I've come to call it) in Python 2.6.2 for Windows, using the Tkinter library for the GUI. This is probably the most complex application I've attempted thus far - my experience in programming is amateur at best, but I hope that with this application I can begin to change that. I'm enjoying learning new things about Python and programming in general that I never knew before.

In my next entry I will discuss some of the major challenges that are presented, both in the process of writing the application itself and in the way that the LOTRO client presents usable data.