Ticket #46046

AI: Improve attacker danger evaluation

Eröffnet am: 2022-11-08 03:12 Letztes Update: 2022-12-22 06:29

Auswertung:
Verantwortlicher:
Status:
Geschlossen
Komponente:
Meilenstein:
Priorität:
5 - Mittel
Schweregrad:
5 - Mittel
Lösung:
Gefixt
Datei:
6

Details

Firstly, consider "Attack_bonus" effect. Then, pay a heed to action enablers, maybe they prohibit the attack. Also, don't consider harmless units that can't attack but can occupy the city.

Actually, a split from #41781 since the patch grew too big.

Ticket-Verlauf (3/20 Historien)

2022-11-08 03:12 Aktualisiert von: ihnatus
  • New Ticket "AI: Improve attacker danger evaluation" created
2022-11-08 03:16 Aktualisiert von: ihnatus
Kommentar

Added a patch, tested on master, depends on #46029.

2022-11-13 06:35 Aktualisiert von: ihnatus
Kommentar

A line not rebased slipped in, fixed. 3.1 patch coming. IDK will I do a 3.0 patch here.

2022-11-14 01:18 Aktualisiert von: ihnatus
Kommentar

Patches are ready.

2022-11-23 10:54 Aktualisiert von: cazfi
2022-11-24 09:16 Aktualisiert von: cazfi
Kommentar

"This patch includes a generic mechanism for arbitrary requirement vector evaluation (i.e., substituting is_req_active() with a custom callback)."

Could you split that to a separate patch? So that unrelated functionalities would not be tied to acceptance (schedule) of this patch. I didn't look it closely, but noticed that you have parameters with _sz -suffix in their name, but which are not of type size_t. Should they?

2022-12-05 16:23 Aktualisiert von: cazfi
Kommentar

On a tree with this applied, clang analyzer gives (at leas some of this from tri_req_active_turns() added by this patch):

../../../src/common/requirements.c:5146:9: warning: Value stored to 'present' is never read [deadcode.DeadStores]

present = req->source.value.age <= ca;
~

../../../src/common/requirements.c:5147:9: warning: Value stored to 'present1' is never read [deadcode.DeadStores]

present1 = req->source.value.age <= ca + period;

../../../src/common/requirements.c:5153:9: warning: Value stored to 'present' is never read [deadcode.DeadStores]

present = req->source.value.age
~

../../../src/common/requirements.c:5155:9: warning: Value stored to 'present1' is never read [deadcode.DeadStores]

present1 = req->source.value.age
~
2022-12-06 21:50 Aktualisiert von: cazfi
  • Verantwortlicher Update from (Keine) to ihnatus
2022-12-10 18:46 Aktualisiert von: cazfi
Kommentar

Ping.

As far as I know, this is the "root dependency" for all the other open patches from you, and I'm a bit worried that the whole stack catches bitrot (stops applying)

2022-12-13 04:43 Aktualisiert von: ihnatus
Kommentar

Reply To cazfi

Ping.

Sorry, don't have much time for now, but I'll try to sort this one out in few days.

2022-12-14 06:05 Aktualisiert von: ihnatus
Kommentar

Patch for 3.2 after split to #46266 is added, 3.1 coming soon

2022-12-16 02:02 Aktualisiert von: ihnatus
Kommentar

New 3.1 patch done.

2022-12-18 02:04 Aktualisiert von: cazfi
  • Verantwortlicher Update from ihnatus to cazfi
  • Lösung Update from Keine to Accepted
2022-12-22 06:29 Aktualisiert von: cazfi
  • Status Update from Offen to Geschlossen
  • Lösung Update from Accepted to Gefixt

Dateianhangliste

Bearbeiten

Please login to add comment to this ticket » Anmelden