View Issue Details

IDProjectCategoryView StatusLast Update
0002978EresseaMACHEpublic2025-01-17 05:46
ReporterSolthar Assigned ToEnno  
PrioritynormalSeverityminorReproducibilityhave not tried
Status closedResolutionfixed 
Product Version28.4 
Fixed in Version28.4 
Summary0002978: VERKAUFE funktioniert nach MACHE Burg
Description

Bin beim Experimentieren auf ein merkwürdiges Szenario gestoßen. Eine Einheit baut eine Burg und darf im gleichen Zug noch Juwelen verkaufen, obwohl es eine Fehlermeldung gibt: 'VERKAUFE ALLES Juwel' - Die Einheit kann keine weiteren langen Befehle ausführen. Die Reihenfolge der Befehle ist dabei auch irgendwie wichtig.

Getestet auf develop 9950071e5d7.

Steps To Reproduce
function test_make_castle_sell()
    local r = region.create(0, 0, 'plain')
    r.peasants = 10000
    r.luxury = 'balm'
    local f = faction.create('human')
    local u = unit.create(f, r, 1)
    u:add_item("jewel", 1)
    assert_equal(1, u:get_item("jewel"))
    u:add_item("stone", 2)
    u:add_order("MACHE 2 Burg")
    u:add_order("VERKAUFE ALLES Juwel")
    u:set_skill("trade", 10)
    u:set_skill("building", 10)
    process_orders()
    write_report(f)
    assert_equal(1, u:get_item("jewel"))
end
TagsNo tags attached.
Faction1wpy
GameE2
Report1000

Activities

Enno

Enno

2023-09-14 18:31

administrator   ~0010037

Da fehlt ein check auf fval(u, UFL_LONGACTION), glaube ich.

Enno

Enno

2023-09-14 19:01

administrator   ~0010038

Last edited: 2023-09-14 19:02

Das Problem ist die Logik in update_long_order. Die gibt die Fehlermeldung aus, verhindert aber nicht, dass gehandelt wird (weil Handel nicht mit u->thisorder gemacht wird).

Enno

Enno

2023-09-14 19:33

administrator   ~0010039

Den eigentlichen Fehler repariert, aber es sollten noch Tests für update_long_order geschrieben werden, die Funktion ist nicht-trivial.

Issue History

Date Modified Username Field Change
2023-09-01 00:35 Solthar New Issue
2023-09-04 06:19 Solthar Steps to Reproduce Updated
2023-09-04 06:21 Solthar Steps to Reproduce Updated
2023-09-13 18:08 Enno Assigned To => Enno
2023-09-13 18:08 Enno Status new => assigned
2023-09-14 18:31 Enno Status assigned => confirmed
2023-09-14 18:31 Enno Note Added: 0010037
2023-09-14 19:01 Enno Note Added: 0010038
2023-09-14 19:02 Enno Note Edited: 0010038
2023-09-14 19:33 Enno Note Added: 0010039
2023-09-15 17:53 Enno Status confirmed => resolved
2023-09-15 17:53 Enno Resolution open => fixed
2023-09-15 17:53 Enno Fixed in Version => 28.4
2025-01-17 05:46 Xolgrim Status resolved => closed