Kick units out

dacubz145

Deity
Joined
Jun 21, 2010
Messages
3,730
Location
Windy City
Here im requesting a DLL that helps me fix a problem i have with the game:

When you have open bordered with some1, then you go to declare war with them, all ur units get kicked out of their land, thats extremely unrealistic

Also the DLL has to be 50 civs compatable, since thats more important to me then this, but if any1 can make it 60 that would be nice

Thanks in advance
 
60 is not a problem. I'll take a look at the kick out issue.
(Does anyone know if this has been done before?)

Post a reminder here in a few days if I'm not back to you by then.
 
If you do this, you should make sure the AI will use it. Unless it is being bribed or joining a dogpile or forced via AP resolution, it should usually not declare until its SoD is right next to the enemy's capitol/holy city/oxford/other-high-value-target-city, instead of just doing so when it thinks its ready to attack.

The human player already has a large advantage in warfare. Adding another significant thing that only the human player can use is a bad idea.
 
If you do this, you should make sure the AI will use it. Unless it is being bribed or joining a dogpile or forced via AP resolution, it should usually not declare until its SoD is right next to the enemy's capitol/holy city/oxford/other-high-value-target-city, instead of just doing so when it thinks its ready to attack.

The human player already has a large advantage in warfare. Adding another significant thing that only the human player can use is a bad idea.

Good idea, thanks :goodjob: Dont know how well that will work tho, since usually if you have open borders, chances are war wont be declared
 
If you do this, you should make sure the AI will use it. Unless it is being bribed or joining a dogpile or forced via AP resolution, it should usually not declare until its SoD is right next to the enemy's capitol/holy city/oxford/other-high-value-target-city, instead of just doing so when it thinks its ready to attack.

The human player already has a large advantage in warfare. Adding another significant thing that only the human player can use is a bad idea.

Oh man, that will take more work than I've intended...
We'll see how it goes.
 
The two most important to me are Revolutions and The Advanced dimpomacy, i suggest we should use the Revolutions as the base for it, since im sure that is 100 times more complicated to add then advanced dimplomacy, thanks, and dont worry to much about the AI thing, obviously id prefer to have it, but i wouldnt spend hours and hours on it, since for the time being just not being kicked out is more important then having AI strategize with it, Thanks so much tho:goodjob:
 
Hey Asaf!
If you already working on this, and hopefully find out exactly how the kick out mechanics work, I would like to ask:
We need a unit in RFCE, that can move around in foreign territory even without open borders - the same way spies does.
Our problem is that they should be kicked out on war declaration like normal units (spies, great merchants and other similar units don't get kicked out)
It would be awesome if you could also find out how to achieve this
 
Not yet, been too busy to work on it, and I have a queue of projects... sorry. Remind me again in a few days.
<Snooze>
 
Here are the ones (in order of how important) i would want in it
Revolutions, theres alot of versions out here but heres one link,
Advanced Diplomacy
60 civs
Civ4 Lerts
Master Victory
Kick units out
AI Autoplay
Settler Religions

I dont really expect all of these to be in it, id be very happy with the top 3 since those are really important to my mod, while the others would just be bonuses. I cant say all of these will be DLL, i think most of them are cuz i promsie you ive tried to put all these in my mod atleast 3 times each and ive failed every timd:mad: other components i have succesfully put in tho :D

Also for the revolutions, i think that also comes with other comps like the civ namer thing and start as minor civs, barbarian civs etc. I dont need those but i dont not want them if that makes sence, basically if its more work to keep them in then dont worry about them but if they are already in dont spend the work to take them out


finally im gonna release an update of my mod on monday, so if you could, i think itd be easier if you use my mod to compile it, just DL it and if you could work on it from there, that way i dont have to worry about installing it which could give me problem, thanks i really appreciate it!



Also take all the time you need no rush
 
Civ4lerts is a Python mod, and it's extremely simple to install.

Copy the Civ4lerts.py file to your Assets/Python folder, then open up your CvCustomEventManager.py file.
Underneath all the other imports that are there, add
Code:
import Civ4lerts

And, then, under def __init__(self, *args, **kwargs), add:
Code:
		Civ4lerts.Civ4lerts(self)

Mine looks like:
Code:
	def __init__(self, *args, **kwargs):
		super(CvCustomEventManager, self).__init__(*args, **kwargs)
		# map the initial EventHandlerMap values into the new data structure
		for eventType, eventHandler in self.EventHandlerMap.iteritems():
			self.setEventHandler(eventType, eventHandler)
		# --> INSERT EVENT HANDLER INITIALIZATION HERE <--
		Civ4lerts.Civ4lerts(self)

Then, it should work :)
 
Civ4lerts is a Python mod, and it's extremely simple to install.

Copy the Civ4lerts.py file to your Assets/Python folder, then open up your CvCustomEventManager.py file.
Underneath all the other imports that are there, add
Code:
import Civ4lerts

And, then, under def __init__(self, *args, **kwargs), add:
Code:
		Civ4lerts.Civ4lerts(self)

Mine looks like:
Code:
	def __init__(self, *args, **kwargs):
		super(CvCustomEventManager, self).__init__(*args, **kwargs)
		# map the initial EventHandlerMap values into the new data structure
		for eventType, eventHandler in self.EventHandlerMap.iteritems():
			self.setEventHandler(eventType, eventHandler)
		# --> INSERT EVENT HANDLER INITIALIZATION HERE <--
		Civ4lerts.Civ4lerts(self)

Then, it should work :)

hmm ive tried this already, nonetheless ill try one more time, maybe with ur advice it will work, thanks for the help:D
 
Do you have any other mods that are inserted into the Custom Event Manager?
If they work and Civ4lerts doesn't, even with these changes, then something's really wrong somewhere.

Do you have Python Exceptions set to show in your .ini file?
 
Do you have any other mods that are inserted into the Custom Event Manager?
If they work and Civ4lerts doesn't, even with these changes, then something's really wrong somewhere.

Do you have Python Exceptions set to show in your .ini file?

yeah i already have a custom event manager, so ive edited it somewere, and yeup its set to show. Ill just try one more time tonite, i probably just pasted something wrong.

if you want i can put up my event manager on here, if you want to take alook
 
It should just be a simple fix, if it doesn't work, upload both your event manager and your civ4lert file and I'll look at them for you :)
 
It should just be a simple fix, if it doesn't work, upload both your event manager and your civ4lert file and I'll look at them for you :)

Will do, thanks i really apreciate the help! Ill take a look at it tonite, a little busy right now, but ill probably figure out if i got it to work by the end of the night. Do any others not require dll?
 
Settler Religions doesn't, I just checked it out, all you need to do is, in your custom event manager:

Code:
import SettlerReligion
sr = SettlerReligion.SettlerReligion()

Then, add the red lines to the correct places:
Code:
	def onUnitBuilt(self, argsList):
		self.parent.onUnitBuilt(self, argsList)
		[COLOR="red"]sr.onUnitBuilt(argsList)[/COLOR]

	def onUnitLost(self, argsList):
		self.parent.onUnitLost(self, argsList)
		[COLOR="red"]sr.onUnitLost(argsList)[/COLOR]

	def onCityBuilt(self, argsList):
		self.parent.onCityBuilt(self, argsList)
		[COLOR="Red"]sr.onCityBuilt(argsList)[/COLOR]

Edit, just warning you, this SHOULD work, but I've not tested it, whereas I have tested the Civ4lerts stuff, as I had some difficulty getting different modular python systems to work together :p
 
Back
Top Bottom