TerraForm -- a map editor for CIV dos

Dack said:
...
I wondering if it may be a combination of Win98 and 128 mb of memory.
...
no, 256MB SDRam.

anyway - i will mail you the error codes and registers if it happens again.
too sad i didn't react that way when it did occure, sorry.
 

The special resources are now coded into TerraForm. So with version 1.0.19 those squares display the appropriate information. Also the river and grassland squares are marked as follows so that those special resources squares can easily be identify and change to what ever you need.



A new menu item to boldly mark the special resources squares.


A thank you to Holger Eichmann for his pioneering effort with Civilization Map Changer Version 2.1 (civmap21) and his discovery of the formula.

Also thank you to Gaborka who was the first to publish a program that decoded the compression method used by the CIV dos map file. Without his effort this program would not exist.

And thanks to the users of this program and their many kind words of encouragement.
.​
 
Dack said:

The special resources are now coded into TerraForm. So with version 1.0.19 those squares display the appropriate information.
... ...
wow! never thought this would be possible. thanks! :)
 
TerraForm Bug: 07Dec2005
Using TerraForm to create a city over an existing unit will cause the unit to be improperly mark on the map allowing opposing units to move onto its square unopposed.

The temporary workaround (until an update can be made):
Create the city first
or
return to the unit function , click on the square, click done
_ _ _​
08Dec2005
Another bug: City built on the sea shore by TerraForm can't build naval units.
A bit in the city descriptor that I had no idea of its function has been identified as defining cities that are on the edge of the sea.

I hope to have these bugs fixed shortly.

Fixed with version 1.0.29 9Dec05
Thanks to trada and Tenochtitlan for identifying these bugs.
 
My review of this program:

It's a very fine piece of work. Dack, you filled the void of a civ1map editor and did it above par. It does everything we need it to and I can only think of a few improvements needed.

1. Slightly better interface. Have the Exit button on all windows in the same place.

2. Scrolling.

3. It would be hard, but if there was a way to edit the techs each civ has..

And that's about it from me. Once again, Well done :) You took the time to forge this and we are very thankful :D
 
Quotes from trada in Green
3. It would be hard, but if there was a way to edit the techs each civ has..

Check out my other program CIV$
It does many different editing functions to CIV dos sve files, see accompanying documentation.
It is the companion to TeraForm.
.​
 
done. everything works fine.
version: 1.0.28
 
Its a great program. The only real snag I've found is that the sites in which Civ cities can be built are determined based on the land formation at the start of the game... thus, any alterations can only be fully appreciated by human players: the AI civs will not build on 'new' land.
 
Quote from simonnomis :
...the AI civs will not build on 'new' land

Strange that no one noticed this before.

When the game creates a world, for each plain, grassland and river square it assign a value in two of the data fields assigned to that square with the same value. These appears to give the games countries an indicator where a suitable square to build a city is located. From what I can see the games countries only build on plains, grassland or river squares.

After a city is built, the square it is on and the squares it controls are loaded with the value of that country (0 to 7) in the first of the two locatation, the second remains the same, its use its is unknown to me.

The value in these two squares seem to indicate the value of the square for city purposes. The high order bit is always set. So only 3 bits are use to give this value (or are they flags). I have yet to determine a method by which these values are assigned.
They seem to be assigned depending how close other planes and grasslands, also nearness to artic or tundra.

As a workaround I will most likely set the high order bit in the those fields so that at least they can build cities and come up with some arbitrary way of setting the other three bits.



.​
 
Does seem strange nobody else noticed. The current set up means, for instance, that if you stick a mountain in a square that was previously a good river site, the civ will still build a city on the mountain! It also means AI civ settlers will get to the sea and become stuck trying to reach what 'should' have been a good spot for a city, but which is now the middle of the ocean.

The same applies in an unaltered game though; if, for instance, you remove the swamps or forests, AI civs will still not build on what are now desirable locations. Its a shame this kind of stuff isnt coded for inline rather than at the creation of the world.
 
Quote from simonnomis :
The current set up...middle of the ocean.
When I was analyzing the phenomenon, I first turned all the original land into artic squares so I would know which ones were coded by the game. I noticed the games settlers seemed lost.


Its a shame this kind of stuff isn't coded for inline rather than at the creation of the world.
I thought that also. As I have been coding this program it seemed that more times than I remember I had to keep branching off on tangents searching for ways to work with in the game rules. One would think that the map would be a simple thing. A simple discription of each place, but no; each map square has 10* 16 data fields. Eleven* Seventeen if you count the one that determines visibility on the big map which is stored in the sve file.

I can understand that the original programmers had to make the game work in a 640K DOS enviroment and predetermined tables in place of logic to find a place to build a city was most likely their best choice.

*Later research
 
What an amazing find.
 
Perhaps one alternative possibility is to create an entire Terraformed world BEFORE starting the game through altering the earth map file somehow? I remember on the Amiga you could redesign the earth anyway you wanted by taking the map file into Paint. Although the PC file cannot be so easily accessed, it is interesting to note that every new land space could be successfully used by the AI civs (though their starting positions were still fixed into those normally expected when playing on Earth). Not ideal, but maybe there is some way of accessing like this, perhaps requiring less work?
 
Major Bug
This bug has been addressed in version 2.0.45

TerraForm has a major short coming. The terrain that it modifies does not contain the proper information for the games civilizations to be able to build cities on.

I have identified the map square data fields that support this function. But I am unsure of how they work.

The games countries only build on plains, grassland or river squares. Each of these squares contain information relating to the suitability of that square for the game to build on.

It appears that the information is encoded into 4 bits. The first bit signals whether this square can have a city built.

The other three; are they separate flags or just a number from 0 to 7. I'm not sure. From observation it seems that if it is a number 0 to 7. The higher number are for squares that are near more plains, grassland or river squares.

Squares that are near tundra, mountains, swamps, etc. seem to have lower values. BUT there does not seem to be an apparent connection between the surrounding area and the value. I am going to write a program in an attempt to analyze the data to see if I can come up with a formula to mimic the values that CIV uses.

When I get a more graphical representation work out, I may ask for volunteers to look at it and see if they can see the connection between the terrain and the bits. You can email me if you might like to help and if you find Terraform useful.
.​
This bug has been addressed in version 2.0.45
 
Perhaps version 474.01 would be of some help to you? One of the options allows you to see which spaces the computer determines are acceptable for the AIs to build cities on (as well as allowing you to see the AI diplomats being produced ;) )

Another thought; I would imagine one of the bits you are presented with would relate to the distance between cities maybe?

Si.
 
too sad.

i was wondering while watching many selfmade games with reconstructed (terraformed) terrain
about strange AI (settler) moves.

sometimes whole AI fleets stuck / are captured in f.e. archipelagos because they don't know where to go.
settlers build cities on mountains.
flocks of settlers rotate centuries at just 3-4 fields because they are trying to get somewhere not there (anymore).

that's it: another problem, i hope there will be a solution someday. :sad:
 
I'm willing to help out any way I can. I have minimim programming experience (qBasic, VBasic and Lino) but will do whatever I can.
 
NOTE: Jan 24, 2006
I no longer need the test of version 1.0.35
But if you would like to test play a game for me. The guide lines would be the nearly the same as these, but I would like you to play in your normal way. Please email or private message me and I will send you a game to test play.
I seem to be making satisfactory progress in the resolution of this problem. Thanks to all who have helped so far.

Friends of TerraForm, Brothers of CIV DOS.
I beseech you.

I would be grateful if you would do some test game play for me. This request is aimed at YOU not the other guy. I need as much participation as I can get. If you like the idea of a map editor, scenario maker, this is your chance to help. Even if you don't, do me a favor anyway. Ok now that the begging is over I'll get down to particulars.

I need you to do a test play to see if I am on the right course in the other countries being able to build cities on land squares modified by TerraForm.

Note: 13Jan06 new version​
TerraForm1-0-33.ZIP 13Jan06 file size 1.52M - 7 minutes to down load at 56k

1) Down load version 1.0.35

2) In Civ Dos start a new game with 7 countries, Start the game, move 1 turn then save the game in Civil3.map and civil2.map, Exit CIV DOS.

3) In TerraForm ver 1.0.35 load civil2.map changes the map in large ways. Put each country on to its own Island, make them big so that there is plenty of opportunity to grow and prosper. One suggestion is to turn all the squares to ocean and build from there.
Note: Do NOT use the top or bottom 3 rows that belong to the Arctic and Antarctic, or the first 3 columns or the last 2 columns. DO NOT add cities or units to the map. We need this to be only a test of the games city building habits.
When you have built your world save it.

4) Start CIV DOS. Load civil2.map, under OPTIONS set AutoSave ON. Save the game to civil0.map

5) Play the game, nothing fancy your on your own island. Built a civilization fight off invaders if any. DON'T go off invading. Let the game evolve. Play to after 1500AD.

6) The zip file should contain the original unaltered game map & sve. The Terraform output unaltered, and the autosave files. Put all the map & sve files in a zip file and send them to me in an email or the Upload File link on the bottom of the page has a link that is a fine way to send large files. You can use http://www.yousendit.com/


The following is a zip file of a game I played using these rule. You can examine the flow of the game over time with Terraform or Shift 56 in CIV ver 1.



Again your help is needed. If you can't get to 1500AD send what ever you have when you quit. This will give an indication of how games will play with this modification and may hint at other approaches to the problem. Even if it will take two weeks or more to play out the game, do it. I will edit this post when I determine that this test is no longer needed.

Thanks,
Dack
 
Give me 3 or 4 days and I'll send it, as I have a lot of work to do.
 
Top Bottom