Changes in what a 2.6 rule set can do
Re: Changes in what a 2.6 rule set can do
You can now forbid Enter Marketplace when Establish Trade Route is legal. See patch #6091
You can now forbid a unit from entering the marketplace (without establishing a trade route) when the same unit legally can establish a trade route. This is done by setting the new option force_trade_route in game.ruleset's actions section to TRUE.
Setting force_trade_route to TRUE has consequences for a player considering if he should allow a foreign unit that can establish a trade route (but also enter a marketplace) inside his borders. The owner of the foreign unit won't have the ability to just take the one time bonus without giving a trade route. On the one hand the probability of getting a trade route from allowing the foreign unit is increased. One the other hand the probability of having an existing trade route replaced is increased.
You can now forbid a unit from entering the marketplace (without establishing a trade route) when the same unit legally can establish a trade route. This is done by setting the new option force_trade_route in game.ruleset's actions section to TRUE.
Setting force_trade_route to TRUE has consequences for a player considering if he should allow a foreign unit that can establish a trade route (but also enter a marketplace) inside his borders. The owner of the foreign unit won't have the ability to just take the one time bonus without giving a trade route. On the one hand the probability of getting a trade route from allowing the foreign unit is increased. One the other hand the probability of having an existing trade route replaced is increased.
Re: Changes in what a 2.6 rule set can do
An action enabler's target requirements are now forbidden from containing local DiplRel requirements. See patch #6262
A local DiplRel requirement can always be expressed as an actor requirement. Only having to care about local DiplRel requirements in the actor requirements allows the Freeciv code responsible for reasoning about action enablers to be simpler and faster. It already assumed that any local DiplRel requirements lived in the actor requirement vector.
If player A having a diplomatic relationship to player B implies that player B has the same relationship to player A the relationship is symmetric. Examples: "Is foreign" and "War". Symmetric local DiplReal requirements can be moved directly from the target requirement vector to the actor requirement vector. Asymmetric local DiplReal requirements must test for the same thing in the opposite direction. Example: "Hosts embassy" becomes "Has embassy".
A local DiplRel requirement can always be expressed as an actor requirement. Only having to care about local DiplRel requirements in the actor requirements allows the Freeciv code responsible for reasoning about action enablers to be simpler and faster. It already assumed that any local DiplRel requirements lived in the actor requirement vector.
If player A having a diplomatic relationship to player B implies that player B has the same relationship to player A the relationship is symmetric. Examples: "Is foreign" and "War". Symmetric local DiplReal requirements can be moved directly from the target requirement vector to the actor requirement vector. Asymmetric local DiplReal requirements must test for the same thing in the opposite direction. Example: "Hosts embassy" becomes "Has embassy".
Re: Changes in what a 2.6 rule set can do
Recently some improvements to the facilities to provide help/documentation about the ruleset to the user have been made.
Added 'quiet' property for requirements that prevents automatically generated help to be shown about the. This can be used when one wants to provide better manually designed explanation patch #4723
Lifted restriction on ruleset description length: patch #3349
Ruleset can define the user visible text about building bases of class "gui_fortress" or "gui_airbase": patch #2721
Helptext can be provided to describe entire unit class: patch #5834
Added 'quiet' property for requirements that prevents automatically generated help to be shown about the. This can be used when one wants to provide better manually designed explanation patch #4723
Lifted restriction on ruleset description length: patch #3349
Ruleset can define the user visible text about building bases of class "gui_fortress" or "gui_airbase": patch #2721
Helptext can be provided to describe entire unit class: patch #5834
Re: Changes in what a 2.6 rule set can do
Requirement type Topology has been added: patch #6193
This can be used to adjust rules to the topology of the map, typically as a requirement to some "_distance_sq" effect to make its value sensible on both square and hex based topologies.
This can be used to adjust rules to the topology of the map, typically as a requirement to some "_distance_sq" effect to make its value sensible on both square and hex based topologies.
Re: Changes in what a 2.6 rule set can do
Lua give_technology() can control what kind of penalty gets applied: bug #22160
Technology given by lua script is no longer necessarily considered gained "free", but can be considered "conquer", "free", "diplomatic", none, or even completely custom way of getting a tech (at least what comes to research penalties applied)
Technology given by lua script is no longer necessarily considered gained "free", but can be considered "conquer", "free", "diplomatic", none, or even completely custom way of getting a tech (at least what comes to research penalties applied)
Re: Changes in what a 2.6 rule set can do
Some of the remaining 2.6 targeted features implemented.
Extras can be divided to two distinct "defense layers" bug #23143
Defense bonus on additive within layer (as with the single-layer method used so far) but multiplicative between layers. In the supplied rulesets this is used in civ/2 rulesets to restore the multiplicative nature of River and Fortress defense bonuses (lack of which was regression in 2.5 relative to 2.4)
Lua signal 'pulse' added patch #6286.
This is a signal you can always expect to be coming 'soon' but not regularly. This can be used if you don't want to do something in the handling of current signal, but soon anyway.
Extras can be divided to two distinct "defense layers" bug #23143
Defense bonus on additive within layer (as with the single-layer method used so far) but multiplicative between layers. In the supplied rulesets this is used in civ/2 rulesets to restore the multiplicative nature of River and Fortress defense bonuses (lack of which was regression in 2.5 relative to 2.4)
Lua signal 'pulse' added patch #6286.
This is a signal you can always expect to be coming 'soon' but not regularly. This can be used if you don't want to do something in the handling of current signal, but soon anyway.
Re: Changes in what a 2.6 rule set can do
Maps with single pole are no longer tied to the topology, but new server setting singlepole controls that: bug #23261
Code: Select all
> explain singlepole
Option: singlepole - Whether there's just one pole generated
Description:
If this setting is enabled, only one side of the map will have pole.
This setting has no effect if the map wraps both directions.
Status: changeable
Value: disabled, Default: disabled
- GriffonSpade
- Elite
- Posts: 578
- Joined: Mon Apr 29, 2013 4:41 pm
Re: Changes in what a 2.6 rule set can do
I assume the pole appears in a random unwrapped direction?cazfi wrote:Maps with single pole are no longer tied to the topology, but new server setting singlepole controls that: bug #23261
After that, I think one of the main things we are lacking is randomization in the game: to be able to tell the server to pick a random setting to (list of values) or randbetween setting to (between two numerical values), and then to be able to tell the server to hide this information from us.
Something like /<Randomization Style> <Setting to randomize> <List of possible values>
Re: Changes in what a 2.6 rule set can do
Further improvements related to that:cazfi wrote:Lifted restriction on ruleset description length: patch #3349
Support for separate "summary" has been added. patch #6290
Summary does have a limited length.
Value for a string can be read from a file. patch #6336
While this is general change to secfile format, the most obvious use for it so getting value for the ruleset description from a separate README.
Code: Select all
summary = "One very cool ruleset"
description = *my_ruleset/README.txt*
Re: Changes in what a 2.6 rule set can do
Added roles for every startunit type, and these roles are used only used for the purpose of matching unit types to startunit types: patch #4625
Allow empty "startunits" when "startcity" is enabled: patch #5887 - Makes possible rules where player starts with a city only, without any units.
Allow empty "startunits" when "startcity" is enabled: patch #5887 - Makes possible rules where player starts with a city only, without any units.