Beiträge von Steap

    Wieso genau ist sie hinfällig? Damit wird einfach nur widerlegt, was du geschrieben hast: Das Wort METIN hat keine Bedeutung in fremden Sprachen. Das heißt, es bedeutet in diesem Kontext eben nicht Text in türkisch. Es mag sein, dass es das Wort METIN in einer anderen Sprache gibt, aber genau deshalb steht dort, dass es mit keiner Bedeutung im Zusammenhang steht. Das würde sonst heißen, dass Bitte melden Sie sich an, um diesen Link zu sehen. unteranderem ebenfalls hinfällig wären. Unter dem Punkt Statements siehst du sogar genau, was es mit dem Markenrecht auf sich hat. Wir wollen ja nicht gegen dich arbeiten, sondern dir eher erklären, warum deine Pläne wahrscheinlich nicht ganz funktionieren könnten.


    Du kannst also 100% des Originalen Contents von Metin2 Verwerten und unter neuen Namen und Aussehen in eine gute Lore mit einbauen.

    Das darfst du 100% nicht. Du darfst nicht einmal eine einzige Textur unverändert benutzen, weil sie nicht dir gehört. Du kannst auch nicht Kunst aus dem Internet nehmen und es als Portrait in deinem Spiel aufhängen. Dafür ist das Urheberrecht da.


    Nehmen wir mal die Grastextur. Dort gilt, so wie auf jedes einzelne Asset im Spiel was direkt von Metin2 kommt, folgendes:

    "They can give you the right to use them, they can sell you the right to use them, they can make some other arrangement with you, but in any case the owner of the intellectual property (IP) needs to allow you to use it. If they do, you can use the assets. If they don't, you can't use the assets." - Bitte melden Sie sich an, um diesen Link zu sehen.

    Egal was du machst, es ist illegal sofern du irgendwelche dateien von M2 nutzt.

    Da kann der Source auch 100% von dir in UE etc. geschrieben sein, wenn nur ein Objekt/Mob etc. von M2 drin ist wirst du gefickt und das nicht zu knapp.

    ^Hast du denn gelesen was ich schrieb wenn du schon daraus Zitiert hast? :)

    Darf ich Fragen, wie du dir das vorstellst? Wenn ich das richtig verstanden habe, willst du nicht in Unreal Engine oder Unity arbeiten, richtig? Dann gibt es absolut keinen Weg daran vorbei, dass du illegal starten musst. Metin2 gibt meines Wissens keine Lizenzen mehr raus (jedenfalls kenne ich keinen Server außer SG (?), welcher auch nur Ansatzweise heutzutage irgendwelche Lizenzrechte hat) und wenn doch, dann in Millionenhöhe. Warum sollten sie dich potentiell Millionen verdienen lassen und sich selbst nur ein Stückchen der Torte abschneiden? Und wenn du keine Metin2 Assets nutzen willst, dann bittest du uns ja eher um Hilfestellung für ein MMORPG und nicht für Metin2. Nutz auf keinen Fall Metin2 Assets und tausch sie im Endeffekt wieder aus, denn du wirst definitiv demotiviert af sein, wenn du realisierst, wie viele Assets Metin2 hat.


    Aber das ist wirklich eine Frage die rein auf Interesse beruht: Wie hast du das vor? Was ist dein Plan?

    Zum Thema Übersichtlichkeit (da du das erwähnst), hätte ich auch noch was: Im Python Code findest du oft sowas wie TRUE == VARIABLE. Das hat mich damals brutal irritiert, obwohl ich mich bereits mit Code ausgekannt habe. Also ist es wahrscheinlich wirklich ein echt guter Anfang, einfach mal den Code komplett so zu gestalten, wie du ihn haben möchtest. Um zu lernen, ist das eine super Idee und dadurch lernst du auch paar Konzepte kennen, die in Metin2 verwendet werden. In Python kriegst du das sicherlich in paar Tagen komplett durch, in C++ könnte ich dir jetzt so aus dem Nichts keine Tipps geben, weil ich relativ gut mit dem Code zurecht komme (solange ich kein Grafikkram / keine Packets anfassen muss).


    Oder Unreal Engine. Damit lernst du dann wirklich verdammt viel über Metin2 und hast direkt einen Punkt, eine bessere Engine / Grafik, aus deiner Liste gestrichen.

    Ja für Anfänger ist so eine vordefinierte Engine Super aber ich bin ein Überzeugter Feind von dem Unternehmen Tencent weil es mit seinen Verträgen mit der Chinesisch Kommunistischen Volkspartei leider eines der schlimmsten Diktatorischen Regimen unterstützen muss. Und Unity ist ja genau das gleiche wie Unreal nur mit dem Unterschied das Unreal Populärer und eine bessere Technologie verwendet... Zu dem ist Shaderschreiben mit Unity ein echter Krampf! Habe oft das Gefühl das die Technologie von Unity mit den Shadern nicht so gut klar kommt. Aber gut kann auch an meinen Shaderqualitäten liegen. Wer weiß das schon!

    Wenn du das Projekt nicht veröffentlichen willst, unterstützt du diese Unternehmen doch sowieso nicht, da sie von dir nicht profitieren. Und wenn du doch das Projekt veröffentlichen willst, machst du dich auch strafbar, egal ob mit Unity, Unreal Engine oder der Metin2 Engine (wegen den Assets). Shader wirst du überall einfacher implementieren können als in der Metin2 Engine.

    Zum Thema Übersichtlichkeit (da du das erwähnst), hätte ich auch noch was: Im Python Code findest du oft sowas wie TRUE == VARIABLE. Das hat mich damals brutal irritiert, obwohl ich mich bereits mit Code ausgekannt habe. Also ist es wahrscheinlich wirklich ein echt guter Anfang, einfach mal den Code komplett so zu gestalten, wie du ihn haben möchtest. Um zu lernen, ist das eine super Idee und dadurch lernst du auch paar Konzepte kennen, die in Metin2 verwendet werden. In Python kriegst du das sicherlich in paar Tagen komplett durch, in C++ könnte ich dir jetzt so aus dem Nichts keine Tipps geben, weil ich relativ gut mit dem Code zurecht komme (solange ich kein Grafikkram / keine Packets anfassen muss).


    Wenn du Metin2 komplett „neu“ machen willst würde ich gar nicht mit der Source anfangen sondern bei c# bleiben und einfach mit Unity es nachbauen.

    Oder Unreal Engine. Damit lernst du dann wirklich verdammt viel über Metin2 und hast direkt einen Punkt, eine bessere Engine / Grafik, aus deiner Liste gestrichen.

    Hallo zusammen


    Da ich nun längere Zeit mit C# Java und Lua Programmiert habe "Flashbased Browsergames" wollte ich mich mal an das Thema Metin2 Modding heran trauen. Ich habe zwar früher schon mit mehreren Leuten zusammen verschiedene Metin2 Sources Gemodded aber eher als Krümelfee am Rande für kleine Aufgaben. Daher wollte ich gerne mal Wissen ob es bei Google oder auf einschlägigen Seiten welche ich vielleicht nicht kenne Detaillierte Tutorials und Lernkurse für die Programmierung um Metin2 gibt... Ich würde nämlich gerne einen Traum für mich erfüllen und Metin2 irgendwann gerne mal komplett auf Links drehen. Vielleicht sogar mit neuer Grafik Engine und so weiter. Aber das ist ferne Musik ich wollte nur erklären worauf ich hinaus möchte. Also wenn jemand mir helfen kann mit Tipps und Ratschlägen dann hör ich gerne zu. Ich bitte aber darum Kritiken wie "du nimmst dir zu viel zu" und solche Destruktiven Aussagen zu Unterlassen da ich schon seit geraumer Zeit weiß das ich Größenwahnsinnig bin. Allerdings bin ich auch sehr Zielstrebig und Ausdauernd darin meine Ziele zu erreichen. ;)


    Liebe Grüße

    Du solltest nicht lernen, wie man in Metin2 programmiert. Du solltest einfach programmieren lernen. Bevor ich mit Metin2 gearbeitet habe, konnte ich auch nur in C# entwickeln. Ich konnte absolut gar nichts mit dem Python & C++ Teil anfangen (Python war aber deutlich einfacher). Nachdem ich Python gut genug gelernt habe (unabhängig von Metin2) und C++ "gut genug" verstand, kam der Rest von selbst. Ich finde es etwas schwer zu sagen, dass du mit Metin2 nicht programmieren lernen solltest. Wenn du richtig lernst, dann kannst du natürlich auch mit Metin2 lernen. Soweit ich das jetzt gesehen habe, solltest du dir einfach paar Dinge nicht angewöhnen. Solange du Erfahrung in C# und Java hast, solltest du früher oder später verstehen, wovon ich rede, wenn du im Code stöberst.


    Das alles ist meiner Meinung nach aber nicht so wichtig, wenn du nicht planst, C++ außerhalb von Metin2 zu schreiben. Solange du deinen Code gut genug kennst und genaustens lernst, was Metin2 tut um Exploits zu vermeiden, solltest du problemlos anhand Metin2 studieren können. Und wenn du das Wissen außerhalb von Metin2 anwenden willst, sind es auch oft nur Kleinigkeiten, an die du dich umgewöhnen musst. Metin2 ist eben ein ziemlich altes Spiel und erfüllt paar Code-Standards nicht mehr. Der Code ist dadurch aber nicht von magischer Hand schlechter geworden. Bei diesem Ansatz kann ich dir aber leider keine Ressourcen empfehlen, da ich selbst keine finde. Meines Wissens hat sich noch niemand die Mühe gemacht, Metin2 Code zu dokumentieren und durch die ganzen Serverfiles, wird das wahrscheinlich auch nie der Fall sein.


    Ich empfehle dir, einen Kurs in C++ zu absolvieren. Erst die Basics, dann Advanced. Wende das gelernte immer wieder anhand Beispiele in Metin2 an. Du lernst von Vektoren? Mach was mit Vektoren in Metin2. Du lernst Vererbung? Mach was mit Vererbung in Metin2. Mit deinem Vorwissen kannst du wahrscheinlich in 1 - 2 Wochen, wenn du richtig Gas gibst, anfangen, einen eigenen Server zu entwickeln. Natürlich ist hierfür eine Voraussetzung, dass du allgemein verstehst, wie Programmierung funktioniert. Wenn du ein Neuling im Programmieren bist, hilft nur viel viel lernen.

    Hast du die letzten Tage denn gar nichts in der Shoutbox mitbekommen? Zudem spricht sich sowas auch einfach ziemlich rum.


    Aber Jungs, eure Problemchen könnt ihr sicherlich auch privat miteinander klären. :)

    Das Skript löscht nichts in der Photoshop Datei. Es sucht nur nach Raw Data die ein abnormales Verhalten aufweisen kann und löscht sie. Die Photoshop Datei bleibt (jedenfalls in Photoshop 2019) komplett unverändert. Wer das Skript nicht direkt auf seinen .psd Dateien benutzen möchte, kann es auch auf die exportieren Dateien anwenden, da diese abnormal hohe Anzahl an DocumentAncestors mit auf die gespeicherten Dateien übertragen wird (was eine 800kb Datei ganz schnell 15 - 30mb groß machen kann).


    Deine angegebene Seite komprimiert Bilder verdammt stark. Sie tut nicht das Selbe wie das Skript. Zudem kommt deine Seite mit solchen verbuggten Dateien leider überhaupt nicht zurecht:

    Bitte melden Sie sich an, um dieses Bild zu sehen.


    Die Rede ist von dieser Information (die nicht in eine .png gehört), die bis zu 100000+ Zeilen lang sein kann:
    Bitte melden Sie sich an, um dieses Bild zu sehen.


    Du kannst mir aber gerne nochmal auf eine andere Art erklären, wovon du redest. Ich habe nämlich nicht ganz verstanden, was du in deinem Post meinst. Die erwähnte Angewohnheit in deinem Post die Photoshop haben soll, scheint mein Photoshop nicht zu haben. Vielleicht meintest du das aus einer technischen Perspektive, ich bin mir da nicht ganz sicher.


    Hier nochmal mehr Informationen zum Skript:

    Bitte melden Sie sich an, um diesen Link zu sehen.

    Ich fände es schöner, wenn der Spieler die Möglichkeit hat zu entscheiden, ob der Count angezeigt wird oder nicht. Sonst muss man das Item immer in ein einzelnes Splitten um es dann im Chat nutzen zu können, da Käufer sonst denken, dass alle verkauft werden. Ich hoffe, das macht Sinn haha Vielleicht ein kleines Popup Fenster, wo man flott eine von zwei Versionen auswählen kann. In den Spieloptionen könnte man dem Spieler die Möglichkeit für Auswahlmenü, Mit Count, Ohne Count geben. Oder Alt + Linksklick für ohne Count, Alt + Rechtsklick für mit Count. Aber vielleicht würde das auch den Rahmen des Releases sprengen.


    Danke für den Release!

    Kannst du nicht einfach den Part highlighten, wo der Core Downer enthalten ist oder erklären, wie genau der Core Downer zustande kommt? Das Thema hätte sich doch schon längst mit deinem ersten Post erledigt haben können. Bisher meckerst du nur über einen Core Downer und postest Code, wo er sich befinden soll, kannst aber nichts nachweisen.

    Aber das macht doch jetzt wirklich keinen Sinn mehr. Dann könnte man doch das selbe zu absolut jedem einzelnen Release sagen, egal wie bekannt der Releaser ist. Das passiert aber eben nicht. Du schreibst nicht unter jedem Release in diesem Forum, dass es sich um einen Core Downer handelt / handeln könnte. Der Release hat 70+ Likes in dem genannten Forum, natürlich nutzen die Leute es. Du hast sehr günstig folgendes Q & A aus dem Thread nicht erwähnt:


    Zitat von Amun

    Q: It's not working for me. Support?

    A: Only in the topic(when I have time), don't fucking message me.


    Wenn es also bei 70+ Leuten (Likes) eine Auffälligkeit gab, wäre diese 100% in dem Beitrag zu finden gewesen. Der eigentlich richtige Schritt in eurem Fall wäre gewesen, das System zu testen und dann erst in den Thread zu schreiben, dass ihr euch sicher seid, dass es sich um einen Core Downer handelt. Und wenn dies jemand von euch getan hat und es wirklich stimmt, nehme ich gerne alles wieder zurück.


    Ich verstehe eure Sorgen. Aber es wirkt nur noch wie willkürlicher Hass gegen Leute die in Vergangenheit vielleicht mal seltsam aufgefallen sind. Ich habe eine Hand voller Leute im Kopf, die hier immer wieder durch sinnlosen Hass (fast schon irgendwie spaltender toxicity) auffallen und das schadet der Community mehr als ein potentieller Core Downer der bisher, mit spezifisch diesem Release, überhaupt nicht in Frage kam.


    Ich verstehe nicht, was euer Ziel ist.

    Aber es war doch erst seit dem Aufklärungspost von Deyth keine Vermutung mehr. Davor war nicht einmal die Rede davon, dass sich wirklich ein Core Downer in dem Code befindet.


    Es handelt sich hier um diesen Release und der ist aus M2Dev: Bitte melden Sie sich an, um diesen Link zu sehen.

    Und dieser Release kommt von einem Contributor. Dort steht nichts von einem Core Downer. Es handelt sich wahrscheinlich gar nicht um einen Core Downer.

    Ich gönne es jedem, der Code in seinen Server einfügt, ohne es überprüfen zu lassen. Dass solche Angriffsflächen wie der Name und das Passwort ausgenutzt werden, ist auch einfach nur noch ein trauriges Statement. Könnt ihr nicht lesen? Ladet ihr euch wirklich Code runter, ohne den Thread vernünftig durchzulesen? Wenn euch das Wohl des Forums so wichtig ist, arbeitet doch lieber mit Snus und nicht kollektiv gegen ihn.


    Edit: Ist es aktuell nicht nur eine Vermutung, dass ein Core Downer enthalten ist? Riecht auch wieder echt fishy.

    Ich kann mir auch vorstellen, dass sowas ziemlich einfach zu umgehen ist. Man müsste die .dll nicht mal reversen. Man muss nur die Requests abfangen und hat schon die URL mit allen legitimen Keys und dann nutzt man einen der Keys für sich.


    Ich hatte auch vor kurzem die Idee irgendwo aufgebracht. Kurz daraufhin habe ich es aber für völlig schwachsinnig empfunden, jedenfalls für Systeme. Kleine Software abzusichern ist deutlich einfacher. Dann wäre da noch das Problem mit der Seriosität. Wenn ich ein System verpackt in einer .dll kaufe, werde ich diese .dll an jemanden zur Überprüfung senden. Mir ist absolut egal, ob das erlaubt ist oder nicht. Und niemand möchte Code einbauen (besonders in dieser Szene, ignorieren wir mal die Cashgrabs), von dem er nicht mal weiß, ob er gut ist. Exploits könntest du nicht mehr selbst fixen und dann steht noch die Kompatibilität mit deinem existierenden Code in Frage. Wenn du nur die Lizenzierung per .dll managen möchtest, kannst du es eigentlich auch weglassen.


    Eine Möglichkeit wäre es, Code für jeden Kunden etwas umzugestalten. Wenn der Kunde das System dann veröffentlicht, weißt du genau, welcher Kunde das war und dem sendest du dann keine zukünftigen Updates mehr. Das ist Argument genug, um das System weiterhin bei dir einzukaufen.

    I think you could skip the ServerBoard, if you just put self.__OnClickSelectServerButton() at the end of the __OpenServerBoard() function. It would be too much work right now to delete the board completly for you. The ServerBoard sets important variables, so you can't just delete it. You need to set those variables while connecting instead, if you want to delete it.

    Es gibt eine Möglichkeit, jedoch ist sie nicht perfekt. Man kann es sicherlich deutlich besser umsetzen, jedoch habe ich damit sehr angenehm gearbeitet. Du solltest nur darauf achten, dass du im Destructor deiner Klasse wirklich alles zerstörst was zerstört werden kann, sonst wird es nach dem 10ten oder 20ten Reload unangenehm ruckelig.


    1. mtdbg.py irgendwo hinschieben (ich habe ihn im lib Ordner)
    2. Das hier oben bei den Imports in der Game.py einfügen:
      1. import imp
      2. mtdbg = imp.load_source('mtdbg', 'lib/mtdbg.py')
      3. import mtdbg
    3. Verschieb deine Python Datei aus dem root Ordner in den Ordner wo die Binary liegt
    4. Im Key-Press Dict in der Game.py folgendes einfügen (mit deinem Wunsch Reload-Key, aktuell ist es F5):
      1. onPressKeyDict[app.DIK_F5] = lambda : mtdbg.LoadFile("pfad_zu_deiner_python_datei.py", "DeinKlassenName")
    5. Im Spiel deine gewählte Taste drücken, um die Klasse neu zu laden

    Dateien

    • mtdbg.py

      (594 Byte, 8 Mal heruntergeladen, zuletzt: )