チケット #41813

"PlayerState" requirement

登録: 2021-03-19 23:07 最終更新: 2024-01-04 07:39

報告者:
担当者:
チケットの種類:
状況:
完了
コンポーネント:
マイルストーン:
優先度:
5 - 中
重要度:
5 - 中
解決法:
修正済み
ファイル:
2

詳細

Would be good to have a new req type for player-wide special states. Possible state names:

  • "RevoltedThisTurn" - ​some governments provide turn-end bonuses (e.g. increased trade) and another mid-turn ones (e.g. increased veteran chances). Player that has Statue of Liberty or just have finished revolen this turn can change governments for free and exploit it a lot, so let some bonuses be available only when the dust settles (note: AI democracy regulary "fails" for city mismanagement, as long as AI has handicap for it we should not test this req to it in these cases.)
  • "HasCapital" - for mandatory reqs for certain actions but might be used in other cases. BTW primary capital site worth caching.
  • "IsBarbarian" (and/or "IsLandBarbarian", "IsSeaBarbarian", "IsAnimal") - ​to replace unreliable "NationGroup", "Barbarian" req for testing if a player is a barbarian, since in Longturn people who take cool Pirates flag regulary suffer from unwanted effects.
  • "ScienceNonNegative" - ​for combining with bulbs cost of tech stealth, disable tech stealth when you have yet to sort out what you have stolen before.

edit: Also, considering civil war effect for civ1/civ2 rulesets compatibility, we should make local ranged requirement "HasMore(Less)Cities" and "HasMore(Less)Score" (that tests if the capital conqueror passed as other_player is in range), and similar local range variant for "IsBarbarian" (maybe other values also should test other_player when applied as "Local")

チケットの履歴 (16 件中 3 件表示)

2021-03-19 23:07 更新者: ihnatus
  • 新しいチケット ""PlayerState" requirement" が作成されました
2021-03-23 05:05 更新者: ihnatus
  • 詳細が更新されました
2021-03-23 05:18 更新者: cazfi
コメント

Longturn people who take cool Pirates flag regulary suffer from unwanted effects.

I think that is intentional local modification by LT to make Pirates playable while they still are barbarians.

2021-11-08 09:41 更新者: cazfi
コメント

Reply To ihnatus

Player that has Statue of Liberty or just have finished revolen this turn can change governments for free and exploit it a lot, so let some bonuses be available only when the dust settles

I think that for this the engine should enforce some rules, and not leave it to ruleset to plug every possible exploit. This could work similar to multiplier changes that can be chosen during the turn freely, but are activated only at turn change (it has two variables; one that is the really active value, and second that tells what value user wants to activate in the next turn change)
2022-01-12 02:16 更新者: cazfi
コメント

Reply To cazfi

Reply To ihnatus

Player that has Statue of Liberty or just have finished revolen this turn can change governments for free and exploit it a lot, so let some bonuses be available only when the dust settles

I think that for this the engine should enforce some rules, and not leave it to ruleset to plug every possible exploit. This could work similar to multiplier changes that can be chosen during the turn freely, but are activated only at turn change (it has two variables; one that is the really active value, and second that tells what value user wants to activate in the next turn change)

-> #43604

2022-01-12 02:17 更新者: cazfi
2022-08-27 23:25 更新者: cazfi
コメント

Somewhat overlapping (but not replacement) idea would be "PlayerFlag" requirement type. The benefit of PlayerFlag over PlayerState would be that requirement system would automatically gain access to each new flag added (no further implementation needed once we have the generic flag checking in place). Each PlayerState type would need to be implemented separately.

2023-10-01 14:07 更新者: cazfi
コメント

Reply To cazfi

Somewhat overlapping (but not replacement) idea would be "PlayerFlag" requirement type.

-> #45666

2023-10-16 13:51 更新者: cazfi
  • 担当者(未割り当て) から cazfi に更新されました
  • 解決法なし から 受領 に更新されました
コメント

Attached patch that supports just "Barbarian" state. Other states to be added in separate tickets.

2023-10-16 14:01 更新者: cazfi
コメント

New version, with README.effects changes added.

2023-10-22 18:53 更新者: cazfi
  • 状況オープン から 完了 に更新されました
  • 解決法受領 から 修正済み に更新されました
2023-10-22 19:03 更新者: cazfi
コメント

"HasCapital" -> #48886
"PlayerState" "Barbarian" ruleset changes -> #48887

2023-12-29 06:57 更新者: cazfi
コメント

Reply To ihnatus

* "ScienceNonNegative" - ​for combining with bulbs cost of tech stealth, disable tech stealth when you have yet to sort out what you have stolen before.

Maybe separate "MinAccumulatedBulbs" requirement type would be more generally usable?

2024-01-04 07:39 更新者: cazfi
コメント

Reply To cazfi

Reply To ihnatus

* "ScienceNonNegative" - ​for combining with bulbs cost of tech stealth, disable tech stealth when you have yet to sort out what you have stolen before.

Maybe separate "MinAccumulatedBulbs" requirement type would be more generally usable?

-> https://redmine.freeciv.org/issues/122

編集

このチケットにコメントを追加するには、ログインが必要です » ログインする