Wednesday, July 31, 2019

Sic transit Moria

I’ve had enough of this game.

It isn’t, as one might expect of early CRPGs, excessively frustrating. Even though death is permanent, I never once died in combat. I only had even one close call, near the beginning.

The problem is that Moria is boring. This is by far the biggest PLATO CRPG I've played yet, but it hasn’t got the content to justify its size. There are hundreds of repetitively-designed mazes, each with hundreds of squares to map out, and there’s not much in them to make exploration rewarding. You must map out the mazes as you explore them, and the only things worth finding are the staircases that lead to the next maze.

The game simply hasn’t evolved in several hours of routine. I’ve mapped out boring dungeon after boring dungeon, occasionally getting interrupted by simple combats that I can win without really trying, and sometimes I waited to recharge. Doing this multiple levels beneath the desert is exactly the same as doing this in the wilderness, only without the multiple exits to the city and dungeons to locate. Pedit5 was short enough that it never got a chance to be boring, and dnd didn’t get boring until I was grinding for the dragon. Moria gives me little to do but map out lifeless mazes, which stopped being interesting, and with no end in sight for months, why bother any more?

Before I had even entered my first dungeon, nothing really posed a threat as long as I played carefully. My golden rule had always been simple; once vitality drops below 60, take no risks. If in a fight, end the fight ASAP, whether by running away or by using a fighting technique known to work well against that monster. If not in a fight, then just idle 2-4 minutes until my vitality rises to 100. If I found a chest and had fewer than 60 vitality points remaining, then I’d just wait to regenerate before opening it - you can heal just fine with the chest right in front of you. I sprung a few traps, but none did anything worse than take off a few vitality points.

I’d fought multiple elementals in the wilderness without any trouble. Just a few dungeon levels down, I was routinely encountering Reapers, which were the toughest enemies in the game according to the helpfile. They went down easily with tricks.

I don’t know if the game gets meaningfully more difficult as you descend more levels, but it’s a little hard to imagine. Monster groups get larger as you descend, but you can run from partly defeated groups and return. Supposing I found 10 reapers? I imagine that even at my current stats, I could kill one with a trick, sustain some hits, run, wait to regenerate, and then re-engage the remaining 9 reapers and repeat.

I suppose that in a game this glacially paced I’d rather the combat be too easy than have it constantly kill me and force me to restart. But what I’d really prefer was that the dungeons were reasonably sized, and perhaps the combat a touch more difficult so that I would feel like there’s a risk of dying, and therefore have a reason to figure out optimal battle tactics against each monster type.

I did eventually join the Thieves Guild, once my Cunning reached 20 points.

I’m not really sure why you’d want to deposit money in the bank. There’s no risk of losing money on your person, other than dying. Does the bank bear interest? Is there a limit to how much you can carry? And if so, is there a reason you'd want to hold onto that much money and not spend it right away?

Without an active multiplayer, there’s not much point in posting bond. Speaking of which, you can try to rob guilds that you are not a member of, which I hadn’t tried out of fear of going to jail.

Raising the guild rank would take 40 cunning and a lot more gold than I ever acquired. Perhaps gold and stats come more easily in the deeper dungeons, but reaching them is just too much of a time sink to feel worthwhile.

Transport options are interesting. You can set up a “camp” anywhere in the game, and then teleport to it from your guild. You can also teleport to the location of another player.

Item lockers can store items that your next character may inherit upon your death.

Given that I decided I was done with the game, I decided to try robbing the Union of Knights, just to see what would happen.


No honor among thieves.

At this point, I’m actually quite stuck here. You can’t even return to the main title screen to roll a new character; pressing BACK takes you directly out of the game. Re-launching sends you directly to jail, skipping the title screen. Maybe someday, someone else will play the game, join the Thieves Guild, and post my bail, but I’m not holding my breath. It’s almost forward-thinking, to have actual consequences that you can’t get around just by restarting.

Moria was, according to its developers, mainly influenced by dnd, and given the corridor/room dichotomy only found in pedit5/Orthanc, seems it must have been influenced by them as well. I had done a dndlike comparison last year, and thought this might be a good starting place to analyze the differences between Moria, the dndlikes, and Wizardry.

Dungeon size – There are five very large but finite dungeons. Uniquely to Moria, the levels are divided into blocks that alternate between rooms and corridors (pedit5/Orthanc are superficially similar this way), and also uniquely, Moria has a two-level overworld consisting of a monster-free city and a “wilderness” level which connects the four dungeons.

Goal – No express victory condition, but the helpfile identifies some achievements to aim for.

Gold – For the first time in a CRPG, gold is actually used to buy weapons and armor, rather than just being something you convert to XP. It is mainly found by killing monster. Wizardry was the same.

Dungeon exit – Staircases at the top of the dungeon lead to the overworld. Wizardry was the same, except that the city was a menu screen rather than an area.

Multi-level transportation – Your guild can offer teleportation to a camp or another player. Wizards can teleport right back.

Combat resolution – Realtime you-go-they-go system, with you and your followers fighting multiple groups of monsters. There isn’t really a concept of “rounds,” just a cooldown period after each attempted action by either party. Apart from being realtime, it’s a lot like Wizardry, just simpler.

Stats – Cunning, Piety, Valor, and Wizardry neatly correspond to dnd’s DEX, WIS, STR, and IQ, but are a bit more nuanced in their function, and unlike any dndlike, they increase independently with use.

Classes – As in pedit5/dnd, there are no classes; you have all of the abilities you would expect of a fighter, wizard, priest, and rogue. You may eventually join a guild to enhance one set of these abilities, but this is of no detriment to your other abilities.

Spell system – Resembles dnd, where mage and priest spells are distinct from one another and you may cast all of them from the start. Unlike dnd, spells cost vitality rather than SP to cast, and there’s a much greater emphasis on instant-kill spells than damaging spells.

Monsters – Many distinct monster types, but I couldn’t really determine what distinguishes them. They’re all kind of wimpy, have no tactics except hitting you for small amounts of damage, and before too long, fall quickly to your spells, prayers, tricks, or bludgeoning.

Scaling – The strongest monsters can appear pretty early on. Deeper dungeons have larger maximum monster group sizes.

Random encounters – Some squares in the dungeon are seeded with monsters when you enter, and will be there until you kill them or leave the level. There are no other random encounters.

Stationary dungeon features – Stairs and wells. That’s it.

Graphics – First person wireframe view, anticipating Wizardry rather closely.

Permadeath – Yep

Apart from the graphics, not a lot of this anticipates Wizardry. Quite a few points are innovations on the part of Moria that aren’t common in the genre.
  • Stats that increase as you use them
  • Food and water
  • Guilds
  • Multiplayer exploration – players can break ranks from the blob and explore the 6x6 block independently, but only the leader can decide to leave the block
  • Retaining stored items on player death

There are innovations that do anticipate Wizardry-like games, but also differ greatly from its implementation.
  • A city on top of the dungeon with stores, but consisting of an entire maze level
  • Party-based combat, but optional, multiplayer, and real-time
  • Aging, though based on ingame time rather than actions
  • A store for buying and selling weapons and armor, but the shop operates through barter rules
  • Varied combat tactics, more complex than dnd but simpler than Wizlikes
  • One-handed and two-handed weapons, but with the peculiar rule that one-handed weapons are generally better, but require better stats

And then there are innovations that match Wizardry closely or exactly.
  • The first person perspective, natch. The controls are very similar too.
  • A ‘light’ spell that reveals hidden doors for a duration
  • An inventory system with numerous equippable items, categorized by body part
  • Monster encounters that come in multiple groups
  • Teleport spell (two-way only available to members of the Wizard guild)
  • Gold rewards being divvied up to the party members

Moria deserves credit for its innovations and its legacy, and it should be interesting to compare it to Oubliette and beyond. But it’s the least fun I’ve had in a PLATO game yet. I’m not interested in ever playing it again, and quite possibly can’t.

Monday, July 29, 2019

Moria: O, wilderness

With a city map created and in hand for later use, I prepared to assault the wilderness. I’d need 15 valor to wield even the simplest 1-handed weapon, so I asked the shopkeeper what sort of two-handed weapon I could get for $150 (all I had).

My knowledge of the price system helped out here; it predicted that the club he recommended was worth $82. The shopkeeper asked for $152, even though he just told me it was the best I could get for under $150. I haggled him down to $96. The $54 left over wasn’t enough to buy anything else, so I went into the wilderness via the nearby stairs.

It didn’t take long to encounter my first monster.

Combat is semi-realtime. Do nothing, and the monster will hit you every few seconds. When you take an action, there’s a delay of a few seconds before you can act again, enough to ensure the monster will hit you during this time.

I chose to pray, in order to boost my pathetic piety. Holy Word failed several times in a row, getting my vitality gradually reduced, but Escape worked on my second try, and raised my Piety value to 6. These combat prayers had no vitality cost, except for getting hit in between unanswered prayers.

After the successful escape, I hadn’t moved from the encounter square, and could simply walk off and walk back on, where the leprechaun was still waiting for me. I grinded out two more points of piety in this manner, then fought it, which instantly killed it and raised my valor one point. Throughout this exercise my vitality never dipped below 50 points, and I found a treasure chest with $231 and no traps.

F6 calls for ingame help, -h- calls for players’ help.

This sort of leniency was almost shocking; in my previous PLATO adventures, new characters were at risk of being one-shotted right out of the gates. Wizardry, too, has a well-deserved reputation of early game brutality, albeit one that’s not quite as bad. Here, you’d have to try to get yourself killed against a leprechaun, which is a level 30 encounter according to the helpfile.

On my next encounter, against a giant lizard, I decided to try casting spells to boost my Wizardry stat. A single paralyze spell worked, got me a boost, and an even better reward.

The next encounter nearly killed me.

Manticores are level 55.

The manticore did no more than 9 damage per round, but resisted my spells and prayers, and running failed multiple times. My vitality was 5 when I successfully escaped.

Another monster in this block, an enchanter, fell easily to Holy Word, and dropped a handsome reward worth $2000.

I returned to town and bought some better gear.

An unusually successful haggle.

Broke but better equipped.

Returning to the wilderness, I found that the block I explored before had been re-seeded with monsters, in different places. Few that I encountered posed any threat, so I just continued using whichever battle tactic would raise my worst stat. Holy Word for Piety, spells for Wizardry, fighting for Valor, and eventually tricks for Cunning. On the occasion that an encounter just wouldn’t succumb to my tactics, I’d run once my vitality dipped below 60, and leave that spot alone.

Spells usually didn’t win fights; there are so many to choose from, and each attempt cost over 10 vitality at my level, plus whatever amount of hits the monsters inflict, so I could only try four times at most before running and waiting to regenerate. It was still worthwhile, because even failed spells can raise wizardry.

I did some more mapping, soon found another entrance to the city, and found it neatly corresponded to one of the city exits I had found earlier. The coordinates weren’t aligned on their respective maps, though.

Before too long, I stumbled upon the entrance to the mountains. Soon I started to run low on water, but I now had enough gold to max out my food and water reserves, and enough left over for a shiny new helmet.

On some more exploring and grinding, I killed a zombie, and was awarded a seriously high-end weapon considering the location.

The mace is only worth 5 offense. This bow would cost me over $28,561!

I spent the next few hours completing my map of the wilderness, which was smaller than the city; only 5x6 blocks, compared to the city’s 8x7. That’s still much bigger than a Wizardry level. None of the enemies posed any threat, and I accumulated over $20k through fighting them, which I spent on food/water refills and some new gear.

The Light Armor and Hood are better than the Armor and Helmet they replaced.

My map of the wilderness:

Wednesday, July 24, 2019

Game 83: Moria

Nathan P. Mahney at CRPG Adventures spent nearly eight months playing this game, and declared victory after finding the Reaper’s Ring buried 50 levels down in one of the game’s five dungeons. I very much doubt I’ll dedicate that kind of effort and time to this game; my only goal here is to appreciate its role as a precursor to Wizardry. But you can read his chronologue on this Herculean labor, starting here:

Moria is the third PLATO CRPG that I’ve played so far, having first come out in 1975, the same year as pedit5 and dnd. It was developed continuously for years after, as so many of these early mainframe games were, and only playable version represents the state of the game in 1984, making it impossible to know for sure how many of its current ideas were there from the start. We take it for granted, for instance, that Moria was the first RPG to feature a first person wireframe perspective, and that this later informed Oubliette and Wizardry. On the principal of lex parsimoniae, I intend to analyze the games under this assumption – it just seems like too fundamental a concept to not have been there from the beginning. And yet it’s possible that Oubliette did it first, that the continuous development of both games influenced each other, and that Wizardry and even later games may have informed Moria’s later development.

Loading Moria (the lesson name is, confusingly “0moria,” which almost prevented me from figuring out how to play it), the title screen introduces something I hadn’t seen in any PLATO game yet – color graphics!

The first thing I did was to check out the helpfile, which was up to the usual high standards of the PLATO CRPGs that I’ve seen so far.

All of this seems obvious now, but I can imagine 1975 players needing
instruction on how to interpret a first person perspective.

The first chapter tries to establish a cosmology of sorts, but it’s kind of silly and doesn’t have much to do with any ludonarrative. The land of Moria consists of five elements; earth, fire, water, air, and “vitality,” the latter of which grant life to the other four elements, and also grants intelligence, personality, and faith to “living beings” (shouldn’t the other four elements be considered living beings?).

The second chapter explains maze navigation and controls, which are almost exactly the same as in Wizardry, with WAXD keys for movement, and a separate command to open doors in front of you. It explains that there’s an overworld of sorts, consisting of a safe “City” map with stores and guilds, and a “wilderness” map with low-level encounters, few rewards, and also the entrances to the four dungeons, which each descend 60 levels of increasing challenge.

The third chapter describes character creation and development. There is no explicit class system; all men are created equal here, but instead you may join a guild once your skills are developed enough, advance through its ranks as you develop your skill further, and gain some general membership perks and a guild-specific ability. There are four skills, each favored by one of the four guilds.

Skill D&D equivalent Purpose Guild Guild ability
Cunning Dexterity, Luck Fighting initiative, thievery, evasion, opening chests, longevity Thieves Guild Better chance of finding magic items in treasure chests
Piety Wisdom Better success in praying, lower cost of praying The Brotherhood Raise group vitality
Valor Strength, Endurance Reduces damage taken, increases damage dealt, use of 1-handed weapons Union of Knights Reduced damage taken, chance to decapitate monsters
Wizardry Intelligence Better success in spells, lower cost of spells Circle of Wizards Teleport group back to city

A fifth stat, vitality, is your HP, but also serves as a pool for spellcasting, and automatically regenerates provided you have food and water. Full HP is always 100; it can’t be increased, but better stats reduce the vitality cost of taking damage and casting spells.

Characters begin life at 13 years old, and may die of old age once they reach 100. Oddly, it’s possible to attain immortality just by living long enough without dying! Upon death, you may create an “heir” and pass on some of your possessions if you are a guild member.

Moria is designed for multiplayer, and players in a group may wander and fight separately, but may not wander too far apart. The group leader is designated the “guide” and is responsible for leading the group through the maze. Only the guide may leave a maze “block” (a 6x6 grid of spaces), may not leave while any party members are fighting, and when leaving, any followers will automatically move into the next block with the guide.

The fourth chapter describes magic items, which are found in shops in the city, or by killing monsters. Deeper levels have tougher monsters, and better chances of finding magic items. Magic items are categorized as weapons or as special magic items, and the helpfile has a complete list of weapons. Special magic items are unlisted, but confer unique benefits if you’re lucky enough to find one.

These are just the one-handed weapons!

Weapons are a misnomer though; items that we would recognize as helms, armor, and shields are also classified as “weapons.”

Each “weapon” provides a boost to offense, defense, or both. This is the only thing that weapons do, even weapons with names like “Rod of Fear” and such. Weapons are divided into categories (hand, arms, head, body, etc.) and you may only equip one weapon per category, except for hands, of which you may equip two as long as both are one-handed and as long as your stats are high enough. You could equip two swords, or two shields, or one of each – they’re all just weapons as far as this rule is concerned.

Unusually, two-handed weapons do not provide inherently better stats than one-handed weapons. The only reason you would use one is because one-handed weapons require higher stats – a great sword is actually easier to wield than a single dagger! Wielding two one-handed weapons – even if the second weapon is just a shield - requires even higher stats.

The fifth chapter details spellcasting. Some spells are cast in battle, some outside, and they all cost vitality.

A little more detail would have been appreciated. Four of the five battle spells are instant kill spells – why favor one over another? Presumably some monsters are more susceptible to some spells than others, as it was in dnd, but given the huge variety of monsters, I’m not going to do the rigorous spellchecking that I did for that game.

The sixth chapter is about monsters, and your options for fighting them.
  • Fight
  • Trick – Instant kill technique that relies on cunning. Think charm spell for thieves.
  • Pray – Like spellcasting, but for priests.
    • Holy word – Instant kill
    • Escape – Run away
    • Miracle – Instantly kill all monsters, but risks annoying the gods
    • Unction – Restore some vitality if under 50
  • Bribe – Offer gold or an item for a chance to escape
  • Run – Leave combat, monsters do not regenerate (but you do)
  • Evade – Less chance to get hit, probably useless if you’re playing solo
  • Cast – Wizard spells
  • Various options for sending messages

This section also lists every monster in the game, grouped by eight categories.

Goblins are undead? There’s a Kzin in one of the lists too.

The seventh chapter is about treasure. Monsters sometimes drop treasure chests, which may contain gold, valuables, or magic items, but may also be trapped, in which case you will suffer damage from opening them in an amount inverse to your cunning skill. In a group, treasure is automatically divvied up according to how much each player contributed to the fight, with the group guide and whoever opened the chest gaining an extra share. No word on how magic items are split up.

The eighth chapter is about the city and the various things you can do there. There are no monster encounters at all. Features of the city include:
  • The weapon shop, for buying and selling items.
  • The magic shop, which despite the name sells no magic at all. It’s for selling your unwanted items, and the helpfile doesn’t say why you would prefer to sell at one store over the other.
  • The supply store, for buying food.
  • The well, for buying water.
  • The jail.
    That seems harsh!

The final chapter reviews gameplay and has lists of things you can do depending on the circumstances. There’s no real victory in this game, but this chapter suggests some long term goals.
  • Score points by killing lots of monsters, and earn yourself a place on the monthly or all-time hall of fame.
  • Become master of your guild by attaining the highest skill ranking of any member of the guild.
  • Locate the Reaper’s Ring, which moves down a level when it is found, and might be found in any of the four dungeons.

At the time of writing this, the ring had last been found on level 50, presumably by Mahney. I’m not going to be the one to find it on level 51, but I wonder, what happens when the ring is found on level 60? Does it reset to level 1? Is it gone forever?

With the helpfile read and reviewed, I started a new character. The helpfile had said that everyone begins with the same skills and abilities, but this is wrong. You may choose from one of four preset stats, each one favoring a skill and disfavoring another.

I decided to start with type ‘a’ in the hopes of joining the Thieves Guild and getting a better chance of finding good loot, which I might be able to pass on to an heir specializing in something else.

I entered the city.

As an aside, this high resolution, multi-color frame-based UI seems decades ahead of its time, and makes me think of Windows 3.x games.

I didn’t want to explore the wilderness just yet, so I went around the city, mapping it out. The onscreen inclusion of compass direction and coordinates were quite welcome here.
I quickly found the magic shop, which I had nothing to sell to, and the weapon shop, which annoyingly does not list the items it has for sale. Instead, you may tell them how much you are willing to spend, and select a category of item, and they will recommend an item in your budget in the selected category, but won’t tell you how much it actually costs.

At this point, given my love for data, I just had to figure out what items are sold here, and what their actual costs are. In the process of doing this, I found that your food and water supplies dwindle on their own when you aren’t doing anything, and food isn’t cheap at this stage in the game, costing 100 gold for a month’s worth.

I tediously used binary search to gauge the prices of various items, and quickly realized two things – that the weapon shop sells every single item that is listed in the helpfile, and that the prices are not hardcoded, but calculated.

All that distinguishes “weapons” are the offense/defense values, and what part of your body you equip them on. Shields are all 1-handed and have offense of 0, and differ only by defense, so I determined the cost of each shield in the game, and from there was able to find that shields always cost exactly their defense value raised to the fourth power. With that portion of the formula discovered, and the exact values of a few other weapons determined, finding the rest of the formula was easy.
Cost = [Offense]^4 + [Defense]^4

That’s all there is to it, and the formula is consistent regardless of weapon type. The sword, in the screenshot above, would have a value of 81+1 = 82. The most powerful weapon, the trident, has an offense of 30, a defense of 10, and a cost of 810,000+10,000 = 820,000.

You haggle prices when buying, and the shopkeeper always starts at an amount way higher than what the item is worth, but quickly lowers if you counter-offer at exact cost.

I proceeded to map out the 6x6 block, and in it found a supply shop selling additional food at 100 gold per month’s supply. You only start with 150 gold, so clearly you’re not intended to waste a lot of a new character’s time in the city, where there are no encounters and no gold rewards. I did anyway.

Mapping out more blocks, I found that the city has multiple weapon shops, magic shops, supply stores, watering holes, and exits to the wilderness spread throughout the “room” blocks. Each block has at least one of these things, but no more than one of each type. Alternating the “room” blocks are “corridor” blocks which are repetitive in design and never contain any features.

I did try out some peacetime magic. None of the spells worked on my first casting, and drained about 10-20 vitality per attempt, but vitality restores on its own over time and there are no monsters here to kill me. Light reveals hidden doors, and a successful cast seems to last forever, so there’s no reason not to have it active. Passwall is sometimes needed to explore a sealed-off region of a room block. Precognition says it tells you when monsters have treasure; I did not try casting it or protection as there are no monsters in the city.

You can also pray, and request to create food/water or to purify tainted water. Water in the city is not free but is always clean, so there’s no point in casting it here. I tried praying for more water once I ran out, but it didn’t work, only draining my vitality, and with successive prayers all that I achieved was starving to death.

My next character explored more and found a guild, The Brotherhood. This wasn’t the guild I wished to join, but my stats weren’t high enough to join any guild anyway. As this was the only guild I could find, even though the city had many shops of every other kind, I presume that each guild only has one location in the entire city.

And the city is huge by Wizlike standards. It is eight blocks wide, seven blocks tall, up to 36 squares per “room” block, and up to 20 per “corridor” block, not counting the useless spaces in between the actual corridors. That’s an upper boundary of 1,568 squares! Compare with Wizardry’s mere 400 per level, and on top of that, it only has ten levels, while Moria has 302!

I eventually found the other three guilds as well as a total of four exits to the wilderness, and also found some things about how vitality works.

Vitality recharges two points every 3 to 6 seconds, roughly. It seems to recharge a bit faster when you’re actively playing the game (I expect that the game timer is TIPS-based rather than time-based), but this is negligible; the longest I’ve waited to recharge vitality completely is just over four minutes, and the fastest I’ve seen it recharge from near-depletion was two minutes and 50 seconds. I’d rather just do something else for four minutes than walk around in circles avoiding combat for three. The tricky thing is that the vitality display doesn’t update all the time; if you drain your vitality to, say, 8, and then idle to recharge it, you might not see it increase at all until it hits 100.

One ingame month passes every eight minutes, plus a random number of seconds. If you lose your connection, time will pass faster than this, and if you don’t hurry to re-log in, you may return to find that your character starved to death while you were away.

Peaceful spells all cost the same. At 5 wizardry points, casting spells costs 14 vitality. At 7 wizardry, they cost 13. At 10 wizardry, they cost 11. This isn’t enough data to extrapolate the spell cost formula, but it’s a start.

Prayers are random in their vitality cost. I experimented with a 5 piety character and prayed for food 50 times, measuring the vitality cost each time. The cost ranged from 1 to 49, with a mean of 28 and a standard deviation of about 15. The prayer did not work even once. I tried again with a 10 piety character, and the cost still ranged from 1 to 49, but the mean was lower, about 25, and the standard deviation about 14.15. It worked exactly once.

Here’s my map of the city. It’s probably not perfect, but I don’t expect that there is anything of interest here that I did not map.

Sunday, July 21, 2019

Game 82: Galactic Attack

It looks like a PT boat fell on an X-Wing.

Even before creating this game, his first commercial release and his earliest game to be playable today, Robert J. Woodhead had already gained a notorious reputation on PLATO. Dirk Pellett, co-author of dnd, refers to him in the helpfile’s history chapters as “Balsabrain,” furiously accuses him of publishing an illicit copy of dnd as his own in 1977, and further accuses him of plagiarizing Oubliette as Wizardry.

In the eyes of those who would consider Wizardry nothing more than an Oubliette ripoff, this earlier game Galactic Attack will do Woodhead no favors, as it’s quite obviously an unauthorized remake of Empire.

As the Apple II was far weaker than the multi-million dollar supercomputer network that hosted Empire, Galactic Attack is understandably stripped down from its inspiration. There’s no multiplayer, obviously. The 25-planet galaxy is replaced with a much smaller solar system with only 11 planetoids, and your ship can perform maybe half of the functions available to those in Empire – though I am quite impressed that even that much of it was translated to the Apple II’s limited resources.

And yet, it had one huge accomplishment over Empire. It can (and must) be played offline, against the computer, which was never an option before. I no longer need to wait until players join a game on Cyber1 to get some practice in; I can now fight matches any day of the week, whenever it’s convenient.

This is a huge change which leads to a very different strategy dynamic. Empire had fleets of ships continuously battling for space superiority. Your partner would ferry troops from one planet to another while you flew on his wing, ready to engage enemies that might attack him. In Galactic Attack, you are all alone. The theater of operations is the solar system, consisting of every major planet plus Luna, Ceres, and Pluto. There are no friendly starships, there are unlimited hostiles, and every planetoid except Earth and Luna are occupied by hostile ground armies, which will fire on your ship should you attempt to orbit. You must fend off multiple enemy starships alone, you must commence orbital bombardment of the occupied planets alone, you must plan your strategy for retaking the planets alone, and you must execute it by transporting your armies to their destinations alone. On the flipside, when you retake a planet and bulwark it with your own armies, you’ll keep it for the rest of the game, as the Kzinti have no ability to bomb your armies or invade your planets.

Another big advantage, in my view, is that the frame rate is dramatically improved. It’s still abysmal by today’s standards, generally taking between 1.5 and 2 seconds per screen update, but in Empire it took 5 seconds, which was more than enough time for an on-screen enemy to launch a salvo of torpedoes at you and destroy you before the screen could even update and let you see them! The improved frame rate, combined with a slower game pace, means you can actually see enemy torpedoes hone in on your vector before blowing you up, which had been a major frustration to me in Empire.

An options screen lets you set ingame parameters.

I didn’t spent a lot of time seeing how the game plays when you deviate from the default settings. Customization is nice, but without any preset modes or developer recommendations, I feel like I'm being saddled with the designer's responsibility. You could, for instance, max out the Kzinti damage and make yourself fight nine at a time, but I doubt surviving would even be possible, let alone fun. It reminds me of the "007 Mode" of Goldeneye with customizeable difficulty parameters; fine for screwing around, but without a baseline easy/hard mode to base your settings off of it's not very useful for creating a balanced difficulty of your own.

To be clear, I appreciate that this level of customization exists, but I wish there had been more developer-recommended preset modes than just the default.

A fully zoomed-out view of the solar system

The goal is to regain control every planetoid in the solar system, which are plotted on random points of fixed ellipses more or less corresponding to their real-universe orbits. All but Earth and Luna are occupied by Kzinti armies, and the standard procedure to take them back is to orbit, “strafe” the armies with your bombs, break orbit before their return fire destroys you, repair, and repeat until there are only three left, at which point your strafing runs will always miss. Then, you must go to a friendly planet, beam aboard some armies, and transport them down to the surface, repeating until the planet is yours. This requires at least four armies (evenly matched forces will mutually destroy each other), and may take multiple trips, as your ship starts with capacity for only one. Your army capacity grows as you score kills, up to a maximum of ten, but carrying lots of armies around will severely diminish your fuel efficiency.

Planets with three or more armies on them will recruit more over time, up to a maximum of 63, and some planets just seem to recruit faster than others, though this varies game to game. Because of this, once you retake a planet of strategic value, it’s good to boost it up to three armies, and then let it accumulate more while you focus your attention elsewhere. In the above screenshot, Venus is a good place to stage armies for conquering Mars, and Mars is a good place to stage armies for conquering Saturn. The Kzinti will leave your occupied planets alone, but their occupied planets will recruit armies too, and the outer planets are virtually guaranteed to hit the maximum allotment of 63 before you have a chance to attack them.

Of course, the Kzinti won’t just leave you alone while you attack their garrisons. With the default settings, three fighters will spawn from a random occupied planet right off the bat, and zero in on you, which may take some time or very little depending on how far away they are from Earth. You must lower your shields to strafe planets or to beam armies up or down, and you can’t sustain many hits without shields. You’ll have to destroy the fighters before making any real progress on liberating the planets. When you destroy the last of them, you’ll be left alone for a random amount of time – I estimate it ranges between 160 and 240 seconds – during which you’re free to focus on retaking planets. But eventually, three more fighters will spawn from a random occupied planet, and if they spawn from a planet that you happen to be in the process of laying siege to, with your shields down, your systems in repair mode, and your fuel low, then Godspeed.

I had trouble dogfighting at first. With the default game options, I’d have to take on three Kzinti fighters at once. I’d fly away from them, flinging torpedoes at them behind me, and maneuver in a triangular pattern so that I could stay close to my territory without allowing them to flank me and obliterate my ship in a hail of crossfire. But killing them took forever, the torpedoes and the constant outrunning took too much energy, and I’d always run out of fuel and be a sitting duck, unable to move or fire back.

Space is a tough place where wimps eat flaming plasma death.

Then, I realized something. Torpedoes are for suckers. Each costs 30 units of fuel on its own, you’ll have to fire several to ensure that some hit, each hit can do a maximum of 35/100 damage, and I would assume on average do half of that. Phasers cost 50 units of fuel per fire, will always hit if close enough and aimed correctly, and do much more damage on average, sometimes even one-shotting.

Getting close does expose you to harm sooner, and they’re slightly more challenging to aim; torpedoes can be aimed with cardinal directions, while phasers must be aimed with exact numerical angles. One irritating quirk of the game engine is that when there’s a lot of action on screen, keystrokes sometimes don’t register; e.g. “P,1,8,0” comes out as “P,1,0” and I fire my phasers at 10 degrees instead of 180, almost the exact opposite angle as intended.

Flinging masses of torpedoes from high Earth orbit, where refuelling was boosted, could be a useful way to thin out a formation of approaching Kzinti. Aside from that scenario, the benefits of phasers just seem to far outweigh the cons. You have recharging shields, they don’t, and in a pinch you can divert the fuel you’re saving into recharging your shields faster. I started surviving my encounters much more consistently once my dogfighting strategy became “spam phasers.” You’ll still need to move out of the way when clusters of torpedoes are launched at your heading from three different angles, but it isn’t necessary to dodge every single one of them.

Fuel is a big deal in this game, so I did some tests to find out how fuel regeneration and depletion actually works. Each “tick” of the ingame clock:
  • 14 fuel is regenerated.
  • Another 0-6 fuel is regenerated when orbiting Earth. Contrary to what the manual says, only Earth does this, and there is no benefit to orbiting other friendly planets.
  • 2 fuel per warp factor is depleted.
  • 1 fuel per 50% shield level is depleted. No fuel is depleted when shield levels are at 49% or lower.
  • 1 fuel per army onboard is depleted.

From these stats, we can see that a cruising speed of warp factor 7 will allow indefinite travel with no net loss of fuel, so long as shields are down and no armies are onboard. Lowering your shields when combat isn’t imminent is probably a good idea in general, just because it saves fuel. It costs about 120 fuel to regenerate your shields to 100% from nothing, and this fuel can be recovered in 10 ticks. If your fuel tank is full, and the Kzinti aren’t yet visible on your zoomed-in view, then you can just quickly raise your shields and regenerate them, and you’ll be fine.

After from dogfighting, there’s an element of risk-taking in between skirmishes. During this period of time, you’re free to focus on planets without Kzinti interference, but you never know how long you have, or where they’ll pop up next. Your ship is going to be a bit battered and its fuel reserves low after the fight, so maybe you’ll want to head to earth where you can repair and let your fuel recharge. But that’s going to take time, during which the Kzinti armies will grow, and you’ll have that much less time before the next wave of fighters launch. Maybe you’d rather set a course to the next planet, with or without some armies aboard, let your crew repair the ship on route, and then alternate between strafing the planet and repairing/refueling the ship from out of range until the planet is weak enough to invade. But what if the fighters launch from that planet while you’re in a repair cycle?

As it happened here.

To take a planet, after bombing it as much as possible, you must retreat to a friendly planet with armies, and beam some of them up. You’ll need 4 armies if you just want to take the planet and then forget it, and 6 armies if you want to turn it into a strategic outpost. Then you’ll need to fly back to the hostile planet, which by now has probably recruited an army or two, which you should strafe back to 3. Then, unload your armies. If you unload 4 onto a planet with 3 hostiles, then you’ll be left with 1, and will conquer the planet. If you unload 6 onto a planet with 3 hostiles, then you’ll be left with 3, which is enough for the planet to recruit more armies on its own.

Once you’ve taken back some planets, the Kzinti will occasionally spawn from outside of the solar system. This is great news, because it will take them an extra-long time to reach you, and no further ships will spawn until you’ve destroyed them. You’ll have extra time to make progress on bombing planets, but you’ll need to be careful to keep one eye on the long-range radar, and not get so carried away with bombing their armies that the fighters sneak up on you with your pants and shields down.

I managed to win with a somewhat aggressive playing style. After each sortie, I’d head straight to the nearest Kzinti-occupied planet, only bringing armies along if I felt confident that I could bring its own army count down to 3 before the next wave of fighters spawned. If not, then I’d perform the orbit-strafe-break-repair cycle until the fighters spawned and then re-assess the situation. If I managed to bombard a planet down to its critical level without fighters spawning, then I’d be careful not to approach any more hostile planets without near-full fuel, because at that point you never know when fighters might scramble, and you really don’t want to be caught in a dogfight with low fuel. You can survive a surprise encounter with your shields down, but if your fuel is low, you're doomed even with full shields.

A trick I found, when orbiting enemy planets, is that you can queue up commands, and have your ship execute them in order with maximum efficiency. Pressing “O,S,S,S,S,S,4” in quick succession will order your ship to orbit, strafe five times, and then break from orbit at warp factor 4, and your ship will carry out those orders with minimal delay in between actions. The downside is that once you queue up these orders, you can’t override or cancel any of them. So, if you mash S ten times, you’re committed to strafing a planet ten times, and will probably get killed before you’re done. Four strafes before breaking seemed to be safe, although against late-game planets with a full 63 army reserve, I tried to be a bit safer with just three.

Time to pull out from Uranus.

Toward the end of my final victorious game, which I’ve recorded, the Kzinti caused a revolt on Uranus, which was not in a strategic location, and I therefore had only stationed one army there.

Or, Uranus is revolting!

The manual mentioned Kzinti can cause uprisings on planets with few armies, but this was the first time I had seen it. It didn’t really matter; I was near the end of the game, and was ready to capture Pluto at the ends of the solar system. Afterward, I backpedaled to Uranus, killing some fighters on the way, and beamed up four more armies to re-conquer it.

Victory! I have no idea how the score system works.

I’ve uploaded my recorded victory run in two parts, as I had saved my game 30 minutes into the attempt. If you actually watched any of it, please let me know! The right arrow key can come in handy for fast-forwarding 5 seconds at a time; there’s a lot of downtime in between the interesting parts, and it gets longer the farther into the game I get.

Part I: The Lunar Campaign, in which Ahab makes first contact with the villainous Kzinti, and liberates the inner worlds of Venus, Mercury, Ceres, and of Uranus at its perigee.

Part II: The Martian Campaign, in which Ahab breaks through to the strategic world of Mars, stages there a beachhead to the heavily bulwarked outer worlds and conquers them, and lastly suppresses a rebellion at Uranus.

I got some enjoyment out of playing Galactic Attack, more than out of Empire IV which I found impenetrable, but I can’t rate it too highly. The blend of strategy and action is interesting and fairly well balanced, but the controls in combat are frustrating, the strategic element is thin, and the biggest issue is that there’s just too much downtime. You spend a lot of time waiting to warp between planets, waiting for repairs, and waiting for your ship to refuel.

Monday, July 15, 2019

Game 81: Empire IV

Versioning’s a tricky thing. I view Empire, Empire III, and Empire IV as distinct games, as they occupy distinctly different niches, and Mobygames does likewise. Empire is an RTS, Empire III is a ship-to-ship space combat game, and Empire IV is a hybrid of the concepts where players command ships directly in service of their empire, with the goal of conquering every planet in the universe. Wikipedia, however, only has a single article on Empire and describes it as more of a continuous development cycle than as a series. This view is probably more accurate to how Empire was seen in its time; the game I call Empire IV is simply called Empire on Cyber1, and the game I call Empire III had only been renamed so retrospectively in 2004 to distinguish it from later versions. I’m still using my scheme, even if it is anachronistic.

There are also at least four different versions of Empire IV on Cyber1, with lessons named “0empire,” “cempire,” “vempire,” and “zempire.” A helpfile describes the differences between them, mostly focusing on the latter two, but it’s not terribly meaningful to me.

For the first time in this series, Empire IV has a detailed and complete helpfile available, going well beyond basic controls, and even has illustrated pages showing annotated ingame screenshots.

The goal, as in Conquest, is to conquer the universe in your empire’s name. In Conquest, there were up to eight players and each commanded their respective empire, initially consisting of one planet. Here there are up to 30 players, each commanding a single starship, and belonging to one of four different empires. Ships may bombard planets, ferry armies around, and attack other ships trying to do the same. Players can drop in and out of battle at any time, and games may last for days.

There are 25 planets in the universe, and the planets under your empire’s control (or ones you aren’t yet at war with) provide protection to your orbiting ships. 11 are considered “Class M” and are the only places where ships may refuel. Planets are conquered by beaming down imperial armies, which are automatically recruited on friendly planets. You may bombard planets ahead of time to soften them up before your invasion, but this act drops your shields for some reason, and you will take some damage in retaliation from the planetary defenses.

Some neutral planets are “self-ruled” and will provide free fuel and repairs to neutral ships in orbit, but as soon as you attack one, they will permanently declare war and fire on your ships instead.

The helpfile has an extensive list of ship commands, with further help pages on each individual command.

Another chapter in the helpfile offers beginner tips, starting with a list of the most important commands for surviving battles.

And another section walks you through Empire gameplay, using annotated screenshots.

I cannot overstate how impressively thorough this helpfile is. It was rare for even multimedia PC games of the 90’s to have that much level of detail, and this was in 1976!

I played the game, and as usual, was all alone in the universe.

I had a lot of trouble navigating back in Empire III. The Newtonian physics, the scarcity of bearings on the screen, and the screen that only updates once every five seconds made it really hard to understand what was going on.

Empire IV still runs at 1 frame per 5 seconds, but navigation is much easier. The Newtonian physics model is highly relaxed; now when you set a course, you instantly rotate to your chosen heading. Inertia is a thing of the past too; now your throttle determines velocity, you always head in the exact direction you are pointed, come to an instant halt when you set the throttle to zero, and instantly reverse directions if you turn around 180 degrees, although you may slow down in the process. And finally, the universe has more stuff in it. Even though it takes five seconds to update the screen, you’re never too far away from a planet to use one as a visual beacon.

Without any ships to stop me from conquering the Universe, I reviewed the map.

Romulus was right there, and neutral planet Eminiar was nearby and relatively weak, with only 21 armies compared to Romulus’ 69. I orbited Romulus to beam up some armies.

Well, crap. There’s nobody around to kill!

So I flew to Eminiar and bombed it twice, sustaining some damage. Then, I broke off from orbit to repair.

I repeated this process a few more times, until it was down to three armies, and my bombs were ineffective.

That bit of action raised my kill count, so I went back to Romulus to beam aboard some armies.

I set a course back to Eminiar, orbited, and dropped off my armies.

My two armies were wiped out but took out two of theirs, leaving them with one, so I went back to Romulus for two more, and flew them back to Eminiar.

Argh, the armies had reproduced! I bombed Eminiar again, killing one army. I beamed my two down to kill another two, leaving them with a single army again, and went back to Romulus again to repeat this process yet again.

Victory! One planet down, 21 to go. But I wasn’t interested. Conquering a planet all by myself was a tedious process, and I couldn’t see it being rewarding to do it again without any real opposition.

I figured that was just about all the game had to offer without other players to fight.

Later, on a Sunday evening, I returned and saw that there were six players in Empire. And so I joined the fight, which was a match of Romulans vs. the Federation. The battle focused around the planets Seritil and Elas, planets on the respective borders of the Romulan and Federation quadrants. They had already been bombed down to their last three armies, with their ranks occasionally dipping or rising as other starships beamed down friendly or hostile armies to whittle or bolster their numbers.

The other players were friendly and welcoming, offering tips and suggestions without getting impatient at my ineptitude. All that said, I felt utterly lost when it came to dogfighting, and didn’t feel like the hour or so I spent helped me understand it any better. I’d often be at full shields and full health, and then suddenly be greeted with a message that I’d been destroyed by another player, without having seen any phasers or torpedoes fired at me.

I saw this a lot.

I’d frequently hit the ‘d’ key to detonate enemy torpedoes, and players recommended doing that all the time. The game only updates its display in five-second increments, but the actual game state is updated much more frequently than that, so sometimes a player has launched torpedoes at you, and you can’t see them because the replot clock hasn’t ticked yet, but they’re there, and are moving at you, and may even hit you before you have a chance to see them. At the same time, these invisible torpedoes can still be triggered by your detonator.

I never managed to score a single starship kill myself. My torpedoes would just get remotely detonated. I tried using my phasers, which seemed to be hitting my enemies, but eventually I’d be blown up with torpedoes or phasers with no indication that I had caused any damage to my target.

This looks like a hit but it isn't.

It’s possible to increase the framerate by manually replotting the screen repeatedly, but players recommended against it. Apparently, your starship only actually travels when your screen replots, effectively “jumping” some distance in an instant.

Here’s some footage of my first online battle.

Clearly I need a lot of practice, and perhaps some more guidance, if I’m ever to get anywhere with this game. For the purposes of Data Driven Gamer, I’m done with it for now, but I’ll keep logging on every now and then to see if I can play some more. If I ever reach a point where I feel like I’ve made decent strides in understanding Empire, I’ll have a follow-up post. But in the meantime, I’m moving on. Sort of.

I’d be remiss to not comment on some striking similarities between this game and 1971’s Star Trek computer game. In both games, you’re piloting a starship in 2D space, and have two weapons; phasers and torpedoes. Navigation is performed by entering a heading in degree and a “warp factor” to determine how far you’ll jump in that direction. Phasers are instant hit weapons whose damage drops off with distance, and torpedoes are moving projectiles that must be directed using the same azimuth system used for navigation. Your ship has status for shields, fuel, and damage, the shields can be quickly recharged at the cost of fuel, damage is repaired over time, and you refuel at stations or select planets which are limited in number and may be far from the action. A lot of these similarities can be chalked up to the fact that they are both inspired by the show Star Trek, but some of the specific details in their interpretations of the seem too close to be a coincidence.

But there are profound differences at the most basic levels. Star Trek ’71 is single player, and is mainly about searching the galaxy for targets to blow up before time runs out. Empire is multiplayer, and is about fighting other ships for space dominance and then conquering the universe. Star Trek’s Klingons are stationary targets, sitting ducks for your torpedoes if you can line up a shot without any obstacles in the way, and has nothing resembling the planetary defense, bombardment, or invasion which plays such a huge role in Empire. Star Trek is turn-based, Empire is a frantic action game. Star Trek involves sector scanning and searching quadrants for lurking Klingons, Empire gives you a strategic galactic map with the press of a button.

Most popular posts