[Buff Bug]

05/06/2013 18:58 xXxXHansXxXx#1
Hey Leute,

um mal wieder etwas Schwung in das Thema Buff Bug zu bringen, möchte ich euch hiermit einen Tipp verraten, woran die Buffs scheitern.

Welche Tabellen sind entscheidend?
-TTEMPEXPITEMTABLE // Die temporäre Tabelle, wo alle Buffs zu finden sind, die gerade im Spiel aktiv laufen.

-TEXPITEMTABLE // Die Tabelle wo alle Buffs zu finden sind, die im Spiel allgemein laufen.

Welche Funktionen sind entscheidend?
-TSaveCharDataEnd // Muss keine Beachtung geschenkt werden
-TSaveExpItem // Hier liegt der Fehler

Funktionsweise:
Wenn ihr ein Buff tätigt, sollte im Normalfall zuerst die TSaveExpItem Funktion aufgerufen werden, welche die CharID, die BuffID so wie die Zeit in die temporäre Bufftabelle speichert (TTEMPEXPITEMTABLE). Wenn ihr euren Character nun ausloggt, kommt die TSAVECHARDATAEND zum Einsatz. Diese wählt alle vorhandenen Einträge aus der temporären Tabelle aus und kopiert diese in die "Endtabelle", der TEXPITEMTABLE.

Problem:
- Das Problem ist, dass die erste Funktion TSaveExpItem (in der TGame_GSP zu finden) garnicht erst durch das Spiel ausgeführt wird. Alle anderen Schritte funktionieren einwandfrei, die habe ich schon alle gestestet.

Also, ich hoffe euch einen kleinen Denkanstoß gegeben zu haben und vielleicht haben ja einige ein paar Ideen, um die Funktion so umzuschreiben, dass der Ablauf funktioniert.

Ich selbst habe den Buff Bug übrigens noch nicht gefixt, aber vielleicht möchten mich ja welche tatkräftig dabei unterstützen.

Cheeeeeeers!
05/06/2013 19:58 stotterer09#2
Der fehler ist im Source in TMAP
05/06/2013 22:32 julianjl#3
???
05/06/2013 22:34 Weom#4
TSaveExpItem ist nicht für Buffs, sondern für Items.
05/06/2013 22:43 xXxXHansXxXx#5
Quote:
Originally Posted by Weom View Post
TSaveExpItem ist nicht für Buffs, sondern für Items.
Eine andere Tabelle die Buffs speichert (ausgenommen TSaveDuringItem) habe ich nicht entdeckt. Übrigens, trage mal manuel etwas in die TExpItemTable, nehmen wir zb. ein XP-Plus Trank, wird der im Spiel zumindest als Buff angezeigt und verhält sich auch so, demnach war naheliegend, dass es sich um die TSaveExpItem handelt.
05/06/2013 22:46 Weom#6
Ich habe den Fix und weiß genau, woran es liegt. Auf jeden Fall nicht an der Function, die du da nennst. Die ist wahrscheinlich nur für Buffs wie XP Tränke usw.
05/06/2013 22:50 xXxXHansXxXx#7
Quote:
Originally Posted by Weom View Post
Ich habe den Fix und weiß genau, woran es liegt. Auf jeden Fall nicht an der Function, die du da nennst. Die ist wahrscheinlich nur für Buffs wie XP Tränke usw.
Habe ich nichts anders behauptet. Ich habe mich auch garnicht so genau auf die Skill(Buffs) konzentriert sondern auf die Item-Buffs wie oben erwähnt, anscheinend gibt es dann eben zwei Tabellen, bloß dennoch sind dann die Item"Buffs" genau so buggy wie die Skill"Buffs". Dann werde ich eben meine Aufmerksamkeit auf diese richten, vielleicht ergibt sich ja dann das andere mit.

Edit: Mal so am Rande, dass bei euch die Skill-Buffs funktionieren ist mir ja bekannt, aber habt ihr das selbe denn auch mit den Item-Buffs, beziehungsweise, habt ihr diese überhaupt schon beachtet?