1. We have added a Gift Upgrades feature that allows you to gift an account upgrade to another member, just in time for the holiday season. You can see the gift option when going to the Account Upgrades screen, or on any user profile screen.
    Dismiss Notice

[MOD] Medieval: Conquests

Discussion in 'Civ4Col - Medieval: Conquests' started by Kailric, Jan 9, 2011.

  1. raystuttgart

    raystuttgart Civ4Col Modder

    Joined:
    Jan 24, 2011
    Messages:
    5,278
    Gender:
    Male
    Location:
    Stuttgart, Germany
    Congrats on your Project Forum. :goodjob:
     
  2. drjest2000

    drjest2000 Prince

    Joined:
    Dec 8, 2001
    Messages:
    332
    Location:
    retired
    I have sorted out what the problem is that caused the crashes in the two games I mentioned in post #714. On SMALL and TINY maps there is not always sufficient room for the generation of North and South Europe plots, even on STANDARD sized maps there is not always room for North Europe and South Europe plots to be added.

    There seems to be a constraint that limits the width of the East and West Europe plots to 6 tiles width, then if there is sufficient room, North and South Europe plots are painted to the map, but in all my testing, the volume of North and South Europe plots is never very high.

    The default world sizes are defined in CIV4WorldInfo.xml in the GameInfo folder. A tiny map is set by default to 22x36. On a blank map this would ostensibly generate a Europe plot patten like this:
    Spoiler :
    However, this is not the case. The East and West Europe plots will swell towards the center of the map. The East Europe plots are given the heaviest weight, so if there is not land obstruction, they may stretch and fill all the way to the west side of the map. This effect can be seen on maps generated by the Firaxis Caribbean map script. So a map with no landmasses would very likely be filled with nothing but East Europe plots, which clearly demonstrates the bias of the original programmer to create maps that replicate European colonization of the Western Hemisphere.

    Anyway, the random generation of the land mass + the 4 spaces from land default for all Europe plots can result in maps that do not have sufficient room for North and South Europe plots on any map generated by any map script, so this is not a problem limited to FaireWeather, but includes even Firaxis map scripts like A_New_World. I tried several of the other map scripts at Tiny and Small sizes and the same holds true with them all at those sizes.

    Altering the proportions of the default map sizes actually seems to exacerbate the problem. When I added:

    Code:
    def getGridSize(argsList):
    	"Override Grid Size function to make the maps square."
    	grid_sizes = {
    		WorldSizeTypes.WORLDSIZE_TINY:      (8*4,8*4),
    		WorldSizeTypes.WORLDSIZE_SMALL:     (10*4,10*4),
    		WorldSizeTypes.WORLDSIZE_STANDARD:  (13*4,13*4),
    		WorldSizeTypes.WORLDSIZE_LARGE:     (16*4,16*4),
    		WorldSizeTypes.WORLDSIZE_HUGE:      (20*4,20*4)
    	}
    
    	if (argsList[0] == -1): # (-1,) is passed to function on loads
    		return []
    	[eWorldSize] = argsList
    	return grid_sizes[eWorldSize]
    to A_New_World.py, the maps generated were square, but the North and South ends of the land mass swelled disproportionately to fill an even larger area at the edges of the map, rather than remaining narrow. (Code borrowed from Planets.py, thank you Orlanth)

    My working supposition is that the issue is the fractal world generator in the Firaxis Python files being geared to create land masses vaguely shaped like the the isthmus between North America and South America with portions of those continents at either end. Basically making two triangles like arrowheads touching at the tip with a heavy randomization of the peripheral edges.

    My working conclusion is that every time a map is generated with a map script it is largely a "luck of the draw" whether that map will have sufficient room for North and South Europe plots. :(
     

    Attached Files:

  3. Fullerene

    Fullerene Warlord

    Joined:
    Aug 26, 2009
    Messages:
    228
    Gender:
    Male
    Sorry I don't want to read all these messages.
    Kailric: Does the AI know how use land routes to go to commerce screen yet?
     
  4. Kailric

    Kailric Jack of All Trades

    Joined:
    Mar 25, 2008
    Messages:
    3,095
    Location:
    Marooned, Y'isrumgone
    @drjest2000
    I started a new thread for map discussion here...

    http://forums.civfanatics.com/showthread.php?p=12650250#post12650250

    Feel free to start new threads for any of you ideas on Yields/Buildings ect..

    Not yet, sorry been working on bugs and such. Well, the players units can find land routes just fine when you give them the command to "Travel to Fair" so making the AI do it also doesn't seem like that big of a deal.

    I have some changes planned soon where I'll make the Silk Road a land route that you leave from the southern or northern edge of map and when I do that I'll see about getting the AI to work it as well. If you are still wanting to make that Europe map I'll make it a priority to make sure the AI can access trade routes through land routes because we could use a good Historically accurate Europe map.
     
  5. Fullerene

    Fullerene Warlord

    Joined:
    Aug 26, 2009
    Messages:
    228
    Gender:
    Male
    Yes I'm willing to work on that scenario. But I think I'll wait till the AI can use the routes properly.
    Not sure how the silk route feature fits in to the Europe map? Maybe it could be available at the Caspian sea or somewhere nearby it.
     
  6. Kailric

    Kailric Jack of All Trades

    Joined:
    Mar 25, 2008
    Messages:
    3,095
    Location:
    Marooned, Y'isrumgone
    I moved this conversation to the Map threads and made a reply....

    http://forums.civfanatics.com/showpost.php?p=12650485&postcount=3
     
  7. Nightinggale

    Nightinggale Deity

    Joined:
    Feb 2, 2009
    Messages:
    4,352
    I finally added the fix to git. One less problem to deal with.

    However something is wrong in my end. The game lacks music in main menu, plays vanilla intro movie when starting a new game and it crashed when I tried to load a savegame. Something tells me I didn't add the rar files correctly. What is the correct way to update? I thought it was just copying the Assets/Art from 2.0b and then 2.0c into Assets. The rest of the files really should be in git.

    Changing the bat file to be aware of those two additions is really tricky when I failed to do it manually :crazyeye:

    EDIT: I reinstalled the git version. I managed to make a working install of 2.0c, but the git version still fails. Clearly something should have been committed, which isn't. The question is what is it :confused:

    EDIT2: found the problem. I made a mistake when copying files. It seems to work now. The only problem left is that old savegames can't be loaded anymore. I wonder if I can fix that.

    EDIT3: found the problem. It's in 2.0b and fixing it will break all savegames made since 2.0b. I will let this one pass and start a new game, but it appears that it could easily have been avoided breaking any savegames. If you add/remove pStream->Read() and don't know how to make it able to handle old savegames, then contact me. It's not that tricky to handle once you know how to do it.

    Next thing we know you will act like Plato and blame everything on everybody younger than you :old:
    Getting ideas is important. Keep up the good work.

    I fully agree. It really has gone downhill with the gaming industry. They have forgotten the concept of gameplay, which is why I haven't ditched old titles like Master of Magic. That one is still rather good today, specially with the unofficial patch and it's not the graphics that makes it good.

    Still I like Civ4col because it's so easy to mod. Sure vanilla wasn't that impressive, but it's a fair platform to make something impressive with mods. Firaxis might have released a half finished product, but unlike most games, they gave us the tools to finish the game to whatever we like. That's more than you can say about the other games you mentioned.

    Crashing a 32 bit application because it's executed on a 32 bit system sounds wrong. You really should get git and the debugger running to see what goes wrong. The same goes for me but seeing that I lacked time for even issues on 64 bit in the past week or two, how should I have paid attention to the 32 bit issues? :)
     
  8. orlanth

    orlanth Storm God. Yarr!

    Joined:
    Nov 17, 2001
    Messages:
    1,776
    amen brother! :cool: Master of Magic is a definite classic, and in many senses set a high bar for well-balanced and interesting strategic gameplay that much of 4X gaming hasn't yet been able to surpass. (I am excited though to see the upcoming Age of Wonders sequel as well as this MoM-inspired kickstarter.) I actually did not know of the unofficial patch - will have to try this out immediately! :king: Anyway, Civ4col is definitely much more moddable than other games particularly civ5, and its inspiring to see what this and other serious mods have achieved :goodjob:

    Anyway, I agree it's by far the gameplay that's the most important point. Graphics for me really isn't the most important issue when it comes to civ4 modding - the bottom line is this is an older game, and if you want eyecandy you'll have to turn elsewhere; plus I'd much rather have interesting and well-balanced gameplay than to add tons of civs & units or be focused on their cosmetic appearance. Also, there are actually literally thousands of decent existing nif graphics to choose from when considering civ4bts mods, RaR, civfanatics databases. I put a large stash up on the 2071 sourceforge site though they're mostly SF there's also some good for general use, esp native-ish buildings.
     
  9. Nightinggale

    Nightinggale Deity

    Joined:
    Feb 2, 2009
    Messages:
    4,352
    Master of Magic 1.4 unofficial patch.

    I find this patch quite impressive as it fixes some game core bugs where I wouldn't even know where to start to fix. Also the list of changes is really long!
     
  10. Kailric

    Kailric Jack of All Trades

    Joined:
    Mar 25, 2008
    Messages:
    3,095
    Location:
    Marooned, Y'isrumgone
    The Downloads have been moved to their own thread...

    http://forums.civfanatics.com/showthread.php?t=504925

    The Git version has been updated and I'll upload a new update for official version soon


    Git 2.0d

    -quieting to main menu no longer crashes the game
    - AI players will now use the Profession Peddler. They will also travel the map looking for trades and can now use land trade routes.
    -If you set goods to Import AI traders will stop by your cities and offer their wares if they are carrying any that you need. You can trade techs/maps/goods/gold for wares. If the AI peddler has cargo room you can sell him wares as well.
     
  11. Nightinggale

    Nightinggale Deity

    Joined:
    Feb 2, 2009
    Messages:
    4,352
    I added a new and easier to use bat file to the download thread. Now it should be even easier to get the git version.
     
  12. mastrude

    mastrude Paraclete of Kaborka

    Joined:
    Oct 9, 2006
    Messages:
    329
    Gender:
    Male
    Location:
    Santa Cruz, ca
    I've been virtually "away" for a month attending some intensive classes. I was never able to get the repository of the development version playable, so I'm starting from scratch and being "vewy, vewy careful", to misquote the cartoon character who is my ideal in life.

    Already on the downloads page I'm confused. Here are the gory details:

    Spoiler :

    The downloads page has:

    "DOWNLOAD Version 2.0

    ***UPDATE***

    Update to version 2.0b

    Copy this over 2.0b
    Update to version 2.0c"​

    So what happened to update 2.0a? Is it included in the first download? Is it superseded by update 2.0b?

    Also, to clarify, what do the following updates mean:

    Does "Update to version 2.0b" mean "update version 2.0a producing version 2.0b" or "apply this update to version 2.0b to produce version 2.0c"?

    The same question applies to "Update to version 2.0c".

    This reminds me of one of those psychological pictures where foreground switches with background to produced a new image. I'm guessing that the person who wrote this (Kailric?) knows perfectly well what he meant, and, reading it back, can't envision the other meaning.

    Anyway, could someone explain this to me and/or edit the download page. Thanks.

    When I can get past this point, I have questions about the GIT script and what has made it break, for me.


    If you are interested, here is what I've been doing for the past month:

    Spoiler :

    In case you’re curious, the classes I’ve been taking are in classical Buddhist philosophy (roughly 4th-century AD and earlier.) This is the beginning of the curriculum taught in seminaries to Tibetan Buddhist monks and lamas, only in English and without memorizing entire classical writings, as the Tibetans do. I’ve been studying this for about 15 years at a lower level.


    I look forward to various of you telling me you skipped this part.
     
  13. Kailric

    Kailric Jack of All Trades

    Joined:
    Mar 25, 2008
    Messages:
    3,095
    Location:
    Marooned, Y'isrumgone
    I moved your question to the downloads page and answered it there so that others might find it useful as well.
     
  14. Nightinggale

    Nightinggale Deity

    Joined:
    Feb 2, 2009
    Messages:
    4,352
    Funny thing is that I never needed python until I started modding and then I needed the skill here and now and didn't have time to wait for training. I searched online and learned what I needed to know within an hour or two and then I started coding with in my own point of view acceptable result. After that I see little point in taking a nightschool course. It will likely end up like when I should learn matlab. I got the introduction that the calculations aren't done in the monitor, they are done in the box next to it (pointing at the tower). In fact it's done inside something called a CPU, but that's too advanced for this course to talk about. I *vanished* during the first break and signed up for the advanced matlab instead.



    Here is a little video which can be quite interesting for people who wants to program :)
    I don't always agree with him, but I do agree that once you know one of those well, the others aren't that hard to use, though they aren't trivial either.


    Link to video.
     
  15. Kailric

    Kailric Jack of All Trades

    Joined:
    Mar 25, 2008
    Messages:
    3,095
    Location:
    Marooned, Y'isrumgone


    Thanks for the input, I'll check out that video as soon as my wife gets off the phone;)

    I for one never actually went through any study or course book so I personally want to start from the basics and work my way up. I can do what I can do because I have a knack for copying what others have done and editing it to work for me. I know how to edit the DLL for Civ4Col but I do not know how to build my own programs from scratch, so that is what I am going to be working on learning over the next several months.​
     
  16. mastrude

    mastrude Paraclete of Kaborka

    Joined:
    Oct 9, 2006
    Messages:
    329
    Gender:
    Male
    Location:
    Santa Cruz, ca
    Do you think this guy would still list Python as one of the essentials? I'm an old pro programmer who has learned many more that five languages (but not Python.) I have the impression that Python and Perl are each lagging a little in the programming language sweepstakes, as APL faded years ago. Heard of APL? Probably not. It was the most cryptic computer language ever known to mankind and I'm deeply grateful that it's gone.

    About Python's currency, what do you think?

    Personally, I use Perl but I hate it, due to having been indoctrinated by Edsger W. Dijkstra many years ago. (Structured programming.) Object-oriented programming has been a completely new set of entries to the race, after Dijkstra's first burst into relative celebrity. You youngsters [brandishes cane here] think OOP is all there ever was. And stay off my damn lawn!
     
  17. Nightinggale

    Nightinggale Deity

    Joined:
    Feb 2, 2009
    Messages:
    4,352
    It's a little hard to say. Some people/companies do use it quite a lot. Personally I think it's a bit overrated, but it's far from bad.

    I'm not sure I would agree that you can just move to Java from the others. Java is... different. I would also bash Java because the main selling point is the cross platform ability, but I have had more porting issues with Java than with C/C++. Also porting issues are harder to fix with when it comes to Java. It's slow and the purely objective way of coding has some drawbacks as it makes some stuff way too tricky to code. It's also closed source and controlled by one company, which is free to charge money for previously free features, which I view as bad for the home user, but a serious hazard for companies. Companies risk ending up with a $10k fee or $50k recoding bill and Oracle knows that. I never understood the hype about Java.

    Python's currency? What's the exchange rate of that? $1 for 2.7 python eggs? :lol:

    I don't like or hate perl. However I don't write something in it unless it's because I write additions to something which is already in perl.

    Funny that's not how I remember programming history, at least not my personal programming history. I touched basic in the 80's (never made anything useful), pascal and C in the 90's and I didn't touch OOP until around 10 years ago.
    I do say that while C++ is the language of choice for tasks like M:C, I actually prefer C for microcontrollers. C lacks the strict type definition, which can actually be useful when coding something on a level where variables can be pin connections. C compilers are also preferable over C++ (long story short: C++ is way more complex and the compiler can screw up)
    Oh and I skipped ASM and machine code, though machine code was for class only. ASM on the other hand can still be useful for certain tasks. There is a set of rarely used instructions which the compiler will never use.

    [offtopic]
    Now we know Mastrude came back :lol:

    All this talk about programming and history makes me think of these videos


    The last one has some interesting parts.
    23:56 sounds like using the same name in XML more than once (those debugging sessions took maybe 10 hours to figure out what went wrong, but I learned a great deal from it)

    Actually the whole talk about tests from 23:56 to 34:20 is quite interesting. He talks about ruby, but I view this part as quite general and I wonder if we can come up with something clever. FAssert() is something in that direction, but still not quite what he talks about. Ideas for such tests are very welcome :)

    Also feel free to watch all of it, but it takes an hour. I selected the most important 10 minutes. Well the most important 10 minutes from an M:C point of view.
     
  18. mastrude

    mastrude Paraclete of Kaborka

    Joined:
    Oct 9, 2006
    Messages:
    329
    Gender:
    Male
    Location:
    Santa Cruz, ca
    When a native chief offers to become a vassal, both you and he have the offer "become vassal". Shouldn't he show "become vassal" and you see "become lord"?
     
  19. Kailric

    Kailric Jack of All Trades

    Joined:
    Mar 25, 2008
    Messages:
    3,095
    Location:
    Marooned, Y'isrumgone
  20. Schmiddie

    Schmiddie Emperor

    Joined:
    Feb 27, 2012
    Messages:
    1,347
    Location:
    Germany
    Hi Kailric!

    Very nice mod! I've started to follow the development of it now. :)

    Have you ever tried to change/increase the range of siege units? It could give some new tactical aspects to the military system.

    To my opinion it is a little bit boring that siege/artillery Units only can shoot just into the adjacent field like infantry or cavalry. I've never liked this in vanilla or mods.

    Would it be possible to increase the range of siege units so that they get a range of 2 or more?
     

Share This Page