Reflection
This is an import of the Reflection (2022) post I made on Google Docs for archival purposes.
I wrote this document primarily for myself to reflect on the time I've spent working on WoW things by walking through them (or most of them) and my decision on throwing in the towel when it comes to public datamining and actively maintaining and supporting WoW.tools. I ran a Twitter poll to see if people cared to see this document/properly write it out and 89% of 128 people wanted to, so here it is. I might still add things/change/clarify stuff over time, but I wanted to get this out before the end of the year. If I do update things I'll be sure to mention what/where.
Intro
I started working on WoW projects many many years ago, eventually leading to making the archive at marlamin.com/archive/, then bnet.marlam.in. Combined with my interest in the development of such a huge game, the making of tools and making that process easily observable, that led to WoW.tools.
Even though I barely contributed to it at all, Implave's recent video made me emotional in the way that it feels like it was worth doing what I did and giving some closure to this project and the culmination of those interests. It reminded me of other exploration movies that are part of the reason I've developed these interests which made it all come full circle. Said interests aren't going away and neither am I, but there are multiple reasons against me continuing this project that far outweigh any reasons to continue it.
All the history
First, some history/background that not everyone might know about. I've always had an interest in taking stuff apart which evolved into a fascination for computers and as it goes; video games. I started playing WoW in 2005 when I was 14 and in part thanks to "Exploration the Movie" and "Nogg-aholic the Movie" I also developed an interest in exploration and the behind the scenes/development of the game (and had the soundtrack from both these videos on constant repeat on my MP3 player).
I quickly started hanging out in IRC channels around WoW (shoutout #machinima, #nogg-aholic, #wowdev, #wcradio and later #mmo-champion). Around the same time I also joined up with an RP guild on Steamwheedle Cartel that led me to friendships and more projects that still exist, albeit in different forms, today. I joined a forum called Facepunch (by the makers of Garry's Mod) in 2007 where my interest in programming increased exponentially. In 2008 after finishing secondary school I started a course around computer science/programming in school and became increasingly interested in game development and by extension datamining and making tools/programs using WoW data in some form.
Then in 2008, slightly before the release of WotLK Alpha I had enough of the basics of datamining down and somewhat knew what I was doing when the alpha client "released". After the release of the WotLK Alpha client I got more involved in the datamining/leak community as one of the admins of WotLKWiki as well as helping out as a GM on one of the private servers that ran the WotLK Alpha client, this side of the community was already quite toxic when I became involved with many people just being in it for the money -especially- during F&F NDA alphas. Some of the people from the leak community are still around in various gaming communities today or have even made their own, albeit most have, thankfully, stepped away from covering WoW. The private server community also wasn't really my cup of tea in the end and I did good by leaving that part of the community behind at an early point.
Around this time I was already making various projects, I don't remember most, but amongst them was an armory parser that let you generate signature images to use on forums (e.g. Facepunch/MMO-C) and I also spent a lot of time messing around with making giant browsable minimap compilations. This slowly evolved (and arguably got out of hand) in the following years with more/larger projects and getting better at knowing the ins and outs of WoW.
In 2014, upon a guildie from the RP guild (Hi Bel) wondering how to use buildings from WoW in 3D art, I started working on a tool that converts Blizzard's proprietary game formats used in WoW to something more interchangeable and usable by applications like Blender. This project became a much larger one throughout the years eventually allowing for the exporting of entire zones. It was one of the first projects that was shelved back in 2019, but it still lives on in remade form by Kruithne (and to a lesser extent myself) through the tool that is wow.export.
wow.tools started as bnet.marlam.in in 2017 (archive link from 2019), which itself started as an archival subsite on marlamin.com a few years before then. Archival and the saving of older versions of WoW has always been the primary goal of the project which I'll keep doing privately after the wow.tools server runs out of space in the next few months. Over the years most of the tools I made like the minimap browser and file history were merged into this project as well as adding a few new things like the modelviewer (shoutout Daemon), the DBC browser and various other features of the site we've all come to know and love/hate. A small community also grew around the project on its Discord, but I got tired of moderating that in 2021. The site itself has grown to have 2074 registered users before I disabled registration.
That brings us to today, December 2022. I'm going to delve a bit deeper into each aspect for wanting to take things easier reason by reason.
First off I'm going into some sensitive mental/physical health stuff, you can skip ahead to "(Skip-ahead point reached)" if you want to skip that (I would too, it's not fun to read).
Physical and mental health
As far as I can remember (and that memory is terrible due to this) I've always been struggling with various mental and physical health issues. My teens were, like many, full of anxiety and what I in the recent years have come to recognize as depression. And instead of dealing with the things teens usually deal with (e.g. going out into the world and figuring yourself out) I pushed it all away and distracted myself with one of my many hyperfixations.
In June 2017 I had what I thought was a stomach bug, but what much later ended up turning out to be an infection in my bowels that went untreated, which I walked around with for far too long. A few months later I was diagnosed with Irritable Bowel Syndrome, likely as a result of the infection, but the science is still out on that and evolving every year. This specific type of IBS has since gotten a name as well; "post-infectious IBS". With diet changes, lifestyle changes as well as making sure I regularly keep biking places (keeping up my fitness) I largely managed to get it under control over the years. However, stress, anxiety and bad sleep still affects and triggers my IBS, as well as any other health issues I might be having. For example stuff like the flu (or worse, COVID) hits a bit harder for me lasting for several weeks during which I'm often also unable to properly absorb any nutrients which in turn causes other issues like sleeping way too much (which can then be interrupted even more by WoW patches, awkward).
In the mental health department, in the last 2 years or so my depression and anxiety hit record levels. I don't think I have to explain why these past few years sucked as it's been a bad deal for everyone, but that led to long IBS spells which in turn caused more anxiety and got me stuck in a pretty bad loop. During what has likely been the lowest point so far in 2021 I had 6 months of therapy to deal with and learn new coping mechanisms for my anxiety, largely focused around my IBS. I'm still dealing with these issues as well as stuff I've left out, but to a lesser extent than I was (therapy helps, who knew) and I know how to recognize and better deal with bad situations when they come up.
I also started reflecting on my childhood, my teens and early adult life. As I mentioned earlier I have a tendency of being fixated on certain things and ignoring everything else during that. Whether it be work, WoW, Minecraft, Valve or when I was younger South Park, Star Trek, Pokemon or Samson & Gert (a TV show for kids that has a talking dog) when I was super young. Moving on from fixation to fixation (and sometimes back to an old one) is how I lived my life until I started to learn to recognize how unhealthy the amounts of time I was spending on these things really was and how much I've missed out on in all this time. I just didn't know how to moderate my time or that I had to. I didn't really recognize that until the age of 27 and am still working on better moderating my time today (and learning how to not do anything).
(Skip-ahead point reached) I've been actively trying to manage these various fixations and while progress has been slow, WoW was one of the first things I recognized as being a harmful fixation. That's why I started scaling back in 2020/2021 and announcing an even larger scale back in 2022, which is now almost complete. I'm not looking to cut out everything WoW related out of my life, but instead managing my time better and cutting out all the things that caused me stress, anxiety or any other sort of negativity.
Code quality/tech debt
It being this old of a project as well as me using it to learn various programming languages and more about WoW's data in general has made it quite the mess. A lot of the build processing code is still PHP, which was a mistake. The build processing that isn't C# is a giant mostly-single class application called BuildBackup which is also a mess to work with/in. Due to the whole thing being a mess, I also have to regularly restart nginx or one of the backend services wow.tools uses at various times of the day and hold the hand of the build processing scripts when a new build comes out. With various parts of the site also being quite slow, any intense scraping slows the site down to a crawl for everyone or outright makes the server need a reboot. Fixing all that and comfortably working on both the site and the various tools it uses would require a lot of reworking, something I simply don't want to do. Community additions to the site/projects have also been very sparse due to the same reason; it's simply not accessible enough to work on for anyone but me.
Not a money problem
Some of you might remember the Patreon being around until sometime last year, and while a success and it covering pretty much all the costs of the site, I got rid of it as one of the first steps in stepping down from the feeling of responsibility/having to work on things. While I do need to take it easy money-wise the next few months for IRL reasons, the wow.tools expenses are not a factor in stopping working on the site (it is less than ~100 EUR/month).
Community involvement/negativity
Throughout the years I've become tangled in various parts of the WoW community and I largely don't like what I've seen the more involved I've gotten. Naturally the minority of the community that purposely spread negativity/toxicity are the loudest, whether it be for reasons they see as valid or just to be annoying and I frankly don't want to deal with that anymore. This goes for Twitter, Reddit, MMO-C, Discord, as well as even some individuals on the WoW community council (more on this next paragraph). Stepping back from the community in the ways I have (and will) is effectively putting my head in the sand, which in this case is already feeling like a good thing. The friends I made will still be able to contact me through various means and/or follow my antics on social media, but it wouldn't be for the latest WoW news/datamining. I'll still be around in other places as well, just not for the same reasons.
WoW community council
I applied to the WoW community council in November 2021 in the hopes of being able to point a spotlight on some of the issues I was seeing (and expecting) for the various types of people who use my tools, or other tools to extract data/interact with WoW. I got invited in December even though I mentioned datamining and stuff in my application and I spent a lot of time over the past year discussing various WoW things in the community council Discord (largely just between other members, Blizzard doesn't want to participate in discussions there that could just as well be on the forum for transparency reasons). Seeing people from various parts of the community with various interests/priorities has only given me more insight into the parts of the community I wasn't familiar with and has given me a newfound sense of respect in Blizzard for having to juggle and satisfy all these playstyles. The initial term was for 1 year but was extended into early 2023 while Blizzard started up a new application phase. I however told Blizz I wouldn't be sticking around past December as I was winding down my community involvement and left the Discord in November (after realizing some of the conversations in the Discord weren't being a positive influence in my life either).
I did post a few threads about various subjects, check those out below if you haven't already did so when I tweeted about them.
On the subject of community tools and how Blizzard can contribute/change in that department: Database exports Filenames
Other subjects: Datamining/story spoilers and WoW Sound muting improvements/bring back replacements Meta post on the community council itself (somewhat outdated now) Don't let the Hearthstone Tavern model go to waste (my all time favorite)
I hope the council flourishes, it took some time to get off the ground but I genuinely think the council as a whole helped guide Blizzard's recent philosophy changes, even if it's just a single % of it. If you think you can add something to that conversation, be sure to apply.
Datamining/spoilers
I don't think datamining is inherently bad, but the (pretty unique to WoW) spoiler culture part of it has become pretty unhealthy for me and I believe many others (though they might not realize it). wow.tools has contributed to that in the past and I don't want to be known for/connected to that anymore. Anytime something big was spoiled, whether or not wow.tools had anything to do with it, I felt kinda bad. I don't know if I felt bad for devs having to deal with leaks, players being spoiled against their will or the people spoiling themselves robbing them from the story being told to them properly or if I felt bad for all of the above, but it wasn't a good feeling. It was a similar feeling back when I was heavily involved in SteamDB when it leaked an indie devs game announcement, which was just sad.
I had planned out a longer paragraph here but mostly ended up repeating my community council thread on the subject so feel free to read that here.
Looking forward
With my newfound time and energy I've spent parts of it figuring out some of the stuff most people figure out in their teens, such as gender, sexuality, future plans and exploring new hobbies/creative outlets. I've been trying to improve my physical health as well, but after getting COVID and then more recently the flu it's been a slow uphill battle.
I'm also slowly picking Blender back up again and hoping to make some actual art at some point, even if just for myself. I'm going to keep working on wow.export on the side together with Kruithne in the hopes of keeping it working for future patches (as well as adding some new features such as glTF support, DB2 exports and more when we both find the time).
My 3 day/week job at Magic Find still involves WoW as well, so I'll likely keep working on/with several WoW things, including database definitions (WoWDBDefs), DB2 reading (DBCD) and the listfile but not in a high priority/same capacity like I previously was (maintainers for any of these are very welcome - poke me on Discord/Twitter/email ([email protected]) if you have questions).
Tools like DBC2CSV and wow.tools.local will be updated every now and then as I still use these myself, but the wow.tools site, any tools/services it uses/provides will slowly grow out of date after 10.0.5 (currently planned to be the last build processed on the site). I'm still planning on making all the data on wow.tools available for download, but that will need a bit more time.
I hope that sheds some light on the entire situation and makes it a bit easier to grasp my reasoning.
If you have comments, questions or anything else you can poke me in the same places I mentioned 2 paragraphs ago or in the tweet about this document here.