Showing posts with label Randomizers. Show all posts
Showing posts with label Randomizers. Show all posts

Sunday, July 7, 2013

Time to trim the fat.

Though my week off from work is almost at its end now, I haven't had much time to enjoy actually playing any games.

The week began with me ready to once again immerse myself in Oblivion, only to discover that one of the mods I was playing with (which still remains unidentified, by the way) was making the game instantly crash to desktop whenever I attempted to remove a specific vanilla item from defeated enemies. I could systematically open each active plugin with one of the editing tools and look for anything modifying that item, but instead I first chose to try the process of elimination method and in the process somehow borked the game so that now I can't even start a new campaign.

So I decided to turn my attention to one of my old favorites, classic Doom -- more specifically, Doom run with the source port GZDoom. With the latest version of my favorite source port I had only been running the game for about 45 minutes when suddenly the framerate deteriorated so drastically that I could progress no further. So what's the first thing I do in this situation? I go make a fool of myself in their bug report forum, of course. After a bit of posting and simultaneous testing, I came to the conclusion that there wasn't anything wrong with the source port but instead that the problem was somehow being caused by the mapset I was trying to play. So I switched to another megawad and, by the third map of the set, the framerate again went to crap -- worse, whatever is causing the problem is apparently preserved in the saves so restarting the executable in hopes that the issue will clear out of the RAM and GPU is ineffective.

I've read that the openGL support of AMD/ATI/Radeon video cards is becoming increasingly atrocious with each new series of GPUs they release, so I began to investigate further along that avenue. I tried several different versions of the drivers for my current video card, to no avail, then I went so far as to actually pull the hardware out of the tower and stick my older Radeon GPU back in. Still the problem persisted. In the end I decided that if I was going to get to play the game at all this week I'd have to switch to ZDoom, which is of course the source port that the openGL version is based upon.

But that wasn't the end; when things on the computer go good for me they go great, but when they go bad they go straight to hell in the proverbial handbasket.

I was playing Armadosia with ZDoom and by the time I was halfway through the second map the framerate again went straight to crap. WTF? It's not even openGL! I've been playing games like Oblivion at 1600x900 resolution with the details maxed! This should run like a racehorse! WTF?

I was only running the game with one other mod. The mod had never given me any trouble before so I had by default ruled it out as a possible cause of the issue... but just for the sake of being thorough I decided to disable the mod and launch the game one more time. Without that remaining mod the game ran without the slightest stutter, even in the openGL version; with the mod enabled again the stuttering returned and soon the game was unplayable. Anyone care to guess which mod was causing the problem?

Herculine's Doom Upgrade.

Now my critics can rejoice; my randomizer mod actually does make the game unplayable.

This of course has me very frustrated. I've been developing the mod and playing with it for over two years now and have never had such issues until now, though during that time the mod has steadily grown in its size and scope. Apparently it has finally reached a size where the source port engine can no longer handle the amount of information that needs to be processed, even if I enable the executable to take advantage of all my system's RAM. Again my critics can rejoice; all along they've said that the mod has too much stuff in it and now it seems that they're finally correct.

Readers familiar with ZDoom modding might ask: "Herc, what if it's just one item that you've recently added that's causing the problem?" While there's always a slim chance of that I suppose, I doubt that it's likely because the coding for all these things is basically the same. When something goes wrong in said code usually the worst that can happen is a sprite won't show up when it's supposed to or a monster won't do something when or how exactly it was intended. I really don't see how one could code a single monster or item to produce such a drastic impact on the graphics processing unless it simply had a ton of visual effects crammed into it, and even then the problem would have been abated by adjusting or even totally disabling the openGL options as I did while I was trying to locate the problem. Also, I think it would be safe to assume that the bug would only manifest itself when said object was actually spawned in a map, while this bug is persistent as long as the mod is active in any case. The only conclusion I can reach at this point is that the issue is the result of the sum of all the parts; too much data is being loaded at one time to be processed.

Thus the title of this post. The only option I see left to me at the moment is to create a version of the mod in which the content is at least halved. The easiest way I can think of to do so is to start a new mod from scratch and systematically add to it only the content that I refuse to omit and then work from there. That's not as bad as it sounds, though; in a way my critics are right in that the mod does contain some things that aren't really necessary. For example, of the array of weapons that are in the current version I only actually ever use about half of them, so logic dictates that I should only keep about half of them. Perhaps there really isn't any need for four different kinds of shotguns, after all. The list of monsters and power-ups that won't make the cut will likely be long in the end; things like the Time Imp and the Time Freeze Sphere, for example, are really cool but they depart from the original gameplay style drastically enough that they can be cut without really detracting anything from the ultimate purpose of the mod. Time to trim the fat.

However, fans of the mod up until this point need not despair; I'm not throwing it away. It will remain here in my DropBox folder, patiently awaiting the day that a version of the source port will be developed capable of handling it smoothly. But in the meantime, I'll be diligently working on a "lite" version of the mod and when it's ready for release you'll hear it here first. Until then I'll either have to play "vanilla" Doom or just go back to another game; hopefully the game I pick next won't be a crash-happy mess as well.

Saturday, October 13, 2012

Development and Testing

Until now I've kept revisions of my infamous Doom Upgrade mod to myself until I've felt they were worthy of an official release but today the fancy struck me to try something different this time. I'm still working on what tentatively will be called the second edition of the mod and, while I don't feel that I've accomplished everything that I want to do before calling it a final release, the current version is very much playable and I have already made enough changes to it that in many ways it is quite different from previous versions. Thus I'm going to post a link to the current version of the mod here and, if you few readers of the blog feel inclined to do so, you can download it, do some beta testing of your own and give me feedback here. This time instead of suddenly getting a new version thrown at you from out of the blue you can let me know what you think of the development thus far and even make suggestions as to what you'd like to see in the mod in the future. So, without any lengthy descriptions of what you'll be getting yourselves into, here's the link:


This is a direct link to my DropBox file, which gets updated whenever I feel I've done enough editing worthy of saving. It's a work in progress, but at this point I think the only new additions will be monsters, brightmaps and such so the file found here should always be totally playable. Enjoy (I hope)!

EDIT:

Oh, I forgot...

For any newcomers, this mod requires either ZDoom or (preferably) GZDoom and of course a licensed Doom IWAD. I also recommend a launcher and a custom music WAD.

Friday, May 18, 2012

ANNIVERSARIES

The month of May has marked the one-year anniversaries of not only KMX E XII's Doomed blog and my own little blog here, but also the first anniversary of my Doom Upgrade mod's induction into the hallowed halls of DoomWorld infamy on May 18, 2011. What better way could there be to celebrate this auspicious occasion than to release an Anniversary Edition?

I know someone in the crowd is doing a facepalm and groaning: "Oh jeez, another new version?" Rest assured that I kinda feel the same way, but I've made some much-needed tweaks this time so it was necessary even without the new content. More about that new content after the lengthy official trailer video...



MONSTERS

What Anniversary Edition could be complete without at least a few new monsters? Besides, I couldn't resist when I saw that new content is still being added to the Realm667 Repository despite the whining opposition spewing forth from the Doom community. I hope to see Realm667 continue to prosper.

The Weakener
This guy is a Cacodemon variant that has a very unique attack. Unlike other projectiles in the game his do not dissipate after impact, instead remaining wherever they struck until some unfortunate Marine comes into contact with them. I'd hesitate to call them mines, however, since they don't actually explode; instead they work exactly like the power-up orbs in the game except that they are power-downs that temporarily weaken the attack damage the player inflicts. Not so much deadly as he is an annoyance, the Weakener is still one monster that you don't want to let hang around for too long or you could find yourself surrounded by Weakener Orbs.

Augmented Arachnotron
Also known as the Arachnotron MK2, this guy is only special because he has a double-barreled plasma canon instead of a single like his little brother. He also seems to have thicker armor plating. Just a tougher variant to help keep things interesting.

The Time Imp
Now here's a nasty little bugger. Not quite as nasty as the Cheshire Cacodemon's, his time distortion is more like an annoying stutter rather than a full stop and you might think you're having GPU framerate issues when he's doing his thing. His manipulation of time also lets him run around pretty darn fast and gives him another special ability that I'll just let be a surprise. Like the Cheshire Cacodemon, I've set his spawn rate ratio rather low (1%) to hopefully keep any random room full of Imps from becoming a total nightmare.

The Satyr
Hell really isn't complete without some goat-hoofed Satyrs, now is it? This guy has actually been around for a while but I never used him in the mod because he doesn't have anything flashy or exciting, just a simple melee attack. Then I realized that, even though he doesn't look like them, he'd fit in perfectly balance-wise with the Pinkie Demons. He does a little more damage, though, so I've set him to only appear amongst the more difficult Spectres.

Azazel
Fitting in style-wise with the Satyr and the Obsidian Statue, Azazel has a number of dangerous attacks, some of which are of the "seeker" variety. He's actually kinda tough, so he'll only appear amongst the Mancubi. Some players might think that Azazel and the BruiserDemon are too tough to be thrown in with the Mancubi or that their 10% spawn rates are too high, but there's a method to my madness. When I first played "vanilla" Doom II one of the monsters that frightened and challenged me the most was the Mancubus, but they've since become a bit boring to me. Thus I simply wanted to have some scary monsters in their ranks again. If no one's figured it out yet, this mod is designed primarily to present not only variety but also new challenges to experienced players.

I've also made a few tweaks to other monsters that were already in the mod, perhaps most notably the boss monsters. The general consensus seems to be that they are too difficult, so now when each one dies it will leave behind a randomly-spawned power-up sphere of the megacharge variety. Previously I had done this with only a select few bosses, but now I've added the item drop to all of them. This might not seem like much of a boon if you're playing a single level with a boss at the very end, but in custom maps where authors have placed multiple bosses throughout the level it should be rather helpful.

For a long while now I've observed that the Shadow Beast often gets "stucked" in alcoves where a map author has placed Revenants. He wasn't rendered totally useless since he could still throw his green projectiles and spawn his little Shadow buddies, but still he was just kinda stuck there doing the Running Man. To hopefully eliminate this issue, I've set his height and radius values to be the same as the Revenant's. This doesn't change how large he appears in the game, just how large the game engine perceives him as being so that he should be able to move around more freely now. Just for GP, I made the same adjustments to the Archons as well.

I've reduced the spawn rates of the Cheshire Cacodemon, Time Imp, Dark Arch-Vile, Death Incarnate, Cybruiser, Golem and the Malevonant to hopefully make things feel more balanced. I've found that the Cybruiser's Seeker Bazooka can be a bit oppressive and the Death Incarnate's constantly resurrecting himself can be quite bothersome if I haven't found the Seeker Bazooka yet. The Malevonant isn't so bad by himself, but once he starts spawning those invisible Nightmares a room can get crowded rather quickly. The Dark Arch-Vile can seem like he's invincible when he's throwing his black hole attack around, but rather than give away the secret of the uber-easy way I've found to defeat him I simply reduced his spawn rate as well. I've also slightly reduced the damage dealt by the Railgun Sentries because those suckers turned out to be a lot more dangerous than I had originally intended them to be. Now they can also be looted for a plasma cell.

For a long while now the attack of the Beam Zombie has not matched the attack of the Channeler gun that you get from him. This was largely due to laziness on my part, but now I've rectified the issue. This makes the Beam Zombie a bit more dangerous perhaps, but you may note that it takes him a few seconds before he can "lock on" and that delay will hopefully provide enough reaction time for more casual players.

I've re-sorted the spawn lists for the Hell Knights and the Barons of Hell; previously there were a few creatures that were in one list but belonged in the other and vice-versa. Hopefully this will help maintain the gameplay difficulty balance that my critics say I've never attempted to achieve.

No longer to be seen are the Hell Warrior and the Imp Warlord. Not entirely due to some gentle persuading, I've decided that they really aren't Doom-style monsters and I've got plenty of monsters as it is. I kinda like them though, so I simply removed them from their respective spawn lists rather than totally deleting them from the WAD (just in case I change my mind about them later). Maybe they'll appear in Herculine's Hexen Upgrade...

There's at least one more new enemy this time around, as well as more changes to a few that we already know and love, but mention of those will have to wait until I cover the new weapons farther down the page.

POWER-UP ARTIFACTS

Only two new ones this time around. I've dumped most of the various bouncing spheres into the spawn slot that randomly replaces the Partial Invisibility Orb, so adding too many more could make it almost impossible to ever get some of them. Despite what my critics might say, I prefer variety rather than overkill.

Oh, and I actually remembered to copy those Megasphere sprites so it's not invisible in Ultimate Doom now.

Guard Sphere

This handy power-up temporarily reduces the damage the player takes to 25% of the norm. I thought this would be a good companion addition to the Weakener monster.

Haste Sphere

If you can't tell by its name what this one does, there are a few D&D games I'd like to recommend to you. With things like the Cheshire Cacodemon, Time Imp and a TimeStop Sphere already in the WAD, this one seemed like a logical addition.
WEAPONS

Well, we can't have an Anniversary Edition without at least a couple of new weapons, now can we?

Fusion Canon
I came up with this one while pondering how to give our favorite Marine an attack that was in some way similar to the spread of pink projectiles launched by the Fusion Canon Arachnotron and that we should be able to loot just such a weapon from his corpse. Rather than a single projectile the Fusion Canon launches a burst of five projectiles, making it a useful weapon for anyone who has less-than-perfect aim. It also seems to be pretty good for clearing soldiers out of corridors.
Ice Canon
The rare few among you who have been following this project from the beginning may recall that in the original version I had included an Ice Rifle, an Electro Gun and a plasma Repeater. In subsequent versions these weapons were removed because I either didn't like the way they looked or the way they performed (or both). As the year has passed the mod has acquired a few monsters who have the ability to freeze the player solid, so it seemed only fair to reintroduce some sort of freeze weapon with which the player could return the favor. Unlike the relationship of the Fusion Canon to the Fusion Canon Arachnotron, it did not make sense to me to have the weapon dropped by any of the monsters currently possessing such freezing attacks; thus it was also necessary to bring back the Freezer Gun Zombie. Now you can once again fight fi-- er, ice with ice.
Flamethrower
Speaking of fighting fire with fire, I have decided to in a way cater to the masses a bit with this one. Now the Pyrotron (my custom Arachnotron variation) can be looted for a flamethrower. Originally I did not include a flamethrower in the mod because my goal has always been to make the mod as versatile as possible in its compatibility with other PWADs. As any weapon aficionado could tell you, as a rule flamethrowers are fueled by some form of combustible liquid; the flamethrowers in the Realm667 Armory for the most part adhere to this rule. This means that for them to be of any use in any given map, that custom ammo type would need to be added to each map the flamethrower would be used in. Thus having such a weapon in the mod would be totally contrary to my goal of making the Upgrade as widely compatible as possible. However, I know there are players who would enjoy using a flamethrower in the game, so this time I've included one that somehow converts plasma cell energy into conventional flame. The same weapon aficionados I mentioned earlier will surely complain that it's not at all realistic to have the flamethrower use plasma cells for ammo; I'd just like to remind those fans of "realism" that Doom also contains a chainsaw that has not run out of gas once in almost twenty years. (Or I could be really cruel and modify the chainsaw to run on plasma cells as well. Nah... the chainsaw has always been there for when we run out of ammo; such a modification would indeed affect the gameplay balance and my critics would cry like babies.)

(Just one word of caution: be careful with the flamethrower in confined spaces. Its fire can hurt us as well.)
Other weapon tweaks worthy of note include the return of the two-fisted sub-machine guns, if for no other reason than they look cool and this makes them feel less like a redundancy. I've also removed a few frames of animation from the Skulltag Minigun; I almost never used it because the painfully long pause before it could re-fire made me feel crippled and I longed for the old vanilla Chaingun. Now the Minigun feels less like a burden and more like the classic weapon it's meant to replace.

Things I didn't/couldn't do:

I still can't figure out how to keep the player from picking up the Armor Shards and MegaSpheres when they are not yet needed. But that's the way those items behave in the vanilla game so it's not a big deal I suppose.

Something that would serve no practical purpose yet in my opinion would have been really cool to see would have been including all the custom creatures in the monster roll-call at the end of the games. I've learned that such a feat can indeed be accomplished using MAPINFO to create a custom intermission, but as far as I can tell to do so would not be practical since in the end I would need to make a separate MAPINFO lump and thus a separate copy of the mod for each IWAD. Also, such MAPINFO lumps likely would interfere with any sets of custom maps also using MAPINFO. So, in the interest of maintaining the mod's flexible compatibility, such a superficial feature will not be included unless I can devise a better or at least alternative way to do it.

DISCLAIMER

I'm pretty sure that's everything I've screwed up this time around. Enough stuff has been altered in this version that I think it's safe to say saved games using previous versions will be incompatible. If you've got a game to finish you might want to do so before unzipping this file as it will of course overwrite any older versions of the mod.

And just a note to the naysayers who claim that the mod has never been tested at all: I'm currently using it to play through Nicolas Monti's EVILTECH and so far have found no bugs... just demons.

DOWNLOAD LOCATIONS

The current version, Herculine's Doom Upgrade: Anniversary Edition, can be downloaded HERE. Alternatively, it can also be downloaded from the DoomWorld/id Games Archives.

ENJOY!

EDIT: 05/21/2012

A Neko's Work Is Never Done...

While playing this morning I encountered a CyberDemon variant who upon dying dropped something like half a dozen SoulSphere/LifeSphere power-ups. Obviously that was not what I had intended to happen, so it was time to once again open the WAD in an editor. I won't bore you with all the technical details of what caused the bug or exactly how I fixed it, but suffice it to say that the bug resulted in some proactive tweaking of all the boss monster that has remedied the situation. It was in a way a fortuitous bug because the code command I discovered to fix it also enabled me to now add plasma cells that can be looted from my RailGun Sentries after they explode. That same bit of code (I think) could be used to create monsters that spawn other monsters when they die or even monsters that infinitely respawn even though the game is not set on the NIGHTMARE difficulty... but that's a particular bit of nastiness that I think I'll save for the Second Anniversary Edition or maybe a special Hardcore Edition...

EDIT: 05/24/2012

I didn't notice this post on Realm667 until after I had put what I thought was the finishing touches on all of this, but apparently many (if not all) of the monsters in the Beastiary are getting brightmaps added to their files. This includes many (but not all) of the monsters in my little Upgrade here, which means of course that you still haven't seen the final version of the mod yet. But don't do another facepalm just yet; it'll likely take some time for them to get all those brightmaps done and for me to in turn add them to my mod, so you won't be seeing another post about a new version being uploaded until I feel I've added enough new content to warrant it. As a result of this news I'm also in the process of converting the WAD to a PK3 file, which has the potential of giving me the chance to experiment with some new ideas I'm not going to reveal just yet...

Saturday, May 12, 2012

667 Shuffle

It's often said by my critics that all I do here is talk about how my mods are better than everyone else's... despite the fact that none of those critics has yet been able to point to where I've actually made such a claim and despite the fact that I present to my readers for the sake of comparison the mods of my competitors, like Aeons of Death. It has also recently been said that people would rather play Doom with Scalliano's 667 Shuffle than with my Doom Upgrade. Thus I present a look or two at Scalliano's 667 Shuffle so that you all can make your own choices without any coercion from me.

Friday, May 6, 2011

More Than I Can Chew?

I'm not going to say that I'm an expert Doom player; no, I have my good and bad days like everyone else. But when it comes to "vanilla" Doom and the original IWADs, I can tend to get bored just like anyone else. Some gamers have told me that Doom is too repetitive for their liking, and in the case of maps I've already played through several times I have to agree. Without cheating, I can generally complete the average Doom map with health, armor and ammo all maxed, or at least very close. Sometimes when playing on the default difficulty settings I feel a bit like Neo in The Matrix; the enemy projectiles seem to move so slowly that I just casually step out of the way and keep firing. It's because of this that I rarely play the original id releases these days; I'm experienced enough that I simply need something more challenging.

Being a modder as well as a player who loves the game, I'm always looking for ways to mod the game to make it even more enjoyable. Thus I started investigating how to add new and more challenging enemies to the game to help keep it interesting.

As its name implies, Snarboo's Doom Monster Randomizer for GZDoom adds unpredictability to those classic Doom maps we've all by now memorized inside and out. Yet it doesn't just shuffle around the existing enemies; it also adds to the game some rather interesting new variations of those monsters taken from the Realm667 Beastiary. I've tried similar randomizers by other authors, as well as the resources from ScoreDoom and SkullTag, but in the end I don't like them because they're way too "over-the-top". What I mean by this is that they add things that IMHO don't feel like they belong in Doom, like flying spell-casting wizards from Heretic or Hexen or just silly things that simply annoy me like the zombie soldier who zips around on a Segway scooter and tries to run over you with it. Many players will disagree with me and rave about how great these other add-ons are, and that's fine if that's what you like. I simply prefer to have new content added without making it feel like I'm playing a total conversion of the game.

I'm not going to describe here every monster included in Snarboo's mod, but I do want to mention some of the most noteworthy ones that have prompted me to choose it over other similar add-ons. Overall they tend to make any given map more difficult than it's author perhaps intended, but in the cases of maps I've memorized and become bored with that's really the whole point. These aren't just recolored or semi-transparent versions of the default monsters; they have new, unique and deadlier attacks that definitely increase the challenge level of even the tamest levels. I should also mention that, like the following image of the Flesh Wizard, my screenshots here really do not do the new creatures justice. Seeing them in action and actually trying to fight them is where they are truly the most impressive. Besides, anybody who loves Doom already knows that it's all about the gameplay experience, not eye-candy.


The Flesh Wizard mutters something unintelligible and zips around so quickly that you'll only have a split-second to target him; he becomes invisible while doing so and reappears just long enough to throw a fireball at you and then takes off again.


Soul Harvester Imps throw flaming skull projectiles that, like the missiles of the famous Revenants, will follow you around corners quite persistently, though they can be eluded. Stone Demons (not pictured here) explode when they die, causing you extra damage while the little pieces of them bouncing around will also inflict damage. Cyberbarons have rocket-launcher arms like their big brother the Cyberdemon. The Tortured Soul is a version of the Pain Elemental that, rather than Lost Souls, spits at you a lingering toxic green cloud and when he is killed more of this green gunk will spew forth to damage you if you're not careful. I could go on, but surely you're getting the idea; new versions of the monsters with new deadlier attacks.


So, why did I title this post the way that I have?
After recently sharing Snarboo's mod with one of my avid readers, I decided to crack it open with an editor to see if I could make heads or tails of its inner workings; I am a modder, after all. Well, while I don't understand enough of it yet to draw up something similar of my own from scratch, I did manage to figure out how to change the frequency of the spawns and even how to replace some of the monsters and add new ones as well. So I popped on over to the Realm667 Beastiary to see what Snarboo had left out of his little collection. That's where I may have "bitten off more than I can chew", as they say.


To make a long story short, now I've got in my game monsters with projectile attacks two or three times faster than the normal attacks, soldiers with super shotguns that will blast a sizable hole in me if they catch me off-guard, jumping Demons and Demons with projectile attacks, self-resurrecting Revenants with laser attacks, semi-invisible Cacodemons with me-seeking projectiles, things that throw meteors or shower flaming spheres down upon me... again, I could go on and on, but you get the idea. Snarboo's mod was a good start by itself, but now my game has suddenly gone from predictable to hard-core almost over-night.



Now I'm no longer finishing levels with full health and maxed ammo; now I end each level wondering if I've got enough stuff left to be able to survive starting the next level. Now I find myself peering timidly around dark corners, praying that there will be a medkit or some ammo there, or in the very least one of the default monsters I'll be able to handle without getting reamed. I wanted more challenge and unpredictability... but maybe I should have been more careful what I had wished for...



So, if you're one of those players who enjoys Doom but has found that it has lost some of its thrill, do yourself a favor and grab Snarboo's Doom Monster Randomizer. And if you're inclined to be like me and want to try to make your own monster randomizer, visit the Realm667 Beastiary where they have a wide variety of new monsters in both the Doom and the Heretic and Hexen styles. I think I've found enough variety there to keep myself Dooming for quite a while longer.