Duplicate Icons

I think that the PIE icon works, yes.

The Eden pic has a certain simplicity to it, which is interestingly at odds with the future tech it represents.
 
One last possibility for Eden Project is to leave the Project alone and change the Naturopathy icon. I found this one in Pie's Ancient Europe as a Pharmacy tech. Do you think this would work better than switching around Eden Project?

View attachment 398794

I like this option the most :)
For me the Dove is related to Peace or Freedom, but has nothing to do with Eden, Paradise.
 
Probably, but I don't know how to pin it down. Something has to tell the mod to pull the buttons from the art style and not just the default unit.

Not 100% sure, but it might be in CvUnitInfo.cpp; I'll have a look if I can come up with something.
 
Found it! It was in Assets\XML\Art\CIV4ArtDefines_Unit.xml.
Code:
<Type>ART_DEF_UNIT_CARAVEL_MESO</Type>
was defined by:
Code:
<Button>,Art/Interface/Buttons/Units/Galley.dds,Art/Interface/Buttons/Warlords_Atlas_1.dds,8,8</Button>

I replaced it by the one from
Code:
<Type>ART_DEF_UNIT_CARAVEL</Type>

In fact, the DLL rarely have specific code for a specific unit, it is only the mechanics.

EDIT: The fix will be published within the next update, in some minutes.
 
Found it! It was in Assets\XML\Art\CIV4ArtDefines_Unit.xml.
Code:
<Type>ART_DEF_UNIT_CARAVEL_MESO</Type>
was defined by:
Code:
<Button>,Art/Interface/Buttons/Units/Galley.dds,Art/Interface/Buttons/Warlords_Atlas_1.dds,8,8</Button>

I replaced it by the one from
Code:
<Type>ART_DEF_UNIT_CARAVEL</Type>

In fact, the DLL rarely have specific code for a specific unit, it is only the mechanics.

EDIT: The fix will be published within the next update, in some minutes.

I already knew that. That's not the problem. The problem is that the two screens are pulling art definitions from different places. The F1 screen is pulling from the default art definition, and the production popup is switching in the button from the ethnic art style substitution.
 
Not sure what is the issue. I tried replacing Warrior Asian button defined in Civ4ArtDefines_Unit with a Bear button. Both city screen and the popup shows Bear for a Chinese Warrior.
 
I don't understand the problem here neither. I have checked a second time. When I play aztecs, with the fix applied, the Caravel show the same icon in the city screen and in the popup screen.
 
Anyway this is a python issue.
The unit pedia is one which shows the default icon in main menu, or artstyle icon during ongoing games.
 

Attachments

  • Asian Warrior0000.JPG
    Asian Warrior0000.JPG
    110.7 KB · Views: 46
I don't understand the problem here neither. I have checked a second time. When I play aztecs, with the fix applied, the Caravel show the same icon in the city screen and in the popup screen.

The problem is that EVERY unit, when an ethnic art style is applied and that ethnic art style definition has a different button compared to its base unit art style definition, is not having the different button passed properly to the city screen. It is NOT something that can be solved by just changing unit art definitions. If you change the Caravel icon to another ethnic button, you would see the regular Caravel button on the city screen and the ethnic button on the production popup.

I think platyping is correct and that this is a problem with the Python code. I have done some digging and I think the problem is in CvMainInterface.py.

This is the part of the Python code that adds the buttons for trainable units to the city screen. The line in blue is the line that adds the button to the city screen. The part in orange is the part that, if I'm reading it correctly, just gets the button for the default unit art definition, when it needs to get the button for the ethnic art.
Code:
iGroupNum = pHeadSelectedCity.getUnitListGroupNum()
for iGroup in range(iGroupNum):
	iNumInGroup = pHeadSelectedCity.getUnitListNumInGroup(iGroup)
	for iPos in range(iNumInGroup):
		eLoopUnit = pHeadSelectedCity.getUnitListType(iGroup, iPos)
		[COLOR="Blue"]screen.appendMultiListButton( "BottomButtonContainer", [COLOR="DarkOrange"]gc.getUnitInfo(eLoopUnit).getButton()[/COLOR], iRow, WidgetTypes.WIDGET_TRAIN, gc.getUnitInfo(eLoopUnit).getUnitClassType(), -1, False )[/COLOR]
							
		if ( not pHeadSelectedCity.canTrain(eLoopUnit, False, False, False, False)  or pHeadSelectedCity.getOwner() != gc.getGame().getActivePlayer()):
			screen.disableMultiListButton( "BottomButtonContainer", iRow, iCount, [COLOR="DarkOrange"]gc.getUnitInfo(eLoopUnit).getButton()[/COLOR] )

I think I have also found the proper fix. The fix that I found is to replace the orange parts with this:
Code:
gc.getPlayer(pHeadSelectedCity.getOwner()).getUnitButton(eLoopUnit)
This gets the proper art style button and the result looks like this. At the bottom of the screen, you can see the African style buttons for the Axeman, Archer, and Settler.
View attachment 398887
I don't think this will cause any other problems elsewhere, but feel free to correct me.
 
Here is another issue. Mine improvements have a lot of duplication between icons.

Shaft Mine has the same button as Mine. This is because the Shaft Mine improvement actually calls the Mine improvement art. The Build Shaft Mine action also has the same button, but this is a deliberate call. The build action for a given improvement can call a different button from the improvement itself, but I actually think this is NOT a good idea, and that the build action should use the same button as the improvement itself to avoid confusion. Each build action corresponds to one improvement, so we can double up in this case.

I found this Shaft Mine button already in the art files that I think will work as a replacement.
View attachment 398889

Modern Mine has two separate buttons for the Mine itself and the Build Modern Mine action. I would like to standardize this on the Modern Mine improvement button.

Finally, Depleted Mine has the same button as the regular Mine. The only times you would ever see the Depleted Mine button are in the Civilopedia, WorldBuilder, or the little round popup if a mine actually depletes. I think the best thing to do here is to desaturate the Mine button. I tried adding a red X or crossout (like the Idle Process) but it didn't look very good.
View attachment 398890
 
@Vokarya: Ok. I haven't seen the problem on that way. Nice that you've fixed the problem.
About the mines, I agree that the button should be the same as the standard mine.
 
Here are a couple icons I just made up. I noticed that all naval unit classes use the same icon. I made this one to give Submarines their own unit class icon.
View attachment 399240

This is a replacement icon for the Super Cavitation promotion. As was pointed out, it currently uses the same icon as Coastal Assault I. I stitched this together from the Submarine I just made and the waves from Amphibious (by way of another promotion in one of the promotion atlases). I tried recoloring the sub
View attachment 399242

Will these work?
 
They look nice to me.
 
Here are two more. I'm digging through the FPK's and finding some very interesting things. First of all, there is a completely unused atlas file atlas5.dds. Secondly, there is a duplicate rom_promotions_atlas.dds file (one in the RoM FPK, one in the AND FPK) and the RoM one is getting used (it has the air-to-air missile promotions). Counting duplicate buttons I pulled out of various places, there are at least 1500 separate button files.

I don't think we are using this button at all. It is Colonization's Looter promotion.

View attachment 399322

We have Looter with this icon.

View attachment 399321

I think the hand holding the bag will be good for Trade units. They currently use the same icon as the Flanking I promotion.

This blue lightning icon I made by cutting the lightning bolt from Initiative IV (normally on the red background) and putting it on the standard blue promotion background. I would like to use it for the Kamikaze promotion. It currently shares its button with Fanatic.

View attachment 399320
 
Nice icons Vokarya! Sorting things is always good at the end.
I'm pretty sure I can reuse my code from the XML parser to write a tool that can list all the art files in the FPK and detect those who aren't used. It should be less than an hour of work.
 
Nice icons Vokarya! Sorting things is always good at the end.
I'm pretty sure I can reuse my code from the XML parser to write a tool that can list all the art files in the FPK and detect those who aren't used. It should be less than an hour of work.

I wouldn't bother. It goes deeper than just checking the files. Some files are called by art definitions that aren't used, and some art definitions are called but not in the XML. We ran into that problem a while back when I deleted the art definition for the Siege Tower but it was actually used in certain city attack situations.
 
Ok. Indeed, it looks like a lot of art files are called by building the name of the file to use, so that nearly impossible to catch with a simple reading of the file.
 
Top Bottom