Quick Modding Questions Thread

Are you using a custom dll (meaning more custom than 50 civs)?
If not, then replace your dll with this debug dll (not mine, compiled by phungus), and post the errors.

im using a 50 civ dll and i have 50 slots (0-49) idk what would be wrong to be honust, the map wouldnt be wrong cuz its blank, so that just leaves the civilizations and game info, both of which give xml errors for sure.
 
No, no... Its just that you have this crash issue and it can be just about anything. There is no way of knowing what causes it, without debugging it. And you're the only one who should have to do that. (You're the only one who has access to your mod, at any rate.) I suggest you start by doing this:

1. Try your mod (XML and whatnot) with another map. Does the game crash?
2. Try your converted map with a standard BtS game - not your mod. Does the map crash your game?

This would help you determine whether its your XML or the WBS that is causing the crash. If neither causes the crash issue, then it must be the combination of both of these elements.

You need to start narrowing down where the problem is, otherwise you'll never sort this out. But the above would probably be the first step. Once we know where to start it will be that much easier to find the exact cause. And this is the place to get help with it. Unfortunately my modding knowledge is somewhat limited, but there are more knowledgeable people than me around. No worries.

1)as i said earlier, i have tried it with about 4 or 5 maps, none work
2)GEM wouldnt work cuz thats 50 civ compatable, with maps that are 18 civs of course it will work though, not sure how that helps me cuz its all maps
 
1)as i said earlier, i have tried it with about 4 or 5 maps, none work
Then your mod is broken, it has nothing to do with the map you're using. Understand this and you'll be on your way to solving this thing.
 
If it works with normal mapscripts, then it's not broken ;).

im using a 50 civ dll and i have 50 slots (0-49)

Then put the mentioned debug dll in your mod, it's for 50 civs, that's why i'm asking ;).

Wondering if this should now be made a sticky

Why? This thread is always on the first page, no need to make it sticky ;).
 
If it works with normal mapscripts, then it's not broken ;).



Then put the mentioned debug dll in your mod, it's for 50 civs, that's why i'm asking ;).

Gave me this error when i loaded the scenario


Assert Failed

File: CvPlayer.cpp
Line: 5249
Expression: GC.getCivilizationInfo(getCivilizationType()).getCivilizationBuildings(eBuildingClass) == eBuilding
Message:

Yet on that line it says FeatureType=FEATURE_FOREST, FeatureVariety=0 idk whats wrong with that?
 
Question: I would like to set railroads so that they cannot be pillaged. Which file/setting would I want to change to make this happen?

But I want to make sure settlers can still build cities on railroaded squares, so I don't want to make this change if doing so prevents city building.
 
Is it possible to prevent workboats (or workers) to go outside the cultural borders, without changing the SDK?
Thanks.
 
Is it possible to prevent workboats (or workers) to go outside the cultural borders, without changing the SDK?
Thanks.
It is very doable with a Python call-back from the SDK, but just enabling it will inevitably add lag to your game. Adding the logic for checking tile ownership will add even more lag... :p

Is this what you want? Because it wouldn't be hard to whip up some code for you.
 
It is very doable with a Python call-back from the SDK, but just enabling it will inevitably add lag to your game. Adding the logic for checking tile ownership will add even more lag... :p

Is this what you want? Because it wouldn't be hard to whip up some code for you.

Thanks for your answer!
So there is no easy XML option? If not, then I would prefer not to add another Python call-back. I don't want this up to the pont of lagging the game a bit more. Thank you for proposing your help.
 
Gave me this error when i loaded the scenario


Assert Failed

File: CvPlayer.cpp
Line: 5249
Expression: GC.getCivilizationInfo(getCivilizationType()).getCivilizationBuildings(eBuildingClass) == eBuilding
Message:

Yet on that line it says FeatureType=FEATURE_FOREST, FeatureVariety=0 idk whats wrong with that?

Sounds like if there was a problem with one of your UBs -> check them.

Question: I would like to set railroads so that they cannot be pillaged. Which file/setting would I want to change to make this happen?

Not possible (unless you're in C++ coding...), that only works for improvements :/.


Is it possible to prevent workboats (or workers) to go outside the cultural borders, without changing the SDK?
Thanks.

Nope, not possible, unless the mentioned python solution.
But what exactly do you want to do? Because there's a XML tag, which you can set, which will prevent units from revealing new plots (so they can't go outside of the already discovered area).
 
Nope, not possible, unless the mentioned python solution.
But what exactly do you want to do? Because there's a XML tag, which you can set, which will prevent units from revealing new plots (so they can't go outside of the already discovered area).

Interesting, I've never tried that tag. I'll give it a try. It's not exactly what I wanted but I guess it could prevent the AI to use workboats to discover areas.

Thank you!

PS: and it works - Thanks again!
 
Because there's a XML tag, which you can set, which will prevent units from revealing new plots (so they can't go outside of the already discovered area).
Really? :eek2: Because this would have been very, very high up on my own to-do list for when I get into SDK modding myself...
Spoiler :
I basically wanna take away the whole concept of discovering the map by moving units around. This sort of tactical movement only makes sense in a combat situation. I also wanna restrict units from venturing too far away from nearest friendly outpost/border, and instead of spending the better part of the game moving units around, I'd much rather re-base them to another city/fort, just like air units. Discovery and mapping of new land would be a new unit action and done automatically. There would even be a new class of GP; the Great Explorer. Columbus, Magellan, Marco Polo, that sort of thing. These personalities could then make the Grand Voyages and save up on the need to build Explorer and Expedition (naval) units and have them conduct bit-for-bit mapping.
 
:yup: the bNoRevealMap value, see http://modiki.civfanatics.com/index.php/Civ4UnitInfos.

About the concept...not sure if that will work. The early discovering of unknown land is one of the bigger fun parts in Civ, so taking it away might be a bad idea.
But will sure be interested in the outcome :).
 
My idea for the early game was that "nomadic" (early) units would be able to enter unknown land, but until Map Making the revealed tiles would be covered up again once the unit moves on...
 
Hello folks,

After a long hiatus from Civving, I've reinstalled Civ4, reinstalled my favorite mod (History in the Making Final version) and been playing a bit. This has reminded me of an aspiration I had shelved.

For a long time I've wanted to make a Civ mod where some of the less realistic fundamental features of the game were minimized (exploring a whole continent before 1000BC; uber-stacks fighting hundreds of miles from home territory; AI always using uber stacks). I was waiting to see what Civ5 was like in hopes that it would improve on Civ4 and then eventually even more improving mods would come out that I could build on. Obviously that did not happen.

With a 32-bit system, I tend to think that History in the Making is THE BEST Civ experience that there is to be had. I see that Grave has no problem with folks building off of it, so I was contemplating starting to learn about modding.

The things I'm thinking about:

1. Make health MUCH more important. The idea here is to make having excess health worthwhile, by boosting economy and production, as well as (maybe if it is tenable to do it) unit healing, and make having low health slightly more consequential (maybe increase chance of revolts, but certainly stagnating growth).

2. Make unit healing MUCH more difficult/slower+much less common that a unit goes from 100 or 75% health to dead, basically make a unit last longer, but also take much longer to heal (making healing perks more important).

3. Make units MUCH less capable of operating far from home territory (also tied to health, pop size, economy; HiTM does this to an extent by imposing "supply" but I think it should be a bit enhanced as well. With respect to items 2 and 3 the creation of one or two units (actually I think they exist already) such as an "HQ" or "Supply" unit might be the way to go. Questionable if the AI could handle these though . . .

4. Make pillaging tiles MUCH more impactful, and if possible compel the AI to spread his forces out to protect his frontiers more. The idea I have here is basically: understand what it is in the code that compels the AI to protect its cities: use the same scripts to compel it to protect its villages/towns, farms, mines, etc., albeit with a certain degree of descending order of importance. Related to this, it may be necessary to adjust unit build costs and overall maintenance costs downward slightly so that the AI will build enough units to actually be able to cover some of its territory.

5. Make razing cities much more consequential. I don't like "Turn Off City Razing;" it should ALWAYS be--to some degree--possible to raze a city. Given that the shortest turn time in full historical epic game of Civ is about one year (or maybe 1 month in the advanced stages) the time frame to be able to burn down, even a large city, isn't constraining. However, the reality is that: any army that tries to raze a very large and populous city IS going to face some challenges, of both a military, and logistical nature. Those challenges will be greater the larger, more established and tough the city. I've got a number of ideas to mess with, such as cities over a certain size requiring a certain size force to raze it; razing resulting in a certain amount of damage to the units which conquered the city, etc.

This is just dreamy but . . . what would be VERY cool is if razing a city that exceeded certain thresholds for population, culture, militia (walls, barracks, etc.), city complexity (number of buildings) prompted a tactical "mini-game" sort of like the combat mini-game in Pirates! (just dreaming here I know). Short of that, having a few random possibilities might be the best approach:
a. Your troops successfully raze the city and gain extra loot (but with some casualties [damage to units] and a pretty sizeable reputation hit)
b. Your troops are successful in razing part of the city (_X_ building destroyed; some loot; some damage to units).
c. Your troops are somewhat successful in razing, but are driven back by enraged citizens . . .
d. Your troops are driven back by the enraged citizens, and a x new militia units form in the city (HiTM already features a random chance for a militia unit to spawn when you attack a city that has a low level of protection).

So those are basically the ideas that I'm interested in.

I don't really have a clue what apps or parts of the game this stuff would impact, nor how tenable any of it is. Also, I don't know if I'm the only one who would take any interest in these sorts of questions or not.

There is a tremendous amount of information and expertise here on CivFanatics but so much so that it can be a bit difficult to winnow the grain from the chaff. I appreciate if anyone could offer some links to tutorials that are the most up-to-date best sources and/or any other comments or suggestions.
 
First thing: You'll need programming skills to do what you want. Will not work without.

1) Did you think about something more specific? You could achieve this in various ways.

2/3) There's been much talk in different areas about such a system, but i guess no one has ever done an implemention of such a whole thing.
And again: Do you have an idea what you want to do there? Same for the rest.

General notes: I don't think supply units would be fun, and #5 also seems to be relatively unfunny :ack:.

My idea for the early game was that "nomadic" (early) units would be able to enter unknown land, but until Map Making the revealed tiles would be covered up again once the unit moves on...

That also doesn't sound like fun :ack:.
Has been partially discussed before the civ5 release: This option would force you to draw your own maps, which is just fun in any possible way.
 
Sounds like if there was a problem with one of your UBs -> check them.
Got this when i loaded scenario:
PHP:
Assert Failed

File:  CvGlobals.cpp
Line:  2428
Expression:  e > -1
Message:

Got this again after about 6 turns
PHP:
Assert Failed

File:  CvGlobals.cpp
Line:  1490
Expression:  e > -1
Message:

Then it crashed a turn later. I also got a bunch of errors like the one i posted before, but you showed me how to fix those so they will be easy fixed. for both of the ones abouve, on that line it does say e > -1 So i tried changing it to e > 0 and e > 1 and neither worked, same erros came up, if you can give me any hints that could help!
 
Back
Top Bottom