bool CHARACTER::IsEmptyItemGrid(TItemPos Cell, BYTE bSize, int iExceptionCell) const
BYTE bCell = Cell.cell;
Zu:
WORD wCell = Cell.cell;
Und darauf achten das Cell.cell auch WORD ist (sollte es eigentlich auch so schon sein)
Da die ENUM´s 256 übersteigen fürs Inventory
Beiträge von Syntax
-
-
Wundert mich auch wieso dies verkauft werden darf ohne genauere Info´s.
Als ich mit meinem Server für eigene Serverfiles anfangen wollte (Pausiert da Prüfung... is aber ja auch egal)
wurde ich explezit danach gefragt woher diese Systeme kommen. Aze war damit fine das ich nur public Systeme verbaut habe die nicht mehr verkauft werden und auch mein eigenes Zeug dazu haue...
Finde es ebenso etwas schwach das Nava sich hier sehr respektlos verhält. Ich werde seine Arbeit in keinem fall beurteilen da ich diese nicht gesehen habe....
Man muss jetzt hier kein Streit anfangen aber es wäre schon sehenswert wenn Nava den Teamlern hier mal genau erzählt um welche Systeme es sich handelt. Kann ja auch einfach Fliege V3 nehmen und Systeme von etlichen developern verbauen die ich in die Finger bekommen habe und das ganze für Geld verscherbeln. Die Arbeit fürs einbauen wäre da... aber wenn da nicht mehr passiert ist fände ich den Preis von 300 Euro auch happig....
Finde es einfach nicht fair gegenüber einigen Dev's -
That looks pretty good Espacially the dual blades could be a game changer
-
Sammel doch mal alle bekannten dupe bugs und fix sie. Es ist meistens nichts großes einfach nur fehlende Abfragen etc...
Natürlich wird es dann immer noch dupe bugs geben die du nicht kennst deshalb würde ich am besten einfach alles loggen und eventuell schauen das sofern ein Item 1:1 existiert dies in der log landet mit der Herkunft. Sofern das öfter auftaucht kannst du dann genauer schauen wie dieser entsteht und eben mehr loggen.
Dupes können nicht nur rein im System bestehen es kann auch sein das deine Erweiterung für xy eine Möglichkeit zum dupen bietet. Es ist halt schwierig zu sagen welcher offshop am besten ist da die meisten im Grunde gleich aufgebaut sind.Aiiiiiiiiiiiiiiiiiiii ich bin nicht auf der Suche nach Dupebugs, wieso versteht das keiner? Mein aktueller ist auch clean, ich bin kein trottel. Mir geht es ums allgemeine, wie bisher die Erfahrung mit dem Shop von Dracarys ist. Ob sich jemand dazu äußern kann, der ihn verwendet. Whatever.
Wie gesagt im Grunde funktionieren alle gleich. Items werden gelöscht... Items werden neu erstellt... So an sich hast du da kein riesigen unterschied ^^. Sind beide im Grunde fine.
-
Sammel doch mal alle bekannten dupe bugs und fix sie. Es ist meistens nichts großes einfach nur fehlende Abfragen etc...
Natürlich wird es dann immer noch dupe bugs geben die du nicht kennst deshalb würde ich am besten einfach alles loggen und eventuell schauen das sofern ein Item 1:1 existiert dies in der log landet mit der Herkunft. Sofern das öfter auftaucht kannst du dann genauer schauen wie dieser entsteht und eben mehr loggen.
Dupes können nicht nur rein im System bestehen es kann auch sein das deine Erweiterung für xy eine Möglichkeit zum dupen bietet. Es ist halt schwierig zu sagen welcher offshop am besten ist da die meisten im Grunde gleich aufgebaut sind. -
Keine Animation um die Truhe zu öffnen?
Oder so eine coole Animation wie bei Kratos, der einfach die Truhe kaputtschlägt!Beim Metin2 Ninja wärs dann eher so hier:
Bitte melden Sie sich an, um diesen Link zu sehen.
P.S: Der Sound ist ein geniales Detail
Die Leute haben schon bei der Pickup & Springanimation gemeckert, bei einer Truhe öffnen Animation brennt es richtig
Im source gibt es anscheinend auch eine sitz Animation 😂 habe Mal bissl Code dazu gefunden aber nie genau geschaut wie weit es funktionstüchtig ist 😅 aber habe auch gehört das Animationen nicht so dolle sein sollen bezüglich der Performance 😅
-
Entweder die meisten sind vom Verständigkeitsgott geküsst worden oder ich verstehe dein genaues Problem / Ansatzpunkt nicht anhand deiner Erklärung / Skizzierung. Du hast ein Fehler bemerkt, aufgrund von?
Einer falschen Konfiguration auf meiner Seite.
Das Finding hat mich viel Zeit gekostet, das Fixen war nicht so wild.
Konkret hab ich in meiner serverinfo.py den Main-Port sagen wir A eingetragen, ein Core zu diesem Port existierte aber nicht. Also hat man eine "Fehler beim Verbinden mit dem Server" Meldung bekommen, nach dem initialen "Anmeldevorgang läuft". Der Output von Metin2 in diesem Case (auf dem Auth Core) ist:
Code- [2023-08-25 22:00:24.090] [trace] Handshake: client_time 0 server_time 36750
- [2023-08-25 22:00:24.090] [trace] AUTH_PHASE 00000258445F7950
- [2023-08-25 22:00:24.169] [trace] Packet Analyze [Header 111][bufferLeft 144]
- [2023-08-25 22:00:24.169] [trace] InputAuth Analyze Header[111]
- [2023-08-25 22:00:24.170] [trace] InputAuth::Login : lead0x194(9) desc 00000258445F7950
- [2023-08-25 22:00:24.170] [trace] VERSION CHECK 123 123
- [2023-08-25 22:00:24.170] [trace] SetLoginKey 2026264663
- [2023-08-25 22:00:24.198] [trace] QID_AUTH_LOGIN: START 2026264663 00000258445F7950
- [2023-08-25 22:00:24.199] [trace] Create_Time 1607773915 20201212
- [2023-08-25 22:00:24.207] [trace] QID_AUTH_LOGIN: SUCCESS lead0x194
- [2023-08-25 22:00:24.208] [trace] SendAuthLogin lead0x194 key 1
- [2023-08-25 22:00:24.294] [trace] AuthLogin result 1 key 2026264663
- [2023-08-25 22:00:24.356] [trace] SYSTEM: closing socket. DESC #548
Weiter passierte nichts. Und auf der Suche nach dem Fehler hab ich gemerkt, dass ich den gesamten Prozess zunächst einmal überblicken können muss, bevor ich weiß warum es an dieser Stelle nicht weiter geht. Ich wüsste sonst überhaupt nicht, wo ich ansetzen soll und blind suchen, wollte ich nicht - Das ist meist deprimierend und nicht von Erfolg gekrönt.
Wie so häufig ist aber eine falsche Konfiguration die häufigste Fehlerursache. Und jetzt kommts:
Wenn ein Socket nicht erreichbar ist, hat die WSAGetLastError-Methode der winsock Library folgende Fehler-ID ausgegeben:
und nicht wie erwartet
Und was macht Metin bei dieser Fehler ID? Genau, sie ignorieren und nichts loggen!
Hoffe das genügt dir als Abriss, was meine Intention war bei dem Vorgehen.
Jetzt wo du es sagst... Hatte Mal einen ähnlichen "Fehler" wenn nicht sogar den gleichen. Eventuell Mal für die ganzen Leute ein kleines HowTo erstellen um einen logischen und nachvollziehbaren Login syserr/Log Block einzufügen um solche Fehler einfach schneller zu erkennen? 🤔
Ich habe das damals blind gesucht und zufällig bin ich auf die Idee gekommen die cores zu prüfen. Aber habe da auch viel Zeit verschwendet.
-
Hab ich mir auch letztens anschauen müssen... der bug ist dann durch Zauberhand verschwunden XD Man kennts aber cool danke das du das ganze mal skizziert hast
-
Die Sache ist, das man hier Systeme bekommt die um einiges effizienter sind, wie du sagtest mit HwiD und mehr Features für fast den selben Preis und das von einem Entwickler der einige Systeme releast hat und auch einen Ruf hat. Von daher würde ich eher dies vorziehen wie dieses.
Grüße
Das habe ich mir bereits gedacht. Deshalb mal die Idee mit der GUI und dem HWID dazu geschmissen. Ich schätze die Arbeit die nochmal investiert werden muss auf keine 10h und dann sollte man ein cooles gesamt Produkt haben Aber liegt am dev ob er sich die mühe macht ^^.
Außerdem wäre es gut wenn namenshafte devs das System mal überfliegen da viele einige Abfragen vergessen oder eben game breaking code einbauen und dies erst mit der Zeit erkannt wird. Aber bin dennoch überzeugt das die Grundidee garnicht so schlecht ist -
Uhhh i´ve got some ideas already what to do with it Thanks lets see how it works
-
Einführung zum Bann System by Nava
- Eingabe des Befehls: Geben Sie den Befehl "/bann" in die Steuerungsoberfläche des Spiels ein.
- Namenseingabe: Nach Eingabe des Befehls wird Ihnen die Möglichkeit geboten, den Namen des Spielers einzugeben, den Sie bannen möchten.
- Begründung für den Bann: Sie werden aufgefordert, den Grund für den Bann anzugeben. Hier können Sie spezifische Informationen wie Verstöße, Regelbrüche oder andere relevante Details festhalten.
- Bann auslösen: Nach Eingabe des Namens und der Begründung bestätigen Sie die Aktion. Das System setzt den Bann in Kraft und greift auf die definierten Bann-Strategien zurück.
- MySQL-Protokollierung: Gleichzeitig mit dem Bann wird dieser Schritt in Echtzeit in der MySQL-Datenbank protokolliert. Die Aktion wird mit dem Spielerprofil, dem Grund für den Bann und dem Zeitpunkt des Banns verknüpft.
- Die Spieler der gebannt wurde wird darüber informiert und automatisch nach 5 Sekunden ausgeloggt.
Die Vorteile dieser Steuerungs- und Protokollierungsfunktion sind vielfältig:
- Schnelle Reaktion: Die einfache Steuerung erlaubt es den Administratoren, umgehend auf Regelverstöße zu reagieren und den Spielfluss aufrechtzuerhalten.
- Dokumentierte Maßnahmen: Durch die Protokollierung in der MySQL-Datenbank sind sämtliche Bann-Maßnahmen lückenlos dokumentiert. Dies fördert Transparenz und Verantwortlichkeit.
- Einfache Verwaltung: Die gezielte Eingabe von Namen und Gründen erleichtert die spätere Überwachung und Verwaltung von Bann-Maßnahmen.
- Flexibilität und Anpassung: Das System erlaubt es, individuelle Gründe und Bann-Dauern so wie wer den /bann code verwenden darf festzulegen, um den spezifischen Anforderungen des Servers gerecht zu werden
Bitte melden Sie sich an, um diesen Anhang zu sehen.
Bitte melden Sie sich an, um diesen Anhang zu sehen.
Bitte melden Sie sich an, um diesen Anhang zu sehen.
Bitte melden Sie sich an, um diesen Anhang zu sehen.
Preis: 30 Euro. - Mit Einbau 50 Euro.
>>> Bitte melden Sie sich an, um diesen Link zu sehen. <<<
Gerne könnt ihr mich auf Discord kontaktieren.
Discord: Nava#7461
1. Die Bilder haste wohl falsch eingefügt
2. Ließt sich alles so als würde keine Gui dabei sein. Wäre eventuell nice für GM´s eine GUI für die jeweiligen Informationen zu haben um das ganze übersichtlicher zu machen ^^. So meine Meinung. Ansonsten wäre noch interessant wieso du es nicht gleich mit einem HWID ban-system erweiterst. Somit wäre das Interesse bestimmt größer und der Aufwand sollte auch nicht all zu hoch sein ^^.
3. Würde eventuell einen bekannten DEV drüber schauen lassen der Verifizieren kann das dein Code auf den ersten Blick keine Lücken enthält und keine memory leaks/breaks. Eventuell findest du jemanden der hier einen guten Ruf hat und schon einige Systeme veröffentlicht hat oder verkauft hat und sich wirklich mit dieser Materie weitestgehend auskennt.
Ansonsten finde ich das eine Nette Idee sich einen Namen machen zu wollen mit einem kleineren System zu einem Validen Preis
Sofern der Code sauber ist sind die 30 Euro gerechtfertigt.
Warum?
Ganz einfach, egal wie simpel eine Sache ist wird dafür Zeit investiert, und diese möchte sich ein developer auch vergüten lassen. Bei einem Stundenlohn von 10-15 Euro ist das noch zu vertragen wenn das System kein Verkaufsschlager wird. -
Es sieht so aus als würde das System nachm LOD des Models gucken, dieses ist aber nicht existent. Welche Granny Version nutzt du ?
Was ich jetzt auch noch nicht nachgeschaut habe und deshalb nicht verstehe "Ehrlichkeit ist wichtig": Wo er genau die gr2 der Schamie lädt und wieso ich den Wildhund in der NPC-List eintragen muss.
Der Wildhund wird an der Stelle genommen, da es kein Mob "Schami" gibt und es leichter ist einfach den Mob zu Verwandeln, hier könntest du wahrscheinlich jeden beliebigen Mob nehmen.
Hast du in dem Ordner stray_dog die stray_dog_lod_01.gr2 Datei?Ahh okay also ja stray_dog passt auch alles soweit.
Ich vermute sehr stark das im System etwas crashed da logischerweise der Fehler auch bei der normalen Schamie auftauchen müsste. So meine Theorie zu mindestens. Sie schmeißt keine Fehler nur dieser NPC. Ich könnt mir vorstellen das es einfach minimal zu spät Instanziert wird aber dazu müsste ich erstmal das System durch schauen und verstehen was Aslan da genau macht.
Granny Version müsste glaube ich die 2.4 sein. -
Was ich jetzt auch noch nicht nachgeschaut habe und deshalb nicht verstehe "Ehrlichkeit ist wichtig": Wo er genau die gr2 der Schamie lädt und wieso ich den Wildhund in der NPC-List eintragen muss.
Bitte melden Sie sich an, um diesen Anhang zu sehen.
Lasst die Spiele beginnenWeil es nichts anderes sein wird. Kannst auch Keiler nehmen idk. kenne das System nicht, gehe aber davon aus, dass er es nur visuell als Schami darstellen lässt über die Binary
Alsooo... was komisch ist ( Steap danke fürs überprüfen der gr2 datein ^^) das er bei den haaren einen Fehler schmeißt wobei diese fine sein sollte. Also kann es eigentlich nur ein Problem beim Ablauf der Funktionsaufrufe geben.
Also System nach und nach auseinander nehmen und suchen wo er diese lädt... Eventuell hat Aslan Zeit und kann ja mir den Part nennen ich Frage ihn mal bevor ich mir das ganze System rein ziehen muss -
Soo meine lieben Freunde... Da ich mich nicht all zu gut mit 3D Objekten auskenne und nicht genau verstehe wieso der Fehler geschmissen wird möchte ich mal eure Vermutungen
hören ^^. Eventuell hätte jemand auch eine Idee woran es liegt.
Also hier handelt es sich um das BuffNPC-System von Aslan (Ja gekauft er weiß bescheid über diesen Fehler).
Dieser wird geschmissen sobald ich einen Buff rufe.
Bitte melden Sie sich an, um diesen Anhang zu sehen.
Lustiger weiße kann ich diesen zwar "Ignorieren" und das System läuft auch wie es soll aber dennoch möchte ich herausfinden woher dieser Fehler kommt und diesen nicht
einfach Auskommentieren.
Ich habe in der DB die werte vom Wildhund übernommen mit der Änderung "Folder" zu aslan_npc_buff oder wie auch immer der Ordner hieß
Habe die mob_proto und item_proto auf den Client gespiegelt und habe den NPC mit der jeweiligen vnum in der npclist.txt eingetragen und auf den Wildhund verwiesen.
Alles 1:1 wie um Tut. Eventuell hat jemand noch eine Idee woran das liegen könnte. Ich werde nochmal die DB spiegeln um sicher zu gehen und werde mal den NPC an sich austauschen.
Was ich jetzt auch noch nicht nachgeschaut habe und deshalb nicht verstehe "Ehrlichkeit ist wichtig": Wo er genau die gr2 der Schamie lädt und wieso ich den Wildhund in der NPC-List eintragen muss.
Bitte melden Sie sich an, um diesen Anhang zu sehen.
Lasst die Spiele beginnen -
Ich habe mich Mal grob an p2p angetastet gehabt und grob verstanden wie alles abläuft. Wenn ich noch vor meiner Klausurenphase es schaffe drüber zu schauen kann ich ggf. Mal ein p2p System anbieten bzw ein umcoden von dem ganzen System 👍
-
Danke Steap für deine Unterstützung ^^. Hatte aber Bereits einen anderen Ansatz im Kopf und somit hatte sich das mit den txt´s erledigt. Wäre dennoch cool wenn du an deiner Idee mal Arbeitest und das ganze pub machst für die anderen
Zum Fix:
Ich habe die .txt´s serverseitig ausgeschalten
game/Datenbank -> conf.txt
: NO_TXT = 1
Dann habe ich mir aus der Version die ich damals von Fliege erhalten habe die Mysql2Proto Source gezogen.
1. Plattformtoolset: Visual Studio 2022 (v143)
- zu finden unter Eigenschaften/Konfigurationseigenschaften
2. Optimierung des gesamten Program: Nein
- zu finden unter Eigenschaften/C/C++ Optimierung -
Wie der Titel schon sagt suche ich ein kleines Tool das mir entweder aus der DB mir meine mob und item_proto.txt´s erstellt oder auf anderem Wege.
Hätte jemand dies da bereits konfiguriert für die Fliege V3 oder muss ich mir selber was zsm basteln?
LG -
Er hat keine game und keine DB tgz deshalb sollte er einfach die von fliege v3 nehmen und die Struktur anpassen bzw die Dateien ersetzen. Ich glaube cyn3 kann einfach die tgz mit liefern und dann ist die Sache gegessen 😅
Die game und db muss er auch auf seinem freebsd kompilieren. Dazu braucht er nur eine Makefile, die soll er von fliege nehmen und anpassen
JA das ist logisch aber ich rede von der Ordnerstruktur die in source/bin zu finden ist. Erspart man sich Zeit wenn man gleich die .tgz Files hat. Ansonsten wie gesagt. Die von fliege nehmen und anpassen 😅
-
Grüße zurück xDD
Problem besteht immer noch^^
Syntax hat seine hilfe dir angeboten, add ihn auf discord
Er hat keine game und keine DB tgz deshalb sollte er einfach die von fliege v3 nehmen und die Struktur anpassen bzw die Dateien ersetzen. Ich glaube cyn3 kann einfach die tgz mit liefern und dann ist die Sache gegessen 😅
-
Discord: x3syntax