Reply
 
Thread Tools
Old January 3, 2004, 11:25   #1
DrAlimentado
Settler
 
Local Time: 15:31
Local Date: November 2, 2010
Join Date: Apr 2003
Posts: 9
MapTweaker Utility (beta) - Copy/Paste/Resize Bix Files!
[Edit 18/01/04: version 0.9b released]

This is an early beta of my MapTweaking Utility. It currently does copy/paste (within a map or between maps), map resizing, map 'nudging', and has an analyser tool (plus tile properties dialog etc.)

It's pretty rough round the edges at the moment, it only works with uncompressed bic/bix/biq files and it dosen't update resource or continent counts when you copy and paste (you have to reload the bix in civ3XEdit to get this.) However, it provides some much missed functionality from the editor so with a little care you may get some use from it

Here's the MapTweaker.exe:
[New version 0.9beta added 18/01/04]
MapTweaker0.9b.exe


Here is a DLL this version uses to get at the pcx files:

FreeImage.DLL


And if you don't have them already you will need the 1.1b .NET runtimes I'm afraid, get them from micro$oft here:

.NET runtimes


Here's the readme:

===========================================



Overview:
-------------------
This is a 'very beta' release of my MapMaking tool. It is a MDI (multiple document interface) application that can load and display uncompressed bic/bix/biq files, perform various operations and save the changed data to a bic/bix/biq again. As it dosen't actually do real 'map-making' yet this beta version is more appropriately called MapTweaker.

Current features are copy and paste functionality, map resizing and nudging, resizeable minimap, painting terrain/resources, and analysis stats dialog.


What you need to run MapTweaker:
--------------------------------------------------------
This utility was made with .NET and as such requires the .NET 1.1 runtime. You can download it from microsoft at this url: http://www.microsoft.com/downloads/d...displaylang=en

In order to read pcx files (only used for resources.pcx in this current form) I have used a dll called FreeImage.dll, it is a 'free source' dll released under a GNU General Public Licence. The documentation for this can be found in it's zip. It needs to be placed in the same directory as the MapMaker.exe. At some point I will eliminate the need for a 600k dll by writing a couple of k of code to do the pcx reading manually... call me lazy for the moment. [Dianthus from CFC has kindly given me his C++ source for reading pcx files, I have a crack team converting it to vb.net... watch this space!]



Installation:
---------------------
Just unzip the MapMaker.exe and FreeImage.dll into your main Civilisation III folder. You can optionally unzip them into another folder anywhere you like and the first time you run the app you will be prompted to manually set the location of the Civilisation III folder.
MapMaker makes no registry entries on your computer and can be uninstalled by simply deleting the exe.



Limitations and workarounds:
-----------------------------------------------
The Map gfx are just a simple representation of the actual tiles, this keeps the loading and displaying of gfx fast. I may yet add an in-game gfx window that will display the map as it would be seen in civ3 when I get the directx sdk going... but I have a ton of other features I want to add first!

The utility in it's current state does little to nothing with the image data in each tile. This means that when you perform operations that move tiles around the map the edges of the changed areas will appear pretty screwy when you load the bix in civ3edit - however the underlying data is correct. To get the correct image data again reload the changed bix into civ3XEdit and paint (change) a tile where it is screwed up and civ3edit will readjust the image(s) appropriately. Eventually I'll get round to figuring out the patterns for this too.
It is important to reload a changed bix into civ3XEdit to allow it to readjust the resource and continent counts also.

You should only use basic maps with this version of MapTweaker - if you have cities or units placed on the map and change the tiles they are sitting on it will cause unpredictable behaviour. You can export and import the basic map data from civ3XEdit for this purpose.

The Selection Tool is a little clumsy around the edges of a selection, you can however modify the selection (or just toggle individual tiles to be selected) by holding down CTRL and clicking.

Note that for the moment MapTweaker can only load uncompressed bix files - To save an uncompressed bix file in civ3XEdit goto View-Options and uncheck the 'Compress BIC File' box. I'll add decompression functionality soon enough

Due to the way in which pcx files are currently read non-standard transparent colours will display incorrectly. This means that mods that use pcx files with transparent colours which are different from the colours in the standard pcx files will have problems displaying resources correctly. This will be fixed when I actually write some code to read the pcx files. Custom graphics that use the same transparent colours as the equivalent PTW file should load and display with no problems.

The continent data is not yet updated in anyway by MapMaker. As long as you load the changed bix into civ3XEdit all will be well but it means that the analysis tool will attribute resources to the wrong continents after moving tiles around the map. This will be fixed in a future version.



Known bugs:
----------------------
Start Locs added in maptweaker (by copying a tile with a start loc) may crash the bix (drat!), a workaround is to remove the start loc in civ3XEdit before loading the bix in MapTweaker or after using MapTweaker in civ3XEdit remove it in tile properties, using the r-click -> Delete -> Start Loc will crash it though. I think I know what is causing this, a fix shouldn't be too hard. [still not fixed... for the moment I advise working on maps with no start positions, or at least not copying or placing start locs in maptweaker.]


Bug Reports:
-----------------------
This is an early beta version and there are no doubt plenty of bugs I haven't caught yet! Every time the application runs it creates a debugLog.txt file, if you would like to make a bug report try and recreate the bug (with debug logging set to verbose preferably) then send a description of the error plus the debugLog.txt file and bix file generated during that operation to this email address:

MapTweakDebug@craven-griffiths.net.


You are welcome to send questions comments or ideas to this email address:

MapMaker@craven-griffiths.net


Alternatively just post your bugs and/or comments in the forum thread where you got this from




credits:
-------------
Gramphos and others for the incredibly helpful file format threads at Poly. No file format threads = no MapTweaker, nuff said.
ideas, encouragement (ie. listening to me ranting), alpha testing and web space: All the Civ3DuelZone.com MapMaking staff and Admins (and special mention to Melifluous for some early code )
Dianthus for providing his source code for pcx reading.
All who give feedback and bug reports in the various forums.





Version History
-------------------------

changes from 0.8b to 0.9b

Features and functionality:
- added C3C (BIQ) support. [Added new terrain types, note: Marsh and Volcano will be visible but unpickable in the brush picker when using non-C3C maps, if pasted from a C3C map into a non-C3C map they will revert to: marsh-> grassland ; volc-> mountains.]
- added change tile bonuses functionality to Tile properties dialog, changed the layout and interface of dialog.
- added selection tools and new menu; analyse selection, deselect tiles of type/terrain, select all/none
- made resources gfx slighlty oversized on map to enhance visibility, added resource gfx toggle in Options-Map gfx

Bug Fixes:
- fixed the reset code in the Resize and Nudge Dialogs so that they reset properly after applying the tool - should fix fatal errors after using the 'apply' button :O
- fixed error with pasting tiles containing modded resources into non-modded map - If you paste tiles with resources that don't exist in the target map (the resourceID number is > max No.of resources) the resource will now be deleted.
- fixed minimap scrolling 'sticking' with very small maps

Misc:
- added BIC Mode indicator in map properties dialog. Useful because C3C editor can save files with .bic/.bix extensions - but actually saves them in BIQ file format! MapTweaker will detect that these files are actually BIQ files and save them as such. Added a pop-up to notify user when such a map is loaded too.
- improved the paint terrain and paint resource functions to better detect whether they should paint or not.
- overhauled the InfoPanel code, messages outputted to user should be more meaningful... (removed some useless messages, added some useful ones, increased the default no of retained messages to 50, added a max no of messages and purge messages options to Options-General)



=============================================




Ideas, bug reports, questions, All feedback is welcome

Last edited by DrAlimentado; January 18, 2004 at 12:07.
DrAlimentado is offline   Reply With Quote
Old January 4, 2004, 09:45   #2
embryodead
Settler
 
Local Time: 15:31
Local Date: November 2, 2010
Join Date: Jul 2003
Posts: 15
Oh man I waited ages for such utility! Since I work only on BIQ's now, I can't really use it yet, though I'll download and just see how it works. Thanks!
embryodead is offline   Reply With Quote
Old January 4, 2004, 14:03   #3
DrAlimentado
Settler
 
Local Time: 15:31
Local Date: November 2, 2010
Join Date: Apr 2003
Posts: 9
BIQ support will be done pretty soon, I've got some logic to add to the read/write bits mainly. I've given a tentative ETA of approx 2 weeks, it's not loads of work but realistically I probably won't get it done before then

In the meantime if your biq file dosen't use any of the new c3c terrain/rules (resources are ok though) I think you can save it as a bix and use it like that. That isn't hugely different from starting with just a bix of course!

And thanks Gramphos (? I think) for moving this to the files section so quickly
DrAlimentado is offline   Reply With Quote
Old January 13, 2004, 21:48   #4
smellymummy
King
 
Local Time: 07:31
Local Date: November 2, 2010
Join Date: Aug 1999
Posts: 2,079
this is a really cool utility! the minimap is awesome, and the tools in there work! the map stats graph is neat too. what other features are going to be added?

i ran into some bugs though. when i first used the maptweaker, using the 'apply' button in the resize/nudge would bring up a debug warning box and do nothing. this error stopped though when i ran the program again a few times

then there were also some bic version issues. to use some old bics I had to resave these in the editor, which I assume then sets the bic version correctly so it reads okay with maptweaker.

btw, even without C3C support, anyone can just save it as a bic, and then import that with the c3c editor for biq. You'll probably end up in the C3C editor anyway for adding conquest specific stuff.

check out these screenshots I took of the mini map on my first test with this app, where I wanted to crop out a specific part of Marla's world map, which until now I wouldnt of been able to do with such precision

this is the world map first loaded



i then nudge the map to center in the pacific (nudging doesnt seem to be necessary, although it helped me with the cropping)



then i just crop out what i don't want by resizing the map



cropped the relevant areas of the 256x204 map to a 176x144 map. really simple to use

i could zoom into just north america or europe, or whatever area.

for future features how about a gif/bmp to bic import? so people could basically use geographical maps, where terrain is codded by color, and the utility would be able to generate the map automatically.

there used to be an app floating around that did just that. it would take a bmp, where if there was a brown pixel, that pixel would represent a mountain tile. a green pixel would be a grassland tile, etc. it really comes in handy to generate quick coastlines and general geography for making custom maps.

i'll be looking forward to see what else maptweaker can do
smellymummy is offline   Reply With Quote
Old January 14, 2004, 17:48   #5
Skyfish
Settler
 
Local Time: 15:31
Local Date: November 2, 2010
Join Date: Aug 2003
Posts: 16
Skyfish is offline   Reply With Quote
Old January 14, 2004, 17:49   #6
Skyfish
Settler
 
Local Time: 15:31
Local Date: November 2, 2010
Join Date: Aug 2003
Posts: 16
This utility is just awesome !
So much can be done, its not even been realized yet how much is possible (even by the creator himself)
I encourage everyone to dl and try it
Skyfish is offline   Reply With Quote
Old January 14, 2004, 19:58   #7
DrAlimentado
Settler
 
Local Time: 15:31
Local Date: November 2, 2010
Join Date: Apr 2003
Posts: 9
Thx for the feedback smellymummy

I think I found what was causing the bug/crash in the Resize dialog, if so then it's fixed.
C3C support will hopefully fix any BIC version issues as I have had to rethink how I do file detection.

Interesting ideas about creating maps from images, I'll think on it... that might well get added to the list.

Skyfish - thx for the kind words

New version should be released this weekend.
DrAlimentado is offline   Reply With Quote
Old January 18, 2004, 12:09   #8
DrAlimentado
Settler
 
Local Time: 15:31
Local Date: November 2, 2010
Join Date: Apr 2003
Posts: 9
Posted new version 0.9beta in the first post.


Main change is C3C support, here's the full list:



changes from 0.8b to 0.9b

Features and functionality:
- added C3C (BIQ) support. [Added new terrain types, note: Marsh and Volcano will be visible but unpickable in the brush picker when using non-C3C maps, if pasted from a C3C map into a non-C3C map they will revert to: marsh-> grassland ; volc-> mountains.]
- added change tile bonuses functionality to Tile properties dialog, changed the layout and interface of dialog.
- added selection tools and new menu; analyse selection, deselect tiles of type/terrain, select all/none
- made resources gfx slighlty oversized on map to enhance visibility, added resource gfx toggle in Options-Map gfx

Bug Fixes:
- fixed the reset code in the Resize and Nudge Dialogs so that they reset properly after applying the tool - should fix fatal errors after using the 'apply' button :O
- fixed error with pasting tiles containing modded resources into non-modded map - If you paste tiles with resources that don't exist in the target map (the resourceID number is > max No.of resources) the resource will now be deleted.
- fixed minimap scrolling 'sticking' with very small maps

Misc:
- added BIC Mode indicator in map properties dialog. Useful because C3C editor can save files with .bic/.bix extensions - but actually saves them in BIQ file format! MapTweaker will detect that these files are actually BIQ files and save them as such. Added a pop-up to notify user when such a map is loaded too.
- improved the paint terrain and paint resource functions to better detect whether they should paint or not.
- overhauled the InfoPanel code, messages outputted to user should be more meaningful... (removed some useless messages, added some useful ones, increased the default no of retained messages to 50, added a max no of messages and purge messages options to Options-General)
DrAlimentado is offline   Reply With Quote
Old January 18, 2004, 14:44   #9
DrAlimentado
Settler
 
Local Time: 15:31
Local Date: November 2, 2010
Join Date: Apr 2003
Posts: 9
Here's a very provisional list of what gets added next in some sort of rough order.


things todo next list:

update the start loc data in the bix
update resources and continent counts
implement changing BIC mode (for non-modded maps only), this will allow maps to be downgraded (or upgraded) between .bic .bix and .biq files.

flip selection, rotate selection.
stretch/shrink maps

compressed files support
inline pcx reading (removing the need for the DLL)

new map function (mainly for pasting a section as a new map)
cut functionality

clone brush, replace brush

improve the minimap refresh method to only redraw the changed area (currently it redraws the entire map, hence the slow speed on large maps)




slightly longer term:

overlay information and gfx (mines/roads etc.)

fancy map generation - with a ton of parameters!
inc. heat/humidity maps for generating into

unit and city support (?)
generate map from image (?)
multiple object clipboard (?)



Suggestions as always are welcome
DrAlimentado is offline   Reply With Quote
Reply

Bookmarks

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 On

Forum Jump


All times are GMT -4. The time now is 11:31.


Design by Vjacheslav Trushkin, color scheme by ColorizeIt!.
Powered by vBulletin® Version 3.8.2
Copyright ©2000 - 2010, Jelsoft Enterprises Ltd.
Apolyton Civilization Site | Copyright © The Apolyton Team