In case generalized actions gets delayed to post 3.1
Posted: Fri Nov 22, 2019 2:52 pm
Actions are currently hard coded. Generalized actions moves them to the ruleset. The advantage of generalized actions is that you can have more than one action with the same result. Those variants can then have different ruleset defined properties like enablers, ui name, cost and, in the case of "Bombard", range.
I had hoped to generalize actions them self in time for 3.0. I didn't. My contingency plan in case the same happens for 3.1 is to fake generalized actions. This can be done by including hard coded actions that would be redundant with generalized actions. I'm not planning to include redundant copies of each and every action. If you feel that a specific action should get fake generalization point it out below or (better) in the ticket and explain how a fake generalization for that action would make your life easier.
Blank actions:
"User Action vs city" "User Action vs unit" "User Action vs unit stack" "User Action vs tile"
Does nothing at all in their action performers. The ruleset is responsible for everything. The ruleset can do that via Lua and Action requirements.
Duplication of existing actions:
"Bombard 2" "Bombard 3" - Copies of "Bombard". Separate bombard_max_range. Additional difference can be done via Lua and Action requirements.
I had hoped to generalize actions them self in time for 3.0. I didn't. My contingency plan in case the same happens for 3.1 is to fake generalized actions. This can be done by including hard coded actions that would be redundant with generalized actions. I'm not planning to include redundant copies of each and every action. If you feel that a specific action should get fake generalization point it out below or (better) in the ticket and explain how a fake generalization for that action would make your life easier.
Blank actions:
"User Action vs city" "User Action vs unit" "User Action vs unit stack" "User Action vs tile"
Does nothing at all in their action performers. The ruleset is responsible for everything. The ruleset can do that via Lua and Action requirements.
Duplication of existing actions:
"Bombard 2" "Bombard 3" - Copies of "Bombard". Separate bombard_max_range. Additional difference can be done via Lua and Action requirements.