Restrict route to one civilization only

Glak

Chieftain
Joined
May 6, 2009
Messages
35
My mod will have the normal roads and railroads, but I am also creating a third route "interstate" for the American civilization.

I am looking for ways to limit it to the Americans only. I do not want to use the sdk, and would prefer to stick to xml.

So far the only thing that I can think of is giving the build command to an American unique unit, but having Navy Seals or Pioneers (covered wagon) building interstate highways won't look nice.

I could also try to make some sort of American-only technology as a prerequisite, but I'm not sure how to go about that.
 
I would
  1. create a non-map resource called "Interstate Plans"
  2. create a unique Palace for the Americans which provides this resource
  3. have the interstate route require "Interstate Plans"
 
Why not just create a new unique unit for America, instead of using its current unique units? Simply create a worker UU whose only difference is that it has the Interstate build command. If you use bGraphicalOnly, you can even hide this fact entirely from the player.
 
Thank you to both of you.

I made a unique worker unit and that works.

I added bGraphicalOnly to the bottom of the schema and set it to 1 in the unique worker. It means that there is no civilopedia entry for that unit, but the entry for a regular Worker states that it is replaced by worker (just as it states that the Worker is replaced by the Fast Worker). If I click on that link nothing happens, it doesn't take me to a page for the American worker.

When starting the game as the Americans it also shows the worker as a unique unit.

The bGraphicalOnly flag is doing something, otherwise there would be an entry for the American worker. Is there any way to make it do more?

Maybe I should just rename him to Construction Worker and not try to hide him. After all, the player should have a reminder that he can produce Interstates.
 
Oh that's right, sorry. Unfortunately bGraphicalOnly is not fully implemented for units in the base game, and you would need to take additional steps to use it to hide it in other places. For the pedia this requires Python, for other places (e.g. the civ selection screen at the start of the game) even DLL changes.

Since you have mentioned in the OP that you want to avoid modifying these parts of the game, it's probably easier to leave it explicit. Like you said it doesn't hurt to make it clear to the player that they have an extra ability.
 
Why not just create a new unique unit for America, instead of using its current unique units? Simply create a worker UU whose only difference is that it has the Interstate build command. If you use bGraphicalOnly, you can even hide this fact entirely from the player.
Of course. I misread his post thinking that was not what was wanted :lol:
 
Sweet idea. Sry if i ask something offtopic to your specific question, but your idea led me to this question. I dont really wanna discuss that here, its just that i am wondering if there is a mod already out there that does something similar with railroads?

e.g. railraods build by civA can only be used by civA and railroads from civB can only be used by civB but when those two civilization have open border agreement both can use them independently. I thought in a way that a railroad requires trains and countries that are not in an open border agreement simply wont share the transportation resources.

Is that even possible?
 
That's the way it works already. Since you need to have OB to even enter the territory of another civ and use their railroads, it's essentially a requirement to get their benefits.

On the other hand, you do not get the benefit of enemy routes at all during war, unless the unit has the Commando promotion.
 
alright thanks. yea my kind of playstyle is kinda rough xd i expected to deny the railroads even if not within my boundaries. but on a second thought it would mess the gameplay up way to much. the limitations that are set with boundaries are simply the better way.
 
Back
Top Bottom