My esp parsing library is coming along nicely. I've even managed to get an Oblivion version of TESsnip out. Admittedly it crashes as soon as you try feeding it anything containing a CELL record,* but it least it works. Mostly. The most interesting thing is that it can be used for merging levelled lists. I haven't got a clue why it works, but it does. An explanation is far to long to fit here though, so go check out the TESsnip thread on the official forums if you're interested.
For the past 3 days, obmm has been averaging 1000 downloads a day, split roughly 2:1 between the installer and 7-zip versions. As a result, my angelfire is completely shot. The main obmm download has been moved over to TESsource for the time being, and will be moved to chorrol.com as soon as I get this site sorted.
* Thanks to Arkenor for pointing this out.
Nothing much to report today. Most of my time got eaten by elecromagnatism homework. I did at least manage to write an omod to zip converter though. In order to try and satisfy the single person so far who has complained that obmm requiring .NET is really dumb, I made it a console application that can run with mono. Of course, it being a console application is likely to annoy far more than 1 person, so if anyone out there _is_ annoyed, please get annoyed at the microsoft-o-phobe who refuses to install .NET instead of me.
I am really really really stupid.
I have just spent _hours_ trying to get an oblivion version of morrowind graphics extender working. It was fairly simple to strip out all of the old graphics features which oblivion obviously no longer needs, but then I go to run it and poof, instant crash. Great, I think, I've gone and buggered something up. So I start removing bits and pieces, and it still crashes. In the end, there's nothing of OBGE* left, and it's just oblivion running in a debugger. It still rashes. Even greater, I think. They've got some evil copy protection that checks for an attached debugger and deliberately crashes
oblivion. Well, I know how to take care of that, so out comes my copy of IDA pro. An hour of staring at assembly code later, and I decide that it is, in fact, not checking for an active debugger. Just in case the universe is playing tricks on me, I try running it again. Poof. Another crash. Brilliant, I think. This copy protection is more intelligent than I am.** So now that I've decided that I cant run oblivion in a debugger, I start adding loads of OutputDebugStrings to OBGE. After many cycles of adding more debug strings, waiting for it to crash, reading the debug output***, and so on I notice that there a few 'cannot find OBGE\DInput8.data' entries. Weird, I think, the file is definitely there. Then it dawns on me. I'd forgotten to change the initialworking directory from c:\games\morrowind to c:\games\oblivion. Did I mention I am stupid?
Well, that's a days worth of work wasted, but at least I can now debug OBGE properly. Probably wont be out till next week at the rate I'm going. At least obmm has had a warm reception.
*yes, I know that abbreviation is horrible, but I wanted something 4 letters long so that I could search for it on the TES official forums. Of course, they've now modified the search engine to only search for words _5_ letters long. Evil administrators. Now they've gone and made me use a horrible abbreviation for nothing.
**Not actually very difficult. Most inanimate pieces of computer code seem to be more intelligent than I am.
***Yes, it is possible to capture debug strings without running in a debugger. Google DebugView, and then download everything else from sysinternals while you're over there. It's all useful stuff. :)
Actually, this blog was written retrospectively on the 28th when I learnt that I was actually going to _have_ a blog. But it's about the 25th, and I already have one labelled 28th. So there.
Anyway, I got my copy of oblivion today.* It doesn't work. So much for Bethesda getting a game out which actually works first time. At the risk of provoking the wrath of approximately 3 fanboys who none-the-less make enough noise for 3,000,000, I blame it on Microsoft and chronic console-itus. (I guess I could just blame it on shoddy programming, but most of my programs are just as bad, so I'd be insulting myself, in a slightly round about way.)
I spent a few hours or so playing around with ini tweaks, but nothing helped. I can at least get into the tutorial dungeon without it crashing, so I can at least start work on my mod manager and oblivion graphics extender, even if I cant actually play oblivion.
So, time to shut down oblivion and start work on my mod manager. I'd already done as much work as possible on it before oblivions release, so I though it was just going to be a case of renaming 'morrowind.ini' to 'oblivion.ini' and releasing it. So I go and peer into oblivion.ini to check if they've changed the name of the [game files] section. A search for [game files] doesn't find anything, so I guessed that they have. But then a search for 'oblivion.esm' didn't find anything either. In their quest to obtain the coveted 'compatible with windows xp' logo,** it seems bethesda have decided to support limited user accounts. Unfortunately, my mod manager doesn't. At all. In fact, it barely supports multiple users at all. Looks like I'm going to miss my target of releasing obmm on the day I receive oblivion.
As a side note, I eventually found the plugins list in 'C:\Documents and Settings\me\Local Settings\Application Data\Oblivion'. Alongside it was another file, called 'DLClist.txt' I assume that DLC stands for 'downloaded content', because the contents of the file make it clear that its purpose is to keep track of oblivion content which you have downloaded. Now, the only content which needs keeping track of is which of the official mods you've paid for. Anyone else see the issue here? If oblivion keeps track of paid-for mods inside your personal folder, then every user of your computer will need to pay separately for the same mod. Hopefully, I'm reading too deeply into this, and bethesda have some sort of cunning plan to get around it. Hopefully.
*or last Saturday, or Friday, depending on your time zone. Or possible even Sunday of you want to be difficult and live in new Zealand.
**There are actually very strict rules if you want to use the windows xp logo. Your application must run in a limited user account, must support alt tabbing and fast user switching and a few more things. My oblivion box doesn't actually have a windows xp logo, so I guess it doesn't support fast user switching. I guess supporting limited users is a good thing, but it caused serious problems for me. For that matter, it would cause serious problems for any players, even if they handled mods themselves, because different people would have different active mod lists.