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

Fantastical 32-VI-8a

Highly configurable and randomizable map script generates surprising lands and squiggly rivers.

  1. resorcerer

    resorcerer Chieftain

    Joined:
    Apr 3, 2013
    Messages:
    54
    resorcerer submitted a new resource:

    Fantastical - Highly configurable and randomizable map script generates surprising lands and squiggly rivers.

    Read more about this resource...
     
  2. shaglio

    shaglio The Prince of Dorkness

    Joined:
    Jun 15, 2001
    Messages:
    3,221
    Gender:
    Male
    Location:
    Lawrence, MA, USA
    It SOUNDS interesting . . . I don't suppose you can post a few sample images?
     
  3. resorcerer

    resorcerer Chieftain

    Joined:
    Apr 3, 2013
    Messages:
    54
    Oops, yes. There are now some images in a spoiler in the resource description.
     
  4. resorcerer

    resorcerer Chieftain

    Joined:
    Apr 3, 2013
    Messages:
    54
  5. shaglio

    shaglio The Prince of Dorkness

    Joined:
    Jun 15, 2001
    Messages:
    3,221
    Gender:
    Male
    Location:
    Lawrence, MA, USA
    Ooo, that looks like a lot of fun. The customization seems very flexible. I'll have to give it a whirl after this next patch finally comes out.
     
  6. resorcerer

    resorcerer Chieftain

    Joined:
    Apr 3, 2013
    Messages:
    54
    I went a little nuts with the options when I ported it from Civ 5, because Civ 6 doesn't have a hard limit on the number of map options like Civ 5 does
     
  7. pokiehl

    pokiehl Chieftain

    Joined:
    Mar 5, 2017
    Messages:
    347
    I really enjoyed this in Civ 5. Thanks a lot for porting it, and I hope you continue to develop it :)
     
  8. resorcerer

    resorcerer Chieftain

    Joined:
    Apr 3, 2013
    Messages:
    54
  9. zathoros

    zathoros Chieftain

    Joined:
    Mar 25, 2018
    Messages:
    1
    Gender:
    Male
    The extra options were nice, like existing roads. But got a lot of amber on sea resources.
     
  10. resorcerer

    resorcerer Chieftain

    Joined:
    Apr 3, 2013
    Messages:
    54
    Hm, the script doesn't mess with resource generation. Possibly there are more coast tiles than the standard map scripts, therefore more opportunities for coastal resources?
     
  11. kucich

    kucich Chieftain

    Joined:
    Apr 23, 2018
    Messages:
    1
    Gender:
    Male
    First of all thank you for the nice script and forgive my english.
    I tried a couple of match and for what i've seen till now there are at least three bugs.
    First of all a bunch of barbarions spamming always in the same places.
    Second, I'm playng with Poundmaker, and seems that instead of just a couple of tiles, it acquires all the trade route tiles.
    Third, instead of boosting state workforce after building the first distrect, in my case a campus, it boosted writing.
    I'm using various mod but nothing was wrong until I tried this one.
    That's all for now.
     
    Last edited: Apr 24, 2018
  12. FairFenix

    FairFenix Chieftain

    Joined:
    Mar 9, 2009
    Messages:
    21
    Gender:
    Male
    The maps are awesome however it crashes half of the times. i tried to make a map with this configuration:
    large
    12 CS
    one less civ than default
    no wrap
    two ocean rifts
    two medium seas
    no continents
    few islands
    few lakes
    two medium seas
    damp, new, cold
    land on poles - yes
    realistic - yes
    For some reason, it creates a map in world builder and it is awesome, but fails to create the map when I want to start a game with these settings.
    Anyway, still awesome script, best so far! If I will find out how to save maps from WB, I would be able to start my epic game (however I will lose some adventure spirit in the process)
     
  13. resorcerer

    resorcerer Chieftain

    Joined:
    Apr 3, 2013
    Messages:
    54
    Thanks for the detailed report! Why did you set Islands to Few? With no continents, that means there will be almost no landmass (two large islands and three small islands). I can imagine why it crashes. There isn't enough land on this map to find start positions for all the civilizations.

    That might explain why I can't reproduce any of the crashes people have been reporting: I've been testing in world builder, with the assumption that as far as the map script part is concerned there's no difference (world builder even does start positions, after all). But I've also created several games with this map script, with no crashes. So I just wish I could repdroduce. I'm guessing it has to do with start positions, because when it did crash on me, it was before I edited the arguments passed to the start positioner.

    I guess I have my work cut out for me, trying to crash the game with maps without enough land. The annoying part about this is, when it crashed before from start positioner problems, there was absolutely no error reporting. The Lua log just ends after saying that it's creating the start plot database.

    Since there's no fixing the game's ungraceful behaviour when the start positioner doesn't get what it wants, probably the only solution is to add some padded cell logic to my script, so that if users choose a combination of options that will probably crash the start positioner, the script will either reduce the number of civs (if that's possible), or override the user-selected options to create a map that will give the civs enough room.

    I struggle to imagine how bugs two and three might be caused by a map script. The barbarians could be caused by a map that has more land, or more deserts, tundra, and snow, depending on what options you selected. I played on an All Land map with Arrakis rainfall, for example, and the barbarians are a constant problem because almost the entire map is desert, and there's too much land for the number of civilizations to cover.
     
  14. resorcerer

    resorcerer Chieftain

    Joined:
    Apr 3, 2013
    Messages:
    54
    I found out that generating a map in World Builder doesn't give positions to city states. Probably this is why it's less prone to crashing. By lowering the minimum fertility depending on how much land per civ there is, the start positioner won't crash even when using your above settings. However if I create a game, when the game starts, it sometimes immediately ends, presumably because the city states make everyone start nearly on top of each other. If I set the city states to 0, the game doesn't immediately end, and I just end up with two other civ's settlers within sight. Which is okay. I'll release an update that will make it much harder to crash the game with maps with very little land.
     
  15. resorcerer

    resorcerer Chieftain

    Joined:
    Apr 3, 2013
    Messages:
    54
  16. FairFenix

    FairFenix Chieftain

    Joined:
    Mar 9, 2009
    Messages:
    21
    Gender:
    Male
    I guess I wanted to make the ocean less empty and just add two-three tiny islands to make it more interesting (Islands of size 3 tiles, not landmasses). I guess I misunderstood that part. I am not sure if it conflicts with the amount of lakes that I set (few).

    Also, thank you for reply and update I will test the map.

    P.S. seems it works now.
     

    Attached Files:

  17. resorcerer

    resorcerer Chieftain

    Joined:
    Apr 3, 2013
    Messages:
    54
  18. resorcerer

    resorcerer Chieftain

    Joined:
    Apr 3, 2013
    Messages:
    54
    resorcerer updated Fantastical with a new update entry:

    6

    Read the rest of this update entry...
     
  19. resorcerer

    resorcerer Chieftain

    Joined:
    Apr 3, 2013
    Messages:
    54
    resorcerer updated Fantastical with a new update entry:

    7

    Read the rest of this update entry...
     
  20. resorcerer

    resorcerer Chieftain

    Joined:
    Apr 3, 2013
    Messages:
    54
    I'm trying to fix the multiplayer desyncs players have been reporting, and I began by seeing if the map script will produce the same map given the same map seed number on my own machine. It won't! Which I can't wrap my head around: That means there's some unpredictable element other than the random number generator (which should be predictable given the same seed) in my script, somewhere.

    The differing maps generated by the same map seed are very similar. They have the same continent shapes and regions, but different placements of mountains, lakes, terrain tiles, and rivers. This means, because of the order in which these things are generated in my script, that the random numbers are all fine and predictable up until mountain range generation. I confirmed this by printing out every random number to the Lua log, diffing the results, and doing a stack traceback on the first random number that differs--the 2,859th, in this case.

    But what is even capable of introducing unpredictability? os.clock(), obviously, but I don't use that. Given the same random number seed, why would a script not be entirely deterministic?

    edit: The answer is apparently pairs(). Beware pairs() in writing map scripts, if you weren't already aware of this.
     
    Last edited: Dec 8, 2018 at 10:47 PM

Share This Page