"So nachdem ich lange gegrübelt habe bin ich dahinter gekommen, wie es möglich ist die verschiedenen "Ränge" gleichzeitig und unterschiedlich darzustellen.
Mit verschiedenen "Rängen" meine ich ServerAdmin, GameAdmin, GameMaster oder wie auch immer ihr da unterscheidet.
Um hierbei zu unterscheiden bekommt zB der GameMaster ein "GM" als Logo(wer hätte das gedacht...), hingegen bekommt der ServerAdmin ein "Admin" als logo, und zwar alles zur selben Zeit."
Jetz zeig ich euch mal wie ihr das hinbekommt.
Das ganze basiert auf dem Prinzip der KoreaRüstungen, klingt komisch, ist aber so
Na gut fangen wir mal an, was benötigt ihr:
-entpackte Root.epk/Root.eix
-entpackte PC.epk/PC.eix
-entpackte item_proto (CLIENTSIDE!)
So als erstes witmen wir uns der Root-Datei.
Wenn ihr die entpackt habt findet ihr in eurem Source(was auch immer) Ordner eine playersettingmodule.py
(Falls ihr noch eine playersettingmodulenew.py habt nehmt die neue)
Diese öffnet ihr (am besten mit Notepad++) und sucht nach folgendem:
chrmgr.RegisterEffect(chrmgr.EFFECT_REFINED+18, "Bip01", "D:/ymir work/pc/common/effect/armor/armor_9.mse")
Direkt drunter hängt ihr diese 3 "Befehle" dran:
chrmgr.RegisterEffect(chrmgr.EFFECT_REFINED+19, "Bip01", "D:/ymir work/pc/common/effect/armor/ymirredmod.mse")
chrmgr.RegisterEffect(chrmgr.EFFECT_REFINED+20, "Bip01", "D:/ymir work/pc/common/effect/armor/ymirredgm.mse")
chrmgr.RegisterEffect(chrmgr.EFFECT_REFINED+21, "Bip01", "D:/ymir work/pc/common/effect/armor/ymirredadmin.mse")
Das ganze sollte dann etwa so aussehen:
Code:
chrmgr.RegisterEffect(chrmgr.EFFECT_REFINED+16, "Bip01", "D:/ymir work/pc/common/effect/armor/armor_7.mse") chrmgr.RegisterEffect(chrmgr.EFFECT_REFINED+17, "Bip01", "D:/ymir work/pc/common/effect/armor/armor_8.mse") chrmgr.RegisterEffect(chrmgr.EFFECT_REFINED+18, "Bip01", "D:/ymir work/pc/common/effect/armor/armor_9.mse") chrmgr.RegisterEffect(chrmgr.EFFECT_REFINED+19, "Bip01", "D:/ymir work/pc/common/effect/armor/ymirredmod.mse") chrmgr.RegisterEffect(chrmgr.EFFECT_REFINED+20, "Bip01", "D:/ymir work/pc/common/effect/armor/ymirredgm.mse") chrmgr.RegisterEffect(chrmgr.EFFECT_REFINED+21, "Bip01", "D:/ymir work/pc/common/effect/armor/ymirredadmin.mse")
So nun zur PC-Datei:
hier mach ich es euch einfach, einfach die PC-Datei im Anhang downloaden und die 6 Dateien in:
ymir work\pc\common\effect\armor einfügen.
Das wars auch schon, PC packen und wieder in den pack-Ordner eures Clienten schmeißen.
Zuletzt die item_proto(Clientside):
Hier wirds ein bisschen kniffliger aber auch das ist zu schaffen (Brain.exe)
Bisher haben wir nix anderes gemacht als eine neue Art des Rüstungsglitzern eingefügt (wie zB BlueShining, KoreaRüstung oder nennt sie wie ihr wollt),
NUR sind unsere "Glitzer"-Effekte->
Code:
ymirredmod.mse ymirredgm.mse ymirredadmin.mse
Damit wir jetzt bestimmen können,welche Rüstung wie Glitzert, ist es wichtig die Anzahl der neuen Effekte (in unserem Fall 3:ymirredmod,ymirredgm und ymirredadmin)zu beachten.
Das bedeutet jetzt ihr braucht eine Rüstung, die nur für GM´s zugänglich ist, und hiervon 3 Stück->Mod,GM,Admin (oder weniger/mehr, liegt an euch) für JEDE Klasse.
Habt ihr euch für eine Rüstung entschieden, merkt euch die ID der Rüstung und sucht diese in der Item_Proto Clientside.
Als beispiel 3 Rüstungen für den Krieger:
In meinem Fall haben die Rüstungen jetzt folgende ID´s:
11307
11308
11309
entscheidend hierbei ist die letzte Zahl der ID, in diesem Fall 7,8 und 9.
Jetzt müsst ihr die Spalte "socket_pct="x" "an die letzte Zahl der ID anpassen.
Hierbei greife ich auf den Thread von passy305 zu.
Um der Rüstung mit der ID 11307 jhttp://cdn.elitepvpers.org/forum/images/editor/color.gifetzt den Effekt "ymirredmod.mse" zugeben, suchen wir eben diese Rüstung in der item_proto raus, gehen bis ans der Spalte zu -> socket_pct="x" <- und ändern den Socket_pct auf "6"
--> socket_pct="6"
Nun Glitzert die Rüstung 11307 mit dem Effekt "ymirredmod.mse".
Damit ihr nun wisst, wie der Socket_pct sein muss hilft eben der Thread von passy305.
Das heißt:
->Für den Effekt des ersten Glitzern´s (ymirredmod.mse) müsst ihr wie folgt vorgehen:
Letzte Valueziffer | socket_pct |
---|---|
0 | 13 |
1 | 12 |
2 | 11 |
3 | 10 |
4 | 9 |
5 | 8 |
6 | 7 |
7 | 6 |
8 | 5 |
9 | 4 |
->Für den Effekt des zweiten Glitzern´s (ymirredgm.mse) müsst ihr wie folgt vorgehen:
Letzte Valueziffer | socket_pct |
---|---|
0 | 14 |
1 | 13 |
2 | 12 |
3 | 11 |
4 | 10 |
5 | 9 |
6 | 8 |
7 | 7 |
8 | 6 |
9 | 5 |
>Für den Effekt des dritten Glitzern´s (ymirredadmin.mse) müsst ihr wie folgt vorgehen:
Letzte Valueziffer | socket_pct |
---|---|
0 | 15 |
1 | 14 |
2 | 13 |
3 | 12 |
4 | 11 |
5 | 10 |
6 | 9 |
7 | 8 |
8 | 7 |
9 | 6 |
Wenn ihr mehr Effekte einbauen wollt, müsst ihr eben in diesem Schema weitermachen, heißt für einen vierten Effekt:
Letzte Valueziffer | socket_pct |
---|---|
0 | 16 |
1 | 15 |
2 | 14 |
3 | 13 |
4 | 12 |
5 | 11 |
6 | 10 |
7 | 9 |
8 | 8 |
9 | 7 |
Und so weiter.
In meinen Fall sieht das ganze jetzt wie folgt aus:
Rüstung mit der ID 11307-->socket_pct von 6 (1. Effekt=1. Tabelle)
Rüstung mit der ID 11308-->socket_pct von 6 (2. Effekt=2. Tabelle)
Rüstung mit der ID 11309-->socket_pct von 6 (3. Effekt=3. Tabelle)
Zufällig immer das gleiche :P
Soviel zur item_proto, packen und wieder in den Clienten schmeißen.
Damit wir nun keinen doppelten Effekt haben, muss der ursprüngliche GmLogo Effekt entfernt werden.
Hierzu benötigen wir wieder eine Datei aus der Root.eix/Root.epk.
Und zwar die "locale.py"
Datei öffnen und einfach (mit Notepad++) oder selbt nach:
Code:
if IsLETSGAME():
In den nächsten Zeilen folgt immer wieder der gleiche Pfad:
locale/xxx/effect/gm.mse
Einfach bei jedem der Pfade das "gm.mse" in "notselected.mse"
ändern.
Am Ende sollte das ganze so aussehen:
Code:
if IsLETSGAME(): FN_GM_MARK = "locale/letgame/effect/notselected.mse" LOCALE_FILE_NAME = "locale/letsgamelocale_game.txt" elif IsCIBN(): FN_GM_MARK = "locale/cibn/effect/notselected.mse" LOCALE_FILE_NAME = "locale/cibn/locale_game.txt" constInfo.KEEP_ACCOUNT_CONNETION_ENABLE = 0 constInfo.MINIMAP_POSITIONINFO_ENABLE = 1 constInfo.USE_ITEM_WEAPON_TABLE_ATTACK_BONUS = 1 constInfo.LOGIN_COUNT_LIMIT_ENABLE = 1 constInfo.KEEP_ACCOUNT_CONNETION_ENABLE = 1 constInfo.PVPMODE_PROTECTED_LEVEL = 10 elif IsJAPAN(): FN_GM_MARK = "locale/japan/effect/notselected.mse" LOCALE_FILE_NAME = "locale/japan/locale_game.txt" elif IsENGLISH(): FN_GM_MARK = "locale/english/effect/notselected.mse" LOCALE_FILE_NAME = "locale/english/locale_game.txt" elif IsGERMANY(): FN_GM_MARK = "locale/germany/effect/notselected.mse" LOCALE_FILE_NAME = "locale/germany/locale_game.txt" elif IsHONGKONG(): APP_TITLE = "Às¾s" FN_GM_MARK = "locale/hongkong/effect/notselected.mse" LOCALE_FILE_NAME = "locale/hongkong/locale_game.txt" elif IsNEWCIBN(): FN_GM_MARK = "locale/newcibn/effect/notselected.mse" LOCALE_FILE_NAME = "locale/newcibn/locale_game.txt" elif IsEUROPE(): FN_GM_MARK = "%s/effect/test.mse" % app.GetLocalePath() LOCALE_FILE_NAME = "%s/locale_game.txt" % app.GetLocalePath() else: FN_GM_MARK = "locale/ymir/effect/notselected.mse" LOCALE_FILE_NAME = "locale/ymir/locale_game.txt"
Root packen und wieder in Clienten schmeißen.
Im Spiel schaut das ganze dann so aus:
Ging leider nicht anders..
Natürlich könnt ihr die mse-Dateien (ymiredgm.mse, etc )beliebig verändern, wichtig hierbei ist nur, das Bilder etc im Verzeichnis ymir work\pc\common\effect\armor sind und das eure PC-Pack die Dateien mitpackt!
Das ganze ist mit einem 2009er Clienten getestet.
Mit bereits vorhandenen KoreaRüstungen dürfte es kein Problem geben, da ihr ja beliebig viele Effekte einbauen könnt, haltet euch dafür einfach an das Schema der ID/socket_pct tabelle.
Ich weiß, das ist eine umständlich Art dies dazustellen, aber bisher die mir (euch?) einzigst bekannte.
Bei Fragen schreibt mir einfach eine Private Nachricht!
mfg .Misterion
VirusTotal: