platyping
Sleeping Dragon
Thanks, still havent found a suitable artwork for your seed vault 
Any recommendations?

Any recommendations?
Hmm if all you want is extra movement points for the ships themselves, then you might as well just download magellan voyage and rename it as compass rose since that has what you wanted?
There, Swapped
Compass Rose
Spoiler :
![]()
Artwork by Hrochland
Trafalgar Square
Spoiler :
![]()
Artwork by asioasioasio
I did mention that I don't feel like redoing any wonders already did before by previous python makers. But just cannot find any other naval wonders, so temporarily use this Trafalgar Square
P.S.
Both wonders make use of def onUnitMove, no guarantee on performance on big maps
def onUnitMove(self, argsList):
'unit move'
pPlot,pUnit,pOldPlot = argsList
## New Var ##
owner = pUnit.getOwner()
player = PyPlayer(owner)
## New Var ##
unitType = pUnit.getUnitType()
unitInfo = PyInfo.UnitInfo(unitType)
## Compass Rose Start ##
pPlayer = gc.getPlayer(owner)
if pPlot.isCity() and pUnit.getDomainType() == gc.getInfoTypeForString("DOMAIN_SEA"):
if pPlayer.getBuildingClassCount(gc.getInfoTypeForString("BUILDINGCLASS_COMPASS_ROSE")) == true:
obsoleteTech = gc.getBuildingInfo(gc.getInfoTypeForString("BUILDING_COMPASS_ROSE")).getObsoleteTech()
if gc.getTeam(pPlayer.getTeam()).isHasTech(obsoleteTech) == false or obsoleteTech == -1:
pUnit.changeMoves(-30)
## Compass Rose End ##
I not sure what you want, apparently you removed the check for terrain = coast.
As such, the above code will only activate when a naval unit move into a city thats all
'unit move'
pPlot,pUnit,pOldPlot = argsList
## New Var ##
owner = pUnit.getOwner()
player = PyPlayer(owner)
## New Var ##
unitType = pUnit.getUnitType()
unitInfo = PyInfo.UnitInfo(unitType)
## Compass Rose Start ##
if(pUnit.getDomainType() == gc.getInfoTypeForString("DOMAIN_SEA") :
if pPlot.isCity() or pPlot.getTerrainType() == gc.getInfoTypeForString("TERRAIN_COAST"):
pPlayer = gc.getPlayer(owner)
if pPlayer.getBuildingClassCount(gc.getInfoTypeForString("BUILDINGCLASS_COMPASS_ROSE")) == true:
obsoleteTech = gc.getBuildingInfo(gc.getInfoTypeForString("BUILDING_COMPASS_ROSE")).getObsoleteTech()
if gc.getTeam(pPlayer.getTeam()).isHasTech(obsoleteTech) == false or obsoleteTech == -1:
pUnit.changeMoves(-30)
I check the buildingclass first because as a world wonder, only 1 player will pass the first test.
def onCombatResult(self, argsList):
'Combat Result'
pWinner,pLoser = argsList
playerX = PyPlayer(pWinner.getOwner())
unitX = PyInfo.UnitInfo(pWinner.getUnitType())
playerY = PyPlayer(pLoser.getOwner())
unitY = PyInfo.UnitInfo(pLoser.getUnitType())
## Catacombs Start ##
if pWinner.getUnitType() == gc.getInfoTypeForString("UNIT_BRANDEIRANTES"):
if pLoser.getDomainType() == gc.getInfoTypeForString("DOMAIN_LAND") and pLoser.getUnitCombatType() != -1:
pPlayer = gc.getPlayer(pWinner.getOwner())
burialchance = CyGame().getSorenRandNum(100, "die together")
if burialchance == 0:
newUnit = pPlayer.initUnit(gc.getInfoTypeForString("UNIT_SETTLER"), pWinner.getX(), pWinner.getY(), UnitAITypes.NO_UNITAI, DirectionTypes.NO_DIRECTION)
newUnit.finishMoves()
elif burialchance < 10:
newUnit = pPlayer.initUnit(gc.getInfoTypeForString("UNIT_WORKER")), pWinner.getX(), pWinner.getY(), UnitAITypes.NO_UNITAI, DirectionTypes.NO_DIRECTION)
newUnit.finishMoves()
## Catacombs End ##
pTeam.changeResearchProgress(iTechType, pTeam.getResearchCost(iTech) - pTeam.getResearchProgress(iTech), iPlayer)
elif Alamut == 2:
for iTech in range(gc.getNumTechInfos()):
if VictimTeam.isHasTech(iTech) and pTeam.isHasTech(iTech) == false:
pTeam.changeResearchProgress(iTech, pTeam.getResearchCost(iTech) - pTeam.getResearchProgress(iTech), iPlayer)
CyInterface().addMessage(iPlayer,true,15,CyTranslator().getText("TXT_ALAMUT_STEALTECH",(VictimCiv,)),'',0,'',-1,-1,-1,false,false)
break
## Catacombs Start ##
if pWinner.getUnitType() == gc.getInfoTypeForString("UNIT_[COLOR="red"]MODERN_ARMOR[/COLOR]"):
if pLoser.getDomainType() == gc.getInfoTypeForString("DOMAIN_LAND") and pLoser.getUnitCombatType() != -1:
pPlayer = gc.getPlayer(pWinner.getOwner())
burialchance = CyGame().getSorenRandNum([COLOR="Red"]10[/COLOR], "die together")
if burialchance == 0:
newUnit = pPlayer.initUnit(gc.getInfoTypeForString("UNIT_SETTLER"), pWinner.getX(), pWinner.getY(), UnitAITypes.NO_UNITAI, DirectionTypes.NO_DIRECTION)
newUnit.finishMoves()
CyInterface().addMessage(pWinner.getOwner(),true,15,CyTranslator().getText("TXT_KEY_BRAZIL_BANDEIRANTE_SETTLER_CAPTURED",()),'',0,'',-1,-1,-1,false,false)
elif burialchance < 10:
newUnit = pPlayer.initUnit(gc.getInfoTypeForString("UNIT_WORKER"), pWinner.getX(), pWinner.getY(), UnitAITypes.NO_UNITAI, DirectionTypes.NO_DIRECTION)
newUnit.finishMoves()
CyInterface().addMessage(pWinner.getOwner(),true,15,CyTranslator().getText("TXT_KEY_BRAZIL_BANDEIRANTE_WORKER_CAPTURED",()),'',0,'',-1,-1,-1,false,false)
## Catacombs End ##
<TEXT>
<Tag>TXT_KEY_BRAZIL_BANDEIRANTE_WORKER_CAPTURED</Tag>
<English>[COLOR_GREEN]You have captured a Worker[COLOR_REVERT]</English>
</TEXT>
<TEXT>
<Tag>TXT_KEY_BRAZIL_BANDEIRANTE_SETTLER_CAPTURED</Tag>
<English>[COLOR_GREEN]You have captured a Settler[COLOR_REVERT]</English>
</TEXT>
P.S.
Out of names soonif anyone still has anymore wonders they wanna see, tell me about it
Last few names I know of:
All the Religious wonders
Panthenon
Plato's Academy
Library of Ashurbanipal/Nineveh
Great Zimbawee
Itaipu Dam
Delta Works/ Zuiderzee Works
Panama Canal
Hoover Dam
International Space Station