Eintragsdetails ansehen

IDProjektKategorieSichtbarkeitZuletzt aktualisiert
0002356EresseaZAUBERöffentlich2017-12-05 19:48
ReporterKBearbeitung durchEnno 
PrioritätnormalAuswirkungkleinerer FehlerReproduzierbarimmer
Status geschlossenLösungerledigt 
Produktversion3.12.5 
Zielversion3.12.6Behoben in Version3.12.6 
Zusammenfassung0002356: Mauern der Ewigkeit - Entzaubert ohne Meldung oder Wirkungsdauer von einer Rundestatt ewig
Beschreibung

Gebäude die durch 'Mauern der Ewigkeit' verzaubert wurden, verlieren diesen Effekt die folgende Runde ohne einen Hinweis.

Für einen Zauber mit permanenten Aurakosten ist eine Runde Wirkung etwas unbefriedigen ;)

Schritte zur Reproduktion

AW 417:
Hafen (p9z7) - Der Zahn der Zeit kann diesen Mauern nichts anhaben. (5qxg)
seit AW 418:
Hafen scheinbar unverzaubert.

AW 418:
Leuchtturm (g2kd) - Der Zahn der Zeit kann diesen Mauern nichts anhaben. (55ek)
Seit AW 419:
Leuchtturm scheinbar unverzaubert.

AW 419:
Bergwerk (ogtj) - Ein magischer Schimmer liegt auf diesen Mauern. (d0zp) <- man beachte die unterschiedliche Meldung
AW 420:
Bergwerk unverzaubert

Parteiovis
SpielE3
Report420

Eintrags-Beziehungen

verwandt mit 0002358 geschlossenEnno WARNING: trying to create message of unknown type "curseinfo::stormwind" 

Notizen / Dateien

Enno

Enno

2017-08-16 21:54

Administrator   ~0007392

Für einen Zauber mit permanenten Aurakosten ist eine Runde Wirkung etwas unbefriedigend

Wurden die erst in der Vorwoche verzaubert?

Enno

Enno

2017-08-16 21:56

Administrator   ~0007393

"Ein magischer Schimmer liegt auf diesen Mauern." ist, glaube ich, die Meldung die man sieht, wenn man der zaubernde Magier nicht der eigene ist, unabhängig davon, welcher Zauber auf dem Gebäude liegt. Noch so ein Sonderfall im Code, der sicher niemanden interessiert.

Enno

Enno

2017-08-16 22:01

Administrator   ~0007394

Im Datenfile 419 steht der Zauber auf ogtj in der Tat mit Dauer 1. Andererseits hat er das CURSE_NOAGE Flag gesetzt.

Enno

Enno

2017-08-16 22:06

Administrator   ~0007395

Relevanter (falscher) Code in curse_age:

if ((c_flags(c) & CURSE_NOAGE) == 0)

c_flags() ist komplizierter als man denkt (macht ein XOR). c->flags ist 10, und c->type->flags auch, Resultat ist 0. Klarer Fall von soll nicht sein.

Enno

Enno

2017-08-16 22:07

Administrator   ~0007396

Hier habe ich wahrscheinlich bei der letzten Reparatur von Zaubereffekten (Regentanz) etwas kaputt gemacht.

Thoran

Thoran

2017-08-18 01:06

Reporter   ~0007397

Hier habe ich wahrscheinlich bei der letzten Reparatur von Zaubereffekten (Regentanz) etwas kaputt gemacht.

Dann hätte der hier genannte Fehler bei den Mauern der Ewigkeit aber doch auch in E2 auftauchen müssen (was nicht der Fall ist), denn die Fehlermeldung bzgl. des Regentanzes bezog sich auf E2.

Enno

Enno

2017-08-18 16:15

Administrator   ~0007398

In curse_write wird nicht c->flags geschrieben, sondern eine seltsame Kombination aus c->flags und c->type->flags, die keinen Sinn macht.

K

K

2017-08-18 16:38

Reporter   ~0007399

Wurden die erst in der Vorwoche verzaubert?

Ja, die Folgewoche zeigt dann den Effekt und in der nächsten Woche ist er weg.

Enno

Enno

2017-08-18 18:17

Administrator   ~0007400

@Solthar hat im Mai 2015 etwas an CURSE_ISNEW geändert, da ist der Anfang von diesem komischen Code in curse_write geschrieben worden.

Enno

Enno

2017-08-18 18:47

Administrator   ~0007401

Hier ist über die Jahre viel passiert. Es gibt u.a. Zauber, die haben CURSE_ISNEW permanent gesetzt (in ihrer curse_type struct). Das muss ich mal alles ausmisten, glaube ich.

Enno

Enno

2017-08-18 19:44

Administrator   ~0007402

Ich habe einen Test und einen Fix, damit kann das ein Hotfix werden.

Enno

Enno

2017-08-18 19:54

Administrator   ~0007403

https://github.com/eressea/server/pull/720

Enno

Enno

2017-08-18 21:07

Administrator   ~0007405

Soweit noch Zaubereffekte in dn Daten stehen, bei denen das CURSE_NOAGE Flag fehlt, wollten die jetzt auch repariert werden: https://github.com/eressea/server/pull/722

Eintrags-Historie

Änderungsdatum Benutzername Feld Änderung
2017-08-13 16:07 K Neuer Eintrag
2017-08-16 21:54 Enno Notiz hinzugefügt: 0007392
2017-08-16 21:56 Enno Notiz hinzugefügt: 0007393
2017-08-16 22:01 Enno Notiz hinzugefügt: 0007394
2017-08-16 22:06 Enno Notiz hinzugefügt: 0007395
2017-08-16 22:07 Enno Bearbeitung durch => Enno
2017-08-16 22:07 Enno Status neu => zugewiesen
2017-08-16 22:07 Enno Notiz hinzugefügt: 0007396
2017-08-16 22:07 Enno Produktversion => 3.12.4
2017-08-16 22:07 Enno Zielversion => 3.13.0
2017-08-16 22:09 Enno Produktversion 3.12.4 => 3.12.5
2017-08-18 01:06 Thoran Notiz hinzugefügt: 0007397
2017-08-18 16:15 Enno Notiz hinzugefügt: 0007398
2017-08-18 16:38 K Notiz hinzugefügt: 0007399
2017-08-18 18:17 Enno Notiz hinzugefügt: 0007400
2017-08-18 18:47 Enno Notiz hinzugefügt: 0007401
2017-08-18 19:44 Enno Behoben in Version => 3.12.6
2017-08-18 19:44 Enno Zielversion 3.13.0 => 3.12.6
2017-08-18 19:44 Enno Notiz hinzugefügt: 0007402
2017-08-18 19:54 Enno Status zugewiesen => erledigt
2017-08-18 19:54 Enno Lösung offen => erledigt
2017-08-18 19:54 Enno Notiz hinzugefügt: 0007403
2017-08-18 21:07 Enno Notiz hinzugefügt: 0007405
2017-08-19 21:36 Enno Beziehung hinzugefügt verwandt mit 0002358
2017-12-05 19:48 Enno Status erledigt => geschlossen