BLOAT
I must have eaten like a week's worth of food today somehow. I don't get it, I've been a lot hungrier than usual these past few days
slight crisis
Here's the main things I've done with prboom
- (Re)implemented the overdetailed map cheat, a modification I made to the RISC OS engine Doom It Yourself in 2000. When you set the map cheat to things mode the things appear in all different colours and shapes (so you can with a fair degree of reliability tell what they are, and to a certain extent play the game entirely on the map - but that's a bit stupid, really. It's incredibly useful when running sandboxes, though)
- Made it easier to switch the map cheat's mode: Instead of typing the cheat code over and over to cycle the mode, the cheat code now simply enables or disables the cheat. When enabled, there's another (configurable) key to cycle the mode. There are four modes: off, show all lines, show all lines and some things, show all lines and all things (the map cheat with all things can get pretty cluttered so I have a mode where it doesn't show decoration and scenery objects)
- Instead of having one colour for secret areas that is optionally not shown before they've been discovered, there is a colour for unvisited secret areas and another one for visited ones. Also I removed the map_secret_after option to show unvisited secret areas and replaced it basically by the statement "is the cheat mode active? if not, don't display unvisited ones." Setting map_secret_after to false so that unvisited secret areas show up on the map is just the same as running the map in cheat mode, in my opinion.
- Then I decided to add all the thing colours as prboom.cfg variables (they were previously hardwired as #defines into the code, as they were in DIY), and then added them to the menus as a third screen under Options->Setup->Automap. This screen has about 40 options on it and is a sight to behold!
Now here's the problem. I realised that I shouldn't be doing this shit in the stable release. It should be a patch against the development version. So I think I'll have to do all the work again! Oh well it should be easier since now I've done it once already...
uac01.wad
"TEI TENGA" is a small map utilising Boom features that was released a few years ago. Somewhat suspiciously it was released mere days before another wad with the same name, a multileveled partial conversion for ZDoom, which at the time was highly anticipated. Whether this is pure coincidence or a clever troll is something that is lost to the mists of time.
The map itself is pretty easy. There are no large monsters, although resources are fairly scarce and I came close to dying especially in the initial parts of the map. It is mainly noteworthy for its visuals. It is full of glowing lights, scrolling walls, and huge gaps in the floor that aren't really gaps, you just walk on thin air instead. That was most disconcerting. There is one secret which you will only find with a lot of luck, or foreknowledge (I needed an editor) However I rather liked the view outdoors; if you look carefully there is a radio mast, with one of those red flashing lights to warn low flying aircraft, on top.
In summary this is a simple map that disguises its simplicity with abundant use, even overuse, of Boom specials and crowded texturing.
CAT HAS TROPHY
Whenever I see the word "catastrophe" I think of an old Korky the Cat story from The Dandy where a newspaper editor wants his reporter to find "a disaster or a catastrophe" and the reporter finds Korky winning a snooker competition, thus creating a pun so horrible it could engulf the entire world!
Please don't let it be the hard discs!!
Okay so if you're reading this it means my site's back up, which is a relief. I know it says at dog that I will put a note there in case of loss here but a) often I can't update there because I've lost connectivity here and b) I can never be bothered anyway.
Here's what happened: caco (the server) suffered some form of hardware failure some time in the early hours of Wednesday (14th) I didn't notice right away but around 3pm Wednesday I noticed a load of slowdown and weird noises. I looked in the logs and found them full of DMA errors and blah and I thought "oh hell not the hard discs"
I immediately tried to copy stuff off of caco onto spare disc space in baron (the desktop) Unfortunately that only got so far before baron froze up due to NFS and caco became unresponsive too, doing nothing but spewing "interrupt lost" messages over and over again. I think at this point I decided there was nothing else to do other than risk horrible data loss and press the reset buttons.
However, it seemed that both discs had refused to work in DMA mode but returned perfectly good results from smartctl. Also I had found access to caco's rarely used CDROM drive wasn't working either. Two hard discs and a CDROM all failing at the same time I thought was quite unlikely, I figured it was more likely to be the thing they're all plugged into, that is, caco's motherboard.
I put caco's discs into baron and booted baron from a live CD I still had from a few months ago, and aside from fiddling about to get LVM to work, the drives seemed to be fine. That was somewhat of a relief. However I tried caco again and it was totally refusing to even power up, I'd turn on the PSU and press the power button and the cpu fan would spin for a fraction of a second and that was it. I removed everything except the CPU from caco's motherboard and tried again, same result. I gave up and went to sleep.
I was quite miserable and it took half of Thursday (15th) to be bothered to work out what to do next. baron relies rather heavily on caco to be a firewall and file server but fortunately still has a dhcp client on it, so having disabled a number of services I plugged the modem in directly and managed to get it online. However having no access to my home directory - it's a good thing I've yet to get round to centralising the passwd database, else I wouldn't have been able to log in at all! - left it looking bare and spartan and frankly alien, and having gone to ebay and found a replacement motherboard (somehow managing to avoid my usual need to think about any purchase for at least a month before making it) I gave up again and switched it off.
Not even sure that buying a replacement motherboard was the right thing to do I wasted the rest of Thursday and the entirety of Friday watching some of the collection of stupid films I've carefully recorded off the TV over the years.
Saturday (17th) began with a pleasant surprise - the package arrived several days before I thought it would, indeed I didn't know they did deliveries on Saturday. The woman driving the post office van asked me how long I'd been growing my hair, which was nice. I took the new motherboard upstairs and eventually managed to fit it. This wasn't quite a trivial task. I really hate CPU heatsinks. This one wouldn't come off. I could only lever it off by removing the fan from the top first to get it out of the way. Oh well. Fortunately though I had some thermal grease but probably made an awful mess of my first attempt to apply it. I took the opportunity to switch out the 600MHz processor for baron's old 800MHz, something I'd been meaning to do for ages, and also I put the metal back plate back into the case (I'd pulled it out in 2003 because it blocked access to the motherboard's on-board ethernet, but I don't need that now since it has two network cards anyway and some of the dust inside the case looked a lot like cobwebs and how stupid is it to lose a motherboard because a spider has laid its eggs on it!)
Well obviously this has a happy ending because here we are, but just to spell it out, I put everything back together, turned it on, and it booted apparently fine. Having edited a few configuration files to deal with the inevitable reshuffling of the numbering of ethernet devices that Linux always does when you mess with them, it's all working fine. For now. I hope.
Casualty list: One drum and bass show I didn't bother to record, a few files in /tmp I didn't care about, my uptime, and my external IP address (I don't like the new one!)
I guess I need to source a few redundant replacements and keep a parts bin of bits of hardware to swap in in case anything fails suddenly again in the future. But like I keep saying, I'm just glad I didn't lose any data - I have backups now but if both discs in the server fail simultaneously I'm still just as screwed...
"The England and Wales Cricket Board has provisionally booked Trafalgar Square for next Tuesday"
Didn't the Labour party do something like this just before the 1992 general election..?
ZIPS3
It's been ages since I did some maps reviews so here goes:
Inside Of The Gray [sic] Building We start with a tiny map, in which you battle your way through some corridors in a techbase/processing plant. It is very reminiscent in style of the work of Pablo Dictter; flat (not many height differences), detailed, but cramped and linear. Unlike Dictter's work though this thing is extremely difficult. There is next to no health, very little ammunition, and hardly any room to move. So in spite of there being only a couple of dozen monsters, I've not known many maps that were so nasty.
Half-Life Demos enthusiast and archivist Opulent made this which he described in the text file as "I think it is a fun map that very weakly imitates a half-life episode". I've never played half-life so I don't know, but it is fun. There's a theory that says demo runners make the most entertaining maps, because if you're going to play a map 86 million times to shave a second off the exit time, it'd better be a fun map to repeat! And while this map doesn't look like much - the corridors are all pretty much the same, it's mostly at full brightness, etc. - it's stuffed with small monsters to mow down and is indeed good fun. Don't ask me why there are two yellow keys and any number of red doors that don't go anywhere and for which there is no key, though.
The Machine This is a simple and easy industrial map. It doesn't look much, there are few monsters, and the theme varies somewhat. It's not bad, but it's not great. I think it could do with a bit more effort. Still I didn't hate it and played it a few times. There's a berserk hidden quite near the start so practise your punching skills.
Superfly There was a record around a few months ago that went "SUPA FLAA SUPA FLAA SUPA SUPA FLAA FLAA" and whenever I see this map's name I get it in my head. That says nothing about this map, which dates back to 1996. It's meant for co-op which explains why there's two ways round many of the rooms. Each area seems to have a completely different theme, although they are self-consistent it's a bit ugly going from tech to bricks to slime-filled stone passages. It has one puzzle that seems to require two players to complete, but it only stops you getting 100% items which most people don't care about. There's a stupid trap at the end which probably only makes sense if you're playing two-player, it made no sense to me. In summary it's a mid-nineties co-op map, small and easy, made by people narcissistic enough to put their faces onto wall textures. What more can I say? I played it a few times and considered making a demo for it but I couldn't be bothered.
Outahere Ah, now, this is good. The text file says you're the last remaining member of a squad dropped onto an island and you have to escape. Island roughly translates into rockery and large expanses of water under a starry sky. There are some good graphics replacements here, tree sprites, a double chaingun, etc. although I don't think the author made them. There's some fantastic scenery punctuated by tunnels. You start on a tower looking towards a fortress, go around and through a cross-shaped building which is a bit like the Y-shaped building in Doom's E3M6, and eventually escape on a rowing boat. The author has a funny way of doing deep water, though, instead of using self-referencing sectors like most maps he just misses off the lower textures so it all looks a bit weird. As for gameplay the start is quite hard if you don't know where to go but apart from that, and one of Doom's most feared enemies, a free-roaming archvile, it's all pretty easy. Tips: don't pick up the box of shells in the corpses room and when you get to the second big silver block, check more than one side for switches. I would recommend this map.
Rock Isle This is a two-map set which appears to be a sequel or at least related to Outahere; it's by the same guy and has the same style and extra graphics. It doesn't seem quite as good, though, somehow. The start of the first map is good, you have some waterfalls and a river and lots of rock formations, and it's all nicely open. But then there's a bunch of cramped tunnels and a second flooded cavern, and I didn't jump down into it before I pressed the button that raised its level up, so I ended up not being able to get 100% kills and it annoyed me. It goes on through this temple that's full of revenants, and finally you jump across a chasm, to a door and the map exits. I don't understand why there's two secret areas with chainguns at the start and going in one stops you going in the other one, though. At least one of them isn't marked as a secret so you can skip it, but I spent ages trying to work out how you open this door, when in fact you can't.
The second map starts on the other side of the chasm you jumped over. This one is much more like a big temple. There's quite a nasty trap at the start, where you see the blue key high up on the top of a fountain. However you firstly need the yellow key to get into a side tunnel, then through some caves, eventually reaching a rooftop altar surrounded by many torches of many colours. I think this bit looks ugly, I don't like lots of coloured torches at once, they clash. Eventually you return to the fountain, which has now switched off, giving you the key you need to escape. You trek down the side and reach a doorway into a cave, at which point the map ends; it strongly suggests that there is a third map to come, and indeed the text file says there is meant to be a third but it was never made. This type of thing is always a bit of a disappointment, but nevertheless I enjoyed these two maps and I think you should play them.
Home of pirates, drunks, and whores!
You know I never got what that stupid episode was about until recently! Although I have a very clear memory of sitting in my flat bitching about how totally wrong the "a stranger is a friend you haven't met" line is in my first first year as far back as 1998, so I guess nothing ever changes
Test-o-rama!
Pretty much on a whim yesterday I decided to convert this site's backend database from bdb to sqlite. No don't ask me why, I think the reason was to make it easier to get the proper last modified time, but I still haven't done that yet. Anyway, if it breaks and you get a 500 Internal Server Error then that's why.
Of course I did all this editing on the live server instead of a test server like I should but I don't have a test server! That's why snafu's been detecting fake updates and so forth. Fortunately the changes to the weblog module worked first time so I don't think anybody would have seen anything odd but on the other hand who cares?
Hurrr let's put everything we can into a database
For example, the entire directory of apache access logs. Using this humorously unintelligible string of characters
/^([\d\.]+?) (\S+?) \[(.+?)\] (\S+) \"(.+?)\" (\d+?) ([-\d]+?) \"(.*?)\" \"(.+?)\"/
and a bit of post processing. Don't try to use that on normal apache logs though because I changed my logging output format just enough to break all these fancy log file analysers!
I wanted to run some statistics generation after somebody on Planet Debian was complaining about MSNBot being a bandwidth whore and I've noticed how prevalent it is in my logs too and I wanted to find out just how much. Thus, the top ten bandwidth whores in my server logs are as follows:
| Bandwidth (MB) | User agent string |
| 130.499855995178 | msnbot/1.0 (+http://search.msn.com/msnbot.htm) |
| 49.4149570465088 | Mozilla/5.0 (compatible; Yahoo! Slurp; http://help.yahoo.com/help/us/ysearch/slurp) |
| 27.0880346298218 | Googlebot/2.1 (+http://www.google.com/bot.html) |
| 26.2569932937622 | Mozilla/4.0 compatible ZyBorg/1.0 (wn-14.zyborg@looksmart.net; http://www.WISEnutbot.com) |
| 18.8409118652344 | Mozilla/4.0 compatible ZyBorg/1.0 (wn-13.zyborg@looksmart.net; http://www.WISEnutbot.com) |
| 14.7500219345093 | Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html) |
| 11.6859331130981 | Mozilla/2.0 (compatible; Ask Jeeves/Teoma; +http://sp.ask.com/docs/about/tech_crawling.html) |
| 9.41157245635986 | aipbot/1.0 (aipbot; http://www.aipbot.com; aipbot@aipbot.com) |
| 8.2594518661499 | Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1) |
| 7.677978515625 | DTAAgent |
So yeah, it's a whore all right. Also I could complain about how stupid user agent strings are but not today. Hell's bells, I love statistics so much! However the SQL line took ages to work out because I am a SQL noob so here it is for posterity:
SELECT sum(size)/1048576,useragent
FROM access
WHERE method like "GET"
GROUP BY useragent
ORDER BY sum(size) desc
LIMIT 10;
I suppose I could have done the query in perl, but I supposed that it was faster to do the slow grunt work of parsing the logs and caching them in a database one time only, then running sql queries afterwards because that's what they're for! You could even put in an external logger into apache to write logs into a database to keep the thing updated in real time but the hell with that!
This update had far too many exclamation marks in it and as a result sounds really over-excited!
Haha check this out I just found this easter egg:
# nmap -v
Starting nmap 3.81 ( http://www.insecure.org/nmap/ ) at 2005-09-01 21:50 BST
Happy 8th Birthday to Nmap, may it live to be 108!
No target machines/networks specified!
QUITTING!
So cheers to nmap, jeers to the moron at 202.155.224.86 who just tried to brute force my sshd, and beers for the guy in a datacentre in New Orleans who managed to keep the forums up, despite a hurricane, for so long.