|
You last visited: Today at 14:14
Advertisement
Turmschmiede in anderen Maps einsetzen
Discussion on Turmschmiede in anderen Maps einsetzen within the Metin2 Private Server forum part of the Metin2 category.
09/27/2014, 11:20
|
#1
|
elite*gold: 0
Join Date: Apr 2010
Posts: 2,032
Received Thanks: 734
|
Turmschmiede in anderen Maps einsetzen
Guten Morgen liebe Com,
Ist es möglich, die Dämonenturm-Schmiede in anderen Maps
funktionsfähig zu spawnen? Ich hab den Schmied mithilfe einer
Quest spawnen lassen. Die Questflag "can_refine" habe ich auch mit
eingebaut und trotzdem steht, ich kann keine weiteren Gegenstände aufrüsten.
Welche Möglichkeiten bleiben mir? Damit ich meine Quest nicht in den Papierkorb
legen muss?
Die Core bearbeiten könnte ich zwar auch, doch finde keine Funktion, die mich jetzt direkt daran hindert zu uppen.
Pseudocode der Core (Funktion)
PHP Code:
char __cdecl CInputMain__Refine(int a1, int a2, int a3) { char *v3; // eax@2 unsigned __int8 v5; // cl@12 int v6; // ecx@18 int v7; // ebx@18 int v15; // ecx@20 int v23; // [sp+1Ch] [bp-6Ch]@11 char v24; // [sp+20h] [bp-68h]@21 int v25; // [sp+30h] [bp-58h]@20 char v26; // [sp+40h] [bp-48h]@20 char v27; // [sp+50h] [bp-38h]@18 int v28; // [sp+60h] [bp-28h]@18 if ( *(_DWORD *)(a2 + 3284) || *(_BYTE *)(a2 + 3712) || *(_DWORD *)(a2 + 3280) || *(_DWORD *)(a2 + 3272) || *(_DWORD *)(a2 + 2984) ) { v3 = locale_find("â°í,°Å·¡Ã¢µîÀÌ ¿*¸° »", g_iUseLocale); CHARACTER__ChatPacket(a2, 1, v3); LABEL_3: LOBYTE(_EAX) = CHARACTER__ClearRefineMode(a2); return _EAX; } if ( *(_BYTE *)(a3 + 2) == -1 ) { sys_log(0, "DoRefine cancel"); goto LABEL_3; } LOBYTE(_EAX) = *(_BYTE *)(a3 + 1); if ( (_BYTE)_EAX <= 0x5Au ) { _EAX = CHARACTER__GetItem(a2, _EAX); v23 = _EAX; if ( _EAX ) { *(_DWORD *)(a2 + 3716) = thecore_pulse(); sys_log( 0, "DoRefine type %d item %s", *(_BYTE *)(a3 + 2), ((*(_DWORD *)(v23 + 56) == 0) - 1) & (*(_DWORD *)(v23 + 56) + 29)); v5 = *(_BYTE *)(a3 + 2); if ( v5 ) { LOBYTE(_EAX) = v5 - 2; if ( (unsigned __int8)(v5 - 2) <= 1u || v5 == 5 || v5 == 6 ) { sys_log(0, "DoRefine type %d item %s", v5, ((*(_DWORD *)(v23 + 56) == 0) - 1) & (*(_DWORD *)(v23 + 56) + 29)); LOBYTE(_EAX) = CHARACTER__DoRefineWithScroll(a2, v23); } else { if ( v5 == 4 ) { std__string__string(&v28, "deviltower_zone.can_refine", &v27); v7 = CHARACTER__GetQuestFlag(a2, (int)&v28); _EDX = -1; _EAX = v28; v6 = v28 - 12; __asm { lock xadd [eax-4], edx } if ( _EDX <= 0 ) std__string___Rep___M_destroy(v6, &v26); if ( v7 ) { CHARACTER__DoRefine(a2, v23, 1); std__string__string(&v25, "deviltower_zone.can_refine", &v26); CHARACTER__SetQuestFlag(a2, (int)&v25, 0); _EAX = v25; _EDX = -1; v15 = v25 - 12; __asm { lock xadd [eax-4], edx } if ( _EDX <= 0 ) LOBYTE(_EAX) = std__string___Rep___M_destroy(v15, &v24); } else { LOBYTE(_EAX) = CHARACTER__ChatPacket(a2, 1, "»ç±Í Ÿ¿"); } } } } else { sys_log(0, "DoRefine type 0 item %s", ((*(_DWORD *)(v23 + 56) == 0) - 1) & (*(_DWORD *)(v23 + 56) + 29)); LOBYTE(_EAX) = CHARACTER__DoRefine(a2, v23, 0); } } } return _EAX; } // 804C65C: using guessed type int __cdecl std__string__string(_DWORD, _DWORD, _DWORD); // 804CA2C: using guessed type int __cdecl std__string___Rep___M_destroy(_DWORD, _DWORD);
Die Quest ist soweit funktionstüchtig, das alles ausser das Uppen funktioniert.
Kann mir da jemand helfen?
Gruß, Endless
|
|
|
09/27/2014, 11:48
|
#2
|
elite*gold: 50
Join Date: Mar 2013
Posts: 2,401
Received Thanks: 1,613
|
Warum pseudocode? Wozu gibts source
Naja der spieler muss nen questflag gesetzt haben (ich glaube deviltower.can_refine = 1)
|
|
|
09/27/2014, 12:28
|
#3
|
elite*gold: 0
Join Date: Apr 2010
Posts: 2,032
Received Thanks: 734
|
Ich hab keine Ahnung wie ich nen Src von meiner Game bekomme.. ich bearbeite die daher mit IDA. Ich will diesen Questflag eig. entfernen, das auch ohne geuppt werden kann
|
|
|
09/27/2014, 12:43
|
#4
|
elite*gold: 50
Join Date: Mar 2013
Posts: 2,401
Received Thanks: 1,613
|
Code:
std__string__string(&v28, "deviltower_zone.can_refine", &v27);
v7 = CHARACTER__GetQuestFlag(a2, (int)&v28);
_EDX = -1;
_EAX = v28;
v6 = v28 - 12;
__asm { lock xadd [eax-4], edx }
if ( _EDX <= 0 )
std__string___Rep___M_destroy(v6, &v26);
if ( v7 )
{
die if( v7 ) fragt ab ob der deviltower_zone.can_refine auf 1 steht. Nop die if weg dann sollte es gehen
oder du änderst deviltower_zone auf bpsw deviltower_town.can_refine und nennst deine quest deviltower_town also oben bei
quest NAME begin
|
|
|
09/27/2014, 13:23
|
#5
|
elite*gold: 39
Join Date: Jun 2009
Posts: 500
Received Thanks: 212
|
Rate dir, die nicht wegzunoppen. Mach einfach ein "pc.setf("deviltower_zone", "can_refine", 1)" in deine Quest und fertig Außer du willst, dass man so oft uppen kann wie man will. Dann LET's NOP!
€dit: Kannst natürlich auch Questumbennen in deviltower_zone, würde es aber mit pc.setf regeln.
Kind Regards
|
|
|
09/27/2014, 16:09
|
#6
|
elite*gold: 0
Join Date: Apr 2010
Posts: 2,032
Received Thanks: 734
|
Habs ganz anders gemacht..
Habe in einer Willkommensquest
die Funktion "can_refine" als Flag gesetzt, anschließend die Game mitn Hexeditor bearbeitet und die "deviltower_zone" in "char_login_motd" benannt, damit die bytes in der Game bleiben.
Jetzt kann ich die Schmiede ÜBERALL verwenden. Danke an Lord Inya (:
|
|
|
|
Similar Threads
|
Portmaps von anderen Maps herrausfinden
05/19/2013 - Metin2 Private Server - 6 Replies
Hallo
Ich und ein Freund haben einen Metin2 P-Server erstellt.
Wir haben neue Farm Maps und so.
Wir haben aber jetzt das Problem das wir die Ports von den neuen Maps nicht wissen.
Daher wollte ich fragen ob jemand weis , wie man sie herausfinden kann.
Falls einer per TeamViewer helfen könnte sollte er mich zunächst in skype adden.
Meine skype Name ist : nicor7b
|
[HELP]Maps in anderen Client schieben?
09/19/2011 - Metin2 Private Server - 5 Replies
Hey leute möchte gerne aus dem Client von Computerkrank die Mapdateien in einen 2010er Client verschieben.
1. Frage: Geht das überhaupt oder ist unmöglich da es ja 2010er client ist?
2. Frage: Wenn es geht dan würde ich gern wissen welche Dateien aus dem Pack Ordner ich für die Maps in den 2010er Client verschieben muss? :confused:
Thx im vorraus!
|
Warrock kopiert die maps von anderen spielen?
04/23/2011 - WarRock - 40 Replies
Hallo com,
ich wolte mal fragen ob ihr zwischen den Warrock maps und anderen maps von anderen Ballerspielen auch ähnlichkeiten seht?
Ich mach mal ein Beispiel:
Die neuen map "California":
http://a5.sphotos.ak.fbcdn.net/hphotos-ak-snc6/21 6453_196712480371147_111150578927338_471450_750067 6_n.jpg
und der map von Call of Duty Black ops"Nuketown":
http://talonfast.com/wp-content/uploads/2011/03/N uketown41.jpg
oder der map "Beringia":
|
Portale führen zu anderen Maps
11/01/2010 - Metin2 Private Server - 8 Replies
Jo, Server gerade hochgebracht, 1.Problem aufgetaucht:
Portale von Eisland/Wüste/Orktal/Feuerland führen nicht zu dem Reich an dessen Reich das Teleportal angrenzt, sondern auf eine unbekannte Map, die nichtmal in den Serverfiles drinnen ist(WTF) und dementsprechend direkt auf die eigene Map 1 bzw Map2(vom Reich dem man angehört).
Wo kann ich einstellen, dass die Portale wieder in das dementsprechende Reich führen?
MfG RealFreak
|
Preise verdreifacht... auf anderen Maps.
09/05/2010 - Metin2 Private Server - 9 Replies
Wie ihr sicher wisst, wenn man OTM ist und eine Mischi Spawnt, sind die preise 3x so Hoch wie map1. Weißt einer von euch wie man das ausmachen kann ?
|
All times are GMT +1. The time now is 14:14.
|
|