Quick Modding Questions Thread

Hi, I don't know where to begin. I've been reading and experimenting with no success with what I want to do. I would like to know where to begin modding to have an "Auto End Turn" option put into the game. I have seen it in the BUG options in Rise of Mankind A New Dawn and Caveman to Cosmos. I downloaded BUG 4.4 and installed it in the mod folder its the mod I would like to add the auto end turn option to.

Where and how do I go about this?
Are you saying you want to combine BUG with your mod? If you've only made XML changes, this is easy. Take everything from the BUG installation (Beyond the Sword/Mods/Bug Mod 4.4) and put all of the assets in the same place in your own mod directory (or if you haven't made that many changes, it might be easier to just add your mod's files to BUG's and change the mod's name later). If you've edited the same XML files as BUG, you will need to combine them manually by opening them and copy/pasting your own changes into BUG's XML (or vice versa depending on which way you decide to do it).
 
I read on a Civ 4 Wiki that the size of fresh water is 9 squares or less, otherwise the game treats it as salt water. But it mentioned that this is modifiable.
Does anyone know is it possible to increase the size of fresh water bodies.
I want to build a map of eastern north america but have the great lakes as fresh water. The scale I'm using though, the great lakes are all bigger than nine squares.
 
I read on a Civ 4 Wiki that the size of fresh water is 9 squares or less, otherwise the game treats it as salt water. But it mentioned that this is modifiable.
Does anyone know is it possible to increase the size of fresh water bodies.
I want to build a map of eastern north america but have the great lakes as fresh water. The scale I'm using though, the great lakes are all bigger than nine squares.

In GlobalDefines.xml there is a thing called LAKE_MAX_AREA_SIZE which is set to 9 in BtS. Your map must become a mod, instead of just a map, to change that value.
 
Is there a way I can do a quick and easy way to give the Ai a free great person in their capital at certain turns, for example:

100 turns in on epic speed: free great priest in all the AI's capitals
200 turns in on epic speed: free great engineer in all the AI's capitals

And by in their capital, I mean added as a great person specialist, not available to be traded for tech.

Thanks for any help you can give!
 
A couple questions: How would I go about creating a building that would change tile, resource and improvement yields, and possible add commerce yields to those tiles as well?

Also, how would I go about combining the mod jarm with a mod like 40civs? I modded my civ game (by that I mean I move graphic files around and change the xml) for personal use.
I've added a few dozen civs and all civs have one leader with a unique trait and a combination of 3 unique buildings/units/improvements. Although improvements were added by adding a unique worker unit. And traits were limited in terms of editing, so I took to editing their palace as a means of making a "trait." This also means I disabled the Unristricted Leader/civ option. I have jarm for more... immersion and changed some of the religions (swapping Freemasonry and Vodun for the mesopotamian and tengrii faiths). I've added a lot of effort (several hundred hours) and would like to be able to play with at least 24 civs and would like more freedom in editing buildings and possibly traits. Units too but thats a low priority wish. I have no python experience.

I've been "modding" (not sure if I can technically call it that, but I've added so many civs, units, wonders, techs, buildings and resources, as well as a specialist and some religions, it's hardly recognizable and I've taken to calling it civ6) this game for at least 3 years, but have exhausted xml and cant really wrap my head around python. If there is an easy way to quickly do this, or if it is that simple that somebody may effortlessly combine jarm and a more civs mod and somehow make it possible to add more yield options (like i before mentioned), it would be great if somebody could help me out.
:please:
 
Also, how would I go about combining the mod jarm with a mod like 40civs?

JARM is mostly XML but it also has two Python files and the font files. There is no dll so there is nothing to merge there.

You will need to merge the two python files from jarm with your python files. This means you will need to know something about python. You can probably just copy the font and xml files from jarm.
 
I can deal with xml and i've done work with font files when I swapped out those religions. I however, know nothing about python. it's just the two screen files for the interface.
 
it's just the two screen files for the interface.

One of those files is the interface:lol: As far as I can see the differences between the standard BtS screens and those in JARM are to do with displaying more religions. Mostly in the city screen and on the religion screen. Without those changed then some religions will not be displayed.
 
First, thank you God-Emperor for the Lakes info, very helpful

Now I have a new question
I really hate the airship unit.

One of two thoughts on it -
1) If I just deleted it from the CIV4UnitsInfo file would that get rid of it.
or
2) What changes would I make to its info in the CIV4UnitsInfo entry to make it a non-attacking unit, just a recon unit.

Edit: Heck, I think I'll just change its prerequisite tech to fusion power and eliminate the unit that way. :p
 
Are you saying you want to combine BUG with your mod? If you've only made XML changes, this is easy. Take everything from the BUG installation (Beyond the Sword/Mods/Bug Mod 4.4) and put all of the assets in the same place in your own mod directory (or if you haven't made that many changes, it might be easier to just add your mod's files to BUG's and change the mod's name later). If you've edited the same XML files as BUG, you will need to combine them manually by opening them and copy/pasting your own changes into BUG's XML (or vice versa depending on which way you decide to do it).

Sorry for the late reply. What I am doing is trying to merge Warlords and Next War into BUG mod but I came across a problem as I have edited CvTechChooser.py (created a topic/thread asking for help) it works but the arrows don't match up to the techs. I wanted to make room for the added techs and also make room if I choose to expand further.
 
First, thank you God-Emperor for the Lakes info, very helpful

Now I have a new question
I really hate the airship unit.

One of two thoughts on it -
1) If I just deleted it from the CIV4UnitsInfo file would that get rid of it.
or
2) What changes would I make to its info in the CIV4UnitsInfo entry to make it a non-attacking unit, just a recon unit.

Edit: Heck, I think I'll just change its prerequisite tech to fusion power and eliminate the unit that way. :p


1 Keep a back up but Delete Assets/Art/Units/Airship go into Assets/XML/Art/CIV4ArtDefines_Unit and delete Airship and finally go into Assets/XML/Units/CIV4UnitInfos and delete Airship

2 I'm not sure if this would work as I never tired but go to Assets/XML/Units/CIV4UnitInfos under Airship and change this <Combat>UNITCOMBAT_AIR</Combat> to <Combat>UNITCOMBAT_RECON</Combat>

Let me know if that works
 
1 Keep a back up but Delete Assets/Art/Units/Airship go into Assets/XML/Art/CIV4ArtDefines_Unit and delete Airship and finally go into Assets/XML/Units/CIV4UnitInfos and delete Airship

2 I'm not sure if this would work as I never tired but go to Assets/XML/Units/CIV4UnitInfos under Airship and change this <Combat>UNITCOMBAT_AIR</Combat> to <Combat>UNITCOMBAT_RECON</Combat>

Let me know if that works

Instead of making a backup of the files, you should just make a mod. Modifying the game is what mods are for.

If you want to delete it, you should also to go into Assets\XML\Civilizations\CIV4CivilizationInfos.xml and delete the part where it is mentioned in the barbarian civ (which blocks them from building it). And remove the unit class from ASsets/XML/Units/CIV4UnitClassInfos.xml since having a unit class that refers to a non-existent unit type can crash the game.

There are also mentions in the audio XML files and event trigger XML file. And the text XML files, but you can ignore those if you want. (Actually, you can ignore the art and sound files too but cleaning them up is better.)

Basically, if you are removing anything you should do a search on all the XML files for the unit string and remove all references. Then do the same for all the Python files. And possibly even the source for the DLL, depending on what sort of thing you are removing.

To just make it unable to attack:

It is possible that the bOnlyDefensive tag works for air units, but I don't know if it does. Try settign it to 1. That setting is what keeps the scout unit from attacking. If that doesn't work then setting iAirCombat to 0 should do it, as might setting iAirCombatLimit to 0.
 
One of those files is the interface:lol: As far as I can see the differences between the standard BtS screens and those in JARM are to do with displaying more religions. Mostly in the city screen and on the religion screen. Without those changed then some religions will not be displayed.

Yes. I know. I just want to use JARM and play with many civs. I have tried swapping files and what not. The thing is because of the dll, I cant play both. I dont know how to merge them. I know what files are in the JARM mod that deal with python. The think is I dont know how to merge the python.
 
@ Ajaccio:

There is no dll in JARM so just use this one which allow 50 Civs.

If the 40 Civs is a mod, then you have your dll.

The 2 Python files: are they in conflict with existing Python files in your mod?
 
for merging files, download winmerge, it is free and it is awesome for this job, it will compare the two files and show you the differences, and allow you to move/overwrite stuff.

If it is not massively different, it should just be a case of overwriting the bts interface code with the JARM parts.
 
Instead of making a backup of the files, you should just make a mod. Modifying the game is what mods are for.

If you want to delete it, you should also to go into Assets\XML\Civilizations\CIV4CivilizationInfos.xml and delete the part where it is mentioned in the barbarian civ (which blocks them from building it). And remove the unit class from ASsets/XML/Units/CIV4UnitClassInfos.xml since having a unit class that refers to a non-existent unit type can crash the game.

There are also mentions in the audio XML files and event trigger XML file. And the text XML files, but you can ignore those if you want. (Actually, you can ignore the art and sound files too but cleaning them up is better.)

Basically, if you are removing anything you should do a search on all the XML files for the unit string and remove all references. Then do the same for all the Python files. And possibly even the source for the DLL, depending on what sort of thing you are removing.

To just make it unable to attack:

It is possible that the bOnlyDefensive tag works for air units, but I don't know if it does. Try settign it to 1. That setting is what keeps the scout unit from attacking. If that doesn't work then setting iAirCombat to 0 should do it, as might setting iAirCombatLimit to 0.

Thanks you gave a better explanation guess that's why you're a deity rank and I'm only a chieftain rank lol
 
@ Ajaccio:

There is no dll in JARM so just use this one which allow 50 Civs.

If the 40 Civs is a mod, then you have your dll.

The 2 Python files: are they in conflict with existing Python files in your mod?

I myself have not edited the python of my civ game. Jarm has 2 python files. They do not conflict with my game. I do not know what to do with the dll any mod that increases the civ limit. Do I replace the Coredll in my regular game? I dont know. I put it in the jarm folder, the cap is still 18. I put it in my vanilla BTS, the game wont even start up.
 
I thought that:
1) you have a mod (you said you modified xml files)
2) that to it you added JARM
3) if 1 & 2 is yes then you can simply put the 50 civs dll in the assets folder of your mod.

If 1 & 2 is no, then start to proceed like that.
 
Never put anything in your Bts main folder.
That is never the solution to getting a mod to work.
You are just going to break things.

If you overwrote your bts .dll and did not make a back up, you are going to need to either reinstall, or ask nicely if someone can provide you with the .dll.

For a .dll to work you need to add it to the assets folder of your mod, along with any other files that go with the mod that has the .dll you want. (you don't necessarily need all the files from that mod, it really depends on what the .dll in question actually changes and does.)

Really for ongoing help with this, you should make a new thread and add a link here, that way your discussion will not get in the way or get lost among other 'quick' questions. :)
 
for merging files, download winmerge, it is free and it is awesome for this job, it will compare the two files and show you the differences, and allow you to move/overwrite stuff.

If it is not massively different, it should just be a case of overwriting the bts interface code with the JARM parts.

im trying winmerge now. but I have no idea what im doing. I have 40civs core one side and a copy of BTS default dll. What do i do?
 
Top Bottom