EQdkp Plus Navigation:   Home  |   Forum  |   Wiki  |   Translate  |   Bugtracker  |   WebSVN  |  USVN

Multi-DKP

Aus EQdkp Plus Wiki

Inhaltsverzeichnis

Einrichten von MultiDKP Konten

Arbeiten mit MultiDKP Konten

Ist Zustand bei Eqdkps ohne MultiDKP

Es gibt eine Tabelle in der Datenbank, die nennt sich eqdkp_members. in dieser Tabelle stehen neben den Informationen zu den membern die verschiedenen punkte.

member_id = eindeutige memberid

member_name = name

member_earned = bekommene punkte

member_spent = ausgegebene punkte für items

member_adjustment = korregierte punkte


die aktuellen punkte ergeben sich dann aus

current = member_earned + member_spent - member_adjustment

Wenn jetzt z.b. ein Raid eingetragen wird, erhöht sich der "earnt" wert um den DKP wert, der dem Raid zugewiesen wurd. Wenn ein Item verteilt wird, dann erhöht sich der "spent" Wert. Wird eine korrektur einem Member zugeordnet, dann erhöht sich der "adjust" Wert. Im Prinzip alles recht simpel.


Multi-DKP System:

Wenn ein Raid eingetragen wird, dann wird in der Tabelle eqdkp_Raids ein neuer eintrag gemacht. In diesem steht z.b. der Raidnamen (Molten Core, BWL, usw). Gleichzeitig werden in der Tabelle "eqdkp_raid_attendees" die Spieler eingetragen, die bei einem Raid dabei waren.

d.h. wir können den "earned" Wert einfach neu berechnen, indem wir eine Abfrage wer an welchen Raids teilgenommen hat. Wenn wir alle Raids einbeziehen, dann bekommen wir den selben Wert wie oben beschrieben. Wenn wir jetzt aber z.b. nur auf den Namen Molten Core abfragen, bekommen wir nur die punkte dier Spieler, die jemals an einem MC Raid teilgenommen haben.


So verfahren wir auch mit den ausgegebenen Punkten. Wir schauen also erst in der Tabelle "eqdkp_items". Dort wird für jedes neue Item eine neue Zeile angelegt, in der auch die RaidID steht. Über entsprechende sql abfragen, bekommen wir jetzt also nur die Items, die ein Spieler z.b. in MC gekauft hat.


Bei den Abfragen müssen wir ein wenig tricksen. D.h. in den Korrekturnamen muss der Raidnamen mit rein. z.b. "Molten Core - zu spät" - 10 DKP So bekommen wir also alle Korrekturen für MC raus.

Die aktuellen MC punkte ergeben sich dann wieder aus: MC_current = mc_member_earned + mc_member_spent - mc_member_adjustment

d.h. wir sind in der Lage mehrere Instanzen in einem DKP zu verwalten.


Set/Nonset

Um eine Set und Nonset Tabelle im eqdkp zu realiesieren müssen wir anders an die Sache rangehen. Denn hier haben wir keine Unterscheidung der Items über den Raidnamen, sondern hier muss das Item selber herhalten. D.h. entweder muss jedes Item beim eintragen mit einem "set" oder "nonset" flag vershene werden, oder man erstellt eine Liste in der schonmal alle potentiellen Items stehen. Derzeit ist eine solche Unterscheidung noch nicht möglich, steht aber auf der Roadmap für zukünftige Eqdkp Plus Versionen.