Dune Wars 1.9 Final Release Feedback

Another idea I'd like to begin discussion on is the Kwasitasz Haderash (I'm sure that's misspelled, just roll with it). I don't like how it's so tied into the simplistic system of how many hammers you can pump out. It's too much of a given that you'll produce one as the Bene Gesserit. The initial thoughts I've had are going towards giving each breeding project a chance to fail, requiring you to try building it again. I'm not entirely sure about this, but at least it would give the feel that it's not a certainty, and, much like the bene gesserit in the books, you don't really know when you might actually achieve it, or if you will.

Any other ideas and thoughts on this are quite welcome.

You could introduce some kind of KH counter, giving an X% chance of spontaneously generating a KH per turn. The Bene Gesserit breeding program could then be an inexpensive, repeatable project that increases this counter, or a more expensive project that adds to the counter every turn. My first preference is for the latter, so the breeding program is a more passive, behind the scenes activity. Resources can be committed to improving its efficiency, but not required to make any progress at all.

Example:
Palace provides +1 KH point/turn
Breeding Program 1 provides +1 KH point/turn
Breeding Program 2 provides +2 KH points/turn
Breeding Program 3 provides +4 KH points/turn
Breeding Program 4 provides +8 KH points/turn

Each turn:
Precursor spawn odds KH in 1000, requires Education tech
Aspirant spawn odds KH in 2000, requires Mental Discipline tech
Candidate spawn odds KH in 4000, requires Water of Life tech
Haderach spawn odds KH in 8000, requires Prescience tech

The KH counter would reset to zero when a Kwisatz spawns, and they must spawn in sequence.

Additionally, fixed bonuses for certain events might be added to the KH counter:

An acolyte successfully performs the political marriage action, +2 KH
Every truthsayer in play, +10 KH
Kwisatz unit gains a level, +10 KH (Kwisatz units would need a combat strength buff to make this viable)
A repeatable project (arranged marriage?) that adds KH points?

The numbers are just suggestions, and would obviously have to scale with game speed.

Anyway, that's my idea. From my total lack of programming experience it looks like something that should be moderately feasible to implement.
 
Along those lines: what happens to failed Kwisatz Haderachs? Would they just die? Or might they have a chance of becoming twisted mentats? Or going rogue, possibly changing factions (also barbarians?), or going berserk? Assassinating, performing hurtful espionage missions.. only the amount of work needed seems overwhelming.
They'd most likely die. Remember that to fully realize his potential, Paul had to pass the trial of the Water of Life, and if he couldn't have, he'd have lethally poisoned himself.
 
You could introduce some kind of KH counter, giving an X% chance of spontaneously generating a KH per turn. The Bene Gesserit breeding program could then be an inexpensive, repeatable project that increases this counter, or a more expensive project that adds to the counter every turn. My first preference is for the latter, so the breeding program is a more passive, behind the scenes activity. Resources can be committed to improving its efficiency, but not required to make any progress at all.

Example:
Palace provides +1 KH point/turn
Breeding Program 1 provides +1 KH point/turn
Breeding Program 2 provides +2 KH points/turn
Breeding Program 3 provides +4 KH points/turn
Breeding Program 4 provides +8 KH points/turn

Each turn:
Precursor spawn odds KH in 1000, requires Education tech
Aspirant spawn odds KH in 2000, requires Mental Discipline tech
Candidate spawn odds KH in 4000, requires Water of Life tech
Haderach spawn odds KH in 8000, requires Prescience tech

The KH counter would reset to zero when a Kwisatz spawns, and they must spawn in sequence.

Additionally, fixed bonuses for certain events might be added to the KH counter:

An acolyte successfully performs the political marriage action, +2 KH
Every truthsayer in play, +10 KH
Kwisatz unit gains a level, +10 KH (Kwisatz units would need a combat strength buff to make this viable)
A repeatable project (arranged marriage?) that adds KH points?
This. Perhaps in combination with my suggestion of the KH unit replacing an existant unit. Because really, as awesome as the KH powers are, Paul was no rookie before that. He was fighting training meks at the highest settings and he'd already been taught a thing or two by Thufir, Duncan and Jessica.
 
From Deliverator's to-do list:
+ I hope espionage will get more thorough documentation and its own entry in the Dune Wars Concepts section.
I'm going to take a stab at this. It won't be finished tomorrow but I can start on something.

Would it be okay if I just made it plain text? I don't know how xml works or anything, but I imagine that creating a text would be the main body of work...
 
Along those lines: what happens to failed Kwisatz Haderachs? Would they just die? Or might they have a chance of becoming twisted mentats? Or going rogue, possibly changing factions (also barbarians?), or going berserk? Assassinating, performing hurtful espionage missions.. only the amount of work needed seems overwhelming.

Edit: After thinking it over, I actually meant; creature such unique and sophisticated as KH may take many forms and has never proven to be controllable, as seen in the books:

I do remember a conversation between Paul and G.H.Mohiam:
"The drug's dangerous," she said, "but it gives insight. When a Truthsayer's gifted by the drug, she can look many places in her memory — in her body's memory. We look down so many avenues of the past . . . but only feminine avenues." Her voice took on a note of sadness. "Yet, there's a place where no Truthsayer can see. We are repelled by it, terrorized. It is said a man will come one day and find in the gift of the drug his inward eye. He will look where we cannot — into both feminine and masculine pasts."
"Your Kwisatz Haderach?"
"Yes, the one who can be many places at once: the Kwisatz Haderach. Many men have tried the drug . . . so many, but none has succeeded."
"They tried and failed, all of them?"
"Oh, no." She shook her head. "They tried and died."

But there was also a successful Tleilaxan Kwisatz Haderach! Or so Master Scytale, the Face-Dancer lied. He said:
"Because we once bred a kwisatz haderach of our own," Scytale said.
With a quick movement of her old head, the Reverend Mother looked up at him.
"You didn't tell us that!" she accused.
"You didn't ask," Scytale said.
"How did you overcome your kwisatz haderach?" Irulan asked.
"A creature who has spent his life creating one particular representation of
his selfdom will die rather than become the antithesis of that representation,"
Scytale said.
"I do not understand," Edric ventured.
"He killed himself," the Reverend Mother growled.

"What was the origin of your kwisatz haderach?" the Reverend Mother asked.
"We've dabbled in various pure essences," Scytale said. "Pure good and pure
evil. A pure villain who delights only in creating pain and terror can be quite
educational."
"The old Baron Harkonnen, our Emperor's grandfather, was he a Tleilaxu
creation?" Irulan asked.
"Not one of ours," Scytale said. "But then nature often produces creations
as deadly as ours. We merely produce them under conditions where we can study
them."
About Mauad'Dib:
He was a creature who had developed
firmly into one pattern. He'd destroy himself before changing into the opposite
of that pattern. That had been the way with the Tleilaxu kwisatz haderach.
Have you considered creating Kwisatz haderach by Tleilaxu as well? Make it sort of competition? Their creation might be coming in many forms, be cheaper to create, but ultimately less powerful?
 
After some considerable thought, here's my current (and by no means final) line of thinking. The various aspirants would remain easy to create, just by way of the breeding projects. They are just 'experiments', stepping stones, along the way. They would still be separate units in and of themselves, just as they are now. They should be less powerful considerably than what they are, and I'm not entirely sure they should always have combat as their specialty, have a random pool for each with several different bonuses (like the mentats perhaps) that are possible.

Now, the Kwisatz Haderach himself... should not be so easy. Or even a given. I like where Natasha's idea was headed with this, but after creating the final breeding project, this shouldn't just be a random waiting game for the player after that. The basic concepts of design here is the player has to have continued control and desision making that effects when the Kwistatz Haderach is produced - but - not full control.

So, there's is to begin with, a miniscule chance the project actually creates a KH, which would be applied by promotion to an existing high experience melee unit. More than likely, nothing will happen :nya: - BUT - it does two things. For one, the KH may 'pop up' randomly with no further input after this. May take a long time. May take forever (e.i. not happen in the game span). To influence this, the player has to make a strategic choice to devote resources or not, possibly in the form of a process (like producing wealth), or a cheap rebuildable building. I'm leaning towards the process approach. I don't want it to be tied to how many hammers you can pump out of a city. I like the idea of Political Marriages having a (small) effect as well, though I don't want to force players to go that route every time.

Now, this process could add to a global counter like clearbeard suggested that over time brings the odds of the KH appearing higher, or it could just affect the odds on that turn while a city/cities are producing it. that's a matter of balance and feel largely that would have to be played with.

The AI would almost certainly be exempt from this and would just get a higher chance of him appearing to begin with after building the final breeding project.

Nothing is set in stone, and it'll be a few weeks at best before I consider tackling this (working on espionage right now), so keep the ideas and feedback coming.

Chris

p.s. sorry kwis, almost forgot your post there. failed and competing KH's is a bit out of the initial scope, at least for now, as the basic design is the first thing to consider. Maybe at a later date those things can be looked at. I also definitely appreciate the references from the books, it's been about eight years since I read all six books, I've only re-read dune itself once since then. I certainly didn't remember about the Tleilaxu KH.
 
I'm going to take a stab at this. It won't be finished tomorrow but I can start on something.

Would it be okay if I just made it plain text? I don't know how xml works or anything, but I imagine that creating a text would be the main body of work...

That would be great. If you write something up in plain text, I can figure out where to put it :). Though right now I'm overhauling some of the internal workings of the espionage system, and figuring out the rebalancing of who gets what missions, tiering the promo lines that aren't (like we'd discussed), so it probably needs to wait until we get it nailed down a bit.

Here's where we stand, with more work underway. Some of this stuff refers to stuff in the dll code that might not mean much to most people. To say the least, the original spy code, if you'll remember, didn't make allowances for spy promotions, that was added by modder's. A number of things were never really matched up, documented, or implemented properly and I'm trying to set that all in order.

An example of where the code doesn't match what you'd expect to happen (based on game text) is building espionage defense. You'd expect it to not only make missions against the city more expensive, but also make it more difficult for enemy spies to carry out missions against the city. The first part is true, but the original code doesn't actually look at the amount of spy defense buildings give. Instead, if any building in the city has any amount of spy defense (could be 5% or 100%, wouldn't matter), it treats it as if there were a friendly spy stationed there giving a flat 15% bonus to enemy spy detection in the city's plots - which wouldn't stack with an actual friendly spy there :sad:, still 15%. There were also cases of the spy promotions not actually doing what was advertised and/or missing proper game text showing the user they were working even where they were. Anyway, here's the list so far:

Espionage changes
- stealth promos act as a negative multiplier to chance of being detected (updated AI weight) instead of subtraction from detection chance
- stealth promos changed to 35%(I), 30%(II), and 25%(III) (meaning with all 3, a unit is 90% less likely to be caught than without)
- Buildings with Spy Defense actually contribute to spy detection based on their bonus%
- before, any building with spy defense was treated the same as having a spy stationed in the city with a flat 15% bonus to detection, regardless of spy defense bonus
- now uses a formula to detirmine spy detection bonus based on spy defense, stackable with stationed spy unit
- uses a diminishing returns function that prevents too many stacked bonuses from becoming overpowered
- counterespionage mission available to all without security promo, security 3 is gone, security 1 & 2 add to visibility and enemy spy interception, counterespionage bonus
- security promos still only available to same civs as before
- counterespionage no longer always 100% success rate (difficulty mod changed from -100% to 0%)
- spies get experience (fairly small amounts) when in enemy territory based on chance of being caught
- spies recieve fractional xp based on difficulty of mission
- fixed game text to show dexterity bonus to mission cost
- internal changes to the way dexterity and stealth operate (to match their original intent better)
- stealth makes getting caught in enemy territory less likely, and has a moderate impact on mission success (was quite overpowered in mission success before)
- dexterity gives bonus to mission cost without having to fortify as long (or not at all with dexterity 3), and now actually gives bonus to mission success
 
- stealth promos changed to 35%(I), 30%(II), and 25%(III) (meaning with all 3, a unit is 90% less likely to be caught than without)
- spies get experience (fairly small amounts) when in enemy territory based on chance of being caught
I assume the xp is calculated before the stealth promotions are factored in?

While you're working on espionage, will you be looking into the Annex crash issue? Happened again a couple of times during a multiplayer game, very annoying... :twitch:
 
I assume the xp is calculated before the stealth promotions are factored in

no, it is factored in on purpose. The stealth promos are quite powerful, but their drawback is that while your units are at less risk, they will also get less xp for that risk. This works on the same principle that the higher the risk you're taking attacking an enemy unit, the more xp you'll get. So, yes, a combat5 unit will get less xp for attacking the same enemy as a green unit, but... he's also got a 99% chance of surviving while the unpromoted unit has 56% (hypothetical numbers of course).

While you're working on espionage, will you be looking into the Annex crash issue? Happened again a couple of times during a multiplayer game, very annoying...

I'll poke my head around there and see what I can see.

Edit: think I might have found something. Here's the code, note the bold parts.

Code:
	if (kMission.getBuyCityCostFactor() > 0)
	{
		if (NULL != pPlot)
		{
			CvCity* pCity = pPlot->getPlotCity();

			if (NULL != pCity)
			{
				szBuffer = gDLL->getText("TXT_KEY_ESPIONAGE_TARGET_CITY_BOUGHT", pCity->getNameKey()).GetCString();
				[B]acquireCity[/B](pCity, false, true, true);
				// davidlallen: city flip penalty start
				GET_PLAYER(eTargetPlayer).AI_changeMemoryCount(getID(), MEMORY_MANIPULATED_US, 1);
				[B]pCity[/B]->changeOccupationTimer(GC.getDefineINT("BASE_OCCUPATION_TURNS") + (([B]pCity[/B]->getPopulation() * GC.getDefineINT("OCCUPATION_TURNS_POPULATION_PERCENT")) / 100));
				if ((!GET_TEAM(eTargetTeam).isHuman()) && (GET_TEAM(eTargetTeam).canDeclareWar(getTeam())))
				{
					int iRand = GC.getGameINLINE().getSorenRandNum(10, "Manipulate declare war");
					int iMem = GET_PLAYER(eTargetPlayer).AI_getMemoryCount(getID(), MEMORY_MANIPULATED_US);
					if ((-iMem) > iRand)
					{
						GET_TEAM(eTargetTeam).declareWar(getTeam(), true, NO_WARPLAN);
					}
				}
				// davidlallen: city flip penalty end

				bSomethingHappened = true;
			}
		}
	}

The problem with this is that the 'acquireCity' function deletes the old city, creates a new one, transferring all the buildings, etc., from the old to the new. Which means the pointer 'pCity' no longer exists. If I'm right about this (which looks likely, it's a big no no), then I should be able to fix it easy. Won't know for sure until I can test it though.
 
ChrisAdams3997 said:
no, it is factored in on purpose ... This works on the same principle that the higher the risk you're taking attacking an enemy unit, the more xp you'll get.
Good point.

ChrisAdams3997 said:
The problem with this is that the 'acquireCity' function deletes the old city, creates a new one, transferring all the buildings, etc., from the old to the new. Which means the pointer 'pCity' no longer exists. If I'm right about this (which looks likely, it's a big no no), then I should be able to fix it easy. Won't know for sure until I can test it though.
Hmm.. If it is the pCity pointer shouldn't it always not work? That's clearly not the case; several people, myself included, report that sometimes Annex City works perfectly fine.
If it's any help I've attached the save from my latest multi. I have a Truthsayer in the Fremen city of Tasmin Sink, Annex caused a crash there 3 or 4 times. (The save is from just prior to the second attempt.) Eventually I moved the spy to Windgap Sietch and tried to take that instead, causing another crash at which point we gave up for the time being...


View attachment annex crash.CivBeyondSwordSave
 
So, there's is to begin with, a miniscule chance the project actually creates a KH, which would be applied by promotion to an existing high experience melee unit.

I have a little trouble with both of these. First, as a player, I find it less fun when there is a small chance per turn of some important thing happening. It could be a long time away and I can't really plan around it. I can make plans around a project which has a fixed high hammer cost. Second, in lore, KH is a *breeding* program. So it makes less sense to me, to apply the bonus to an existing unit. In some games that span generations, a new unit appearing can be a child coming of age. This fits pretty well with Paul, I think.
 
I have a little trouble with both of these. First, as a player, I find it less fun when there is a small chance per turn of some important thing happening. It could be a long time away and I can't really plan around it. I can make plans around a project which has a fixed high hammer cost. Second, in lore, KH is a *breeding* program. So it makes less sense to me, to apply the bonus to an existing unit. In some games that span generations, a new unit appearing can be a child coming of age.
Good points both. That's what I like about clearbeard's idea, a global counter that you can either leave as is and which eventually produces the KH on it's own, but which can also be worked at (repeatable project, political marriage etc.)
You already know where I was coming from with the idea of 'upgrading' an existing unit but I see your point on that as well. Still think the KH needs a non-trivial combat strength though, and needs to be able to gain xp.

Idea: Whenever you produce a melee unit, you can attempt to turn it into the KH. This option appears after completing a breeding project; it has a success chance based on the KH counter. If unsuccessful, there may be a chance the unit dies, otherwise the KH promotion(s) is/are applied.
 
If any of you are familiar with FfH, perhaps we could use something similar with how the gregori adventurers work where you pop the KH unit as now, but he's upgradable to any available melee unit class?

First, as a player, I find it less fun when there is a small chance per turn of some important thing happening. It could be a long time away and I can't really plan around i

The point of my proposal is so you can't 100% predictably plan around it ;). I see and know your point, but I'm thinking along the lines the KH shouldn't be just another wonder (especially given isn't only available to one civ), just another item to min/max (I put in this many hammers, I get this much return), but something you have to take a real risk for, something that's not just 'oh, the project is finished, time to go a-conquerin', but a real anticipation as you pour resources into it, and then... then... *BOOM* it happens. But it's only worth it if we can produce a system that really delivers that, if it can deliver that game after game, and if people even want it or prefer the predictability :lol:. So you can think of this as an 'exploratory' discussion where I'm not sold myself yet, just considering the possibilities.

One other important note here is that one of the key design goals I'd have is that the player has to always have some controlling involvement in the process. It can't just be a random waiting game, but at the same time, the player shouldn't have 100% control over when. If you invest resources into it (by whatever best method we can prescribe) it will happen, the more resources, the quicker, but you won't necessarily know how much or how long. The amount of variability in the system would of course be important to the feel and therefore it's balance and scaling (to game speed and world size) would be very important.
 
Second, in lore, KH is a *breeding* program.

This is a good point with regards to high randomness in the appearance of the KH, too. The Bene Gesserit as I recall were confident they would have the KH the generation after Paul (who was supposed to be a girl, and bred with Feyd Ruatha Harkonnen), he just accelerated the process with his own stubbornness and sense of self-importance. So some element of chance and variation makes sense in this context, but not one that produces highly random results. Maybe something along the lines of the Master of Orion 2 tech chances? You invest the base cost, and any investment beyond that adds to the chance of actually discovering the tech (or breeding the KH) the following turn.
If any of you are familiar with FfH, perhaps we could use something similar with how the gregori adventurers work where you pop the KH unit as now, but he's upgradable to any available melee unit class?
Works for me.
 
Another goal regarding the combat strength and "upgradeability" of the KH was that the unit should not be able to take a city, kill armies single-handedly, etc. The idea was to augment the combat strength or abilities of other units. The FFH Grigori adventurer, when "young", fits this because it is weak. But an "old" adventurer can and often does take cities by itself. I would rather avoid this. In a stack, the KH will be safe, but if you catch it on its own you might kill it.

I can't remember the character name offhand, but in book 1 there is a character who is "almost" a KH, from some other breeding line. That is what I was trying to capture with multiple projects; after one project you get a "useful" unit, once you complete multiple projects you could have multiple useful ones. But the latest one is always much more useful than the previous ones.
 
Another goal regarding the combat strength and "upgradeability" of the KH was that the unit should not be able to take a city, kill armies single-handedly, etc. The idea was to augment the combat strength or abilities of other units. The FFH Grigori adventurer, when "young", fits this because it is weak. But an "old" adventurer can and often does take cities by itself. I would rather avoid this. In a stack, the KH will be safe, but if you catch it on its own you might kill it.
The way I see it, there are two points to consider regarding the KH.

1. Should there be randomness involved in creating him?
2. How powerful should he be?

Ad.1
I feel a certain amount of randomness would be cool. I agree with David's point that it shouldn't be too random, so some player actions should influence the process.

Ad.2
Also agreeing with David here, the KH shouldn't become a super unit that can do everything on his own. At the same time, I think that he should have some survivability even on his own.
Perhaps it's possible to go the FFH archer route here and give him a defensive strength boost only?
I also feel he should be able to gain xp in order to remain on par (or somewhat below par, more likely, given his stack boosting abilities) with later units.
 
I can't remember the character name offhand, but in book 1 there is a character who is "almost" a KH, from some other breeding line

I think Fenring was, though it's been a while since I've read the books.

Anyway, what ever way the consensus lands I'm pretty much good with it, wether that be the status quo or not, as the original design is by no means broken, but I think could be improved upon. Again, my main arguement is it's just a wee bit too predictable for a breeding program. Just ask any livestock breeders (if you know any) how easy or predictable they are :).

Chris

Legal Disclaimer:
I'm not nor have I any intention of turning this into a discussion of the reality of or inherent randomness of mandelian genetics as applied to livestock or other breeding programs. Any above statements related to the aforementioned matter is to be construed as a lighthearted and goodnatured poke at the present discussion
. :D
 
I have released patch 1.9.3 here. Mostly to release new unit and building art.
 
Hi, I recently re installed this mod. I'd forgotten how much fun it was. So many new changes... I'm not big on the randomness idea for the Kwisatz Haderach.
It was Fenring who was almost Kwisatz Haderach. "Fenring was one of the might-have-beens, an almost Kwisatz Haderach, crippled by a flaw in the genetic pattern-a eunuch, his talent concentrated into furtiveness and inner seclusion." (He's one of, if not the only character that can kill the real KH.)
 
lol, looked for the problem in the inquisition code today and found it. There is no inquisition code :lol:. I'll have to merge it in from RevDCM this weekend.

edit: I'd assumed it'd be in the dll like RevDCM inquisitions since that's what I've looked at before. Found the python code and having a look over it. I do hate python though... :rolleyes:
 
Top Bottom