Eintragsdetails ansehen

IDProjektKategorieSichtbarkeitZuletzt aktualisiert
0002882Eresseaöffentlich2022-11-28 12:10
ReporterSolthar Bearbeitung durchEnno  
PrioritätnormalSchweregradkleinerer FehlerReproduzierbarnicht getestet
Status zugewiesenLösungoffen 
Produktversion27.3 
Zielversion28.1 
Zusammenfassung0002882: PIRATERIE funktioniert nicht wie beschrieben
Beschreibung

"... Werden Parteinummern angegeben, wird er nur auf Schiffe der angegebenen Parteien reagieren. Wird keine Parteinummer angegeben, reagiert er auf alle Schiffe von Parteien, zu denen die Partei des Kapitäns kein HELFE KÄMPFE gesetzt hat. "

Es ist aber so, dass Parteien, denen ich helfe, grundsätzlich ignoriert werden, auch wenn ich die Parteinummern angebe. Es wäre wünschenswert, auch eigenen Schiffen zu folgen, zum Beispiel um abtreibende Schiffe zu finden.

Schritte zur Reproduktion
local pirate_y = 0

-- returns pirate, origin region, target region
function make_pirate(f2, id)
    pirate_y = pirate_y + 2
    local r1 = region.create(0, pirate_y, 'ocean')
    local r2 = region.create(1, pirate_y, 'plain')
    local r3 = region.create(2, pirate_y, 'ocean')
    local f1 = get_unit("u1").faction
    if f2 == nil then
        f2 = faction.create('aquarian', "pirate@eressea.de", "de")
    end
    local v = unit.create(f1, r3)
    local p = unit.create(f2, r1)

    local sh = ship.create(r3, "dragonship")
    v.ship = sh
    sh.owner = v
    sh = ship.create(r1, "dragonship")
    p.ship = sh
    sh.owner = p
    v:set_skill("sailing", 99)
    p:set_skill("sailing", 99)
    if id ~= nil then
        p.id = atoi36(id)
        p.ship.name = id
    end
    v:add_order("NACH w")

    return p, r1, r2
end

function test_piracy()
    local f1 = faction.create('aquarian', "victim@eressea.de", "de")
    local r1 = region.create(0, 0, 'plain')
    local u1 = unit.create(f1, r1)
    u1.id = atoi36("u1")

    local u2, o2, r2 = make_pirate(nil, "u2")
    local u3, o3, r3 = make_pirate(nil, "u3")
    local u4, o4, r4 = make_pirate(nil, "u4")
    local u5, o5, r5 = make_pirate(nil, "u5")
    local u6, o6, r6 = make_pirate(nil, "u6")

    local u7, o7, r7 = make_pirate(f1, "u7")

    u2:add_order("PIRATERIE")

    u3:add_order("HELFE " .. itoa36(f1.id).." ALLES")
    u3:add_order("PIRATERIE")

    u4:add_order("HELFE " .. itoa36(f1.id).." ALLES")
    u4:add_order("PIRATERIE xx " .. itoa36(f1.id))

    u5:add_order("PIRATERIE xx")
    u6:add_order("PIRATERIE xx " .. itoa36(f1.id))

    u7:add_order("PIRATERIE xx " .. itoa36(f1.id))

    process_orders()

    write_reports_if_selected('temp')
    assert_equal(r2, u2.region, "normal piracy")
    assert_equal(o3, u3.region, "helps, no piracy")
    assert_equal(o5, u5.region, "target not in list")
    assert_equal(r6, u6.region, "target explicit")
    assert_equal(r4, u4.region, "help, but target in list")
    assert_equal(r7, u7.region, "own faction, but target in list")
end
TagsKeine Tags zugeordnet.
Partei1wpy
SpielE2
Report0

Notizen / Dateien

Xolgrim

Xolgrim

2022-08-20 21:08

Tester   ~0009748

Abgetriebene Schiffe fängt man normalerweise mit FOLGE ein

Solthar

Solthar

2022-08-20 22:41

Entwickler   ~0009749

Na schön, dann wäre es nützlich, um abtreibende Schiffen anormal zu finden. Das Hauptproblem ist aber, dass es nicht funktioniert wie beschrieben.

Eintrags-Historie

Änderungsdatum Benutzername Feld Änderung
2022-08-20 12:29 Solthar Neuer Eintrag
2022-08-20 21:08 Xolgrim Notiz hinzugefügt: 0009748
2022-08-20 22:41 Solthar Notiz hinzugefügt: 0009749
2022-08-29 09:02 Enno Bearbeitung durch => Enno
2022-08-29 09:02 Enno Status neu => zugewiesen
2022-08-29 09:02 Enno Zielversion => 27.4
2022-11-28 12:10 Enno Zielversion 27.4 => 28.1