UGO
Civilization Fanatics' Center  

Welcome to Civilization Fanatics' Center.

You are currently viewing our site as a guest which gives you limited access to our site features. By joining our free community, you will be able to participate in the discussions, search the forum, send private messages, vote in polls, upload your own screenshots to the gallery, and access many other special features. Registration is fast, simple and absolutely free, so sign up today! If you have any problems with the registration process or your account login, please contact support.

Go Back   Civilization Fanatics' Forums > CIVILIZATION III > Civ3 - Creation & Customization > Utility Programs

Reply
 
Thread Tools
Old Jan 20, 2004, 12:31 AM   #1
Moonsinger
Settler
 
Moonsinger's Avatar
 
Join Date: Apr 2002
Location: Iowa
Posts: 4,372
HoF Map Finder/Generator Utility

First of all, I would like to thank Dianthus for helping me out on this project. Without your extensive works on reading/analyzing the save game file, this utility wouldn't be possible. On my list, you are one of the best C++ coder around here. Dianthus, a big hug and thank to you!

I also would like to thank Gramphos, sirp, Hot-bandito, and Aeson for their research on the .SAV file format and its compression format. Without their contribution, this project wouldn't be possible.



--------

Well, I did it! This is a utility that will help you find that perfect map for your HoF game.

Since I don't know much about the format of the savegame, I recruited Dianthus to help me out on this one. Thanks Dianthus! It's really a join development effort between him and me. I do the user interface (.EXE) and he read the savegame and check for the domination limit (.DLL).

Here is a screenshot of it (edit: old screenshot was deleted after 4912 views; the one below is from the latest version):
Attached Thumbnails
Click image for larger version

Name:	MapFinderScreen.jpg
Views:	5310
Size:	78.5 KB
ID:	85118  
__________________
The future is all around us, waiting in moments of transition to be born in moments of revelation. No one knows the shape of that future or where it will take us. We know only that it is always born in pain. -- G'Kar

My Favorite Game

Last edited by Moonsinger; Mar 20, 2005 at 04:51 AM.
Moonsinger is offline   Reply With Quote
Old Jan 20, 2004, 12:39 AM   #2
Moonsinger
Settler
 
Moonsinger's Avatar
 
Join Date: Apr 2002
Location: Iowa
Posts: 4,372
Version 6.5 (as of 04/20/2005):

http://www.civfanatics.net/uploads9/MapFinder_v65b.zip

Additonal features as follows:

MapFinder will now recognize multiple rule sets. In order to do that, you need to add rules as follows:

#1. Setup your Rules

#2. Save your rule to the "rules" directory (it will create/and default to that directory automatically).

#3. Go back to step #1 to create another set of rules or whatever. Create as many set of rules as you like. Please try to give each set of rules a meaningful name when you save it!

#4. After you have setup all your rules, launch it as usual.

Note: You must have at least one rule set save to the "rules" directory in order to find any map. Whenever MapFinder search for maps, it will attempt to satisfy every set of rules stored in the "rules" directory. Btw, this rules directory can be located in the MapFinder directory.

New feature:
To reverse the sort direction, just click on the header of a column that has already been sorted. Other than the first two columns, the sort direction (either ascending or descending) will be reversed.

---------------

Please remember three things when running MapFinder:

1. File/Setup menu is your friend. Always check your setup and verify your setting before generating new maps.
2. Be sure to tell MapFinder the correct AUTO SAVE directory of Civ/PTW/C3C (depending on which version of the game that you are playing). If you forget to do this step, MapFinder won't generate map (it still run just fine, but it won't give you any map)
3. Remember to start "New Game" first and activate MapFinder when you are inside Civ3/PTW/C3C (any time during or after 4000BC but not before 4000BC).

For explaination of how to fine tune the two extra sleep functions, check out this post. Discussion about this version was started around page 20 of this thread.

Note: This version is bug free and it should work well with all version of CIV3/PTW/C3C with US keyboard layout. If your system default keyboard layout isn't US, you need to temporarily set your keyboard to US before running MapFinder.

---------------

Installation Instruction:
Unpack utility "mapfinder.zip" to a directory of your choice and create a shotcut for the "mapfinder.exe".

---------------

How to use this utlity:
1. Launch the "mapfinder" utility before/after launching Civ3/PTW/C3C
2. Start a "New Game" (very important! You must do this!)
3. Choose Your World! (very important! You must do this!)
4. Go through "Player Setup" and select "Difficulty" level or whatever you like. (again, this is part of the starting up new game process! You must do this before you can play!)
5. That's it! You are now at 4000BC. This is the place where you start MapFinder

Technical Note: Basically, the program will work exactly as follows:

1. Tell Civ3/PTW/C3C to start a new game
2. Check for the domination limit or whatever
3. If the requirement (your rule set) is meet, save the game at the beginning of the 4000BC turn and and take a screenshot of the starting location.
4. Go back to step 1. This is an infinite loop until you stop it or whenever its find the max number of maps that you have asked for.
__________________
The future is all around us, waiting in moments of transition to be born in moments of revelation. No one knows the shape of that future or where it will take us. We know only that it is always born in pain. -- G'Kar

My Favorite Game

Last edited by Moonsinger; Jun 09, 2006 at 05:28 AM.
Moonsinger is offline   Reply With Quote
Old Jan 20, 2004, 02:01 AM   #3
Artofcybermars
Chieftain
 
Join Date: Nov 2003
Posts: 32
Kudos to you both. I know this utility will get lots of use here. not only when i make my HOF attempts (coming to an forum near you.) but my general practice games as well. Am looking forward to future updates when your time permits.



Of course an link to the file will probably make it easier to download
__________________
"I care not so much what I am in the opinion of others as what I am in my own." ( Michel de Montaigne)

Last edited by Artofcybermars; Jan 20, 2004 at 02:07 AM.
Artofcybermars is offline   Reply With Quote
Old Jan 20, 2004, 02:05 AM   #4
superslug
Still hatin' on Khan
 
superslug's Avatar
 
Join Date: Jan 2003
Location: The Farm
Posts: 10,772
I'm interested in a blue one. Can I get an optional CD player with this?

Just kidding, Moonsinger. I anticipate using this once I have need to generate maps again...

__________________
Kamikaze Watermelons Pwn
superslug is offline   Reply With Quote
Old Jan 20, 2004, 02:33 AM   #5
Moonsinger
Settler
 
Moonsinger's Avatar
 
Join Date: Apr 2002
Location: Iowa
Posts: 4,372
Sorry, I forgot to include the zipfile. It's now included in my second post. Also, each unit of the "time delay" = 1/1000 of a second. Therefore, 7000 = 7 seconds. I will have to do some unit conversion in the final version.

Btw, I have done a test run of it for about 1 hour. Just found 2 map with domination limit of 4512 and 4514. One of them right on the river and next to a cow!

PS: For starter, I recommend the default "time delay" which currently set for C3C. For PTW and Civ3, you may want to cut that number down in half (note: C3C take twice as long in loading/saving). In any case, do not set them to lower values during your first attempt.
__________________
The future is all around us, waiting in moments of transition to be born in moments of revelation. No one knows the shape of that future or where it will take us. We know only that it is always born in pain. -- G'Kar

My Favorite Game

Last edited by Moonsinger; Jan 20, 2004 at 02:37 AM.
Moonsinger is offline   Reply With Quote
Old Jan 20, 2004, 02:46 AM   #6
Darkness
Shadow creature
 
Darkness's Avatar
 
Join Date: Jul 2002
Location: www.CivDuelZone.com
Posts: 5,811
Great News Moonsinger (and Dianthus)
__________________
Thus, from the war of nature, from famine and death, the most exalted object which we are capable of conceiving, namely, the production of the higher animals, directly follows.
Charles Darwin - The Origin of Species
PBEM and Pitboss spoilers at www.civduelzone.com/Darkness' House of Horrors
Darkness is offline   Reply With Quote
Old Jan 20, 2004, 03:37 AM   #7
superslug
Still hatin' on Khan
 
superslug's Avatar
 
Join Date: Jan 2003
Location: The Farm
Posts: 10,772
Well, I downloaded it and tried to launch it:
Attached Thumbnails
Click image for larger version

Name:	error.jpg
Views:	8611
Size:	52.8 KB
ID:	47380  
__________________
Kamikaze Watermelons Pwn
superslug is offline   Reply With Quote
Old Jan 20, 2004, 08:38 AM   #8
Moonsinger
Settler
 
Moonsinger's Avatar
 
Join Date: Apr 2002
Location: Iowa
Posts: 4,372
Quote:
Originally posted by superslug
Well, I downloaded it and tried to launch it:
//Edit: I was wrong about it! That file dependancy is coming from my EXE. Sorry, Dianthus! Here is the new one standalone that doesn't require any "qtintf70.dll" (Delphi CLX runtime library which I don't need!):

http://www.civfanatics.net/uploads6/mapfinder2.zip
__________________
The future is all around us, waiting in moments of transition to be born in moments of revelation. No one knows the shape of that future or where it will take us. We know only that it is always born in pain. -- G'Kar

My Favorite Game

Last edited by Moonsinger; Jan 20, 2004 at 10:03 AM.
Moonsinger is offline   Reply With Quote
Old Jan 20, 2004, 10:51 AM   #9
Aeson
orangesoda
 
Aeson's Avatar
 
Join Date: Nov 2001
Posts: 2,304
Have you thought about modifying this to work with random multiplayer maps? I'm sure a lot of people would be interested in having a utility which will quickly tell them if all starting positions are within a certain range.
__________________
"tout comprendre, c'est tout pardonner."
Aeson is offline   Reply With Quote
Old Jan 20, 2004, 11:46 AM   #10
Moonsinger
Settler
 
Moonsinger's Avatar
 
Join Date: Apr 2002
Location: Iowa
Posts: 4,372
Quote:
Originally posted by Aeson
Have you thought about modifying this to work with random multiplayer maps? I'm sure a lot of people would be interested in having a utility which will quickly tell them if all starting positions are within a certain range.
Well, that 's really up to Dianthus. I don't have a Borland C++ Builder 5 or 6 compiler and I'm not good with C++ either (I haven't done much C++ since my college day). Sure, I can read C++ code very well, but other than that I can't really do anything else with it. Therefore, it's really up to you guys to recruit Dianthus on whatever new adventure/utility for the multiplayers.

PS: I also just found a really good map last night (after about 1000 iterations). Domination limit of over 4552 next to cow and river (deity level); when I have time, will see if I can break 60K.
__________________
The future is all around us, waiting in moments of transition to be born in moments of revelation. No one knows the shape of that future or where it will take us. We know only that it is always born in pain. -- G'Kar

My Favorite Game
Moonsinger is offline   Reply With Quote
Old Jan 20, 2004, 11:58 AM   #11
Dianthus
Small but hardy
 
Dianthus's Avatar
 
Join Date: Mar 2003
Location: Woking, UK
Posts: 5,810
Quote:
Originally posted by Moonsinger
Therefore, it's really up to you guys to recruit Dianthus on whatever new adventure/utility for the multiplayers.
So, does that mean you're happy to do the GUI if I do the sav stuff in C++? I haven't done much with multiplayer .savs, apart from reading one test one when getting CRpViewer to work with . Aeson, what sort of criteria are you thinking of? Are you saying you want to know how close the human player start positions are?
Dianthus is offline   Reply With Quote
Old Jan 20, 2004, 12:32 PM   #12
Moonsinger
Settler
 
Moonsinger's Avatar
 
Join Date: Apr 2002
Location: Iowa
Posts: 4,372
Ok, I will do the GUI if you can do the core. However, if we are going to continue this partnership, I think I need to get a C++ Builder compiler soon. Why interfacing with the DLL when I should be leaning how interface with its core directly?
__________________
The future is all around us, waiting in moments of transition to be born in moments of revelation. No one knows the shape of that future or where it will take us. We know only that it is always born in pain. -- G'Kar

My Favorite Game
Moonsinger is offline   Reply With Quote
Old Jan 20, 2004, 02:47 PM   #13
Aeson
orangesoda
 
Aeson's Avatar
 
Join Date: Nov 2001
Posts: 2,304
Quote:
Aeson, what sort of criteria are you thinking of? Are you saying you want to know how close the human player start positions are?
A few times groups of players have come to me to make sure their starting positions in a PBEM are balanced (within reason). I was thinking about a utility that looks at each start location and either gives a thumbs up or rejects the map without disclosing any information about the starts. It seems like you're pretty close to that with this.

Make the parameters configurable. A range of 'good' tiles within a certain radius. So a group starting a PBEM could just generate a map, run the utility, and see if each player has at least 5 useable tiles within a radius of 3... or whatever. That would allow them to filter out maps where one or more starting locations aren't viable.
__________________
"tout comprendre, c'est tout pardonner."
Aeson is offline   Reply With Quote
Old Jan 20, 2004, 03:13 PM   #14
Moonsinger
Settler
 
Moonsinger's Avatar
 
Join Date: Apr 2002
Location: Iowa
Posts: 4,372
Quote:
Originally posted by Aeson
A few times groups of players have come to me to make sure their starting positions in a PBEM are balanced (within reason). I was thinking about a utility that looks at each start location and either gives a thumbs up or rejects the map without disclosing any information about the starts. It seems like you're pretty close to that with this.

Make the parameters configurable. A range of 'good' tiles within a certain radius. So a group starting a PBEM could just generate a map, run the utility, and see if each player has at least 5 useable tiles within a radius of 3... or whatever. That would allow them to filter out maps where one or more starting locations aren't viable.
Actually, I think he's already there! I have seen his source code for the CivReplay program - very well written! Basically, he had created an object that read almost very single detail about the savegame into memory. Now, the sky is really the limit for the rest. Just write another function to calculate the total of food, shield, and resource within n tile radius for each starting position - me think it will be a piece of cake for Dianthus. I'm sure he can make sure that each PBEM player has almost the same amount of food, shield bonus, and resource within n tiles from their starting position without much of a problem!

Time like this, I wish I have half of his talent. Seriously, sometimes I really wish I have more brain.
__________________
The future is all around us, waiting in moments of transition to be born in moments of revelation. No one knows the shape of that future or where it will take us. We know only that it is always born in pain. -- G'Kar

My Favorite Game
Moonsinger is offline   Reply With Quote
Old Jan 20, 2004, 03:21 PM   #15
Dianthus
Small but hardy
 
Dianthus's Avatar
 
Join Date: Mar 2003
Location: Woking, UK
Posts: 5,810
Quote:
Originally posted by Moonsinger
Time like this, I wish I have half of his talent. Seriously, sometimes I really wish I have more brain.
. I think you're being a bit hard on yourself though. After all, you've done a good job on the GUI. Oh, and I've seen you play Civ .

Quote:
Originally posted by Aeson
A range of 'good' tiles within a certain radius. So a group starting a PBEM could just generate a map, run the utility, and see if each player has at least 5 useable tiles within a radius of 3... or whatever. That would allow them to filter out maps where one or more starting locations aren't viable.
I'm just writing some functions right now that will give total food/shields/gold for the start tile and surrounding 8. I should think that would be a good enough comparison for the start location.
Dianthus is offline   Reply With Quote
Old Jan 20, 2004, 03:47 PM   #16
superslug
Still hatin' on Khan
 
superslug's Avatar
 
Join Date: Jan 2003
Location: The Farm
Posts: 10,772
I just downloaded this again and ran it for a few minutes for maps with a domination limit of 3500 (I wanted to see how it worked without waiting an hour ). All I can say is that this program rocks!

Moonsinger and Dianthus, the two of you have created something that's going to save me hundreds of hours "between" games generating maps. I'd have been ecstatic just to have .savs generated at a certain domination limit, but to have included accompanying screenshots? Goodness gracious...



By the way, thank you!
__________________
Kamikaze Watermelons Pwn
superslug is offline   Reply With Quote
Old Jan 20, 2004, 03:49 PM   #17
Moonsinger
Settler
 
Moonsinger's Avatar
 
Join Date: Apr 2002
Location: Iowa
Posts: 4,372
Quote:
Originally posted by Dianthus
I'm just writing some functions right now that will give total food/shields/gold for the start tile and surrounding 8. I should think that would be a good enough comparison for the start location.
Instead of just calculating the total of food/shields/gold for the starting 8 tiles radius, I think you can just add another arguement to that function and have it recursively calculate the total of food/shields/gold for the Nth ring from the starting location - a lot like your RCP ring function. Of course, for this MapFinder utility, I would simply pass it the radius of 1. Basically, you are giving birth to an API for Civ3!
__________________
The future is all around us, waiting in moments of transition to be born in moments of revelation. No one knows the shape of that future or where it will take us. We know only that it is always born in pain. -- G'Kar

My Favorite Game
Moonsinger is offline   Reply With Quote
Old Jan 20, 2004, 03:55 PM   #18
Moonsinger
Settler
 
Moonsinger's Avatar
 
Join Date: Apr 2002
Location: Iowa
Posts: 4,372
Quote:
Originally posted by superslug
I just downloaded this again and ran it for a few minutes for maps with a domination limit of 3500 (I wanted to see how it worked without waiting an hour ). All I can say is that this program rocks!
Hehe, wait until you see the final version.
__________________
The future is all around us, waiting in moments of transition to be born in moments of revelation. No one knows the shape of that future or where it will take us. We know only that it is always born in pain. -- G'Kar

My Favorite Game
Moonsinger is offline   Reply With Quote
Old Jan 20, 2004, 05:36 PM   #19
boogaboo
Josef Popper 4ever
 
boogaboo's Avatar
 
Join Date: Oct 2003
Location: Holon, Israel
Posts: 1,551
Wow.. API for Civ3 for Windows for PC for me!
Can.. can u give me the code??
I'd love to learn it and advise!

Regards,
Chaim.
boogaboo is offline   Reply With Quote
Old Jan 20, 2004, 06:25 PM   #20
SirPleb
Shaken, not stirred.
 
SirPleb's Avatar
 
Join Date: Jan 2002
Location: Qualicum Beach BC Canada
Posts: 1,404
Thumbs up

Wowee! [dance] Thank you so much Moonsinger and Dianthus!

This is an inspired utility, makes me want to start a new HOF game
SirPleb is offline   Reply With Quote
Reply

Bookmarks

Go Back Civilization Fanatics' Forums > CIVILIZATION III > Civ3 - Creation & Customization > Utility Programs > HoF Map Finder/Generator Utility

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
HOF Map Finder morpheus11 Civ4 - Hall of Fame Discussion 18 Sep 09, 2009 11:25 PM
Map finder/generator Tukker Civ4 - Creation & Customization 1 May 23, 2008 04:53 PM
Civ4 Map Finder Utility with BTS support ready! Denniz Civ4 - Hall of Fame Discussion 0 Aug 04, 2007 03:19 PM
map finder utility A_Turkish_Guy Civ3 - Hall of Fame Discussion 15 Feb 29, 2004 10:16 AM
Utility Request: Tech Tree Generator computerdude113 Civ3 - Creation & Customization 1 Feb 11, 2003 08:42 AM



All times are GMT -6. The time now is 01:36 AM.


Powered by vBulletin®
Copyright ©2000 - 2009, Jelsoft Enterprises Ltd.
This site is copyright © 2000 - 2009, Civilization Fanatics' Center.
Support CFC: Amazon.com | EB Games | Amazon UK | Amazon DE | Amazon CA | Amazon FR