May 03

There is nothing cute about acute sinusitis.

DME_ElementalStorm

Sorry for the lack of updates this past week, but I’ve been unwell.

Apr 21

Dishonorable tactics for fun and profit

GH1_Vadel

If you’re looking for a bit of an edge in GH1, here’s a nice degenerate tactic you can try. I like this one because it gives some insight into how the game works.

The first thing you need to know is that GearHead is a clock-based system. Actions take a certain amount of time. After a character performs an action, a certain amount of time has to pass before they can perform their next action. Generally this period is the character’s Reaction Time, which is calculated based on Speed and the Initiative skill. There is one big exception to this: movement. Since it wouldn’t make sense to return control to the PC in the middle of a movement action, movement ignores Reaction Time and instead returns control to the PC when the move is completed.

To exploit this, first you need a very fast mecha, preferably loaded with overchargers. The Vadel is a good choice. Next, load it up with high-speed weapons. The more and the faster the better. In combat, start moving at full speed straight towards the enemies. Because of the movement exception described above, you will be able to attack every time the mecha moves into a new tile, regardless of your character’s Speed. If you can boost your mecha’s top speed to 300dpr or so this means an attack every two seconds.

This tactic doesn’t work in GH2, where the movement exception only occurs if movement is slower than Reaction Time.

Apr 20

Plain Walls and GH2 Thoughts

GH1_PlainWall

There’s a wall type in GearHead that is described simply as “Wall”, and now it has a fancy new sprite. Well, maybe not fancy, but what do you expect for the most generic wall in the game?

I’ve been thinking about the improvements to GH1 that I need to port to GH2. I think my next big programming task should be to catch up the GH2 source to the current state of GH1. The longer I leave it the more of a nightmare it’s going to be, and it’s already kinda scary. Here are the main things that need to be updated:

  • Resizeable window with GH1 style panels.
  • Move the saves and the config file to the user’s home/config folder.
  • Copy the much-improved GH1 character generator and training layouts. Add instructions to the phone interface.
  • Update the romance and gender options.
  • Allow lancemates to purchase skill training, and allow cycling of lancemates from the backpack interface.
  • Update the colormenu with the improvements made in GH1.
  • Make sure status effects don’t have any effect during quick time. Also make sure that the DirKey function updates the screen correctly.
  • Update the GH2 logo, and give it a proper name. GH1 is “GearHead: Arena”, but GH2 is just GH2. Right now I’m leaning towards “GearHead: Superstar” but I’m not sure whether that is too cheesy or exactly cheesy enough.
  • Add the animated water and thin door sprites.

That should bring GH2 into line with GH1. Later on I’ll post about my plans to finish GH2 properly.

Apr 19

GH1 v1.301: Shaking out the hunter-synths

GH1_WhyHaveAWar

I’ve just uploaded version 1.301 to GitHub. This is largely a bugfix release; there were several problems with the improved SDL interface, as expected. I also fixed some problems with the content, including what I hope is the cause of the mysterious villainous reputation¬† Thanks to everybody who submitted bug reports.

The other big thing is the inclusion of some features to hopefully make the ASCII interface work better on a braille reader. The Accessibility_On config option changes the navigation display from a compass to plain text.

GH1_Accessibility

Complete list of changes below the fold. Read the rest of this entry »

Apr 18

GearHead1 Character Creation

There aren’t a lot of GearHead videos on YouTube, so I made this one to showcase the character creator. I’m going to try an make another video showing the start of the RPG campaign soon.

Apr 16

Dungeon Monkey Campaign Idea

Monsters_By_Joe

The original monster sprites I made for DME. Should upload these to OpenGameArt someday.

As I’ve mentioned before, Dungeon Monkey Eternal was created to help me learn Python and to try out some new systems that I hope to include in a new GearHead game. Unfortunately, because DME creates short static adventures rather than a large dynamic world, it isn’t really a good test for some of those systems. Recently I came up with an idea for a campaign world that I wouldn’t mind trying.

It all starts out generic-fantasy enough. Ages ago there was a devastating war; the winners sealed off the underground empire of the losers, and the kobolds have remained trapped under the mountain ever since.

Yes, kobolds. Nasty kobolds. The big bad will be quite small, actually.

So at the very beginning of the game, the kobolds have broken free. Kobold scouts have infiltrated various areas. Some people have been kidnapped. The PC could be sent to investigate, or fight some of them, or travel to a nearby polis to gain support against this ancient evil. These kobolds are quite nasty. But it seems like a manageable problem; after all, they were defeated once, they can be defeated again.

At some point the PC will find out more about the kobolds, either by infiltrating their mountain or by the kobolds themselves launching a real attack. It turns out that the kobolds have been busy during their imprisonment. Their society has transformed, they’ve had an industrial revolution, and they now possess steam-powered mecha + war machines that the surface world is mostly defenseless against.

All hell breaks loose. Different factions try to fight the kobolds, or turn the situation to their advantage. The PC gets to play through a GearHead-style randomized core story cumulating in a battle with the ultimate kobold death machine… probably. Might be nice to have several different endings depending on which way the campaign goes.

The human royals are mostly concerned with preserving their own power. As long as they aren’t the ones who have to suffer, they don’t take the kobolds too seriously. In fact, maybe it was a royal who released the kobolds, hoping to use a new war for political aims, probably against the guilds or the peasants.

Previous to the war, the lower classes (guilds, peasants) were starting to organize and agitate for better conditions. The growing wealth of the guilds, and the sheer number of the peasants, meant that it would not have been easy for the royals to simply stomp out these heretical ideas. Now that the kobolds have returned, any such reformers can more easily be charged with treason.

The Shining Temple has a secret weapon: an urn containing an angel that was sent to punish the world during a past age of sinfulness. But, not everyone in the temple agrees with using this weapon. The scriptures are incomplete; how can we be sure that the being locked in the urn really is an angel? More to the point, how do we know what side it will be on if released?

The rival human city-state plans to use the kobold invasion to take over the first human city-state. More royals, more problems.

The druidic forest-folk are neutral; aside from protecting their wilderness areas, they do not want to get involved in the conflict. This makes perfectly good sense, since they know empires always mistreat nature and break their promises, so whichever side wins makes no difference to them.

The mountain folk, dwarves and gnomes mostly, still bear a lot of grudges against the kobolds and are making plans to strike back on their own. The dwarves are searching for a legendary metal that can easily pierce the steam mecha, while the gnomes are working on steam mecha of their own.

The orks also bear grudges. But then they also bear grudges against just about everyone in this world. Still, it’s gonna be one hell of a battle, innit?

The chaos raiders (Mammoth Tribes?) are really happy about the return of the kobolds, because it’s more chaos. If they can topple the royals, the kobold leader, and maybe the pope of the Shining Temple, they win.

The reptals, already teetering on the edge of extinction, just want to survive. Unfortunately their last hidden village is in the middle of the warzone.

The wizards want to find out more about kobold technology, and to make contact with kobold mages in the possibly mistaken belief that all academics are on the same side. So far the wizards have resisted calls to get involved in the battle, but it’s not clear how much longer they can hold out.

A martial arts temple sends a student to fight the kobold war machines in order to prove that spirit is mightier than steel.

Let me know what you think.

Apr 13

The Cavalier Code

Cavaliers

Obviously, when you have a large number of people walking around in colossal death machines, you’re going to need a few ground rules.

The Cavalier’s Code is an honor system followed by cavaliers. It regulates many aspects of the job such as combat and employment. There are several local variants, such as the Crihna Rede and Neo Duello, but they all have the same basic structure. A copy of the rules can be found at most cavalier clubs and arenas.

Most of the rules deal with the use of deadly force. To minimize damage, there are several restrictions placed on where and when cavaliers are allowed to fight. Attacking civilians is forbidden. Attacking a cavalier who is not prepared for combat is also forbidden. Battles must begin with a formal challenge. Note that the definitions of “prepared for combat” and “formal challenge” are pretty loose- if a cavalier is awake and inside of a mecha, they’re fair game. Also note that local laws may place further limits on mecha combat; in general, it’s illegal to challenge someone within city limits.

Next are the rules regarding contracts and employment. It’s important that employers can trust cavaliers, otherwise there’ll be fewer jobs for everyone. Once you agree to a contract or a duel you must honor your word. If you enter a long term contract, you may not refuse missions from your employer. Renegotiation may be possible if the situation changes.

Cavaliers have a duty to protect those in need. Cities allow cavaliers to operate within their borders knowing that in case of attack, those cavaliers can be rallied to defense. You are expected to aid those who provide you with food, lodging, and repair. Failure to do so is not strictly forbidden, but will result in great loss of face within the cavalier community.

Finally there are some philosophical ruminations on the nature of being a cavalier. By entering the battlefield you are assenting to your own death. Your enemy today may be your ally tomorrow. Your goal is to complete the mission, not to kill your opponent. Leave grudges on the battlefield. An honorable death demands no reparations. This is the section people quote when they want to look wise and mysterious.

It should be noted that even pirate and outlaw pilots follow these rules. To follow the code is to be a cavalier. A pilot who intentionally breaks the rules is no longer a true cavalier, and as such is no longer entitled to the protections and benefits that cavaliers depend on.

Apr 12

New Rock Walls

GH1_RockWalls

I just added some new rock walls. I think they came out pretty nice.

Apr 09

Young Joe is lucky I don’t have a time machine

GH1_FactionDifficulty

Going through the mission scripts, I found something so weird and bad that I can’t believe it hasn’t been noticed before. Apparently at some point in time I decided that faction missions shouldn’t scale by the PC’s renown; instead, each faction has an independent difficulty counter that increases each time the faction loads a new story. This is not necessarily a bad idea. What is a bad idea is that the difficulty counter is raised by 16-25 renown points every time the story changes. At that rate, the faction mission difficulty level could potentially reach 70 in the first week of the game.

As near as I can tell this system was introduced around release 0.600 and abandoned shortly thereafter. However, I didn’t bother to refactor all of the missions that use it. So now it is randomly scattered throughout the series folder.

This is going to be more fun than a locked room full of monkeys.

Apr 07

Standardizing Missions

GH1_MissionOffer

One problem in GH1 is that there is no rhyme or reason to the mission rewards. The cash prizes and other bonuses don’t strongly correlate with the risks and requirements of the job. As I’ve said before, I was just making things up as I went along.

Here’s what I think should be the new mission standards. The basic mission reward should be either 100% cash plus salvage or 200% cash without salvage. Completing the mission should give 1 point of renown and 100XP. The THREAT and REWARD functions should be used to set the difficulty of the encounter and the cash reward, respectively.

If the mission has special bonuses, the standard reward may be decreased:

  • Increase a desirable reputation (Heroism or Lawfulness, usually)
  • Special rewards, such as a mecha prize
  • Bonus experience or skill experience
  • The PC would not normally qualify for the mission but is offered it at a lower pay rate, as in the city defense mission

If the mission has extra requirements, the standard reward may be increased:

  • The mission requires a particular skill, reputation, or faction membership
  • Personal scale mission (300% base pay? No salvage because no mecha.)
  • Increase an undesirable reputation, such as Criminal or Villainous
  • Higher than normal difficulty

If I’m going to recalibrate all the mission rewards, this would probably also be a good time to either add the procedural text generator or decide that I’m not going to bother with the procedural text generator.

Older posts «