incremental patch discussion

The Cymek is a religious unit for the Technocracy religion; it is actually a cyborg.
Yes, I know that Cymek are mechanical bodies controlled by a human brain, I just missed that they require Technocracy religion to be built (is it represented in Pedia?). Thank you for clarifying.
 
, in the list of buildings in the city screen, you should see spice commerce income based on the number of spice resources you control. Is this working for you?

Ah, yes it does.

RE: Spice

I find spice income is irratic at best as the worms are doing a good job at reminding me its not a steady fixed income. Unless your running serfdom, which I never do if another civic is available, its quite a time investment for workers to rebuild all those harvesters, (playing at epic gamespeed). I haven't found a way to effectively counter them at this stage. I think this is one of the elements that balances out the large value of spice.
 
Part of why Serfdom is a good civic :)

If you use Arrakis Spice civic, then you can build Spice Workers, who have high movement and build rate, but can only build harvesters. A couple of those can keep the depredations of worms down to a minimum.
 
At this point, I am not sure which is harder, removing RevDCM or finding the point bug which has crept in. Perhaps the best approach would be to take the 1.6.5 source code, find the changes which are marked by me, or cephalo as all-terrain related, and make sure all of them are in the 1.7 source code.

I think we should release 1.7.3 anyway as planned. The fact that it has taken so long to notice that Thopters and Suspensors can't attack cities proves the mod is playable without that feature, and 1.7.2 is quite nastily bugged. People can always use the Monitor Warship for worm hunting...

Making a new SDK might take some time.
 
On thopters and suspensors vs. cities: I thought it was a deliberate feature, to represent that these units were open terrain units rather than city attackers.

Though I can see how having a monitor ship not able ot attack cities would be a problem.
 
On thopters and suspensors vs. cities: I thought it was a deliberate feature, to represent that these units were open terrain units rather than city attackers.

Ah-ha! It is not a bug, it is a feature!

Many units do get a percent penalty on attacking cities. This is a bigger problem, they cannot even target units in cities. This is not on purpose.
 
following the revdcm discussion, ive been thinking , on making a new fresh dll file, with just the stuff needed for dune.

but i wonder what parts are needed,

davidlallen said:
Perhaps the best approach would be to take the 1.6.5 source code, find the changes which are marked by me, or cephalo as all-terrain related, and make sure all of them are in the 1.7 source code.

I think that making a fresh DLL is going to be far harder. I'm fairly sure we have other modcomps like Mountains Back to Service (used for Mesa) and JCultureControl (which I think we use for something - can't remember what). Also, it is arguably only the Revolutions part of RevDCM that we don't want - I guess we'd still want the Dale's Combat Mod part for airbombing and artillery options.
 
Comparing 1.6.5 with 1.7.3 code, the function CvUnit::canMoveInto seems like the most likely issue. There are a few tweaks there that I could see causing issues for units with DOMAIN_SEA like the Thopters and Suspensors.

I have managed to build my first vanilla SDK, so I am currently attempting to build my first Dune Wars one to test the theory by rolling back just this function.
 
Mmmm. Doesn't seem to be that one, even with that function rolled back to how it was in 1.6.5 I still can't attack cities with Thopters. I figured it had to be something in CvUnit because that is where the code that decides whether a unit can attack or move seems to be, but now I'm a bit stumped.
 
Well, I've eliminated the possibility that it is anything to do with CvUnit:canMoveInto at least. Even if I stub it out like this...

Code:
bool CvUnit::canMoveInto(const CvPlot* pPlot, bool bAttack, bool bDeclareWar, bool bIgnoreLoad) const
{
	return true;
}

... my thopters still can't attack cities. Will continue hunting tomorrow... if anyone has any suggestions let me know as I'm completely new to this code. I still have a feeling it is either to do with a change to DOMAIN_SEA units or canMoveAllTerrain units.

At least I've learned how to compile my own DLL this evening. :)
 
No closer to finding the problem. I have asked for some pointers on the SDK forum.

I have however further diagnosed the problem. The Thopters/Suspensors cannot even enter an undefended enemy city, so it is not specifically to do with attacking.
 
DOMAIN_SEA units cannot capture an enemy city, even if the city has no defenders. My guess would be a change related to naval bombardment is the culprit for why thopters and suspensers cannot attack a city. Hope this helps.
 
Gotcha. The methodical approach has yielded fruit in the end...

Basically, this rather crucial bit of logic from koma that determines whether a group is attempting an amphibious assault...

Code:
bool CvSelectionGroup::isAmphibPlot(const CvPlot* pPlot) const
{
	bool bFriendly = true;
	CvUnit* pUnit = getHeadUnit();
	if (NULL != pUnit)
	{
		bFriendly = pPlot->isFriendlyCity(*pUnit, true);
	}

	// Dune Wars Mod Transporter koma13 START
	//return ((getDomainType() == DOMAIN_SEA) && pPlot->isCoastalLand() && !bFriendly);
	return ((getDomainType() == DOMAIN_SEA) && pPlot->isCoastalLand() && !bFriendly && !(pUnit->canMoveAllTerrain()));
    // Dune Wars Mod Transporter koma13 END
}

...has been replaced with this...

Code:
bool CvSelectionGroup::isAmphibPlot(const CvPlot* pPlot) const
{
	bool bFriendly = true;
	CvUnit* pUnit = getHeadUnit();
	if (NULL != pUnit)
	{
		bFriendly = pPlot->isFriendlyCity(*pUnit, true);
	}

	// Dune Wars Mod Transporter koma13 START
	//return ((getDomainType() == DOMAIN_SEA) && pPlot->isCoastalLand() && !bFriendly);
	//this is koma's line: disabled for now
	//return ((getDomainType() == DOMAIN_SEA) && pPlot->isCoastalLand() && !bFriendly && !(pUnit->canMoveAllTerrain()));
    // Dune Wars Mod Transporter koma13 END
	//return ((getDomainType() == DOMAIN_SEA) && pPlot->isCoastalLand() && !bFriendly && !canMoveAllTerrain());

	if (getDomainType() == DOMAIN_SEA)
	{
		
		if (pPlot->isCity() && !bFriendly && (pPlot->isCoastalLand() || pPlot->isWater() || canMoveAllTerrain()))
		{
			return true;
		}
		return (pPlot->isCoastalLand() && !bFriendly && !canMoveAllTerrain());
	}
	return false;
}

I've reverted this back to how it was in DW 1.6.5, plus I've reverted a few other bits of koma's logic that looked like they got overwritten just to be on the safe side. Thopters and Suspensors can now not only attack, but also capture cities. Hurrah.

I'll post a 1-7-2-6 patch shortly, with the new DLL, source code, plus the Monitor/Great Convention python and an art fix. Then I think we are set to release 1.7.3. :)
 
Incremental Patch 1.7.2.6

Install Sequence: 1.7 -> 1.7.2 -> 1.7.2.4 -> 1.7.2.5 -> 1.7.2.6

+ Thopters and Suspensors can attack and capture cities again!

+ Monitor Warship can no longer be built conventionally - you must build the 5 Monitor Projects then it will appear in your capital city.

+ Building the Great Convention Breached! Wonder now gives 3 Atomics in your capital city.

+ CHOAM Headquarters weakened, now only provides +2 commerce per Spice.

+ The iAITradeModifier has been set to -100 for the Spice to stop the AI doing any trades involving spice.

+ Fixed Main Menu slide show and added 3 new slides

Download Link

Hopefully david will be so kind as to bag this up as 1.7.3 soon...
 
Top Bottom