My custom civ - Project Discussion

*facepalms* The dam spell checker edited that. I corrected that in my personal version(along with taking some suggestions from tufloss)


But the content is ok?
The idea would be that just like all living things (humans etc.) have the spark of Nemed these guys have a proto spark created by the power explosion when Bhall fell.
That is why they are limited as to what spells they can use and some other stuff but they are for all intents and purposes sentient while not being a direct creation of the One.

Is that ok with the whole lore thing. I am dreadfully afraid of breaking out of it.

Progress:
Design - 90%
XML - 20%
Python - Design done, coding to do
Dll - nothing required
 
Yeah, the basic idea seems okay to me. They are essentially golems, and we already know of one golem who received a spark... Barnaxus, from Mulcarn. Through him, the Machine Spirits of the Mechanos were created, so there's already an analog to what you want to do in the lore. I see no issues with it, really.
 
Er... a small design oversight so I have to ask...

Is there any way to make a corporation or building give X happy/health per resource consumed?
You know like making a building or corporation remove the 2 resources used limit from a city (or just to remove it altogether without the DLL) so that a city can get 5 happy from 5 of the same resource?

If not I will have to resort to the medthod used for the scions.



Also, I am having troubles inputing any art via the module at all.
I make a unit/dds properly, I test it in base RiFE (without module, just swapping and XML) and it works fine.
But when I try putting it in with my module it fails, even thou the XML is a carbon copy of the one I used for testing.

There are two cases that I have run into:
1. I name the nif/dds with a name corresponding to the original I want to replace (for example bloodpet), I read through the XML and give the nif/dds the appropriate names and create a perfect duplicate folder structure to place them in (all within my module).
Now logically, when the game loads my nif/dds should replace the original in the game. But it does not. Instead the game uses the original art as if my art does not exist at all.

2. I put the nif/dds into the module as a new item, create the appropriate XML and try it out as new art for a new item.
But my new unit/tech/resource/... ignores them completely and all I get is red blobs/purple box even thou I tested the file and know it works.


Does anyone have any idea what might be causing this? I have a feeling I am forgeting something basic.



Also, their racial promotion will make them: Not alive, -50% vs Fire and Water damage and they will be unable to work water tiles. Do you think the last is a bit too much?
 
What is the folder name of your module? If it contains spaces there can be trouble with buttons. Jheral had some, when his was named "Mekaran Order" instead of just Mekara
 
The name is PPQ, no spaces.

Here is one of the paths I am using for an example: Art/Units/Civs/PPQ/PPQ_1/warrior.nif
 
Also, their racial promotion will make them: Not alive, -50% vs Fire and Water damage and they will be unable to work water tiles. Do you think the last is a bit too much?
No, as long as they are able to compensate that loss. Note that you'd need to make them not able to research Fishing for that.
 
No, as long as they are able to compensate that loss. Note that you'd need to make them not able to research Fishing for that.
They will get a unique magic tree and a machinos affinity like power (+10% strength per fire node they control).

And yes, I disabled fishing for them and made their unique tech an "or" requirement for sailing. So they can get sailing but not fishing.


Also, all my units are just reskins and the folders contain the .nif and .dds files. My buttons are just .DDS files. I am getting problems with both.


PS. Yes I did name my civ, module and all other things PPQ. So you have things like ART_DEF_UNIT_PPQ1, ART_DEF_UNIT_PPQ2...
But I don't think this could be causing a problem. I even copied over the original folder structure: Art/Units/Civs/[civname] (PPQ in my case)/[unitname]/[nifname] (helps me keep things in order)
 
I know I should not double post (well I think I should not but w/e) but I am still stuck with that art issue. Am I doing something wrong?
 
Edit:

*facepalm*

While I waited, and waited, and waited I did some debugging and checking and examining and found what I had done wrong.


Example:
My code: Art/Units/Civs/PPQ/PPQ_1/warrior.nif
The code that works: Modules/NormalModules/PPQ/Art/Units/Civs/PPQ/PPQ_1/warrior.nif

Someone see where I was wrong?


This is embarrassing.


Edit: I thought I had removed the attachment.


Reguardles, another problem.
Code:
		<PromotionInfo>		<!-- Creation III -->
			<Type>PROMOTION_CREATION3</Type>
			<Description>TXT_KEY_PROMOTION_CREATION3</Description>
			<PromotionPrereqOr1>PROMOTION_CREATION2</PromotionPrereqOr1>
			<PromotionPrereqOr2>PROMOTION_PPQ_CREATION2</PromotionPrereqOr2>
			<UnitCombats>
				<UnitCombat>
					<UnitCombatType>UNITCOMBAT_ADEPT</UnitCombatType>
					<bUnitCombat>1</bUnitCombat>
				</UnitCombat>
				<UnitCombat>
					<UnitCombatType>UNITCOMBAT_ANIMAL</UnitCombatType>
					<bUnitCombat>1</bUnitCombat>
				</UnitCombat>
				<UnitCombat>
					<UnitCombatType>UNITCOMBAT_ARCHER</UnitCombatType>
					<bUnitCombat>1</bUnitCombat>
				</UnitCombat>
				<UnitCombat>
					<UnitCombatType>UNITCOMBAT_BEAST</UnitCombatType>
					<bUnitCombat>1</bUnitCombat>
				</UnitCombat>
				<UnitCombat>
					<UnitCombatType>UNITCOMBAT_DISCIPLE</UnitCombatType>
					<bUnitCombat>1</bUnitCombat>
				</UnitCombat>
				<UnitCombat>
					<UnitCombatType>UNITCOMBAT_MELEE</UnitCombatType>
					<bUnitCombat>1</bUnitCombat>
				</UnitCombat>
				<UnitCombat>
					<UnitCombatType>UNITCOMBAT_MOUNTED</UnitCombatType>
					<bUnitCombat>1</bUnitCombat>
				</UnitCombat>
				<UnitCombat>
					<UnitCombatType>UNITCOMBAT_NAVAL</UnitCombatType>
					<bUnitCombat>1</bUnitCombat>
				</UnitCombat>
				<UnitCombat>
					<UnitCombatType>UNITCOMBAT_RECON</UnitCombatType>
					<bUnitCombat>1</bUnitCombat>
				</UnitCombat>
				<UnitCombat>
					<UnitCombatType>UNITCOMBAT_SIEGE</UnitCombatType>
					<bUnitCombat>1</bUnitCombat>
				</UnitCombat>
				<UnitCombat>
					<UnitCombatType>UNITCOMBAT_COMMANDER</UnitCombatType>
					<bUnitCombat>1</bUnitCombat>
				</UnitCombat>
			</UnitCombats>
			<Button>Art\Interface\Buttons\Promotions\Creation3.dds</Button>
		</PromotionInfo>
This is supposed to make Creation3 require PROMOTION_CREATION2, PROMOTION_PPQ_CREATION2 right?
Well, the pedia tells me that it requires Creation 2, PPQCreation 2, Channeling 3 AND Creation 2.
What is up with that?


Creation 2 is listed twice, as both an AND and a OR requirement and Channeling 3 is listed even thou I did not enter it in the XML at all.

I mean I probably made some mistake but this is just the test outcrop. I was trying to make Creation 3 require Channeling 3 and either Creation 2 or PPQCreation 2.

When that failed repeatedly I just shut down Channeling 3 altogether and just wanted to make a simple or requirement. Now that is failing too.
 

Attachments

  • ErrorPRereqs.JPG
    ErrorPRereqs.JPG
    113 KB · Views: 83
Edit:

*facepalm*

While I waited, and waited, and waited I did some debugging and checking and examining and found what I had done wrong.


Example:
My code: Art/Units/Civs/PPQ/PPQ_1/warrior.nif
The code that works: Modules/NormalModules/PPQ/Art/Units/Civs/PPQ/PPQ_1/warrior.nif

Someone see where I was wrong?


This is embarrassing.


Edit: I thought I had removed the attachment.


Reguardles, another problem.
Code:
		<PromotionInfo>		<!-- Creation III -->
			<Type>PROMOTION_CREATION3</Type>
			<Description>TXT_KEY_PROMOTION_CREATION3</Description>
			<PromotionPrereqOr1>PROMOTION_CREATION2</PromotionPrereqOr1>
			<PromotionPrereqOr2>PROMOTION_PPQ_CREATION2</PromotionPrereqOr2>
			<UnitCombats>
				<UnitCombat>
					<UnitCombatType>UNITCOMBAT_ADEPT</UnitCombatType>
					<bUnitCombat>1</bUnitCombat>
				</UnitCombat>
				<UnitCombat>
					<UnitCombatType>UNITCOMBAT_ANIMAL</UnitCombatType>
					<bUnitCombat>1</bUnitCombat>
				</UnitCombat>
				<UnitCombat>
					<UnitCombatType>UNITCOMBAT_ARCHER</UnitCombatType>
					<bUnitCombat>1</bUnitCombat>
				</UnitCombat>
				<UnitCombat>
					<UnitCombatType>UNITCOMBAT_BEAST</UnitCombatType>
					<bUnitCombat>1</bUnitCombat>
				</UnitCombat>
				<UnitCombat>
					<UnitCombatType>UNITCOMBAT_DISCIPLE</UnitCombatType>
					<bUnitCombat>1</bUnitCombat>
				</UnitCombat>
				<UnitCombat>
					<UnitCombatType>UNITCOMBAT_MELEE</UnitCombatType>
					<bUnitCombat>1</bUnitCombat>
				</UnitCombat>
				<UnitCombat>
					<UnitCombatType>UNITCOMBAT_MOUNTED</UnitCombatType>
					<bUnitCombat>1</bUnitCombat>
				</UnitCombat>
				<UnitCombat>
					<UnitCombatType>UNITCOMBAT_NAVAL</UnitCombatType>
					<bUnitCombat>1</bUnitCombat>
				</UnitCombat>
				<UnitCombat>
					<UnitCombatType>UNITCOMBAT_RECON</UnitCombatType>
					<bUnitCombat>1</bUnitCombat>
				</UnitCombat>
				<UnitCombat>
					<UnitCombatType>UNITCOMBAT_SIEGE</UnitCombatType>
					<bUnitCombat>1</bUnitCombat>
				</UnitCombat>
				<UnitCombat>
					<UnitCombatType>UNITCOMBAT_COMMANDER</UnitCombatType>
					<bUnitCombat>1</bUnitCombat>
				</UnitCombat>
			</UnitCombats>
			<Button>Art\Interface\Buttons\Promotions\Creation3.dds</Button>
		</PromotionInfo>
This is supposed to make Creation3 require PROMOTION_CREATION2, PROMOTION_PPQ_CREATION2 right?
Well, the pedia tells me that it requires Creation 2, PPQCreation 2, Channeling 3 AND Creation 2.
What is up with that?


Creation 2 is listed twice, as both an AND and a OR requirement and Channeling 3 is listed even thou I did not enter it in the XML at all.

I mean I probably made some mistake but this is just the test outcrop. I was trying to make Creation 3 require Channeling 3 and either Creation 2 or PPQCreation 2.

When that failed repeatedly I just shut down Channeling 3 altogether and just wanted to make a simple or requirement. Now that is failing too.

Actually, it's a very simple fix. In short: Modules only modify existing entries, they do not overwrite them. So while you may list Creation 2 as an Or req, it is still in the promotion as an And req.

How do you get around this? Simple. Add <bForceOverwrite>1</bForceOverwrite> to the promotion entry. Just keep in mind: This means you must have the entire promotion entry, as it will now load default values into tags (so if you leave off any effects, they'll be cleared!). To show you what I mean.... This is what you want for your promotion, with the important tag in bold.

Code:
<PromotionInfo>		<!-- Creation III -->
	<Type>PROMOTION_CREATION3</Type>
	<Description>TXT_KEY_PROMOTION_CREATION3</Description>
	<PromotionPrereq>PROMOTION_CHANNELING3</PromotionPrereq>
	<PromotionPrereqOr1>PROMOTION_CREATION2</PromotionPrereqOr1>
	<PromotionPrereqOr2>PROMOTION_PPQ_CREATION2</PromotionPrereqOr2>
	[B]<bForceOverwrite>1</bForceOverwrite>[/B]
	<UnitCombats>
		<UnitCombat>
			<UnitCombatType>UNITCOMBAT_ADEPT</UnitCombatType>
			<bUnitCombat>1</bUnitCombat>
		</UnitCombat>
		<UnitCombat>
			<UnitCombatType>UNITCOMBAT_ANIMAL</UnitCombatType>
			<bUnitCombat>1</bUnitCombat>
		</UnitCombat>
		<UnitCombat>
			<UnitCombatType>UNITCOMBAT_ARCHER</UnitCombatType>
			<bUnitCombat>1</bUnitCombat>
		</UnitCombat>
		<UnitCombat>
			<UnitCombatType>UNITCOMBAT_BEAST</UnitCombatType>
			<bUnitCombat>1</bUnitCombat>
		</UnitCombat>
		<UnitCombat>
			<UnitCombatType>UNITCOMBAT_DISCIPLE</UnitCombatType>
			<bUnitCombat>1</bUnitCombat>
		</UnitCombat>
		<UnitCombat>
			<UnitCombatType>UNITCOMBAT_MELEE</UnitCombatType>
			<bUnitCombat>1</bUnitCombat>
		</UnitCombat>
		<UnitCombat>
			<UnitCombatType>UNITCOMBAT_MOUNTED</UnitCombatType>
			<bUnitCombat>1</bUnitCombat>
		</UnitCombat>
		<UnitCombat>
			<UnitCombatType>UNITCOMBAT_NAVAL</UnitCombatType>
			<bUnitCombat>1</bUnitCombat>
		</UnitCombat>
		<UnitCombat>
			<UnitCombatType>UNITCOMBAT_RECON</UnitCombatType>
			<bUnitCombat>1</bUnitCombat>
		</UnitCombat>
		<UnitCombat>
			<UnitCombatType>UNITCOMBAT_SIEGE</UnitCombatType>
			<bUnitCombat>1</bUnitCombat>
		</UnitCombat>
		<UnitCombat>
			<UnitCombatType>UNITCOMBAT_COMMANDER</UnitCombatType>
			<bUnitCombat>1</bUnitCombat>
		</UnitCombat>
	</UnitCombats>
	<Button>Art/Interface/Buttons/Promotions/Creation3.dds</Button>
	<PromotionPrereqAnd>PROMOTION_CHANNELING3</PromotionPrereqAnd>
</PromotionInfo>
 
Thank you! Thank you!

Doing that now.

BTW, there was this one question that was troubling me.

Er... a small design oversight so I have to ask...

Is there any way to make a corporation or building give X happy/health per resource consumed?
You know like making a building or corporation remove the 2 resources used limit from a city (or just to remove it altogether without the DLL or python) so that a city can get 5 happy from 5 of the same resource?

If not I will have to resort to the medthod used for the scions or do it with python.
 
What about a promotion that turns the unit into a suicide unit?
The iKamikazePercent tag seems to do the trick but it also decreases the unit strength. And I don't want that.

But if I set it to 0 it just disables the suicide part as well.


And is there a way of making a promotion be unbuyable if a unit reaches a certain level. Like the iMinLevel tag but for a max level instead.
 
The kamikaze tag and it's description is a little confusing. Took me some time to figure out myself. When it says "decreasing units strength by X" it actually means the ENEMY unit.
So when your unit attacks it dies, but reduces the enemy strength by however much you entered into the kamikaze tag.
 
Oh... well either way I don't want it to effect either unit.

I am making a promotion that gives a unit +1 Fire Affinity at the cost of making it a kamikaze unit.


Something like this:
Can not purchase with experience

+100% chance of wearing off per turn

The unit is destroyed even if it wins the battle

+1 Fire Affinity

The unit must be Level 3 or lower to recieve this promotion.
The underlined I already managed.
The promotion will be gained via a spell. So if all else fails I can make the spell check for the unit level beffore application.
 
Thank you! Thank you!

Doing that now.

BTW, there was this one question that was troubling me.

Not easily possible yet, though I did ask Opera to look at adding it while adding something else. Was a few days ago on #erebus. :p

What about a promotion that turns the unit into a suicide unit?
The iKamikazePercent tag seems to do the trick but it also decreases the unit strength. And I don't want that.

But if I set it to 0 it just disables the suicide part as well.


And is there a way of making a promotion be unbuyable if a unit reaches a certain level. Like the iMinLevel tag but for a max level instead.

Oh... well either way I don't want it to effect either unit.

I am making a promotion that gives a unit +1 Fire Affinity at the cost of making it a kamikaze unit.


Something like this:

The underlined I already managed.
The promotion will be gained via a spell. So if all else fails I can make the spell check for the unit level beffore application.

KamikazePercent is easiest (could just be 1%), but barring that, your best bet is a PythonPostCombatWon tag, which kills the unit.

As for blocking it past level 3... Not easily possible with a single promotion, but it is still quite simple to do. Just make a new, autoacquired, promotion requiring level 4 which blocks/removes the other promotion.
 
Ok thanks. So copy an exsisting autoaquire promotion, set it to require lvl4, set it to ban and remove my promotion and it's done.

And make a python function that kills the unit and link it to the promotion.
Got it. BTW, you people have pushed me allong quite a lot. Thanks.
 
BTW, when I say a lot I mean a lot.
Here is a cropout from my worksheet for the project.

Units 18%
Buildings 25%
Banned 100%
Promotions 29%
Spells 16%
Leaders 19%
City Names 100%
Technologies 83%
Civilisation File 60%
Color 100%
Total 37%

My greatest trouble will be art thou. Where do I get a image for a wicker scarecrow king.
 
Top Bottom