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

Supporting really large maps

Discussion in 'Maps & Scenarios' started by Koshling, Apr 28, 2012.

  1. Koshling

    Koshling Vorlon

    Joined:
    Apr 11, 2011
    Messages:
    9,254
    WTB GEM with the same level of detail as the Atlantica maps! (would be pretty big). I should be able to write something that scales an existign map (aka GEM) up by whole number factors (just replace each tile with a rectangular block of identical tiles at the laregr scale), to serve as a starting poitn to edit the detail in.
     
  2. Thunderbrd

    Thunderbrd C2C War Dog

    Joined:
    Jan 2, 2010
    Messages:
    27,382
    Gender:
    Male
    Location:
    Las Vegas
    This would be great! But... and not to be a naysayer here since I'm really just inquiring, isn't the majority of the processing that taxes the computer primarily stemming from the ai determinations on hundreds of thousands of units and hundreds of cities? I can see how this would loosen demand on lesser computers by an extensive amount but how effective would it really be in light of the ai taxation? I'm wondering if there's a way to somehow additionally run those processes not ongoing in your current screens in a separate block in between turns (particularly in multi-player play) to make the whole game 'picture' easier for the processor to digest.

    And how effective would this be on a multi-player platform? Would the selection of theater have to apply to all players at a time or would it be independent to the individual user's current selection?
     
  3. Koshling

    Koshling Vorlon

    Joined:
    Apr 11, 2011
    Messages:
    9,254
    There are lots of different aspects:

    1) memory - mostly graphics - shouldnt be an issue so long as you dont try to have too large of a viewport

    2) Processing time - yes, this is largely proportional to AI unit number and a few other factors (though animals cost very little). I'm continually working to make those aspects faster, and there is no doubt that more will need to be done, but even the current DLL can play (apart from memory issues) GEM sized maps several times faster than it could a few releases ago, so equally it can play several times larger maps at the speed it used to play GEM. It comes down to a balance, which will be found in different places for different people (and different hardware). However, I think there is still LOTs of scope for improvement here, so GEM doubled in all dimensions doesn't scare me (for example)

    3) Multi-player - I'm not really an expert here, but since the DLL (including the net messags it generates and receives) only sees the undrelying map I dont think it would make any difference - peopel with viwerports in different places would eb just like players with different parts of ther map displayed in their main window (ie - in different parts of the minimap) today. MULTI-maps however, would certainly need an extension of the new message parameters to include a map id. Multi-maps is actually a harder problem than the viewporting is.
     
  4. Thunderbrd

    Thunderbrd C2C War Dog

    Joined:
    Jan 2, 2010
    Messages:
    27,382
    Gender:
    Male
    Location:
    Las Vegas
    Great answers! Thanks for the discourse. It helps to get an idea of how this might work and the benefits. I'd been thinking of proposing something along these lines but it hadn't become a fully formed thought yet and I don't have as good a grasp on the overall programming picture as you do so I had kept it to myself until I could think it through more. You're 10 steps ahead of me already on this and I'm all for it.
     
  5. ls612

    ls612 Deity Moderator

    Joined:
    Mar 10, 2008
    Messages:
    8,072
    Location:
    America
    @Koshling:

    I've been trying to do some memory usage analysis on C2C, mainly to see what the scaling factor is for non-graphics memory. I have found that the base mem usage, with no game loaded whatsoever, is 800 MB of RAM, but I'm trying to get a more detailed breakdown of memory usage between graphics and non-graphics when I'm playing a game, and Task Manager is wholly inadequate for that task. Do you know of any good way to get a more detailed breakdown of where the RAM is going?
     
  6. GiuseppeIII

    GiuseppeIII The Third Giuseppe

    Joined:
    Jul 12, 2011
    Messages:
    647
    Location:
    Chicago IL
    If this does work would it be possible to increase the amount of civs playable and give each civ more cities

    PS. I think this would be super super awsome if it does work
     
  7. Koshling

    Koshling Vorlon

    Joined:
    Apr 11, 2011
    Messages:
    9,254
    No, that's the best you can do without an instrumented memory allocation system, and we don't have one (and can't add one because we have to use the the game engines alloctaor because of the way it passes STL objects around across the engine-DLL interface.

    What you can do is differentiate between memory used by code, and memory allocated on the heap, by querying that directly in explicit code and dumping it periodically. If you look at the load sequence in the debugger you'll see it outputs memory allocated so far figures periodically as it goes through, and as it loads a save. From that you can draw some inferences about where it's going.
     
  8. Nakkimunakas

    Nakkimunakas Chieftain

    Joined:
    Jan 13, 2012
    Messages:
    85
    Location:
    Finland
    Anything I can do to help generate big maps easier? I'm having a hard time trying to generate Gigantic maps with around 40 civs, especially perfectworld or perfectmongoose.

    Usually about 1 out of 5 maps gets finished. Other times it just doesn't ever finish generating the map or all tiles are grassland. Also are there any settings that would help? For example perfectworld never works with 'Allow pangaias' option.

    I've got 8Gs of RAM so that shouldn't be a problem?
     
  9. Koshling

    Koshling Vorlon

    Joined:
    Apr 11, 2011
    Messages:
    9,254
    Anything over 4G is irrelevant. Civ is a 32bit game, and cannot use more than about 3G or so itself however much physical RAM you have. This is a limitation imposed by Civ4 itself, and not something we can do anything about as long as we remain a mod to that game.

    Make sure you have the /3G switch set (if relevant to your OS, which it isn't for Win7 or above). Also use viewports for larger map sizes.
     
  10. Nakkimunakas

    Nakkimunakas Chieftain

    Joined:
    Jan 13, 2012
    Messages:
    85
    Location:
    Finland
    I don't really have problems with the playing part but just with generating the maps. I'm playing oversized 200x200 right now and it works fine. Just have hard time with getting the mapscript to finish.

    edit: The mapscipt doesn't crash it just freezes takin 100% of cpu like it is in infinite loop or something.
     
  11. ls612

    ls612 Deity Moderator

    Joined:
    Mar 10, 2008
    Messages:
    8,072
    Location:
    America
    Oh, that bug was fixed last week on the SVN. You must be using V26, right?
     
  12. Nakkimunakas

    Nakkimunakas Chieftain

    Joined:
    Jan 13, 2012
    Messages:
    85
    Location:
    Finland
    Yep. Thanks.
     

Share This Page