Ruledit development news
Posted: Wed May 10, 2017 9:21 pm
Freeciv-ruledit is a utility to first appear in freeciv-2.6. In that version it's more like a teaser of the future utility, that is going to get better and better over coming versions. Here is what is already implemented in each freeciv development branch
Freeciv-2.6
For the freeciv-ruledit development, main task has been writing the code that can save a ruleset from memory to a set of ruleset files. This alone does not provide anything that end-user can observe, but is needed for any kind of working ruleset editor.
One thing user can use freeciv-ruledit for is checking some statistics of a ruleset. Ruledit displays how many techs, units, buildings, extras, etc a ruleset has.
In the actual editing side one can arrange order of techs in a tech tree and rename units, buildings, and techs.
Freeciv-3.0
For a user to be able to continue editing ruleset that was started with freeciv-2.6 ruledit, ruleset loading code has been made able to load not only freeciv-3.0 rulesets but also rulesets of previous version (in this case; freeciv-2.6 rulesets). As a spinoff from this work separate simple commandline utility freeciv-ruleup for updating rulesets from freeciv-2.6 format to freeciv-3.0 format has been created.
Saving the ruleset has been extended so that it does not save just the rules as they are in the memory, but also writes some standard comments to the ruleset being saved. Any non-standard comments, and the formatting of the ruleset, are still lost when ruleset is loaded to the memory and then resaved.
Tabs have been added for the object types Good, Government, Extra, and Terrain. All of them can be renamed just like it was possible in 2.6 version to rename those object types that were presented. Also Action Enabler object type exist also in S3_0 branch at the moment, but I'm not sure if it will fit the concept of freeciv-3.0 ruledit or will it be removed from that version to make debut in later version.
Requirements of the object types for which they are applicable can be edited. This includes adding and deleting requirements.
Freeciv-3.1
I'm currently working on effects editing support. Combined with the requirement editing (already in freeciv-3.0 version) this gives powerful access to most complex constructs in our ruleset format. From the building editing one can easily go to adjust what other requirements an effect provided by the building has. For example, while you are editing City Walls, you can add "Mountains" requirement for its Defense bonus effect to make City Walls effective on mountains only.
Freeciv-2.6
For the freeciv-ruledit development, main task has been writing the code that can save a ruleset from memory to a set of ruleset files. This alone does not provide anything that end-user can observe, but is needed for any kind of working ruleset editor.
One thing user can use freeciv-ruledit for is checking some statistics of a ruleset. Ruledit displays how many techs, units, buildings, extras, etc a ruleset has.
In the actual editing side one can arrange order of techs in a tech tree and rename units, buildings, and techs.
Freeciv-3.0
For a user to be able to continue editing ruleset that was started with freeciv-2.6 ruledit, ruleset loading code has been made able to load not only freeciv-3.0 rulesets but also rulesets of previous version (in this case; freeciv-2.6 rulesets). As a spinoff from this work separate simple commandline utility freeciv-ruleup for updating rulesets from freeciv-2.6 format to freeciv-3.0 format has been created.
Saving the ruleset has been extended so that it does not save just the rules as they are in the memory, but also writes some standard comments to the ruleset being saved. Any non-standard comments, and the formatting of the ruleset, are still lost when ruleset is loaded to the memory and then resaved.
Tabs have been added for the object types Good, Government, Extra, and Terrain. All of them can be renamed just like it was possible in 2.6 version to rename those object types that were presented. Also Action Enabler object type exist also in S3_0 branch at the moment, but I'm not sure if it will fit the concept of freeciv-3.0 ruledit or will it be removed from that version to make debut in later version.
Requirements of the object types for which they are applicable can be edited. This includes adding and deleting requirements.
Freeciv-3.1
I'm currently working on effects editing support. Combined with the requirement editing (already in freeciv-3.0 version) this gives powerful access to most complex constructs in our ruleset format. From the building editing one can easily go to adjust what other requirements an effect provided by the building has. For example, while you are editing City Walls, you can add "Mountains" requirement for its Defense bonus effect to make City Walls effective on mountains only.