So, ich erkläre mal paar Sachen die ich so am Source gemacht habe.
1.
dFlyFF Schrift.
Da ich immerwieder häufiger gefragt werde "wie geht offi Schrift bla bla bla...." zeig ichs euch mal..
Ihr geht einfach in... den Neuz Ordner und sucht nach
WinMain.rc
Dort sucht ihr nach
Code:
STRINGTABLE DISCARDABLE
Ihr seht:
Quote:
STRINGTABLE DISCARDABLE
BEGIN
IDS_SERVER_IP "127.0.0.1" -> IP.
IDS_LANG "6" -> LANG
IDS_SUBLANG "1" -> 2te LANG wenn erste nicht funktioniert..
IDS_ENCRYPTPWD "1" -> das, das Passwort beim Login encyptet wird.
IDS_FAKEFULLMODE "1" -> ?
IDS_MSGVER "1815816464" -> MSG_VER (Muss in Accountserver.ini und LoginServer.ini gleich sein)
IDS_CACHE_PORT "15400" -> Cache Port
IDS_SHOUTLIMIT_SECOND "5000" -> Wielang es dauert bis ihr das nächste mal wieder Shouten könnt..
IDS_SHOUTLIMIT_COUNT "7" -> Wie oft ihr hintereinander Shouten könnt...
IDS_CODEPAGE "1252" -> Ka? xD
IDS_2ND_PASSWORD "0" -> Bankpasswort bestätigung beim Login.
END
|
Nur das Rote ist wichtig für uns...
Da muss eine 6 stehen, denn 6 steht für _GER (Guckt PropLang.txt).
Danach gehen wir neuz.cpp und sucht nach
Ihr seht:
Quote:
void CNeuzApp::HashMD5( char* szResult, LPCTSTR szPWD )
{
char szBuffer[256];
char* szKey = "";
#ifdef __INTERNALSERVER
switch( LANG_KOR )
#else // __INTERNALSERVER
switch( ::GetLanguage() )
#endif // __INTERNALSERVER
{
case LANG_JAP:
szKey = "chanho_park";
break;
case LANG_TWN:
szKey = "omg";
break;
case LANG_HK:
szKey = "tpgk";
break;
case LANG_ENG:
szKey = "kikugalanet";
break;
case LANG_KOR:
szKey = "@FLYFF";
break;
case LANG_GER:
szKey = "kikugalanet";
break;
case LANG_SPA:
szKey = "rlawnsgud";
break;
case LANG_POR:
//szKey = "rlawnsgud";
szKey = "kikugalanet"; //chipi_090520 05/22부터 암호화키 변경
break;
case LANG_FRE:
szKey = "gjgusdbfjq";
break;
case LANG_VTN:
szKey = "dlrjsdn";
break;
case LANG_RUS:
szKey = "rlaansrms";
break;
}
|
Das ist der Salt, den ihr bracht für LANG_GER ändert ihn einfach kikugalanet.
Compilt eure Neuz.exe neu, und loggt euch ein.
ACHTUNG:
Wenn euer Background Weiß ist, wenn ihr beim Login Bildschirm seid, dann geht in den Clientordner, Theme dort findet ihr dann sicherlich einen Ordner der "English" heißt, nennt ihn einfach German und dann hat sich die Sache

.
2.
BOW - Damage zur ProbJob hinzufügen.
Wie wir alle wissen, gibt es in der probjob kein BOW DMG ist manchmal schon bisschen blöd wenn man den DMG etwas erhöhen möchte...
Also, als erstes öffnen wir MoverAttack.cpp und suchen nach:
Quote:
Quote:
case JOB_PROP_SWD:
return pProperty->fMeleeSWD ;
case JOB_PROP_AXE:
return pProperty->fMeleeAXE;
case JOB_PROP_STAFF:
return pProperty->fMeleeSTAFF;
case JOB_PROP_STICK:
return pProperty->fMeleeSTICK;
case JOB_PROP_KNUCKLE:
return pProperty->fMeleeKNUCKLE;
case JOB_PROP_WAND:
return pProperty->fMagicWAND ;
case JOB_PROP_YOYO:
return pProperty->fMeleeYOYO;
case JOB_PROP_BOW:
return pProperty->fMeleeBOW;
case JOB_PROP_BLOCKING:
return pProperty->fBlocking;
case JOB_PROP_CRITICAL:
return pProperty->fCritical;
|
dann den roten Text hinzufügen^^
dann sucht ihr weiter in der MoverAttack.cpp nach:
Quote:
|
nATK = (int)( (((GetDex()-14)*4.0f + (GetLevel()*1.3f) + (GetStr()*0.2f)) * 0.7f) );
|
dann findet ihr:
Quote:
case WT_RANGE_BOW:
nATK = (int)( (((GetDex()-14)*4.0f + (GetLevel()*1.3f) + (GetStr()*0.2f)) * 0.7f) );
break;
|
zum erhöhen vom BOW DMG pro Dex einfach 4.0 ändern. Zum ändern vom BOW Dmg pro Str einfach 0.2 ändern...
wenn ihr den BOW Dmg zur probjob.inc hinzufügen wollt, dann müsst ihr es einfach durhc das hier ersetzen..
Quote:
case WT_RANGE_BOW:
nATK = ((int)( float(( GetDex() - 14 ) * GetJobPropFactor(JOB_PROP_BOW)) + (GetLevel()*1.3f) + (GetStr()*0.2f)) * 0.7f) );
break;
|
dann öfffnet ihr ProjectCmn.h
und sucht nach
Quote:
ihr werdet das hier finden:
Quote:
// 직업에 따른 factor ENUM
enum JOB_PROP_TYPE
{
JOB_PROP_SWD,
JOB_PROP_AXE,
JOB_PROP_STAFF,
JOB_PROP_STICK,
JOB_PROP_KNUCKLE,
JOB_PROP_WAND,
JOB_PROP_BLOCKING,
JOB_PROP_BOW,
JOB_PROP_YOYO,
JOB_PROP_CRITICAL,
};
|
dann den roten Text hinzufügen...
dann sucht ihr weiter in ProjectCmn.h nach:
Quote:
dann findet ihr:
Quote:
// 직업에 따른 프로퍼티 ( propJob.inc에서 읽어들임 )
struct JobProp
{
float fAttackSpeed; //공속
float fFactorMaxHP; //최대 HP 계산에 사용되는 factor
float fFactorMaxMP; //최대 MP 계산에 사용되는 factor
float fFactorMaxFP; //최대 FP 계산에 사용되는 factor
float fFactorDef; //물리 방어력 계산에 사용되는 factor
float fFactorHPRecovery; //HP회복 factor
float fFactorMPRecovery; //MP회복 factor
float fFactorFPRecovery; //FP회복 factor
float fMeleeSWD; //WT_MELEE_SWD의 ATK factor
float fMeleeAXE; //WT_MELEE_AXE의 ATK factor
float fMeleeSTAFF; //WT_MELEE_STAFF의 ATK factor
float fMeleeSTICK; //WT_MELEE_STICK의 ATK factor
float fMeleeKNUCKLE; //WT_MELEE_KNUCKLE의 ATK factor
float fMagicWAND; //WT_MAGIC_WAND의 ATK factor
float fBlocking; //블록킹 factor
float fMeleeYOYO; //요요의 ATK factor
float fCritical; //크리티컬 처리
float fMeleeBOW;
};
|
dort müsst ihr dann den rot makierten Text adden...
dann öffnet ihr Project.cpp und sucht nach:
Quote:
ihr werdet das hier finden:
Quote:
JobProp* pProperty = &m_aPropJob[nJob];
pProperty->fAttackSpeed = scanner.GetFloat();
pProperty->fFactorMaxHP = scanner.GetFloat();
pProperty->fFactorMaxMP = scanner.GetFloat();
pProperty->fFactorMaxFP = scanner.GetFloat();
pProperty->fFactorDef = scanner.GetFloat();
pProperty->fFactorHPRecovery = scanner.GetFloat();
pProperty->fFactorMPRecovery = scanner.GetFloat();
pProperty->fFactorFPRecovery = scanner.GetFloat();
pProperty->fMeleeSWD = scanner.GetFloat();
pProperty->fMeleeAXE = scanner.GetFloat();
pProperty->fMeleeSTAFF = scanner.GetFloat();
pProperty->fMeleeSTICK = scanner.GetFloat();
pProperty->fMeleeKNUCKLE = scanner.GetFloat();
pProperty->fMagicWAND = scanner.GetFloat();
pProperty->fBlocking = scanner.GetFloat();
pProperty->fMeleeYOYO = scanner.GetFloat();
pProperty->fCritical = scanner.GetFloat();
pProperty->fMeleeBOW = scanner.GetFloat();
|
Den rot makierten Text einfach hinzufügen....
Letzter Teil des Guides, geht in Probjob.inc und addet dort:
Quote:
BOW
5.0
5.0
5.0
5.0
5.0
5.0
5.0
5.0
5.0
5.0
5.0
5.0
5.0
5.0
5.0
5.0
5.0
5.0
5.0
5.0
5.0
5.0
5.0
5.0
5.0
5.0
5.0
5.0
5.0
5.0
5.0
5.0
|
Der Wert ersetzt dann die 4.0f in der Formel...
Werde noch mehr Guides schreiben, aber das reicht glaub erst mal...
[Noch zu mir ich kann GARKEIN C++ fals etwas falsch sein sollte bitte sagen]
Dieser Guide ist 100% von mir. Fals ihr den Guide iwo anders finden solltet dann sollte er von "Mentus" (mein anderer Nick) gepostet sein.