Thursday, 4 August 2011

Old school

I'm starting to think about adding hirelings (aka henchmen) to Unangband, inspired in part by the number of old school D&D blogs which I'm reading. Unangband already has a relatively sophisticated friendly AI, which is used for your familiar, charmed and summoned monsters, monsters you bribe successfully or who surrender to you, as well as the several zones which feature a friendly army spawning alongside you (such as the Battle of Five Armies) - but most of these are specific to spell casters, so it'd be good to give non-spell casting players the opportunity to play the game with friendly monsters alongside them.

There are several issues I'll have to iron out first. The main one is I have to verify that the monster levelling code actually works: that is the adjectives that monsters get ('young, adult, mature, old') as they appear deeper in the dungeon correctly adjusts the monster power to fit the power curve for the depth the monster appears in the dungeon. At the moment, this is a bit of a hack and to clean it up will require some more large scale code changes which I'm a little hesitant in making, seeing as I've still not finished the last set of large scale changes required for items.

There's also the problem of moving your allies between levels, but that's mostly a technical problem and one I need to solve anyway.

The other issue is how do I naturally have non-spell casting characters have an easier time of recruiting and retaining hirelings and henchmen than spell casters? There's no point adding recruitable monsters (and in Angband terminology a monster is anyone who is not the player, so a Novice Priest is a monster) if spell casters have as easy a time with this as non-spell casters.

I suspect I'm going to end up with a hireling morale value - how cheap it is to hire, how loyal are people to you and how long do your henchmen stay with you - that is influenced by three factors: reward, respect and fear.

Reward is straight forward: how much loot (and experience) do you give to your hires?

Respect increases with how much danger you put yourself in, compared to your underlings. Going toe-to-toe in melee will generate the highest respect, which is the first way non-spell casting characters will have an easier time with henchmen and hirelings. But this only benefits melee specialists, not thrown weapons specialists or archers.

Fear inversely effects some interactions: if you are feared, people will obey you more readily, but you lose long term loyalty - which increases the cost of recruiting and reduces the length of the hire.

Fear is going to be slightly trickier to define, but given my requirements above, I'll base fear on the following metric:

Fear is increased when you use ranged magical abilities, as long as the henchmen cannot use the ability themselves, and is not immune to the ability.
So if you cast charm person a lot, you'll drive away henchmen who can be charmed by you; if you want to use a lot of fire magic, hire minions who are immune to fire, and so on. Summoning spells increase fear regardless.

It may make more sense to label this stat superstition - it encapsulates the kind of uncomfortable position most hirelings would find themselves in working for a wizard.

[Edit to add: Archers (and thieves) don't generate fear at all (since they don't use magic), which means that the reward contribution is not downgraded by the negative effects of fear. Essentially they are able to recruit without restriction as long as they generate rewards, where a spell caster has to be careful with their recruits because he/she risks alienating them through fear.]

5 comments:

mos said...

I like the concept. The only thing you brought up but didn't address is how archers (or other non-magical, ranged character) will attract hirelings.

Andrew Doull said...

Oops.

Archers (and thieves) don't generate fear at all (since they don't use magic), which means that the reward contribution is not downgraded by the negative effects of fear. Essentially they are able to recruit without restriction as long as they generate rewards, where a spell caster has to be careful with their recruits because he/she risks alienating them.

Granite26 said...

There's also the option of paying hirelings in the form of loot that wizard characters would otherwise use.

Add healing/divine as a fear reducer to create a circular feedback strategy.

Mikolaj said...

I'm impressed by the quality of the design. Being a perfectionist, I normally detest non-player controlled allies, since they get in the way and die a lot, resulting in markedly non-perfect battles. I end up yearning for direct control of the allies and I micromanage their moves as much as possible using any clumsy tricks at my disposals (e.g. changing global ally tactics every turn to influence their individual moves or disbanding and recruiting them every turn to influence their position which I can't control directly).

But what you describe is not just another attempt to AI-control some actors to streamline the play, which only makes it frustrating and slower in the end. The opposite --- it's an interesting tactical challenge, where the allies are not clumsy helpers but independent actors, with behaviour easy to intuitively understand and nontrivial trade-offs to try out, perfect and adjust to situation at hand. Good luck with the implementation!

Antoine said...

Just let any character recruit allies, but if you cast a spell when your ally is in the room, they turn round and shoot you once (or if they don't have a missile attack, they run at you and hit you one time)

A.

(?)