Einfach mal ne fremde binary ausführen... Nice try! Kb die zu reverse engineern aber das Potenzial, dass da jemand eure Daten abgreift wäre mir persönlich zu groß.
Beiträge von notapimp
-
-
Wie schafft man es in so ein Tool so viele potenzielle Viren einzubauen? Bitte melden Sie sich an, um diesen Link zu sehen.
21/62 ist mir ehrlich gesagt zu heiß um das auszuführen^^
-
Könntest noch die icon_list Einträge mitgenerieren und sogar (wenn du Lust hast in der UI bisschen mit Imagemanipulation zu spielen) einen kleinen Icon Designer / Umfärber einbauen. Hier wurde ja mal sowas released, vielleicht kannste den Entwickler davon ja anhauen und das bei dir integrieren.
-
Ich rate dir stark davon ab, aber um möglichst anonym zu bleiben:
- Keinerlei alte Accounts benutzen
- niemandem von deinem Server in RL erzählen bzw. nicht erwähnen dass/wie viel Geld du damit machst
- nicht über WhatsApp bzgl. Server kommunizieren oder anonyme SIM-Karte besorgen
- PC komplett platt machen und alles neu installieren
- Festplatte komplett verschlüsseln (VeraCrypt wurde ja schon genannt)
- ausschließlich mit VPN ins Internet gehen
- VPN, der wirklich nicht loggt benutzen
- VPN Anbieter anonym bezahlen (best case Crypto, zur not auf epvp oder so ne PSC mit Crypto kaufen und damit den VPN bezahlen)
- Auscashservice benutzen bei dem du anonym bleibst
- Server anonym hosten (bspw. über Strohmann oder mit Fake Daten / Fake Ausweis whatever)
- Proxy vor wirklichen Server schalten (damit keiner dich anscheißen kann weil du Fake Daten für eigentlichen Server benutzt)
Ist mir spontan so eingefallen, gibt bestimmt noch mehr was man beachten muss. Wenn du wirklich 100% sicher sein willst: Lass es. Mittlerweile echt zu gefährlich und lohnt nicht. Die meisten fliegen btw. wegen ihrem Zahlungsanbieter auf die Fresse und nicht weil die GF wirklich nach ihnen sucht.
-
Du könntest natürlich auch die docker.compose.yaml noch zum Download zur Verfügungen stellen und man müsste nur noch docker installieren. Nette Idee und gerade dann nützlich, wenn man öfter zwischen verschiedenen Entwicklungsumgebungen (und damit SQL-Schemas) wechseln muss.
Der Quellcode wurde Bereitgestellt, ein simples Copy Paste sollte nicht zuviel Arbeit sein mMn.
No Front by the way.
Aber die Metin2 Community wollte schon immer fürs nix tun am meisten haben.
Eben - und deshalb wird es keiner benutzen wenn er sich dafür noch anstrengen/selbst denken muss. Und das ist schade, da der TE damit seine Zeit "verschwendet" hat. Mir persönlich ist das total egal ob das wer nutzt oder nicht.
-
Du könntest natürlich auch die docker.compose.yaml noch zum Download zur Verfügungen stellen und man müsste nur noch docker installieren. Nette Idee und gerade dann nützlich, wenn man öfter zwischen verschiedenen Entwicklungsumgebungen (und damit SQL-Schemas) wechseln muss.
-
Nette Idee, man könnte auch noch den Radius abhängig vom Skilllevel machen (gerade interessant für bpsw. Server mit L-Skills). Und für den Ottonormalverbraucher solltest du wahrscheinlich auch noch einen Empire-Check mit einbauen, da durchschnittliche Metin-Spieler niemanden aus anderen Reichen buffen will.
-
Das ist doch von der Funktionalität identisch und nur die UI sieht anders aus, oder? Das kann dir für ein paar € bestimmt jemand für das public System auch nachbauen.
-
Ehrlicherweise glaube ich nicht, dass ein Konzept wie Calypso2 oder Harmonia2 heute noch ziehen würde. Das gab es schon zu oft und der Content ist sehr begrenzt. PvP gibt es heute kaum noch, da die Server nicht voll genug sind bzw. die ersten schon aufhören wenn die letzten vom Serverstart im Highlvl angekommen sind.
Ich denke jedoch, dass gerade der Name die Leute anzieht. Siehe Takania2. Der Server ist für heutige Standards auf einem extrem niedrigen technischen Niveau und hat dennoch mehr Spieler als viele andere Server. Alleine wegen des Namens und aufgrund des Rufes von Dean in der Szene: Die Konzepte sind (scheinbar) ganz brauchbar und die technischen Mängel stören nicht zu sehr, als dass sie die User den Server verlassen ließen.
-
Da sind ein paar coole Ideen dabei. Sehe auch kein Problem darin sich an anderen Games wie PoE zu bedienen.
Kannst du das mit dem Lager noch mal genauer erklären?
Man hat einen NPC zum beispiel eine Kiste "weil den Lagerverwalter find ich einfach nur absolut langweilig" , dort hat man wie zuvor auch die Lagertruhenfächer, Nur mit dem zusatz dass man die möglichkeit hat nun auf Kategorie buttons zu drücken wo dann anstatt eines normalem Lagerfachs ein Fach ist welches man quasi vom Server aus vordefiniert
Bitte melden Sie sich an, um diesen Anhang zu sehen.
Ja meine paintdesignes sind onpoint ich weiß,
da haste halt Lagerseite I - III und beispiel ne Kategorie für Uppitems eins für Waffen und Rüstungen und co und kann bei dem + noch weitere Erwerben
geht man beispielsweise auf Uppitems haste das quasi so wie oben abgebildet , man hat ein Feld mit Lauter fächer wo ausgegraut die Items abgebildet sind, die kann man dann beispielsweise mit shift linksklick reinstacken oder reinziehen, jedoch ist die Stackgröße bei der Truhe größer als das maximum: Beispiel ist die maximale stackgröße auf dem Server 500 geht in das lagerfach mehr wie 500 rein, kp als beispiel 100.000 , man kann aber nur maximal 500 rausholen immer,
Für Waffen und Rüstungen hätte ich quasi wie eine Tabelle angelegt, ich mach mal 2 Beispiele für so GUI evt kann man sich das ganze besser vorstellen
Bitte melden Sie sich an, um diesen Anhang zu sehen.´
würde man über die items drüberhovern könnte man natürlich die bonis einsehen, mit Shift linksklick könnte man die Items aus seinem Inventar richtig einsortieren und genauso wieder rausholen
Bitte melden Sie sich an, um diesen Anhang zu sehen.
ich denke so kann man sich das ganze in Etwa vorstellen
Ist das nicht im Prinzip einfach nur eine Erweiterung der sog. Special Storages mit einer nutzerdefinierten Sortierung?
-
Isn't that pretty similar to the Eventfunc from Metin2 Source? At least the semantics, your syntax looks much more appealing! Thanks
-
Als Testserver würde ich immer lokal auf Windows arbeiten. Das geht mit Abstand am schnellsten und vorallem wenn man am Source arbeitet sehr sinnvoll.
Ansonsten ist es eigentlich egal wo du mit einem Testserver hingehst. Hetzner bietet sich an, fastpipe, blazingfast geht alles klar. Allerdings solltest du dir im Klaren sein, dass du einen Hoster brauchst bei dem du anonym bleiben kannst, wenn du live gehst.
-
Sehr gute Arbeit! Vielleicht willst du auch einen Area Trigger programmieren? Ich kenne mich leider nicht so gut mit Metin2 Triggern oder gar Questen aus, aber wäre eine nette Idee Vielleicht gibt es sowas auch schon?
Formel (kann man sicherlich vereinfachen):
Anwendung:
Hi,
das ist tatsächlich ein bisschen größerer Aufwand, da man sich ein gutes Konzept überlegen müsste, sodass der Trigger nicht gespamt wird. Beim Item Drop ist das ein bisschen einfacher: Sobald ein Item Drop Packet gesendet wird, kann der Trigger gecalled werden. Bei dem von dir beschriebenen Trigger muss man aufpassen, denn: Wenn man bei jedem Move-Packet, das in der angegebenen Zone stattfindet einen Quest-Trigger auslöst, flooded man den eigenen Server. Ich werde das ggf. in Zukunft mal angehen aber das geht definitiv nicht so leicht von der Hand wie der hier vorgestellte Trigger.
-
Special Storage, Channel Changer, Kostüme für alle Waffen (oder Transmutation, in 2023 will jeder so in Metin2 rumlaufen wie er Bock hat), Sanii Switchbot, Dungeon Timer, Stacks über 200 Items, Max Yang, Ingame Wiki, Pickup-Filter
-
Bitte melden Sie sich an, um dieses Medienelement zu sehen.
-
Moin,
in der Shoutbox hat sich das jemand gewünscht, also here you go. Eine kleine Beispielquest hab ich auch geschrieben und wie man das benutzen kann seht ihr im GIF. Man könnte also Spieler dazu bringen, dass sie ein bestimmtes Item innerhalb einer Zone auf den Boden werfen, um bspw. in einem Dungeon etwas zu triggern oder so. Ich hab als Beispiel eine Quest geschrieben bei der der Spieler ein Osterei in die große Safezone im blauen Reich Map1 werfen muss.
Bitte melden Sie sich an, um dieses Bild zu sehen.
Server Source Part:
In common/service.h
einfügen
In game/questmanager.cpp
nach
suchen und darunter
einfügen.
In der gleichen Datei nach
suchen und DARÜBER
Code- #ifdef DROP_ITEM_QUEST_TRIGGER bool CQuestManager::DropItem(unsigned int pc, LPITEM item) { if (test_server) sys_log(0, "questmanager::DropItem Start : itemVnum : %d PC : %d", item->GetOriginalVnum(), pc); PC* pPC; if ((pPC = GetPC(pc))) { if (!CheckQuestLoaded(pPC)) { return false; } SetCurrentItem(item);
- return m_mapNPC[item->GetVnum()].OnDropItem(*pPC); } else { sys_err("QUEST DROP_ITEM_EVENT no such pc id : %d", pc); return false; } }
- #endif
einfügen
In game/questmanager.h nach
suchen und darunter
einfügen
in game/questnpc.cpp nach
suchen und DARÜBER
einfügen.
in game/questnpc.cpp nach
suchen und darunter
einfügen.
In game/quest.h
suchen und DARÜBER
einfügen
In game/char_item.cpp nach
suchen und darunter
ACHTUNG: Mit der letzten Änderung funktioniert dieser Quest-Trigger nur für Items mit dem Typ ITEM_QUEST bzw. 18. Solltet ihr das für alle Items machen wollen, entfernt einfach die Zeile
bzw. macht
aus dem Code.
Ich empfehle euch dies jedoch nicht zu tun, da ich nicht sicher sagen kann ob das zu Problemen im Livebetrieb mit vielen Spielern führt. Wenn ihr die Überprüfung entfernt wird für JEDES Item, das ein Spieler auf den Boden wirft überprüft, ob das zu einer Quest gehören und diese Triggern könnte. Aufpassen!Beispiel-Quest:
Code- quest dropegg begin
- state start begin
- when login begin
- send_letter("Quest Example")
- end
- when button or info begin
- say("Du musst bitte unbedingt ")
- say_item_vnum(50165)
- say("in die Safezone von Map1 blau schmeissen!")
- say("ES GEHT UM LEBEN UND TOD")
- end
- when 50165.drop begin
- local isMap1Blue = pc.get_map_index() == 41
- local xMatches = pc.get_local_x() >= 357 and pc.get_local_x() <= 403
- local yMatches = pc.get_local_y() >= 626 and pc.get_local_y() <= 663
- if isMap1Blue and xMatches and yMatches then
- say_title("Das hast du krass gemacht, Kollege!")
- end
- end
- end
- end
Viel Spaß. Den Thread zu erstellen hat btw. länger gedauert als den Quest-Trigger...
-
Sieht so sehr viel umständlicher aus als es aktuell mit der refine proto is
Ist es auch. Um das ganze logisch & vereinfachter umzusetzen müsste man first of all Groups erstellen können.
Bspw.Code- # Refineset - VNUM - Count - Vnum - Count- Vnum - Count - Vnum - Count - Percentage - Cost - Type
- Group Refineset
- {
- [1001, 50034, 10, 50035, 15, 50036, 20, 50037, 25, 100, 50000, 1] # 1 e.g blackmsith
- [1002, 50034, 20, 50035, 25, 50036, 30, 50037, 35, 90, 75000, 2] # 2 e.g magic stone
- [1003, 50034, 25, 50035, 30, 50036, 35, 50037, 40, 80, 100000, 3] # 3 e.g blessing scroll
- }
- # Refine to Item
- # Version 1
- Group 1Hand
- {
- [1001, 186, 187]
- [1002, 187, 188]
- [1003, 188, 189]
- }
- # Version 2
- Group 1001
- {
- [186, 187]
- }
- Group 1002
- {
- [187, 188]
- }
- Group 1003
- {
- [188, 189]
- }
Was ist denn unlogisch an meiner Idee? Es geht doch gerade darum, dass man NICHT mehr die aktuelle Struktur braucht, sondern eine logischere, intuitivere Struktur hat und das ganze imperativ beschreiben kann. Im Moment folgt die Semantik hinter dem Uppsystem der Struktur, ich würde die Struktur der Semantik folgen lassen wollen. Genau darum geht es ja hier.. Ich würde das gerne intuitiver und damit einfacher machen und nicht einfach nur die syntaktische Struktur ändern.
-
Denke er meint sowas wie die Portale auf Celestial world, bzw. Rifts in Diablo sollten genauso funktionieren.
Der nimmt die Zeit und je mehr Restzeit vorhanden ist, desto mehr Stufen bekommst du auf deine Portale.
Sollte gehen, automatisierte PvP Turniere gibts an sich schon länger, siehe Aeldra, Astra, etc.
Die Frage ist, ob es nur in Lua geschrieben wurde Das ewig alte Duell System von Vegas ist ja auch fast komplett in C++ geschrieben
Auf SG gabs 2012 schon ein 100% lua-basiertes PvP-Event. Geschrieben von musicinstructor. Budokan oder so hieß das, hat nice funktioniert für die damaligen Möglichkeiten
-
Kannst dich mal bei mir melden
-
Moin,
beschäftige mich Privat aktuell mit DSLs (= Domänenspezifische Sprachen) und mich fuckt das Metin2 Uppsystem schon immer ab. Die Art wie das alles definiert werden muss mit den refine-sets und so ist einfach unendlich nervig. Daher meine Frage: Hätte die Community Interesse an einer kleinen DSL mit der man viel angenehmer das Uppsystem runterschreiben kann?
Würde dann so aussehen, dass es eine Config in folgender Art gibt: (die "// " sind als Kommentare zu lesen und bieten nur eine kleine Erklärung)
Code- [10, 20] -> [11, 21] { // gruppen von items, d.h. 10 uppt mit untenstehenden Items/Gold zu 11, 20 zu 21 etc. erlaubt wiederverwendung von einer Definition für mehrere Items
- gold: 10000 //yangkosten
- type: smith //typ wo geuppt wird, bspw. noch sura als anderen typ
- chance: 100%
- items: [ // die Uppitems, die benötigt werden x count
- 19x3,
- 29x1
- ]
- }
Da das schon bisschen Arbeit ist wollte ich vorher mal abfragen ob es dafür Interesse gibt. Ein entsprechendes "Standard Uppsystem" würde ich dann wohl auch zur Verfügung stellen. Denkbar wäre auch, dass das zusätzlich parallel zur refine_proto läuft und für neue items benutzt wird (bzw. Priorität hat und für alte refine_sets überschreibt).
EDIT: Kleines Beispiel, weil meine Butterbirne gemerkt hat, dass dieser Thread bisschen unverständlich ist:
Bitte melden Sie sich an, um dieses Bild zu sehen.würde in der Sprache so aussehen:
und wenn man bspw. Grolli noch dazunehmen will in die gleiche "Gruppe":
Eure Meinung würde mich mal interessieren,
Gruß