Civ4Modder

As the name suggests, Civ4Modder is a modding utility for Sid Meier's Civilization IV. It can take in any mod directory, figure out the di...

Download

Uploading...
Do not refresh or leave this page!

File Description

As the name suggests, Civ4Modder is a modding utility for Sid Meier's Civilization IV. It can take in any mod directory, figure out the differences with the original files and combine multiple such differential mods.

Future plans include adding a mod editor.

CivModder is distributed under the GPL. See the file License.txt for more details.

Read More

Readme
Civ4Modder
Version 0.4 readme
Copyright © 2005-2006  Mikko Rasa


As the name suggests, Civ4Modder is a modding utility for Sid Meier's
Civilization IV.  It can take in any mod directory, figure out the differences
with the original files and combine multiple such differential mods.

Future plans include adding a mod editor.

CivModder is distributed under the GPL.  See the file License.txt for more
details.


Known problems, limitations and caveats

- Removing stuff is not supported (although whole lists can be replaced)
- Blindset element type is not yet implemented
- The program doesn't (and can't) know about game patches.  Mods created for
  old versions will have extraneous changes and are more likely to conflist
  with others.
- Conflict resolution only reports the first conflicting file
- Memory allocations are not checked.  The program is likely to crash on large
  mods if you're low on RAM.


Version history

0.1 (released 2005-11-19)

- First release

0.2 (released 2005-11-28)

- Only load the headers from mods on startup
- Add progress bar for applying and creating mods
- Report errors to user
- Add conflict checking
- Implement mod properties dialog
- Actually do something with the checkboxes in the list
- Clean up the CustomAssets directory before applying
- Bugfixes
  - Diffs (for .py files) can now be applied successfully

0.3 (released 2005-12-23)

- Add support for plain lists in XML files
- Read the ini file of the mod to determine name and description
- Add warnings for weird CustomAssets directories
- Add about dialog

0.3.1 (released 2005-12-27)

- No conflict if two mods modify the same thing in the same way
- Bugfixes
  - Various crashes in creating mods are now fixed

0.4 (released 2006-06-23)

- Revamp the XML diffing system
  - Element types moved to an external file
  - Lists are stored as whole if changed
  - Support value sets
  - Enforce sensible element types
- Add version field to mod properties
- Include a very simple text editor for editing mods
- XML changes are nicely formatted
- Allow selecting precedence when a mod conflict is detected
- Start browsing for mod from the Civ4 Mods directory

0.5 (released 2006-07-04)

- Add support for more xml files (thanks Impaler)
- No conflict for two mods adding a file with exactly same contents
- Handle containers/objects with duplicate elements correctly
- Remove the previous entry when recreating a mod
- Bugfixes
  - The conflict resolution dialog actually has some effect now
  - Don't treat CR and LF as binary when determining need for base64 encoding


Internals

In order to determine differences between XML files, the document tree is
traversed depth-first, starting from the root element.  Each element is
processed according to its category:

toplevel

   Pass through and process first child element.  Possible other elemnets are
   ignored.

container
   Contains any number of sub-elements.  Each element must either have a unique
   name or be an object with a unique key.  Modified or added sub-elements are
   stored.

object

   Much like a container, but also has a key element which is used to identify
   the object instead of element name.

list

   Contains any number of value sub-elements.  Element names are ignored.  The
   whole list is treated as one unit.

set

   Like a list, but each value is considered separately, and their order is
   ignored.  Only added values are stored.

value

   The default element type.  Contains a single value and no sub-elements.

Read More

Comments on this File

There are no comments yet. Be the first!

tdb


50 XP


Registered 16th July 2006

1 Files Uploaded

Share This File
Embed File