Blizzards Modcomp v1.21 For Fall from Heaven 2 0.41o This python-only modcomp adds Age of Ice style blizzards to Fall from Heaven 2. If you haven't played AoI, Blizzards were able to move around and spread snow terrain in that scenario. FFH 2 lacks this feature. However, for my Frozen new civ mod I wanted to add a method of "automatically spreading" snow terrain- and thought of blizzards. So, I'm releasing this modcomp with only the Blizzard code in it. It is included in the Frozen civ mod, however this modcomp is for regular, otherwise unmodded FFH. Blizzards is done entirely in python, thus making merging it with another mod very easy (especially since all of my new code, save a few lines in the event manager and spell interface files, is in a new python file, Blizzards.py). There are instructions for using it with another mod, like Fall Further or Orbis, below under the Install Instructions, and are also included in a file in the download. What Blizzards Do: Allowed blizzards to move around the map (they are blocked by features) Allowed blizzards to be randomly spawned on snow plots in Illian terrain after the Deepening is completed Blizzards randomly spread both temporary and permanent snow terrain Blizzards sometimes create Ice features on water they move by Blizzards will randomly be destroyed (naturally) The Call Blizzard ability applies the code ran by the blizzard to set ice terrain The Scorch spell destroys water ice within a 1-plot radius of the caster Blizzards cannot be created on water or in cities, nor move onto water Links: Download Here Blizzards for Fall Further Changelog: Code: v1.21 Changelog: -Compatible with FFH 0.41o v1.2 Changelog: -Compatible with FFH 0.41m -Scorch now destroys water ice -Blizzards will not spawn until someone completes the Deepening -Movement, permanent snow, and permanent ice chances decreased -Blizzard death chances increased -Blizzards not in Illian lands have extra chance to die -Blocked blizzards from being created in cities and moving onto water -Before creating a blizzard, the game will check if too many other blizzards are nearby v1.1 Changelog: -Compatible with FFH 0.41j -Blizzards now have a 50/50 chance of turning water into ice -Streamlined check if a blizzard could be created on plot To Install: 1. Unzip the files into a temporary directory. 2. Copy the Python folder into your Beyond the Sword\Mods\Fall from Heaven 2\Assets folder. You may wish to back up your existing files or create a new "FFH Blizzards" folder in Beyond the Sword\Mods that is a copy of the Fall from Heaven 2 folder, and copy the Python folder from the zip into there. Either method will work. 3. To test, start a game as the Illians and make all plots around you Snow terrain via Worldbuilder. Blizzards should start spawning on them if you have installed the mod correctly. To install this with another modmod, you can either use the Merging Guide included in the mod or the instructions below. Spoiler Merging Guide : 1. Copy the Blizzards.py file from the modcomp into [FFH_MOD]\Assets\Python, where [FFH_MOD] is the mod you are trying to merge this with. (For instance, Fall Further 051\Assets\Python). 2. Open CvEventManager.py, located in Assets\Python, using a text editor such as Notepad++ (but Notepad works as well). 3. At the top of the file, between the import statements (for instance, import OOSLogger, import Util, etc.) and a line saying # Globals, add this line: Code: import Blizzards 4. Below where it says # Globals, add the following line of code: Code: Blizzards = Blizzards.Blizzards() 5. In the onBeginGameTurn function, add the following line of code at the end of the function. Code: Blizzards.doBlizzardTurn() 6. Close CvEventManager.py and open the file CvSpellInterface.py, located in Assets\Python\Entrypoints. 7. At the top of the file, below the import statements, add the following line: Code: import Blizzards 8. Below the globals, add the following line of code: Code: Blizzards = Blizzards.Blizzards() 9. Overwrite the spellCallBlizzard function with this code: Code: def spellCallBlizzard(caster): iBlizzard = gc.getInfoTypeForString('FEATURE_BLIZZARD') iTundra = gc.getInfoTypeForString('TERRAIN_TUNDRA') iX = caster.getX() iY = caster.getY() pBlizPlot = -1 for iiX in range(iX-1, iX+2, 1): for iiY in range(iY-1, iY+2, 1): pPlot = CyMap().plot(iiX,iiY) if pPlot.getFeatureType() == iBlizzard: pBlizPlot = pPlot if pBlizPlot != -1: pBlizPlot.setFeatureType(-1, -1) pPlot = caster.plot() pPlot.setFeatureType(iBlizzard, 0) Blizzards.doBlizzard(pPlot) 10. Add this code to the end of the spellScorch function: Code: for iiX in range(pPlot.getX()-1, pPlot.getX()+2): for iiY in range(pPlot.getY()-1, pPlot.getY()+2): pIce = CyMap().plot(iiX, iiY) if pIce.getFeatureType() == gc.getInfoTypeForString('FEATURE_ICE'): pIce.setFeatureType(-1, -1) 10. Close CvSpellInterface.py and test it out as described in the install directions. Credits: -TC01 -MagisterCultuum, Cypher, xienwolf (help) -Fall from Heaven 2 Mod Team (for making FFH 2) -Firaxis (for making Civ IV) Screenshots: On the download page, there are three screenshots, of Turn 0, Turn 5, and Turn 10, to show the effect of a blizzard. I have worldbuildered a blizzard on Turn 0 on the coast by some plains. By Turn 5, the Blizzard has spread snow and ice in a small region around the plot where I Worldbuildered it. By Turn 10, you can see that the blizzard has faded, and one of the plots has reverted back to normal terrain (as it must have been a temporary change).