diff options
50 files changed, 4061 insertions, 4061 deletions
diff --git a/doc/LICENCE_JA b/doc/LICENCE_JA index d630607..fcf6801 100644 --- a/doc/LICENCE_JA +++ b/doc/LICENCE_JA @@ -1,11 +1,11 @@ - GNU ęĘöOpř_ń - o[W2A1991N6 - ú{ęóA2002N520ú + GNU ä¸čŹĺ
ŹčĄĺŠç¨č¨ąčŤžĺĽç´ć¸ + ăăźă¸ă§ăł2ă1991ĺš´6ć + ćĽćŹčŞč¨łă2002ĺš´5ć20ćĽ Copyright (C) 1989, 1991 Free Software Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - ąĚpř_ńđAęęĺťĚÜÜÉĄťľĐzˇéąĆÍ¡éB - ľŠľĎXÍFßȢB + ăăŽĺŠç¨č¨ąčŤžĺĽç´ć¸ăăä¸ĺä¸ĺĽăăŽăžăžăŤč¤čŁ˝ăé ĺ¸ăăăă¨ăŻč¨ąĺŻăăă + ăăăĺ¤ć´ăŻčŞăăŞăă This is an unofficial translation of the GNU General Public License into Japanese. It was not published by the Free Software Foundation, @@ -14,311 +14,311 @@ that. However, we hope that this translation will help Japanese speakers understand the GNU GPL better. - (ó: ČşÍGNU General Public LicenseĚńöŽČú{ęóšBąęÍt - [\tgEFAŕc(the Free Software Foundataion)ÉćÁÄ\łę˝ - ŕĚĹÍČAGNU GPLđKpľ˝\tgEFAĚĐzđđ@IÉLřČ` - Ĺq×˝ŕĚĹÍ čÜšńBĐzđĆľÄÍGNU GPLĚpęĹeLXgĹ - wčłęĢéŕĚĚÝŞLřšBľŠľČŞçA˝żÍąĚ|óŞA - ú{ęđgpˇélXÉĆÁÄGNU GPLđćčÇđˇéŻĆČéąĆđ - ]ńŢܡB) - - |óÍ Şc^s<mhatta@gnu.org>ŞsÁ˝B´śÍ - http://www.gnu.org/licenses/gpl.txtĹ éBëóĚwEâüPÄđ˝}ˇ - éB - ÍśßÉ - -\tgEFAüŻCZXĚĺźÍA Č˝ŞťĚ\tgEFAđ¤Lľ˝ -čĎXľ˝čˇéŠRđD¤ć¤ÉÝvłęĢܡBÎĆIÉAGNU ęĘö -Opř_ńÍA Č˝Şt[\tgEFAđ¤Lľ˝čĎXľ˝čˇ -éŠRđŰءé--ˇČíżA\tgEFAŞťĚ[Uˇ×ÄÉĆÁÄt[ -Ĺ éąĆđŰءéąĆđÚIƾĢܡBąĚęĘöOpř_ń -Ít[\tgEFAŕcĚ\tgEFAĚŮĆńÇÉKpłęĨčAÜ˝ -GNU GPLđKpˇéĆß˝t[\tgEFAŕcČOĚěŇÉćévO -ÉŕKpłęĢܡ(˘ÂŠĚt[\tgEFAŕcĚ\tgEF -AÉÍAGNU GPLĹÍČGNU CuęĘöOpř_ńŞKpłę -ĢéąĆŕ čܡ)B Č˝ŕÜ˝A˛ŠŞĚvOÉGNU GPLđKp -ˇéąĆŞÂ\šB - -˝żŞt[\tgEFAĆž¤ĆŤAťęÍpĚŠRÉ¢ĞyľÄ -˘éĚĹ ÁÄAżiÍâčɾĢܚńB˝żĚęĘöOpř_ń -ÍA Č˝Şt[\tgEFAĚĄť¨đĐzˇéŠRđŰءéć¤Ý -vłęĢܡ(ó]ɜĝĚíĚT[rXÉčżđۡŠRŕŰŘł -ęܡ)BÜ˝A Č˝Ş\[XR[hđóŻćéŠA é˘Í]ßÎťęđ -üčˇéąĆŞÂ\Ĺ éƢ¤ąĆA Č˝Ş\tgEFAđĎXľAťĚ -ęđV˝Čt[ĚvOĹpĹŤéƢ¤ąĆAťľÄAČăĹq -×˝ć¤ČąĆŞĹŤéƢ¤ąĆŞ Č˝ÉmçłęéƢ¤ąĆŕŰŘł -ęܡB - - Č˝Ě đçé˝ßA˝żÍNŠŞ Č˝ĚLˇéąęçĚ đŰč -ˇéąĆâAąęçĚ đúüˇéć¤vˇéąĆđÖ~ˇéƢ¤§Ŕ -đÁŚéKvŞ čܡBćÁÄA Č˝Ş\tgEFAĚĄť¨đĐzľ˝ -čťęđĎXľ˝čˇéęÉÍAąęç̧ŔĚ˝ßÉ Č˝É éíĚÓ -CŞśˇéąĆÉČčܡB - -áŚÎA Č˝Şt[ČvOĚĄť¨đĐzˇéęALżŠłżÉ -Öíç¸A Č˝ÍŠŞŞLˇé đSÄóĚŇÉ^ŚČŻęÎČčÜšńB -Ü˝A Č˝ÍŢçŕ\[XR[hđóŻćéŠčÉüęéąĆŞĹŤéć¤ -ŰؾȯęÎČčÜšńBťľÄA Č˝ÍŢçÉÎľÄČşĹq×éđ -đŚľAŢçÉŠçĚ É¢Ämçľßéć¤ÉľČŻęÎČčÜš -ńB - -˝żÍ Č˝Ě đńiKĚčđĽńĹŰěľÜˇB(1) ܸ\tgEF -AÉÎľÄě đ壾AťľÄ (2) Č˝ÉÎľÄA\tgEFAĚĄ -ťâĐzÜ˝ÍüĎÉ¢ÄĚ@IČÂđ^ŚéąĚ_ńđńŚľÜˇB - -Ü˝AeěŇ⽿đŰěˇé˝ßA˝żÍąĚt[\tgEFAÉÍ -˝ĚŰŘೢƢ¤ąĆđNŕŞmŔÉđˇéć¤ÉľAÜ˝\tgEF -AŞNŠźlÉćÁÄüĎłęAťęŞXĆĐzłęĢÁ˝ĆľÄŕAť -ĚóĚŇÍŢçŞčÉüę˝\tgEFAŞIWiĚo[WĹÍł˘ -ąĆAťľÄ´ěŇĚźşÍźlÉćÁÄżÜę˝Â\ŤĚ éâčÉćÁ -ÄeżłęéąĆŞČ˘Ć˘¤ąĆđümłš˝˘Ćv˘ÜˇB - -ĹăÉA\tgEFAÁŞ˘ŠČét[ĚvOĚśÝÉŕsfĚş -Đ𰊯ĢܡŞA˝żÍAt[ČvOĚÄĐzŇŞÂXÉ -ÁCZXđ枡éąĆÉćÁÄAŔăvOđĆčIɾľ -ܤƢ¤ëŻđ𯽢Ćv˘ÜˇBą¤˘Á˝Ôđ\hˇé˝ßA˝ -żÍ˘ŠČéÁŕNઊRÉpĹŤéć¤CZXłęéŠAS -CZXłęȢŠĚÇżçŠĹČŻęÎČçȢąĆđžmɾܾ˝B - -(ó: {_ńĹuĆčI(proprietary)vĆÍA\tgEFAĚpâÄĐ -zAüĎŞÖ~łęĢéŠAÂđžéąĆŞKvĆłęĢéŠA é˘ -Íľľ˘§ŔŞŰšçęĢĊRÉť¤ˇéąĆŞŔăĹŤČČÁĢ -éóÔĚąĆđwˇBÚľÍ -http://www.gnu.org/philosophy/categories.ja.html#ProprietarySoftwaređ -QĆšćB) - -ĄťâĐzAüĎÉ¢ÄĚłmČđƧńđČşĹq×ĢŤÜˇB + (訳: 䝼ä¸ăŻGNU General Public LicenseăŽéĺ
ŹĺźăŞćĽćŹčŞč¨łă§ăăăăăŻă + ăŞăźă˝ăăăŚă§ă˘č˛ĄĺŁ(the Free Software Foundataion)ăŤăăŁăŚçşčĄ¨ăăă + ăăŽă§ăŻăŞăăGNU GPLăéŠç¨ăăă˝ăăăŚă§ă˘ăŽé ĺ¸ćĄäťśăćłçăŤćĺšăŞĺ˝˘ + ă§čż°ăšăăăŽă§ăŻăăăžăăăé ĺ¸ćĄäťśă¨ăăŚăŻGNU GPLăŽčąčŞçăăăšă㧠+ ćĺŽăăăŚăăăăŽăŽăżăćĺšă§ăăăăăăŞăăăç§ăăĄăŻăăŽçżťč¨łăă + ćĽćŹčŞă使ç¨ăăäşşă
ăŤă¨ăŁăŚGNU GPLăăăčŻăç解ăăĺŠăă¨ăŞăăă¨ă + ćăă§ăăžăă) + + 翝訳㯠ĺ
Ťç°çčĄ<mhatta@gnu.org>ăčĄăŁăăĺć㯠+ http://www.gnu.org/licenses/gpl.txtă§ăăă誤訳ăŽććăćšĺćĄăćčżă + ăă + ăŻăă㍠+ +ă˝ăăăŚă§ă˘ĺăăŠă¤ăťăłăšăŽĺ¤§ĺăŻăăăŞăăăăŽă˝ăăăŚă§ă˘ăĺ
ąćăă +ăĺ¤ć´ăăăăăčŞçąă弪ăăăăŤč¨č¨ăăăŚăăžăă寞ç
§çăŤăGNU ä¸čŹĺ
Ź +čĄĺŠç¨č¨ąčŤžĺĽç´ć¸ăŻăăăŞăăăăŞăźă˝ăăăŚă§ă˘ăĺ
ąćăăăĺ¤ć´ăăăă +ăčŞçąăäżč¨źăă--ăăŞăăĄăă˝ăăăŚă§ă˘ăăăŽăŚăźăśăăšăŚăŤă¨ăŁăŚăăŞăź +ă§ăăăă¨ăäżč¨źăăăă¨ăçŽçă¨ăăŚăăžăăăăŽä¸čŹĺ
ŹčĄĺŠç¨č¨ąčŤžĺĽç´ć¸ +ăŻăăŞăźă˝ăăăŚă§ă˘č˛ĄĺŁăŽă˝ăăăŚă§ă˘ăŽăťă¨ăăŠăŤéŠç¨ăăăŚăăăăžă +GNU GPLăéŠç¨ăăă¨ćąşăăăăŞăźă˝ăăăŚă§ă˘č˛ĄĺŁäťĽĺ¤ăŽä˝č
ăŤăăăăă° +ăŠă ăŤăéŠç¨ăăăŚăăžă(ăăă¤ăăŽăăŞăźă˝ăăăŚă§ă˘č˛ĄĺŁăŽă˝ăăăŚă§ +ă˘ăŤăŻăGNU GPLă§ăŻăŞăGNU ăŠă¤ăăŠăŞä¸čŹĺ
ŹčĄĺŠç¨č¨ąčŤžĺĽç´ć¸ăéŠç¨ăă +ăŚăăăă¨ăăăăžă)ăăăŞăăăžăăăčŞĺăŽăăă°ăŠă ăŤGNU GPLăéŠç¨ +ăăăă¨ăĺŻč˝ă§ăă + +ç§ăăĄăăăŞăźă˝ăăăŚă§ă˘ă¨č¨ăă¨ăăăăăŻĺŠç¨ăŽčŞçąăŤă¤ăăŚč¨ĺă㌠+ăăăŽă§ăăŁăŚăäžĄć źăŻĺéĄăŤăăŚăăžăăăç§ăăĄăŽä¸čŹĺ
ŹčĄĺŠç¨č¨ąčŤžĺĽç´ +ć¸ăŻăăăŞăăăăŞăźă˝ăăăŚă§ă˘ăŽč¤čŁ˝çŠăé ĺ¸ăăčŞçąăäżč¨źăăăăč¨ +č¨ăăăŚăăžă(ĺ¸ćăŤĺżăăŚăăŽç¨ŽăŽăľăźăăšăŤćć°ćă課ăčŞçąăäżč¨źă +ăăžă)ăăžăăăăŞăăă˝ăźăšăłăźăăĺăĺăăăăăăăŻćăă°ăăă +ĺ
Ľćăăăă¨ăĺŻč˝ă§ăăă¨ăăăă¨ăăăŞăăă˝ăăăŚă§ă˘ăĺ¤ć´ăăă㎠+ä¸é¨ăć°ăăŞăăŞăźăŽăăă°ăŠă ă§ĺŠç¨ă§ăăă¨ăăăă¨ăăăăŚă䝼ä¸ă§čż° +ăšăăăăŞăă¨ăă§ăăă¨ăăăă¨ăăăŞăăŤçĽăăăăă¨ăăăă¨ăäżč¨źă +ăăžăă + +ăăŞăăŽć¨ŠĺŠăĺŽăăăăç§ăăĄăŻčŞ°ăăăăŞăăŽćăăăăăăŽć¨ŠĺŠăĺŚĺŽ +ăăăă¨ăăăăăăŽć¨ŠĺŠăćžćŁăăăăčŚćąăăăă¨ăçŚć˘ăăă¨ăăĺśé +ăĺ ăăĺż
čŚăăăăžăăăăŁăŚăăăŞăăă˝ăăăŚă§ă˘ăŽč¤čŁ˝çŠăé ĺ¸ăă +ăăăăĺ¤ć´ăăăăăĺ ´ĺăŤăŻăăăăăŽĺśéăŽăăăŤăăŞăăŤăă税ăŽč˛Ź +äťťăçşçăăăă¨ăŤăŞăăžăă + +äžăă°ăăăŞăăăăŞăźăŞăăă°ăŠă ăŽč¤čŁ˝çŠăé ĺ¸ăăĺ ´ĺăććăçĄć㍠+é˘ăăăăăăŞăăŻčŞĺăćăă樊ĺŠăĺ
¨ăŚĺé č
ăŤä¸ăăŞăăă°ăŞăăžăăă +ăžăăăăŞăăŻĺ˝źăăă˝ăźăšăłăźăăĺăĺăăćăŤĺ
Ľăăăă¨ăă§ăăăă +äżč¨źăăŞăăă°ăŞăăžăăăăăăŚăăăŞăăŻĺ˝źăăŤĺŻžăăŚäťĽä¸ă§čż°ăšăćĄäťś +ă示ăă彟ăăŤčŞăăŽćă¤ć¨ŠĺŠăŤă¤ăăŚçĽăăăăăăăŤăăŞăăă°ăŞăăžă +ăă + +ç§ăăĄăŻăăŞăăŽć¨ŠĺŠăäşćŽľéăŽćé ăč¸ăă§äżčˇăăžăă(1) ăžăă˝ăăăŚă§ +ă˘ăŤĺŻžăăŚčä˝ć¨Šă丝埾ăăăă㌠(2) ăăŞăăŤĺŻžăăŚăă˝ăăăŚă§ă˘ăŽč¤ +製ăé ĺ¸ăžăăŻćšĺ¤ăŤă¤ăăŚăŽćłçăŞč¨ąĺŻăä¸ăăăăŽĺĽç´ć¸ăć示ăăžăă + +ăžăăĺä˝č
ăç§ăăĄăäżčˇăăăăăç§ăăĄăŻăăŽăăŞăźă˝ăăăŚă§ă˘ăŤăŻ +ä˝ăŽäżč¨źăçĄăă¨ăăăă¨ă誰ăă確ĺŽăŤç解ăăăăăŤăăăžăă˝ăăăŚă§ +ă˘ă誰ăäťäşşăŤăăŁăŚćšĺ¤ăăăăăă揥ă
ă¨é ĺ¸ăăăŚăăŁăă¨ăăŚăăă +ăŽĺé č
ăŻĺ˝źăăćăŤĺ
Ľăăă˝ăăăŚă§ă˘ăăŞăŞă¸ăăŤăŽăăźă¸ă§ăłă§ăŻçĄă +ăă¨ăăăăŚĺä˝č
ăŽĺ声ăŻäťäşşăŤăăŁăŚćăĄčžźăžăăĺŻč˝ć§ăŽăăĺéĄăŤă㣠+ăŚĺ˝ąéżăăăăă¨ăăŞăă¨ăăăă¨ăĺ¨çĽăăăăă¨ćăăžăă + +ćĺžăŤăă˝ăăăŚă§ă˘çšč¨ąăăăăŞăăăŞăźăŽăăă°ăŠă ăŽĺĺ¨ăŤăä¸ćăŽč
+ĺ¨ăćăăăăŚăăžăăăç§ăăĄăŻăăăŞăźăŞăăă°ăŠă ăŽĺé ĺ¸č
ăĺă
㍠+çšč¨ąăŠă¤ăťăłăšăĺĺžăăăă¨ăŤăăŁăŚăäşĺŽä¸ăăă°ăŠă ăçŹĺ çăŤăăŚă +ăžăă¨ăăĺąéşăéżăăăă¨ćăăžăăăăăăŁăäşć
ăäşé˛ăăăăăç§ă +ăĄăŻăăăŞăçšč¨ąă誰ăăčŞçąăŤĺŠç¨ă§ăăăăăŠă¤ăťăłăšăăăăăĺ
¨ă㊠+ă¤ăťăłăšăăăŞăăăŽăŠăĄăăă§ăŞăăă°ăŞăăŞăăă¨ăć確ăŤăăžăăă + +(訳注: ćŹĺĽç´ć¸ă§ăçŹĺ ç(proprietary)ăă¨ăŻăă˝ăăăŚă§ă˘ăŽĺŠç¨ăĺé +ĺ¸ăćšĺ¤ăçŚć˘ăăăŚăăăă訹ĺŻăĺžăăă¨ăĺż
čŚă¨ăăăŚăăăăăăă +ăŻĺłăăĺśéă課ăăăăŚăăŚčŞçąăŤăăăăăă¨ăäşĺŽä¸ă§ăăŞăăŞăŁăŚă +ăçść
ăŽăă¨ăćăă芳ăă㯠+http://www.gnu.org/philosophy/categories.ja.html#ProprietarySoftwareă +ĺç
§ăăă) + +č¤čŁ˝ăé ĺ¸ăćšĺ¤ăŤă¤ăăŚăŽćŁç˘şăŞćĄäťśă¨ĺśç´ă䝼ä¸ă§čż°ăšăŚăăăžăă - GNU ęĘöOpř_ń - ĄťAĐzAüĎÉÖˇéđƧń - -0. ąĚpř_ńÍAťĚvO(̟ܽ͝Ěě¨)đąĚę -ĘöOpř_ńĚčßéđĚşĹĐzĹŤéƢ¤mŞě ŇÉ -ćÁÄLÚłę˝vO̟ܽ͝Ěě¨SĘÉKpłęéBȺŠ-ÍAuwvOxvĆÍťĚć¤ÉľÄąĚ_ńŞKpłę˝vO -âě¨SĘđÓĄľAÜ˝uwvOxđîÉľ˝ě¨vĆÍwv -OxâťĚźě @ĚşĹhś¨ĆŠČłęéŕĚSĘđwˇBˇČ -íżAwvOxŠťĚęđASŻęĚÜÜŠAüĎđÁŚ˝ŠA -é˘ÍźĚžęÉ|ółę˝`ĹÜŢě¨ĚąĆĹ é(uüĎvƢ¤ę -Ě{ĚÓĄŠç͸ęéŞAČşĹÍ|óŕüĎĚęíƊȡ)Bťęź -ęĚ_ńŇÍu Č˝vĆ\ťłęéB - -ĄťâĐzAüĎČOĚŽÍąĚ_ńĹÍJo[łęȢBťęçÍąĚ -_ńĚÎŰOĹ éBwvOxđŔsˇés׊ĚɧŔÍȢBÜ -˝AťĚć¤ČwvOxĚoÍĘÍAťĚŕeŞwvOxđî -Éľ˝ě¨đ\ŹˇéęĚÝąĚ_ńÉćÁÄŰěłęé(wvO -xđŔsľ˝ąĆÉćÁÄ쏳ę˝Ć˘¤ąĆĆÍłÖWĹ é)BąĚ -ć¤ČüřŤĚĂŤÍAwvOxŞ˝đˇéĚŠÉËśˇéB - -1. ťęźęĚĄť¨É¨˘ÄKŘČě \ŚĆŰŘĚŰFşž(disclaimer -of warranty)đÚ§Âć¤KŘÉfÚľAÜ˝ąĚ_ń¨ćŃęŘĚŰŘĚ -sÝÉGę˝mˇ×ÄđťĚÜÜcľAťľÄąĚ_ńĚĄť¨đwv -Ox̢ŠČéóĚŇÉŕwvOxƤÉĐzˇéŔčA Č˝Í -wvOxĚ\[XR[hĚĄť¨đA Č˝ŞóŻćÁ˝ĘčĚ`ĹĄ -ťÜ˝ÍĐzˇéąĆŞĹŤéB}ĚÍâíȢB - - Č˝ÍA¨IÉĄť¨đ÷nˇéƢ¤s×ÉÖľÄčżđŰľÄŕÇ -˘ľAó]ÉćÁÄÍčżđćÁÄđˇÉ¨ŻéŰěĚŰŘđńľÄŕÇ -˘B - -2. Ƚ͊ŞĚwvOxĚĄť¨ŠťĚęđüĎľÄwvO -xđîÉľ˝ě¨đ`ŹľAťĚć¤ČüĎ_âě¨đăLć1ßĚč -ßéđ̺ťťÜ˝ÍĐzˇéąĆŞĹŤéB˝žľAťĚ˝ßÉÍČş -Ěđˇ×Äđ˝ľÄ˘ČŻęÎČçȢ: - - a) Č˝ŞťęçĚt@CđĎXľ˝Ć˘¤ąĆĆĎXľ˝úŞÇ - ŞŠéć¤AüĎłę˝t@CÉŚľČŻęÎČçȢB - - b) wvOxܽ͝ĚęđÜŢě¨A é˘ÍwvOx - ŠťĚęŠçhśľ˝ě¨đĐz é˘Í\ˇéęÉÍAťĚS - ĚđąĚ_ńĚđÉ]ÁÄćOŇÖłĹpřľČŻęÎČçČ - ˘B - - c) üĎłę˝vOŞAĘíŔsˇéŰÉÎbIÉR}hđÇŢ - ć¤ÉČÁĢéČçÎAťĚvOđĹŕęĘIČű@ĹÎbIÉ - ŔsˇéŰAKŘČě \ŚAłŰŘĹ éąĆ( é˘Í Č˝ŞŰ - ŘđńˇéƢ¤ąĆ)A[UŞvOđąĚ_ńĹq×˝đ - ĚşĹĐzˇéąĆŞĹŤéƢ¤ąĆAťľÄąĚ_ńĚĄť¨đ - {ˇéÉÍǤľ˝ç梊Ƣ¤[UÖĚŕžđÜŢmŞóüł - ęéŠA é˘ÍćĘÉ\Śłęéć¤ÉľČŻęÎČçȢ(áOĆľ - ÄAwvOxťĚŕĚÍÎbIĹ ÁÄŕĘíťĚć¤Čmđó - üľČ˘ęÉÍAwvOxđîÉľ˝ Č˝Ěě¨ÉťĚć¤ - ČmđóüłšéKvÍȢ)B + GNU ä¸čŹĺ
ŹčĄĺŠç¨č¨ąčŤžĺĽç´ć¸ + č¤čŁ˝ăé ĺ¸ăćšĺ¤ăŤé˘ăăćĄäťśă¨ĺśç´ + +0. ăăŽĺŠç¨č¨ąčŤžĺĽç´ć¸ăŻăăăŽăăă°ăŠă (ăžăăŻăăŽäťăŽčä˝çŠ)ăăăŽä¸ +čŹĺ
ŹčĄĺŠç¨č¨ąčŤžĺĽç´ć¸ăŽĺŽăăćĄäťśăŽä¸ă§é ĺ¸ă§ăăă¨ăăĺçĽăčä˝ć¨Šč
㍠+ăăŁăŚč¨čźăăăăăă°ăŠă ăžăăŻăăŽäťăŽčä˝çŠĺ
¨čŹăŤéŠç¨ăăăă䝼ä¸ă§ +ăŻăăăăăă°ăŠă ăăă¨ăŻăăŽăăăŤăăŚăăŽĺĽç´ć¸ăéŠç¨ăăăăăă°ăŠ +ă ăčä˝çŠĺ
¨čŹăćĺłăăăžăăăăăă°ăŠă ăăĺşăŤăăčä˝çŠăă¨ăŻăă +ăă°ăŠă ăăăăŽäťčä˝ć¨ŠćłăŽä¸ă§ć´žççŠă¨čŚăŞăăăăăŽĺ
¨čŹăćăăă㪠+ăăĄăăăăă°ăŠă ăăăăŽä¸é¨ăăĺ
¨ăĺä¸ăŽăžăžăăćšĺ¤ăĺ ăăăăă +ăăăŻäťăŽč¨čŞăŤçżťč¨łăăă形ă§ĺŤăčä˝çŠăŽăă¨ă§ăă(ăćšĺ¤ăă¨ăăčŞ +ăŽćŹćĽăŽćĺłăăăŻăăăăă䝼ä¸ă§ăŻçżťč¨łăćšĺ¤ăŽä¸ç¨Žă¨čŚăŞă)ăăăă +ăăŽĺĽç´č
ăŻăăăŞăăă¨čĄ¨çžăăăă + +č¤čŁ˝ăé ĺ¸ăćšĺ¤äťĽĺ¤ăŽć´ťĺăŻăăŽĺĽç´ć¸ă§ăŻăŤăăźăăăŞăăăăăăŻă㎠+ĺĽç´ć¸ăŽĺŻžčąĄĺ¤ă§ăăăăăăă°ăŠă ăăĺŽčĄăăčĄçşčŞä˝ăŤĺśéăŻăŞăăăž +ăăăăŽăăăŞăăăă°ăŠă ăăŽĺşĺçľćăŻăăăŽĺ
厚ăăăăă°ăŠă ăăĺş +ăŤăăčä˝çŠăć§ćăăĺ ´ĺăŽăżăăŽĺĽç´ć¸ăŤăăŁăŚäżčˇăăă(ăăăă°ăŠ +ă ăăĺŽčĄăăăă¨ăŤăăŁăŚä˝ćăăăă¨ăăăă¨ă¨ăŻçĄé˘äżă§ăă)ăă㎠+ăăăŞçˇĺźăăŽĺŚĽĺ˝ć§ăŻăăăăă°ăŠă ăăä˝ăăăăŽăăŤäžĺăăă + +1. ăăăăăŽč¤čŁ˝çŠăŤăăăŚéŠĺăŞčä˝ć¨ŠčĄ¨ç¤şă¨äżč¨źăŽĺŚčŞĺŁ°ć(disclaimer +of warranty)ăçŽçŤă¤ăăéŠĺăŤć˛čźăăăžăăăŽĺĽç´ć¸ăăăłä¸ĺăŽäżč¨źăŽ +ä¸ĺ¨ăŤč§ŚăăĺçĽăăšăŚăăăŽăžăžćŽăăăăăŚăăŽĺĽç´ć¸ăŽč¤čŁ˝çŠăăăă +ă°ăŠă ăăŽăăăŞăĺé č
ăŤăăăăă°ăŠă ăă¨ĺ
ąăŤé ĺ¸ăăéăăăăŞă㯠+ăăăă°ăŠă ăăŽă˝ăźăšăłăźăăŽč¤čŁ˝çŠăăăăŞăăĺăĺăŁăéăăŽĺ˝˘ă§č¤ +製ăžăăŻé ĺ¸ăăăă¨ăă§ăăăĺŞä˝ăŻĺăăŞăă + +ăăŞăăŻăçŠççăŤč¤čŁ˝çŠăč˛ć¸Ąăăă¨ăăčĄçşăŤé˘ăăŚćć°ćă課ăăŚăčŻ +ăăăĺ¸ćăŤăăŁăŚăŻćć°ćăĺăŁăŚäş¤ćăŤăăăäżčˇăŽäżč¨źăćäžăăŚăčŻ +ăă + +2. ăăŞăăŻčŞĺăŽăăăă°ăŠă ăăŽč¤čŁ˝çŠăăăŽä¸é¨ăćšĺ¤ăăŚăăăă°ăŠ +ă ăăĺşăŤăăčä˝çŠă形ćăăăăŽăăăŞćšĺ¤çšăčä˝çŠăä¸č¨çŹŹ1çŻăŽĺŽ +ăăćĄäťśăŽä¸ă§č¤čŁ˝ăžăăŻé ĺ¸ăăăă¨ăă§ăăăăă ăăăăŽăăăŤăŻäťĽä¸ +ăŽćĄäťśăăšăŚăćşăăăŚăăŞăăă°ăŞăăŞă: + + a) ăăŞăăăăăăŽăăĄă¤ăŤăĺ¤ć´ăăă¨ăăăă¨ă¨ĺ¤ć´ăăćĽćăčŻ + ăĺăăăăăćšĺ¤ăăăăăĄă¤ăŤăŤĺ示ăăŞăăă°ăŞăăŞăă + + b) ăăăă°ăŠă ăăžăăŻăăŽä¸é¨ăĺŤăčä˝çŠăăăăăŻăăăă°ăŠă ă + ăăăŽä¸é¨ăăć´žçăăčä˝çŠăé ĺ¸ăăăăŻçşčĄ¨ăăĺ ´ĺăŤăŻăăăŽĺ
¨ + ä˝ăăăŽĺĽç´ć¸ăŽćĄäťśăŤĺžăŁăŚçŹŹä¸č
ă¸çĄĺă§ĺŠç¨č¨ąčŤžăăŞăăă°ăŞă㪠+ ăă + + c) ćšĺ¤ăăăăăă°ăŠă ăăé常ĺŽčĄăăéăŤĺŻžčŠąçăŤăłăăłăăčŞă + ăăăŤăŞăŁăŚăăăŞăă°ăăăŽăăă°ăŠă ăćăä¸čŹçăŞćšćłă§ĺŻžčŠąç㍠+ ĺŽčĄăăéăéŠĺăŞčä˝ć¨ŠčĄ¨ç¤şăçĄäżč¨źă§ăăăă¨(ăăăăŻăăŞăăäż + 訟ăćäžăăă¨ăăăă¨)ăăŚăźăśăăăă°ăŠă ăăăŽĺĽç´ć¸ă§čż°ăšăćĄ + äťśăŽä¸ă§é ĺ¸ăăăă¨ăă§ăăă¨ăăăă¨ăăăăŚăăŽĺĽç´ć¸ăŽč¤čŁ˝çŠă + é˛čŚ§ăăăŤăŻăŠăăăăăăăă¨ăăăŚăźăśă¸ăŽčŞŹćăĺŤăĺçĽăĺ°ĺˇă + ăăăăăăăăŻçťé˘ăŤčĄ¨ç¤şăăăăăăŤăăŞăăă°ăŞăăŞă(äžĺ¤ă¨ă + ăŚăăăăă°ăŠă ăăăŽăăŽăŻĺŻžčŠąçă§ăăŁăŚăé常ăăŽăăăŞĺçĽăĺ° + ĺˇăăŞăĺ ´ĺăŤăŻăăăăă°ăŠă ăăĺşăŤăăăăŞăăŽčä˝çŠăŤăăŽăă + ăŞĺçĽăĺ°ĺˇăăăĺż
čŚăŻăŞă)ă -ČăĚKvđÍSĚĆľÄĚüĎłę˝ě¨ÉKpłęéBě¨Ěę -ŞwvOxŠçhśľ˝ŕĚĹÍȢĆmFĹŤAťęçŠgĘĚƧ -ľ˝ě¨Ĺ éĆIÉlŚçęéČçÎA Č˝ŞťęçđĘĚě¨ -ƾĪŻÄĐzˇéęAť¤˘Á˝ŞÉÍąĚ_ńĆťĚđÍ -KpłęȢBľŠľA Č˝ŞŻśŞđwvOxđîÉľ˝ě¨ -SĚĚęĆľÄĐzˇéČçÎASĚĆľÄĚĐz¨ÍAąĚ_ńŞ -ۡđÉ]íČŻęÎČçȢBƢ¤ĚÍAąĚ_ńŞźĚ_ńŇ -É^ŚéÂÍwvOx۲ĆSĚÉyŃANŞ˘˝ŠÍÖWČe -ŞĚˇ×ÄđŰěˇéŠçĹ éB - -ćÁÄAˇ×Ä Č˝ÉćÁÄŠę˝ě¨ÉÎľA đ壾˝č Č -˝Ě ÉŮcđ\ľ§ÄéąĆÍąĚßĚÓ}ˇéĆąëĹÍȢBŢľëA -ťĚď|ÍwvOxđîÉľ˝hś¨Č˘ľWě¨ĚĐzđǡ -é đsgˇéƢ¤ąĆÉ éB - -Ü˝AwvOxđîɾĢȢťĚźĚě¨đwvOx( -é˘ÍwvOxđîÉľ˝ě¨)ĆęÉWß˝žŻĚŕĚđęŞĚ -ŰÇuȢľĐz}ĚÉűßÄŕAťĚźĚě¨ÜĹąĚ_ńŞŰ -ěˇéÎŰÉČéƢ¤ąĆÉÍČçȢB - -3. Č˝ÍăLć1ߨćŃ2ßĚđÉ]˘AwvOx( é˘Íć2 -ßɨŻéhś¨)đIuWFNgR[hȢľŔs`ŽĹĄťÜ˝ÍĐzˇ -éąĆŞĹŤéB˝žľAťĚę Č˝ÍȺ̤żÇęŠęÂđŔ{ľČ -ŻęÎČçȢ: - - a) ě¨ÉAwvOxÉÎľ˝ŽSŠÂ@BĹÇÝćčÂ\Č - \[XR[hđYtˇéB˝žľA\[XR[hÍăLć1ߨćŃ2ßĚ - đÉ]˘\tgEFAĚđˇĹKľIÉgíęé}ĚĹĐzľČŻęÎ - ČçȢB é˘ÍA - - b) ě¨ÉA˘ŠČéćOŇÉÎľÄŕAwvOxÉÎľ˝Ž - SŠÂ@BĹÇÝćčÂ\Č\[XR[hđAĐzÉvˇé¨IRXg - đăńçȢöxĚčżĆřŤˇŚÉńˇé|q×˝ČĆŕ3N - ÔÍLřČĘÉČÁ˝\ľođYŚéB˝žľA\[XR[hÍăLć - 1ߨćŃ2ßĚđÉ]˘\tgEFAĚđˇĹKľIÉgíęé}ĚĹ - ĐzľČŻęÎČçȢB é˘ÍA - - c) Ρé\[XR[hĐzĚ\ľoÉŰľÄA Č˝Şž˝îńđę - ÉřŤnˇ(ąĚIđÍAcđÚIƾȢĐzĹ ÁÄAŠÂ - Č˝ŞăLŹßbĹwčłęĢéć¤Č\ľoƤÉIuWFNgR[ - h é˘ÍŔs`ŽĚvOľŠüčľÄ˘Č˘ęÉŔčÂłę - é)B - -ě¨Ě\[XR[hĆÍAťęÉÎľÄüĎđÁŚéăĹDÜľ˘Ćłęé -ě¨Ě`ŽđÓĄˇéB éŔs`ŽĚě¨ÉĆÁÄŽSČ\[XR[h -ĆÍAťęŞÜŢW
[ˇ×ÄĚ\[XR[hSÉÁŚAÖAˇéC -^[tF[Xč`t@C̡×ÄĆCuĚRpCâCXg[ -đ§äˇé˝ßÉgíęéXNvgđŕÁŚ˝ŕĚđÓĄˇéBľŠľÁĘ -ČáOĆľÄAťĚR|[lgŠĚŞŔs`ŽÉtˇéĚĹÍł˘ŔčA -ĐzłęéŕĚĚÉAŔs`ŽŞŔsłęéIy[eBOVXeĚĺ -vČR|[lg(RpCâJ[l)ĆĘíęÉ(\[XŠoCi -`ŽĚÇżçŠĹ)ĐzłęéŕĚđÜńŢéKvÍȢơéB - -Ŕs`ŽÜ˝ÍIuWFNgR[hĚĐzŞAwčłę˝ęŠçRs[ˇé -˝ßĚANZXčiđńˇéąĆĹ׳ęéĆľÄAťĚăĹ\[XR[h -ŕŻĚANZXčiÉćÁÄŻśęŠçRs[ĹŤéć¤ÉČÁĢéČ -çÎAćOŇŞIuWFNgR[hĆęÉ\[Xŕ§IÉRs[łšçę -éć¤ÉČÁĢČÄŕ\[XR[hĐzĚđđ˝ľÄ˘éŕĚơéB +䝼ä¸ăŽĺż
čŚćĄäťśăŻĺ
¨ä˝ă¨ăăŚăŽćšĺ¤ăăăčä˝çŠăŤéŠç¨ăăăăčä˝çŠăŽä¸é¨ +ăăăăă°ăŠă ăăăć´žçăăăăŽă§ăŻăŞăă¨ç˘şčŞă§ăăăăăčŞčşŤĺĽăŽçŹçŤ +ăăčä˝çŠă§ăăă¨ĺççăŤčăăăăăŞăă°ăăăŞăăăăăăĺĽăŽčä˝çŠ +ă¨ăăŚĺăăŚé ĺ¸ăăĺ ´ĺăăăăăŁăé¨ĺăŤăŻăăŽĺĽç´ć¸ă¨ăăŽćĄäťśăŻ +éŠç¨ăăăŞăăăăăăăăŞăăĺăé¨ĺăăăăă°ăŠă ăăĺşăŤăăčä˝çŠ +ĺ
¨ä˝ăŽä¸é¨ă¨ăăŚé ĺ¸ăăăŞăă°ăĺ
¨ä˝ă¨ăăŚăŽé ĺ¸çŠăŻăăăŽĺĽç´ć¸ă +課ăćĄäťśăŤĺžăăŞăăă°ăŞăăŞăăă¨ăăăŽăŻăăăŽĺĽç´ć¸ăäťăŽĺĽç´č
+ăŤä¸ăă訹ĺŻăŻăăăă°ăŠă ă丸ăă¨ĺ
¨ä˝ăŤĺăłă誰ăć¸ăăăăŻé˘äżăŞăĺ +é¨ĺăŽăăšăŚăäżčˇăăăăă§ăăă + +ăăŁăŚăăăšăŚăăŞăăŤăăŁăŚć¸ăăăčä˝çŠăŤĺŻžăă樊ĺŠă丝埾ăăăă㪠+ăăŽć¨ŠĺŠăŤç°č°ăçłăçŤăŚăăă¨ăŻăăŽçŻăŽćĺłăăă¨ăăă§ăŻăŞăăăăăă +ăăŽčśŁć¨ăŻăăăă°ăŠă ăăĺşăŤăăć´žççŠăŞăăéĺčä˝çŠăŽé ĺ¸ă玥çă +ă樊ĺŠăčĄä˝żăăă¨ăăăă¨ăŤăăă + +ăžăăăăăă°ăŠă ăăĺşăŤăăŚăăŞăăăŽäťăŽčä˝çŠăăăăă°ăŠă ă(ă +ăăăŻăăăă°ăŠă ăăĺşăŤăăčä˝çŠ)ă¨ä¸çˇăŤéăăă ăăŽăăŽăä¸ĺˇťăŽ +äżçŽĄčŁ
罎ăŞăăé ĺ¸ĺŞä˝ăŤĺăăŚăăăăŽäťăŽčä˝çŠăžă§ăăŽĺĽç´ć¸ăäż +čˇăă寞蹥ăŤăŞăă¨ăăăă¨ăŤăŻăŞăăŞăă + +3. ăăŞăăŻä¸č¨çŹŹ1çŻăăăł2çŻăŽćĄäťśăŤĺžăăăăăă°ăŠă ă(ăăăăŻçŹŹ2 +çŻăŤăăăć´žççŠ)ăăŞăă¸ă§ăŻăăłăźăăŞăăĺŽčĄĺ˝˘ĺźă§č¤čŁ˝ăžăăŻé ĺ¸ă +ăăă¨ăă§ăăăăă ăăăăŽĺ ´ĺăăŞăăŻäťĽä¸ăŽăăĄăŠăăä¸ă¤ăĺŽć˝ă㪠+ăăă°ăŞăăŞă: + + a) čä˝çŠăŤăăăăă°ăŠă ăăŤĺŻžĺżăăĺŽĺ
¨ăă¤ćŠć˘°ă§čŞăżĺăĺŻč˝ăŞ + ă˝ăźăšăłăźăă桝äťăăăăă ăăă˝ăźăšăłăźăăŻä¸č¨çŹŹ1çŻăăăł2çŻăŽ + ćĄäťśăŤĺžăă˝ăăăŚă§ă˘ăŽäş¤ćă§çżć
ŁçăŤä˝żăăăĺŞä˝ă§é ĺ¸ăăŞăăă° + ăŞăăŞăăăăăăŻă + + b) čä˝çŠăŤăăăăŞă珏ä¸č
ăŤĺŻžăăŚăăăăăă°ăŠă ăăŤĺŻžĺżăăĺŽ + ĺ
¨ăă¤ćŠć˘°ă§čŞăżĺăĺŻč˝ăŞă˝ăźăšăłăźăăăé ĺ¸ăŤčŚăăçŠççăłăšă + ăä¸ĺăăŞăç¨ĺşŚăŽćć°ćă¨ĺźăćăăŤćäžăăć¨čż°ăšăĺ°ăŞăă¨ă3ĺš´ + éăŻćĺšăŞć¸é˘ăŤăŞăŁăçłăĺşă桝ăăăăă ăăă˝ăźăšăłăźăăŻä¸č¨çŹŹ + 1çŻăăăł2çŻăŽćĄäťśăŤĺžăă˝ăăăŚă§ă˘ăŽäş¤ćă§çżć
ŁçăŤä˝żăăăĺŞä˝ă§ + é ĺ¸ăăŞăăă°ăŞăăŞăăăăăăŻă + + c) 寞ĺżăăă˝ăźăšăłăźăé ĺ¸ăŽçłăĺşăŤéăăŚăăăŞăăĺžăć
ĺ ąăä¸ + çˇăŤĺźă渥ă(ăăŽé¸ćč˘ăŻăĺśĺŠăçŽçă¨ăăŞăé ĺ¸ă§ăăŁăŚăăă¤ă + ăŞăăä¸č¨ĺ°çŻbă§ćĺŽăăăŚăăăăăŞçłăĺşă¨ĺ
ąăŤăŞăă¸ă§ăŻăăłăź + ăăăăăŻĺŽčĄĺ˝˘ĺźăŽăăă°ăŠă ăăĺ
ĽćăăŚăăŞăĺ ´ĺăŤéă訹ĺŻăă + ă)ă + +čä˝çŠăŽă˝ăźăšăłăźăă¨ăŻăăăăŤĺŻžăăŚćšĺ¤ăĺ ăăä¸ă§ĺĽ˝ăžăăă¨ăăă +čä˝çŠăŽĺ˝˘ĺźăćĺłăăăăăĺŽčĄĺ˝˘ĺźăŽčä˝çŠăŤă¨ăŁăŚĺŽĺ
¨ăŞă˝ăźăšăłăźă +ă¨ăŻăăăăĺŤăă˘ă¸ăĽăźăŤăăšăŚăŽă˝ăźăšăłăźăĺ
¨é¨ăŤĺ ăăé˘éŁăăă¤ăł +ăżăźăă§ăźăšĺŽçžŠăăĄă¤ăŤăŽăăšăŚă¨ăŠă¤ăăŠăŞăŽăłăłăă¤ăŤăă¤ăłăšăăźăŤ +ăĺśĺžĄăăăăăŤä˝żăăăăšăŻăŞăăăăĺ ăăăăŽăćĺłăăăăăăçšĺĽ +ăŞäžĺ¤ă¨ăăŚăăăŽăłăłăăźăăłăčŞä˝ăĺŽčĄĺ˝˘ĺźăŤäťéăăăŽă§ăŻçĄăéăă +é ĺ¸ăăăăăŽăŽä¸ăŤăĺŽčĄĺ˝˘ĺźăĺŽčĄăăăăŞăăŹăźăăŁăłă°ăˇăšăă ăŽä¸ť +čŚăŞăłăłăăźăăłă(ăłăłăă¤ăŠăăŤăźăăŤç)ă¨é常ä¸çˇăŤ(ă˝ăźăšăăă¤ă +ăŞĺ˝˘ĺźăŽăŠăĄăăă§)é ĺ¸ăăăăăŽăĺŤăă§ăăĺż
čŚăŻăŞăă¨ăăă + +ĺŽčĄĺ˝˘ĺźăžăăŻăŞăă¸ă§ăŻăăłăźăăŽé ĺ¸ăăćĺŽăăăĺ ´ćăăăłăăźăă +ăăăŽă˘ăŻăťăšć掾ăćäžăăăă¨ă§çşăăăă¨ăăŚăăăŽä¸ă§ă˝ăźăšăłăźă +ăĺçăŽă˘ăŻăťăšć掾ăŤăăŁăŚĺăĺ ´ćăăăłăăźă§ăăăăăŤăŞăŁăŚăă㪠+ăă°ă珏ä¸č
ăăŞăă¸ă§ăŻăăłăźăă¨ä¸çˇăŤă˝ăźăšă埡ĺśçăŤăłăăźăăăă +ăăăăŤăŞăŁăŚăăŞăăŚăă˝ăźăšăłăźăé ĺ¸ăŽćĄäťśăćşăăăŚăăăăŽă¨ăăă -4. Č˝ÍwvOxđAąĚ_ńɨ˘ÄžmÉńŚłę˝s -×𫡻âüĎATuCZXA é˘ÍĐzľÄÍČçȢBźÉ -wvOxđĄťâüĎATuCZXA é˘ÍĐzˇééÄÍˇ× -ÄłřĹ čAąĚ_ńĚşĹĚ Č˝Ě đŠŽIÉIłšéą -ĆÉČë¤BľŠľAĄť¨â đąĚ_ńÉ]ÁÄ Č˝Šçž˝ -lXÉÖľÄÍAťĚć¤ČlXŞąĚ_ńÉŽSÉ]ÁĢéŔčŢ -çĚCZXÜĹIˇéąĆÍȢB - -5. Ƚ͹Ě_ńđóřˇéKvÍł˘BƢ¤ĚÍA Ƚ͹ -ęÉźľÄ˘Č˘ŠçĹ éBľŠľAąĚ_ńČOÉ Č˝ÉÎľ -ÄwvOxâťĚhś¨đĎXAĐzˇéÂđ^ŚéŕĚÍśÝľČ -˘BąęçĚs×ÍA Č˝ŞąĚ_ńđóŻüęȢŔč@ÉćÁÄ -ÖśçęĢéBťąĹAwvOx( é˘ÍwvOxđîÉľ -˝ě¨Ěˇ×Ä)đüĎȢľĐzˇéąĆÉćčA Č˝ÍŠŞŞťĚć -¤Čs×đs¤˝ßÉąĚ_ńđóřľ˝Ć˘¤ąĆAťľÄwvO -xĆťęÉîĂě¨ĚĄťâĐzAüĎÉ¢ĹĚ_ńŞŰ -ˇ§ńĆđđˇ×ÄóŻüę˝Ć˘¤ąĆ𦵽ŕĚƊȡB - -6. Č˝ŞwvOx(Ü˝ÍwvOxđîÉľ˝ě¨SĘ)đ -ÄĐzˇé˝ŃÉAťĚóĚŇÍłXĚCZXÂŇŠçAąĚ_ńĹ -wčłę˝đƧńĚşĹwvOxđĄťâĐzA é˘Íüϡé -ÂđŠŽIÉžéŕĚơéB Č˝ÍAóĚŇŞąąĹFßçę˝ đ -sgˇéąĆÉ־ĹęČăźĚ˘ŠČé§ŔŕۡąĆŞĹŤČ˘B Č -˝ÉÍAćOŇŞąĚ_ńÉ]¤ąĆđ§ˇéÓCÍȢB - -7. ÁNQ é˘ÍťĚźĚR(ÁÖWÉŔçȢ)ŠçA̝ٝ - é˘Í\ľ§ÄĚĘĆľÄ Č˝É(Ůť˝ßâ_ńČÇÉćč)ąĚ_ -ńĚđĆľˇé§ńŞŰłę˝ęĹŕA Č˝ŞąĚ_ńĚđđ -ĆłęéíŻĹÍȢBŕľąĚ_ń̺ŠȽÉŰšçę˝ÓCĆź -ĚÖAˇéÓCđŻÉ˝ˇć¤Č`ĹĐzōȢČçÎAĘĆľÄ -Č˝ÍwvOxđĐzˇéąĆŞSōȢƢ¤ąĆĹ éBጠ-ÎÁCZXŞA Č˝ŠçźÚÔÚđâí¸Rs[đóŻćÁ˝lŞN -ĹŕwvOxđgpżłżĹÄĐzˇéąĆđFßĢȢęA Č -˝ŞťĚ§ńĆąĚ_ńđźűĆཡÉÍwvOxĚĐzđŽS -É~ˇéľŠČ˘žë¤B - -ąĚßĚꪪÁčĚóľĚşĹłřȢľŔ{sÂ\ČęĹŕAßĚc -čĚŞÍKpłęéć¤Ó}łęĢéBťĚźĚóľĹÍߪSĚĆľÄ -Kpłęéć¤Ó}łęĢéB - -ÁâťĚźĚŕY đNQľ˝čAťĚć¤Č ĚĺŁĚřÍÉŮcđĽ -Ś˝čˇéć¤ Č˝đUfˇéąĆŞąĚßĚÚIĹÍȢBąĚßÉÍA -lXÉćÁÄCZXľsĆľÄŔťłęÄŤ˝At[\tgEFAĐz -ĚVXeĚŽSŤđěéƢ¤ÚIľŠČ˘B˝ĚlXŞAt[\tg -EFAĚĐzVXeŞńöęŃľÄKpłęĢéƢ¤MÉîĂŤAą -ĚVXeđĘśÄĐzłęé˝lČ\tgEFAÉ°ĺČvŁđľÄŤ˝Ě -ÍŔĹ éŞAlŞÇĚć¤ČVXeđĘśÄ\tgEFAđĐzľ˝˘ -Ćv¤ŠÍ ÜĹŕěŇ/ń^ŇćĹ čA Č˝ŞIđđľÂŻéą -ĆÍōȢB - -ąĚßÍAąĚ_ńĚąĚßČOĚŞĚęAÉČéĆlŚçęéP[ -XđOęIÉžçŠÉˇéąĆđÚIƾĢéB +4. ăăŞăăŻăăăă°ăŠă ăăăăăŽĺĽç´ć¸ăŤăăăŚć確ăŤć示ăăăčĄ +çşăé¤ăč¤čŁ˝ăćšĺ¤ăăľăăŠă¤ăťăłăšăăăăăŻé ĺ¸ăăŚăŻăŞăăŞăăäťăŤ +ăăăă°ăŠă ăăč¤čŁ˝ăćšĺ¤ăăľăăŠă¤ăťăłăšăăăăăŻé ĺ¸ăăäźăŚăŻăăš +ăŚçĄĺšă§ăăăăăŽĺĽç´ć¸ăŽä¸ă§ăŽăăŞăăŽć¨ŠĺŠăčŞĺçăŤçľçľăăăă +ă¨ăŤăŞăăăăăăăč¤čŁ˝çŠă樊ĺŠăăăŽĺĽç´ć¸ăŤĺžăŁăŚăăŞăăăĺžă +äşşă
ăŤé˘ăăŚăŻăăăŽăăăŞäşşă
ăăăŽĺĽç´ć¸ăŤĺŽĺ
¨ăŤĺžăŁăŚăăéă彟 +ăăŽăŠă¤ăťăłăšăžă§çľçľăăăă¨ăŻăŞăă + +5. ăăŞăăŻăăŽĺĽç´ć¸ăĺ荞ăăĺż
čŚăŻçĄăăă¨ăăăŽăŻăăăŞăăŻă +ăăŤç˝˛ĺăăŚăăŞăăăă§ăăăăăăăăăŽĺĽç´ć¸äťĽĺ¤ăŤăăŞăăŤĺŻžă +ăŚăăăă°ăŠă ăăăăŽć´žççŠăĺ¤ć´ăé ĺ¸ăă訹ĺŻăä¸ăăăăŽăŻĺĺ¨ă㪠+ăăăăăăŽčĄçşăŻăăăŞăăăăŽĺĽç´ć¸ăĺăĺ
ĽăăŞăéăćłăŤăăŁăŚ +çŚăăăăŚăăăăăă§ăăăăă°ăŠă ă(ăăăăŻăăăă°ăŠă ăăĺşăŤă +ăčä˝çŠăŽăăšăŚ)ăćšĺ¤ăŞăăé ĺ¸ăăăă¨ăŤăăăăăŞăăŻčŞĺăăăŽă +ăăŞčĄçşăčĄăăăăŤăăŽĺĽç´ć¸ăĺ荞ăăă¨ăăăă¨ăăăăŚăăăă° +ăŠă ăă¨ăăăŤĺşăĽăčä˝çŠăŽč¤čŁ˝ăé ĺ¸ăćšĺ¤ăŤă¤ăăŚăăŽĺĽç´ć¸ă課 +ăĺśç´ă¨ćĄäťśăăăšăŚĺăĺ
Ľăăă¨ăăăă¨ă示ăăăăŽă¨čŚăŞăă + +6. ăăŞăăăăăă°ăŠă ă(ăžăăŻăăăă°ăŠă ăăĺşăŤăăčä˝çŠĺ
¨čŹ)ă +ĺé ĺ¸ăăăăłăŤăăăŽĺé č
ăŻĺ
ă
ăŽăŠă¤ăťăłăšč¨ąĺŻč
ăăăăăŽĺĽç´ć¸ă§ +ćĺŽăăăćĄäťśă¨ĺśç´ăŽä¸ă§ăăăă°ăŠă ăăč¤čŁ˝ăé ĺ¸ăăăăăŻćšĺ¤ăă +訹ĺŻăčŞĺçăŤĺžăăăŽă¨ăăăăăŞăăŻăĺé č
ăăăă§čŞăăăă樊ĺŠă +čĄä˝żăăăă¨ăŤé˘ăăŚăă䝼ä¸äťăŽăăăŞăĺśéă課ăăă¨ăă§ăăŞăăă㪠+ăăŤăŻă珏ä¸č
ăăăŽĺĽç´ć¸ăŤĺžăăă¨ă埡ĺśăă貏䝝ăŻăŞăă + +7. çšč¨ąäžľĺŽłăăăăŻăăŽäťăŽççą(çšč¨ąé˘äżăŤéăăŞă)ăăăčŁĺ¤ćăŽĺ¤ćąş +ăăăăŻçłăçŤăŚăŽçľćă¨ăăŚăăŞăăŤ(čŁĺ¤ćĺ˝äť¤ăĺĽç´ăŞăŠăŤăă)ăăŽĺĽ +ç´ć¸ăŽćĄäťśă¨ççžăăĺśç´ă課ăăăĺ ´ĺă§ăăăăŞăăăăŽĺĽç´ć¸ăŽćĄäťśă +ĺ
é¤ăăăăăă§ăŻăŞăăăăăăŽĺĽç´ć¸ăŽä¸ă§ăăŞăăŤčŞ˛ăăăă貏䝝ă¨äť +ăŽé˘éŁăă貏䝝ăĺćăŤćşăăăăăŞĺ˝˘ă§é ĺ¸ă§ăăŞăăŞăă°ăçľćă¨ăăŚă +ăŞăăŻăăăă°ăŠă ăăé ĺ¸ăăăă¨ăĺ
¨ăă§ăăŞăă¨ăăăă¨ă§ăăăäžă +ă°çšč¨ąăŠă¤ăťăłăšăăăăŞăăăç´ćĽéćĽăĺăăăłăăźăĺăĺăŁăäşşă誰 +ă§ăăăăă°ăŠă ăă使ç¨ćçĄćă§ĺé ĺ¸ăăăă¨ăčŞăăŚăăŞăĺ ´ĺăă㪠+ăăăăŽĺśç´ă¨ăăŽĺĽç´ć¸ă严ćšă¨ăćşăăăŤăŻăăăă°ăŠă ăăŽé ĺ¸ăĺŽĺ
¨ +ăŤä¸ć˘ăăăăăŞăă ăăă + +ăăŽçŻăŽä¸é¨ĺăçšĺŽăŽçśćłăŽä¸ă§çĄĺšăŞăăĺŽć˝ä¸ĺŻč˝ăŞĺ ´ĺă§ăăçŻăŽćŽ +ăăŽé¨ĺăŻéŠç¨ăăăăăćĺłăăăŚăăăăăŽäťăŽçśćłă§ăŻçŻăĺ
¨ä˝ă¨ă㌠+éŠç¨ăăăăăćĺłăăăŚăăă + +çšč¨ąăăăŽäťăŽč˛ĄçŁć¨Šă䞾厳ăăăăăăŽăăăŞć¨ŠĺŠăŽä¸ťĺźľăŽĺšĺăŤç°č°ăĺą +ăăăăăăăăăŞăăčŞćăăăă¨ăăăŽçŻăŽçŽçă§ăŻăŞăăăăŽçŻăŤăŻă +äşşă
ăŤăăŁăŚăŠă¤ăťăłăšć
ŁčĄă¨ăăŚĺŽçžăăăŚăăăăăŞăźă˝ăăăŚă§ă˘é ĺ¸ +ăŽăˇăšăă ăŽĺŽĺ
¨ć§ăčˇăă¨ăăçŽçăăăŞăăĺ¤ăăŽäşşă
ăăăăŞăźă˝ăă +ăŚă§ă˘ăŽé ĺ¸ăˇăšăă ăéŚĺ°žä¸č˛ŤăăŚéŠç¨ăăăŚăăă¨ăăäżĄé źăŤĺşăĽăăă +ăŽăˇăšăă ăéăăŚé ĺ¸ăăăĺ¤ć§ăŞă˝ăăăŚă§ă˘ăŤĺŻĺ¤§ăŞč˛˘çŽăăăŚăă㎠+ăŻäşĺŽă§ăăăăäşşăăŠăŽăăăŞăˇăšăă ăéăăŚă˝ăăăŚă§ă˘ăé ĺ¸ăăă +ă¨ćăăăŻăăăžă§ăä˝č
/ĺŻä¸č
揥珏ă§ăăăăăŞăăé¸ćăćźăă¤ăăă +ă¨ăŻă§ăăŞăă + +ăăŽçŻăŻăăăŽĺĽç´ć¸ăŽăăŽçŻäťĽĺ¤ăŽé¨ĺăŽä¸ĺ¸°çľăŤăŞăă¨čăăăăăąăź +ăšăĺžšĺşçăŤćăăăŤăăăă¨ăçŽçă¨ăăŚăăă -8. wvOxĚĐzâpŞA éɨ˘ÄÍÁÜ˝Íě Şĺ -Łłę˝C^[tF[X̢¸ęŠÉćÁħŔłęĢéęAwvO -xÉąĚ_ńđKpľ˝łĚě ŇÍAť¤˘Á˝Xđrľ -˝žmČnIĐz§ŔđÁŚAťąĹrłęĢȢĚâťęçĚX -ĚÔĹĚÝĐzŞÂłęéć¤ÉľÄŕ\íȢBťĚęAťĚć¤Č§ -ŔÍąĚ_ń{śĹŠęĢéĚĆŻlÉŠČłęéB - -9. t[\tgEFAŕcÍAÉćÁÄüůÜ˝ÍVĹĚęĘöOp -řđ\ˇéąĆŞĹŤéBťĚć¤ČVĹÍťÝĚo[WƝ̸_ -ɨ˘ÄÍ˝ŕĚÉČéžë¤ŞAV˝ČâčâOđđˇé˝ß×Ĺ -ÍŮČéÂ\ŤŞ éB - -ťęźęĚo[WÉÍAŠŞŻŞtć¤Éo[WÔŞUçęĢ -éBwvOxɨ˘ÄťęÉKpłęéąĚ_ńĚo[WÔŞ -wčłęĢÄAXÉuťęČ~̢ŠČéo[WvŕKpľÄǢĆČÁ -Ģ˝ęA Č˝Í]¤đƧńĆľÄAwčĚo[WŠAt[\ -tgEFAŕcÉćÁÄsłę˝wčĚo[WČ~ĚĹĚÇęŠęÂĚ -ÇżçŠđIԹƪoéBwvOxĹCZXĚo[WÔ -ŞwčłęĢȢČçÎA ȽͥÜĹÉt[\tgEFAŕcŠç -słę˝o[WĚŠçDŤÉIńĹ\íȢB - -10. ŕľ Č˝ŞwvOxĚęđAťĚĐzđŞąĚ_ńĆ -ŮČéźĚt[ČvOĆľ˝˘ČçÎAěŇÉAľÄÂđ -ßćBt[\tgEFAŕcŞě đŰLˇé\tgEFAÉ¢ÄÍA -t[\tgEFAŕcÉAšćB˝żÍAąĚć¤ČęĚ˝ßÉÁĘ -ČáOđÝŻéąĆŕ éB˝żŞčđşˇÉ ˝ÁÄÍA˝żĚt[ -\tgEFAĚhś¨ˇ×ÄŞt[ČóÔÉŰ˝ęéƢ¤ąĆĆAęĘI -É\tgEFA̤LĆÄpđŁiˇéƢ¤ńÂĚÚWđKɢłę -éĹ ë¤B - łŰŘÉÂ˘Ä - -11. wvOxÍăżłľÉpŞÂłęéĚĹAKŘČ@ŞFßéŔ -čɨ˘ÄAwvOxÉ֡颊ČéŰŘŕśÝľČ˘BĘĹĘÉ -q×éęđ˘ÄAě ŇA̟ܽ͝ĚcĚÍAwvOxđA -\žłę˝ŠžOÉŠÍâí¸A¤ĆIKŤđŰءéŮĚߊľâ éÁč -ĚÚIÖĚKŤ(ÉŔçęȢ)đÜŢęŘĚŰŘłľÉu éŞÜÜvĹń -ˇéBwvOx̿ƍ\ÉÖˇéXN̡×ÄÍ Č˝ÉAŽˇ -éBwvOxÉת éĆťžľ˝ęA Č˝ÍKvČŰç_â -âCACłÉvˇéRXg̡×ÄđřŤóŻéąĆÉČéB - -12. KŘČ@ŠĘĹĚŻÓÉćÁÄ˝şçęȢŔčAě ŇAÜ˝Íă -LĹÂłęĢéĘčÉwvOxđüĎÜ˝ÍÄĐzľ˝ťĚźĚc -ĚÍA Č˝ÉÎľÄwvOxĚpȢľps\Ĺśś˝ęĘIA -ÁĘIAôRIAKRIČšQ(f[^ĚÁ¸âsłmČA Č˝ŠćO -ŇŞíÁ˝š¸A é˘ÍwvOxŞźĚ\tgEFAĆęÉŽěľ -ȢƢ¤sďČÇđÜŢŞťęçÉŔçȢ)ÉęŘĚÓCđíȢB -ťĚć¤ČšQŞś¸éÂ\ŤÉ¢ÄŢ窳ęĢ˝ĆľÄŕŻlĹ - éB - - đƧńIíč +8. ăăăă°ăŠă ăăŽé ĺ¸ăĺŠç¨ăăăăĺ˝ăŤăăăŚăŻçšč¨ąăžăăŻčä˝ć¨Šă丝 +ĺźľăăăă¤ăłăżăźăă§ăźăšăŽăăăăăŤăăŁăŚĺśéăăăŚăăĺ ´ĺăăăăă° +ăŠă ăăŤăăŽĺĽç´ć¸ăéŠç¨ăăĺ
ăŽčä˝ć¨Šč
ăŻăăăăăŁăĺ˝ă
ăćé¤ă +ăć確ăŞĺ°ççé ĺ¸ĺśéăĺ ăăăăă§ćé¤ăăăŚăăŞăĺ˝ăŽä¸ăăăăăŽĺ˝ă
+ăŽéă§ăŽăżé ĺ¸ă訹ĺŻăăăăăăŤăăŚăć§ăăŞăăăăŽĺ ´ĺăăăŽăăăŞĺś +éăŻăăŽĺĽç´ć¸ćŹćă§ć¸ăăăŚăăăŽă¨ĺć§ăŤčŚăŞăăăă + +9. ăăŞăźă˝ăăăŚă§ă˘č˛ĄĺŁăŻăćăŤăăŁăŚćšč¨ăžăăŻć°çăŽä¸čŹĺ
ŹčĄĺŠç¨č¨ą +荞ć¸ăçşčĄ¨ăăăă¨ăă§ăăăăăŽăăăŞć°çăŻçžĺ¨ăŽăăźă¸ă§ăłă¨ăăŽç˛žçĽ +ăŤăăăŚăŻäźźăăăŽăŤăŞăă ăăăăć°ăăŞĺéĄăć¸ĺżľă解湺ăăăăç´°é¨ă§ +ăŻç°ăŞăĺŻč˝ć§ăăăă + +ăăăăăŽăăźă¸ă§ăłăŤăŻăčŚĺăăäťăăăăŤăăźă¸ă§ăłçŞĺˇăćŻăăăŚă +ăăăăăă°ăŠă ăăŤăăăŚăăăŤéŠç¨ăăăăăŽĺĽç´ć¸ăŽăăźă¸ă§ăłçŞĺˇă +ćĺŽăăăŚăăŚăć´ăŤăăă䝼éăŽăăăŞăăăźă¸ă§ăłăăéŠç¨ăăŚčŻăă¨ăŞăŁ +ăŚăăĺ ´ĺăăăŞăăŻĺžăćĄäťśă¨ĺśç´ă¨ăăŚăćĺŽăŽăăźă¸ă§ăłăăăăŞăźă˝ +ăăăŚă§ă˘č˛ĄĺŁăŤăăŁăŚçşčĄăăăćĺŽăŽăăźă¸ă§ăłäťĽéăŽçăŽăŠăăä¸ă¤ăŽ +ăŠăĄăăăé¸ăśăă¨ăĺşćĽăăăăăă°ăŠă ăă§ăŠă¤ăťăłăšăŽăăźă¸ă§ăłçŞĺˇ +ăćĺŽăăăŚăăŞăăŞăă°ăăăŞăăŻäťăžă§ăŤăăŞăźă˝ăăăŚă§ă˘č˛ĄĺŁăăçş +čĄăăăăăźă¸ă§ăłăŽä¸ăă弽ăăŤé¸ăă§ć§ăăŞăă + +10. ăăăăŞăăăăăă°ăŠă ăăŽä¸é¨ăăăăŽé ĺ¸ćĄäťśăăăŽĺĽç´ć¸ă¨ +ç°ăŞăäťăŽăăŞăźăŞăăă°ăŠă ă¨çľąĺăăăăŞăă°ăä˝č
ăŤéŁçľĄăăŚč¨ąĺŻăćą +ăăăăăŞăźă˝ăăăŚă§ă˘č˛ĄĺŁăčä˝ć¨Šăäżćăăă˝ăăăŚă§ă˘ăŤă¤ăăŚăŻă +ăăŞăźă˝ăăăŚă§ă˘č˛ĄĺŁăŤéŁçľĄăăăç§ăăĄăŻăăăŽăăăŞĺ ´ĺăŽăăăŤçšĺĽ +ăŞäžĺ¤ăč¨ăăăă¨ăăăăç§ăăĄăćąşĺŽăä¸ăăŤăăăŁăŚăŻăç§ăăĄăŽăăŞăź +ă˝ăăăŚă§ă˘ăŽć´žççŠăăšăŚăăăŞăźăŞçść
ăŤäżăăăă¨ăăăă¨ă¨ăä¸čŹç +ăŤă˝ăăăŚă§ă˘ăŽĺ
ąćă¨ĺĺŠç¨ăäżé˛ăăă¨ăăäşă¤ăŽçŽć¨ăčŚćşăŤć¤č¨ăă +ăă§ăăăă + çĄäżč¨źăŤă¤ă㌠+ +11. ăăăă°ăŠă ăăŻäťŁäžĄçĄăăŤĺŠç¨ă訹ĺŻăăăăŽă§ăéŠĺăŞćłăčŞăăé +ăăŤăăăŚăăăăă°ăŠă ăăŤé˘ăăăăăŞăäżč¨źăĺĺ¨ăăŞăăć¸é˘ă§ĺĽăŤ +čż°ăšăĺ ´ĺăé¤ăăŚăčä˝ć¨Šč
ăăžăăŻăăŽäťăŽĺŁä˝ăŻăăăăă°ăŠă ăăă +襨ćăăăăč¨ĺ¤ăŤăăŻĺăăăĺćĽçéŠć§ăäżč¨źăăăťăŽăăăăăăçšĺŽ +ăŽçŽçă¸ăŽéŠĺć§(ăŤéăăăŞă)ăĺŤăä¸ĺăŽäżč¨źçĄăăŤăăăăăžăžăă§ć +äžăăăăăăă°ăŠă ăăŽčłŞă¨ć§č˝ăŤé˘ăăăŞăšăŻăŽăăšăŚăŻăăŞăăŤĺ¸°ĺąă +ăăăăăă°ăŠă ăăŤćŹ éĽăăăă¨ĺ¤ćăăĺ ´ĺăăăŞăăŻĺż
čŚăŞäżĺŽçšć¤ă +čŁäżŽă俎ćŁăŤčŚăăăłăšăăŽăăšăŚăĺźăĺăăăă¨ăŤăŞăă + +12. éŠĺăŞćłăć¸é˘ă§ăŽĺćăŤăăŁăŚĺ˝ăăăăŞăéăăčä˝ć¨Šč
ăăžăăŻä¸ +č¨ă§č¨ąĺŻăăăŚăăéăăŤăăăă°ăŠă ăăćšĺ¤ăžăăŻĺé ĺ¸ăăăăŽäťăŽĺŁ +ä˝ăŻăăăŞăăŤĺŻžăăŚăăăă°ăŠă ăăŽĺŠç¨ăŞăăĺŠç¨ä¸č˝ă§çăăä¸čŹçă +çšĺĽçăĺśçśçăĺż
çśçăŞć厳(ăăźăżăŽćśĺ¤ąăä¸ćŁç˘şăŞĺŚçăăăŞăăçŹŹä¸ +č
ă袍ăŁăć夹ăăăăăŻăăăă°ăŠă ăăäťăŽă˝ăăăŚă§ă˘ă¨ä¸çˇăŤĺä˝ă +ăŞăă¨ăăä¸ĺ
ˇĺăŞăŠăĺŤăăăăăăŤéăăŞă)ăŤä¸ĺăŽč˛Źäťťăč˛ ăăŞăă +ăăŽăăăŞć厳ăçăăĺŻč˝ć§ăŤă¤ăăŚĺ˝źăăĺż ĺăăăŚăăă¨ăăŚăĺć§ă§ +ăăă + + ćĄäťśă¨ĺśç´çľăă - ČăĚđđ Č˝ĚVľ˘vOÉKpˇéű@ + 䝼ä¸ăŽćĄé
ăăăŞăăŽć°ăăăăă°ăŠă ăŤéŠç¨ăăćšćł - Č˝ŞVľ˘vOđJľ˝ĆľÄAöOÉćÁÄťęŞpłęé -Â\ŤđĹĺÉľ˝˘ČçAťĚvOđąĚ_ńĚđÉ]ÁÄ -NĹŕÄĐz é˘ÍĎXĹŤéć¤t[\tgEFAɡéĚŞĹPšB +ăăŞăăć°ăăăăă°ăŠă ăéçşăăă¨ăăŚăĺ
ŹčĄăŤăăŁăŚăăăĺŠç¨ăăă +ĺŻč˝ć§ăć大ăŤăăăăŞăăăăŽăăă°ăŠă ăăăŽĺĽç´ć¸ăŽćĄé
ăŤĺžăŁăŚ +誰ă§ăĺé ĺ¸ăăăăŻĺ¤ć´ă§ăăăăăăŞăźă˝ăăăŚă§ă˘ăŤăăăŽăćĺă§ăă -ťĚ˝ßÉÍAvOÉČşĚć¤Č\ŚđYtľÄžł˘BťĚęA -ŰŘŞrłęĢéƢ¤ąĆđĹŕřĘIÉ`Śé˝ßÉAťęźęĚ\[ -Xt@CĚ`ŞÉ\ŚđYtˇęÎĹŕŔSšBČĆŕAuě \ -ŚvƢ¤sĆSśŞ éęÖĚ|C^žŻÍet@CÉÜßÄu˘Ä -žł˘B +ăăŽăăăŤăŻăăăă°ăŠă ăŤäťĽä¸ăŽăăăŞčĄ¨ç¤şă桝äťăăŚăă ăăăăăŽĺ ´ĺă +äżč¨źăćé¤ăăăŚăăă¨ăăăă¨ăćăĺšćçăŤäźăăăăăŤăăăăăăŽă˝ăź +ăšăăĄă¤ăŤăŽĺé ăŤčĄ¨ç¤şă桝äťăăă°ćăĺŽĺ
¨ă§ăăĺ°ăŞăă¨ăăăčä˝ć¨ŠčĄ¨ +示ăă¨ăăčĄă¨ĺ
¨ćăăăĺ ´ćă¸ăŽăă¤ăłăżă ăăŻĺăăĄă¤ăŤăŤĺŤăăŚç˝Žă㌠+ăă ăăă <one line to give the program's name and a brief idea of what it does.> Copyright (C) <year> <name of author> @@ -337,59 +337,59 @@ of warranty)đÚ§Âć¤KŘÉfÚľAÜ˝ąĚ_ń¨ćŃęŘĚŰŘĚ along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - (ó: + (訳: - <vOĚźOĆAťęŞ˝đˇéŠÉ¢ÄĚČPČŕžB> - Copyright (C) <źďN> <ěŇĚźO> + <ăăă°ăŠă ăŽĺĺă¨ăăăăä˝ăăăăăŤă¤ăăŚăŽç°ĄĺăŞčŞŹćă> + Copyright (C) <輿ćŚĺš´> <ä˝č
ăŽĺĺ> - ąĚvOÍt[\tgEFAšB Ƚ͹ęđAt[\t - gEFAŕcÉćÁÄsłę˝ GNU ęĘöOpř_ń(o[W - 2ŠAó]ÉćÁÄÍťęČ~Ěo[W̤żÇęŠ)Ěčßéđ - ĚşĹÄĐzÜ˝ÍüϡéąĆŞĹŤÜˇB + ăăŽăăă°ăŠă ăŻăăŞăźă˝ăăăŚă§ă˘ă§ăăăăŞăăŻăăăăăăŞăźă˝ă + ăăŚă§ă˘č˛ĄĺŁăŤăăŁăŚçşčĄăăă GNU ä¸čŹĺ
ŹčĄĺŠç¨č¨ąčŤžĺĽç´ć¸(ăăźă¸ă§ + ăł2ăăĺ¸ćăŤăăŁăŚăŻăă䝼éăŽăăźă¸ă§ăłăŽăăĄăŠăă)ăŽĺŽăăćĄäťś + ăŽä¸ă§ĺé ĺ¸ăžăăŻćšĺ¤ăăăă¨ăă§ăăžăă - ąĚvOÍLpĹ éąĆđčÁÄĐzłęܡŞA*SĚłŰ - Ř* šB¤ĆÂ\ŤĚŰŘâÁčĚÚIÖĚKŤÍAžOÉŚłę˝ - ŕĚŕÜßSśÝľÜšńBÚľÍGNU ęĘöOpř_ńđ˛ - žł˘B + ăăŽăăă°ăŠă ăŻćç¨ă§ăăăă¨ăéĄăŁăŚé ĺ¸ăăăžăăă*ĺ
¨ăăŽçĄäż + 訟* ă§ăăĺćĽĺŻč˝ć§ăŽäżč¨źăçšĺŽăŽçŽçă¸ăŽéŠĺć§ăŻăč¨ĺ¤ăŤç¤şăăă + ăăŽăĺŤăĺ
¨ăĺĺ¨ăăžăăă芳ăăăŻGNU ä¸čŹĺ
ŹčĄĺŠç¨č¨ąčŤžĺĽç´ć¸ăă + 茧ăă ăăă - Ƚ͹ĚvOƤÉAGNU ęĘöOpř_ńĚĄť¨đ - ęóŻćÁ˝Í¸ĹˇBŕľóŻćÁĢȯęÎAt[\tgEF - AŕcÜĹżľÄžł˘(śćÍ the Free Software Foundation, - Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA)B + ăăŞăăŻăăŽăăă°ăŠă ă¨ĺ
ąăŤăGNU ä¸čŹĺ
ŹčĄĺŠç¨č¨ąčŤžĺĽç´ć¸ăŽč¤čŁ˝çŠă + ä¸é¨ĺăĺăŁăăŻăă§ăăăăĺăĺăŁăŚăăŞăăă°ăăăŞăźă˝ăăăŚă§ + ă˘č˛ĄĺŁăžă§čŤćąăăŚăă ăă(ĺŽĺ
㯠the Free Software Foundation, + Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA)ă ) -dqȢľĚ[Ĺ Č˝Éâ˘íšéű@É¢ÄĚîńŕŤÁŚ -Üľĺ¤B +éťĺăŞăăç´ăŽăĄăźăŤă§ăăŞăăŤĺăĺăăăćšćłăŤă¤ăăŚăŽć
ĺ ąăć¸ăĺ ă +ăžăăăă -vOŞÎbIČŕĚČçÎAÎb[hĹNŽľ˝ŰÉoÍĆľÄČş -Ěć¤ČZ˘mŞ\Śłęéć¤ÉľÄžł˘: +ăăă°ăŠă ă寞芹çăŞăăŽăŞăă°ă寞芹ă˘ăźăă§čľˇĺăăéăŤĺşĺă¨ăăŚäťĽä¸ +ăŽăăăŞçăĺçĽă襨示ăăăăăăŤăăŚăă ăă: Gnomovision version 69, Copyright (C) year name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. - (ó: + (訳: - Gnomovision o[W 69, Copyright (C) N ěŇĚźO - Gnomovision Í*SĚłŰŘ*ĹńłęܡBÚľÍushow wv - Ć^CvľÄşł˘BąęÍt[\tgEFAĹ čA éđ̺Š- ÄĐzˇéąĆާăłęĢܡBÚľÍushow cvĆ^CvľÄş - ł˘B + Gnomovision ăăźă¸ă§ăł 69, Copyright (C) ĺš´ ä˝č
ăŽĺĺ + Gnomovision ăŻ*ĺ
¨ăăŽçĄäżč¨ź*ă§ćäžăăăžăă芳ăăăŻăshow wă + ă¨ăżă¤ăăăŚä¸ăăăăăăŻăăŞăźă˝ăăăŚă§ă˘ă§ăăăăăćĄäťśăŽä¸ă§ + ĺé ĺ¸ăăăă¨ă弨ĺąăăăŚăăžăă芳ăăăŻăshow căă¨ăżă¤ăăăŚä¸ + ăăă ) -ąąĹAźzIČR}hushow wvĆushow cvÍęĘöOpř_ń -ĚKŘČŞđ\Śˇéć¤ÉČÁĢȯęÎČčÜšńBŕżëńA Č -˝Şg¤R}hđushow wvâushow cvĆÄÔKRŤÍ čÜšńĚĹA - Č˝ĚvOÉíšÄ}EXĚNbNâj
[ĚACeÉľÄ -ŕ\šB +ăăă§ă䝎ćłçăŞăłăăłăăshow wăă¨ăshow căăŻä¸čŹĺ
ŹčĄĺŠç¨č¨ąčŤžĺĽç´ć¸ +ăŽéŠĺăŞé¨ĺă襨示ăăăăăŤăŞăŁăŚăăŞăăă°ăŞăăžăăăăăĄăăăă㪠+ăă使ăăłăăłăăăshow wăăăshow căă¨ĺźăśĺż
çść§ăŻăăăžăăăŽă§ă +ăăŞăăŽăăă°ăŠă ăŤĺăăăŚăăŚăšăŽăŻăŞăăŻăăĄăăĽăźăŽă˘ă¤ăă ăŤă㌠+ăçľć§ă§ăă -Ü˝ Č˝ÍAKvČçÎ(vO}[ƾĢĢ˝ç) Č˝ĚŮpĺA - é˘ÍęÉćÁÄÍwZŠçAťĚvOÉÖˇéuě úüşž -(copyright disclaimer)vÉźľÄŕç¤×ŤĹˇBČşÍášĚĹAź -OđĎŚÄžł˘: +ăžăăăŞăăŻăĺż
čŚăŞăă°(ăăă°ăŠăăźă¨ăăŚĺăăŚăăă)ăăŞăăŽéç¨ä¸ťă +ăăăăŻĺ ´ĺăŤăăŁăŚăŻĺŚć ĄăăăăăŽăăă°ăŠă ăŤé˘ăăăčä˝ć¨ŠćžćŁĺŁ°ć +(copyright disclaimer)ăăŤç˝˛ĺăăŚăăăăšăă§ăă䝼ä¸ăŻäžă§ăăŽă§ăĺ +ĺăĺ¤ăăŚăă ăă: Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker. @@ -397,20 +397,20 @@ of warranty)đÚ§Âć¤KŘÉfÚľAÜ˝ąĚ_ń¨ćŃęŘĚŰŘĚ <signature of Ty Coon>, 1 April 1989 Ty Coon, President of Vice - (ó: + (訳: - YoyodyneĐÍąąÉAJames HackerÉćÁÄŠę˝vO - uGnomovisionv(RpCÖʡvO)ÉÖˇéęŘĚě Ě - vđúüľÜˇB + Yoyodyne礞ăŻăăăŤăJames HackerăŤăăŁăŚć¸ăăăăăă°ăŠă + ăGnomovisionă(ăłăłăă¤ăŠă¸éăăăă°ăŠă )ăŤé˘ăăä¸ĺăŽčä˝ć¨ŠăŽĺŠ + çăćžćŁăăžăă - <Ty CoonĚź>A1989N41ú - Ty CoonAС + <Ty Coonć°ăŽç˝˛ĺ>ă1989ĺš´4ć1ćĽ + Ty CoonăĺŻç¤žéˇ ) -ąĚęĘöOpř_ńĹÍA Č˝ĚvOđĆčIČvO -ɡéąĆđFßĢܚńB Č˝ĚvOŞTu[`Cu -ČçÎAĆčIČAvP[VĆ Č˝ĚCuđNˇéą -ĆđÂľ˝Ů¤ŞćčÖĹ éĆlŚéŠŕľęÜšńBŕľąęŞ Č -˝Ě]ŢąĆČçÎAąĚ_ńĚăíčÉGNU CuęĘöOpř -_ńđKpľÄžł˘B +ăăŽä¸čŹĺ
ŹčĄĺŠç¨č¨ąčŤžĺĽç´ć¸ă§ăŻăăăŞăăŽăăă°ăŠă ăçŹĺ çăŞăăă°ăŠă +ăŤçľąĺăăăă¨ăčŞăăŚăăžăăăăăŞăăŽăăă°ăŠă ăăľăăŤăźăăłăŠă¤ă +ăŠăŞăŞăă°ăçŹĺ çăŞă˘ăăŞăąăźăˇă§ăłă¨ăăŞăăŽăŠă¤ăăŠăŞăăŞăłăŻăăă +ă¨ă訹ĺŻăăăťăăăăäžżĺŠă§ăăă¨čăăăăăăăžăăăăăăăăă㪠+ăăŽćăăă¨ăŞăă°ăăăŽĺĽç´ć¸ăŽäťŁăăăŤGNU ăŠă¤ăăŠăŞä¸čŹĺ
ŹčĄĺŠç¨č¨ąčŤž +ĺĽç´ć¸ăéŠç¨ăăŚăă ăăă diff --git a/doc/client_packet.txt b/doc/client_packet.txt index 1d1df8c..5b3ba44 100644 --- a/doc/client_packet.txt +++ b/doc/client_packet.txt @@ -41,1032 +41,1032 @@ #0x200 26, 0, 0, 0, 18, 0, 0, 0, 0, 0, 0, 19, -S NCAgŠçŠÄM -R NCAgŠçŠÄóM +S ăŻăŠă¤ă˘ăłăăăčŚăŚé俥 +R ăŻăŠă¤ă˘ăłăăăčŚăŚĺ俥 -B oCg -w [h=2B -l O[h=4B -* 0ÂČă芌ľ +B ăă¤ă +w ăŻăźă=2B +l ăăłă°ăŻăźă=4B +* 0ĺ䝼ä¸ăăăăă S 0064 <version>.l <account name>.24B <password>.24B <version2>.B - AJEgID&pX[hM + ă˘ăŤăŚăłăID&ăăšăŻăźăé俥 S 0065 <account ID>.l <login ID1>.l <login ID2>.l ?.2B <sex>.B - LZIÚąv + ăăŁăŠăťăŹéŻćĽçśčŚćą S 0066 <charactor number>.B - LN^Iđv + ăăŁăŠăŻăżé¸ćčŚćą S 0067 <charactor name>.24B <param etc>.11B - LN^ěŹv + ăăŁăŠăŻăżä˝ćčŚćą S 0068 <charactor ID>.l <mail address>.40B - LN^ív + ăăŁăŠăŻăżĺé¤čŚćą R 0069 <len>.w <login ID1>.l <account ID>.l <login ID2>.l ?.32B <sex>.B {<IP>.l <port>.w <server name>.20B <login users>.w <maintenance>.w <new>.w}.32B* - loginŹ÷&Iîń + loginćĺ&éŻć
ĺ ą R 006a <error No>.B - login¸s ťĚP - err No=00 ˘o^ĚIDš - err No=01 pX[hŞá˘Üˇ - err No=02 gpúÔŞIšľÄ˘Üˇ - err No=03 T[o[Šçڹ۳ęÜľ˝ - err No=04 đńłę˝IDAÜ˝ÍAJEgubNłęĢéIDš - err No=05 ĹVĚpb`ĹÍ čÜšń - err No=06 đńłę˝IDAÜ˝ÍAJEgubNłęĢéIDš - err No=07 T[o[ŞŹGľÄ˘Üˇ + login夹ć ăăŽďź + err No=00 ćŞçťé˛ăŽIDă§ă + err No=01 ăăšăŻăźăăéăăžă + err No=02 使ç¨ćéăçľäşăăŚăăžă + err No=03 ăľăźăăźăăćĽçśćĺŚăăăžăă + err No=04 解ç´ăăăIDăăžăăŻă˘ăŤăŚăłăăăăăŻăăăŚăăIDă§ă + err No=05 ćć°ăŽăăăă§ăŻăăăžăă + err No=06 解ç´ăăăIDăăžăăŻă˘ăŤăŚăłăăăăăŻăăăŚăăIDă§ă + err No=07 ăľăźăăźă桡éăăŚăăžă R 006b <len>.w <charactor select data>.106B* - LZIÚąŹ÷&LN^f[^ + ăăŁăŠăťăŹéŻćĽçśćĺ&ăăŁăŠăŻăżăăźăż <charactor select data> = <charactor ID>.l <base exp>.l <zeny>.l <job exp>.l <job level>.l ?.8B <option>.l <karma>.l <manner>.l ?.2B <HP>.w <MaxHP>.w <SP>.w <MaxSP>.w <speed>.w <class>.w <hair>.w <weapon>.2w <base level>.w <skill point>.w <head_bottom>.w <sheild>.w <head option top>.w <head option mid>.w <hair color>.w ?.w <name>.24B <STR>.B <AGI>.B <VIT>.B <INT>.B <DEX>.B <LUK>.B <charactor number>.B ?.B R 006c <error No>.B - LN^Iđ¸s + ăăŁăŠăŻăżé¸ć夹ć R 006d <charactor select data>.106B - LN^쏏÷ + ăăŁăŠăŻăżä˝ććĺ R 006e <error No>.B - LN^쏸s + ăăŁăŠăŻăżä˝ć夹ć R 006f - LN^íŹ÷ + ăăŁăŠăŻăżĺé¤ćĺ R 0070 <error No>.B - LN^í¸s - err No=00 [AhXŞá¤ - err No=01 íŞŰłę˝ + ăăŁăŠăŻăżĺé¤ĺ¤ąć + err No=00 ăĄăźăŤă˘ăăŹăšăéă + err No=01 ĺé¤ăćĺŚăăă R 0071 <charactor ID>.l <map name>.16B <ip>.l <port>.w - LN^IđŹ÷&}bvź&Q[IIP/port + ăăŁăŠăŻăżé¸ććĺ&ăăăĺ&ă˛ăźă éŻIP/port S 0072 <account ID>.l <charactor ID>.l <login ID1>.l <login ID2>.l <sex>.b - Q[IÚąv + ă˛ăźă éŻćĽçśčŚćą R 0073 <server tick>.l <coordidate>.3B ?.2B - Q[IÚąŹ÷&T[o¤1msv&oťĘu + ă˛ăźă éŻćĽçśćĺ&ăľăźăĺ´1msćč¨&ĺşçžä˝ç˝Ž R 0078 <ID>.l <speed>.w <opt1>.w <opt2>.w <option>.w <class>.w <hair>.w <weapon>.w <head option bottom>.w <sheild>.w <head option top>.w <head option mid>.w <hair color>.w ?.w <head dir>.w <guild>.l <emblem>.l <manner>.w <karma>.B <sex>.B <X_Y_dir>.3B ?.B ?.B <sit>.B <Lv>.B - }bv[h&ÚŽpAüŤtŤpLîń? + ăăăăăźăć&秝ĺćç¨ăĺăäťăç¨ăăŁăŠć
ĺ ą? R 0079 <ID>.l <speed>.w <opt1>.w <opt2>.w <option>.w <class>.w <hair>.w <weapon>.w <head option bottom>.w <sheild>.w <head option top>.w <head option mid>.w <hair color>.w ?.w <head dir>.w <guild>.l <emblem>.l <manner>.w <karma>.B <sex>.B <X_Y_dir>.3B ?.B ?.B <Lv>.B - e|Ě\ŚÍÍফLpAüŤtŤłľLîń? + ăăŹăçăŽčĄ¨ç¤şçŻĺ˛ĺ
沸ăăăŁăŠç¨ăĺăäťăçĄăăăŁăŠć
ĺ ą? R 007b <ID>.l <speed>.w <opt1>.w <opt2>.w <option>.w <class>.w <hair>.w <weapon>.w <head option bottom>.w <server tick>.l <sheild>.w <head option top>.w <head option mid>.w <hair color>.w ?.w <head dir>.w <guild>.l <emblem>.l <manner>.w <karma>.B <sex>.B <X_Y_X_Y>.5B ?.B ?.B ?.B <Lv>.B - \ŚÍÍŕLÚŽîń + 襨示çŻĺ˛ĺ
ăăŁăŠç§ťĺć
ĺ ą R 007c <ID>.l <speed>.w ?.6w <class>.w ?.7w <X_Y>.3B ?.2B - NPCp\ŚÍÍŕLîń + NPCç¨čĄ¨ç¤şçŻĺ˛ĺ
ăăŁăŠć
ĺ ą S 007d - map[hIč + mapăăźăçľă S 007e <client tick>.l - NCAg¤1ms^C}M + ăŻăŠă¤ă˘ăłăĺ´1msăżă¤ăé俥 R 007f <server tick>.l - T[o¤1ms^C}M + ăľăźăĺ´1msăżă¤ăé俥 R 0080 <ID>.l <type>.B - type=00 LÁĹ (ćĘOÚŽBĚÁĹ?) - type=01 LS - type=02 LÁĹ (logout?) - type=03 e|[g (e|,,ąH) + type=00 ăăŁăŠćśćť
(çťé˘ĺ¤ç§ťĺăćťä˝ćśćť
ç?) + type=01 ăăŁăŠćťäşĄ + type=02 ăăŁăŠćśćť
(logoutç?) + type=03 ăăŹăăźă (ăăŹă,čż,čśçďź) R 0081 <type>.B - login¸s ťĚQ - type=01 T[o[ÚąIš - type=02 ŻśIDĹźĚgpŇŞOCľÜľ˝ - type=03 T[o[ĆĚŻúɸsľÜľ˝ - type=04 nćĚűelő´ßĹڹōܚń - type=05 PWÎČşÍڹōܚń - type=06 Ďłę˝AJEgĹÍ čÜšń - type=07 T[o[ŞŹGľÄ˘Üˇ - type=08 OĚÚąîńŞcÁĢܡ - type=0b AJEgŞŰŻłęÜľ˝ - type=0c ŰŕVXeĎXĚ˝ßAęIšľÜˇ - type=0d IPŞęvľČ˘˝ßAÚąđIšľÜˇ - type=10 LżT[rXÉČčÜľ˝ - type=11 `PbgŞíęĢȢŠALřúŔŞŘęĢܡ + login夹ć ăăŽďź + type=01 ăľăźăăźćĽçśçľäş + type=02 ĺăIDă§äťăŽä˝żç¨č
ăăă°ă¤ăłăăžăă + type=03 ăľăźăăźă¨ăŽĺćăŤĺ¤ąćăăžăă + type=04 ĺ°ĺăŽĺ厚人ĺĄčś
éă§ćĽçśă§ăăžăă + type=05 ďźďźćłäťĽä¸ăŻćĽçśă§ăăžăă + type=06 ćąşć¸ăăăă˘ăŤăŚăłăă§ăŻăăăžăă + type=07 ăľăźăăźă桡éăăŚăăžă + type=08 ĺăŽćĽçść
ĺ ąăćŽăŁăŚăăžă + type=0b ă˘ăŤăŚăłăăäżçăăăžăă + type=0c 課éăˇăšăă ĺ¤ć´ăŽăăăä¸ćçľäşăăžă + type=0d IPăä¸č´ăăŞăăăăćĽçśăçľäşăăžă + type=10 ććăľăźăăšăŤăŞăăžăă + type=11 ăăąăăă財ăăăŚăăŞăăăćĺšćéăĺăăŚăăžă S 0085 <X_Y>.3B - ÚŽv + 秝ĺčŚćą R 0087 <server tick>.l <X_Y_X_Y>.5B ?.B - ÚŽ + 秝ĺĺżç R 0088 <ID>.l <X>.w <Y>.w - ÚŽrâ~ + 秝ĺéä¸ĺć˘ S 0089 <target ID>.l <type>.B - type=00 targetđ1ńŁé - type=02 Ŕé - type=03 §żăé - type=07 targetđŁčąŻé + type=00 targetă1ĺ掴ă + type=02 座ă + type=03 çŤăĄä¸ă + type=07 targetă掴ăçśăă R 008a <src ID>.l <dst ID>.l <server tick>.l <src speed>.l <dst speed>.l <param1>.w <param2>.w <type>.B <param3>.w type=00 param1=0 miss - type=00 param1:_[W(Ěv?) param2:Ş param3:ATV2Źtč_[W - NPCŠçĚUĚęAparam2,param3ÍS~f[^ - speedÍPCĚęŕASPDĆęv - type=01 itemđE¤ ID*2ČOS~ - type=02 Ŕé src IDČOS~ - type=03 §Â src IDČOS~ - type=08 ĄU - type=09 _[W[VČľÉ_[WžŻ\Śłęé¨(Cf
A) - type=0a NeBJ - type=0b ŽSńđ + type=00 param1:ăăĄăźă¸(ăŽĺč¨?) param2:ĺĺ˛ć° param3:ă˘ăľăˇăł2ĺćľéćăăĄăźă¸ + NPCăăăŽćťćăŽĺ ´ĺăparam2,param3ăŻă´ăăăźăż + speedăŻPCăŽĺ ´ĺĺ
é¨ASPDă¨ä¸č´ + type=01 itemăćžă ID*2䝼ĺ¤ă´ă + type=02 座ă src ID䝼ĺ¤ă´ă + type=03 çŤă¤ src ID䝼ĺ¤ă´ă + type=08 č¤ć°ćťć + type=09 ăăĄăźă¸ă˘ăźăˇă§ăłăŞăăŤăăĄăźă¸ă ă襨示ăăăçŠ(ă¤ăłăăĽă˘) + type=0a ăŻăŞăăŁăŤăŤ + type=0b ĺŽĺ
¨ĺéż S 008c <len>.w <str>.?B - ĘížMB`bgÍ`bgŕžpÉČé - ćŞĚ"<nick> : "ĚŞÍNCAg¤ĹtŻé + é常çşč¨é俥ăăăŁăăä¸ăŻăăŁăăĺ
çşč¨ç¨ăŤăŞă + ĺ
é ăŽ"<nick> : "ăŽé¨ĺăŻăŻăŠă¤ă˘ăłăĺ´ă§äťăăäş R 008d <len>.w <ID>.l <str>.?B - IDłńĚžóMB`bgÍ`bgŕžpÉČé + IDăăăŽçşč¨ĺ俥ăăăŁăăä¸ăŻăăŁăăĺ
çşč¨ç¨ăŤăŞă R 008e <len>.w <str>.?B - ŠŞĚžóMB`bgÍ`bgŕžpÉČé + čŞĺăŽçşč¨ĺ俥ăăăŁăăä¸ăŻăăŁăăĺ
çşč¨ç¨ăŤăŞă S 0090 <ID>.l <type?>.B - NPCÉbľŠŻéBtypeÍ01ľŠŠ˝łľ + NPCăŤčŠąăăăăătypeăŻ01ăăčŚăäşçĄă R 0091 <map name>.16B <X>.w <Y>.w - Iŕ}bvÔÚŽAe|,p + éŻĺ
ăăăé秝ĺăăăŹă,čżçç¨ R 0092 <map name>.16B <X>.w <Y>.w <IP>.l <port>.w - IÔÚŽ + éŻé秝ĺ R 0093 - 8É1ńžŻĎŞBä + 8ćä¸ăŤ1ĺă ă茳渏ăčŹ S 0094 <ID>.l - IDĚLźvB0095Š0195ĚÔŞ é͸ + IDăŽăăŁăŠĺçčŚćąă0095ă0195ăŽčżçăăăăŻă R 0095 <ID>.l <nick>.24B - NPC,Mh˘ŽPCĚ0094ÖĚÔ - 0193 <charID>.l Ĺâ˘íšÄ - 0194 <charID>.l <name>.24B ĚĹžÄܡB + NPC,ăŽăŤăćŞćĺąPCăŽ0094ă¸ăŽčżç + 0193 <charID>.l ă§ĺăĺăă㌠+ 0194 <charID>.l <name>.24B ăŽĺżçă§ĺžăŚăžăă S 0096 <len>.w <nick>.24B <message>.?B - wisM + wisé俥 R 0097 <len>.w <nick>.24B <message>.?B - wisóM + wisĺ俥 R 0098 <type>.B - type=00 wisMŹ÷ - type=01 wisčŞloginľÄȢ? - type=02 wisčŠçignorełęÄé? + type=00 wisé俥ćĺ + type=01 wisç¸ćăloginăăŚăŞă? + type=02 wisç¸ćăăignoreăăăŚă? S 0099 - _ĚşM + çĽăŽĺŁ°é俥 R 009a <len>.w <message>.?B - GMŠçĚVĚş + GMăăăŽĺ¤ŠăŽĺŁ° S 009b <head dir>.w <dir>.B - Ě&ŞĚűüĎXvBNCAgÖĚÍł˘Íl - dirÍ00`07ĹĚĚüŤB00ĹkŠç˝vńčÉ45PĘĹ07ÜĹ - head dirÍ00,01,02ĹŞĚüŤB00ĹĚĆŻśA01ŞEA02Şś + ä˝&é ăŽćšĺĺ¤ć´čŚćąăăŻăŠă¤ă˘ăłăă¸ăŽĺżçăŻçĄăć¨Ąć§ + dirăŻ00ă07ă§ä˝ăŽĺăă00ă§ĺăăĺćč¨ĺăăŤ45°ĺä˝ă§07ăžă§ + head dirăŻ00,01,02ă§é ăŽĺăă00ă§ä˝ă¨ĺăă01ăĺłă02ă塌 R 009c <ID>.l <head dir>.w <dir>.B - IDĚĚ&ŞĚűüĎX + IDăŽä˝&é ăŽćšĺĺ¤ć´ R 009d <ID>.l <item ID>.w <identify flag>.B <X>.w <Y>.w <amount>.w <subX>.B <subY>.B - ÚŽĹ°ACeŞćĘŕÉüÁÄŤ˝ + 秝ĺçă§ĺşă˘ă¤ăă ăçťé˘ĺ
ăŤĺ
ĽăŁăŚăăć R 009e <ID>.l <item ID>.w <identify flag>.B <X>.w <Y>.w <subX>.B <subY>.B <amount>.w - item dropB˝ĚŠ009dĆ}XÚŕĘu&ÂŞüęĎÁĢé + item dropăä˝ć
ă009dă¨ăăšçŽĺ
ä˝ç˝Ž&ĺć°ăĺ
Ľăĺ¤ăŁăŚăă S 009f <ID>.l - IDĚ°ACeđE¤ + IDăŽĺşă˘ă¤ăă ăćžă R 00a0 <index>.w <amount>.w <item ID>.w <identify flag>.B <attribute?>.B <refine>.B <card>.4w <equip type>.w <type>.B <fail>.B - fail=02 枸s? - fail=06 [g łľB枸s + fail=02 ĺĺžĺ¤ąć? + fail=06 ăŤăźă樊çĄăăĺĺžĺ¤ąć R 00a1 <ID>.l - IDĚ°ACeÁ + IDăŽĺşă˘ă¤ăă ćśĺť S 00a2 <index>.w <amount>.w - LACeđˇ + ććă˘ă¤ăă ăč˝ă R 00a3 <len>.w {<index>.w <item ID>.w <type>.B <identify flag>.B <amount>.w ?.2B}.10B* - LÁŐi&űWiXg + ćććśčĺ&ĺéĺăŞăšă R 00a4 <len>.w {<index>.w <item ID>.w <type>.B <identify flag>.B <equip type>.w <equip point>.w <attribute?>.B <refine>.B <card>.4w}.20B* - LőXg + ććčŁ
ĺăŞăšă R 00a5 <len>.w {<index>.w <item ID>.w <type>.B <identify flag>.B <amount>.w ?.2B}.10B* - JvłńÉaŻÄ éÁŐi&űWiXg + ăŤăăŠăăăŤé ăăŚăăćśčĺ&ĺéĺăŞăšă R 00a6 <len>.w {<index>.w <item ID>.w <type>.B <identify flag>.B <equip type>.w <equip point>.w <attribute?>.B <refine>.B <card>.4w}.20B* - JvłńÉaŻÄ éőXg + ăŤăăŠăăăŤé ăăŚăăčŁ
ĺăŞăšă S 00a7 <index>.w <ID>.l - ACeindexđgpˇéBIDÍŠŞĚÝ? + ććă˘ă¤ăă indexă使ç¨ăăăIDăŻčŞĺăŽăż? R 00a8 <index>.w <amount>.w <type>.B - ACegpBtype=00Ěęgp¸s? amountŕS~ĚÍl - type=01ĚęŹ÷ĹAamountÍgpăĚcč + ă˘ă¤ăă 使ç¨ĺżçătype=00ăŽĺ ´ĺ使ç¨ĺ¤ąć? amountăă´ăăŽć¨Ąć§ + type=01ăŽĺ ´ĺćĺă§ăamountăŻä˝żç¨ĺžăŽćŽăĺć° S 00a9 <index>.w <equip type>.w - ACeő + ă˘ă¤ăă čŁ
ĺ R 00aa <index>.w <equip point>.w <type>.B - ACeőBtype=00Ěęő¸s? equip pointŕS~ĚÍl + ă˘ă¤ăă čŁ
ĺĺżçătype=00ăŽĺ ´ĺčŁ
ĺ夹ć? equip pointăă´ăăŽć¨Ąć§ S 00ab <index>.w - őđ + čŁ
ĺč§Łé¤ R 00ac <index>.w <equip point>.w <type>.B - őđBtype=00Ěę¸s? equip pointŕS~ĚÍl + čŁ
ĺ解é¤ĺżçătype=00ăŽĺ ´ĺ夹ć? equip pointăă´ăăŽć¨Ąć§ R 00af <index>.w <amount>.w - ACe¸BamountžŻ¸çˇ + ă˘ă¤ăă ć°ć¸ĺ°ăamountĺă ăć¸ăă R 00b0 <type>.w <val>.l - FXČ\ÍlĚXVBČştype:Ρélđń - 0000:speed 0003:Ťsl 0004:}i[|Cg 0005:HP 0006:MaxHP - 0007:SP 0008:MaxSP 0009:Xe[^X|Cg 000b:x[Xx - 000c:XL|Cg 0018:dĘ(\ŚłęÄéĚ10{) - 0019:ĹĺdĘ(\ŚłęÄéĚ10{) - 0029:ATKO 002a:ATKă 002b:MATKO 002c:MATKă - 002d:DEFO 002e:DEFă 002f:MDEFO 0030:MDEFă - 0031:HIT 0032:FLEEO 0033:FLEEă 0034:NeBJ - 0035:ASPD(2msPĘĚÔ?) 0037:Wux - 0082:ä ATKăĆŻś? + č˛ă
ăŞč˝ĺĺ¤ăŽć´ć°ă䝼ä¸type:寞ĺżăăć°ĺ¤ăĺć + 0000:speed 0003:ćŞčĄĺ¤ 0004:ăăăźăă¤ăłă 0005:HP 0006:MaxHP + 0007:SP 0008:MaxSP 0009:ăšăăźăżăšăă¤ăłă 000b:ăăźăšăŹă㍠+ 000c:ăšăăŤăă¤ăłă 0018:éé(襨示ăăăŚăć°ĺăŽ10ĺ) + 0019:ć大éé(襨示ăăăŚăć°ĺăŽ10ĺ) + 0029:ATKĺ 002a:ATKĺž 002b:MATKĺ 002c:MATKĺž + 002d:DEFĺ 002e:DEFĺž 002f:MDEFĺ 0030:MDEFĺž + 0031:HIT 0032:FLEEĺ 0033:FLEEĺž 0034:ăŻăŞăăŁăŤăŤ + 0035:ASPD(2msĺä˝ăŽćé?) 0037:ă¸ă§ăăŹă㍠+ 0082:čŹ ATKĺžă¨ĺăć°ĺ? R 00b1 <type>.w <val>.l - FXČ\ÍlĚXVBČştype:Ρélđń - 0001:x[X¤oąl 0002:Wu¤oąl 0014:zeny - 0016:x[X¤Kvoąl 0017:Wu¤Kvoąl - Ŕ1ĹÍ00b0ÍvalŞshortA00b1ÍvalŞlongƢ¤g˘ŞŻŞ Á˝ńžŻÇ - ĄĆČÁÄÍˇŞłČÁÄAÓ°Ý˝˘ČŕĚ? + č˛ă
ăŞč˝ĺĺ¤ăŽć´ć°ă䝼ä¸type:寞ĺżăăć°ĺ¤ăĺć + 0001:ăăźăšĺ´çľé¨ĺ¤ 0002:ă¸ă§ăĺ´çľé¨ĺ¤ 0014:zeny + 0016:ăăźăšĺ´ĺż
čŚçľé¨ĺ¤ 0017:ă¸ă§ăĺ´ĺż
čŚçľé¨ĺ¤ + β1ă§ăŻ00b0ăŻvalăshortă00b1ăŻvalălongă¨ăă使ăĺăăăăŁăăă ă㊠+ äťă¨ăŞăŁăŚăŻĺˇŽăçĄăăŞăŁăŚăç˛č
¸ăżăăăŞăăŽ? S 00b2 <type>.B - type=00 SX^[g - type=01 LZv + type=00 ćťäşĄćăŞăšăżăźă + type=01 ăăŁăŠăťăŹčŚćą R 00b3 <type>.B - type=01 LZ + type=01 ăăŁăŠăťăŹĺżç R 00b4 <len>.w <ID>.l <str>.?B - IDĚNPCŠçĚbZ[W + IDăŽNPCăăăŽăĄăăťăźă¸ R 00b5 <ID>.l - IDĚNPCĆĚbZ[WEBhEÉ"NEXT"ACRđoˇ + IDăŽNPCă¨ăŽăĄăăťăźă¸ăŚăŁăłăăŚăŤ"NEXT"ă˘ă¤ăłăłăĺşă R 00b6 <ID>.l - IDĚNPCĆĚbZ[WEBhEÉ"CLOSE"ACRđoˇ + IDăŽNPCă¨ăŽăĄăăťăźă¸ăŚăŁăłăăŚăŤ"CLOSE"ă˘ă¤ăłăłăĺşă R 00b7 <len>.w <ID>.l <str>.?B - IDĚNPCĚďbĹIđÚ\ŚBeÚÍ':'ĹćŘçęé + IDăŽNPCăŽäźčŠąă§é¸ćé
çŽčĄ¨ç¤şăĺé
çŽăŻ':'ă§ĺşĺăăă S 00b8 <ID>.l <select>.B - IDĚNPCĚďbĚIđBeÚÉÉ1`ŞUçęéBffĹLZ? + IDăŽNPCăŽäźčŠąăŽé¸ćăĺé
çŽăŤé ăŤ1ăăćŻăăăăffă§ăăŁăłăťăŤ? S 00b9 <ID>.l - IDĚNPCĆĚďbBNEXT{^đľ˝ + IDăŽNPCă¨ăŽäźčŠąăNEXTăăżăłăćźăă S 00bb <type>.w <amount>.B - Xe[^XupvBtypeÍ000dŠç0012ŞÉSTR,AGI,VIT,INT,DEX,LUKÉÎ + ăšăăźăżăšupčŚćąătypeăŻ000dăă0012ăé ăŤSTR,AGI,VIT,INT,DEX,LUKăŤĺŻžĺż R 00bc <type>.w <fail>.B <val>.B - Xe[^XupBfail=01ČçŹ÷BtypeÍ00bbĆŻśBvalÍăÁ˝ăĚ - ¸sáÍŠ˝ł˘ĚĹäBXe[^X|CgŞŤčȢóÔĹ - 00bbđsĹŤéNCAgŞLęÎAfail=00ÉČéĚĹÍȢŠĆ\z + ăšăăźăżăšupĺżçăfail=01ăŞăćĺătypeăŻ00bbă¨ĺăăvalăŻä¸ăŁăĺžăŽć°ĺ + 夹ćäžăŻčŚăäşçĄăăŽă§čŹăăšăăźăżăšăă¤ăłăăčśłăăŞăçść
㧠+ 00bbăçşčĄă§ăăăŻăŠă¤ă˘ăłăăćăă°ăfail=00ăŤăŞăăŽă§ăŻăŞăăă¨äşćł R 00bd <status point>.w <STR>.B <STRupP>.B <AGI>.B <AGIupP>.B <VIT>.B <VITupP>.B <INT>.B <INTupP>.B <DEX>.B <DEXupP>.B <LUK>.B <LUKupP>.B <ATK>.w <ATKbonus>.w <MATKmax>.w <MATKmin>.w <DEF>.w <DEFbonus>.w <MDEF>.w <MDEFbonus>.w <HIT>.w <FLEE>.w <FLEEbonus>.w <critical>.w ?.w - ÜĆßÄXe[^XîńđépPbg + ăžă¨ăăŚăšăăźăżăšć
ĺ ąăéăăăąăă R 00be <type>.w <val>.B - KvXe[^X|CgXVpPbgBtypeÍ0020`0025ŞÉSTR`LUKÉÎ + ĺż
čŚăšăăźăżăšăă¤ăłăć´ć°ăăąăăătypeăŻ0020ă0025ăé ăŤSTRăLUKăŤĺŻžĺż S 00bf <type>.B - G[VđoˇBtypeÍ00-0c(,0d)ŞALT+1`ALT+9,ALT+0,`L,O[,p[(,Řř)ÉÎ - 00=! 01=? 02=¤ęľ˘(ô) 03=n[g 04=ž 05= ÍÍ(d
) - 06=˘âžČ() 07={č(ŕâŕâ)08=¨ŕ() 09=c 0a=`L - 0b=O[ 0c=p[ 0d=Řř 0e=卢n[g 0f= čŞĆ¤(thanks) - 10=łO 11=˛ßń(sorry) 12=΢ 13=žŠŤ 14= Ě - 15=Ĺ(GoodJob)16=LL 17=VbN 18=Üé 19=oc - 1a=wv(help) 1b=go 1c=Ś[ń 1d=ˇˇ 1e=żă - 1f=żăżă 20=Óń 21=¤ń¤ń + ă¨ă˘ăźăˇă§ăłăĺşăătypeăŻ00-0c(,0d)ăALT+1ăALT+9,ALT+0,ăă§ă,ă°ăź,ăăź(,éĺ˝ć)ăŤĺŻžĺż + 00=! 01=? 02=ăăăă(âŞ) 03=ăăźă 04=ćą 05=ăăŻăŻ(éťç) + 06=ăăă ăŞ(ďź) 07=ćă(ăăăă)08=ăé(ďź) 09=⌠0a=ăă§ă + 0b=ă°ăź 0c=ăăź 0d=éĺ˝ć 0e=大ăăăăźă 0f=ăăăă¨ă(thanks) + 10=çĄĺżľ 11=ăăă(sorry) 12=çŹă 13=ćąăă 14=ă㎠+ 15=ćéŤ(GoodJob)16=ăă§ăăă§ă 17=ăˇă§ă㯠18=ăžă 19=ăă + 1a=ăăŤă(help) 1b=go 1c=ăăźă 1d=ăăăă 1e=ăĄă
+ 1f=ăĄă
ăĄă
20=ăľă 21=ăăăă R 00c0 <ID>.l <type>.B - IDĚlŞG[Vđoľ˝BtypeÍ00bfĆŻś + IDăŽäşşăă¨ă˘ăźăˇă§ăłăĺşăăătypeăŻ00bfă¨ĺă S 00c1 - loginlâ˘íš + loginäşşć°ĺăĺăă R 00c2 <val>.l - loginl + loginäşşć°ĺżç R 00c3 <ID>.l <type>.B <val>.B - Š˝ÚĎXBtypeÍ00Ĺ{Ě(]E)A02ŞíA03ŞŞ(ş)A04ŞŞ(ă)A05ŞŞ()A08Ş + čŚăçŽĺ¤ć´ătypeăŻ00ă§ćŹä˝(蝢čˇćç)ă02ăćŚĺ¨ă03ăé (ä¸)ă04ăé (ä¸)ă05ăé (ä¸)ă08ăçž R 00c4 <ID>.l - bŠŻ˝NPCޤlžÁ˝ĚĹbuy/sellIđo + 芹ăăăNPCăĺäşşă ăŁăăŽă§buy/sellé¸ćçŞĺş R 00c5 <ID>.l <type>.B - buy/sellIđBtype=00ČçbuyBtype=01Čçsell + buy/sellé¸ćătype=00ăŞăbuyătype=01ăŞăsell R 00c6 <len>.w {<value>.l <DCvalue>.l <type>.B <item ID>.w}.11B* - NPC̨XbuyIđBDCvalueͤlDCăĚli + NPCăŽăĺşbuyé¸ććăDCvalueăŻĺäşşDCĺžăŽĺ¤ćŽľ R 00c7 <len>.w {<index>.w <value>.l <OCvalue>.l}.10B* - NPC̨XsellIđBOCvalueͤlOCăĚli + NPCăŽăĺşsellé¸ććăOCvalueăŻĺäşşOCĺžăŽĺ¤ćŽľ S 00c8 <len>.w {<amount>.w <item ID>.w}.4B* - NPC̨XŠç¤ + NPCăŽăĺşăă財ă S 00c9 <len>.w {<index>.w <amount>.w}.4B* - NPC̨XÉé + NPCăŽăĺşăŤĺŁ˛ă R 00ca <type>.B - NPCŠçwüIšBtype=00Ź÷ + NPCăăčłźĺ
Ľçľäşătype=00ćĺ R 00cb <type>.B - NPCÖpIšBtype=00Ź÷ + NPCă¸ĺŁ˛ĺ´çľäşătype=00ćĺ S 00cc <ID>.l - GMpENbNj
[uinamejgpҧIšvgp -R 00cd <IDH>.l - GMpENbNj
[uinamejgpҧIšvĚ - <ID>Ş0Ěę͸sĆ\ŚB(ąĚpPbgÍ˝žĚšBÚąIšĚ@\Í čÜšńB) + GMç¨ĺłăŻăŞăăŻăĄăăĽăźăďźnameďźä˝żç¨č
埡ĺśçľäşăä˝żç¨ +R 00cd <IDďź>.l + GMç¨ĺłăŻăŞăăŻăĄăăĽăźăďźnameďźä˝żç¨č
埡ĺśçľäşăăŽĺżç + <ID>ă0ăŽĺ ´ĺăŻĺ¤ąćă¨čĄ¨ç¤şă(ăăŽăăąăăăŻăă ăŽĺżçă§ăăćĽçśçľäşăŽćŠč˝ăŻăăăžăăă) S 00cf <nick>.24B <type>.B - type=00 nickŠçĚžóŻtŻŰ (/ex nick) - type=01 nickŠçĚžóŻtŻÂ (/in nick) + type=00 nickăăăŽçşč¨ĺăäťăćĺŚ (/ex nick) + type=01 nickăăăŽçşč¨ĺăäťăč¨ąĺŻ (/in nick) S 00d0 <type>len.B - type=00 SÄĚžóŻtŻŰ (/exall) - type=01 SÄĚžóŻtŻÂ (/inall) + type=00 ĺ
¨ăŚăŽçşč¨ĺăäťăćĺŚ (/exall) + type=01 ĺ
¨ăŚăŽçşč¨ĺăäťăč¨ąĺŻ (/inall) R 00d1 <type>.B <fail>.B - fail=00 žóŻtŻŰŹ÷ - fail=01 žóŻtŻŰ¸s + fail=00 çşč¨ĺăäťăćĺŚćĺ + fail=01 çşč¨ĺăäťăćĺŚĺ¤ąć R 00d2 <type>.B <fail>.B - fail=00 SžóŻtŻŰŹ÷ - fail=01 SžóŻtŻŰ¸s + fail=00 ĺ
¨çşč¨ĺăäťăćĺŚćĺ + fail=01 ĺ
¨çşč¨ĺăäťăćĺŚĺ¤ąć S 00d5 <len>.w <limit>.w <pub>.B <passwd>.8B <title>.?B - `bg§ÄBąąŠç`bgÖWŞąŻÇ˛×ŞĂ˘ĚĹâŽćë + ăăŁăăçŤăŚăăăăăăăŁăăé˘äżăçśăăăŠčŞżăšăçăăŽă§čŁĺŽăă R 00d6 <fail>.B - `bg§Ä + ăăŁăăçŤăŚĺżç R 00d7 <len>.w <owner ID>.l <chat ID>.l <limit>.w <users>.w <pub>.B <title>.?B - ćĘŕ`bgîń + çťé˘ĺ
ăăŁăăć
ĺ ą R 00d8 <chat ID>.l - `bgÁ + ăăŁăăćśĺť S 00d9 <chat ID>.l <passwd>.8B - `bgQÁvż + ăăŁăăĺĺ čŚčŤ R 00da <fail>.B - `bgQÁ¸s + ăăŁăăĺĺ 夹ć R 00db <len>.w <chat ID>.l {<index>.l <nick>.24B}.28B* - `bgQÁŇXg + ăăŁăăĺĺ č
ăŞăšă R 00dc <users>.w <nick>.24B - `bgÖĚQÁŇÇÁ(?) + ăăŁăăă¸ăŽĺĺ č
čż˝ĺ (?) R 00dd <index>.w <nick>.24B <fail>.B - `bgŠçQÁҲŻ + ăăŁăăăăĺĺ č
ćă S 00de <len>.w <limit>.w <pub>.B <passwd>.8B <title>.?B - `bgXe[^XĎX + ăăŁăăăšăăźăżăšĺ¤ć´ R 00df <len>.w <owner ID>.l <chat ID>.l <limit>.w <users>.w <pub>.B <title>.?B - `bgXe[^XĎXŹ÷ + ăăŁăăăšăăźăżăšĺ¤ć´ćĺ S 00e0 ?.l <nick>.24B - `bg[LŇĎXv? + ăăŁăăăŤăźă ććč
ĺ¤ć´čŚćą? R 00e1 <index>.l <nick>.24B - `bgQÁŇÔtŻźľ? + ăăŁăăĺĺ č
çŞĺˇäťăç´ă? S 00e2 <nick>.24B - `bgkick + ăăŁăăkick S 00e3 - `bg˛Ż + ăăŁăăćă S 00e4 <ID>.l - ćčřŤv + ĺăĺźăčŚćą R 00e5 <nick>.24B - ćčřŤvżóŻ + ĺăĺźăčŚčŤĺă S 00e6 <type>.B - type=03 ćčřŤvżok - type=04 ćčřŤvżLZ + type=03 ĺăĺźăčŚčŤok + type=04 ĺăĺźăčŚčŤăăŁăłăťăŤ R 00e7 <fail>.B - ćčřŤv - fail=00 ŁŞßŹ - fail=03 vżóŻÄę˝ - fail=04 LZłę˝? + ĺăĺźăčŚćąĺżç + fail=00 čˇé˘ăé éă + fail=03 čŚčŤĺăăŚăăă + fail=04 ăăŁăłăťăŤăăă? S 00e8 <index>.w <amount>.l - ACeÇÁBindex=0ĹzenyÇÁBłKNCAgĹÍzenyÍ00ebĚźOĚÝ + ă˘ă¤ăă čż˝ĺ ăindex=0ă§zenyčż˝ĺ ăćŁčŚăŻăŠă¤ă˘ăłăă§ăŻzenyăŻ00ebăŽç´ĺăŽăż R 00e9 <amount>.l <type ID>.w <identify flag>.B <attribute?>.B <refine>.B <card>.4w - čűŠçĚACeÇÁ + ç¸ććšăăăŽă˘ă¤ăă čż˝ĺ R 00ea <index>.w <fail>.B - fail=00 ACeÇÁŹ÷ - fail=01 ÇÁ¸sBč¤dĘI[o + fail=00 ă˘ă¤ăă čż˝ĺ ćĺ + fail=01 čż˝ĺ 夹ćăç¸ćĺ´ééăŞăźă S 00eb - ACeÇÁŽš(okľ) + ă˘ă¤ăă čż˝ĺ ĺŽäş(okćźă) R 00ec <fail>.B - fail=00 ŠŞŠçĚokóĚ - fail=01 čŠçĚokóĚ + fail=00 čŞĺăăăŽokĺé + fail=01 ç¸ćăăăŽokĺé S 00ed - ćčřŤLZ + ĺăĺźăăăŁăłăťăŤ R 00ee - ćčřŤŞLZłęÜľ˝ + ĺăĺźăăăăŁăłăťăŤăăăžăă S 00ef - ćčřŤř(tradeľ) + ĺăĺźă訹荞(tradećźă) R 00f0 - ćčřŤŽš + ĺăĺźăĺŽäş R 00f2 <num>.w <limit>.w - JvłńeACeÂ&ťó + ăŤăăŠăă訹厚ă˘ă¤ăă ĺć°&çžçś S 00f3 <index>.w <amount>.l - JvłńqÉÉACeúčÝ + ăŤăăŠăăĺ庍ăŤă˘ă¤ăă ćžăčžźăż R 00f4 <index>.w <amount>.l <type ID>.w <identify flag>.B <attribute?>.B <refine>.B <card>.4w - JvłńqÉĚACeÇÁ + ăŤăăŠăăĺ庍ăŽă˘ă¤ăă čż˝ĺ S 00f5 <index>.w <amount>.l - JvłńqÉŠçACećčoľv + ăŤăăŠăăĺ庍ăăă˘ă¤ăă ĺăĺşăčŚćą R 00f6 <index>.w <amount>.l - JvłńqÉŠçACećčoľ + ăŤăăŠăăĺ庍ăăă˘ă¤ăă ĺăĺşăĺżç S 00f7 - JvłńqÉÂśv + ăŤăăŠăăĺ庍éăčŚćą R 00f8 - JvłńqÉÂś + ăŤăăŠăăĺ庍éăĺżç S 00f9 <party name>.24B - p[eBěŹv + ăăźăăŁä˝ćčŚćą R 00fa <fail>.B - p[eBěŹ - fail=00 up[eB[đŹľÜľ˝Bv - fail=01 uŻśźOĚp[eB[Ş čܡBv - fail=02 uˇĹÉp[eB[ÉÁüľÄ˘ÜˇBv + ăăźăăŁä˝ćĺżç + fail=00 ăăăźăăŁăźăçľćăăžăăăă + fail=01 ăĺăĺĺăŽăăźăăŁăźăăăăžăăă + fail=02 ăăă§ăŤăăźăăŁăźăŤĺ ĺ
ĽăăŚăăžăăă R 00fb <len>.w <party name>.24B {<ID>.l <nick>.24B <map name>.16B <leader>.B <offline>.B}.46B* - p[eBîńÜĆßÄč + ăăźăăŁć
ĺ ąăžă¨ăăŚéă S 00fc <ID>.l - p[eBŠUˇé + ăăźăăŁĺ§čŞăă R 00fd <nick>.24B <fail>.B - fail=00 čÍůÉp[eBÉüÁĢ˝ - fail=01 čÉŰłę˝ - fail=02 ŠUŹ÷ + fail=00 ç¸ćăŻć˘ăŤăăźăăŁăŤĺ
ĽăŁăŚăă + fail=01 ç¸ćăŤćĺŚăăă + fail=02 ĺ§čŞćĺ R 00fe <ID>.l <party name>.24B - p[eBÉUíę˝ + ăăźăăŁăŤčŞăăă S 00ff <ID>.l <fail>.l - p[eBÉUíę˝ĚÔBfail=1 okÔ? + ăăźăăŁăŤčŞăăăćăŽčżçăfail=1 okčżç? S 0100 - p[eBEŢv + ăăźăăŁčąéčŚćą R 0101 <exp>.w <item?>.w - p[eBÝčťó? exp=2ĚęÍö˝zŞÝč¸s? + ăăźăăŁč¨ĺŽçžçś? exp=2ăŽĺ ´ĺăŻĺ
Źĺšłé
ĺč¨ĺŽĺ¤ąć? S 0102 <exp>.w <item?>.w - p[eBÝčĎX + ăăźăăŁč¨ĺŽĺ¤ć´ R 0104 <ID>.l ?.l <X>.w <Y>.w <offline>.B <party name>.24B <nick>.24B <map name>.16B - p[eB1lŞîńXV + ăăźăăŁ1äşşĺć
ĺ ąć´ć° R 0105 <ID>.l <nick>.24B <fail>.B - nickłńŞp[eBŠçŁE + nickăăăăăźăăŁăăé˘čą R 0106 <ID>,l <HP>.w <MaxHP>.w - p[eBoHPXV + ăăźăăŁăĄăłăHPć´ć° R 0107 <ID>.l <X>.w <Y>.w - p[eBoĘuXV + ăăźăăŁăĄăłăä˝ç˝Žć´ć° S 0108 <len>.w <message>.?B - p[eBŕž + ăăźăăŁĺ
çşč¨ R 0109 <len>.w <ID>.l <message>.?B - p[eBŕžóM + ăăźăăŁĺ
çşč¨ĺ俥 R 010a <type ID>.w - MVPACećž + MVPă˘ă¤ăă ĺĺž R 010b <exp>.l - MVPoąlćž + MVPçľé¨ĺ¤ĺĺž R 010c <ID>.l - MVPL\Ś + MVPăăŁăŠčĄ¨ç¤ş R 010e <skill ID>.w <lv>.w <sp>.w <range>.w <up>.B - XLîńXVBsp͢gp? + ăšăăŤć
ĺ ąć´ć°ăspăŻćŞä˝żç¨? R 010f <len>.w {<skill ID>.w <target type>.w ?.w <lv>.w <sp>.w <range>.w <skill name>.24B <up>.B}.37B* - XLîńĚňBskill nameÍęŹęÄȢ¨Ş éAL_PNEUMA,PR_SLOWPOISON - target typeÍ0-pbVuA1-GA2-ęA4-ŚŽA16-Ąű - lv=0 up=0ĚęÍXgÉoľÄȢ? + ăšăăŤć
ĺ ąăŽĺĄăskill nameăŻä¸é¨ćľăăŚćĽăŞăçŠăăăďźAL_PNEUMA,PR_SLOWPOISONç + target typeăŻ0-ăăăˇăă1-ćľă2-ĺ ´ćă4-ĺłćçşĺă16-ĺłćš + lv=0 up=0ăŽĺ ´ĺăŻăŞăšăăŤĺşăăŚăŞă? R 0110 <skill ID>.w <basic type>.w ?.w <fail>.B <type>.B - fail=00ĚÉXLp¸s? - type 00:basic typeĚű 01:SPsŤ 02:HPsŤ 03:memołľ 04:delay - 05:¨ŕłľ(ßÜ[) 06:íŞćëľČ˘ 07:ÔWFłľ 08:ÂWFłľ 09:ä - basic type 00:ćčřŤ 01:emotion 02:Ŕč 03:`bg 04:p[eB - 05:shout? 06:PK 07:}i[|Cg + fail=00ăŽćăŤăšăăŤĺŠç¨ĺ¤ąć? + type 00:basic typeăŽćš 01:SPä¸čśł 02:HPä¸čśł 03:memoçĄă 04:delayä¸ + 05:ăéçĄă(ăăžăź) 06:ćŚĺ¨ăăăăăăŞă 07:辤ă¸ă§ă çĄă 08:éă¸ă§ă çĄă 09:čŹ + basic type 00:ĺăĺźă 01:emotion 02:座ă 03:ăăŁăă 04:ăăźă㣠+ 05:shout? 06:PK 07:ăăăźăă¤ăłă R 0111 <skill ID>.w <target type>.w ?.w <lv>.w <sp>.w <range>.w <skill name>.24B <up>.B - 010fĚ1ÂŞBŔ2žĆ˘gp? - 20040415]EÉĎŞ + 010făŽ1ă¤ĺăβ2ă ă¨ćŞä˝żç¨? + 20040415蝢čˇćăŤčŚłć¸Ź S 0112 <skill ID>.w - XLlvupv + ăšăăŤlvupčŚćą S 0113 <level>.w <skill ID>.w <ID>.l - IDđ^[QbgÉskillđg¤ + IDăăżăźă˛ăăăŤskillă使ă R 0114 <skill ID>.w <src ID>.l <dst ID>.l <server tick>.l <src speed>.l <dst speed>.l <param1>.w <param2>.w <param3>.w <type>.B - UnXLGtFNg@ - type=04 ÎÇĹĎŞ type=06ĆŮÚŻś? - type=05 NB/FBlĚŞUľ˝_[WpH - type=06 PŕĚ? param1Í_[WvAparam2ÍlevelAparam3Í1ĹčĆ\z - type=07 _[W\ŚłľH - type=08 AĹŕĚ? param1Í_[WvAparam2ÍlevelAparam3ÍŞĆ\z - type=09 _[W[VČľÉ_[WžŻ\Śłęé¨(Cf
A)ĆvÁ˝ĚžŞ_[W[VŞoé¨B(@\Íä) + ćťćçłťăšăăŤă¨ăă§ăŻă@ + type=04 çŤĺŁă§čŚłć¸Ź type=06ă¨ăťăźĺă? + type=05 NB/FBlăŽĺćŁăăăăĄăźă¸ç¨ďź + type=06 ĺçşăăŽ? param1ăŻăăĄăźă¸ĺč¨ăparam2ăŻlevelăparam3ăŻ1ĺşĺŽă¨äşćł + type=07 ăăĄăźă¸čĄ¨ç¤şçĄăďź + type=08 éŁćăăŽ? param1ăŻăăĄăźă¸ĺč¨ăparam2ăŻlevelăparam3ăŻĺĺ˛ć°ă¨äşćł + type=09 ăăĄăźă¸ă˘ăźăˇă§ăłăŞăăŤăăĄăźă¸ă ă襨示ăăăçŠ(ă¤ăłăăĽă˘)ă¨ćăŁăăŽă ăăăĄăźă¸ă˘ăźăˇă§ăłăĺşăçŠă(ćŠč˝ăŻčŹ) R 0115 <skill ID>.w <src ID>.l <dst ID>.l <server tick>.l <src speed>.l <dst speed>.l <X>.w <Y>.w <param1>.w <param2>.w <param3>.w <type>.B - eŤňÎľLčUnXLGtFNg - type=05 _[W&eŤňÎľBparam1Í_[WvAparam2ÍlevelAparam3ÍŞĆ\z - type=06 Sn? ČĆŕparam1ÍS~ĚÍl - type=09 _[W[VČľÉ_[WžŻ\Śłęé¨(Cf
A)ĆvÁ˝ĚžŞ_[W[VŞoé¨B(@\Íä) + ĺźžăéŁă°ăćăćťćçłťăšăăŤă¨ăă§ăŻă + type=05 ăăĄăźă¸&ĺźžăéŁă°ăăparam1ăŻăăĄăźă¸ĺč¨ăparam2ăŻlevelăparam3ăŻĺĺ˛ć°ă¨äşćł + type=06 çĺżĺ°? ĺ°ăŞăă¨ăparam1ăŻă´ăăŽć¨Ąć§ + type=09 ăăĄăźă¸ă˘ăźăˇă§ăłăŞăăŤăăĄăźă¸ă ă襨示ăăăçŠ(ă¤ăłăăĽă˘)ă¨ćăŁăăŽă ăăăĄăźă¸ă˘ăźăˇă§ăłăĺşăçŠă(ćŠč˝ăŻčŹ) S 0116 <level>.w <skill ID>.w <X>.w <Y>.w - (X,Y)đ^[QbgÉskillđg¤ + (X,Y)ăăżăźă˛ăăăŤskillă使ă R 0117 <skill ID>.w <src ID>.l <val>.w <X>.w <Y>.w <server tick>.l - ęčĚXLGtFNg\ŚBvalÍxŠAęĹł?(XÇ) + ĺ ´ćç¸ćăŽăšăăŤă¨ăă§ăŻă襨示ăvalăŻăŹăăŤăăä¸é¨ĺşă?(ć°ˇĺŁ) S 0118 - ULZ + ćťćăăŁăłăťăŤ R 0119 <ID>.l <param1>.w <param2>.w <param3>.w ?.B - Š˝ÚĎX - param1=02 tXg_CoĹčĐŻ? - param2=01 Ĺ? - param2=20 ANGELUSóÔ? - param3=01 TCgŠb`? - param3=0b nCfBOóÔ? - param3=0b N[LOóÔ? - param3=0d J[gtŤ - param3=0e étŤ - param3=0f yRyRćč + čŚăçŽĺ¤ć´ + param1=02 ăăăšăăă¤ăă§ĺă柏ă? + param2=01 ćŻ? + param2=20 ANGELUSçść
? + param3=01 ăľă¤ăăăŤăŻăă? + param3=0b ăă¤ăăŁăłă°çść
? + param3=0b ăŻăăźăăłă°çść
? + param3=0d ăŤăźăäťă + param3=0e 顚äťă + param3=0f ăăłăăłäšă R 011a <skill ID>.w <val>.w <dst ID>.l <src ID>.l <fail>.B - ń_[WnXL\ŚBq[ĚęvalÍńĘ - fail=00Ěę¸sۢŞAX`[ČOĹÍŠ˝łľ + éăăĄăźă¸çłťăšăăŤčĄ¨ç¤şăăăźăŤăŽĺ ´ĺvalăŻĺ垊é + fail=00ăŽĺ ´ĺ夹ćă˝ăăăăšăăźăŤäťĽĺ¤ă§ăŻčŚăäşçĄă S 011b <skill ID>.w <map name>.16B - 011cÖĚBgíȢę"cancel"A}bvŕ_Ěę"Random"đé + 011că¸ăŽĺżçă使ăăŞăĺ ´ĺ"cancel"ăăăăĺ
ăŠăłăă ăŽĺ ´ĺ"Random"ăéă R 011c <skill ID>.w <map1>.16B <map2>.16B <map3>.16B <map4>.16B - e|/|^ĚęIđB - e|ĚęARandom/Z[uęA|^ĚęAZ[uę/memo1/memo2/memo3ĆČé - }bvźĚÝçęé + ăăŹă/ăăżăŽĺ ´ćé¸ćă + ăăŹăăŽĺ ´ĺăRandom/ăťăźăĺ ´ćăăăżăŽĺ ´ĺăăťăźăĺ ´ć/memo1/memo2/memo3ă¨ăŞă + ăăăĺăŽăżéăăă S 011d - ťÝéđv + çžĺ¨ĺą
ăćăăĄă˘čŚćą R 011e <fail>.B - fail=00 Ź÷ - fail=01 ¸s + fail=00 ăĄă˘ćĺ + fail=01 ăĄă˘ĺ¤ąć R 011f <dst ID>.l <src ID>.l <X>.w <Y>.w <type>.B <fail>.B - XLř\něŹ - type 7e:SW 7f:ÎÇ 80:|^Ž 81:|^ŽO 83:TN 85:tj
[} - 86:o[~I 8c:g[L[{bNXŽ 8d:XÇ 8e: ŽÜ˘â[ 91: ńéˇË - 93:çńÇܢń 97:?? 99:g[L[{bNXŽO - źîńŢ + ăšăăŤĺšč˝ĺ°ä˝ć + type 7e:SW 7f:çŤĺŁ 80:ăăżçşĺä¸ 81:ăăżçşĺĺ 83:ăľăłăŻ 85:ăăăĽăźă + 86:ăăźăăŞăŞăł 8c:ăăźăăźăăăŻăšçşĺć 8d:ć°ˇĺŁ 8e:ăăăăžăăăź 91:ăăăăăăă + 93:ăăăŠăžăă 97:?? 99:ăăźăăźăăăŻăšçşĺĺ + äťć
ĺ ąćąă R 0120 <ID>.l - XLř\nÁ + ăšăăŤĺšč˝ĺ°ćśĺť R 0121 <num>.w <num limit>.w <weight>.l <weight limit>l - J[gĚíŢ&dłĚťÝl&ăŔ + ăŤăźăăŽç¨ŽéĄ&éăăŽçžĺ¨ĺ¤&ä¸é R 0122 <len>.w {<index>.w <item ID>.w <type>.B <identify flag>.B <equip type>.w <equip point>.w <attribute?>.B <refine>.B <card>.4w}.20B* - J[gŕACeBői + ăŤăźăĺ
ă˘ă¤ăă ăčŁ
ĺĺ R 0123 <len>.w {<index>.w <item ID>.w <type>.B <identify flag>.B <amount>.w ?.2B}.10B* - J[gŕACeBÁŐi/űWi + ăŤăźăĺ
ă˘ă¤ăă ăćśčĺ/ĺéĺ R 0124 <index>.w <amount>.l <item ID>.w <identify flag>.B <attribute?>.B <refine>.B <card>.4w - J[gÉACeÇÁ + ăŤăźăăŤă˘ă¤ăă čż˝ĺ R 0125 <index>.w <amount>.l - J[gŠçACeí + ăŤăźăăăă˘ă¤ăă ĺé¤ S 0126 <index>.w <amount>.l - J[gÉACeđüęé + ăŤăźăăŤă˘ă¤ăă ăĺ
Ľăă S 0127 <index>.w <amount>.l - J[gŠçACeđćčoˇ + ăŤăźăăăă˘ă¤ăă ăĺăĺşă S 0128 <index>.w <amount>.l - JvłńŠçJ[gÖACeđÚˇ + ăŤăăŠăăăăăŤăźăă¸ă˘ă¤ăă ă秝ă S 0129 <index>.w <amount>.l - J[gŠçJvłńÖACeđÚˇ + ăŤăźăăăăŤăăŠăăă¸ă˘ă¤ăă ă秝ă R 012c <fail>.B - fail=00 udĘI[o[šBv - fail=01 uACeĹĺíŢđ´ßľÜľ˝Bv + fail=00 ăééăŞăźăăźă§ăăă + fail=01 ăă˘ă¤ăă ć大税éĄć°ăčś
éăăžăăăă R 012d <num>.w - IXJÝBACeXgvBnumÍuŻéĹĺ + é˛ĺşéč¨ăă˘ă¤ăă ăŞăšăčŚćąănumăŻç˝Žăăćĺ¤§ć° S 012e - IX½ + é˛ĺşéé S 012f <len>.w <message>.80B {<index>.w <amount>.w <value>.l}.8B* - IXJÝAIXź&ACe,liXg + é˛ĺşéč¨ăé˛ĺşĺ&ă˘ă¤ăă ,ĺ¤ćŽľăŞăšă S 0130 <ID>.l - IXACeXgv + é˛ĺşă˘ă¤ăă ăŞăšăčŚćą R 0131 <ID>.l <message>.80B - IXĹÂ\Ś + é˛ĺşçćżčĄ¨ç¤ş R 0132 <ID>.l - IXĹÂÁ + é˛ĺşçćżćśĺť R 0133 <len>.w <ID>.l {<value>.l <amount>.w <index>.w <type>.B <item ID>.w <identify flag>.B <attribute?>.B <refine>.B <card>.4w}.22B - IXACeXg + é˛ĺşă˘ă¤ăă ăŞăšă S 0134 <len>.w <ID>.l {<amount>.w <index>.w}.4B* - IXACewü + é˛ĺşă˘ă¤ăă čłźĺ
Ľ R 0135 <index>.w <amount>.w <fail>.B - IXACewü¸sB - fail=1 u¨ŕŞŤčÜšńBv - fail=2 udĘI[o[šBv + é˛ĺşă˘ă¤ăă čłźĺ
Ľĺ¤ąćă + fail=1 ăăéăčśłăăžăăăă + fail=2 ăééăŞăźăăźă§ăăă R 0136 <len>.w <ID>.l {<value>.l <index>.w <amount>.w <type>.B <item ID>.w <identify flag>.B <attribute?>.B <refine>.B <card>.4w}.22B* - IXJÝŹ÷ + é˛ĺşéč¨ćĺ R 0137 <index>.w <amount>.w - IXACeĚń + é˛ĺşă˘ă¤ăă č˛ŠĺŁ˛ĺ ąĺ R 0139 <ID>.l <X>.w <Y>.w <X2>.w <Y2>.w <range>.w - IDĚGÍ(X,Y)ÉÄŠŞÍ(X2,Y2)ÉéĚĹUŞÍŤÜšńĹľ˝ - UÂ\ŁÍrangeČĚĹAßńÁÄşł˘? + IDăŽćľăŻ(X,Y)ăŤĺą
ăŚčŞĺăŻ(X2,Y2)ăŤĺą
ăăŽă§ćťćăĺąăăžăăă§ăă + ćťćĺŻč˝čˇé˘ăŻrangeăŞăŽă§ăčżĺŻăŁăŚä¸ăă? R 013a <val>.w - UËö + ćťćĺ°ç¨ R 013b <type>.w - eíbZ[W\ŚB3=îŞőĹŤÜľ˝ + ĺ税ăĄăăťăźă¸čĄ¨ç¤şă3=ç˘ăčŁ
ĺă§ăăžăă R 013c <ID>.w - őłę˝îĚItemIDB0ĹA˘őóÔB + čŁ
ĺăăăç˘ăŽItemIDă0ă§ăćŞčŁ
ĺçść
ă R 013d <type>.w <val>.w - HPńXL/SPńXLÉćéń - type=5ČçHP type=7ČçSP + HPĺ垊ăšăăŤ/SPĺ垊ăšăăŤăŤăăĺ垊 + type=5ăŞăHP type=7ăŞăSP R 013c <index>.w - őľÄ˘éî + čŁ
ĺăăŚăăç˘ R 013e <src ID>.l <dst ID>.l <X>.w <Y>.w <lv?>.w ?.w <wait>.l - XLrĽBPC/NPCŞčĚęÍ(X,Y)Í0BęŞ^[QbgĚęÍdst IDÍ0ÉČé + ăšăăŤčŠ ĺąä¸ăPC/NPCăç¸ćăŽĺ ´ĺăŻ(X,Y)ăŻ0ăĺ ´ćăăżăźă˛ăăăŽĺ ´ĺăŻdst IDăŻ0ăŤăŞă - 0x013e Ě offset+16(dword) ÍXLŽŤĹˇ(˛¸Ď)B - 00:ł 01:
02:n 03:Î 04: 05:Ĺ 06:š 07:Ă 08:O 09: - ŤIÉArĽĚGtFNgŞŽŤĹĎíéĚŠĆB + 0x013e ㎠offset+16(dword) ăŻăšăăŤĺąć§ă§ă(調ćťć¸)ă + 00:çĄ 01:ć°´ 02:ĺ° 03:çŤ 04:風 05:ćŻ 06:č 07:ć 08:ĺżľ 09:ćť + ĺ°ćĽçăŤăčŠ ĺąä¸ăŽă¨ăă§ăŻăăĺąć§ă§ĺ¤ăăăŽăă¨ă - waitÍmsPĘŠČ? + waităŻmsĺä˝ăăŞ? R 0141 <type>.l <base>.l <bonus>.l - Xe[^XîńBtypeÍ0dŠç12ŞÉSTR,AGI,VIT,INT,DEX,LUKÉÎ - base+bonusĆ\Śłęé + ăšăăźăżăšć
ĺ ąătypeăŻ0dăă12ăé ăŤSTR,AGI,VIT,INT,DEX,LUKăŤĺŻžĺż + base+bonusă¨čĄ¨ç¤şăăă R 0142 <ID>.l - lüÍp\Ś + ć°ĺ¤ĺ
Ľĺç¨çŞčĄ¨ç¤ş S 0143 <ID>.l <amount>.l - 0142ĚÉüÍľ˝lĚM + 0142ăŽçŞăŤĺ
Ľĺăăć°ĺ¤ăŽé俥 R 0144 <ID>.l <type>.l <X>.l <Y>.l <point ID>.B <color>.3B ?.B - ÄŕőpA}bvăACR\ŚpPbg - type=1 ACRđ\Ś - type=2 ACRđÁ + ćĄĺ
ĺĄç¨ăăăăä¸ă˘ă¤ăłăłčĄ¨ç¤şăăąăă + type=1 ă˘ă¤ăłăłă襨示 + type=2 ă˘ă¤ăłăłăćśĺť R 0145 <file name>.16B <type>.B - (ĄĚ)Jvłńcutin\Ś - type=02 \Ś - type=ff Á + (äťăŽć)ăŤăăŠăăcutin襨示 + type=02 襨示 + type=ff ćśĺť S 0146 <ID>.l - IDĚNPCĆĚďbBCLOSE{^đľ˝BackłľÉNPCbZ[WEBhđŻÉÂśé + IDăŽNPCă¨ăŽäźčŠąăCLOSEăăżăłăćźăăăackçĄăăŤNPCăĄăăťăźă¸ăŚăŁăłăăĺćăŤéăă R 0147 <skill ID>.w <target type>.w ?.w <lv>.w <sp>.w <range>.w <skill name>.24B <up>.B - ACepĚĘęIÉžçę˝XLîń + ă˘ă¤ăă ĺŠç¨ăŽçľćä¸ćçăŤĺžăăăăšăăŤć
ĺ ą R 0148 <ID>.l - UNVĚčß? @ Ŕ1 + ăŞăśăŹăŻăˇă§ăłăŽç¸ććąşă? @ β1 S 0149 <ID>.l <type>.B <time>.w - IDÉ`bgÖ~ÔđtÁ type=0 }CiX type=1 vX - tymeÍŞPĘ + IDăŤăăŁăăçŚć˘ćéăäťĺ type=0 ăă¤ăăš type=1 ăăŠăš + tymeăŻĺĺä˝ R 014a <fail>.l - }i[|Cgđ^Ś˝ĘBfail=0 Ź÷ fail=1 ¸s + ăăăźăă¤ăłăăä¸ăăçľćăfail=0 ćĺ fail=1 夹ć R 014b <type>.B <nick>.24B - }i[|CgđáÁ˝Btype=00 vX type=01 }CiX + ăăăźăă¤ăłăă貰ăŁăătype=00 ăăŠăš type=01 ăă¤ăăš R 014C <len>.w (<type>.l <guildID>.l <guild name>.24B).* - ŻżEGÎMh\Ś - type=0 Żż - type=1 GÎ + ĺçăťćľĺŻžăŽăŤă襨示 + type=0 ĺç + type=1 ćľĺŻž S 014D - Mhîń\ŚJnH + ăŽăŤăć
ĺ ąčĄ¨ç¤şéĺ§ďź R 014E <type?>.l - type=0x57 ęĘMhcő - type=0xD7 Mh}X^[ + type=0x57 ä¸čŹăŽăŤăĺŁĺĄ + type=0xD7 ăŽăŤăăăšăżăź S 014F <page>.l - Mh\Ś^uM -R 0150 <guildID>.l <guildLv>.l <Úą>.l <čő>.l <Avl.lvl>.l <oąl>.l <next_exp>.l <ă[|Cg>.l <ŤüśEVW>.l <ŤüăşRF>.l <lH>.l <guild name>.24B <guild master>.24B <{n>.16B - Mhîń + ăŽăŤă襨示ăżăé俥 +R 0150 <guildID>.l <guildLv>.l <ćĽçść°>.l <ĺŽĺĄ>.l <Avl.lvl>.l <çľé¨ĺ¤>.l <next_exp>.l <ä¸ç´ăă¤ăłă>.l <ć§ĺ塌ĺłVW>.l <ć§ĺä¸ä¸RF>.l <äşşć°ďź>.l <guild name>.24B <guild master>.24B <ćŹć ĺ°>.16B + ăŽăŤăć
ĺ ą S 0151 <guild ID>.l - Guv -R 0152 <len>.w <guild ID>.l <emblem ID(ĎXńH)>.l <emblem data>.?B - GuC[Wt + ă¨ăłăăŹă čŚćą +R 0152 <len>.w <guild ID>.l <emblem ID(ĺ¤ć´ĺć°ďź)>.l <emblem data>.?B + ă¨ăłăăŹă ă¤ăĄăźă¸éäť S 0153 <len>.w <emblem data>.?B - GuC[WĎX -R 0154 <len>.w {<accID>.l <charactorID>.l <Ż^>.w <ŻĚF>.w <ŤĘH>.w <job>.w <lvl?>.w <ă[oąl>.l <online>.l <Position>.l <H>.50B <nick>.24B}* - MhoXg + ă¨ăłăăŹă ă¤ăĄăźă¸ĺ¤ć´ +R 0154 <len>.w {<accID>.l <charactorID>.l <鍪ĺ>.w <鍪ăŽč˛>.w <ć§ĺĽďź>.w <job>.w <lvl?>.w <ä¸ç´çľé¨ĺ¤>.l <online>.l <Position>.l <ăĄă˘ďź>.50B <nick>.24B}* + ăŽăŤăăĄăłăăŞăšă S 0155 <len>.w {<accID>.l <charaID>.l <index>.l}.12B* - đEĎX + 彚čˇĺ¤ć´ R 0156 <len>.w {<accID>.l <charaID>.l <index>.l}.12B* - đEĎXĘm + 彚čˇĺ¤ć´éçĽ S 0159 <guildID>.l <accID>.l <charID>.l <mess>.40B - MhEŢM + ăŽăŤăčąéé俥 R 015A <nic>.24B <mess>.40B - MhEŢ(Ső)óM + ăŽăŤăčąé(ĺ
¨ĺĄ)ĺ俥 S 015B <guildID>.l <accID>.l <charID>.l <mess>.40B - MhÇúM -R 015C <nick>.24B <mess>.40B <AJEghc>.24B - MhÇúiSőjóM + ăŽăŤăčż˝ćžé俥 +R 015C <nick>.24B <mess>.40B <ă˘ăŤăŚăłă>.24B + ăŽăŤăčż˝ćžďźĺ
¨ĺĄďźĺ俥 S 015D <guild name>.24B <?>.16B - MhđU + ăŽăŤăč§ŁćŁ R 015E <fail>.l - MhđUłŰĘm - 0x00FŹ÷ - 0x01FZŻo^Ôsęv + ăŽăŤă解ćŁćŁĺŚéçĽ + 0x00ďźćĺ + 0x01ďźä˝ć°çťé˛çŞĺˇä¸ä¸č´ R 0160 <len>.w {<index>.l <mode>.l <index>.l <exp_mode>.l}.16B - EĘîń + čˇä˝ć
ĺ ą S 0161 <len>.w {<index>.l <mode>.l <index>.l <exp_mode>.l <nickname>.24B}.40B* - EĘĎX + čˇä˝ĺ¤ć´ R 0162 <len>.w <skill_point>.w {<skill ID>.w <target type>.w ?.w <lv>.w <sp>.w <range>.w <skill name>.24B <up>.B}.37B* - MhXL -R 0163 <len>.w { <nick>.24B <AJEghc>.24B <ÇúR>.40B }.88B* - MhÇúXg + ăŽăŤăăšă㍠+R 0163 <len>.w { <nick>.24B <ă˘ăŤăŚăłă>.24B <čż˝ćžççą>.40B }.88B* + ăŽăŤăčż˝ćžăŞăšă S 0165 <myaccID>.l <guild name>.24B - MhěŹ + ăŽăŤăä˝ć R 0166 <len>.w {<index>.l <name>.24B }.28B* - EĘźXg + čˇä˝ĺăŞăšă R 0167 <type>.b - MhěŹŰ - type = 0 Mh쏏÷ - type = 1 ˇĹÉMhÉŽľÄ˘é - type = 2 ŻźĚMhŞ é - type = 3 GyEłľ + ăŽăŤăä˝ćĺĺŚ + type = 0 ăŽăŤăä˝ććĺ + type = 1 ăă§ăŤăŽăŤăăŤćĺąăăŚăă + type = 2 ĺĺăŽăŽăŤăăăă + type = 3 ă¨ăłăăŞăŚă çĄă S 0168 <TargetAccID>.l <sourceAccID>.l <myCharactorID>.l - MhŠU + ăŽăŤăĺ§čŞ R 0169 <type>.B - MhŠUĘ - type = 0 źĚMhÉÁüľÄ˘é - type = 1 Űłę˝ - type = 2 Áüľ˝ - type = 3 čőđ´ß + ăŽăŤăĺ§čŞçľć + type = 0 äťăŽăŽăŤăăŤĺ ĺ
ĽăăŚăă + type = 1 ćĺŚăăă + type = 2 ĺ ĺ
Ľăă + type = 3 ĺŽĺĄăčś
é R 016A <guild ID>.l <guild name>.24B - MhŠUłę˝ + ăŽăŤăĺ§čŞăăă S 016B <guild ID>.l <type>.l - MhŠUÔM - type=0 ۡé - type=1 řˇé + ăŽăŤăĺ§čŞčżäżĄ + type=0 ćĺŚăă + type=1 訹荞ăă R 016c <guild ID>.l <emblem ID>.l <mode>.l ?.5B <guild name>.24B - loginMhîń - mode=ŠŞĚŽEĘĚmode + loginćăŽăŤăć
ĺ ą + mode=čŞĺăŽćĺąčˇä˝ăŽmode R 016d <ID>.l <charactor ID>.l <online>.l - MhoŞloginľ˝˛Ż˝ + ăŽăŤăăĄăłăăloginăăćăăç S 016E <guildID>.l <mess1>.60B <mess2>.120B - MhmÝč + ăŽăŤăĺçĽč¨ĺŽ R 016F <mess1>.60B <mess2>.120B - Mhm + ăŽăŤăĺçĽ S 0170 <TargetAccID>.l <sourceAccID>.l <myCharactorID>.l - ŻżvżŠU + ĺçčŚčŤĺ§čŞ R 0171 <SorceAccID>.l <guild name>.24B - ŻżvżŠUłę˝ + ĺçčŚčŤĺ§čŞăăă S 0172 <SorceAccID>.l <type>.l - ŻżvżÔM - type=0 ۡé - type=1 řˇé + ĺçčŚčŤčżäżĄ + type=0 ćĺŚăă + type=1 訹荞ăă R 0173 <type>.B - type = 0 ˇĹÉŻżÖW - type = 1 ŻżŰłę˝ - type = 2 ŻżŹ÷ - type = 3 čMhĚŻżMhŞ´ß - type = 4 ŠŞĚMhĚŻżMhŞ´ß + type = 0 ăă§ăŤĺçé˘äż + type = 1 ĺçćĺŚăăă + type = 2 ĺçćĺ + type = 3 ç¸ćăŽăŤăăŽĺçăŽăŤăć°ăčś
é + type = 4 čŞĺăŽăŽăŤăăŽĺçăŽăŤăć°ăčś
é R 0174 <len>.w {<index>.l <mode>.l <index>.l <exp_mode>.l <nickname>.24B}.40B* - EĘĎXĘm + čˇä˝ĺ¤ć´éçĽ R 0177 <len>.w <index>.w* - ÓčÂ\ACeXg + éĺŽĺŻč˝ă˘ă¤ăă ăŞăšă S 0178 <index>.w - ACeÓč + ă˘ă¤ăă éĺŽ R 0179 <index>.w <fail>.B - ACeÓčĘBfail=00ĹŹ÷Bfail=01ÁÄ éĚŠ? + ă˘ă¤ăă éĺŽçľćăfail=00ă§ćĺăfail=01ăŁăŚăăăŽă? S 017A <index>.w - J[hvNbN + ăŤăźăăŻăŞă㯠R 017B <len>.w {<index>.w}* - J[h}üĹŤéACeIndexÔ + ăŤăźăćżĺ
Ľă§ăăă˘ă¤ăă IndexçŞĺˇ S 017C <SrcIndex>.w <DescIndex>.w - Src đDescÉËÁŢ + Src ăDescăŤçŞăŁčžźă R 017D <DescIndex>.w <SrcIndex>.w <fail>.b - Src đDescÉËÁÝ<fail> 0=Ź÷ 1=¸sH + Src ăDescăŤçŞăŁčžźăż<fail> 0=ćĺ 1=夹ćďź S 017e <len>.w <message>.?B - MhŕbZ[Wž + ăŽăŤăĺ
ăĄăăťăźă¸çşč¨ R 017f <len>.w <message>.?B - MhŕbZ[WóM + ăŽăŤăĺ
ăĄăăťăźă¸ĺ俥 S 0180 <charactorID>.l - MhGÎ + ăŽăŤăćľĺŻž R 0181 <flag>.b - MhGÎÂŰ - flag=0 GÎŹ÷ - flag=1 GÎMhŞ˝ˇŹé - flag=2 ˇĹÉGÎÖW -R 0182 <accID>.l <charactorID>.l <Ż^>.w <ŻĚF>.w <ŤĘH>.w <job>.w <lvl?>.w <ă[oąl>.l <online>.l <Position>.l ?.50B <nick>.24B + ăŽăŤăćľĺŻžĺŻĺŚ + flag=0 ćľĺŻžćĺ + flag=1 ćľĺŻžăŽăŤăć°ăĺ¤ăăă + flag=2 ăă§ăŤćľĺŻžé˘äż +R 0182 <accID>.l <charactorID>.l <鍪ĺ>.w <鍪ăŽč˛>.w <ć§ĺĽďź>.w <job>.w <lvl?>.w <ä¸ç´çľé¨ĺ¤>.l <online>.l <Position>.l ?.50B <nick>.24B S 0183 <guild_id>.l <type>.l - MhÖWđÁ + ăŽăŤăé˘äżč§Łćś R 0184 <guild_id>.l <type>.l - MhÖWđÁĘm + ăŽăŤăé˘äżč§ŁćśéçĽ R 0185 <flag>.l <guild_id>.l <guild_name>.24B - MhÖWÇÁ flag=0 Żż/ 1 GÎ + ăŽăŤăé˘äżčż˝ĺ flag=0 ĺç/ 1 ćľĺŻž R 0187 <account ID>.l - aliveM? + alive俥ĺˇ? R 0188 <fail?>.w <index>.w <val>.w - í¸BBĘ+valíÉ + ćŚĺ¨ç˛žéŹăçľć+valćŚĺ¨ăŤ R 0189 <fail?>.w - äBe|([v|[^memo)¸s? - 1 memoÖ~nć + čŹăăăŹă(ăŻăźăăăźăżăŤmemo)夹ć? + 1 memoçŚć˘ĺ°ĺ S 018a ?.w - Q[Iš + ă˛ăźă çľäş R 018b <fail>.w - Q[Iš/LZBfail=0Ź÷Bfail=1¸s? -R 018C <MonsID>.w <>.w <ĺŹ>.w <ś˝l>.w <?>.w <häÍ>.w <í°>.w <@häÍ>.w <ŽŤ>.w <@ŤŽŤ>.9b - wizĚGĚZXĘ - 0 Ź^ - 1 ^ - 2 ĺ^ + ă˛ăźă çľäş/ăăŁăŠăťăŹĺżçăfail=0ćĺăfail=1夹ć? +R 018C <MonsID>.w <çç´>.w <大ĺ°>.w <çĺ˝ĺ¤>.w <?>.w <é˛ĺžĄĺ>.w <税ć>.w <éćłé˛ĺžĄĺ>.w <ĺąć§>.w <éćłç¸ć§ĺąć§>.9b + wizăŽćľăŽăťăłăšçľć + 0 ĺ°ĺ + 1 ä¸ĺ + 2 大ĺ R 018d <length>.w { <ItemID>,w ?.w <CharID?>.l }.8B* - ť˘Â\ACeXg\Ś(?ĚŞÍ0012Ĺč) + 製é ĺŻč˝ă˘ă¤ăă ăŞăšă襨示(?ăŽé¨ĺăŻ0012ĺşĺŽ) S 018e <MakeItemID>.w <slot1ItemID>.w <slot2ItemID>,w <slot3.ItemID>.w - ť˘ACeĚIđ + 製é ă˘ă¤ăă ăŽé¸ć R 018f <flag>.w [00] <MakeItemID>.w - ť˘Ę(flag = 00ČçŹ÷ 01Čç¸s) + 製é çľć(flag = 00ăŞăćĺ 01ăŞă夹ć) S 0190 <skill lv>.w <skill code>.w <x & y>.l <message>.80b - bZ[W(g[L[{bNXj + ăĄăăťăźă¸(ăăźăăźăăăŻăšďź R 0191 <ID>.l <message>.80B - g[L[{bNXĚbZ[W + ăăźăăźăăăŻăšăŽăĄăăťăźă¸ R 0192 <x & y>.l <type>.w <mapname>.16b - ACXEH[Éćén`ŽŤĎť + ă˘ă¤ăšăŚăŠăźăŤçăŤăăĺ°ĺ˝˘ĺąć§ĺ¤ĺ S 0193 <ID>.l - MhoźOřŤ? + ăŽăŤăăĄăłăĺĺĺźă? R 0194 <ID>.l <nick>.24B - MhoźOřŤ? + ăŽăŤăăĄăłăĺĺĺźăĺżç? R 0195 <ID>.l <nick>.24B <party name>.24B <guild name>.24B <class name>.24B - MhŽPCĚęĚ0094Ô + ăŽăŤăćĺąPCăŽĺ ´ĺăŽ0094čżç R 0196 <type>.w <ID>.l - nXLgpĚbZ[WFXBIDÍtargetĆvíę骊ŞčĚÝľŠČ˘? - type=00 2HQt^uUŹxŞÁľÜľ˝Bv - type=01 2HQđuUŹx޸ľÜľ˝Bv - type=02 IMPOSITIOt^uíĚUÍŞÁľÜľ˝Bv - type=03 IMPOSITIOđuíĚUÍŞ¸ľÜľ˝Bv - type=04 uXLgpfBC޸ľÜľ˝Bv - type=05 uXLgpfBCŞłÉßčÜľ˝Bv - type=06 uíÉĹŽŤŞt^łęÜľ˝Bv - type=07 ASPERSIOt^uíÉšŽŤŞt^łęÜľ˝Bv - type=08 ASPERSIOđuíĚŽŤŞłÉßčÜľ˝Bv - type=09 uhďÉšŽŤŞt^łęÜľ˝Bv - type=0a uhďĚŽŤŞłÉßčÜľ˝Bv - type=0b KYRIEt^uoAóÔÉČčÜľ˝Bv - type=0c KYRIEđuoAóÔŞđłęÜľ˝Bv - type=0d uEF|p[tFNV[hÉČčÜľ˝Bv - type=0e uEF|p[tFNV[hŞđłęÜľ˝Bv - type=0f uI[o[gXg[hÉČčÜľ˝Bv - type=10 uI[o[gXg[hŞđłęÜľ˝Bv - type=11 u}LV}CYp[[hÉČčÜľ˝Bv - type=12 u}LV}CYp[[hŞđłęÜľ˝Bv -R 0196 <type>.w <ID>.l <switch>.b iRhČ~j - switch=0Ĺđ,1ĹtÁ - type=00 v{bN - type=01 Cf
A - type=02 uUŹxŞÁľÜľ˝Bvi2HQj - type=03 WÍüă - type=04 nCfBO - type=05 N[LO - type=06 uíÉĹŽŤŞt^łęÜľ˝BviG`g|CYj - type=07 uĹđ˝ËĹŤéóÔÉČčÜľ˝Bvi|CYANgj - type=08 uN@O}CAóÔÉČčAEEEv - type=09 uGWFXóÔÉČčAEEEv - type=0a ubVO - type=0b VOiNVX - type=0c uŹłŞÁľÜľ˝viŹxÁj - type=0d uŹłŞ¸ľÜľ˝viŹx¸j - type=0e uX[|CYóÔÉČčÜľ˝viX[|CYj - type=0f uíĚUÍŞÁľÜľ˝viC|VeBI}kXj - type=10 uXLgpfBC޸ľÜľ˝viTtMEj - type=11 uíÉšŽŤŞt^łęÜľ˝viAXyVIj - type=12 uhďÉšŽŤŞt^łęÜľ˝višĚ~Őj - type=13 uoAóÔÉČčÜľ˝viLGGC\j - type=14 u}OjtBJ[góÔÉČčÜľ˝v - type=15 uOAóÔÉČčÜľ˝v - type=16 ubNXG[eióÔÉČčÜľ˝v - type=17 uAhibV
óÔÉČčÜľ˝v - type=18 uEF|p[tFNV[hÉČčÜľ˝v - type=19 uI[o[gXg[hÉČčÜľ˝v - type=1a u}LV}CYp[[hÉČčÜľ˝v - type=1b yRyRRć - type=1c é - type=1d ńžÓč - type=1e uŠŃÜľ˝viEh{CXj - type=1f uGiW[R[góÔÉČčÜľ˝v - type=20 uhďŞóęÜľ˝v - type=21 uíŞóęÜľ˝v - type=22 äiÚĚAbvƢ¤ACRFÓÚHHj - type=23 dĘ50´Ś - type=24 dĘ90´Ś - type=25 äuUŹxŞÁľÜľ˝viQACRFŹxn|[VHj - type=26 äuUŹxŞÁľÜľ˝viQACRFŹxn|[VHj - type=27 äuUŹxŞÁľÜľ˝viQACRFŹxn|[VHj - type=28 (˘gpÁۢHFsÂĆđĹřĘŞá¤) - type=29 äuŹłŞÁľÜľ˝vi˘ACRj - type=32 XgbvEG| - type=33 XgbvV[h - type=34 XgbvA[}[ - type=35 Xgbvw - type=36 P~JEF|`[W - type=37 P~JV[h`[W - type=38 P~JA[}[`[W - type=39 P~Jw`[W - type=3a I[gK[h - type=3b tNgV[h - type=3d vBfX - type=3e fBtF_[ - type=41 I[gXy - type=44 XsANBbP - type=56 ôgŽ(ACRÍ\ŚłęÜšńB) - type=57 ŕ(\ŚÍłęȢŞŕĚđÍłęéć¤ĹˇB) - type=59 R{fBC - type=5a tC`[ - type=5b tXgEF| - type=5c CgjO[_[ - type=5d TCY~bNEF| + ĺ˘ĺźˇçłťăšăăŤä˝żç¨ćăŽăĄăăťăźă¸č˛ă
ăIDăŻtargetă¨ćăăăăčŞĺç¸ćăŽăżăăćĽăŞă? + type=00 2HQäťä¸ăćťćé庌ăĺ˘ĺ ăăžăăăă + type=01 2HQ解é¤ăćťćé庌ăć¸ĺ°ăăžăăăă + type=02 IMPOSITIOäťä¸ăćŚĺ¨ăŽćťćĺăĺ˘ĺ ăăžăăăă + type=03 IMPOSITIO解é¤ăćŚĺ¨ăŽćťćĺăć¸ĺ°ăăžăăăă + type=04 ăăšăăŤä˝żç¨ăăŁăŹă¤ăć¸ĺ°ăăžăăăă + type=05 ăăšăăŤä˝żç¨ăăŁăŹă¤ăĺ
ăŤćťăăžăăăă + type=06 ăćŚĺ¨ăŤćŻĺąć§ăäťä¸ăăăžăăăă + type=07 ASPERSIOäťä¸ăćŚĺ¨ăŤčĺąć§ăäťä¸ăăăžăăăă + type=08 ASPERSIO解é¤ăćŚĺ¨ăŽĺąć§ăĺ
ăŤćťăăžăăăă + type=09 ăé˛ĺ
ˇăŤčĺąć§ăäťä¸ăăăžăăăă + type=0a ăé˛ĺ
ˇăŽĺąć§ăĺ
ăŤćťăăžăăăă + type=0b KYRIEäťä¸ăăăŞă˘çść
ăŤăŞăăžăăăă + type=0c KYRIE解é¤ăăăŞă˘çść
ă解é¤ăăăžăăăă + type=0d ăăŚă§ăăłăăźăă§ăŻăˇă§ăłă˘ăźăăŤăŞăăžăăăă + type=0e ăăŚă§ăăłăăźăă§ăŻăˇă§ăłă˘ăźăă解é¤ăăăžăăăă + type=0f ăăŞăźăăźăăŠăšăă˘ăźăăŤăŞăăžăăăă + type=10 ăăŞăźăăźăăŠăšăă˘ăźăă解é¤ăăăžăăăă + type=11 ăăăăˇăă¤ăşăăŻăźă˘ăźăăŤăŞăăžăăăă + type=12 ăăăăˇăă¤ăşăăŻăźă˘ăźăă解é¤ăăăžăăăă +R 0196 <type>.w <ID>.l <switch>.b ďźăłă˘ă䝼éďź + switch=0ă§č§Łé¤,1ă§äťĺ + type=00 ăăăă㯠+ type=01 ă¤ăłăăĽă˘ + type=02 ăćťćé庌ăĺ˘ĺ ăăžăăăăďź2HQďź + type=03 éä¸ĺĺä¸ + type=04 ăă¤ăăŁăłă° + type=05 ăŻăăźăăłă° + type=06 ăćŚĺ¨ăŤćŻĺąć§ăäťä¸ăăăžăăăăďźă¨ăłăăŁăłăăă¤ăşăłďź + type=07 ăćŻăĺĺ°ă§ăăçść
ăŤăŞăăžăăăăďźăă¤ăşăłăŞă˘ăŻăďź + type=08 ăăŻăĄă°ăă¤ă˘çść
ăŤăŞăăăťăťăťă + type=09 ăă¨ăłă¸ă§ăŠăšçść
ăŤăŞăăăťăťăťă + type=0a ăăŹăăˇăłă° + type=0b ăˇă°ăă ăŻăŤăˇăš + type=0c ăéăăĺ˘ĺ ăăžăăăďźé庌ĺ˘ĺ ďź + type=0d ăéăăć¸ĺ°ăăžăăăďźé庌ć¸ĺ°ďź + type=0e ăăšăăźăă¤ăşăłçść
ăŤăŞăăžăăăďźăšăăźăă¤ăşăłďź + type=0f ăćŚĺ¨ăŽćťćĺăĺ˘ĺ ăăžăăăďźă¤ăłăăˇăăŁăŞăăăšďź + type=10 ăăšăăŤä˝żç¨ăăŁăŹă¤ăć¸ĺ°ăăžăăăďźăľăăŠăŽăŚă ďź + type=11 ăćŚĺ¨ăŤčĺąć§ăäťä¸ăăăžăăăďźă˘ăšăăŤăˇăŞďź + type=12 ăé˛ĺ
ˇăŤčĺąć§ăäťä¸ăăăžăăăďźčä˝éč¨ďź + type=13 ăăăŞă˘çść
ăŤăŞăăžăăăďźăăŞă¨ă¨ăŹă¤ă˝ăłďź + type=14 ăăă°ăăăŁăŤăźăçść
ăŤăŞăăžăăă + type=15 ăă°ăăŞă˘çść
ăŤăŞăăžăăă + type=16 ăăŹăăŻăšă¨ăźăăŤăçść
ăŤăŞăăžăăă + type=17 ăă˘ăăŹăăŞăłăŠăăˇăĽçść
ăŤăŞăăžăăă + type=18 ăăŚă§ăăłăăźăă§ăŻăˇă§ăłă˘ăźăăŤăŞăăžăăă + type=19 ăăŞăźăăźăăŠăšăă˘ăźăăŤăŞăăžăăă + type=1a ăăăăˇăă¤ăşăăŻăźă˘ăźăăŤăŞăăžăăă + type=1b ăăłăăłé¨äš + type=1c 顚 + type=1d ćťăă ăľă + type=1e ăĺŤăłăžăăăďźăŠăŚăăă¤ăšďź + type=1f ăă¨ăă¸ăźăłăźăçść
ăŤăŞăăžăăă + type=20 ăé˛ĺ
ˇăĺŁăăžăăă + type=21 ăćŚĺ¨ăĺŁăăžăăă + type=22 čŹďźçŽăŽă˘ăăă¨ăăă˘ă¤ăłăłďźç˛çŽďźďźďź + type=23 éé50ďź
čś
ă + type=24 éé90ďź
čś
ă + type=25 čŹăćťćé庌ăĺ˘ĺ ăăžăăăďźď˝ďźă˘ă¤ăłăłďźé庌糝ăăźăˇă§ăłďźďź + type=26 čŹăćťćé庌ăĺ˘ĺ ăăžăăăďźď˝ďźă˘ă¤ăłăłďźé庌糝ăăźăˇă§ăłďźďź + type=27 čŹăćťćé庌ăĺ˘ĺ ăăžăăăďźď˝ďźă˘ă¤ăłăłďźé庌糝ăăźăˇă§ăłďźďź + type=28 (ćŞä˝żç¨ăŁă˝ăďźďźä¸ĺŻă¨č§Łé¤ă§ĺšćăéă) + type=29 čŹăéăăĺ˘ĺ ăăžăăăďźç˝ăă˘ă¤ăłăłďź + type=32 ăšăăŞăăăŚă¨ăăł + type=33 ăšăăŞăăăˇăźăŤă + type=34 ăšăăŞăăă˘ăźăăź + type=35 ăšăăŞăăăăŤă + type=36 ăąăăŤăŤăŚă§ăăłăăŁăźă¸ + type=37 ăąăăŤăŤăˇăźăŤăăăŁăźă¸ + type=38 ăąăăŤăŤă˘ăźăăźăăŁăźă¸ + type=39 ăąăăŤăŤăăŤă ăăŁăźă¸ + type=3a ăŞăźăăŹăźă + type=3b ăŞăăŹăŻăăˇăźăŤă + type=3d ăăă´ăŁăăłăš + type=3e ăăŁăă§ăłăăź + type=41 ăŞăźăăšă㍠+ type=44 ăšăă˘ăŻăŁăăąăł + type=56 çčŁćł˘ĺ(ă˘ă¤ăłăłăŻčĄ¨ç¤şăăăžăăă) + type=57 éĺ(襨示ăŻăăăŞăăéĺăŽč§Łé¤ăŻăăăăăă§ăă) + type=59 ăłăłăăăŁăŹă¤ + type=5a ăăŹă¤ă ăŠăłăăŁăź + type=5b ăăăšăăŚă§ăăł + type=5c ăŠă¤ăăăłă°ăăźăăź + type=5d ăľă¤ăşăăăŻăŚă§ăăł S 0197 <type>.w type=0 /resetstate type=1 /resetskill - ř\Íłľ? + ĺšč˝ăŻçĄă? R 0199 <type>.w - type=1 pvp[hJn? - type=3 gvg[hJn? + type=1 pvpă˘ăźăéĺ§? + type=3 gvgă˘ăźăéĺ§? R 019a <ID>.l <rank>.l <num>.l - pvpĘ rank/num + pvpé ä˝ rank/num R 019b <ID>.l <type>.l - źlĚlvupâí¸BĚ\Ś? + äťäşşăŽlvupăćŚĺ¨ç˛žéŹçăŽčĄ¨ç¤ş? type=0 base lvup? type=1 job lvup? - type=2 í¸B¸s - type=3 í¸BŹ÷ + type=2 ćŚĺ¨ç˛žéŹĺ¤ąć + type=3 ćŚĺ¨ç˛žéŹćĺ R 019d <?>.4B - GMR}h/hide + GMăłăăłă/hide S 0149 <ID>.l <type>.B <time>.w - GMpENbNj
[u`bgÖ~Ôđş°éiđŻéjvgp ¨ type=00 - GMpENbNj
[u`bgÖ~Ôđă°éi|Żéjvgp ¨ type=01 - timeÍŞPĘšimŠ + GMç¨ĺłăŻăŞăăŻăĄăăĽăźăăăŁăăçŚć˘ćéăä¸ăăďźč§Łăăďźăä˝żç¨ â type=00 + GMç¨ĺłăŻăŞăăŻăĄăăĽăźăăăŁăăçŚć˘ćéăä¸ăăďźćăăďźăä˝żç¨ â type=01 + timeăŻĺĺä˝ă§ăďźç˘şă R 019e - ßlX^[ß + ćç˛ă˘ăłăšăżăźćąşă S 019f <ID>.l - ßlX^[wč + ćç˛ă˘ăłăšăżăźćĺŽ R 01a0 <fail>.B - ßlťč - fail=01ĹŹ÷A00Ÿs + ćç˛ĺ¤ĺŽ + fail=01ă§ćĺă00ă§ĺ¤ąć S 01a1 <param>.1B <param> - 0x00FybgóÔ\Ś - 0x01Fađ^Śé - 0x02FptH[}X - 0x03FÉߡ - 0x04FANZTđ + 0x00ďźăăăçść
襨示 + 0x01ďźé¤ăä¸ăă + 0x02ďźăăăŠăźăăłăš + 0x03ďźĺľăŤćťă + 0x04ďźă˘ăŻăťăľăŞč§Łé¤ R 01a2 <pet name>.24B <name flag>.B <lv>.w <hungry>.w <friendly>.w <accessory>.w - ybgĚóÔ - name flag:00=źO˘Ýč 01=źOÝčĎÝ(ĎXsÂ) - lv=ybgĚxAhungry= x(0~100)Afriendly=e§x(úl250?)Aaccessory=ANZTĚItemID + ăăăăŽçść
+ name flag:00=ĺĺćŞč¨ĺŽ 01=ĺĺč¨ĺŽć¸ăż(ĺ¤ć´ä¸ĺŻ) + lv=ăăăăŽăŹăăŤăhungry=ćşč
šĺşŚ(0~100)ăfriendly=茪ĺŻĺşŚ(ĺćĺ¤250?)ăaccessory=ă˘ăŻăťăľăŞăŽItemID R 01a3 <fail>.B <itemID>.w <fail> - 0x00Faâč¸s - 0x01FaâčŹ÷ + 0x00ďźé¤ăă夹ć + 0x01ďźé¤ăăćĺ R 01a4 <type>.B <ID>.l <val>.l - ybgÖAĘm - type=00,val=00 ybgzťÉçęÄéBybgFŻpH - type=01 e§xĎť - type=02 xĎť - type=03 ANZTĎť(0Ţő) - type=04 ptH[}X mFłę˝val=1~3 - (4ÍXyVptH[}XH) - type=05 HmFłę˝val=0x14 + ăăăé˘éŁéçĽ + type=00,val=00 ăăăĺľĺćăŤéăăăŚăăăăăăčŞčç¨ďź + type=01 茪ĺŻĺşŚĺ¤ĺ + type=02 ćşč
šĺşŚĺ¤ĺ + type=03 ă˘ăŻăťăľăŞĺ¤ĺ(0ă§ćŞčŁ
ĺ) + type=04 ăăăŠăźăăłăš 確čŞăăăval=1~3 + (4ăŻăšăăˇăŁăŤăăăŠăźăăłăšďź) + type=05 ďźç˘şčŞăăăval=0x14 S 01a5 <pet name>.24B - ybgĚźOß + ăăăăŽĺĺćąşă R 01a6 <len>.w <index>.w* - ybgĚXg + ăăăăŽĺľăŞăšă S 01a7 <index>.w - ybgĚXgŞIđłę˝ + ăăăăŽĺľăŞăšăăé¸ćăăă S 01a9 <emotion>.l - ybgG[VM + ăăăă¨ă˘ăźăˇă§ăłé俥 R 01aa <ID>.l <emotion>.l - ybgG[VóM + ăăăă¨ă˘ăźăˇă§ăłĺ俥 <emotion> - 33ČşĚĆŤFG[V - 34ČăĚĆŤFže[uH + 33䝼ä¸ăŽă¨ăďźă¨ă˘ăźăˇă§ăł + 34䝼ä¸ăŽă¨ăďźçşč¨ăăźăăŤďź R 01ac <object id>.l - ANĚŽ(Ýu)ĚÝńoť(@\Íä) + ă˘ăłăŻăŤăŽçşĺ(â č¨ç˝Ž)ćăŽăżćŻĺĺşçž(ćŠč˝ăŻčŹ) R 01ad <len>.l <item>.w - îěčĚěŹÂ\ITEM\óM + ç˘ä˝ăăŽä˝ćĺŻč˝ITEM襨ĺ俥 S 01ae <itemID>.w - îěčĹg¤ŢżM + ç˘ä˝ăă§ä˝żăććé俥 S 01af <type>.w - `FWJ[giJ[gIđj - type=1 m[}J[g + ăă§ăłă¸ăŤăźăďźăŤăźăé¸ćďź + type=1 ăăźăăŤăŤăźă R 01b0 <monster id>.l <?>.b <new monster code>.l - űĚNX`FW - <new monster code>Í`FWăĚR[h(1001`)đdwordĹ + 沚ăŽăŻăŠăšăă§ăłă¸ + <new monster code>ăŻăă§ăłă¸ĺžăŽăłăźă(1001ă)ădword㧠S 01b2 <len>.w <message>.80B <flag>.B {<index>.w <amount>.w <value>.l}.8B* - IXJÝ - flag F 0=LZ , 1=I[v + é˛ĺşéč¨ + flag ďź 0=ăăŁăłăťăŤ , 1=ăŞăźăăł R 01b3 <filename>.64B <type>.B - R 0145ĚăĘݡ -R 01B6 <guildID>.l <guildLv>.l <connum>.l <čő>.l <Avl.lvl>.l <now_exp>.l <next_exp>.l <ă[|Cg>.l <ŤüF-V>.l <ŤüR-W>.l <members>.l <guild name>.24B <guild master>.24B <agit?>.20B - Mhîń + R 0145ăŽä¸ä˝äşć +R 01B6 <guildID>.l <guildLv>.l <connum>.l <ĺŽĺĄ>.l <Avl.lvl>.l <now_exp>.l <next_exp>.l <ä¸ç´ăă¤ăłă>.l <ć§ĺF-V>.l <ć§ĺR-W>.l <members>.l <guild name>.24B <guild master>.24B <agit?>.20B + ăŽăŤăć
ĺ ą R 01b9 <ID>.I - í_ÉćéIDĚrĽf + 袍ăăĄçăŤăăIDăŽčŠ ĺąä¸ć R 01c4 <index>.w <amount>.l <itemID>.w <item data>.12B - JvqÉACe + ăŤăăŠĺ庍ă˘ă¤ăă R 01c8 <index>.w <item ID>.w <ID>.l <amount left>.w <type>.B - ACegpB(00a8ĚăĘo[VH) - type=00Ěęgp¸s? amountŕS~ĚÍl - type=01ĚęŹ÷ĹAamountÍgpăĚcč + ă˘ă¤ăă 使ç¨ĺżçă(00a8ăŽä¸ä˝ăăźăˇă§ăłďź) + type=00ăŽĺ ´ĺ使ç¨ĺ¤ąć? amountăă´ăăŽć¨Ąć§ + type=01ăŽĺ ´ĺćĺă§ăamountăŻä˝żç¨ĺžăŽćŽăĺć° R 01c9 <dst ID>.l <src ID>.l <X>.w <Y>.w <type>.B <fail>.B ?.81b - XLř\něŹ(011fĚăĘo[VH) - type 0x7e:SWA0x7f:ÎÇA0x80 |^JŤA0x81 |^JŤźO - 0x82 šĚA0x83 TNA0x84 }OkXA0x85 j
[} - 0x86 0x86 ĺ@(SG/MS/LoV/GX)A0x87 t@C[sŇ@ - 0x88 t@C[sA0x87`0x8B \ŚłľA - 0x8c g[L[{bNX(Ž)A0x8D ACXEH[ - 0x8E NO}CAA0x8f uXg}CA0x90 XLbh - 0x91 ANA0x92 xm_XgA0x93 h}C - 0x94 VbNEF[ugbvA0x95 Th} - 0x96 tbV[A0x97 t[WOgbv - 0x98 NCA[gbvA0x99 g[L[{bNX - 0x9A {P[mA0x9B f
[WA0x9C oCIgQC - 0x9D hveN^[A0x9E Zeny}[NA0x9F ZenyÜ - 0xA0 ńéÎĚÖA0xA1 sNĚš (ńALč - 0xA2 ^ńÉ_Ě éőĚĘA0xA3 sNĚXvO - 0xA4 [ŁĚÉA0xA5 ńé¢ÖA0xA6 sŚaš - 0xA7 űJA0xA8 [zĚATVNXA0xA9 uMĚ - 0xAA ChDĚŃçA0xAB ŠŞčČ_XA0xAC n~O - 0xAD đYęȢĹcA0xAE T[rXtH[[ - 0xAF sNĚXvOA0xB0 \Śłľ - 0xB0 OtBeB, - 0xB1 fXg[VA0xB2`0xBF \Śłľ - 0xB2 sNĚ[v|[^ - 0xB3 ŹłČ\ËŞÓćÓć - 0xB4 oWJA0xB5 GtFNgČľH - 0xB6 ˘~ާĚIÉŠŃăŞé - 0xB7 NĚA0xB8` GtFNgČľH + ăšăăŤĺšč˝ĺ°ä˝ć(011făŽä¸ä˝ăăźăˇă§ăłďź) + type 0x7e:SWă0x7f:çŤĺŁă0x80 ăăżéăä¸ă0x81 ăăżéăç´ĺ + 0x82 čä˝ă0x83 ăľăłăŻă0x84 ăă°ăăšă0x85 ăăĽăźă + 0x86 0x86 大éćł(SG/MS/LoV/GX)ă0x87 ăăĄă¤ă¤ăźăăŠĺž
ćŠ + 0x88 ăăĄă¤ă¤ăźăăŠççşă0x87ă0x8B 襨示çĄăă + 0x8c ăăźăăźăăăŻăš(çşĺä¸)ă0x8D ă˘ă¤ăšăŚăŠăźăŤ + 0x8E ăŻăŻă°ăă¤ă˘ă0x8f ăăŠăšăăă¤ăłă0x90 ăšăăă + 0x91 ă˘ăłăŻăŤă0x92 ăăă ăăšăă0x93 ăŠăłăăă¤ăł + 0x94 ăˇă§ăăŻăŚă§ăźăăăŠăăă0x95 ăľăłăăăł + 0x96 ăăŠăăˇăŁăźă0x97 ăăŞăźă¸ăłă°ăăŠăă + 0x98 ăŻăŹă¤ă˘ă˘ăźăăŠăăă0x99 ăăźăăźăăăŻăš + 0x9A ăăŤăąăźăă0x9B ăăŞăĽăźă¸ă0x9C ăă¤ăŞăŹăłăă˛ă¤ăŤ + 0x9D ăŠăłăăăăăŻăżăźă0x9E ZenyăăźăŻă0x9F Zenyč˘ + 0xA0 ĺăçˇăŽčźŞă0xA1 ăăłăŻăŽéłçŹŚ (äşéŁçŹŚćă + 0xA2 çăä¸ăŤçšăŽăăĺ
ăŽçă0xA3 ăăłăŻăŽăšăăŞăłă° + 0xA4 桹桾ăŽä¸ăŤă0xA5 ĺăéă蟪ă0xA6 ä¸ĺĺéł + 0xA7 ĺŁçŹă0xA8 ĺ¤é˝ăŽă˘ăľăˇăłăŻăăšă0xA9 ăăŠăŽăŽčŠŠ + 0xAA ă¤ăăĽăłăŽććŞă0xAB čŞĺĺćăŞăăłăšă0xAC ăăăłă° + 0xAD ç§ăĺżăăŞăă§âŚă0xAE ăľăźăăšăăŠăźăŚăź + 0xAF ăăłăŻăŽăšăăŞăłă°ă0xB0 襨示çĄă + 0xB0 ă°ăŠăăŁăăŁ, + 0xB1 ăă˘ăłăšăăŹăźăˇă§ăłă0xB2ă0xBF 襨示çĄă + 0xB2 ăăłăŻăŽăŻăźăăăźăżăŤé˘¨ + 0xB3 ĺ°ăăŞĺĺćśăăľăăľă + 0xB4 ăă¸ăŞăŤă0xB5 ă¨ăă§ăŻăăŞăďź + 0xB6 éťăĂăçŤä˝çăŤćľŽăăłä¸ăă + 0xB7 ăŻă˘ăŽĺˇŁă0xB8ă ă¨ăă§ăŻăăŞăďź - źîńŢ - ?.81bÍäB + äťć
ĺ ąćąă + ?.81băŻčŹă R 01cd (<sid>.l)x7 - I[gXyIđóM - <sid>x7 ÉÍ NB,CB,FB,LB,SS,FBL,FD ĚĹXLR[hŞdwordĹüé - ÜžIđōȢXLĚŞÍ <sid> = 0x00000000 Şüé + ăŞăźăăšăăŤé¸ćč˘ĺ俥 + <sid>x7 ăŤăŻ NB,CB,FB,LB,SS,FBL,FD ăŽé ă§ăšăăŤăłăźăădwordă§ĺ
Ľă + ăžă é¸ćă§ăăŞăăšăăŤăŽé¨ĺ㯠<sid> = 0x00000000 ăĺ
Ľă S 01ce <sid>.l - I[gXyIđM + ăŞăźăăšăăŤé¸ćč˘é俥 R 01cf <crusader id>.l <target id>.l <?>.18b - ŁgóÔ^[QbgON/OFFBŁgŞŘęéĆ <target id> Ş 0x00000000 ÉČé + çŽčşŤçść
ăżăźă˛ăăON/OFFăçŽčşŤăĺăă㨠<target id> ă 0x00000000 ăŤăŞă R 01d0 <ID>.l <num>.w - <num> : C÷Ě(ńLv) + <num> : ć°ĺăŽć°(éLv) R 01d1 <monk id>.l <target monster id>.l <bool>.l - HćčóÔON/OFFB<bool> ÍnćčŹ§É 0x00000001 đÉ 0x00000000 Şé + ç˝çž˝ĺăçść
ON/OFFă<bool> ăŻç˝ĺĺăćçŤć㍠0x00000001 解é¤ć㍠0x00000000 ăćĽă R 01d2 <id>.l <delay>.l - NĚR{fBC(msec) - OiEAĹÍî{fBC1000(+300)AŇ´Íî{fBC700(+300) + ă˘ăłăŻăŽăłăłăăăŁăŹă¤(msec) + ä¸ćŽľăťéŁćăŻĺşćŹăăŁăŹă¤1000(+300)ăçéžăŻĺşćŹăăŁăŹă¤700(+300) R 01d4 <ID>.l - śńüÍ\Ś(IDÍNPCĚIDŞüé) + ćĺĺĺ
ĽĺçŞčĄ¨ç¤ş(IDăŻNPCăŽIDăĺ
Ľă) S 01d5 <len>.w <ID>.l <input>.?B 00 - śńüÍŕeM(IDÍNPCĚIDŞüé) + ćĺĺĺ
Ľĺĺ
厚é俥(IDăŻNPCăŽIDăĺ
Ľă) R 01d7 <ID>.l <equip point>.b <item id1>.w <item id2>.w - őOtBbN <equip point> Í 02čĆ09ŤĚÝmFBid2Íśč + čŁ
ĺă°ăŠăăŁă㯠<equip point> 㯠02ćă¨09čśłăŽăżç˘şčŞăid2ăŻĺˇŚć R 01d8 <ID>.l <speed>.w <opt1>.w <opt2>.w <option>.w <class>.w <hair>.w <item id1>.w <item id2>.w <head option bottom>.w <head option top>.w <head option mid>.w <hair color>.w ?.w <head dir>.w <guild>.l <emblem>.l <manner>.w <karma>.B <sex>.B <X_Y_dir>.3B ?.B ?.B <sit>.B <Lv>.B ?.B - }bv[h&ÚŽpAüŤtŤpLîń?(0078ĚăĘo[W) + ăăăăăźăć&秝ĺćç¨ăĺăäťăç¨ăăŁăŠć
ĺ ą?(0078ăŽä¸ä˝ăăźă¸ă§ăł) R 01d9 <ID>.l <speed>.w <opt1>.w <opt2>.w <option>.w <class>.w <hair>.w <item id1>.w <item id2>.w.<head option bottom>.w <head option top>.w <head option mid>.w <hair color>.w ?.w <head dir>.w <guild>.l <emblem>.l <manner>.w <karma>.B <sex>.B <X_Y_dir>.3B ?.B ?.B <Lv>.B ?.B - e|Ě\ŚÍÍফLpAüŤtŤłľLîń?(0079ĚăĘo[W) + ăăŹăçăŽčĄ¨ç¤şçŻĺ˛ĺ
沸ăăăŁăŠç¨ăĺăäťăçĄăăăŁăŠć
ĺ ą?(0079ăŽä¸ä˝ăăźă¸ă§ăł) R 01da <ID>.l <speed>.w <opt1>.w <opt2>.w <option>.w <class>.w <hair>.<item id1>.w <item id2>.w <head option bottom>.w <server tick>.l <head option top>.w <head option mid>.w <hair color>.w ?.w <head dir>.w <guild>.l <emblem>.l <manner>.w <karma>.B <sex>.B <X_Y_X_Y>.5B ?.B ?.B ?.B <Lv>.B ?.B - \ŚÍÍŕLÚŽîń(007bĚăĘo[W) + 襨示çŻĺ˛ĺ
ăăŁăŠç§ťĺć
ĺ ą(007băŽä¸ä˝ăăźă¸ă§ăł) S 01db - Ăťkeyv + ćĺˇĺkeyčŚćą R 01dc <len>.w <key>.?B - Ăťkeyt + ćĺˇĺkeyéäť S 01dd <version>.l <account name>.24B <md5 binary>.16B <version2>.1B - id&ĂťĎÝpassM - ÉNCAgŞ01dbđéA - IŞ01dcĹkeyđÔˇA - NCAgŞ"<key><password>"É¢Ämd5vZľ - <md5 binary>ĚđßÄ01ddđéB - <passwordencrypt2>ĚÍ - "<key><password>"ÉÎľÄmd5vZƾĢéđ - "<password><key>"ĆĎXˇé + id&ćĺˇĺć¸ăżpassé俥 + é ăŤăŻăŠă¤ă˘ăłăă01dbăéăă + éŻă01dcă§keyăčżăă + ăŻăŠă¤ă˘ăłăă"<key><password>"ăŤă¤ăăŚmd5č¨çŽă + <md5 binary>ăŽćăĺăăŚ01ddăéăă + <passwordencrypt2>ăŽć㯠+ "<key><password>"ăŤĺŻžăăŚmd5č¨çŽă¨ăăŚăăćă + "<password><key>"ă¨ĺ¤ć´ăă R 01de <skill ID>.w <src ID>.l <dst ID>.l <server tick>.l <src speed>.l <dst speed>.l <param1>.l <param2>.w <param3>.w <type>.B - UnXLGtFNg@(0114ĚăĘo[VH) - type=04 ÎÇĹĎŞ type=06ĆŮÚŻś? - type=05 NB/FBlĚŞUľ˝_[WpH - type=06 PŕĚ? param1Í_[WvAparam2ÍlevelAparam3Í1ĹčĆ\z - type=07 _[W\ŚłľH - type=08 AĹŕĚ? param1Í_[WvAparam2ÍlevelAparam3ÍŞĆ\z - type=09 _[W[VČľÉ_[WžŻ\Śłęé¨(Cf
A)ĆvÁ˝ĚžŞ_[W[VŞoé¨B(@\Íä) + ćťćçłťăšăăŤă¨ăă§ăŻă@(0114ăŽä¸ä˝ăăźăˇă§ăłďź) + type=04 çŤĺŁă§čŚłć¸Ź type=06ă¨ăťăźĺă? + type=05 NB/FBlăŽĺćŁăăăăĄăźă¸ç¨ďź + type=06 ĺçşăăŽ? param1ăŻăăĄăźă¸ĺč¨ăparam2ăŻlevelăparam3ăŻ1ĺşĺŽă¨äşćł + type=07 ăăĄăźă¸čĄ¨ç¤şçĄăďź + type=08 éŁćăăŽ? param1ăŻăăĄăźă¸ĺč¨ăparam2ăŻlevelăparam3ăŻĺĺ˛ć°ă¨äşćł + type=09 ăăĄăźă¸ă˘ăźăˇă§ăłăŞăăŤăăĄăźă¸ă ă襨示ăăăçŠ(ă¤ăłăăĽă˘)ă¨ćăŁăăŽă ăăăĄăźă¸ă˘ăźăˇă§ăłăĺşăçŠă(ćŠč˝ăŻčŹ) S 01df <ID>.| - GMENbNÉćéIDĚ`bgÖ~ńQĆH + GMĺłăŻăŞăăŻăŤăăIDăŽăăŁăăçŚć˘ĺć°ĺç
§ďź R 01e1 <ID>.l <num>.w - <num> : C÷Ě(ńLv) ęx\Śľ˝çăÇńČnumŞÄŕłłęéB + <num> : ć°ĺăŽć°(éLv) ä¸ĺşŚčĄ¨ç¤şăăăĺžăŠăăŞnumăćĽăŚăçĄčŚăăăă R 01e6 <partner name>.24B - ĽXL Ƚɧ˘˝˘gpĚŠŃş + çľĺŠăšăăŤăăŞăăŤé˘ăăă使ç¨ćăŽĺŤăłĺŁ° S 01e7 - XpmrĹ/doridoriľ˝çňńĹéBSPRńĘ2{tOđ§ÄépPbg + ăšăăăă§/doridoriăăăéŁăă§ăăăSPRĺ垊é2ĺăăŠă°ăçŤăŚăăăąăă S 01e8 <party name>.24B <item1>B <item2>B - <item1>ACeűWű@B0ĹÂlĘA1Ĺp[eBöL - <item2>ACeŞzű@B0ĹÂlĘA1Ĺp[eBÉĎŞz - (00f9ĚăĘo[V) + <item1>ă˘ă¤ăă ĺéćšćłă0ă§ĺäşşĺĽă1ă§ăăźăăŁĺ
Źć + <item2>ă˘ă¤ăă ĺé
ćšćłă0ă§ĺäşşĺĽă1ă§ăăźăăŁăŤĺçĺé
+ (00f9ăŽä¸ä˝ăăźăˇă§ăł) R 01ea <ID>.l - ĽGtFNg(šyAá) - IDÍVwĚŕĚŞüéH + çľĺŠă¨ăă§ăŻă(éłćĽ˝ăç´ĺšéŞ) + IDăŻć°ĺŠŚăŽăăŽăĺ
Ľăďź S 01ed - XpmrŞôgŽÉČétOđ§ÄépPbg + ăšăăăăçčŁćł˘ĺăŤăŞăăăŠă°ăçŤăŚăăăąăă R 01ee <len>.w {<index>.w <item ID>.w <type>.B <identify flag>.B <amount>.w ?.2B <card>.4w}.18B* - LÁŐi&űWiXg - îĚęÍ?.2BŞ0x8000ÉČé - 00a3ŠçĎX + ćććśčĺ&ĺéĺăŞăšă + ç˘ăŽĺ ´ĺăŻ?.2Bă0x8000ăŤăŞă + 00a3ăăĺ¤ć´ R 01ef <len>.w {<index>.w <item ID>.w <type>.B <identify flag>.B <amount>.w ?.2B <card>.4w}.18B* - J[gŕACeBÁŐi/űWi - 0123ŠçĎX + ăŤăźăĺ
ă˘ă¤ăă ăćśčĺ/ĺéĺ + 0123ăăĺ¤ć´ R 01f0 <len>.w {<index>.w <item ID>.w <type>.B <identify flag>.B <amount>.w ?.2B <card>.4w}.18B* - JvłńÉaŻÄ éÁŐi&űWiXg - 00a5ŠçĎX + ăŤăăŠăăăŤé ăăŚăăćśčĺ&ĺéĺăŞăšă + 00a5ăăĺ¤ć´ R 01f4 <name>.24B <trade id?>.L <LV>.w - ćűŠçćřvż - 00e5ŠçĎX + ĺ
ćšăăĺĺźčŚčŤ + 00e5ăăĺ¤ć´ R 01f5 <result>.B <trade id?>.L <LV>.w - ążçŠçĚćřvżÉÎˇé˝ - 00e7ŠçĎX + ăăĄăăăăŽĺĺźčŚčŤăŤĺŻžăăĺĺż + 00e7ăăĺ¤ć´ S 0200 <login name>.24B - ragexeÉ/accountIvVđÂŻÄNŽˇéĆOCvÉtÁłęépPbg + ragexeăŤ/accountăŞăăˇă§ăłăă¤ăăŚčľˇĺăăă¨ăă°ă¤ăłčŚćąăŤäťĺ ăăăăăąăă S 0204 <?>.16B - OCvÉtÁłęépPbgB16oCgÍĹčH + ăă°ă¤ăłčŚćąăŤäťĺ ăăăăăąăăă16ăă¤ăăŻĺşĺŽďź S 020B <?>.17B - LN^T[oÚąv0065ÉtÁłęépPbgB1+0204Ě16oCgĹ17oCgH + ăăŁăŠăŻăżăľăźăćĽçśčŚćą0065ăŤäťĺ ăăăăăąăăă1+0204ăŽ16ăă¤ăă§17ăă¤ăďź diff --git a/doc/command.txt b/doc/command.txt index c53035c..49258b7 100644 --- a/doc/command.txt +++ b/doc/command.txt @@ -24,17 +24,17 @@ Index /mapmove prontera.gat 167 158 2. Broadcast - BroadcastR}hĆÍŔŰĚT[oĹGMŞgŚéGMbZ[WĆŻlĚŤđľÜˇB - /bŕľÍ/nbĆľÄg¤ąĆŞĹŤÜˇgpű@ÍČşĚĘčšB + Broadcastăłăăłăă¨ăŻĺŽéăŽăľăźăă§GMă使ăăGMăĄăăťăźă¸ă¨ĺć§ăŽĺăăăăžăă + /băăăăŻ/nbă¨ăăŚä˝żăăă¨ăă§ăăžă使ç¨ćšćłăŻäťĽä¸ăŽéăă§ăă /b <message> /nb <message> /b - Ŕsľ˝[UźtŤĹbZ[Wđ\ŚľÜˇB + ĺŽčĄăăăŚăźăśĺäťăă§ăĄăăťăźă¸ă襨示ăăžăă /nb - Ŕsľ˝[Uźđ\Śš¸bZ[Wđ\ŚľÜˇB + ĺŽčĄăăăŚăźăśĺă襨示ăăăĄăăťăźă¸ă襨示ăăžăă - á: - /b eXg - /nb eXg + äž: + /b ăăšă + /nb ăăšă $Id: command.txt,v 1.1 2004/05/28 03:55:43 wizputer Exp $ diff --git a/doc/conf_ref.txt b/doc/conf_ref.txt index 7f3fbcd..bd1e35c 100644 --- a/doc/conf_ref.txt +++ b/doc/conf_ref.txt @@ -156,7 +156,7 @@ login_log_unknown_packets_filename 01-06-2004 21:25:21.579: receiving of an unknown packet -> disconnection parse_login: connection #5 (ip: 82.64.111.96), packet: 0x4e92 (with being read: 28). Detail (in hex): - 92 4e 00 00 00 00 00 00 00 00 00 00 00 00 00 00 N.............. + 92 4e 00 00 00 00 00 00 00 00 00 00 00 00 00 00 誰.............. 00 00 00 00 00 00 00 00 00 00 00 00 ............ Default value: log/login_unknown_packets.log @@ -594,76 +594,76 @@ passwd It is a password corresponding to ID which this world uses. char_ip - map-serverŠçÝ˝AąĚT[o[ŞSˇé}bvĚ[hđǡé - char-serverĚIPšB + map-serverăăăżăăăăŽăľăźăăźăć
ĺ˝ăăăăăăŽăŻăźăŤăă玥çăă + char-serverăŽIPă§ăă char_port - }bvđo^ˇéchar-serverĚ|[gšBČŞÂ\ĹftHgÍ6121šB + ăăăăçťé˛ăăchar-serverăŽăăźăă§ăăççĽĺŻč˝ă§ăăăŠăŤăăŻ6121ă§ăă map_ip - NCAgŠçŠ˝ąĚmap-serverĚIPšB + ăŻăŠă¤ă˘ăłăăăčŚăăăŽmap-serverăŽIPă§ăă map_port - map-serverĹgpˇé|[gšBČŞÂ\ĹftHgÍ5121šB + map-serveră§ä˝żç¨ăăăăźăă§ăăççĽĺŻč˝ă§ăăăŠăŤăăŻ5121ă§ăă autosave_time - f[^đŠŽIÉLIÉéÔšBPĘÍbšB - ČŞÂ\ĹftHgÍ60(1Ş)šB + ăăźăżăčŞĺçăŤăăŁăŠéŻăŤéăćéă§ăăĺä˝ăŻç§ă§ăă + ççĽĺŻč˝ă§ăăăŠăŤăăŻ60(1ĺ)ă§ăă water_height -
ęĚłđwčˇét@CđßܡB - ČŞÂ\ĹAftHgÍconf/water_height.txtšB + ć°´ĺ ´ăŽéŤăăćĺŽăăăăĄă¤ăŤăćąşăăžăă + ççĽĺŻč˝ă§ăăăăŠăŤăăŻconf/water_height.txtă§ăă motd_txt - Message of the Dayt@CđwčľÜˇB - ČŞÂ\ĹAftHgÍconf/motd.txtšB + Message of the DayăăĄă¤ăŤăćĺŽăăžăă + ççĽĺŻč˝ă§ăăăăŠăŤăăŻconf/motd.txtă§ăă help_txt - @helpĹ\Śˇét@CđwčľÜˇB - ČŞÂ\ĹAftHgÍconf/help.txtšB + @helpă§čĄ¨ç¤şăăăăĄă¤ăŤăćĺŽăăžăă + ççĽĺŻč˝ă§ăăăăŠăŤăăŻconf/help.txtă§ăă mapreg_txt - MAPT[o[ŕLN^[¤LĎđŰśˇét@CđwčľÜˇB - ČŞÂ\ĹAftHgÍsave/mapreg_txtšB + MAPăľăźăăźĺ
ăăŁăŠăŻăżăźĺ
ąćĺ¤ć°ăäżĺăăăăĄă¤ăŤăćĺŽăăžăă + ççĽĺŻč˝ă§ăăăăŠăŤăăŻsave/mapreg_txtă§ăă data_grf - ROf[^t@C data.grf ÖĚpXšB - ČŞÂ\ĹAftHgÍ ./data.grf šB - grf-files.txtŞ éęťżçĚÝčŞDćłęܡB + ROăăźăżăăĄă¤ăŤ data.grf ă¸ăŽăăšă§ăă + ççĽĺŻč˝ă§ăăăăŠăŤă㯠./data.grf ă§ăă + grf-files.txtăăăĺ ´ĺăăĄăăŽč¨ĺŽăĺŞĺ
ăăăžăă sdata_grf - TNCf[^t@C sdata.grf ÖĚpXšB - ČŞÂ\ĹAftHgÍ ./sdata.grf šB - grf-files.txtŞ éęťżçĚÝčŞDćłęܡB + ăľăŻăŠă¤ăăźăżăăĄă¤ăŤ sdata.grf ă¸ăŽăăšă§ăă + ççĽĺŻč˝ă§ăăăăŠăŤă㯠./sdata.grf ă§ăă + grf-files.txtăăăĺ ´ĺăăĄăăŽč¨ĺŽăĺŞĺ
ăăăžăă adata_grf - żf[^t@C adata.grf ÖĚpXšB - ČŞÂ\ĹAftHgÍ ./adata.grf šB - grf-files.txtŞ éęťżçĚÝčŞDćłęܡB + ÎąăăźăżăăĄă¤ăŤ adata.grf ă¸ăŽăăšă§ăă + ççĽĺŻč˝ă§ăăăăŠăŤă㯠./adata.grf ă§ăă + grf-files.txtăăăĺ ´ĺăăĄăăŽč¨ĺŽăĺŞĺ
ăăăžăă npc - ÇÝŢnpcf[^t@CÖĚpXšB - ĄwčÂ\ĹAwčľ˝É[hľÜˇB - clear đwčˇéĆťęÜĹÉo^ľ˝pXđSÄíľÜˇB + čŞăżčžźănpcăăźăżăăĄă¤ăŤă¸ăŽăăšă§ăă + č¤ć°ćĺŽĺŻč˝ă§ăćĺŽăăé ăŤăăźăăăžăă + clear ăćĺŽăăă¨ăăăžă§ăŤçťé˛ăăăăšăĺ
¨ăŚĺé¤ăăžăă delnpc - ÇÝÜȢnpct@CÖĚpXšB - wčľ˝pXÍnpcĹwčłę˝f[^t@CXgŠçíłęܡB - all đwčˇéĆSÄíľÜˇ( npc: clear ĆŻ`)B + čŞăżčžźăžăŞănpcăăĄă¤ăŤă¸ăŽăăšă§ăă + ćĺŽăăăăšăŻnpcă§ćĺŽăăăăăźăżăăĄă¤ăŤăŞăšăăăĺé¤ăăăžăă + all ăćĺŽăăă¨ĺ
¨ăŚĺé¤ăăžă( npc: clear ă¨ĺ瞊)ă map - ąĚ}bvŞSˇé}bvt@CźĹˇB - ĄwčÂ\ĹAwčľ˝É[hľÜˇB - śÝľČ˘}bvđwčľ˝ęG[ÉČčܡB - clear đwčˇéĆťęÜĹÉo^ľ˝t@CźđSÄíľÜˇB + ăăŽăăăăć
ĺ˝ăăăăăăăĄă¤ăŤĺă§ăă + č¤ć°ćĺŽĺŻč˝ă§ăćĺŽăăé ăŤăăźăăăžăă + ĺĺ¨ăăŞăăăăăćĺŽăăĺ ´ĺă¨ăŠăźăŤăŞăăžăă + clear ăćĺŽăăă¨ăăăžă§ăŤçťé˛ăăăăĄă¤ăŤĺăĺ
¨ăŚĺé¤ăăžăă delmap - ÇÝÜȢ}bvt@CÖĚpXšB - wčľ˝t@CÍmapĹwčłę˝XgŠçíłęܡB - all đwčˇéĆSÄíľÜˇ( map: clear ĆŻ`)B + čŞăżčžźăžăŞăăăăăăĄă¤ăŤă¸ăŽăăšă§ăă + ćĺŽăăăăĄă¤ăŤăŻmapă§ćĺŽăăăăŞăšăăăĺé¤ăăăžăă + all ăćĺŽăăă¨ĺ
¨ăŚĺé¤ăăžă( map: clear ă¨ĺ瞊)ă import - ťĚsđĘt@CĚgĆuŤˇŚÜˇB + ăăŽčĄăĺĽăăĄă¤ăŤăŽä¸čşŤă¨ç˝Žăćăăžăă < Example > @@ -684,7 +684,7 @@ npc: conf/warp/npc_warp3.txt npc: conf/mob/npc_monster3J.txt map: prontera.gat map: prt_castle.gat -inpcAmapÍ˝˘ĚĹČŞj +ďźnpcămapăŻĺ¤ăăŽă§ççĽďź delnpc: conf/sample/npc_test.txt npc: clear delmap: prontera.gat @@ -709,689 +709,689 @@ delmap: all < Explanation of a key > warp_point_debug - [v|CgđĘÉ\ŚˇéŠÇ¤ŠĹˇBąęđyesɡéĆ - [v|CgĚŠíčÉMhtOŞťĚęÉoÄ[v - |CgĚźOđmFˇéąĆŞĹŤÜˇBftHgÍnošB + ăŻăźăăă¤ăłăăćŽéăŤčĄ¨ç¤şăăăăŠăăă§ăăăăăyesăŤăă㨠+ ăŻăźăăă¤ăłăăŽăăăăŤăŽăŤăăăŠă°ăăăŽĺ ´ćăŤĺşăŚăŻăźă + ăă¤ăłăăŽĺĺă確čŞăăăă¨ăă§ăăžăăăăăŠăŤăăŻnoă§ăă enemy_critical - vC[ĆŻśLUKÉćéNeBJťčđMOBĆybgÉLřɡéŠÇ¤ŠĹˇB - ąĚNeBJÍŕżëńKČĚĹAonɡéĆFleeĹŕA - LUK̢GĚUŞđŻĂçČčܡBftHgÍnošB + ăăŹă¤ă¤ăźă¨ĺăLUKăŤăăăŻăŞăăŁăŤăŤĺ¤ĺŽăMOBă¨ăăăăŤćĺšăŤăăăăŠăăă§ăă + ăăŽăŻăŞăăŁăŤăŤăŻăăĄăăĺż
ä¸ăŞăŽă§ăonăŤăăă¨éŤFleeă§ăă + LUKăŽéŤăćľăŽćťćăéżăăĽăăăŞăăžăăăăăŠăŤăăŻnoă§ăă enemy_critical_rate - X^[ĆybgĚNeBJpxĚSŞŚĹˇBenemy_criticalŞyesśáȢĆÝčľÄŕ˝ĚÓĄŕ čÜšńBftHgÍ100šB + ă˘ăłăšăżăźă¨ăăăăŽăŻăŞăăŁăŤăŤé ťĺşŚăŽçžĺçă§ăăenemy_criticalăyesăăăŞăă¨č¨ĺŽăăŚăä˝ăŽćĺłăăăăžăăăăăăŠăŤăăŻ100ă§ăă enemy_str - X^[ĚŞUˇéĆŤĚATKvZÉSTRđgpˇéŠÇ¤ŠĹˇB - ftHgÍyesšB + ă˘ăłăšăżăźăŽăćťćăăă¨ăăŽATKč¨çŽăŤSTRă使ç¨ăăăăŠăăă§ăă + ăăăŠăŤăăŻyesă§ăă enemy_perfect_flee - GŞŽSńđđˇéŠÇ¤ŠĹˇBąęđyesɡéĆGŕŽSńđđ - ˇéć¤ÉČčܡBftHgÍnošB + ćľăĺŽĺ
¨ĺéżăăăăăŠăăă§ăăăăăyesăŤăăă¨ćľăĺŽĺ
¨ĺéżă + ăăăăăŤăŞăăžăăăăăŠăŤăăŻnoă§ăă casting_rate - XLĚrĽÔđSŞŚĹ˛ŽľÜˇB - 200ɡéĆrĽÔŞ{ÉČčA0ɡéĆrĽŞČČčܡB - 0-1000öxĚlđwčľÄžł˘BftHgÍ100šB + ăšăăŤăŽčŠ ĺąćéăçžĺçă§čŞżć´ăăžăă + 200ăŤăăă¨čŠ ĺąćéăĺăŤăŞăă0ăŤăăă¨čŠ ĺąăăŞăăŞăăžăă + 0-1000ç¨ĺşŚăŽć°ĺ¤ăćĺŽăăŚăă ăăăăăăŠăŤăăŻ100ă§ăă delay_rate - XLgpăfBCđSŞŚĹ˛ŽľÜˇB - 200ɡéĆfBCŞ{ÉČčA0ɡéĆfBCŞČČčܡB - 0-1000öxĚlđwčľÄžł˘BftHgÍ100šB + ăšăăŤä˝żç¨ĺžăăŁăŹă¤ăçžĺçă§čŞżć´ăăžăă + 200ăŤăăă¨ăăŁăŹă¤ăĺăŤăŞăă0ăŤăăă¨ăăŁăŹă¤ăăŞăăŞăăžăă + 0-1000ç¨ĺşŚăŽć°ĺ¤ăćĺŽăăŚăă ăăăăăăŠăŤăăŻ100ă§ăă delay_dependon_dex - XLgpăfBCŞrĽÔĆŻść¤ÉDEXĹeżđóŻéŠÇ¤Šđ - wčľÜˇBftHgÍnošB + ăšăăŤä˝żç¨ĺžăăŁăŹă¤ăčŠ ĺąćéă¨ĺăăăăŤDEXă§ĺ˝ąéżăĺăăăăŠăăă + ćĺŽăăžăăăăăŠăŤăăŻnoă§ăă skill_delay_attack_enable - XLfBCĚÔUĹŤéŠÇ¤ŠĹˇByesɡęÎXLfBCĚÔXLÍgŚČ˘ŻÇUÍōܡB - ftHgÍnošB + ăšăăŤăăŁăŹă¤ăŽéćťćă§ăăăăŠăăă§ăăyesăŤăăă°ăšăăŤăăŁăŹă¤ăŽéăšăăŤăŻä˝żăăŞăăăŠćťćăŻă§ăăžăă + ăăăŠăŤăăŻnoă§ăă left_cardfix_to_right - ńŹĚśčíĚí°AŽŤASizeĚ_[WâłđEčíÉKpˇéŠÇ¤ŠĹˇBąęđyesɡéĆśčíÉÍí°AŽŤASizeĚ_[W⳪|ŠçČČčܡBftHgÍnošB + äşĺćľăŽĺˇŚććŚĺ¨ăŽç¨Žćăĺąć§ăSizeăŽăăĄăźă¸čŁćŁăĺłććŚĺ¨ăŤéŠç¨ăăăăŠăăă§ăăăăăyesăŤăăă¨ĺˇŚććŚĺ¨ăŤăŻç¨Žćăĺąć§ăSizeăŽăăĄăźă¸čŁćŁăćăăăŞăăŞăăžăăăăăŠăŤăăŻnoă§ăă player_skill_add_range - vC[ĚXLËöŠçGŞŁę˝ÇęŽç˘ĚŁÜĹXLđgpÂ\ɡéŠđßܡBXLĚËö+player_skill_add_rangeÜĹXLŞÍŤÜˇBftHgÍ0ĹˇŞľÍüę˝űŞ˘˘ĹˇB + ăăŹă¤ă¤ăźăŽăšăăŤĺ°ç¨ăăćľăé˘ăăćăŠăăăăăŽčˇé˘ăžă§ăšăăŤă使ç¨ĺŻč˝ăŤăăăăćąşăăžăăăšăăŤăŽĺ°ç¨+player_skill_add_rangeăžă§ăšăăŤăĺąăăžăăăăăŠăŤăăŻ0ă§ăăĺ°ăăŻĺ
Ľăăćšăăăă§ăă skill_out_range_consume - XLĚËöŠçGŞŁęÄXL޸sľ˝SPâACeđÁŐˇéŠÇ¤ŠĹˇBftHgÍyesšB + ăšăăŤăŽĺ°ç¨ăăćľăé˘ăăŚăšăăŤă夹ćăăćSPăă˘ă¤ăă ăćśčăăăăŠăăă§ăăăăăŠăŤăăŻyesă§ăă monster_skill_add_range - X^[ĚXLËöŠçGŞŁę˝ÇęŽç˘ĚŁÜĹXLđgpÂ\ɡéŠđßܡBXLĚËö+monster_skill_add_rangeÜĹXLŞÍŤÜˇBftHgÍ0šB + ă˘ăłăšăżăźăŽăšăăŤĺ°ç¨ăăćľăé˘ăăćăŠăăăăăŽčˇé˘ăžă§ăšăăŤă使ç¨ĺŻč˝ăŤăăăăćąşăăžăăăšăăŤăŽĺ°ç¨+monster_skill_add_rangeăžă§ăšăăŤăĺąăăžăăăăăŠăŤăăŻ0ă§ăă player_damage_delay - vC[LŞ_[WđóŻ˝ÚŽĹŤČ˘fBCđüęéŠÇ¤ŠĹˇB - yesɡéĆCf
AĹŕgíȢŔč_[WđóŻ˝ - ľÎçÍŽŤÜšńBftHgÍyesšB + ăăŹă¤ă¤ăźăăŁăŠăăăĄăźă¸ăĺăăć秝ĺă§ăăŞăăăŁăŹă¤ăĺ
ĽăăăăŠăăă§ăă + yesăŤăăă¨ă¤ăłăăĽă˘ă§ă使ăăŞăéăăăĄăźă¸ăĺăăć + ăă°ăăăŻĺăăžăăăăăăŠăŤăăŻyesă§ăă player_damage_delay_rate - vC[LŞ_[WđóŻ˝ÚŽĹŤČ˘fBCđSŞŚĹ˛ŽľÜˇB - 200ɡéĆfBCŞ{ÉČčA0ɡéĆfBCŞČČčܡB - player_damage_delayŞyesÉľÄȢĆÓĄŞ čÜšńB - ftHgÍ100šB + ăăŹă¤ă¤ăźăăŁăŠăăăĄăźă¸ăĺăăć秝ĺă§ăăŞăăăŁăŹă¤ăçžĺçă§čŞżć´ăăžăă + 200ăŤăăă¨ăăŁăŹă¤ăĺăŤăŞăă0ăŤăăă¨ăăŁăŹă¤ăăŞăăŞăăžăă + player_damage_delayăyesăŤăăŚăŞăă¨ćĺłăăăăžăăă + ăăăŠăŤăăŻ100ă§ăă defunit_not_enemy - häjbgiZCteBEH[/j
[}ČÇjŞMOBÉřĘđ - yڳȢć¤ÉˇéŠÇ¤ŠĹˇBftHgÍyesšB + é˛ĺžĄăŚăăăďźăťă¤ăăăŁăŚăŠăźăŤ/ăăĽăźăăŞăŠďźăMOBăŤĺšćă + ĺăźăăŞăăăăŤăăăăŠăăă§ăăăăăŠăŤăăŻyesă§ăă random_monster_checklv - X^[˘ŇACeđgÁ˝ĆŤÉŠŞćčLV̢X^[đ˘ŇˇéŠÇ¤ŠĹˇB - yesɡéĆAŠŞćčLV̢X^[đ˘ŇľČ˘ć¤ÉČčܡB - ftHgÍyesšB + ă˘ăłăšăżăźĺŹéă˘ă¤ăă ă使ăŁăă¨ăăŤčŞĺăăLVăŽéŤăă˘ăłăšăżăźăĺŹéăăăăŠăăă§ăă + yesăŤăăă¨ăčŞĺăăLVăŽéŤăă˘ăłăšăżăźăĺŹéăăŞăăăăŤăŞăăžăă + ăăăŠăŤăăŻyesă§ăă attribute_recover - ŽŤÉćÁÄUłęÄŕńˇéŠÇ¤ŠĹˇBnoĚęÍ-ŽŤđ - 0ɾܡBftHgÍyesšB + ĺąć§ăŤăăŁăŚćťćăăăŚăĺ垊ăăăăŠăăă§ăănoăŽĺ ´ĺăŻ-ĺąć§ă + 0ăŤăăžăăăăăŠăŤăăŻyesă§ăă item_auto_get - ACeŠŽćž@\đgpˇéŠÇ¤ŠĹˇB - yesɡéĆACehbvđX^[ÉęÔ˝_[Wđ^Ś˝LŞ - ŠŽĹACeđ枡éć¤ÉČčܡB - ftHgÍnošB + ă˘ă¤ăă čŞĺĺĺžćŠč˝ă使ç¨ăăăăŠăăă§ăă + yesăŤăăă¨ă˘ă¤ăă ăăăăăă˘ăłăšăżăźăŤä¸çŞĺ¤ăăăĄăźă¸ăä¸ăăăăŁăŠă + čŞĺă§ă˘ă¤ăă ăĺĺžăăăăăŤăŞăăžăă + ăăăŠăŤăăŻnoă§ăă flooritem_lifetime - °Éż˝ACeŞÁŚéÜĹŠŠéÔšBPĘÍms(~b)šB - ftHgÍ60000(60b)ĹĹŹÍ1000(1b)šB1000˘ČçftHgÉZbgłęܡB + ĺşăŤč˝ăĄăă˘ă¤ăă ăćśăăăžă§ăăăćéă§ăăĺä˝ăŻms(ăăŞç§)ă§ăă + ăăăŠăŤăăŻ60000(60ç§)ă§ćĺ°ăŻ1000(1ç§)ă§ăă1000ćŞćşăŞăăăăŠăŤăăŤăťăăăăăžăă item_first_get_time - X^[ÉęÔ_[Wđ˝^Ś˝LČOŞťĚX^[Ě - hbvACeđćęéć¤ÉČéÜĹĚÔšB - PĘÍms(~b)šBftHgÍ10000(10b)šB + ă˘ăłăšăżăźăŤä¸çŞăăĄăźă¸ăĺ¤ăä¸ăăăăŁăŠäťĽĺ¤ăăăŽă˘ăłăšăżăźăŽ + ăăăăă˘ă¤ăă ăĺăăăăăŤăŞăăžă§ăŽćéă§ăă + ĺä˝ăŻms(ăăŞç§)ă§ăăăăăŠăŤăăŻ10000(10ç§)ă§ăă item_second_get_time - item_first_get_timeĚăX^[ÉńÔÚÉ_[Wđ˝^Ś˝ - LČOŞťĚX^[ĚhbvACeđćęéć¤ÉČéÜĹĚ - ÔšBPĘÍms(~b)šBftHgÍ7000(7b)šB + item_first_get_timeăŽĺžă˘ăłăšăżăźăŤäşçŞçŽăŤăăĄăźă¸ăĺ¤ăä¸ăă + ăăŁăŠäťĽĺ¤ăăăŽă˘ăłăšăżăźăŽăăăăă˘ă¤ăă ăĺăăăăăŤăŞăăžă§ăŽ + ćéă§ăăĺä˝ăŻms(ăăŞç§)ă§ăăăăăŠăŤăăŻ7000(7ç§)ă§ăă item_third_get_time - item_second_get_timeĚăX^[ÉOÔÚÉ_[Wđ˝^Ś˝ - ČOŞťĚX^[ĚhbvACeđćęéć¤ÉČéÜĹĚ - ÔšBPĘÍms(~b)šBftHgÍ5000(5b)šB + item_second_get_timeăŽĺžă˘ăłăšăżăźăŤä¸çŞçŽăŤăăĄăźă¸ăĺ¤ăä¸ăă + ăŁăŠäťĽĺ¤ăăăŽă˘ăłăšăżăźăŽăăăăă˘ă¤ăă ăĺăăăăăŤăŞăăžă§ăŽ + ćéă§ăăĺä˝ăŻms(ăăŞç§)ă§ăăăăăŠăŤăăŻ5000(5ç§)ă§ăă mvp_item_first_get_time - X^[ÉęÔ_[Wđ˝^Ś˝LČOŞťĚX^[Ě - MVPACeđćęéć¤ÉČéÜĹĚÔšB - PĘÍms(~b)šBftHgÍ10000(10b)šB + ă˘ăłăšăżăźăŤä¸çŞăăĄăźă¸ăĺ¤ăä¸ăăăăŁăŠäťĽĺ¤ăăăŽă˘ăłăšăżăźăŽ + MVPă˘ă¤ăă ăĺăăăăăŤăŞăăžă§ăŽćéă§ăă + ĺä˝ăŻms(ăăŞç§)ă§ăăăăăŠăŤăăŻ10000(10ç§)ă§ăă mvp_item_second_get_time - mvp_item_first_get_timeĚăX^[ÉńÔÚÉ_[Wđ˝^Ś˝ - LČOŞťĚX^[ĚMVPACeđćęéć¤ÉČéÜĹĚ - ÔšBPĘÍms(~b)šBftHgÍ10000(10b)šB + mvp_item_first_get_timeăŽĺžă˘ăłăšăżăźăŤäşçŞçŽăŤăăĄăźă¸ăĺ¤ăä¸ăă + ăăŁăŠäťĽĺ¤ăăăŽă˘ăłăšăżăźăŽMVPă˘ă¤ăă ăĺăăăăăŤăŞăăžă§ăŽ + ćéă§ăăĺä˝ăŻms(ăăŞç§)ă§ăăăăăŠăŤăăŻ10000(10ç§)ă§ăă mvp_item_third_get_time - mvp_item_second_get_timeĚăX^[ÉOÔÚÉ_[Wđ˝^Ś˝ - LČOŞťĚX^[ĚMVPACeđćęéć¤ÉČéÜĹĚ - ÔšBPĘÍms(~b)šBftHgÍ2000(2b)šB + mvp_item_second_get_timeăŽĺžă˘ăłăšăżăźăŤä¸çŞçŽăŤăăĄăźă¸ăĺ¤ăä¸ăă + ăăŁăŠäťĽĺ¤ăăăŽă˘ăłăšăżăźăŽMVPă˘ă¤ăă ăĺăăăăăŤăŞăăžă§ăŽ + ćéă§ăăĺä˝ăŻms(ăăŞç§)ă§ăăăăăŠăŤăăŻ2000(2ç§)ă§ăă item_rate - ACehbvŚđSŞŚĹ˛ŽľÜˇB - 0-1000öxĚlđwčľÄžł˘BftHgÍ100šB + ă˘ă¤ăă ăăăăçăçžĺçă§čŞżć´ăăžăă + 0-1000ç¨ĺşŚăŽć°ĺ¤ăćĺŽăăŚăă ăăăăăăŠăŤăăŻ100ă§ăă drop_rate0item - şmŚ0ĚACe(ęX^[ɨŻéS)đşˇéŠÇ¤ŠĚÝčšB - ftHgÍnošB + č˝ä¸ç˘şç0ăŽă˘ă¤ăă (ä¸é¨ă˘ăłăšăżăźăŤăăăăŞăłă´)ăč˝ä¸ăăăăŠăăăŽč¨ĺŽă§ăă + ăăăŠăŤăăŻnoă§ăă base_exp_rate - BaseEXPĚž{ŚđSŞŚĹ˛ŽľÜˇB - 0-1000öxĚlđwčľÄžł˘BftHgÍ100šB + BaseEXPăŽćĺžĺçăçžĺçă§čŞżć´ăăžăă + 0-1000ç¨ĺşŚăŽć°ĺ¤ăćĺŽăăŚăă ăăăăăăŠăŤăăŻ100ă§ăă job_exp_rate - JobEXPĚž{ŚđSŞŚĹ˛ŽľÜˇB - 0-1000öxĚlđwčľÄžł˘BftHgÍ100šB + JobEXPăŽćĺžĺçăçžĺçă§čŞżć´ăăžăă + 0-1000ç¨ĺşŚăŽć°ĺ¤ăćĺŽăăŚăă ăăăăăăŠăŤăăŻ100ă§ăă death_penalty_type - fXyieBĚ^CvđčľÜˇB - 0ĹńžăX^[gˇéÉKpĹÁĢéEXPĚĘŠçäŚĚŞđ¸çˇdlA1ĹńžźăÉKpĹÁĢéEXPĚĘŠçäŚĚŞđ¸çˇdlšB - 2ĹńžăX^[gˇéÉKpĹĚxAbvÜĹĚEXPŠçäŚĚŞđ¸çˇdlA3ĹńžźăÉKpĹĚxAbvÜĹĚEXPŠçäŚĚŞđ¸çˇdlšB - ftHgÍ0šB + ăăšăăăŤăăŁăŽăżă¤ăăćąşĺŽăăžăă + 0ă§ćťăă ĺžăŞăšăżăźăăăćăŤéŠç¨ă§ćăŁăŚăăEXPăŽéăăćŻçăŽĺăć¸ăăäťć§ă1ă§ćťăă ç´ĺžăŤéŠç¨ă§ćăŁăŚăăEXPăŽéăăćŻçăŽĺăć¸ăăäťć§ă§ăă + 2ă§ćťăă ĺžăŞăšăżăźăăăćăŤéŠç¨ă§ćŹĄăŽăŹăăŤă˘ăăăžă§ăŽEXPăăćŻçăŽĺăć¸ăăäťć§ă3ă§ćťăă ç´ĺžăŤéŠç¨ă§ćŹĄăŽăŹăăŤă˘ăăăžă§ăŽEXPăăćŻçăŽĺăć¸ăăäťć§ă§ăă + ăăăŠăŤăăŻ0ă§ăă death_penalty_base - fXyieBÉćéBASEoąl¸ŚđSŞŚĹ˛ŽľÜˇB - Üčᡏélđg¤Ć¸čÜšńBPĘÍ0.01%šB - ftHgÍ0šB + ăăšăăăŤăăŁăŤăăBASEçľé¨ĺ¤ć¸ĺ°çăçžĺçă§čŞżć´ăăžăă + ăăžăä˝ăăăĺ¤ă使ăă¨ć¸ăăžăăăĺä˝ăŻ0.01%ă§ăă + ăăăŠăŤăăŻ0ă§ăă death_penalty_job - fXyieBÉćéJOBoąl¸ŚđSŞŚĹ˛ŽľÜˇB - Üčᡏélđg¤Ć¸čÜšńBPĘÍ0.01%šB - ftHgÍ0šB + ăăšăăăŤăăŁăŤăăJOBçľé¨ĺ¤ć¸ĺ°çăçžĺçă§čŞżć´ăăžăă + ăăžăä˝ăăăĺ¤ă使ăă¨ć¸ăăžăăăĺä˝ăŻ0.01%ă§ăă + ăăăŠăŤăăŻ0ă§ăă zeny_penalty - ńžłČé[jĘĚäŚĹˇBPĘÍ0.01%šBńž - ¸éíŻĹÍČńžăZ[|CgÉßéKpłęܡB - ftHgÍ0šB + ćťăă ćçĄăăŞăăźăéăŽćŻçă§ăăĺä˝ăŻ0.01%ă§ăăćťăă ć + ć¸ăăăă§ăŻăŞăćťăă ĺžăťăźă´ăă¤ăłăăŤćťăćéŠç¨ăăăžăă + ăăăŠăŤăăŻ0ă§ăă restart_hp_rate - X^[gˇéÉńˇéHPäŚđSŞŚĹ˛ŽľÜˇBPĘÍ%šB - ftHgÍ0šB0Ěę1ńÉČčܡB + ăŞăšăżăźăăăćăŤĺ垊ăăHPćŻçăçžĺçă§čŞżć´ăăžăăĺä˝ăŻ%ă§ăă + ăăăŠăŤăăŻ0ă§ăă0ăŽĺ ´ĺ1ĺ垊ăŤăŞăăžăă restart_sp_rate - X^[gˇéÉńˇéSPäŚđSŞŚĹ˛ŽľÜˇBPĘÍ%šB - ftHgÍ0šB0ĚęÍńľÜšńB - ťľÄSPŞäŚćč˘ęŕńľÜšńB + ăŞăšăżăźăăăćăŤĺ垊ăăSPćŻçăçžĺçă§čŞżć´ăăžăăĺä˝ăŻ%ă§ăă + ăăăŠăŤăăŻ0ă§ăă0ăŽĺ ´ĺăŻĺ垊ăăžăăă + ăăăŚSPăćŻçăăéŤăĺ ´ĺăĺ垊ăăžăăă mvp_hp_rate - MVP X^[ĚHPđSŞŚĹ˛ŽľÜˇB - 0-1000öxĚlđwčľÄžł˘BftHgÍ100šB + MVP ă˘ăłăšăżăźăŽHPăçžĺçă§čŞżć´ăăžăă + 0-1000ç¨ĺşŚăŽć°ĺ¤ăćĺŽăăŚăă ăăăăăăŠăŤăăŻ100ă§ăă mvp_item_rate - MVPACeĚž{ŚđSŞŚĹ˛ŽľÜˇB - 0-1000öxĚlđwčľÄžł˘BftHgÍ100šB + MVPă˘ă¤ăă ăŽćĺžĺçăçžĺçă§čŞżć´ăăžăă + 0-1000ç¨ĺşŚăŽć°ĺ¤ăćĺŽăăŚăă ăăăăăăŠăŤăăŻ100ă§ăă mvp_exp_rate - MVP EXPĚž{ŚđSŞŚĹ˛ŽľÜˇB - 0-1000öxĚlđwčľÄžł˘BftHgÍ100šB + MVP EXPăŽćĺžĺçăçžĺçă§čŞżć´ăăžăă + 0-1000ç¨ĺşŚăŽć°ĺ¤ăćĺŽăăŚăă ăăăăăăŠăŤăăŻ100ă§ăă monster_hp_rate - MVP ČOĚX^[ĚHPđSŞŚĹ˛ŽľÜˇB - 0-1000öxĚlđwčľÄžł˘BftHgÍ100šB + MVP 䝼ĺ¤ăŽă˘ăłăšăżăźăŽHPăçžĺçă§čŞżć´ăăžăă + 0-1000ç¨ĺşŚăŽć°ĺ¤ăćĺŽăăŚăă ăăăăăăŠăŤăăŻ100ă§ăă monster_max_aspd - X^[ĚĹĺUŹxđÝčľÜˇB - ftHgÍ199šBĹĺÍ199ĹĹŹÍ100šB + ă˘ăłăšăżăźăŽć大ćťćé庌ăč¨ĺŽăăžăă + ăăăŠăŤăăŻ199ă§ăăć大ăŻ199ă§ćĺ°ăŻ100ă§ăă atcommand_gm_only - R}hđGMępɡéŠÇ¤ŠĹˇBftHgÍnošB + ďź ăłăăłăăGMĺ°ç¨ăŤăăăăŠăăă§ăăăăăŠăŤăăŻnoă§ăă gm_all_skill - SÄĚXLđoŚçęéć¤ÉˇéGMĚxđÝčľÜˇB - ąęđ0ČOɡéĆAťĚGMxČăĚGMÍJOBâXLžđÉÖWČSXLŞoŚçęܡB(NFXgXLŕÜßÄ) - ftHgÍ 0 šB0ĚęÍGMĹÍȢSÄĚLĚÓĄĹÍČSÄĚGMŞSÄĚXLđoŚçęȢƞ¤ąĆšB + ĺ
¨ăŚăŽăšăăŤăčŚăăăăăăăŤăăGMăŽăŹăăŤăč¨ĺŽăăžăă + ăăă0䝼ĺ¤ăŤăăă¨ăăăŽGMăŹăăŤäťĽä¸ăŽGMăŻJOBăăšăăŤćĺžćĄäťśăŤé˘äżăŞăĺ
¨ăšăăŤăčŚăăăăžăă(ăŻă§ăšăăšăăŤăĺŤăăŚ) + ăăăŠăŤă㯠0 ă§ăă0ăŽĺ ´ĺăŻGMă§ăŻăŞăĺ
¨ăŚăŽăăŁăŠăŽćĺłă§ăŻăŞăĺ
¨ăŚăŽGMăĺ
¨ăŚăŽăšăăŤăčŚăăăăŞăă¨č¨ăăă¨ă§ăă gm_all_equipment - SÄĚőiđőĹŤéć¤ÉˇéGMĚxđÝčľÜˇB - ąęđ0ČOɡéĆAťĚGMxČăĚGMÍJOBâxAŤĘÉÖWČ - SőiđőĹŤéć¤ÉČčܡB˝žľANCAg¤ĹG[đ - NąˇgÝíšŕ éĆv˘ÜˇBftHgÍ 0 šB - 0ĚęÍSÄĚGMÍĘívC[ĆŻśťčŞsíęܡB + ĺ
¨ăŚăŽčŁ
ĺĺăčŁ
ĺă§ăăăăăŤăăGMăŽăŹăăŤăč¨ĺŽăăžăă + ăăă0䝼ĺ¤ăŤăăă¨ăăăŽGMăŹăăŤäťĽä¸ăŽGMăŻJOBăăŹăăŤăć§ĺĽăŤé˘äżăŞă + ĺ
¨čŁ
ĺĺăčŁ
ĺă§ăăăăăŤăŞăăžăăăă ăăăŻăŠă¤ă˘ăłăĺ´ă§ă¨ăŠăźă + 辡ăăçľăżĺăăăăăă¨ćăăžăăăăăŠăŤă㯠0 ă§ăă + 0ăŽĺ ´ĺăŻĺ
¨ăŚăŽGMăŻé常ăăŹă¤ă¤ăźă¨ĺăĺ¤ĺŽăčĄăăăžăă gm_skill_unconditional - łđÉXLđgpĹŤéć¤ÉˇéGMĚxđÝčľÜˇB - ąęđ0ČOɡéĆAťĚGMxČăĚGMÍőíâÁďACeĚLł - ČÇÉÖWČAťľÄ˝ŕÁďˇéąĆČXLđgpĹŤéć¤É - ČčܡBťčđłˇéĚĹŽěÉssŞĹéÂ\ŤŞ čܡB - ftHgÍ 0 šB 0ĚęÍSÄĚGMÍĘívC[ĆŻśťčŞ - síęܡB + çĄćĄäťśăŤăšăăŤă使ç¨ă§ăăăăăŤăăGMăŽăŹăăŤăč¨ĺŽăăžăă + ăăă0䝼ĺ¤ăŤăăă¨ăăăŽGMăŹăăŤäťĽä¸ăŽGMăŻčŁ
ĺćŚĺ¨ăćśč˛ťă˘ă¤ăă ăŽćçĄ + ăŞăŠăŤé˘äżăŞăăăăăŚä˝ăćśč˛ťăăăă¨ăŞăăšăăŤă使ç¨ă§ăăăă㍠+ ăŞăăžăăĺ¤ĺŽĺŚçăçĄčŚăăăŽă§ĺä˝ăŤä¸é˝ĺăă§ăĺŻč˝ć§ăăăăžăă + ăăăŠăŤă㯠0 ă§ăă 0ăŽĺ ´ĺăŻĺ
¨ăŚăŽGMăŻé常ăăŹă¤ă¤ăźă¨ĺăĺ¤ĺŽă + čĄăăăžăă player_skillfree - XLc[ÉÖWČXLđă°éąĆŞĹŤéŠÇ¤ŠĹˇB - ąęđyesɡęÎvC[ĚEĆĹK¤ąĆŞĹŤéXLSÄđ - XLc[ÉÖWČă°éąĆŞĹŤÜˇBftHgÍnošB + ăšăăŤăăŞăźăŤé˘äżăŞăăšăăŤăä¸ăăăă¨ăă§ăăăăŠăăă§ăă + ăăăyesăŤăăă°ăăŹă¤ă¤ăźăŽčˇćĽă§çżăăă¨ăă§ăăăšăăŤĺ
¨ăŚă + ăšăăŤăăŞăźăŤé˘äżăŞăä¸ăăăă¨ăă§ăăžăăăăăŠăŤăăŻnoă§ăă player_skillup_limit - XLZbgđľ˝XLđ§ŔČľÉă°éŠÇ¤ŠĹˇB - ąęđyesɡęÎnßĚXL|Cg9ÂÍm[rXĹK¤XLÉľŠ - gŚÜšńBťľÄťĚăĚ39Í1EĆĹK¤¨ÉžŻgŚÄťĚăĚ - |CgÍŠRÉg¤ąĆŞĹŤÜˇBftHgÍnošB + ăšăăŤăŞăťăăçăăăćăšăăŤăĺśéăŞăăŤä¸ăăăăŠăăă§ăă + ăăăyesăŤăăă°ĺ§ăăŽăšăăŤăă¤ăłă9ă¤ăŻăăźăăšă§çżăăšăăŤăŤăă + 使ăăžăăăăăăŚăăŽĺžăŽ39ăŻ1揥čˇćĽă§çżăçŠăŤă ă使ăăŚăăŽĺžăŽ + ăă¤ăłăăŻčŞçąăŤä˝żăăă¨ăă§ăăžăăăăăŠăŤăăŻnoă§ăă weapon_produce_rate - 흢XLĹĚť˘Ź÷ŚđSŞŚĹ˛ŽľÜˇB - 0-1000öxĚlđwčľÄžł˘BftHgÍ100šB + ćŚĺ¨čŁ˝é ăšăăŤă§ăŽčŁ˝é ćĺçăçžĺçă§čŞżć´ăăžăă + 0-1000ç¨ĺşŚăŽć°ĺ¤ăćĺŽăăŚăă ăăăăăăŠăŤăăŻ100ă§ăă potion_produce_rate - |[Vť˘XLĹĚť˘Ź÷ŚđSŞŚĹ˛ŽľÜˇB - 0-1000öxĚlđwčľÄžł˘BftHgÍ100šB + ăăźăˇă§ăłčŁ˝é ăšăăŤă§ăŽčŁ˝é ćĺçăçžĺçă§čŞżć´ăăžăă + 0-1000ç¨ĺşŚăŽć°ĺ¤ăćĺŽăăŚăă ăăăăăăŠăŤăăŻ100ă§ăă monster_active_enable - ćUX^[đćUɡéŠÇ¤ŠĹˇBąęđnoɡéĆ - ćUX^[ŞńćUÉČčܡBftHgÍyesšB + ĺ
ćťă˘ăłăšăżăźăĺ
ćťăŤăăăăŠăăă§ăăăăănoăŤăă㨠+ ĺ
ćťă˘ăłăšăżăźăéĺ
ćťăŤăŞăăžăăăăăŠăŤăăŻyesă§ăă monster_damage_delay_rate - X^[Ş_[WđóŻ˝ÚŽĹŤČ˘fBCđSŞŚĹ˛ŽľÜˇB - 200ɡéĆfBCŞ{ÉČčA0ɡéĆfBCŞČČčܡB - ftHgÍ100šB + ă˘ăłăšăżăźăăăĄăźă¸ăĺăăć秝ĺă§ăăŞăăăŁăŹă¤ăçžĺçă§čŞżć´ăăžăă + 200ăŤăăă¨ăăŁăŹă¤ăĺăŤăŞăă0ăŤăăă¨ăăŁăŹă¤ăăŞăăŞăăžăă + ăăăŠăŤăăŻ100ă§ăă monster_loot_type - [gX^[ĚsŽĚdűđwčľÜˇB - 0ĚęÍLOOTITEM_SIZEÜĹACeđH×ÄŕÜ˝ACeđH×ÄA - OĚACeŞÁŚédlB1ĚęÍLOOTITEM_SIZEÜĹACeđH×éĆ - ŕ¤ACeđH×ČČédlBftHgÍ0šB + ăŤăźăă˘ăłăšăżăźăŽčĄĺăŽäťćšăćĺŽăăžăă + 0ăŽĺ ´ĺăŻLOOTITEM_SIZEăžă§ă˘ă¤ăă ăéŁăšăŚăăžăă˘ă¤ăă ăéŁăšăŚă + ĺăŽă˘ă¤ăă ăćśăăäťć§ă1ăŽĺ ´ĺăŻLOOTITEM_SIZEăžă§ă˘ă¤ăă ăéŁăšă㨠+ ăăă˘ă¤ăă ăéŁăšăŞăăŞăäťć§ăăăăŠăŤăăŻ0ă§ăă mob_skill_use - MOBŞXLđgÁÄéŠÇ¤ŠĹˇBftHgÍyesšB + MOBăăšăăŤă使ăŁăŚăăăăŠăăă§ăăăăăŠăŤăăŻyesă§ăă mob_count_rate - map_athena.confĹwčłę˝npcf[^đÇÝŢŰA - monsterĹč`łę˝zuMOBĚđSŞŚĹ˛ŽľÜˇB - áOĆľÄAzu1ĆľÄč`łę˝MOBĚÍĎíčÜšńB(BOSSÎô) - Ü˝AzuđşűCłľ˝ĆŤA1˘ÉČÁ˝ęÍ1ƾľܡB - 0-1000öxĹwčľÄžł˘BftHgÍ100šB + map_athena.confă§ćĺŽăăănpcăăźăżăčŞăżčžźăéă + monsteră§ĺŽçžŠăăăé
罎MOBăŽć°ăçžĺçă§čŞżć´ăăžăă + äžĺ¤ă¨ăăŚăé
罎ć°1ă¨ăăŚĺŽçžŠăăăMOBăŽć°ăŻĺ¤ăăăžăăă(BOSS寞ç) + ăžăăé
罎ć°ăä¸ćšäżŽćŁăăă¨ăă1ćŞćşăŤăŞăŁăĺ ´ĺăŻ1ă¨ăăŚĺŚçăăžăă + 0-1000ç¨ĺşŚă§ćĺŽăăŚăă ăăăăăăŠăŤăăŻ100ă§ăă quest_skill_learn - NFXgXLđĘÉKžˇéŠÇ¤ŠĹˇB - ąęđyesɡéĆNFXgXLŞĘÉ\ŚłęÄXL|CgđgÁÄKžˇéąĆŞĹŤÜˇB - ftHgÍ nošB + ăŻă§ăšăăšăăŤăćŽéăŤçżĺžăăăăŠăăă§ăă + ăăăyesăŤăăă¨ăŻă§ăšăăšăăŤăćŽéăŤčĄ¨ç¤şăăăŚăšăăŤăă¤ăłăă使ăŁăŚçżĺžăăăă¨ăă§ăăžăă + ăăăŠăŤă㯠noă§ăă quest_skill_reset - XLđZbgˇéNFXgXLđZbgˇéŠÇ¤ŠĹˇB - ftHgÍyesšB - noÉľÄŕquest_skill_learnđyesɡęÎZbgłęܡB + ăšăăŤăăŞăťăăăăćăŻă§ăšăăšăăŤăăŞăťăăăăăăŠăăă§ăă + ăăăŠăŤăăŻyesă§ăă + noăŤăăŚăquest_skill_learnăyesăŤăăă°ăŞăťăăăăăžăă basic_skill_check - ŔčAđˇAp[eBŹA`bg[ěčĚî{XLđ`FbNˇéŠÇ¤ŠĹˇB - ąęđnoɡęÎŔčAđˇĚî{XLŞKvČsŽđî{XLÉÖWČg¤ąĆŞĹŤÜˇB - ftHgÍ yesšB + 座ăă交ćăăăźăăŁçľćăăăŁăăăŤăźă ä˝ăçăŽćĺşćŹăšăăŤăăă§ăăŻăăăăŠăăă§ăă + ăăănoăŤăăă°ĺş§ăă交ćçăŽĺşćŹăšăăŤăĺż
čŚăŞčĄĺăĺşćŹăšăăŤăŤé˘äżăŞă使ăăă¨ăă§ăăžăă + ăăăŠăŤă㯠yesă§ăă guild_emperium_check - MhđěéGyEđÁďˇéŠÇ¤ŠĹˇBąęđnoɡęÎ - GyEČľĹŕMhŞěęܡB - ftHgÍ yesšB + ăŽăŤăăä˝ăćă¨ăłăăŞăŚă ăćśč˛ťăăăăŠăăă§ăăăăănoăŤăăă° + ă¨ăłăăŞăŚă ăŞăă§ăăŽăŤăăä˝ăăžăă + ăăăŠăŤă㯠yesă§ăă guild_exp_limit - MhĚđEÉÝčĹŤéă[oąlĚĚăŔđÝčōܡB - ftHgÍ50(%)šB + ăŽăŤăăŽĺ˝ščˇăŤč¨ĺŽă§ăăä¸ç´çľé¨ĺ¤ăŽĺ˛ĺăŽä¸éăč¨ĺŽă§ăăžăă + ăăăŠăŤăăŻ50(%)ă§ăă player_invincible_time - }bvÚŽâe|[gAľ˝ĚłGÔđÝčľÜˇBPÍÍ - ms(~b)BÚŽAUsŽAXLgpAACegpđˇéĆąĚ - ÔÍČČéB(V[Y[hĹÍÔđ2{ÉľÄKp) - ftHgÍ5000(5b)šB + ăăă秝ĺăăăŹăăźăă垊洝ăăćăŽçĄćľćéăč¨ĺŽăăžăăĺĺ˛ăŻ + ms(ăăŞç§)ă秝ĺăćťćčĄĺăăšăăŤä˝żç¨ăă˘ă¤ăă 使ç¨ăăăă¨ă㎠+ ćéăŻăŞăăŞăă(ăˇăźăşă˘ăźăă§ăŻćéă2ĺăŤăăŚéŠç¨) + ăăăŠăŤăăŻ5000(5ç§)ă§ăă pet_catch_rate - ybgĚßl{ŚđSŞŚĹÝčľÜˇB - 0-1000öxĚlđwčľÄžł˘BftHgÍ100šB + ăăăăŽćç˛ĺçăçžĺçă§č¨ĺŽăăžăă + 0-1000ç¨ĺşŚăŽć°ĺ¤ăćĺŽăăŚăă ăăăăăăŠăŤăăŻ100ă§ăă pet_rename - ybgĚźOđĎXˇéŠÇ¤ŠđßܡBftHgÍnošB - yesÍ˝xĹŕźOĚĎXŞÂ\BnoÍęxĎXˇéĆŕ¤ĎXsÂ\ÉČéB + ăăăăŽĺĺăĺ¤ć´ăăăăŠăăăćąşăăžăăăăăŠăŤăăŻnoă§ăă + yesăŻä˝ĺşŚă§ăĺĺăŽĺ¤ć´ăĺŻč˝ănoăŻä¸ĺşŚĺ¤ć´ăăă¨ăăĺ¤ć´ä¸ĺŻč˝ăŤăŞăă pet_friendly_rate - ybgÉađ °˝ăŞée§xĚ{ŚĹˇB - e§x޸éęÍKpłęÜšńBftHgÍ100šB + ăăăăŤé¤ăăăăćä¸ăă茪ĺŻĺşŚăŽĺçă§ăă + 茪ĺŻĺşŚăć¸ăĺ ´ĺăŻéŠç¨ăăăžăăăăăăŠăŤăăŻ100ă§ăă pet_hungry_delay_rate - ybgĚ Ş¸éÔĚ{ŚĹˇB - {ŚŞ˘Ć ޸čďČčܡBftHgÍ100šB + ăăăăŽč
šăć¸ăćéăŽĺçă§ăă + ĺçăéŤăă¨č
šăć¸ăéŁăăŞăăžăăăăăŠăŤăăŻ100ă§ăă pet_hungry_friendly_decrease - ybgĚ ŞŽSɸÁ˝¸ée§xĚĘšBftHgÍ5šB + ăăăăŽč
šăĺŽĺ
¨ăŤć¸ăŁăćć¸ă茪ĺŻĺşŚăŽéă§ăăăăăŠăŤăăŻ5ă§ăă pet_str - ybgĚATKvZÉSTRđKpˇéŠÇ¤ŠĹˇB - ftHgÍyesšB + ăăăăŽATKč¨çŽăŤSTRăéŠç¨ăăăăŠăăă§ăă + ăăăŠăŤăăŻyesă§ăă pet_status_support - ybgÉćéXe[^X{[iXđKpˇéŠÇ¤ŠĹˇByesɡéĆ - ybgđÁÄéybgÉÝčłęĢéXe[^X{[iXŞ - tŤÜˇBftHgÍnošB + ăăăăŤăăăšăăźăżăšăăźăăšăéŠç¨ăăăăŠăăă§ăăyesăŤăă㨠+ ăăăăćăŁăŚăćăăăćŻăŤč¨ĺŽăăăŚăăăšăăźăżăšăăźăăšă + äťăăžăăăăăŠăŤăăŻnoă§ăă pet_attack_support pet_damage_support - ĺlŞX^[É_[Wđ^Ś˝ĆŤAóŻ˝ĆŤÉ - ybgŞxUđˇéŠÇ¤ŠĹˇByesɡéĆybgĚe§xŞ - ŤíßÄeľ˘ĚžŻxUđľÄęܡBftHgÍnošB + 丝人ăă˘ăłăšăżăźăŤăăĄăźă¸ăä¸ăăă¨ăăĺăăă¨ă㍠+ ăăăăćŻć´ćťćăăăăăŠăăă§ăăyesăŤăăă¨ăăăăŽčŚŞĺŻĺşŚă + ăăăăŚčŚŞăăăŽćă ăćŻć´ćťćăăăŚăăăžăăăăăŠăŤăăŻnoă§ăă pet_support_rate - ybgĚxUmŚĚ{ŚĹˇBi100ĹĘíA200Ĺ{š) - {ŚŞ˘ĆxUćľÄęéć¤ÉČčܡBftHgÍ100šB + ăăăăŽćŻć´ćťć確çăŽĺçă§ăăďź100ă§é常ă200ă§ĺă§ă) + ĺçăéŤăă¨ćŻć´ćťćăăăăŚăăăăăăŤăŞăăžăăăăăŠăŤăăŻ100ă§ăă pet_attack_exp_to_master - ybgŞ^Ś˝_[WĚŞĚoąlđĺlŞűžˇéŠÇ¤ŠĹˇB - ąęđyesɡéĆybgĚUÉćé_[WŕĺlŞ^Ś˝¨ÉČč - ĺlŞoąlđűžˇéąĆŞĹŤÜˇBftHgÍnošB + ăăăăä¸ăăăăĄăźă¸ăŽĺăŽçľé¨ĺ¤ă丝人ăĺĺžăăăăŠăăă§ăă + ăăăyesăŤăăă¨ăăăăŽćťćăŤăăăăĄăźă¸ă丝人ăä¸ăăçŠăŤăŞă + 丝人ăçľé¨ĺ¤ăĺĺžăăăă¨ăă§ăăžăăăăăŠăŤăăŻnoă§ăă pet_attack_exp_rate - ybgŞ^Ś˝_[WĚŞĚoąlđĺlŞűžˇéĚ{ŚĹˇB - ftHgÍ100šB + ăăăăä¸ăăăăĄăźă¸ăŽĺăŽçľé¨ĺ¤ă丝人ăĺĺžăăćăŽĺçă§ăă + ăăăŠăŤăăŻ100ă§ăă pet_lootitem - ybgŞACeđ[gˇéŠÇ¤ŠĚÝčšB - ftHgÍnošB + ăăăăă˘ă¤ăă ăăŤăźăăăăăŠăăăŽč¨ĺŽă§ăă + ăăăŠăŤăăŻnoă§ăă pet_weight - ybgÉ[głšéĆŤĚdʧŔšB - ftHgÍ1000šB + ăăăăŤăŤăźăăăăă¨ăăŽééĺśéă§ăă + ăăăŠăŤăăŻ1000ă§ăă skill_min_damage - XLđgÁ˝_[WŞAĹćč˘ĚęSÄ~XÉČéŠ1_[WÉČéŠđčľÜˇB - ftHgÍnošB + ăšăăŤă使ăŁăćăăĄăźă¸ăéŁćć°ăăćŞćşăŽĺ ´ĺĺ
¨ăŚăăšăŤăŞăă1ăăĄăźă¸ăŤăŞăăăćąşĺŽăăžăă + ăăăŠăŤăăŻnoă§ăă finger_offensive_type - XLweĚ\Ś^CvđčľÜˇB - 0Í{T[o[dlĹ1ÍAeidlšBftHgÍ0šB + ăšăăŤćĺźžăŽčĄ¨ç¤şăżă¤ăăćąşĺŽăăžăă + 0ăŻćŹăľăźăăźäťć§ă§1ăŻă˘ăăäťć§ă§ăăăăăŠăŤăăŻ0ă§ăă heal_exp - XLuq[vđgÁ˝ŰÉŕçŚéWuoąlĘĚÝčšB - 100Ĺńľ˝ĘĆŻĘÉČčܡB - X^[ĚoąlđĎXľÄȢęÍ5`10öxŞKžĆvíęܡB - ftHgÍ0šB + ăšăăŤăăăźăŤăă使ăŁăéăŤăăăăă¸ă§ăçľé¨ĺ¤éăŽč¨ĺŽă§ăă + 100ă§ĺ垊ăăéă¨ĺéăŤăŞăăžăă + ă˘ăłăšăżăźăŽçľé¨ĺ¤ăĺ¤ć´ăăŚăŞăĺ ´ĺăŻ5ă10ç¨ĺşŚăéŠĺ˝ă ă¨ćăăăžăă + ăăăŠăŤăăŻ0ă§ăă resurrection_exp - XLuUNVvđgÁ˝ŰÉŕçŚéoąlĘĚÝčšB - PĘÍ0.01%šBľ˝vC[ŞÁĢéoąl * xˇ/100 * resurrection_exp/10000 ŞĚoąŞáŚÜˇB - ftHgÍ0šB + ăšăăŤăăŞăśăŹăŻăˇă§ăłăă使ăŁăéăŤăăăăçľé¨ĺ¤éăŽč¨ĺŽă§ăă + ĺä˝ăŻ0.01%ă§ăă垊洝ăăăăŹă¤ă¤ăźăćăŁăŚăăçľé¨ĺ¤ * ăŹăăŤĺˇŽ/100 * resurrection_exp/10000 ĺăŽçľé¨ă貰ăăžăă + ăăăŠăŤăăŻ0ă§ăă shop_exp - XLfBXJEgĆI[o[`[WđKžľÄéęNPCpŕzÉś˝JOBoąllž{ŚĹˇBi100ĹĘíA200Ĺ{ÉČčܡj - vZŽÍln(ăŕ*XLx) * shop_exp / 100 ŤęÍfBXJEgŞ éĚÝKpĹéęI[o[`[WŞ éĚÝKpłęܡB - vZŽÍKxÉěÁ˝¨ĹˇB - ftHgÍ0šB + ăšăăŤăăŁăšăŤăŚăłăă¨ăŞăźăăźăăŁăźă¸ăçżĺžăăŚăĺ ´ĺNPCĺŠç¨ééĄăŤĺżăăJOBçľé¨ĺ¤ç˛ĺžĺçă§ăăďź100ă§é常ă200ă§ĺăŤăŞăăžăďź + č¨çŽĺźăŻln(䝣é*ăšăăŤăŹăăŤ) * shop_exp / 100 ă§č˛ˇăĺ ´ĺăŻăăŁăšăŤăŚăłăăăăćăŽăżéŠç¨ă§ĺŁ˛ăĺ ´ĺăŞăźăăźăăŁăźă¸ăăăćăŽăżéŠç¨ăăăžăă + č¨çŽĺźăŻéŠĺşŚăŤä˝ăŁăçŠă§ăă + ăăăŠăŤăăŻ0ă§ăă combo_delay_rate - NĚR{fBCĚÔĚ{ŚĹˇBi100ĹĘíA200Ĺ{ÉČčܡBj - ˝žÓˇé׍ČĚÍÝčˇéĚŞ˘˘ąĆĹÍȢąĆšB - R{fBCŞˇ˘ĆR{ĚqŹÍćČčÜˇŞťĚˇČÁ˝ - ÔĚÔÍsŽĹŤČ˘ŠçšBftHgÍ100šB + ă˘ăłăŻăŽăłăłăăăŁăŹă¤ăŽćéăŽĺçă§ăăďź100ă§é常ă200ă§ĺăŤăŞăăžăăďź + ăă 注ćăăăšăăŞăŽăŻéŤăč¨ĺŽăăăŽăăăăă¨ă§ăŻăŞăăă¨ă§ăă + ăłăłăăăŁăŹă¤ăéˇăă¨ăłăłăăŽçšăăŻăăăŞăăžăăăăŽéˇăăŞăŁă + ćéăŽéăŻčĄĺă§ăăŞăăăă§ăăăăăŠăŤăăŻ100ă§ăă item_check - ACeĚ`FbNđs¤ŠÇ¤ŠĹˇB - OCĆ}bvÚŽÉACeÉsłACeŞČ˘Š`FbNľÜˇB - Ü˝@itemĹsłACeđžĹŤČľÜˇB - foOâACeĚmFđs¤ĆŤČÇÍoffɾĞł˘B - ftHgÍonšB + ă˘ă¤ăă ăŽăă§ăăŻăčĄăăăŠăăă§ăă + ăă°ă¤ăłćă¨ăăă秝ĺćăŤććă˘ă¤ăă ăŤä¸ćŁă˘ă¤ăă ăăŞăăăă§ăăŻăăžăă + ăžă@itemă§ä¸ćŁă˘ă¤ăă ăćĺžă§ăăŞăăăžăă + ăăă°ăă˘ă¤ăă ăŽç˘şčŞăčĄăă¨ăăŞăŠăŻoffăŤăăŚăă ăăă + ăăăŠăŤăăŻonă§ăă wedding_modifydisplay - ^LV[hĆEFfBOhXđ\ŚˇéŠÇ¤ŠĹˇB - ĽLđ\Śľ˝˘ęÍąęđyesɾĞł˘B - ftHgÍnošB + ăżăăˇăźăă¨ăŚă§ăăŁăłă°ăăŹăšă襨示ăăăăŠăăă§ăă + çľĺŠăăŁăŠă襨示ăăăĺ ´ĺăŻăăăyesăŤăăŚăă ăăă + ăăăŠăŤăăŻnoă§ăă natural_healhp_interval - HPŞŠŽńˇéÜĹ|ŠéÔšBPĘÍms(~b)šB - ftHgÍ6000ĹNATURAL_HEAL_INTERVAL˘ÉˇéąĆÍĹŤÜšńB + HPăčŞĺĺ垊ăăăžă§ćăăćéă§ăăĺä˝ăŻms(ăăŞç§)ă§ăă + ăăăŠăŤăăŻ6000ă§NATURAL_HEAL_INTERVALćŞćşăŤăăăă¨ăŻă§ăăžăăă natural_healsp_interval - SPŞŠŽńˇéÜĹ|ŠéÔšBPĘÍms(~b)šB - ftHgÍ8000ĹNATURAL_HEAL_INTERVAL˘ÉˇéąĆÍĹŤÜšńB + SPăčŞĺĺ垊ăăăžă§ćăăćéă§ăăĺä˝ăŻms(ăăŞç§)ă§ăă + ăăăŠăŤăăŻ8000ă§NATURAL_HEAL_INTERVALćŞćşăŤăăăă¨ăŻă§ăăžăăă natural_heal_skill_interval - XLÉćÁÄŠŽńˇéę|ŠéÔšBPĘÍms(~b)šB - ftHgÍ10000ĹNATURAL_HEAL_INTERVAL˘ÉˇéąĆÍĹŤÜšńB + ăšăăŤăŤăăŁăŚčŞĺĺ垊ăăĺ ´ĺćăăćéă§ăăĺä˝ăŻms(ăăŞç§)ă§ăă + ăăăŠăŤăăŻ10000ă§NATURAL_HEAL_INTERVALćŞćşăŤăăăă¨ăŻă§ăăžăăă natural_heal_weight_rate - ŠŽńŞĹŤČČédĘđÝčľÜˇBPĘÍ%šB - ĹŹÍ50ĹĹĺÍ101šBĹĺŞ101ČĚÍdĘŞ - natural_heal_weight_rate˘ĚÉŠŽńˇéŠçšB(ÂÜč101Čç - ˘ÂĹ੮ńōܡB) - ftHgÍ50šB + čŞĺĺ垊ăă§ăăŞăăŞăééăč¨ĺŽăăžăăĺä˝ăŻ%ă§ăă + ćĺ°ăŻ50ă§ć大ăŻ101ă§ăăć大ă101ăŞăŽăŻééă + natural_heal_weight_ratećŞćşăŽćăŤčŞĺĺ垊ăăăăă§ăă(ă¤ăžă101ăŞă + ăă¤ă§ăčŞĺĺ垊ă§ăăžăă) + ăăăŠăŤăăŻ50ă§ăă item_name_override_grffile - ACeĚźO(pęČOĚźOšB)đ.grft@CŠçÇފǤŠĹˇB - noɡéĆitem_db.txtĚźOđg˘ÜˇB - ftHgÍyesšB + ă˘ă¤ăă ăŽĺĺ(čąčŞäťĽĺ¤ăŽĺĺă§ăă)ă.grfăăĄă¤ăŤăăčŞăăăŠăăă§ăă + noăŤăăă¨item_db.txtăŽĺĺă使ăăžăă + ăăăŠăŤăăŻyesă§ăă arrow_decrement - |đg¤îđÁŐˇéŠÇ¤ŠĹˇBąęđnoɡéĆ - îŞÁŐłęÜšńB(îđőˇéKvÍ čܡB) - ftHgÍyesšB + ĺźă使ăćç˘ăćśčăăăăŠăăă§ăăăăănoăŤăă㨠+ ç˘ăćśčăăăžăăă(ç˘ăčŁ
ĺăăĺż
čŚăŻăăăžăă) + ăăăŠăŤăăŻyesă§ăă max_aspd - vC[ĚĹĺUŹxđÝčľÜˇB - ftHgÍ199šBĹĺÍ199ĹĹŹÍ100šB + ăăŹă¤ă¤ăźăŽć大ćťćé庌ăč¨ĺŽăăžăă + ăăăŠăŤăăŻ199ă§ăăć大ăŻ199ă§ćĺ°ăŻ100ă§ăă max_hp - ĹĺHPđÝčľÜˇB - ftHgÍ32500šBĹĺÍ1000000ĹĹŹÍ100šB + ć大HPăč¨ĺŽăăžăă + ăăăŠăŤăăŻ32500ă§ăăć大ăŻ1000000ă§ćĺ°ăŻ100ă§ăă max_sp - ĹĺSPđÝčľÜˇB - ftHgÍ32500šBĹĺÍ1000000ĹĹŹÍ100šB + ć大SPăč¨ĺŽăăžăă + ăăăŠăŤăăŻ32500ă§ăăć大ăŻ1000000ă§ćĺ°ăŻ100ă§ăă max_parameter - vC[Ěî{p[^ĚĹĺlđÝčľÜˇB - ftHgÍ99šBĹĺÍ10000ĹĹŹÍ10šB - î{p[^卢ߏéĆNCAgżŞNąéĚĹ - KČlđÝčˇéűŞÇ˘ĹˇB + ăăŹă¤ă¤ăźăŽĺşćŹăăŠăĄăźăżăŽć大ĺ¤ăč¨ĺŽăăžăă + ăăăŠăŤăăŻ99ă§ăăć大ăŻ10000ă§ćĺ°ăŻ10ă§ăă + ĺşćŹăăŠăĄăźăżĺ¤§ăăéăăă¨ăŻăŠă¤ă˘ăłăč˝ăĄă辡ăăăŽă§ + éŠĺ˝ăŞĺ¤ăč¨ĺŽăăćšăčŻăă§ăă max_cart_weight - J[gĚĹĺdĘđÝčľÜˇB - ftHgÍ8000šBĹĺÍ1000000ĹĹŹÍ100šB + ăŤăźăăŽć大ééăč¨ĺŽăăžăă + ăăăŠăŤăăŻ8000ă§ăăć大ăŻ1000000ă§ćĺ°ăŻ100ă§ăă player_skill_log - vC[ĚXLgpOđ\ŚˇéŠÇ¤ŠĹˇB - ftHgÍnošB + ăăŹă¤ă¤ăźăŽăšăăŤä˝żç¨ăă°ă襨示ăăăăŠăăă§ăă + ăăăŠăŤăăŻnoă§ăă monster_skill_log - X^[ĚXLgpOđ\ŚˇéŠÇ¤ŠĹˇB - ftHgÍnošB + ă˘ăłăšăżăźăŽăšăăŤä˝żç¨ăă°ă襨示ăăăăŠăăă§ăă + ăăăŠăŤăăŻnoă§ăă battle_log - íŹÖWĚOđ\ŚˇéŠÇ¤ŠĹˇB - ftHgÍnošB + ćŚéé˘äżăŽăă°ă襨示ăăăăŠăăă§ăă + ăăăŠăŤăăŻnoă§ăă save_log - LĚŰśÉÖˇéOđ\ŚˇéŠÇ¤Š - ftHgÍnošB + ăăŁăŠăŽäżĺăŤé˘ăăăă°ă襨示ăăăăŠăă + ăăăŠăŤăăŻnoă§ăă error_log - G[Ođ\ŚˇéŠÇ¤ŠĹˇB - ftHgÍyesšB + ă¨ăŠăźăă°ă襨示ăăăăŠăăă§ăă + ăăăŠăŤăăŻyesă§ăă etc_log - XLAíŹALŰśAG[ČOĚOđ\ŚˇéŠÇ¤Š - ftHgÍyesšB + ăšăăŤăćŚéăăăŁăŠäżĺăă¨ăŠăźäťĽĺ¤ăŽăă°ă襨示ăăăăŠăă + ăăăŠăŤăăŻyesă§ăă save_clothcolor - ĚFđŰśˇéŠÇ¤ŠALřɡéĆâčŞ éŠŕľęÜšńB - ftHgÍnošB + ćăŽč˛ăäżĺăăăăŠăăăćĺšăŤăăă¨ĺéĄăăăăăăăăžăăă + ăăăŠăŤăăŻnoă§ăă undead_detect_type - AfbhđFŻˇéű@đÝčľÜˇB0ĹŽŤĚÝA1Ĺí°ĚÝA - 2ĹŽŤĆí°ĚźűĚÇżçĹŕ ÁÄéęÉČčܡB - ftHgÍ0šB + ă˘ăłăăăăčŞčăăćšćłăč¨ĺŽăăžăă0ă§ĺąć§ăŽăżă1ă§ç¨ŽćăŽăżă + 2ă§ĺąć§ă¨ç¨ŽćăŽä¸ĄćšăŽăŠăĄăă§ăăăŁăŚăĺ ´ĺăŤăŞăăžăă + ăăăŠăŤăăŻ0ă§ăă player_auto_counter_type - vC[ĚI[gJE^[ĚdlđÝčľÜˇB0Ĺ100%NeBJ - ĹXL˝łľA1ĹhäłAHit+20ANeBJŚ2{ĹXL˝ - łľA2Ĺ100%NeBJĹXL˝LčA3ĹhäłAHit+20A - NeBJŚ2{ĹXL˝LčšB - ftHgÍ1šB + ăăŹă¤ă¤ăźăŽăŞăźăăŤăŚăłăżăźăŽäťć§ăč¨ĺŽăăžăă0ă§100%ăŻăŞăăŁăŤăŤ + ă§ăšăăŤĺćçĄăă1ă§é˛ĺžĄçĄčŚăHit+20ăăŻăŞăăŁăŤăŤç2ĺă§ăšăăŤĺć + çĄăă2ă§100%ăŻăŞăăŁăŤăŤă§ăšăăŤĺććăă3ă§é˛ĺžĄçĄčŚăHit+20ă + ăŻăŞăăŁăŤăŤç2ĺă§ăšăăŤĺććăă§ăă + ăăăŠăŤăăŻ1ă§ăă monster_auto_counter_type - X^[ĚI[gJE^[ĚdlđÝčľÜˇB0Ĺ100%NeBJ - ĹXL˝łľA1ĹhäłAHit+20ANeBJŚ2{ĹXL˝ - łľA2Ĺ100%NeBJĹXL˝LčA3ĹhäłAHit+20A - NeBJŚ2{ĹXL˝LčšB - ftHgÍ1šB + ă˘ăłăšăżăźăŽăŞăźăăŤăŚăłăżăźăŽäťć§ăč¨ĺŽăăžăă0ă§100%ăŻăŞăăŁăŤăŤ + ă§ăšăăŤĺćçĄăă1ă§é˛ĺžĄçĄčŚăHit+20ăăŻăŞăăŁăŤăŤç2ĺă§ăšăăŤĺć + çĄăă2ă§100%ăŻăŞăăŁăŤăŤă§ăšăăŤĺććăă3ă§é˛ĺžĄçĄčŚăHit+20ă + ăŻăŞăăŁăŤăŤç2ĺă§ăšăăŤĺććăă§ăă + ăăăŠăŤăăŻ1ă§ăă agi_penaly_type - agi_penaly_countČăĚGÉUłę˝ĚagiyieBĚdlđÝčľÜˇB - 0ĹČľA1Ĺagi_penaly_num%¸Â¸ÁÄA2Ĺagi_penaly_numžŻ¸čܡB - ftHgÍ0šB + agi_penaly_count䝼ä¸ăŽćľăŤćťćăăăćăŽagiăăăŤăăŁăŽäťć§ăč¨ĺŽăăžăă + 0ă§ăŞăă1ă§agi_penaly_num%ăă¤ć¸ăŁăŚă2ă§agi_penaly_numă ăć¸ăăžăă + ăăăŠăŤăăŻ0ă§ăă agi_penaly_count - agiyieBđKpˇéGĚđÝčľÜˇB - 2˘ÉÝčˇéąĆÍĹŤÜšńBftHgÍ3šB + agiăăăŤăăŁăéŠç¨ăăćľăŽć°ăč¨ĺŽăăžăă + 2ćŞćşăŤč¨ĺŽăăăă¨ăŻă§ăăžăăăăăăŠăŤăăŻ3ă§ăă agi_penaly_num - agiyieBÉćÁĸéńđĚĘđÝčľÜˇB - ftHgÍ0šB + agiăăăŤăăŁăŤăăŁăŚć¸ăĺéżăŽéăč¨ĺŽăăžăă + ăăăŠăŤăăŻ0ă§ăă vit_penaly_type - vit_penaly_countČăĚGÉUłę˝ĚvityieBĚdlđÝčľÜˇB - 0ĹČľA1Ĺvit_penaly_num%¸Â¸ÁÄA2Ĺvit_penaly_numžŻ¸čܡB - (¸éĚÍvitÉćéhäĚÝ) - ftHgÍ0šB + vit_penaly_count䝼ä¸ăŽćľăŤćťćăăăćăŽvităăăŤăăŁăŽäťć§ăč¨ĺŽăăžăă + 0ă§ăŞăă1ă§vit_penaly_num%ăă¤ć¸ăŁăŚă2ă§vit_penaly_numă ăć¸ăăžăă + (ć¸ăăŽăŻvităŤăăé˛ĺžĄăŽăż) + ăăăŠăŤăăŻ0ă§ăă vit_penaly_count - vityieBđKpˇéGĚđÝčľÜˇB - 2˘ÉÝčˇéąĆÍĹŤÜšńBftHgÍ3šB + vităăăŤăăŁăéŠç¨ăăćľăŽć°ăč¨ĺŽăăžăă + 2ćŞćşăŤč¨ĺŽăăăă¨ăŻă§ăăžăăăăăăŠăŤăăŻ3ă§ăă vit_penaly_num - vityieBÉćÁĸéńđĚĘđÝčľÜˇB - ftHgÍ0šB + vităăăŤăăŁăŤăăŁăŚć¸ăĺéżăŽéăč¨ĺŽăăžăă + ăăăŠăŤăăŻ0ă§ăă player_defense_type - vC[ŞÎŰÉUˇéĚDEFĚvZű@B0Ĺ{IdlA1ČăŸZ(DEF*l)B + ăăŹă¤ă¤ăźă寞蹥ăŤćťćăăćăŽDEFăŽč¨çŽćšćłă0ă§ćŹéŻäťć§ă1䝼ä¸ă§ć¸çŽ(DEF*ĺ¤)ă monster_defense_type - X^[ŞÎŰÉUˇéĚDEFĚvZű@B0Ĺ{IdlA1ČăŸZ(DEF*l)B + ă˘ăłăšăżăźă寞蹥ăŤćťćăăćăŽDEFăŽč¨çŽćšćłă0ă§ćŹéŻäťć§ă1䝼ä¸ă§ć¸çŽ(DEF*ĺ¤)ă pet_defense_type - ybgŞÎŰÉUˇéĚDEFĚvZű@B0Ĺ{IdlA1ČăŸZ(DEF*l)B + ăăăă寞蹥ăŤćťćăăćăŽDEFăŽč¨çŽćšćłă0ă§ćŹéŻäťć§ă1䝼ä¸ă§ć¸çŽ(DEF*ĺ¤)ă magic_defense_type - MDEFĚvZű@B0Ĺ{IdlA1ČăŸZ(MDEF*l) + MDEFăŽč¨çŽćšćłă0ă§ćŹéŻäťć§ă1䝼ä¸ă§ć¸çŽ(MDEF*ĺ¤) player_skill_reiteration - vC[Şg¤ęĚnĘXLĚdËuŤđ¡éŠÇ¤ŠĹˇB - ąęđyesɡéĆSWâj
[}AgbvđdËÄuąĆŞĹŤÜˇB - ftHgÍnošB + ăăŹă¤ă¤ăźă使ăä¸é¨ăŽĺ°é˘ăšăăŤăŽéă罎ăă訹ĺŻăăăăŠăăă§ăă + ăăăyesăŤăăă¨SWăăăĽăźăăăăŠăăăéăăŚç˝Žăăă¨ăă§ăăžăă + ăăăŠăŤăăŻnoă§ăă monster_skill_reiteration - X^[Şg¤ęĚnĘXLĚdËuŤđ¡éŠÇ¤ŠĹˇB - ąęđyesɡéĆSWâj
[}AgbvđdËÄuąĆŞĹŤÜˇB - ftHgÍnošB + ă˘ăłăšăżăźă使ăä¸é¨ăŽĺ°é˘ăšăăŤăŽéă罎ăă訹ĺŻăăăăŠăăă§ăă + ăăăyesăŤăăă¨SWăăăĽăźăăăăŠăăăéăăŚç˝Žăăă¨ăă§ăăžăă + ăăăŠăŤăăŻnoă§ăă player_skill_nofootset - vC[Şg¤ęĚnĘXLđvC[âX^[ĚŤłÉ - uĚđÖ~ˇéŠÇ¤ŠĹˇBąęđyesɡéĆXLđÝuˇéťĚ - řĘÍÍÉvC[âX^[Ş˘éĆXLđuąĆŞĹŤÜšńB - ftHgÍnošB + ăăŹă¤ă¤ăźă使ăä¸é¨ăŽĺ°é˘ăšăăŤăăăŹă¤ă¤ăźăă˘ăłăšăżăźăŽčśłĺ
㍠+ 罎ăăŽăçŚć˘ăăăăŠăăă§ăăăăăyesăŤăăă¨ăšăăŤăč¨ç˝Žăăćă㎠+ ĺšćçŻĺ˛ăŤăăŹă¤ă¤ăźăă˘ăłăšăżăźăăăă¨ăšăăŤă罎ăăă¨ăă§ăăžăăă + ăăăŠăŤăăŻnoă§ăă monster_skill_nofootset - X^[Şg¤ęĚnĘXLđvC[âX^[ĚŤłÉ - uĚđÖ~ˇéŠÇ¤ŠĹˇBąęđyesɡéĆXLđÝuˇéťĚ - řĘÍÍÉvC[âX^[Ş˘éĆXLđuąĆŞĹŤÜšńB - ftHgÍnošB + ă˘ăłăšăżăźă使ăä¸é¨ăŽĺ°é˘ăšăăŤăăăŹă¤ă¤ăźăă˘ăłăšăżăźăŽčśłĺ
㍠+ 罎ăăŽăçŚć˘ăăăăŠăăă§ăăăăăyesăŤăăă¨ăšăăŤăč¨ç˝Žăăćă㎠+ ĺšćçŻĺ˛ăŤăăŹă¤ă¤ăźăă˘ăłăšăżăźăăăă¨ăšăăŤă罎ăăă¨ăă§ăăžăăă + ăăăŠăŤăăŻnoă§ăă player_cloak_check_type - vC[N[LOĚdlđÝčľÜˇB - 0ÍÇ`FbNLčAXLgpĆUĹđłęéB - 1ÍÇ`FbNłľAXLgpĆUĹđłęéB - 2ÍÍÇ`FbNLčAXLgpĆUĹđłęȢB - 2ÍÍÇ`FbNłľAXLgpĆUĹđłęȢB - ftHgÍ0šB + ăăŹă¤ă¤ăźăŻăăźăăłă°ăŽäťć§ăč¨ĺŽăăžăă + 0ăŻĺŁăă§ăăŻćăăăšăăŤä˝żç¨ă¨ćťćă§č§Łé¤ăăăă + 1ăŻĺŁăă§ăăŻçĄăăăšăăŤä˝żç¨ă¨ćťćă§č§Łé¤ăăăă + 2ăŻăŻĺŁăă§ăăŻćăăăšăăŤä˝żç¨ă¨ćťćă§č§Łé¤ăăăŞăă + 2ăŻăŻĺŁăă§ăăŻçĄăăăšăăŤä˝żç¨ă¨ćťćă§č§Łé¤ăăăŞăă + ăăăŠăŤăăŻ0ă§ăă monster_cloak_check_type - X^[N[LOĚdlđÝčľÜˇB - 0ÍÇ`FbNLčAXLgpĆUĹđłęéB - 1ÍÇ`FbNłľAXLgpĆUĹđłęéB - 2ÍÍÇ`FbNLčAXLgpĆUĹđłęȢB - 2ÍÍÇ`FbNłľAXLgpĆUĹđłęȢB - ftHgÍ0šB + ă˘ăłăšăżăźăŻăăźăăłă°ăŽäťć§ăč¨ĺŽăăžăă + 0ăŻĺŁăă§ăăŻćăăăšăăŤä˝żç¨ă¨ćťćă§č§Łé¤ăăăă + 1ăŻĺŁăă§ăăŻçĄăăăšăăŤä˝żç¨ă¨ćťćă§č§Łé¤ăăăă + 2ăŻăŻĺŁăă§ăăŻćăăăšăăŤä˝żç¨ă¨ćťćă§č§Łé¤ăăăŞăă + 2ăŻăŻĺŁăă§ăăŻçĄăăăšăăŤä˝żç¨ă¨ćťćă§č§Łé¤ăăăŞăă + ăăăŠăŤăăŻ0ă§ăă gvg_short_attack_damage_rate - V[Y[hĹߣ¨UĚ_[W{ŚĹˇBftHgÍ100šB + ăˇăźăşă˘ăźăă§čżčˇé˘çŠçćťćăŽăăĄăźă¸ĺçă§ăăăăăŠăŤăăŻ100ă§ăă gvg_long_attack_damage_rate - V[Y[hĹŁ¨UĚ_[W{ŚĹˇBftHgÍ100šB + ăˇăźăşă˘ăźăă§é čˇé˘çŠçćťćăŽăăĄăźă¸ĺçă§ăăăăăŠăŤăăŻ100ă§ăă gvg_magic_attack_damage_rate - V[Y[hĹ@UĚ_[W{ŚĹˇBftHgÍ100šB + ăˇăźăşă˘ăźăă§éćłćťćăŽăăĄăźă¸ĺçă§ăăăăăŠăŤăăŻ100ă§ăă gvg_misc_attack_damage_rate - V[Y[hŨUĆ@UČOĚU(éâgbv)Ě - _[W{ŚĹˇBftHgÍ100šB + ăˇăźăşă˘ăźăă§çŠçćťćă¨éćłćťć䝼ĺ¤ăŽćťć(顚ăăăŠăăç)㎠+ ăăĄăźă¸ĺçă§ăăăăăŠăŤăăŻ100ă§ăă mob_changetarget_byskill: no - đŞskillusedĚXLđMOBŞPCÉgpˇéĆŤAťĚÎŰđXLgpŇɡéŠÇ¤ŠĹˇB - MOBXLgpăÉ^QÍßčܡBftHgÍnošB + ćĄäťśăskillusedăŽăšăăŤăMOBăPCăŤä˝żç¨ăăă¨ăăăăŽĺŻžčąĄăăšăăŤä˝żç¨č
ăŤăăăăŠăăă§ăă + MOBăšăăŤä˝żç¨ĺžăŤăżă˛ăŻćťăăžăăăăăŠăŤăăŻnoă§ăă player_attack_direction_change - vC[ŞUľ˝űüđĎXˇéŠÇ¤ŠĹˇB{IĹÍŽŻČ˘ŔčűüŞĎŚçȢĚšŞoOۢdlČĚĹftHgÍyesšB - noɡęÎŽąĆžŻĹűüŞĎŚéć¤ÉČčܡB + ăăŹă¤ă¤ăźăćťćăăććšĺăĺ¤ć´ăăăăŠăăă§ăăćŹéŻă§ăŻĺăăŞăéăćšĺăĺ¤ăăăŞăăŽă§ăăăă°ă˝ăäťć§ăŞăŽă§ăăăŠăŤăăŻyesă§ăă + noăŤăăă°ĺăăă¨ă ăă§ćšĺăĺ¤ăăăăăŤăŞăăžăă monster_attack_direction_change - X^[ŞUľ˝űüđĎXˇéŠÇ¤ŠĹˇB{IĹÍŽŻČ˘ŔčűüŞĎŚçȢĚšŞoOۢdlČĚĹftHgÍyesšB - noɡęÎŽąĆžŻĹűüŞĎŚéć¤ÉČčܡB + ă˘ăłăšăżăźăćťćăăććšĺăĺ¤ć´ăăăăŠăăă§ăăćŹéŻă§ăŻĺăăŞăéăćšĺăĺ¤ăăăŞăăŽă§ăăăă°ă˝ăäťć§ăŞăŽă§ăăăŠăŤăăŻyesă§ăă + noăŤăăă°ĺăăă¨ă ăă§ćšĺăĺ¤ăăăăăŤăŞăăžăă player_land_skill_limit - skill_db.txtĹÝčłęĢénĘXĻŔđvC[É - KpˇéŠÇ¤ŠĹˇBąęđyesɡęÎÝčłęĢéČăÍ - nĘÉÝuˇéąĆŞĹŤČČčÜˇŞ§ŔđǤόÄŕ - MAX_SKILLUNITGROUPđzŚéĚÝuÍĹŤÜšńB - ftHgÍyesšB + skill_db.txtă§č¨ĺŽăăăŚăăĺ°é˘ăšăăŤăŽć°ĺśéăăăŹă¤ă¤ăźăŤ + éŠç¨ăăăăŠăăă§ăăăăăyesăŤăăă°č¨ĺŽăăăŚăăć°äťĽä¸ăŻ + ĺ°é˘ăŤč¨ç˝Žăăăă¨ăă§ăăŞăăŞăăžăăć°ĺśéăăŠăĺ¤ăăŚă + MAX_SKILLUNITGROUPăčśăăć°ăŽč¨ç˝ŽăŻă§ăăžăăă + ăăăŠăŤăăŻyesă§ăă monster_land_skill_limit - skill_db.txtĹÝčłęĢénĘXĻŔđX^[É - KpˇéŠÇ¤ŠĹˇBąęđyesɡęÎÝčłęĢéČăÍ - nĘÉÝuˇéąĆŞĹŤČČčÜˇŞ§ŔđǤόÄŕ - MAX_MOBSKILLUNITGROUPđzŚéĚÝuÍĹŤÜšńB - ftHgÍyesšB + skill_db.txtă§č¨ĺŽăăăŚăăĺ°é˘ăšăăŤăŽć°ĺśéăă˘ăłăšăżăźăŤ + éŠç¨ăăăăŠăăă§ăăăăăyesăŤăăă°č¨ĺŽăăăŚăăć°äťĽä¸ăŻ + ĺ°é˘ăŤč¨ç˝Žăăăă¨ăă§ăăŞăăŞăăžăăć°ĺśéăăŠăĺ¤ăăŚă + MAX_MOBSKILLUNITGROUPăčśăăć°ăŽč¨ç˝ŽăŻă§ăăžăăă + ăăăŠăŤăăŻyesă§ăă party_skill_penaly - ęĚp[eBXLđgpŇĆp[eBĹXLřĘŞá¤ć¤É - ˇéŠÇ¤ŠĹˇBąęĚeżđóŻéXLÍĄĚ - AhibV
AEG|p[tFNVAI[o[gXgĚÝšB - ftHgÍyesšB + ä¸é¨ăŽăăźăăŁăšăăŤă使ç¨č
ă¨ăăźăăŁă§ăšăăŤĺšćăéăăă㍠+ ăăăăŠăăă§ăăăăăŽĺ˝ąéżăĺăăăšăăŤăŻäťăŽć + ă˘ăăŹăăŞăłăŠăăˇăĽăăŚă¨ăăłăăźăă§ăŻăˇă§ăłăăŞăźăăźăăŠăšăăŽăżă§ăă + ăăăŠăŤăăŻyesă§ăă monster_class_change_full_recover - X^[Ş^tH[VXĆgXtH[[VÉćÁÄ - źĚX^[ÉĎíÁ˝ťĚX^[ĚHPđĹĺČĹńłšéŠ - ǤŠĹˇBąęđyesɡéĆĎíÁ˝X^[ĚĹĺHPÜĹ - ńľÜˇBnoČçĎíéOĚHPĆĹĺHPĚäŚĚŞĚHPÉČčܡB - ftHgÍnošB + ă˘ăłăšăżăźăăĄăżă˘ăŤăăŠăźăˇăšă¨ăăŠăłăšăăŠăźăĄăźăˇă§ăłçăŤăăŁăŚ + äťăŽă˘ăłăšăżăźăŤĺ¤ăăŁăćăăŽă˘ăłăšăżăźăŽHPăć大ăŞă§ĺ垊ăăăă + ăŠăăă§ăăăăăyesăŤăăă¨ĺ¤ăăŁăă˘ăłăšăżăźăŽć大HPăžă§ + ĺ垊ăăžăănoăŞăĺ¤ăăĺăŽHPă¨ć大HPăŽćŻçăŽĺăŽHPăŤăŞăăžăă + ăăăŠăŤăăŻnoă§ăă produce_item_name_input - ť˘Ĺěçę˝S⎍ÎÉť˘ŇĚźOđtŻéŠÇ¤ŠĹˇB - ftHgÍyesšB + 製é ă§ä˝ăăăéăĺąć§çłăŤčŁ˝é č
ăŽĺĺăäťăăăăŠăăă§ăă + ăăăŠăŤăăŻyesă§ăă produce_potion_name_input - ť˘Ĺěçę˝|[VÉť˘ŇĚźOđtŻéŠÇ¤ŠĹˇB - ftHgÍyesšB + 製é ă§ä˝ăăăăăźăˇă§ăłăŤčŁ˝é č
ăŽĺĺăäťăăăăŠăăă§ăă + ăăăŠăŤăăŻyesă§ăă making_arrow_name_input - îěŹĹěçę˝îÉť˘ŇĚźOđtŻéŠÇ¤ŠĹˇB - ftHgÍyesšB + ç˘ä˝ćă§ä˝ăăăç˘ăŤčŁ˝é č
ăŽĺĺăäťăăăăŠăăă§ăă + ăăăŠăŤăăŻyesă§ăă holywater_name_input - ANAxlfBN^Ĺěç꽚
Éť˘ŇĚźOđtŻéŠÇ¤ŠĹˇB - ftHgÍyesšB + ă˘ăŻă˘ăăăăŁăŻăżă§ä˝ăăăčć°´ăŤčŁ˝é č
ăŽĺĺăäťăăăăŠăăă§ăă + ăăăŠăŤăăŻyesă§ăă display_delay_skill_fail - XLgpĚfBCÉuXLgpĚăÍAľÎç¨Ňżžł˘vđ\ŚˇéŠÇ¤ŠĹˇB - ftHgÍyesšB + ăšăăŤä˝żç¨ăŽăăŁăŹă¤ä¸ăŤăăšăăŤä˝żç¨ăŽĺžăŻăăă°ăăăĺž
ăĄăă ăăăă襨示ăăăăŠăăă§ăă + ăăăŠăŤăăŻyesă§ăă chat_warpportal - `bgĚPCđ[v|[^ĹňΚéŠÇ¤ŠĹˇB - ftHgÍnošB + ăăŁăăä¸ăŽPCăăŻăźăăăźăżăŤă§éŁă°ăăăăŠăăă§ăă + ăăăŠăŤăăŻnoă§ăă mob_warpportal - MOBđ[v|[^ĹňΚéŠÇ¤ŠĹˇB - ftHgÍnošB + MOBăăŻăźăăăźăżăŤă§éŁă°ăăăăŠăăă§ăă + ăăăŠăŤăăŻnoă§ăă dead_branch_active - ĂŘĚ}ČÇmonster˝ßĹmobidđÉwčľ˝ęɢŤłęéX^[đANeBuɡéŠÇ¤ŠĹˇB - ftHgÍnošB + ĺ¤ć¨ăŽćăŞăŠmonsterĺ˝äť¤ă§mobidăč˛ ć°ăŤćĺŽăăĺ ´ĺăŤĺŹĺăăăă˘ăłăšăżăźăă˘ăŻăăŁăăŤăăăăŠăăă§ăă + ăăăŠăŤăăŻnoă§ăă vending_max_value - IXĹuŻéACeżiĚĹlšB - ftHgÍ10000000šB + é˛ĺşă§ç˝Žăăă˘ă¤ăă äžĄć źăŽćéŤĺ¤ă§ăă + ăăăŠăŤăăŻ10000000ă§ăă show_steal_in_same_party - XeB[Ź÷AćĘŕĚPTo[(ŠŞÜŢ)É - XeB[ľ˝ACeĚîńđöJˇéŠÇ¤ŠĹˇB - ftHgÍnošB + ăšăăŁăźăŤćĺćăçťé˘ĺ
ăŽPTăĄăłăăź(čŞĺĺŤă)㍠+ ăšăăŁăźăŤăăă˘ă¤ăă ăŽć
ĺ ąăĺ
ŹéăăăăŠăăă§ăă + ăăăŠăŤăăŻnoă§ăă enable_upper_class - ]śA{qEđLřɡéŠÇ¤ŠĹˇB - ftHgÍnošB + 蝢çăé¤ĺčˇăćĺšăŤăăăăŠăăă§ăă + ăăăŠăŤăăŻnoă§ăă pet_atack_attr_none - ybgÉć鳎ŤĘíUđ - ŽŤłľ(ŽŤÉćéâłłľ)ɡéŠÇ¤ŠĹˇB - ftHgÍnoš + ăăăăŤăăçĄĺąć§é常ćťćă + ĺąć§çĄă(ĺąć§ăŤăăčŁćŁçĄă)ăŤăăăăŠăăă§ăă + ăăăŠăŤăăŻnoă§ă pc_atack_attr_none - vC[Éć鳎ŤĘíUđ - ŽŤłľ(ŽŤÉćéâłłľ)ɡéŠÇ¤ŠĹˇB - ftHgÍnoš + ăăŹă¤ă¤ăźăŤăăçĄĺąć§é常ćťćă + ĺąć§çĄă(ĺąć§ăŤăăčŁćŁçĄă)ăŤăăăăŠăăă§ăă + ăăăŠăŤăăŻnoă§ă mob_atack_attr_none - X^[Éć鳎ŤĘíUđ - ŽŤłľ(ŽŤÉćéâłłľ)ɡéŠÇ¤ŠĹˇB - ftHgÍyesš + ă˘ăłăšăżăźăŤăăçĄĺąć§é常ćťćă + ĺąć§çĄă(ĺąć§ăŤăăčŁćŁçĄă)ăŤăăăăŠăăă§ăă + ăăăŠăŤăăŻyesă§ă player_skill_partner_check - šĚ~âtXLđs¤ŰÉp[gi[ĚśÝđ`FbNˇéŠÇ¤ŠĹˇB - ftHgÍyes(`FbNˇé)šB + čä˝éçŚăĺĺĽăšăăŤăčĄăéăŤăăźăăăźăŽĺĺ¨ăăă§ăăŻăăăăŠăăă§ăă + ăăăŠăŤăăŻyes(ăă§ăăŻăă)ă§ăă hide_GM_session - GMAJEgĚLN^[đ@R}hĹ\ŚĚÎŰɡéŠÇ¤ŠĹˇB - ftHgÍnoš + GMă˘ăŤăŚăłăăŽăăŁăŠăŻăżăźă@ăłăăłăçă§čĄ¨ç¤şăŽĺŻžčąĄăŤăăăăŠăăă§ăă + ăăăŠăŤăăŻnoă§ă unit_movement_type - jbgÚŽű@đIđľÜˇB - 0Ĺ{Idl(ńüרdAI¨y)A1ĹAthenadl(ńüרyAI¨d) - ftHgÍ0({Idl)š + ăŚăăă秝ĺĺŚçćšćłăé¸ćăăžăă + 0ă§ćŹéŻäťć§(ĺçˇč˛ čˇâéăéŻĺŚçâčť˝)ă1ă§Athenaäťć§(ĺçˇč˛ čˇâčť˝ăéŻĺŚçâé) + ăăăŠăŤăăŻ0(ćŹéŻäťć§)ă§ă invite_request_check - vC[Şeívż(PTÁüAGuildÁüAćř)ÉźĚvżđóŻüęéŠÇ¤ŠĹˇB - yesĹ{IdlAnoĹAthenadl(óŻüęȢ) - ftHgÍyes(óŻüęé)šB + ăăŹă¤ă¤ăźăĺ税čŚčŤä¸(PTĺ ĺ
ĽăGuildĺ ĺ
Ľăĺĺź)ăŤäťăŽčŚčŤăĺăĺ
ĽăăăăŠăăă§ăă + yesă§ćŹéŻäťć§ănoă§Athenaäťć§(ĺăĺ
ĽăăŞă) + ăăăŠăŤăăŻyes(ĺăĺ
Ľăă)ă§ăă skill_removetrap_type - [ugbvĚdlđIđľÜˇB - 0:{IdlĹăŠ1Âđ枡é - 1:AthenadlĹgÁ˝ACeđgÁ˝Âđ枡é + ăŞă ăźăăăŠăăăŽäťć§ăé¸ćăăžăă + 0:ćŹéŻäťć§ă§ç˝ 1ĺăĺĺžăă + 1:Athenaäťć§ă§ä˝żăŁăă˘ă¤ăă ă使ăŁăĺć°ăĺĺžăă disp_experience - oąlđ\ŚˇéŠÇ¤ŠĹˇB - yesɡéĆAGđ|ľ˝ČÇoąlŞüÁ˝É{lÉĚÝ\ŚłęܡB - ftHgÍnošB + çľé¨ĺ¤ă襨示ăăăăŠăăă§ăă + yesăŤăăă¨ăćľăĺăăćăŞăŠçľé¨ĺ¤ăĺ
ĽăŁăćăŤćŹäşşăŤăŽăżčĄ¨ç¤şăăăžăă + ăăăŠăŤăăŻnoă§ăă night_at_start Choose if server begin with night (yes) or day (no) @@ -1438,7 +1438,7 @@ packet_ver_flag default value: 63 (all clients) import - ťĚsđĘt@CĚgĆuŤˇŚÜˇB + ăăŽčĄăĺĽăăĄă¤ăŤăŽä¸čşŤă¨ç˝Žăćăăžăă < Example > @@ -1603,8 +1603,8 @@ packet_ver_flag: 63 < What this file is. > - GMR}h(/mmA/nb)â@R}hđg¤ąĆŞĹŤéGMĚxđÝčˇé¨ĹˇB - ÝčÍSÄČŞÂ\ĹAČŞÍftHglŞpłęܡB(ftHgÍ0šB) + GMăłăăłă(/mmă/nbç)ă@ăłăăłăă使ăăă¨ăă§ăăGMăŽăŹăăŤăč¨ĺŽăăçŠă§ăă + č¨ĺŽăŻĺ
¨ăŚççĽĺŻč˝ă§ăççĽćăŻăăăŠăŤăĺ¤ăĺŠç¨ăăăžăă(ăăăŠăŤăăŻ0ă§ăă) command_symbol Set here the symbol that you want to use for your commands @@ -1620,63 +1620,63 @@ Sets the level of the users that can use the GM commands. Max GM level is 99. If you want forbid a command to all people, set it with level 100. broadcast - GMR}h /nbA/bA/bb + GMăłăăłă /nbă/bă/bb local_broadcast - GMR}h /lb + GMăłăăłă /lb mapmove - GMR}h /mm + GMăłăăłă /mm resetstate - GMR}h /resetstateA/resetskill + GMăłăăłă /resetstateă/resetskill rura+ - @R}h @rura+ + @ăłăăłă @rura+ rura - @R}h @rura + @ăłăăłă @rura where - @R}h @where + @ăłăăłă @where jumpto - @R}h @jumpto + @ăłăăłă @jumpto jump - @R}h @jump + @ăłăăłă @jump who - @R}h @who + @ăłăăłă @who save - @R}h @save + @ăłăăłă @save load - @R}h @load + @ăłăăłă @load speed - @R}h @speed + @ăłăăłă @speed storage - @R}h @storage + @ăłăăłă @storage gstorage - @R}h @gstorage + @ăłăăłă @gstorage option - @R}h @option + @ăłăăłă @option hide - GMR}h /hideĆ@R}h @hide + GMăłăăłă /hideă¨@ăłăăłă @hide jobchange - @R}h @jobchange + @ăłăăłă @jobchange die - @R}h @die + @ăłăăłă @die kill - @R}h @kill + @ăłăăłă @kill alive - @R}h @alive + @ăłăăłă @alive kami - @R}h @kamiA@kamib + @ăłăăłă @kamiă@kamib heal - @R}h @heal + @ăłăăłă @heal item - @R}h @itemA@item2 + @ăłăăłă @itemă@item2 itemreset - @R}h @itemreset + @ăłăăłă @itemreset itemcheck - @R}h @itemcheck + @ăłăăłă @itemcheck lvup - @R}h @lvup + @ăłăăłă @lvup joblvup - @R}h @joblvup + @ăłăăłă @joblvup help - @R}h @helpA@h + @ăłăăłă @helpă@h gm To become GM (need password; password is set in login_athena.conf). special!: only a non-GM (player with gm level 0) need to have this command. @@ -1687,101 +1687,101 @@ gm - enable gm commands to normal player (battle_athena.conf, atcommand_gm_only parameter) - and normal player must give correct password when he use the @gm command (gm_pass paramter in login_athena.conf) pvpoff - @R}h @pvpoff + @ăłăăłă @pvpoff pvpon - @R}h @pvpon + @ăłăăłă @pvpon gvgoff - @R}h @gvgoff + @ăłăăłă @gvgoff gvgon - @R}h @gvgon + @ăłăăłă @gvgon model - @R}h @model + @ăłăăłă @model go - @R}h @go + @ăłăăłă @go monster - @R}h @monster + @ăłăăłă @monster killmonster - @R}h @killmonsterA@killmonster2 + @ăłăăłă @killmonsteră@killmonster2 refine - @R}h @refine + @ăłăăłă @refine produce - @R}h @produce + @ăłăăłă @produce memo - @R}h @memo + @ăłăăłă @memo gat - @R}h @gat + @ăłăăłă @gat packet - @R}h @packet + @ăłăăłă @packet stpoint - @R}h @stpoint + @ăłăăłă @stpoint skpoint - @R}h @skpoint + @ăłăăłă @skpoint zeny - @R}h @zeny + @ăłăăłă @zeny param - @R}h @strA@agiA@vitA@intA@dexA@luk + @ăłăăłă @stră@agiă@vită@intă@dexă@luk guildlvup - @R}h @guildlvup + @ăłăăłă @guildlvup makeegg - @R}h @makeegg + @ăłăăłă @makeegg petfriendly - @R}h @petfriendly + @ăłăăłă @petfriendly pethungry - @R}h @pethungry + @ăłăăłă @pethungry petrename - @R}h @petrename + @ăłăăłă @petrename recall - @R}h @recall + @ăłăăłă @recall charjob - @R}h @charjob + @ăłăăłă @charjob revive - @R}h @revive + @ăłăăłă @revive charstats - @R}h @charstats + @ăłăăłă @charstats charoption - @R}h @charoption + @ăłăăłă @charoption charsave - @R}h @charsave + @ăłăăłă @charsave charload - @R}h @charload + @ăłăăłă @charload night - @R}h @night + @ăłăăłă @night day - @R}h @day + @ăłăăłă @day doom - @R}h @doom + @ăłăăłă @doom doommap - @R}h @doommap + @ăłăăłă @doommap raise - @R}h @raise + @ăłăăłă @raise raisemap - @R}h @raisemap + @ăłăăłă @raisemap charbaselvl - @R}h @charbaselvl + @ăłăăłă @charbaselvl charjlvl - @R}h @charjlvl + @ăłăăłă @charjlvl kick - @R}h @kickĆGMENbN˝ßugpҧIšv + @ăłăăłă @kickă¨GMĺłăŻăŞăăŻĺ˝äť¤ă使ç¨č
埡ĺśçľäşă allskill - @R}h @allskill + @ăłăăłă @allskill questskill - @R}h @questskill + @ăłăăłă @questskill lostskill - @R}h @lostskill + @ăłăăłă @lostskill spiritball - @R}h @spiritball + @ăłăăłă @spiritball party - @R}h @party + @ăłăăłă @party guild - @R}h @guild + @ăłăăłă @guild agitstart - @R}h @agitstart + @ăłăăłă @agitstart agitend - @R}h @agitend + @ăłăăłă @agitend mapexit - @R}h @mapexit + @ăłăăłă @mapexit idsearch - @R}h @idsearch + @ăłăăłă @idsearch charchangesex Changes the sex of an online player (all characters on the account) ignorelist @@ -1803,7 +1803,7 @@ email import - ťĚsđĘt@CĚgĆuŤˇŚÜˇB + ăăŽčĄăĺĽăăĄă¤ăŤăŽä¸čşŤă¨ç˝Žăćăăžăă < Example > @@ -1940,7 +1940,7 @@ passenc: defaultlanguage You can specified a language to display information and for logs. There are 2 values: - F: Français + F: Frančťis E: English (default) If a displayed information isn't translated, English is used. Default value: E diff --git a/doc/db_ref.txt b/doc/db_ref.txt index b4fd904..4a0ea23 100644 --- a/doc/db_ref.txt +++ b/doc/db_ref.txt @@ -1,18 +1,18 @@ ========================================================================== - Athena dev 2.1.1 mod0659 ťÝĚdbĚt@X{ż + Athena dev 2.1.1 mod0659 çžĺ¨ăŽdbăŽăŞăăĄăŹăłăšďźÎą -------------------------------------------------------------------------- -< ąĚt@CÍ˝H > +< ăăŽăăĄă¤ăŤăŻä˝ďź > - AthenaĚdbt@CĚÝčű@Ět@XšB + AthenaăŽdbăăĄă¤ăŤăŽč¨ĺŽćšćłăŽăŞăăĄăŹăłăšă§ăă -< dbĚXg > +< dbăŽăŞăšă > -cast_db.txt XLĚLXeBOÔĆfBCAŰÔđÝčB -skill_db.txt XLĚf[^đÝčB -skill_require_db.txt XLgpđđÝčB -pet_db.txt ybgĚf[^đÝčB +cast_db.txt ăšăăŤăŽăăŁăšăăŁăłă°ćéă¨ăăŁăŹă¤ăçśććéçăč¨ĺŽă +skill_db.txt ăšăăŤăŽăăźăżăč¨ĺŽă +skill_require_db.txt ăšăăŤä˝żç¨ćĄäťśăč¨ĺŽă +pet_db.txt ăăăăŽăăźăżăč¨ĺŽă ========================================================================== @@ -21,15 +21,15 @@ pet_db.txt ybgĚf[^đÝčB id,cast_list,delay_list,upkeep_time,upkeep_time2 -id: XLĚIDšB -cast_list: XLĚLXeBOÔđÝčľÜˇBxĘÉÝčˇéęÍu:vđg˘ÜˇB -delay_list: XLĚfBCÔđÝčľÜˇBxĘÉÝčˇéęÍu:vđg˘ÜˇB -upkeep_time:XLĚŰÔđÝčľÜˇBxĘÉÝčˇéęÍu:vđg˘ÜˇB -upkeep_time2:XLÉćÁÄNąéóÔŮíĚŰÔđÝčľÜˇBxĘÉÝčˇéęÍu:vđg˘ÜˇB(˝žŹx¸Íupkeep_timeđg˘ÜˇĚĹӾĞł˘B) +id: ăšăăŤăŽIDă§ăă +cast_list: ăšăăŤăŽăăŁăšăăŁăłă°ćéăč¨ĺŽăăžăăăŹăăŤĺĽăŤč¨ĺŽăăĺ ´ĺăŻă:ăă使ăăžăă +delay_list: ăšăăŤăŽăăŁăŹă¤ćéăč¨ĺŽăăžăăăŹăăŤĺĽăŤč¨ĺŽăăĺ ´ĺăŻă:ăă使ăăžăă +upkeep_time:ăšăăŤăŽçśććéăč¨ĺŽăăžăăăŹăăŤĺĽăŤč¨ĺŽăăĺ ´ĺăŻă:ăă使ăăžăă +upkeep_time2:ăšăăŤăŤăăŁăŚčľˇăăçść
ç°ĺ¸¸ăŽçśććéăč¨ĺŽăăžăăăŹăăŤĺĽăŤč¨ĺŽăăĺ ´ĺăŻă:ăă使ăăžăă(ăă é庌ć¸ĺ°ăŻupkeep_timeă使ăăžăăŽă§ćł¨ćăăŚăă ăăă) -ŚíĚÇÁřĘÉćéóÔŮíÍMG_STONECURSE(Îť)AMG_FROSTDIVER()ANPC_STUNATTACK(X^)ANPC_SLEEPATTACK(°)ATF_POISON(Ĺ)ANPC_CURSEATTACK(ô˘)ANPC_SILENCEATTACK(žŮ)ANPC_BLINDATTACK(Ă)Ěupkeep_time2đg˘ÜˇB(xÍ7ĹKp) -Ś}UĚęĹĺxÍ1šŞobV
ĚxÉćÁÄŮíÔđĎXĹŤéĚĹĄÝčŕÂ\šB -Ś}LV}CYp[ĆN[LOĚupkeep_timeÍŰÔĹÍČSPŞ1¸éÔšB +âťćŚĺ¨ăŽčż˝ĺ ĺšćăŤăăçść
ç°ĺ¸¸ăŻMG_STONECURSE(çłĺ)ăMG_FROSTDIVER(ĺçľ)ăNPC_STUNATTACK(ăšăżăł)ăNPC_SLEEPATTACK(çĄç )ăTF_POISON(ćŻ)ăNPC_CURSEATTACK(ĺŞă)ăNPC_SILENCEATTACK(ć˛éť)ăNPC_BLINDATTACK(ćéť)ăŽupkeep_time2ă使ăăžăă(ăŹăăŤăŻ7ă§éŠç¨) +âťćĽććťćăŽĺ ´ĺć大ăŹăăŤăŻ1ă§ăăăăăˇăĽăŽăŹăăŤăŤăăŁăŚç°ĺ¸¸ćéăĺ¤ć´ă§ăăăŽă§č¤ć°č¨ĺŽăĺŻč˝ă§ăă +âťăăăˇăă¤ăşăăŻăźă¨ăŻăăźăăłă°ăŽupkeep_timeăŻçśććéă§ăŻăŞăSPă1ć¸ăćéă§ăă ========================================================================== @@ -38,23 +38,23 @@ upkeep_time2:XLÉćÁÄNąéóÔŮíĚŰÔđÝčľÜˇBxĘÉÝč id,range,hit,inf,pl,nk,max,list_num,castcancel,cast_defence_rate,inf2,maxcount,skill_type,blow_count -id: XLĚIDšB -range: XLĚËöŁĹˇBxĘÉÝčˇéęÍu:vđg˘ÜˇB-1ÍLĚíËöĆŻśĆž¤ÓĄĹ-2ČçLĚíËö+1A-3ČçLĚíËö+2ÉČčܡB -hit: AĹČç8APČç6(XLĚqbgśá čÜšńB) -inf: XLîńšB - 0-pbVuA1-GA2-ęA4-ŚŽA16-ĄűA32-㊠- ĄĚ¨đüęéĆ(lđŤľÄ)łľŽěľÜšńB -pl: XLĚŽŤĹˇB - 0-ł 1-
2-n 3-Î 4- 5-Ĺ 6-š 7-Ă 8-O 9-s -nk: tÁ@1řĘ@2ŤňÎľ -MaxLv: XLĚĹĺxšB -list_num: HitńĚXgšBxĘÉÝčˇéęÍu:vđg˘ÜˇB -castcancel: XLŞLZłęéŠÇ¤ŠđÝčľÜˇByesÍLZłęé¨ĹnoÍLZłęȢ¨ĹˇB -cast_defence_rate: LXeBOÉạéhäÍĚäŚĹˇB{EOobV
âNhNXĚć¤ÉXLLXeBOÉh䪸éXLĚÝčÉg˘ÜˇB -inf2: XLîń2šB1 - NFXgXLA2 - npc XLA4-GA8-ęA16-ŚŽA32-ĄűA64-ăŠA128-PVP[hĹŠŞđÜŢSĄ̈É_[WŞüéXL(nĘXLĚÝ)A256-ĘĚgpĹŠŞÉK¸_[WŞüéXL(nĘXLĚÝ)A512-ŠŞÉÍg¤ąĆŞĹŤČ˘XLA1024 - ŠŞŠŠŞĚp[eBÉľŠgŚČ˘XLB2048 - ŠŞŠŠŞĚMhÉľŠgŚČ˘XLAŻżMh`FbNÍłľB(4A8A16A32A64ÍęĚANeBuXLŞgpBĄÍ˘C
ePĚÝgpB) -maxcount: nĘXLĚÝÉKpłęé¨ĹXLđuŻéĹĺšB0ÍuŻČ˘Ćž¤ÓĄĹÍȧŔŞČ˘¨Ćž¤ÓĄĹˇB -skill_type: XLĚíŢđÝčľÜˇBweaponÍíXLĹmagicÍ@XLAmiscÍíĹŕ@ĹŕȢXLšBnoneÍßᄁ¨ÉÝčľÜˇB˝žąęđĎŚ˝ĆľÄŕXLĚ_[WvZŞąęÉíšÄĎíéíŻĹÍČ_[WĚvZÍvOxĹsČÁĢܡBąęÍXyuCJ[ĹrĽ~łęéŠÇ¤ŠđÝčˇé×̨šB(źĚXLĹąĚÝčđgpˇéÂ\Ťŕ čÜˇŞĄĚXyuCJ[ĚÝšB) magicÉÝčˇéĆXyuCJ[ĹrĽ~łęܡB -blow_count: XLćémbNobNŁĹˇBxĘÉÝčˇéęÍu:vđg˘ÜˇB +id: ăšăăŤăŽIDă§ăă +range: ăšăăŤăŽĺ°ç¨čˇé˘ă§ăăăŹăăŤĺĽăŤč¨ĺŽăăĺ ´ĺăŻă:ăă使ăăžăă-1ăŻăăŁăŠăŽćŚĺ¨ĺ°ç¨ă¨ĺăă¨č¨ăćĺłă§-2ăŞăăăŁăŠăŽćŚĺ¨ĺ°ç¨+1ă-3ăŞăăăŁăŠăŽćŚĺ¨ĺ°ç¨+2ăŤăŞăăžăă +hit: éŁćăŞă8ăĺçşăŞă6(ăšăăŤăŽăăăć°ăăăăăžăăă) +inf: ăšăăŤć
ĺ ąă§ăă + 0-ăăăˇăă1-ćľă2-ĺ ´ćă4-ĺłćçşĺă16-ĺłćšă32-ç˝ + č¤ć°ăŽçŠăĺ
Ľăăă¨(ć°ĺ¤ăčśłăăŚ)ćŁăăĺä˝ăăžăăă +pl: ăšăăŤăŽĺąć§ă§ăă + 0-çĄ 1-ć°´ 2-ĺ° 3-çŤ 4-風 5-ćŻ 6-č 7-ć 8-ĺżľ 9-ä¸ćť +nk: äťĺ ă1ĺšćă2ĺšăéŁă°ă +MaxLv: ăšăăŤăŽć大ăŹăăŤă§ăă +list_num: Hitĺć°ăŽăŞăšăă§ăăăŹăăŤĺĽăŤč¨ĺŽăăĺ ´ĺăŻă:ăă使ăăžăă +castcancel: ăšăăŤăăăŁăłăťăŤăăăăăŠăăăč¨ĺŽăăžăăyesăŻăăŁăłăťăŤăăăçŠă§noăŻăăŁăłăťăŤăăăŞăçŠă§ăă +cast_defence_rate: ăăŁăšăăŁăłă°ä¸ăŤä˝ä¸ăăé˛ĺžĄĺăŽćŻçă§ăăăăŚăŞăłă°ăăăˇăĽăăŻăŠăłăăŻăăšăŽăăăŤăšăăŤăăŁăšăăŁăłă°ä¸ăŤé˛ĺžĄăć¸ăăšăăŤăŽč¨ĺŽăŤä˝żăăžăă +inf2: ăšăăŤć
ĺ ą2ă§ăă1 - ăŻă§ăšăăšăăŤă2 - npc ăšăăŤă4-ćľă8-ĺ ´ćă16-ĺłćçşĺă32-ĺłćšă64-ç˝ ă128-PVPă˘ăźăă§čŞĺăĺŤăĺ
¨ăŚăŽçŠăŤăăĄăźă¸ăĺ
ĽăăšăăŤ(ĺ°é˘ăšăăŤăŽăż)ă256-ćŽéăŽä˝żç¨ă§čŞĺăŤĺż
ăăăĄăźă¸ăĺ
ĽăăšăăŤ(ĺ°é˘ăšăăŤăŽăż)ă512-čŞĺăŤăŻä˝żăăă¨ăă§ăăŞăăšăăŤă1024 - čŞĺăčŞĺăŽăăźăăŁăŤăă使ăăŞăăšăăŤă2048 - čŞĺăčŞĺăŽăŽăŤăăŤăă使ăăŞăăšăăŤăĺçăŽăŤăăă§ăăŻăŻçĄăă(4ă8ă16ă32ă64ăŻä¸é¨ăŽă˘ăŻăăŁăăšăăŤă使ç¨ăäťăŻéżäżŽçž
čŚéłłćłăŽăżä˝żç¨ă) +maxcount: ĺ°é˘ăšăăŤăŽăżăŤéŠç¨ăăăçŠă§ăšăăŤă罎ăăć大ć°ă§ăă0ăŻç˝ŽăăŞăă¨č¨ăćĺłă§ăŻăŞăĺśéăăŞăçŠă¨č¨ăćĺłă§ăă +skill_type: ăšăăŤăŽç¨ŽéĄăč¨ĺŽăăžăăweaponăŻćŚĺ¨ăšăăŤă§magicăŻéćłăšăăŤămiscăŻćŚĺ¨ă§ăéćłă§ăăŞăăšăăŤă§ăănoneăŻćąşăéŁăăçŠçăŤč¨ĺŽăăžăăăă ăăăĺ¤ăăă¨ăăŚăăšăăŤăŽăăĄăźă¸č¨çŽăăăăŤĺăăăŚĺ¤ăăăăă§ăŻăŞăăăĄăźă¸ăŽč¨çŽăŻăăă°ăŠă ăŹăăŤă§čĄăŞăŁăŚăăžăăăăăŻăšăăŤăăŹă¤ăŤăźă§čŠ ĺąä¸ć˘ăăăăăŠăăăč¨ĺŽăăçşăŽçŠă§ăă(äťăŽăšăăŤă§ăăŽč¨ĺŽă使ç¨ăăĺŻč˝ć§ăăăăžăăäťăŽćăšăăŤăăŹă¤ăŤăźăŽăżă§ăă) magicăŤč¨ĺŽăăă¨ăšăăŤăăŹă¤ăŤăźă§čŠ ĺąä¸ć˘ăăăžăă +blow_count: ăšăăŤăăăăăŻăăăŻčˇé˘ă§ăăăŹăăŤĺĽăŤč¨ĺŽăăĺ ´ĺăŻă:ăă使ăăžăă ========================================================================== @@ -63,53 +63,53 @@ blow_count: XLćémbNobNŁĹˇBxĘÉÝčˇéęÍu:vđg˘ id,list_hp,list_sp,list_hp_rate,list_sp_rate,list_zeny,list_weapon,state,spiritball,itemid1,amount1,itemid2,amount2,itemid3,amount3,itemid4,amount4,itemid5,amount5,itemid6,amount6,itemid7,amount7,itemid8,amount8,itemid9,amount9,itemid10,amount10 -id: XLĚIDšB -list_hp: XLgpŸéHPĚĘšBxĘÉÝčˇéęÍu:vđg˘ÜˇB -list_sp: XLgpŸéSPĚĘšBxĘÉÝčˇéęÍu:vđg˘ÜˇB -list_hp_rate: XLgpŸéHPĚäŚĹˇBxĘÉÝčˇéęÍu:vđg˘ÜˇB(ĹĺHPĚäŚĹÍČťÝHPĚäŚĹˇB) -list_sp_rate: XLgpŸéSPĚäŚĹˇBxĘÉÝčˇéęÍu:vđg˘ÜˇB(ĹĺSPĚäŚĹÍČťÝSPĚäŚĹˇB) -list_zeny: XLgpŸé[jĚĘšBxĘÉÝčˇéęÍu:vđg˘ÜˇB -list_weapon: XLđg¤ąĆŞĹŤéíđÝčľÜˇB - 99 - SÄĚíA0 - fčA1 - ZA2 - ĐčA3 - źčA4 - ĐčA - 5 - źčA6 - ĐčA7 - źčA8 - ĐčÝíA9 - źčÝíA10 - bhA - 11 - |A12 - ibNA13 - yíA14 - ÚA15 - {A16 - J^[A - 17~22: ńŹ - ĄđÝčˇéęÍu:vđg˘ÜˇB -state:XLđgpˇé×ĚđđÝčľÜˇBĄĚÝčÍĹŤÜšńB - none - đłľ - hiding - nCfBOóÔ - cloacking - N[LOóÔB - hidden: nCfBOâNbLOóÔ - riding: yRyRÉćÁĢé - falcon: éđAęĢé - cart: J[gđ
ŻÄ˘é - shield: V[hđÁĢé - sight: TCgóÔ - explosionspirits: ôgŽóÔ - recover_weight_rate: ŠRńĹŤédĘ - move_enable: XLgpĘuŞÚŽÂ\Čę - water: ŤłŞ
-spiritball: XLgpÉKvČCeĚšBxĘÉÝčˇéęÍu:vđg˘ÜˇB -itemid1: XLgpÉKvČACeĚIDA|[Vsb`[ĚęxĘÉg¤ąĆÉČéACeID -amount1: XLgpÉKvČACeĚ(Ş0ĚęACeĚIDŞ éĆACe͸çȢŻÇG}ƾĝĚACeđÁĢéKvŞ éć¤ÉČčܡB) |[Vsb`[ĚęxĘÉg¤ąĆÉČéACe -itemid2: 㯠-amount2: 㯠-itemid3: 㯠-amount3: 㯠-itemid4: 㯠-amount4: 㯠-itemid5: 㯠-amount5: 㯠-itemid6: 㯠-amount6: 㯠-itemid7: 㯠-amount7: 㯠-itemid8: 㯠-amount8: 㯠-itemid9: 㯠-amount9: 㯠-itemid10: 㯠-amount10: 㯠+id: ăšăăŤăŽIDă§ăă +list_hp: ăšăăŤä˝żç¨ă§ć¸ăHPăŽéă§ăăăŹăăŤĺĽăŤč¨ĺŽăăĺ ´ĺăŻă:ăă使ăăžăă +list_sp: ăšăăŤä˝żç¨ă§ć¸ăSPăŽéă§ăăăŹăăŤĺĽăŤč¨ĺŽăăĺ ´ĺăŻă:ăă使ăăžăă +list_hp_rate: ăšăăŤä˝żç¨ă§ć¸ăHPăŽćŻçă§ăăăŹăăŤĺĽăŤč¨ĺŽăăĺ ´ĺăŻă:ăă使ăăžăă(ć大HPăŽćŻçă§ăŻăŞăçžĺ¨HPăŽćŻçă§ăă) +list_sp_rate: ăšăăŤä˝żç¨ă§ć¸ăSPăŽćŻçă§ăăăŹăăŤĺĽăŤč¨ĺŽăăĺ ´ĺăŻă:ăă使ăăžăă(ć大SPăŽćŻçă§ăŻăŞăçžĺ¨SPăŽćŻçă§ăă) +list_zeny: ăšăăŤä˝żç¨ă§ć¸ăăźăăŽéă§ăăăŹăăŤĺĽăŤč¨ĺŽăăĺ ´ĺăŻă:ăă使ăăžăă +list_weapon: ăšăăŤă使ăăă¨ăă§ăăćŚĺ¨ăč¨ĺŽăăžăă + 99 - ĺ
¨ăŚăŽćŚĺ¨ă0 - ç´ ćă1 - çĺŁă2 - çćĺŁă3 - 严ćĺŁă4 - çćć§ă + 5 - 严ćć§ă6 - çćć§ă7 - 严ćć§ă8 - çćéĺ¨ă9 - 严ćéĺ¨ă10 - ăăăă + 11 - ĺźă12 - ăăăŻăŤă13 - 漽ĺ¨ă14 - éă15 - ćŹă16 - ăŤăżăźăŤă + 17~22: äşĺćľ + č¤ć°ăč¨ĺŽăăĺ ´ĺăŻă:ăă使ăăžăă +state:ăšăăŤă使ç¨ăăçşăŽćĄäťśăč¨ĺŽăăžăăč¤ć°ăŽč¨ĺŽăŻă§ăăžăăă + none - ćĄäťśçĄă + hiding - ăă¤ăăŁăłă°çść
+ cloacking - ăŻăăźăăłă°çść
ă + hidden: ăă¤ăăŁăłă°ăăŻăăăăłă°çść
+ riding: ăăłăăłăŤäšăŁăŚăă + falcon: 顚ăéŁăăŚăă + cart: ăŤăźăăçăăŚăă + shield: ăˇăźăŤăăćăŁăŚăă + sight: ăľă¤ăçść
+ explosionspirits: çčŁćł˘ĺçść
+ recover_weight_rate: čŞçśĺ垊ă§ăăéé + move_enable: ăšăăŤä˝żç¨ä˝ç˝Žă秝ĺĺŻč˝ăŞĺ ´ć + water: čśłĺ
ăć°´ +spiritball: ăšăăŤä˝żç¨ăŤĺż
čŚăŞć°ĺźžăŽć°ă§ăăăŹăăŤĺĽăŤč¨ĺŽăăĺ ´ĺăŻă:ăă使ăăžăă +itemid1: ăšăăŤä˝żç¨ăŤĺż
čŚăŞă˘ă¤ăă ăŽIDăăăźăˇă§ăłăăăăŁăźăŽĺ ´ĺăŹăăŤĺĽăŤä˝żăăă¨ăŤăŞăă˘ă¤ăă ID +amount1: ăšăăŤä˝żç¨ăŤĺż
čŚăŞă˘ă¤ăă ăŽć°(ć°ă0ăŽĺ ´ĺă˘ă¤ăă ăŽIDăăăă¨ă˘ă¤ăă ăŻć¸ăăŞăăăŠč§ŚĺŞă¨ăăŚăăŽă˘ă¤ăă ăćăŁăŚăăĺż
čŚăăăăăăŤăŞăăžăă) ăăźăˇă§ăłăăăăŁăźăŽĺ ´ĺăŹăăŤĺĽăŤä˝żăăă¨ăŤăŞăă˘ă¤ăă ć° +itemid2: ä¸ĺ +amount2: ä¸ĺ +itemid3: ä¸ĺ +amount3: ä¸ĺ +itemid4: ä¸ĺ +amount4: ä¸ĺ +itemid5: ä¸ĺ +amount5: ä¸ĺ +itemid6: ä¸ĺ +amount6: ä¸ĺ +itemid7: ä¸ĺ +amount7: ä¸ĺ +itemid8: ä¸ĺ +amount8: ä¸ĺ +itemid9: ä¸ĺ +amount9: ä¸ĺ +itemid10: ä¸ĺ +amount10: ä¸ĺ ========================================================================== @@ -118,27 +118,27 @@ amount10: 㯠MobID,Name,JName,ItemID,EggID,AcceID,FoodID,Fullness,HungryDelay ,R_Hungry,R_Full,Intimate,Die,Capture,Speed,S_Performance,talk_convert_class,attack_rate,defence_attack_rate,change_target_rate,pet_script -MobID: X^[IDšB -Name: pęźO(_~[) -JName: źO -ItemID: ßlpĚACeID -EggID: ĚACeID -AcceID: őANZT[ĚACeID -FoodID: aĚACeID -Fullness: 1ńĚaĹĚ xÁŚ% -HungryDelay: xŞ1%¸é×ÉŠŠéÔ(b) -R_Hungry: ó aâče§xÁĘ -R_Full: ĆÄŕ aâče§x¸Ę -Intimate: ßle§x -Die: Se§x¸Ę -Capture: ßlŚ(ŞŚ) -Speed: ÚŽŹx -S_Performance: XyVptH}XŞ éŠÇ¤Š(1Ĺ č0ĹČľ) -talk_convert_class: äđźĚybg̨ÉĎXBĎXľ˝˘ybgĚX^[IDđüęܡB0ĚęĎXČľĹ}CiXđüęéĆG[VČǪ(ä)ÍSÄłłęܡB -attack_rate: xUmŚB(ŞŚ) ĺlŞU𾊯˝ęB -defence_attack_rate: xUmŚB(ŞŚ) ĺlŞUđóŻ˝ęB -change_target_rate: UÚWđĎXˇémŚB(ŞŚ) -pet_script: ybgđÁĢéKpłęéXe[^X{[iXđÝčB +MobID: ă˘ăłăšăżăźIDă§ăă +Name: čąčŞĺĺ(ăăăź) +JName: ĺĺ +ItemID: ćç˛ç¨ăŽă˘ă¤ăă ID +EggID: ĺľăŽă˘ă¤ăă ID +AcceID: čŁ
ĺă˘ăŻăťăľăŞăźăŽă˘ă¤ăă ID +FoodID: é¤ăŽă˘ă¤ăă ID +Fullness: 1ĺăŽé¤ă§ăŽćşč
šĺşŚĺ˘ĺ ç% +HungryDelay: ćşč
šĺşŚă1%ć¸ăçşăŤăăăćé(ç§) +R_Hungry: 犺č
šćé¤ăă茪ĺŻĺşŚĺ˘ĺ é +R_Full: ă¨ăŚăćşč
šćé¤ăă茪ĺŻĺşŚć¸ĺ°é +Intimate: ćç˛ć茪ĺŻĺşŚ +Die: ćťäşĄć茪ĺŻĺşŚć¸ĺ°é +Capture: ćç˛ç(ä¸ĺç) +Speed: 秝ĺé庌 +S_Performance: ăšăăˇăŁăŤăăăŠăăłăšăăăăăŠăă(1ă§ăă0ă§ăŞă) +talk_convert_class: ĺ°čŠăäťăŽăăăăŽçŠăŤĺ¤ć´ăĺ¤ć´ăăăăăăăŽă˘ăłăšăżăźIDăĺ
Ľăăžăă0ăŽĺ ´ĺĺ¤ć´ăŞăă§ăă¤ăăšăĺ
Ľăăă¨ă¨ă˘ăźăˇă§ăłäťĽĺ¤ăŽçŠ(ĺ°čŠ)ăŻĺ
¨ăŚçĄčŚăăăžăă +attack_rate: ćŻć´ćťć確çă(ä¸ĺç) 丝人ăćťćăăăăăĺ ´ĺă +defence_attack_rate: ćŻć´ćťć確çă(ä¸ĺç) 丝人ăćťćăĺăăĺ ´ĺă +change_target_rate: ćťćçŽć¨ăĺ¤ć´ăă確çă(ä¸ĺç) +pet_script: ăăăăćăŁăŚăăćéŠç¨ăăăăšăăźăżăšăăźăăšăč¨ĺŽă diff --git a/doc/help.txt b/doc/help.txt index 7b83258..430574d 100644 --- a/doc/help.txt +++ b/doc/help.txt @@ -422,8 +422,8 @@ Kick all characters off the server <OTHER COMMANDS> -@gat ---- fobOp(üÓgatđ˛×é) -@packet ---- fobOp(pPbgFX) +@gat ---- ăăăă°ç¨(ĺ¨čžşgată調ăšă) +@packet ---- ăăăă°ç¨(ăăąăăč˛ă
) @mapexit Kick all players and shut down map-server. diff --git a/doc/inter_server_packet.txt b/doc/inter_server_packet.txt index 2532803..4e6dabf 100644 --- a/doc/inter_server_packet.txt +++ b/doc/inter_server_packet.txt @@ -1,7 +1,7 @@ -S mapI=>interI -R interI=>mapI +S mapéŻ=>interéŻ +R interéŻ=>mapéŻ -pPbgˇXg +ăăąăăéˇăŞăšă R 3800-388f -1,-1,27, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, @@ -26,179 +26,179 @@ S 3000-308f S 3000 <len>.w <message>.?B - GMbZ[WMv + GMăĄăăťăźă¸é俥čŚćą R 3800 <len>.w <message>.?B - GMbZ[W + GMăĄăăťăźă¸ S 3001 <len>.w <src-nick>.24B <dst-nick>.24B <message>.?B - WisMv + Wisé俥čŚćą R 3801 <len>.w <wis-id>.l <src-nick>.24B <dst-nick>.24B <message>.?B - Wisf[^óM - wis-id=interIŕĚWis-idFmapIĹÍ3002ĹMˇé˝ßžŻÉg¤ + Wisăăźăżĺ俥 + wis-id=interéŻĺ
é¨ăŽWis-idďźmapéŻă§ăŻ3002ă§é俥ăăăăă ăăŤä˝żă S 3002 <wis-id>.l <flag>.B - ąĚmapIĹĚWisĚMĘ - flag=0 MŽš(ąĚmapIɢ˝ĚĹAMľ˝) - flag=1 M¸s(ąĚmapIÉÍťńČl˘Üšń) - flag=2 MIš(ąĚmapIɢéŞAignorełęĢé) + ăăŽmapéŻă§ăŽWisăŽé俥çľć + flag=0 é俥ĺŽäş(ăăŽmapéŻăŤăăăŽă§ăé俥ăă) + flag=1 é俥夹ć(ăăŽmapéŻăŤăŻăăăŞäşşăăžăă) + flag=2 é俥çľäş(ăăŽmapéŻăŤăăăăignoreăăăŚăă) R 3802 <src-nick>.24B <flag>.B - SmapIĹĚWisMĘ - flag=0 MŽš - flag=1 M¸s(ÇĚmapIÉŕťńČl˘Üšń) - flag=2 M¸s(ignorełę˝) + ĺ
¨mapéŻă§ăŽWisé俥çľć + flag=0 é俥ĺŽäş + flag=1 é俥夹ć(ăŠăŽmapéŻăŤăăăăŞäşşăăžăă) + flag=2 é俥夹ć(ignoreăăă) S 3010 <account_id>.l - qÉf[^v + ĺ庍ăăźăżčŚćą R 3810 <len>.w <account_id>.l <storage>.?B - qÉf[^óM + ĺ庍ăăźăżĺ俥 S 3011 <len>.w <account_id>.l <storage>.?B - qÉf[^MŰśv + ĺ庍ăăźăżé俥ďźäżĺčŚćą R 3811 <account_id>.l <flag>.b - qÉf[^ŰśIš - flag=0 Ź÷iťÝĚdlĹÍK¸0ČĚĹAÔMđŇ˝ČÄࢢj + ĺ庍ăăźăżäżĺçľäş + flag=0 ćĺďźçžĺ¨ăŽäťć§ă§ăŻĺż
ă0ăŞăŽă§ăčżäżĄăĺž
ăăŞăăŚăăăďź S 3020 <account_id>.l <party_name>.24B <nick_name>.24B <map_name>.16B <level>.w - p[eBěŹv + ăăźăăŁä˝ćčŚćą R 3820 <account_id>.l <fail>.B <party_id>.l <party_name>.24B - p[eBŹ÷ÂŰiŠŞĚ}bvIĚÝj - fail=00 p[eB쏏÷ - fail=01 ¸siparty_id,pary_nameÍS~j + ăăźăăŁćĺĺŻĺŚďźčŞĺăŽăăăéŻăŽăżďź + fail=00 ăăźăăŁä˝ććĺ + fail=01 夹ćďźparty_id,pary_nameăŻă´ăďź S 3021 <party_id>.l - p[eBîńv + ăăźăăŁć
ĺ ąčŚćą R 3821 <len>.w <struct party>.?B - (struct partyĚĹSoCgÍparty_id) - len=8 p[eB͜ݾȢióMľ˝çYLđ˘ŽÉĎXˇéj - len>8 p[eBîńióMľ˝çNCAgÉéąĆj - ivľÄŤ˝}bvIÖj + (struct partyăŽćĺďźăă¤ăăŻparty_id) + len=8 ăăźăăŁăŻĺĺ¨ăăŞăďźĺ俥ăăă芲ĺ˝ăăŁăŠăćŞćĺąăŤĺ¤ć´ăăďź + len>8 ăăźăăŁć
ĺ ąďźĺ俥ăăăăŻăŠă¤ă˘ăłăăŤéăăă¨ďź + ďźčŚćąăăŚăăăăăéŻă¸ďź S 3022 <party_id>.l <account_id>.l <nick>.24B <map_name>.16B <level>.w - p[eBÇÁv + ăăźăăŁčż˝ĺ čŚćą R 3822 <party_id>.l <account_id>.l <fail>.B - p[eBÇÁĘmivľÄŤ˝}bvIÖj - fail=00ĹŹ÷Afail=01Ÿs - iŹ÷͹̟ăÉSIÉp[eBîńŞçęéj + ăăźăăŁčż˝ĺ éçĽďźčŚćąăăŚăăăăăéŻă¸ďź + fail=00ă§ćĺăfail=01ă§ĺ¤ąć + ďźćĺćăŻăăŽç´ĺžăŤĺ
¨éŻăŤăăźăăŁć
ĺ ąăéăăăďź S 3023 <party_id>.l <account_id>.l <exp>.w <item>.w - p[eBÝčĎXv + ăăźăăŁč¨ĺŽĺ¤ć´čŚćą R 3823 <party_id>.l <account_id>.l <exp>.w <item>.w <fail>.B - p[eBÝčĎXĘmiŹ÷ĚęS}bvIÖĘmj - fail=0x00 p[eBÝčĎXŽš - fail=0x01 expĚĎX¸s - fail=0x10 itemĚĎX¸s + ăăźăăŁč¨ĺŽĺ¤ć´éçĽďźćĺăŽĺ ´ĺĺ
¨ăăăéŻă¸éçĽďź + fail=0x00 ăăźăăŁč¨ĺŽĺ¤ć´ĺŽäş + fail=0x01 expăŽĺ¤ć´ĺ¤ąć + fail=0x10 itemăŽĺ¤ć´ĺ¤ąć S 3024 <party_id>.l <account_id>.l - p[eBEŢv + ăăźăăŁčąéčŚćą R 3824 <party_id>.l <account_id>.l <nick>.24B - p[eBEŢĘmiS}bvIÖj + ăăźăăŁčąééçĽďźĺ
¨ăăăéŻă¸ďź S 3025 <party_id>.l <account_id>.l <map_name>.16B <online>.B <level>.w - p[eB}bvXV/ICv + ăăźăăŁăăăć´ć°/ăŞăłăŠă¤ăłčŚćą R 3825 <party_id>.l <account_id>.l <map_name>.16B <online>.B <level>.w - p[eB}bvXVĘmiS}bvIÖj + ăăźăăŁăăăć´ć°éçĽďźĺ
¨ăăăéŻă¸ďź S 3026 <party_id>.l - p[eBđUviçęéąĆÍȢĆvíęéj + ăăźăăŁč§ŁćŁčŚćąďźéăăăăă¨ăŻăŞăă¨ćăăăďź R 3026 <party_id>.l <fail>.B - p[eBđU - fail=00 p[eBÍđUłę˝iĄĚĆąëK¸00j - imapIŕĚsvf[^í̽ߞŻÉgíęéj + ăăźăăŁč§ŁćŁ + fail=00 ăăźăăŁăŻč§ŁćŁăăăďźäťăŽă¨ăăĺż
ă00ďź + ďźmapéŻĺ
ăŽä¸čŚăăźăżĺé¤ăŽăăă ăăŤä˝żăăăďź S 3027 <len>.w <party_id>.l <account_id>.l <message>.?B - p[eBŕžv + ăăźăăŁĺ
çşč¨čŚćą R 3827 <len>.w <party_id>.l <account_id>.l <message>.?B - p[eBŕžĘmiS}bvIÖj + ăăźăăŁĺ
çşč¨éçĽďźĺ
¨ăăăéŻă¸ďź S 3028 <party_id>.l <account_id>.l <nick>.24B - Ęp[eBÉŽľÄ˘Č˘Š`FbN<party_id>Í{ĚŽ + ĺĽăăźăăŁăŤćĺąăăŚăăŞăăăă§ăăŻ<party_id>ăŻćŹćĽăŽćĺą S 3030 <len>.w <account_id>.l <guild_name>.24B <struct guild_member>.?B - MhěŹv + ăŽăŤăä˝ćčŚćą R 3830 <account_id>.l <guild_id>.l - MhěŹÂŰ(guild_id=0Ÿs) + ăŽăŤăä˝ćĺŻĺŚ(guild_id=0ă§ĺ¤ąć) S 3031 <guild_id>.l - Mhîńv + ăŽăŤăć
ĺ ąčŚćą R 3831 <len>.w <struct guild>.?B - Mhîń - len=8 Mh͜ݾȢ - len>8 Mhîń + ăŽăŤăć
ĺ ą + len=8 ăŽăŤăăŻĺĺ¨ăăŞă + len>8 ăŽăŤăć
ĺ ą S 3032 <len>.w <guild_id>.l <struct guild_member>.?B - MhoÇÁv + ăŽăŤăăĄăłăčż˝ĺ čŚćą R 3832 <guild_id>.l <account_id>.l <charactor_id>.l <fail>.B - MhÇÁoĘm - fail=0ĹŹ÷,1Ÿs + ăŽăŤăčż˝ĺ ăĄăłăéçĽ + fail=0ă§ćĺ,1ă§ĺ¤ąć S 3034 <guild_id>.l <account_id>.l <charactor_id>.l <flag>.B <mes>.40B - MhEŢ/Çúv - flag=0 EŢ / 1 Çú + ăŽăŤăčąé/čż˝ćžčŚćą + flag=0 čąé / 1 čż˝ćž R 3834 <guild_id>.l <account_id>.l <charactor_id>.l <flag>.B <mes>.40B <nick>.24B - MhEŢ/ÇúĘm + ăŽăŤăčąé/čż˝ćžéçĽ S 3035 <guild_id>.l <account_id>.l <charactor_id>.l <online>.B <lv>.w <class>.w - MhoîńXVv + ăŽăŤăăĄăłăć
ĺ ąć´ć°čŚćą R 3835 <guild_id>.l <account_id>.l <charactor_id>.l <online>.B <lv>.w <class>.w - MhoîńXVĘm + ăŽăŤăăĄăłăć
ĺ ąć´ć°éçĽ S 3036 <guild_id>.l - MhđUv + ăŽăŤă解ćŁčŚćą R 3836 <guild_id>.l <fail>.B - MhđUĘm - flag=00 đUŹ÷ / 01 ¸s + ăŽăŤă解ćŁéçĽ + flag=00 解ćŁćĺ / 01 夹ć S 3037 <len>.w <guild_id>.l <account_id>.l <message>.?B - Mhžv + ăŽăŤăçşč¨čŚćą R 3837 <len>.w <guild_id>.l <account_id>.l <message>.?B - MhžĘm + ăŽăŤăçşč¨éçĽ S 3038 <guild_id>.l <account_id>.l <charactor_id>.l - ĘMhÉŽľÄ˘Č˘Š`FbN + ĺĽăŽăŤăăŤćĺąăăŚăăŞăăăă§ă㯠S 3039 <len>.w <guild_id>.l <type>.w <data>.?B - eíî{îńXVv + ĺ税ĺşćŹć
ĺ ąć´ć°čŚćą R 3839 <len>.w <guild_id>.l <type>.w <data>.?B - eíî{îńXVĘm + ĺ税ĺşćŹć
ĺ ąć´ć°éçĽ S 303A <len>.w <guild_id>.l <account_id>.l <char_id>.l <type>.w <data>.?B - eíMhoîńXVv + ĺ税ăŽăŤăăĄăłăć
ĺ ąć´ć°čŚćą R 383A <len>.w <guild_id>.l <account_id>.l <char_id>.l <type>.w <data>.?B - eíMhoîńXVĘm + ĺ税ăŽăŤăăĄăłăć
ĺ ąć´ć°éçĽ S 303B <len>.w <guild_id>.l <position>.l <struct guild_position>.?B - MhđEĎXv + ăŽăŤă彚čˇĺ¤ć´čŚćą R 383B <len>.w <guild_id>.l <position>.l <struct guild_position>.?B - MhđEĎXĘm + ăŽăŤă彚čˇĺ¤ć´éçĽ S 303C <guild_id>.l <skill_num>.l <account_id>.l - MhXLčUč + ăŽăŤăăšăăŤĺ˛ăćŻă R 383C <guild_id>.l <skill_num>.l <account_id>.l - MhXLčUč(skill_num==0Ÿs) + ăŽăŤăăšăăŤĺ˛ăćŻă(skill_num==0ă§ĺ¤ąć) S 303D <guild_id1>.l <guild_id2>.l <account_id1>.l <account_id2>.l <flag>.B - MhŻż/GÎv - flag=0 Żż / 1 GÎ / 8 Żżđ / 9 GÎđ + ăŽăŤăĺç/ćľĺŻžčŚćą + flag=0 ĺç / 1 ćľĺŻž / 8 ĺçč§Łé¤ / 9 ćľĺŻžč§Łé¤ R 383D <guild_id1>.l <guild_id2>.l <account_id1>.l <account_id2>.l <flag>.B <name1>.24B <name2>.24B - MhŻż/GÎĘm - flag=0 Żż / 1 GÎ - flag=0x10 Żż¸s / 0x11 Gθs + ăŽăŤăĺç/ćľĺŻžéçĽ + flag=0 ĺç / 1 ćľĺŻž + flag=0x10 ĺç夹ć / 0x11 ćľĺŻžĺ¤ąć S 303E <guild_id>.l <message1>.60B <message2>.120B - MhmÝčv + ăŽăŤăĺçĽč¨ĺŽčŚćą R 383E <guild_id>.l <message1>.60B <message2>.120B - MhmÝčĘm + ăŽăŤăĺçĽč¨ĺŽéçĽ S 303F <len>.w <guild_id>.l <dummy>.l <emblem_data>.?B - MhGuĎXv dummyÍ0Ĺč + ăŽăŤăă¨ăłăăŹă ĺ¤ć´čŚćą dummyăŻ0ĺşĺŽ R 383F <len>.w <guild_id>.l <dummy>.l <emblem_data>.?B - MhGuĎXĘm -iČşAMhnÇÁ\čj + ăŽăŤăă¨ăłăăŹă ĺ¤ć´éçĽ +ďźäťĽä¸ăăŽăŤăçłťčż˝ĺ äşĺŽďź S 3080 <account_id>.l <char_id>.I <pet_type>.w <pet_lv>.w <pet_egg_id>.w <pet_equip>.w <pet_intimate>.w <pet_hungry>.w <rename_flag>.B <incuvate>.B <pet_name>.24B - ybgśŹv + ăăăçćčŚćą R 3880 <account_id>.l <fail>.B <pet_id>.l - ybgśŹŹ÷ÂŰ - fail=00 ybgśŹŹ÷ - fail=01 ¸sipet_idÍS~j + ăăăçććĺĺŻĺŚ + fail=00 ăăăçććĺ + fail=01 夹ćďźpet_idăŻă´ăďź S 3081 <account_id>.l <char_id>.I <pet_id>.l - ybgf[^v + ăăăăăźăżčŚćą R 3881 <len>.w <account_id>.l <fail>.B <struct s_pet>.?B - ybgf[^óM - fail=00 ybgf[^] - fail=01 ybgĚf[^ŞČ˘ŠŕľÍaccount_idŠchar_idŞíȢĚĹ - ¸sis_petÍS~j + ăăăăăźăżĺ俥 + fail=00 ăăăăăźăżčť˘é + fail=01 ăăăăŽăăźăżăăŞăăăăăăŻaccount_idăchar_idăĺăăŞăăŽă§ + 夹ćďźs_petăŻă´ăďź S 3082 <len>.w <account_id>.l <struct s_pet>.?B - ybgf[^MŰśv + ăăăăăźăżé俥ďźäżĺčŚćą R 3882 <account_id>.l <flag>.b - ybgf[^ŰśIš - flag=0 Ź÷iťÝĚdlĹÍsŤČOÉÍK¸0ČĚĹAÔMđ - Ň˝ČÄࢢj - flag=1 ¸s + ăăăăăźăżäżĺçľäş + flag=0 ćĺďźçžĺ¨ăŽäťć§ă§ăŻăĄă˘ăŞä¸čśłäťĽĺ¤ăŤăŻĺż
ă0ăŞăŽă§ăčżäżĄă + ĺž
ăăŞăăŚăăăďź + flag=1 夹ć S 3083 <pet_id>.l - ybgf[^ív + ăăăăăźăżĺé¤čŚćą R 3883 <flag>.b - ybgf[^íIš - flag=0 Ź÷iťÝĚdlĹÍůÉf[^Ş˘Č˘ęČOÍK¸0ČĚĹA - ÔMđŇ˝ČÄࢢj - flag=1 ¸sipet_idÉ˝éf[^ŞČ˘ę̨šŞůÉf[^Ş - ˘Č˘Ćž¤ąĆÍíˇéKvŞČ˘ąĆÉŕČčܡĚĹ - ÓĄÍ čÜšńj + ăăăăăźăżĺé¤çľäş + flag=0 ćĺďźçžĺ¨ăŽäťć§ă§ăŻć˘ăŤăăźăżăăăŞăĺ ´ĺ䝼ĺ¤ăŻĺż
ă0ăŞăŽă§ă + čżäżĄăĺž
ăăŞăăŚăăăďź + flag=1 夹ćďźpet_idăŤĺ˝ăăăăźăżăăŞăĺ ´ĺăŽçŠă§ăăć˘ăŤăăźăżă + ăăŞăă¨č¨ăăă¨ăŻĺé¤ăăĺż
čŚăăŞăăă¨ăŤăăŞăăžăăŽă§ + ćĺłăŻăăăžăăďź diff --git a/doc/packet_table_en.txt b/doc/packet_table_en.txt index 52dcd0e..3b72ba3 100644 --- a/doc/packet_table_en.txt +++ b/doc/packet_table_en.txt @@ -2,16 +2,16 @@ here is a translation for "packet_table.txt". i leave original japanese sentenses and write translation below that. -ÚľÍmčÜšńŞAGMÍAJEgID704554tßđwčˇéĆ -NCAgŞGMžĆFŻľÄ\ŚˇéÝ˝˘ĹˇB -Şź[ČĚÍCɾȢĹEEE +芳ăăăŻçĽăăžăăăăGMăŻă˘ăŤăŚăłăIDďź704554äťčżăćĺŽăă㨠+ăŻăŠă¤ă˘ăłăăGMă ă¨čŞčăăŚčĄ¨ç¤şăăăżăăă§ăă +ć°ĺăĺ獯ăŞăŽăŻć°ăŤăăŞăă§ăťăťăť i don't know for sure, but if you set account id around 704554, the ro client recognizes you as GM ( i don't know about other client like iro or something. this is talking about jro.) -pPbgˇXgB-1ÍpPbgíĘĚźăɡłŞ épPbg +ăăąăăéˇăŞăšăă-1ăŻăăąăă税ĺĽăŽç´ĺžăŤéˇăăăăăăąăă list of packet length. "-1" means a packet that have its packet length just after the packet number. @@ -50,1276 +50,1276 @@ just after the packet number. 6, 3,106, 10, 10, 34, 0, 6, 8, 4, 4, 4, 29, -1, 10, 6, 90, 86, 24, 6, 30,102, 8, 4, 8, 4, 14, 10 -S NCAgŠçŠÄM +S ăŻăŠă¤ă˘ăłăăăčŚăŚé俥 S means a packet that will be sent from client. -R NCAgŠçŠÄóM +R ăŻăŠă¤ă˘ăłăăăčŚăŚĺ俥 R means a packet that will be received by client. -B oCg +B ăă¤ă B means a byte. -w [h=2B +w ăŻăźă=2B w means word( 2 bytes) -l O[h=4B +l ăăłă°ăŻăźă=4B l means long word(4bytes) -* 0ÂČă芌ľ +* 0ĺ䝼ä¸ăăăăă * means repeat S 0064 <version>.l <account name>.24B <password>.24B <version2>.B - AJEgID&pX[hM + ă˘ăŤăŚăłăID&ăăšăŻăźăé俥 send account id & password S 0065 <account ID>.l <login ID1>.l <login ID2>.l ?.2B <sex>.B - LZIÚąv + ăăŁăŠăťăŹéŻćĽçśčŚćą request connection to character select server S 0066 <charactor number>.B - LN^Iđv + ăăŁăŠăŻăżé¸ćčŚćą request to select character S 0067 <charactor name>.24B <param etc>.11B - LN^ěŹv + ăăŁăŠăŻăżä˝ćčŚćą request to create new character S 0068 <charactor ID>.l <mail address>.40B - LN^ív + ăăŁăŠăŻăżĺé¤čŚćą request to delete character R 0069 <len>.w <login ID1>.l <account ID>.l <login ID2>.l ?.32B <sex>.B {<IP>.l <port>.w <server name>.20B <login users>.l ?.2B}.32B* - loginŹ÷&Iîń + loginćĺ&éŻć
ĺ ą information about a success of login to login server R 006a <error No>.B - login¸s + login夹ć fail to login to login server R 006b <len>.w <charactor select data>.106B* - LZIÚąŹ÷&LN^f[^ + ăăŁăŠăťăŹéŻćĽçśćĺ&ăăŁăŠăŻăżăăźăż information about a success of connection to character select server & character server <charactor select data> = <charactor ID>.l <base exp>.l <zeny>.l <job exp>.l <job level>.l ?.8B <option>.l <karma>.l <manner>.l ?.2B <HP>.w <MaxHP>.w <SP>.w <MaxSP>.w <speed>.w <class>.w <hair>.w <weapon>.2w <base level>.w <skill point>.w <head_bottom>.w <sheild>.w <head option top>.w <head option mid>.w <hair color>.w ?.w <name>.24B <STR>.B <AGI>.B <VIT>.B <INT>.B <DEX>.B <LUK>.B <charactor number>.B ?.B R 006c <error No>.B - LN^Iđ¸s + ăăŁăŠăŻăżé¸ć夹ć fail to select character R 006d <charactor select data>.106B - LN^쏏÷ + ăăŁăŠăŻăżä˝ććĺ success to create new character R 006e <error No>.B - LN^쏸s + ăăŁăŠăŻăżä˝ć夹ć fail to create new character R 006f - LN^íŹ÷ + ăăŁăŠăŻăżĺé¤ćĺ success to delete character R 0070 <error No>.B - LN^í¸s + ăăŁăŠăŻăżĺé¤ĺ¤ąć fail to delete character R 0071 <charactor ID>.l <map name>.16B <ip>.l <port>.w - LN^IđŹ÷&}bvź&Q[IIP/port + ăăŁăŠăŻăżé¸ććĺ&ăăăĺ&ă˛ăźă éŻIP/port success to select character & map name and ip/port number for game server S 0072 <account ID>.l <charactor ID>.l <login ID1>.l <login ID2>.l <sex>.b - Q[IÚąv + ă˛ăźă éŻćĽçśčŚćą request connection to game server R 0073 <server tick>.l <coordidate>.3B ?.2B - Q[IÚąŹ÷&T[o¤1msv&oťĘu + ă˛ăźă éŻćĽçśćĺ&ăľăźăĺ´1msćč¨&ĺşçžä˝ç˝Ž success to connect to game server & server time & spawn point R 0078 <ID>.l <speed>.w ?.w ?.w <option>.w <class>.w <hair>.w <weapon>.w <head option bottom>.w <sheild>.w <head option top>.w <head option mid>.w <hair color>.w ?.w <head dir>.w <guild>.w ?.w ?.w <manner>.w <karma>.w ?.B <sex>.B <X_Y_dir>.3B ?.B ?.B <sit>.B - }bv[h&ÚŽpAüŤtŤpLîń? + ăăăăăźăć&秝ĺćç¨ăĺăäťăç¨ăăŁăŠć
ĺ ą? a packet for map load or moving, infermation about a direction for character? R 0079 <ID>.l <speed>.w ?.w ?.w <option>.w <class>.w <hair>.w <weapon>.w <head option bottom>.w <sheild>.w <head option top>.w <head option mid>.w <hair color>.w ?.w <head dir>.w <guild>.w ?.w ?.w <manner>.w <karma>.w ?.B <sex>.B <X_Y_dir>.3B ?.B ?.B - e|Ě\ŚÍÍফLpAüŤtŤłľLîń? + ăăŹăçăŽčĄ¨ç¤şçŻĺ˛ĺ
沸ăăăŁăŠç¨ăĺăäťăçĄăăăŁăŠć
ĺ ą? information about characters in a range of a skill like teleport, no infor about direction for character? R 007b <ID>.l <speed>.w ?.w ?.w <option>.w <class>.w <hair>.w <weapon>.w <head option bottom>.w <server tick>.l <sheild>.w <head option top>.w <head option mid>.w <hair color>.w ?.w <head dir>.w <guild>.w ?.w ?.w <manner>.w <karma>.w ?.B <sex>.B <X_Y_X_Y>.5B ?.B ?.B ?.B - \ŚÍÍŕLÚŽîń + 襨示çŻĺ˛ĺ
ăăŁăŠç§ťĺć
ĺ ą character information about walking in a range of the character can see R 007c <ID>.l <speed>.w ?.6w <class>.w ?.7w <X_Y>.3B ?.2B - NPCp\ŚÍÍŕLîń + NPCç¨čĄ¨ç¤şçŻĺ˛ĺ
ăăŁăŠć
ĺ ą character information for npc in a range the character can see S 007d - map[hIč + mapăăźăçľă end of load S 007e <client tick>.l - NCAg¤1ms^C}M + ăŻăŠă¤ă˘ăłăĺ´1msăżă¤ăé俥 send 1ms timer at client R 007f <server tick>.l - T[o¤1ms^C}M + ăľăźăĺ´1msăżă¤ăé俥 send 1ms timer at server R 0080 <ID>.l <type>.B - type=00 LÁĹ (ćĘOÚŽBĚÁĹ?) + type=00 ăăŁăŠćśćť
(çťé˘ĺ¤ç§ťĺăćťä˝ćśćť
ç?) character disappear( walk out of screen. died and disappear?) - type=01 LS + type=01 ăăŁăŠćťäşĄ character died - type=02 LÁĹ (e|,,ą,logout?) + type=02 ăăŁăŠćśćť
(ăăŹă,čż,čś,logoutç?) character disappear( teleport, fly's wing, butterfly's wing, logout?) R 0081 <type>.B type=03 speed hack speed hack - type=08 2dOC + type=08 2éăă°ă¤ăł duplicated login S 0085 <X_Y>.3B - ÚŽv + 秝ĺčŚćą request to walk R 0087 <server tick>.l <X_Y_X_Y>.5B ?.B - ÚŽ + 秝ĺĺżç response to the request to walk R 0088 <ID>.l <X>.w <Y>.w - ÚŽrâ~ + 秝ĺéä¸ĺć˘ stop walking S 0089 <target ID>.l <type>.B - type=00 targetđ1ńŁé + type=00 targetă1ĺ掴ă hit target once - type=02 Ŕé + type=02 座ă sit down - type=03 §żăé + type=03 çŤăĄä¸ă stand up - type=07 targetđŁčąŻé + type=07 targetă掴ăçśăă continue to hit target R 008a <src ID>.l <dst ID>.l <server tick>.l <src speed>.l <dst speed>.l <param1>.w <param2>.w <type>.B <param3>.w type=00 param1=0 miss param1=0 miss - type=00 param1:_[W(Ěv?) param2:Ş param3:ATV2Źtč_[W + type=00 param1:ăăĄăźă¸(ăŽĺč¨?) param2:ĺĺ˛ć° param3:ă˘ăľăˇăł2ĺćľéćăăĄăźă¸ param1:damage(of total?) param2:number of division param3:damage of assasin's left hand - NPCŠçĚUĚęAparam2,param3ÍS~f[^ + NPCăăăŽćťćăŽĺ ´ĺăparam2,param3ăŻă´ăăăźăż if the attack was by npc, param2 and param3 are not used - speedÍPCĚęŕASPDĆęv + speedăŻPCăŽĺ ´ĺĺ
é¨ASPDă¨ä¸č´ speed match the aspd if it's player character - type=01 itemđE¤ ID*2ČOS~ + type=01 itemăćžă ID*2䝼ĺ¤ă´ă pick up item, unused data except ID*2 - type=02 Ŕé src IDČOS~ + type=02 座ă src ID䝼ĺ¤ă´ă sit down, unused data except src ID - type=03 §Â src IDČOS~ + type=03 çŤă¤ src ID䝼ĺ¤ă´ă stand up, unused data except src ID - type=08 ĄU + type=08 č¤ć°ćťć multiple attack - type=0a NeBJ + type=0a ăŻăŞăăŁăŤăŤ critical attack - type=0b ŽSńđ + type=0b ĺŽĺ
¨ĺéż perfect evade R 008c <len>.w <str>.?B - ĘížMB`bgÍ`bgŕžpÉČé + é常çşč¨é俥ăăăŁăăä¸ăŻăăŁăăĺ
çşč¨ç¨ăŤăŞă send normal speech. it become a speech for chat during a chat - ćŞĚ"<nick> : "ĚŞÍNCAg¤ĹtŻé + ĺ
é ăŽ"<nick> : "ăŽé¨ĺăŻăŻăŠă¤ă˘ăłăĺ´ă§äťăăäş client adds "<nick> : " part. R 008d <len>.w <ID>.l <str>.?B - IDłńĚžóMB`bgÍ`bgŕžpÉČé + IDăăăŽçşč¨ĺ俥ăăăŁăăä¸ăŻăăŁăăĺ
çşč¨ç¨ăŤăŞă receive a speech by ID. it become speech for chat during a chat R 008e <len>.w <str>.?B - ŠŞĚžóMB`bgÍ`bgŕžpÉČé + čŞĺăŽçşč¨ĺ俥ăăăŁăăä¸ăŻăăŁăăĺ
çşč¨ç¨ăŤăŞă receive my character's speech. it become speech for chat during a chat S 0090 <ID>.l <type?>.B - NPCÉbľŠŻéBtypeÍ01ľŠŠ˝łľ + NPCăŤčŠąăăăăătypeăŻ01ăăčŚăäşçĄă talk to npc. i havent seen type setted to 01. R 0091 <map name>.16B <X>.w <Y>.w - Iŕ}bvÔÚŽAe|,p + éŻĺ
ăăăé秝ĺăăăŹă,čżçç¨ map change in the same server, for instance, teleport, fly's wing... R 0092 <map name>.16B <X>.w <Y>.w <IP>.l <port>.w - IÔÚŽ + éŻé秝ĺ map change to the other server R 0093 - 8É1ńžŻĎŞBä + 8ćä¸ăŤ1ĺă ă茳渏ăčŹ this packet observed in august once. i dont know what it is. S 0094 <ID>.l - IDĚLźvB0095Š0195ĚÔŞ é͸ + IDăŽăăŁăŠĺçčŚćąă0095ă0195ăŽčżçăăăăŻă request a character name for ID. 0095 or 0195 response is expected. R 0095 <ID>.l <nick>.24B - NPC,Mh˘ŽPCĚ0094ÖĚÔ + NPC,ăŽăŤăćŞćĺąPCăŽ0094ă¸ăŽčżç response for 0094 request from npc or player character without guild. - 0193 <charID>.l Ĺâ˘íšÄ + 0193 <charID>.l ă§ĺăĺăă㌠request by <charID>.l - 0194 <charID>.l <name>.24B ĚĹžÄܡB + 0194 <charID>.l <name>.24B ăŽĺżçă§ĺžăŚăžăă get response by <charID>.l <name>.24B S 0096 <len>.w <nick>.24B <message>.?B - wisM + wisé俥 send wisper R 0097 <len>.w <nick>.24B <message>.?B - wisóM + wisĺ俥 receive wisper R 0098 <type>.B - type=00 wisMŹ÷ + type=00 wisé俥ćĺ success to send wisper - type=01 wisčŞloginľÄȢ? + type=01 wisç¸ćăloginăăŚăŞă? target character is not loged in? - type=02 wisčŠçignorełęÄé? + type=02 wisç¸ćăăignoreăăăŚă? ignored by target R 009a <len>.w <message>.?B - GMŠçĚVĚş + GMăăăŽĺ¤ŠăŽĺŁ° GM announce S 009b <head dir>.w <dir>.B - Ě&ŞĚűüĎXvBNCAgÖĚÍł˘Íl + ä˝&é ăŽćšĺĺ¤ć´čŚćąăăŻăŠă¤ă˘ăłăă¸ăŽĺżçăŻçĄăć¨Ąć§ request a change of head and body direction. no response to client. - dirÍ00`07ĹĚĚüŤB00ĹkŠç˝vńčÉ45PĘĹ07ÜĹ + dirăŻ00ă07ă§ä˝ăŽĺăă00ă§ĺăăĺćč¨ĺăăŤ45°ĺä˝ă§07ăžă§ dir can be 00-07 and it's for body direction. 00 means north and go counter-clockwise upto 07 by 45 degrees. - head dirÍ00,01,02ĹŞĚüŤB00ĹĚĆŻśA01ŞEA02Şś + head dirăŻ00,01,02ă§é ăŽĺăă00ă§ä˝ă¨ĺăă01ăĺłă02ă塌 head dir can be 00,01,02. 00 means the same direction of body, 01 means right, 02 menas left. R 009c <ID>.l <head dir>.w <dir>.B - IDĚĚ&ŞĚűüĎX + IDăŽä˝&é ăŽćšĺĺ¤ć´ change body and head direction for ID. R 009d <ID>.l <item ID>.w <identify flag>.B <X>.w <Y>.w <amount>.w <subX>.B <subY>.B - ÚŽĹ°ACeŞćĘŕÉüÁÄŤ˝ + 秝ĺçă§ĺşă˘ă¤ăă ăçťé˘ĺ
ăŤĺ
ĽăŁăŚăăć when the item on the floor will appear on the screen by walking etc. R 009e <ID>.l <item ID>.w <identify flag>.B <X>.w <Y>.w <subX>.B <subY>.B <amount>.w - item dropB˝ĚŠ009dĆ}XÚŕĘu&ÂŞüęĎÁĢé + item dropăä˝ć
ă009dă¨ăăšçŽĺ
ä˝ç˝Ž&ĺć°ăĺ
Ľăĺ¤ăŁăŚăă item drop. coordinate and amount is different from 009d. S 009f <ID>.l - IDĚ°ACeđE¤ + IDăŽĺşă˘ă¤ăă ăćžă pick up item on the floor. R 00a0 <index>.w <amount>.w <item ID>.w <identify flag>.B <attribute?>.B <refine>.B <card>.4w <equip type>.w <type>.B <fail>.B - fail=02 枸s? + fail=02 ĺĺžĺ¤ąć? fail to pick up? - fail=06 [g łľB枸s + fail=06 ăŤăźă樊çĄăăĺĺžĺ¤ąć no right to pick up. fail to pick up. R 00a1 <ID>.l - IDĚ°ACeÁ + IDăŽĺşă˘ă¤ăă ćśĺť disappear the floor item S 00a2 <index>.w <amount>.w - LACeđˇ + ććă˘ă¤ăă ăč˝ă drop inventory item. R 00a3 <len>.w {<index>.w <item ID>.w <type>.B <identify flag>.B <amount>.w ?.2B}.10B* - LÁŐi&űWiXg + ćććśčĺ&ĺéĺăŞăšă list of consumptive item and collecter item that you have R 00a4 <len>.w {<index>.w <item ID>.w <type>.B <identify flag>.B <equip type>.w <equip point>.w <attribute?>.B <refine>.B <card>.4w}.20B* - LőXg + ććčŁ
ĺăŞăšă list of equipments that you have R 00a5 <len>.w {<index>.w <item ID>.w <type>.B <identify flag>.B <amount>.w ?.2B}.10B* - JvłńÉaŻÄ éÁŐi&űWiXg + ăŤăăŠăăăŤé ăăŚăăćśčĺ&ĺéĺăŞăšă list of consumptive item and collecter item that you leave with capra. R 00a6 <len>.w {<index>.w <item ID>.w <type>.B <identify flag>.B <equip type>.w <equip point>.w <attribute?>.B <refine>.B <card>.4w}.20B* - JvłńÉaŻÄ éőXg + ăŤăăŠăăăŤé ăăŚăăčŁ
ĺăŞăšă list of equipments that you leave with capra. S 00a7 <index>.w <ID>.l - ACeindexđgpˇéBIDÍŠŞĚÝ? + ććă˘ă¤ăă indexă使ç¨ăăăIDăŻčŞĺăŽăż? use index item. ID can be only myself? R 00a8 <index>.w <amount>.w <type>.B - ACegpBtype=00Ěęgp¸s? amountŕS~ĚÍl + ă˘ă¤ăă 使ç¨ĺżçătype=00ăŽĺ ´ĺ使ç¨ĺ¤ąć? amountăă´ăăŽć¨Ąć§ response to use item. type=00 means failed. amount is unused. - type=01ĚęŹ÷ĹAamountÍgpăĚcč + type=01ăŽĺ ´ĺćĺă§ăamountăŻä˝żç¨ĺžăŽćŽăĺć° type=01 means success to use item, amount is a number of rest of the item. S 00a9 <index>.w <equip type>.w - ACeő + ă˘ă¤ăă čŁ
ĺ equip item. R 00aa <index>.w <equip point>.w <type>.B - ACeőBtype=00Ěęő¸s? equip pointŕS~ĚÍl + ă˘ă¤ăă čŁ
ĺĺżçătype=00ăŽĺ ´ĺčŁ
ĺ夹ć? equip pointăă´ăăŽć¨Ąć§ response to equip item. type=00 means fail. equip point is unused. S 00ab <index>.w - őđ + čŁ
ĺč§Łé¤ take off equipment. R 00ac <index>.w <equip point>.w <type>.B - őđBtype=00Ěę¸s? equip pointŕS~ĚÍl + čŁ
ĺ解é¤ĺżçătype=00ăŽĺ ´ĺ夹ć? equip pointăă´ăăŽć¨Ąć§ response to take off equipment. type=00 means fail? equip point is unused. R 00af <index>.w <amount>.w - ACe¸BamountžŻ¸çˇ + ă˘ă¤ăă ć°ć¸ĺ°ăamountĺă ăć¸ăă decrease number of item by amount. R 00b0 <type>.w <val>.l - FXČ\ÍlĚXVBČştype:Ρélđń + č˛ă
ăŞč˝ĺĺ¤ăŽć´ć°ă䝼ä¸type:寞ĺżăăć°ĺ¤ăĺć update values of various status. - 0000:speed 0003:Ťsl 0004:}i[|Cg 0005:HP 0006:MaxHP + 0000:speed 0003:ćŞčĄĺ¤ 0004:ăăăźăă¤ăłă 0005:HP 0006:MaxHP 0000:speed 0003:carma 0004:manner point 0005:HP 0006: MaxHP - 0007:SP 0008:MaxSP 0009:Xe[^X|Cg 000b:x[Xx + 0007:SP 0008:MaxSP 0009:ăšăăźăżăšăă¤ăłă 000b:ăăźăšăŹă㍠0007:SP 0008:MaxSP 0009:status point 000b: base level - 000c:XL|Cg 0018:dĘ(\ŚłęÄéĚ10{) + 000c:ăšăăŤăă¤ăłă 0018:éé(襨示ăăăŚăć°ĺăŽ10ĺ) 000c:skil point 0018:weight(this number must be 10 times greater than it's been diplayed.) - 0019:ĹĺdĘ(\ŚłęÄéĚ10{) + 0019:ć大éé(襨示ăăăŚăć°ĺăŽ10ĺ) 0019:max weight(this number must be 10 times greater than it's been diplayed.) - 0029:ATKO 002a:ATKă 002b:MATKO 002c:MATKă + 0029:ATKĺ 002a:ATKĺž 002b:MATKĺ 002c:MATKĺž 0029:attack in front 002a:attack in back 002b:matk in front 002c:matk in back - 002d:DEFO 002e:DEFă 002f:MDEFO 0030:MDEFă + 002d:DEFĺ 002e:DEFĺž 002f:MDEFĺ 0030:MDEFĺž 002d:deffence in front 002e:deffence in back 002f:mdef in front 0030:mdef in back - 0031:HIT 0032:FLEEO 0033:FLEEă 0034:NeBJ + 0031:HIT 0032:FLEEĺ 0033:FLEEĺž 0034:ăŻăŞăăŁăŤăŤ 0031:hit 0032:flee in front 0033:flee in back 0034: critical - 0035:ASPD(2msPĘĚÔ?) 0037:Wux + 0035:ASPD(2msĺä˝ăŽćé?) 0037:ă¸ă§ăăŹă㍠0035:aspd(time by 2ms?) 0037:job level - 0082:ä ATKăĆŻś? + 0082:čŹ ATKĺžă¨ĺăć°ĺ? 0082:unknown. is it the same number as atk in back? R 00b1 <type>.w <val>.l - FXČ\ÍlĚXVBČştype:Ρélđń + č˛ă
ăŞč˝ĺĺ¤ăŽć´ć°ă䝼ä¸type:寞ĺżăăć°ĺ¤ăĺć update valies of various status. below is the list of corresponding type and value. - 0001:x[X¤oąl 0002:Wu¤oąl 0014:zeny + 0001:ăăźăšĺ´çľé¨ĺ¤ 0002:ă¸ă§ăĺ´çľé¨ĺ¤ 0014:zeny 0001:base experience 0002:job experience 0014:zeny - 0016:x[X¤Kvoąl 0017:Wu¤Kvoąl + 0016:ăăźăšĺ´ĺż
čŚçľé¨ĺ¤ 0017:ă¸ă§ăĺ´ĺż
čŚçľé¨ĺ¤ 0016:base experience that needed to level up 0017:job experience that needed to level up - Ŕ1ĹÍ00b0ÍvalŞshortA00b1ÍvalŞlongƢ¤g˘ŞŻŞ Á˝ńžŻÇ - ĄĆČÁÄÍˇŞłČÁÄAÓ°Ý˝˘ČŕĚ? + β1ă§ăŻ00b0ăŻvalăshortă00b1ăŻvalălongă¨ăă使ăĺăăăăŁăăă ă㊠+ äťă¨ăŞăŁăŚăŻĺˇŽăçĄăăŞăŁăŚăç˛č
¸ăżăăăŞăăŽ? in beta1, value of 00b0 was short and value of 00b1 was long, but not there are no difference. S 00b2 <type>.B - type=00 SX^[g + type=00 ćťäşĄćăŞăšăżăźă restart game when character died - type=01 LZv + type=01 ăăŁăŠăťăŹčŚćą request character select R 00b3 <type>.B - type=01 LZ + type=01 ăăŁăŠăťăŹĺżç response to character select R 00b4 <len>.w <ID>.l <str>.?B - IDĚNPCŠçĚbZ[W + IDăŽNPCăăăŽăĄăăťăźă¸ message from npc id R 00b5 <ID>.l - IDĚNPCĆĚbZ[WEBhEÉ"NEXT"ACRđoˇ + IDăŽNPCă¨ăŽăĄăăťăźă¸ăŚăŁăłăăŚăŤ"NEXT"ă˘ă¤ăłăłăĺşă display the "NEXT" icon to npc message window R 00b6 <ID>.l - IDĚNPCĆĚbZ[WEBhEÉ"CLOSE"ACRđoˇ + IDăŽNPCă¨ăŽăĄăăťăźă¸ăŚăŁăłăăŚăŤ"CLOSE"ă˘ă¤ăłăłăĺşă display the "CLOSE" icon to npc message window R 00b7 <len>.w <ID>.l <str>.?B - IDĚNPCĚďbĹIđÚ\ŚBeÚÍ':'ĹćŘçęé + IDăŽNPCăŽäźčŠąă§é¸ćé
çŽčĄ¨ç¤şăĺé
çŽăŻ':'ă§ĺşĺăăă display select options in npc message window. each options devided by ":". S 00b8 <ID>.l <select>.B - IDĚNPCĚďbĚIđBeÚÉÉ1`ŞUçęéBffĹLZ? + IDăŽNPCăŽäźčŠąăŽé¸ćăĺé
çŽăŤé ăŤ1ăăćŻăăăăffă§ăăŁăłăťăŤ? select options in ncp message window. number starts from 1 for each options. cancel for ff? S 00b9 <ID>.l - IDĚNPCĆĚďbBNEXT{^đľ˝ + IDăŽNPCă¨ăŽäźčŠąăNEXTăăżăłăćźăă "NEXT" button clicked in ncp message window. S 00bb <type>.w <amount>.B - Xe[^XupvBtypeÍ000dŠç0012ŞÉSTR,AGI,VIT,INT,DEX,LUKÉÎ + ăšăăźăżăšupčŚćąătypeăŻ000dăă0012ăé ăŤSTR,AGI,VIT,INT,DEX,LUKăŤĺŻžĺż request update status. type can be 000d for STR, 000e for AGI, 000f for VIT, 0010 for INT, 0011 for DEX, 0012 for LUK. R 00bc <type>.w <fail>.B <val>.B - Xe[^XupBfail=01ČçŹ÷BtypeÍ00bbĆŻśBvalÍăÁ˝ăĚ + ăšăăźăżăšupĺżçăfail=01ăŞăćĺătypeăŻ00bbă¨ĺăăvalăŻä¸ăŁăĺžăŽć°ĺ respnse to update status. it's successeeded if fail=01. type is the same value as packet number 00bb. val is a value of increase. - ¸sáÍŠ˝ł˘ĚĹäBXe[^X|CgŞŤčȢóÔĹ - 00bbđsĹŤéNCAgŞLęÎAfail=00ÉČéĚĹÍȢŠĆ\z + 夹ćäžăŻčŚăäşçĄăăŽă§čŹăăšăăźăżăšăă¤ăłăăčśłăăŞăçść
㧠+ 00bbăçşčĄă§ăăăŻăŠă¤ă˘ăłăăćăă°ăfail=00ăŤăŞăăŽă§ăŻăŞăăă¨äşćł it's unknown when it's failed because i havent ever seen. i think it will be fail=00 when it's failed. R 00bd <status point>.w <STR>.B <STRupP>.B <AGI>.B <AGIupP>.B <VIT>.B <VITupP>.B <INT>.B <INTupP>.B <DEX>.B <DEXupP>.B <LUK>.B <LUKupP>.B <ATK>.w <ATKbonus>.w <MATKmax>.w <MATKmin>.w <DEF>.w <DEFbonus>.w <MDEF>.w <MDEFbonus>.w <HIT>.w <FLEE>.w <FLEEbonus>.w <critical>.w ?.w - ÜĆßÄXe[^XîńđépPbg + ăžă¨ăăŚăšăăźăżăšć
ĺ ąăéăăăąăă packet of information for various status. R 00be <type>.w <val>.B - KvXe[^X|CgXVpPbgBtypeÍ0020`0025ŞÉSTR`LUKÉÎ + ĺż
čŚăšăăźăżăšăă¤ăłăć´ć°ăăąăăătypeăŻ0020ă0025ăé ăŤSTRăLUKăŤĺŻžĺż packet to update required status point. type can be 0020-0025 for STR-LUK.( see packet number 00bb for detals.) S 00bf <type>.B - G[VđoˇBtypeÍ00-0c(,0d)ŞALT+1`ALT+9,ALT+0,`L,O[,p[(,Řř)ÉÎ + ă¨ă˘ăźăˇă§ăłăĺşăătypeăŻ00-0c(,0d)ăALT+1ăALT+9,ALT+0,ăă§ă,ă°ăź,ăăź(,éĺ˝ć)ăŤĺŻžĺż display emotion. type can be 00-0c(,0d) for ALT+1-ALT+9,ALT+0,CTRL+-,CTRL++,CTRL+\(,korean flag). R 00c0 <ID>.l <type>.B - IDĚlŞG[Vđoľ˝BtypeÍ00bfĆŻś + IDăŽäşşăă¨ă˘ăźăˇă§ăłăĺşăăătypeăŻ00bfă¨ĺă emotion by ID. type is the same as 00bf. S 00c1 - loginlâ˘íš + loginäşşć°ĺăĺăă request to ask loged in people. R 00c2 <val>.l - loginl + loginäşşć°ĺżç response to asking loged in people. R 00c3 <ID>.l <type>.B <val>.B - Š˝ÚĎXBtypeÍ00Ĺ{Ě(]E)A02ŞíA03ŞŞ(ş)A04ŞŞ(ă)A05ŞŞ()A08Ş + čŚăçŽĺ¤ć´ătypeăŻ00ă§ćŹä˝(蝢čˇćç)ă02ăćŚĺ¨ă03ăé (ä¸)ă04ăé (ä¸)ă05ăé (ä¸)ă08ăçž change looks. type=00 means body(by jobs), 02 is weapon, 03 is head(lower), 04 is head(upper), 05 is head(middle), 08 is shield. R 00c4 <ID>.l - bŠŻ˝NPCޤlžÁ˝ĚĹbuy/sellIđo + 芹ăăăNPCăĺäşşă ăŁăăŽă§buy/sellé¸ćçŞĺş display "BUY" or "SELL" window by npc ID R 00c5 <ID>.l <type>.B - buy/sellIđBtype=00ČçbuyBtype=01Čçsell + buy/sellé¸ćătype=00ăŞăbuyătype=01ăŞăsell select "BUY" or "SELL". type=00 is buy, type=01 is sell. R 00c6 <len>.w {<value>.l <DCvalue>.l <type>.B <item ID>.w}.11B* - NPC̨XbuyIđBDCvalueͤlDCăĚli + NPCăŽăĺşbuyé¸ććăDCvalueăŻĺäşşDCĺžăŽĺ¤ćŽľ list of marchandizes when clicked "BUY". DCvalue is a value of Discount Skill applied. R 00c7 <len>.w {<index>.w <value>.l <OCvalue>.l}.10B* - NPC̨XseyIđBOCvalueͤlOCăĚli + NPCăŽăĺşseyé¸ććăOCvalueăŻĺäşşOCĺžăŽĺ¤ćŽľ list of items when clicked "SELL". OCvalue is a value of Over Charge Skill applied. S 00c8 <len>.w {<amount>.w <item ID>.w}.4B* - NPC̨XŠç¤ + NPCăŽăĺşăă財ă buy item from npc shop. S 00c9 <>.w {<index>.w <amount>.w}.4B* - NPC̨XÉé + NPCăŽăĺşăŤĺŁ˛ă sell item to npc shop. R 00ca <type>.B - NPCŠçwüIšBtype=00Ź÷ + NPCăăčłźĺ
Ľçľäşătype=00ćĺ response for buying item. type=00 meanse successetion. R 00cb <type>.B - NPCÖpIšBtype=00Ź÷ + NPCă¸ĺŁ˛ĺ´çľäşătype=00ćĺ response for selling item. type=00 means success. S 00cf <nick>.24B <type>.B - type=00 nickŠçĚžóŻtŻŰ (/ex nick) + type=00 nickăăăŽçşč¨ĺăäťăćĺŚ (/ex nick) deny speech from nick(/ex nick). - type=01 nickŠçĚžóŻtŻÂ (/in nick) + type=01 nickăăăŽçşč¨ĺăäťăč¨ąĺŻ (/in nick) allow speech from nick(/in nick) S 00d0 <type>len.B - type=00 SÄĚžóŻtŻŰ (/exall) + type=00 ĺ
¨ăŚăŽçşč¨ĺăäťăćĺŚ (/exall) deny all speech(/exall) - type=01 SÄĚžóŻtŻÂ (/inall) + type=01 ĺ
¨ăŚăŽçşč¨ĺăäťăč¨ąĺŻ (/inall) allow all speech(/inall) R 00d1 <type>.B <fail>.B - fail=00 žóŻtŻŰŹ÷ + fail=00 çşč¨ĺăäťăćĺŚćĺ success to deny speech - fail=01 žóŻtŻŰ¸s + fail=01 çşč¨ĺăäťăćĺŚĺ¤ąć fail to deny speech R 00d2 <type>.B <fail>.B - fail=00 SžóŻtŻŰŹ÷ + fail=00 ĺ
¨çşč¨ĺăäťăćĺŚćĺ seccess to allow speech - fail=01 SžóŻtŻŰ¸s + fail=01 ĺ
¨çşč¨ĺăäťăćĺŚĺ¤ąć fail to alloe speech S 00d5 <len>.w <limit>.w <pub>.B <passwd>.8B <title>.?B - `bg§ÄBąąŠç`bgÖWŞąŻÇ˛×ŞĂ˘ĚĹâŽćë + ăăŁăăçŤăŚăăăăăăăŁăăé˘äżăçśăăăŠčŞżăšăçăăŽă§čŁĺŽăă create chat room.(from now on, im not sure for packets about chat.) R 00d6 <fail>.B - `bg§Ä + ăăŁăăçŤăŚĺżç response to create chat room. R 00d7 <len>.w <owner ID>.l <chat ID>.l <limit>.w <users>.w <pub>.B <title>.?B - ćĘŕ`bgîń + çťé˘ĺ
ăăŁăăć
ĺ ą information for chat room in the screen. R 00d8 <chat ID>.l - `bgÁ + ăăŁăăćśĺť delete chat room. S 00d9 <chat ID>.l <passwd>.8B - `bgQÁvż + ăăŁăăĺĺ čŚčŤ request to join the chat. R 00da <fail>.B - `bgQÁ¸s + ăăŁăăĺĺ 夹ć fail to join the chat. R 00db <len>.w <chat ID>.l {<index>.l <nick>.24B}.28B* - `bgQÁŇXg + ăăŁăăĺĺ č
ăŞăšă list of people in the chat room. R 00dc <users>.w <nick>.24B - `bgÖĚQÁŇÇÁ(?) + ăăŁăăă¸ăŽĺĺ č
čż˝ĺ (?) add person to the chat room. R 00dd <index>.w <nick>.24B <fail>.B - `bgŠçQÁҲŻ + ăăŁăăăăĺĺ č
ćă leave the chat room. S 00de <len>.w <limit>.w <pub>.B <passwd>.8B <title>.?B - `bgXe[^XĎX + ăăŁăăăšăăźăżăšĺ¤ć´ change chat room status. R 00df <len>.w <owner ID>.l <chat ID>.l <limit>.w <users>.w <pub>.B <title>.?B - `bgXe[^XĎXŹ÷ + ăăŁăăăšăăźăżăšĺ¤ć´ćĺ success to change chat room status. S 00e0 ?.l <nick>.24B - `bg[LŇĎXv? + ăăŁăăăŤăźă ććč
ĺ¤ć´čŚćą? request to change owner of the chat room? R 00e1 <index>.l <nick>.24B - `bgQÁŇÔtŻźľ? + ăăŁăăĺĺ č
çŞĺˇäťăç´ă? re-number people in the chat room? S 00e2 <nick>.24B - `bgkick + ăăŁăăkick kick nick from chat room. S 00e3 - `bg˛Ż + ăăŁăăćă leave chat room. S 00e4 <ID>.l - ćčřŤv + ĺăĺźăčŚćą request trade. R 00e5 <nick>.24B - ćčřŤvżóŻ + ĺăĺźăčŚčŤĺă recieve a request to trade. S 00e6 <type>.B - type=03 ćčřŤvżok + type=03 ĺăĺźăčŚčŤok trade ok. - type=04 ćčřŤvżLZ + type=04 ĺăĺźăčŚčŤăăŁăłăťăŤ trade canceled. R 00e7 <fail>.B - ćčřŤv + ĺăĺźăčŚćąĺżç response to requesting trade. - fail=00 ŁŞßŹ + fail=00 čˇé˘ăé éă too far. - fail=03 vżóŻÄę˝ + fail=03 čŚčŤĺăăŚăăă allowed the trade. - fail=04 LZłę˝? + fail=04 ăăŁăłăťăŤăăă? trade canceled? S 00e8 <index>.w <amount>.l - ACeÇÁBindex=0ĹzenyÇÁBłKNCAgĹÍzenyÍ00ebĚźOĚÝ + ă˘ă¤ăă čż˝ĺ ăindex=0ă§zenyčż˝ĺ ăćŁčŚăŻăŠă¤ă˘ăłăă§ăŻzenyăŻ00ebăŽç´ĺăŽăż add item. index=0 means adding zeny. for official client, zeny can be added only in packet number 00eb. R 00e9 <amount>.l <type ID>.w <identify flag>.B <attribute?>.B <refine>.B <card>.4w - čűŠçĚACeÇÁ + ç¸ććšăăăŽă˘ă¤ăă čż˝ĺ added item from other character. R 00ea <index>.w <fail>.B - fail=00 ACeÇÁŹ÷ + fail=00 ă˘ă¤ăă čż˝ĺ ćĺ success to add item. - fail=01 ÇÁ¸sBč¤dĘI[o + fail=01 čż˝ĺ 夹ćăç¸ćĺ´ééăŞăźă fail to add item. the player was over weighted. S 00eb - ACeÇÁŽš(okľ) + ă˘ă¤ăă čż˝ĺ ĺŽäş(okćźă) completed adding item.(cliecked OK) R 00ec <fail>.B - fail=00 ŠŞŠçĚokóĚ + fail=00 čŞĺăăăŽokĺé recieved "OK" from myself - fail=01 čŠçĚokóĚ + fail=01 ç¸ćăăăŽokĺé recieved "OK" from the other. S 00ed - ćčřŤLZ + ĺăĺźăăăŁăłăťăŤ trade canceled. R 00ee - ćčřŤŞLZłęÜľ˝ + ĺăĺźăăăăŁăłăťăŤăăăžăă message of "trade canceled" S 00ef - ćčřŤř(tradeľ) + ĺăĺźă訹荞(tradećźă) trade OKed. (cliecked Trade) R 00f0 - ćčřŤŽš + ĺăĺźăĺŽäş trade completed. R 00f2 <num>.w <limit>.w - JvłńeACeÂ&ťó + ăŤăăŠăă訹厚ă˘ă¤ăă ĺć°&çžçś number of item that capra can stock and number of item that capra stocks now. S 00f3 <index>.w <amount>.l - JvłńqÉÉACeúčÝ + ăŤăăŠăăĺ庍ăŤă˘ă¤ăă ćžăčžźăż put item to capra's warehouse. R 00f4 <index>.w <amount>.l <type ID>.w <identify flag>.B <attribute?>.B <refine>.B <card>.4w - JvłńqÉĚACeÇÁ + ăŤăăŠăăĺ庍ăŽă˘ă¤ăă čż˝ĺ add item to capra's warehouse. S 00f5 <index>.w <amount>.l - JvłńqÉŠçACećčoľ + ăŤăăŠăăĺ庍ăăă˘ă¤ăă ĺăĺşă take out item from capra's warehouse. R 00f6 <index>.w <amount>.l - JvłńqÉĚACeí + ăŤăăŠăăĺ庍ăŽă˘ă¤ăă ĺé¤ delete item in the capra's warehouse. S 00f7 - JvłńqÉÂś + ăŤăăŠăăĺ庍éă request to close capra's warehouse. R 00f8 - JvłńqÉÂś + ăŤăăŠăăĺ庍éăĺżç response to close capra's warehouse. S 00f9 <party name>.24B - p[eBěŹ + ăăźăăŁä˝ć create party. R 00fa <fail>.B - fail=00 쏏÷ + fail=00 ä˝ććĺ success to create party. R 00fb <len>.w <party name>.24B {<ID>.l <nick>.24B <map name>.16B <leader>.B <offline>.B}.46B* - p[eBîńÜĆßÄč + ăăźăăŁć
ĺ ąăžă¨ăăŚéă packet for various information about party. S 00fc <ID>.l - p[eBŠUˇé + ăăźăăŁĺ§čŞăă invate player to the party. R 00fd <nick>.24B <fail>.B - fail=00 čÍůÉp[eBÉüÁĢ˝ + fail=00 ç¸ćăŻć˘ăŤăăźăăŁăŤĺ
ĽăŁăŚăă the player is already in other party. - fail=01 čÉŰłę˝ + fail=01 ç¸ćăŤćĺŚăăă invitaion was denied. - fail=02 ŠUŹ÷ + fail=02 ĺ§čŞćĺ success to invite, R 00fe <ID>.l <party name>.24B - p[eBÉUíę˝ + ăăźăăŁăŤčŞăăă invited to party. S 00ff <ID>.l <fail>.l - p[eBÉUíę˝ĚÔBfail=1 okÔ? + ăăźăăŁăŤčŞăăăćăŽčżçăfail=1 okčżç? response when player was invited to party. fail=1 means OK? R 0100 - ? p[eBÖA? + ? ăăźăăŁé˘éŁ? unknown. related to party? S 0101 <exp>.w <item?>.w - p[eBÝčĎX + ăăźăăŁč¨ĺŽĺ¤ć´ change party setting. R 0102 <exp>.w <item?>.w - p[eBÝčťó? exp=2ĚęÍö˝zŞÝč¸s? + ăăźăăŁč¨ĺŽçžçś? exp=2ăŽĺ ´ĺăŻĺ
Źĺšłé
ĺč¨ĺŽĺ¤ąć? party setting status. when exp=2, fail to set "equality for experience"? R 0104 <ID>.l ?.l <X>.w <Y>.w <offline>.B <party name>.24B <nick>.24B <map name>.16B - p[eB1lŞîńXV + ăăźăăŁ1äşşĺć
ĺ ąć´ć° information about a one player in th party. R 0105 <ID>.l <nick>.24B <fail>.B - nickłńŞp[eBŠçŁE + nickăăăăăźăăŁăăé˘čą nick leaves the party. R 0106 <ID>,l <HP>.w <MaxHP>.w - p[eBoHPXV + ăăźăăŁăĄăłăHPć´ć° update HP of party members. R 0107 <ID>.l <X>.w <Y>.w - p[eBoĘuXV + ăăźăăŁăĄăłăä˝ç˝Žć´ć° update coordinates of party members. S 0108 <len>.w <message>.?B - p[eBŕž + ăăźăăŁĺ
çşč¨ send speech for party memebers. R 0109 <len>.w <ID>.l <message>.?B - p[eBŕžóM + ăăźăăŁĺ
çşč¨ĺ俥 receive speech for party memebers. R 010a <type ID>.w - MVPACećž + MVPă˘ă¤ăă ĺĺž get MVP item. R 010b <exp>.l - MVPoąlćž + MVPçľé¨ĺ¤ĺĺž get MVP experience. R 010c <ID>.l - MVPL\Ś + MVPăăŁăŠčĄ¨ç¤ş display MVP character. R 010e <skill ID>.w <lv>.w <sp>.w <range>.w <up>.B - XLîńXVBsp͢gp? + ăšăăŤć
ĺ ąć´ć°ăspăŻćŞä˝żç¨? update skill sinformation. sp is unused? R 010f <len>.w {<skill ID>.w <target type>.w ?.w <lv>.w <sp>.w <range>.w <skill name>.24B <up>.B}.37B* - XLîńĚňBskill nameÍęŹęÄȢ¨Ş éAL_PNEUMA,PR_SLOWPOISON + ăšăăŤć
ĺ ąăŽĺĄăskill nameăŻä¸é¨ćľăăŚćĽăŞăçŠăăăďźAL_PNEUMA,PR_SLOWPOISONç bunch of information about skill. some of skill name is not send (AL_PNEUMA, PR_SLOWPOISON etc). - target typeÍ0-pbVuA1-GA2-ęA4-ŚŽA16-Ąű + target typeăŻ0-ăăăˇăă1-ćľă2-ĺ ´ćă4-ĺłćçşĺă16-ĺłćš target type is 0 for novice skill, 1 for enemy, 2 for place, 4 for immediate invoke, 16 for party member - lv=0 up=0ĚęÍXgÉoľÄȢ? + lv=0 up=0ăŽĺ ´ĺăŻăŞăšăăŤĺşăăŚăŞă? it will not be on list when lv=0 up=0? R 0110 <skill ID>.w <basic type>.w ?.w <fail>.B <type>.B - fail=00ĚÉXLp¸s? + fail=00ăŽćăŤăšăăŤĺŠç¨ĺ¤ąć? fail to use skill when fail=00? - type 00:basic typeĚű 01:SPsŤ 02:HPsŤ 03:memołľ 04:delay + type 00:basic typeăŽćš 01:SPä¸čśł 02:HPä¸čśł 03:memoçĄă 04:delayä¸ type 00:basic type 01:lack of SP, 02:lack of HP, 03:no memo, 04:in delay - 05:¨ŕłľ(ßÜ[) 06:íŞćëľČ˘ 07:ÔWFłľ 08:ÂWFłľ 09:ä + 05:ăéçĄă(ăăžăź) 06:ćŚĺ¨ăăăăăăŞă 07:辤ă¸ă§ă çĄă 08:éă¸ă§ă çĄă 09:čŹ 05:lack of money, 06:weapon does not satisfy, 07:no red jewel, 08:no blue jewel, 09:unkown - basic type 00:ćčřŤ 01:emotion 02:Ŕč 03:`bg 04:p[eB + basic type 00:ĺăĺźă 01:emotion 02:座ă 03:ăăŁăă 04:ăăźă㣠basic type 00:trade 01:emotion 02:sit down, 03:chat, 04:party - 05:shout? 06:PK 07:}i[|Cg + 05:shout? 06:PK 07:ăăăźăă¤ăłă 05:shout? 06:PK, 07:manner point R 0111 <skill ID>.w <target type>.w ?.w <lv>.w <sp>.w <range>.w <skill name>.24B <up>.B - 010fĚ1ÂŞBŔ2žĆ˘gp? + 010făŽ1ă¤ĺăβ2ă ă¨ćŞä˝żç¨? just one skill information. not used in beta2? S 0112 <skill ID>.w - XLlvupv + ăšăăŤlvupčŚćą request to skill level up. S 0113 <level>.w <skill ID>.w <ID>.l - IDđ^[QbgÉskillđg¤ + IDăăżăźă˛ăăăŤskillă使ă use skill to the target. R 0114 <skill ID>.w <src ID>.l <dst ID>.l <server tick>.l <src speed>.l <dst speed>.l <param1>.w <param2>.w <param3>.w <type>.B - UnXLGtFNg@ + ćťćçłťăšăăŤă¨ăă§ăŻă@ skill effect for attack. - type=04 ÎÇĹĎŞ type=06ĆŮÚŻś? + type=04 çŤĺŁă§čŚłć¸Ź type=06ă¨ăťăźĺă? rtpe=04 observed when firewall was used. is that the almost same as type=06? - type=06 PŕĚ? param1Í_[WvAparam2ÍlevelAparam3Í1ĹčĆ\z + type=06 ĺçşăăŽ? param1ăŻăăĄăźă¸ĺč¨ăparam2ăŻlevelăparam3ăŻ1ĺşĺŽă¨äşćł type=06 skill for just one hit? param1 is total damage, param2 is level, param3 will always stay 1. - type=08 AĹŕĚ? param1Í_[WvAparam2ÍlevelAparam3ÍŞĆ\z + type=08 éŁćăăŽ? param1ăŻăăĄăźă¸ĺč¨ăparam2ăŻlevelăparam3ăŻĺĺ˛ć°ă¨äşćł type=08 skill for multiple hits? param1 is totak damage, param2 is level, param3 will be a number of hit. R 0115 <skill ID>.w <src ID>.l <dst ID>.l <server tick>.l <src speed>.l <dst speed>.l <X>.w <Y>.w <param1>.w <param2>.w <param3>.w <type>.B - eŤňÎľLčUnXLGtFNg + ĺźžăéŁă°ăćăćťćçłťăšăăŤă¨ăă§ăŻă blow up type skill effect. - type=05 _[W&eŤňÎľBparam1Í_[WvAparam2ÍlevelAparam3ÍŞĆ\z + type=05 ăăĄăźă¸&ĺźžăéŁă°ăăparam1ăŻăăĄăźă¸ĺč¨ăparam2ăŻlevelăparam3ăŻĺĺ˛ć°ă¨äşćł type=05 damage and blow up. param1 is total damage, param2 is level, param3 will be a number of hit. - type=06 Sn? ČĆŕparam1ÍS~ĚÍl + type=06 çĺżĺ°? ĺ°ăŞăă¨ăparam1ăŻă´ăăŽć¨Ąć§ type=06 a point of explorsion? param1 is unused at least. S 0116 <level>.w <skill ID>.w <X>.w <Y>.w - (X,Y)đ^[QbgÉskillđg¤ + (X,Y)ăăżăźă˛ăăăŤskillă使ă use skill at (X,Y). R 0117 <skill ID>.w <src ID>.l <val>.w <X>.w <Y>.w <server tick>.l - ęčĚXLGtFNg\ŚBvalÍxŠAęĹł?(XÇ) + ĺ ´ćç¸ćăŽăšăăŤă¨ăă§ăŻă襨示ăvalăŻăŹăăŤăăä¸é¨ĺşă?(ć°ˇĺŁ) display skill effect at (X,Y). is val level? or how hard it is (like ice wall)? S 0118 - ULZ + ćťćăăŁăłăťăŤ cancel to attack R 0119 <ID>.l <param1>.w <param2>.w <param3>.w ?.B - Š˝ÚĎX + čŚăçŽĺ¤ć´ change looks. - param1=02 tXg_CoĹčĐŻ? + param1=02 ăăăšăăă¤ăă§ĺă柏ă? param1=02 flozen diva? - param2=01 Ĺ? + param2=01 ćŻ? param2=01 poison? - param2=20 ANGELUSóÔ? + param2=20 ANGELUSçść
? param2=20 ANGELUS? - param3=01 TCgŠb`? + param3=01 ăľă¤ăăăŤăŻăă? param3-01 site or ruwatch? (i dont know skill names in english :() - param3=0b nCfBOóÔ? + param3=0b ăă¤ăăŁăłă°çść
? param3=0b hiding? - param3=0b N[LOóÔ? + param3=0b ăŻăăźăăłă°çść
? param3-0b cloking? - param3=0d J[gtŤ + param3=0d ăŤăźăäťă param3=0d with cart - param3=0e étŤ + param3=0e 顚äťă param3-0e with hawk - param3=0f yRyRćč + param3=0f ăăłăăłäšă param3=0f with pekopeko R 011a <skill ID>.w <val>.w <dst ID>.l <src ID>.l <fail>.B - ń_[WnXL\ŚBq[ĚęvalÍńĘ + éăăĄăźă¸çłťăšăăŤčĄ¨ç¤şăăăźăŤăŽĺ ´ĺvalăŻĺ垊é display no-damage skill effect. val is an amount of HP cured when it's heal. - fail=00Ěę¸sۢŞAX`[ČOĹÍŠ˝łľ + fail=00ăŽĺ ´ĺ夹ćă˝ăăăăšăăźăŤäťĽĺ¤ă§ăŻčŚăäşçĄă fail=00 must mean fail, but i havent seend it except steal. S 011b <skill ID>.w <map name>.16B - 011cÖĚBgíȢę"cancel"đé + 011că¸ăŽĺżçă使ăăŞăĺ ´ĺ"cancel"ăéă response to packet number 011c. send "cancel" for no-use. R 011c <skill ID>.w <map1>.16B <map2>.16B <map3>.16B <map4>.16B - e|/|^ĚęIđB + ăăŹă/ăăżăŽĺ ´ćé¸ćă select place for teleport or portal warp. - e|ĚęARandom/Z[uęA|^ĚęAZ[uę/memo1/memo2/memo3ĆČé - }bvźĚÝçęé + ăăŹăăŽĺ ´ĺăRandom/ăťăźăĺ ´ćăăăżăŽĺ ´ĺăăťăźăĺ ´ć/memo1/memo2/memo3ă¨ăŞă + ăăăĺăŽăżéăăă in case of teleport, Ramdom/save point will be sent, in case of portal warp, save point/memo1/memo2/memo3 will be sent. only map name wil be sent. S 011d - ťÝéđv + çžĺ¨ĺą
ăćăăĄă˘čŚćą request to take a memo at this point. R 011e <fail>.B - fail=00 Ź÷ + fail=00 ăĄă˘ćĺ success to take memo. - fail=01 ¸s + fail=01 ăĄă˘ĺ¤ąć fail to take memo. R 011f <dst ID>.l <src ID>.l <X>.w <Y>.w <type>.B <fail>.B - XLř\něŹ + ăšăăŤĺšč˝ĺ°ä˝ć create ground effect for skills like firewall. - type 7e:SW 7f:ÎÇ 80:|^Ž 81:|^ŽO 83:TN 85:tj
[} + type 7e:SW 7f:çŤĺŁ 80:ăăżçşĺä¸ 81:ăăżçşĺĺ 83:ăľăłăŻ 85:ăăăĽăźă type 7e:SW, 7f:firewall, 80:portal warp(invoking), 81:portal warp(before invoking), 83:sank, 85:funewma( i really don know skill names :() - 86:o[~I 8c:g[L[{bNXŽ 8d:XÇ 8e: ŽÜ˘â[ 91: ńéˇË + 86:ăăźăăŞăŞăł 8c:ăăźăăźăăăŻăšçşĺć 8d:ć°ˇĺŁ 8e:ăăăăžăăăź 91:ăăăăăăă 86: bermillion, 8c:talky box(invoked), 8d:frost diva, 8e:kuagumire, 91:uncle snear - 93:çńÇܢń 97:?? 99:g[L[{bNXŽO + 93:ăăăŠăžăă 97:?? 99:ăăźăăźăăăŻăšçşĺĺ 93:land mine, 97:??, 99:talky box(befor invoked) - źîńŢ + äťć
ĺ ąćąă R 0120 <ID>.l - XLř\nÁ + ăšăăŤĺšč˝ĺ°ćśĺť delete ground effect. R 0121 <num>.w <num limit>.w <weight>.l <weight limit>l - J[gĚíŢ&dłĚťÝl&ăŔ + ăŤăźăăŽç¨ŽéĄ&éăăŽçžĺ¨ĺ¤&ä¸é kind of cart, weight and max weight. R 0122 <len>.w {<index>.w <item ID>.w <type>.B <identify flag>.B <equip type>.w <equip point>.w <attribute?>.B <refine>.B <card>.4w}.20B* - J[gŕACeBői + ăŤăźăĺ
ă˘ă¤ăă ăčŁ
ĺĺ equipments in cart. R 0123 <len>.w {<index>.w <item ID>.w <type>.B <identify flag>.B <amount>.w ?.2B}.10B* - J[gŕACeBÁŐi/űWi + ăŤăźăĺ
ă˘ă¤ăă ăćśčĺ/ĺéĺ cunsumptive and collector items in cart. R 0124 <index>.w <amount>.l <item ID>.w <identify flag>.B <attribute?>.B <refine>.B <card>.4w - J[gÉACeÇÁ + ăŤăźăăŤă˘ă¤ăă čż˝ĺ add item to cart. R 0125 <index>.w <amount>.l - J[gŠçACeí + ăŤăźăăăă˘ă¤ăă ĺé¤ delete item in cart. S 0126 <index>.w <amount>.l - J[gÉACeđüęé + ăŤăźăăŤă˘ă¤ăă ăĺ
Ľăă put item to cart. S 0127 <index>.w <amount>.l - J[gŠçACeđćčoˇ + ăŤăźăăăă˘ă¤ăă ăĺăĺşă take out item from cart. S 0128 <index>.w <amount>.l - JvłńŠçJ[gÖACeđÚˇ + ăŤăăŠăăăăăŤăźăă¸ă˘ă¤ăă ă秝ă move item from capra's warehouse to cart. S 0129 <index>.w <amount>.l - J[gŠçJvłńÖACeđÚˇ + ăŤăźăăăăŤăăŠăăă¸ă˘ă¤ăă ă秝ă move item from cart to capra's warehouse. R 012c <fail>.B - fail=00 dʧŔđzŚÄJ[gÉACeđüęçęÜšńĹľ˝? + fail=00 ééĺśéăčśăăŚăŤăźăăŤă˘ă¤ăă ăĺ
Ľăăăăžăăă§ăă? fail=00 over the weight and could not add item to cart. R 012d <num>.w - IXJÝBACeXgvBnumÍuŻéĹĺ + é˛ĺşéč¨ăă˘ă¤ăă ăŞăšăčŚćąănumăŻç˝Žăăćĺ¤§ć° create shop (marchant skill). request item list. num is a number of kind of item that can be sell. S 012e - IX½ + é˛ĺşéé close shop. S 012f <len>.w <message>.80B {<index>.w <amount>.w <value>.l}.8B* - IXJÝAIXź&ACe,liXg + é˛ĺşéč¨ăé˛ĺşĺ&ă˘ă¤ăă ,ĺ¤ćŽľăŞăšă create shop, shop name, item, price list. S 0130 <ID>.l - IXACeXgv + é˛ĺşă˘ă¤ăă ăŞăšăčŚćą request item list for shop( not npc shop). R 0131 <ID>.l <message>.80B - IXĹÂ\Ś + é˛ĺşçćżčĄ¨ç¤ş display shop name tag. R 0132 <ID>.l - IXĹÂÁ + é˛ĺşçćżćśĺť delete shop name tag. R 0133 <len>.w <ID>.l {<value>.l <amount>.w <index>.w <type>.B <item ID>.w <identify flag>.B <attribute?>.B <refine>.B <card>.4w}.22B - IXACeXg + é˛ĺşă˘ă¤ăă ăŞăšă item list for shop(not npc shop). S 0134 <len>.w <ID>.l {<amount>.w <index>.w}.4B* - IXACewü + é˛ĺşă˘ă¤ăă čłźĺ
Ľ buy item from shop (not npc). R 0135 <index>.w <amount>.w <fail>.B - IXACewü¸sBfailÍ´ö + é˛ĺşă˘ă¤ăă čłźĺ
Ľĺ¤ąćăfailăŻĺĺ fail to buy item from non npc shop. fail tells you reasons. R 0136 <len>.w <ID>.l {<value>.l <index>.w <amount>.w <type>.B <item ID>.w <identify flag>.B <attribute?>.B <refine>.B <card>.4w}.22B* - IXJÝŹ÷ + é˛ĺşéč¨ćĺ success to create non-npc-shop. R 0137 <index>.w <amount>.w - IXACeĚń + é˛ĺşă˘ă¤ăă č˛ŠĺŁ˛ĺ ąĺ report of selling item. R 0139 <ID>.l <X>.w <Y>.w <X2>.w <Y2>.w <range>.w - IDĚGÍ(X,Y)ÉÄŠŞÍ(X2,Y2)ÉéĚĹUŞÍŤÜšńĹľ˝ + IDăŽćľăŻ(X,Y)ăŤĺą
ăŚčŞĺăŻ(X2,Y2)ăŤĺą
ăăŽă§ćťćăĺąăăžăăă§ăă the enemy at(X,Y) was too far to attack from my coordinate (X2,Y2). - UÂ\ŁÍrangeČĚĹAßńÁÄşł˘? + ćťćĺŻč˝čˇé˘ăŻrangeăŞăŽă§ăčżĺŻăŁăŚä¸ăă? possible range to attack enemy is "range", so be closer? R 013a <val>.w - UËö + ćťćĺ°ç¨ attack range. R 013b <type>.w - eíbZ[W\ŚB3=îŞőĹŤÜľ˝ + ĺ税ăĄăăťăźă¸čĄ¨ç¤şă3=ç˘ăčŁ
ĺă§ăăžăă various message. 3="arrow has been equiped" R 013c <ID>.w - őłę˝îĚItemIDB0ĹA˘őóÔB + čŁ
ĺăăăç˘ăŽItemIDă0ă§ăćŞčŁ
ĺçść
ă item id of equiped arrow. 0 means no arrow is equiped. R 013d <type>.w <val>.w - HPńXL/SPńXLÉćéń + HPĺ垊ăšăăŤ/SPĺ垊ăšăăŤăŤăăĺ垊 recovery of HP/SP by HP/SP recovery skill. - type=5ČçHP type=7ČçSP + type=5ăŞăHP type=7ăŞăSP type=5 is HP, type=7 is SP. R 013c <index>.w -@@ őľÄ˘éî +ăă čŁ
ĺăăŚăăç˘ id of equiped arrow. R 013e <src ID>.l <dst ID>.l <X>.w <Y>.w <lv?>.w ?.w <wait>.l - XLrĽBPC/NPCŞčĚęÍ(X,Y)Í0BęŞ^[QbgĚęÍdst IDÍ0ÉČé + ăšăăŤčŠ ĺąä¸ăPC/NPCăç¸ćăŽĺ ´ĺăŻ(X,Y)ăŻ0ăĺ ´ćăăżăźă˛ăăăŽĺ ´ĺăŻdst IDăŻ0ăŤăŞă skill has been casting. (X,Y) will be 0 when target is player character or NPC. dst ID will be 0 when target is place. - 0x013e Ě offset+16(dword) ÍXLŽŤĹˇ(˛¸Ď)B + 0x013e ㎠offset+16(dword) ăŻăšăăŤĺąć§ă§ă(調ćťć¸)ă offset+16(dword) in packet number 0x013e is skill attribute. - 00:ł 01:
02:n 03:Î 04: 05:Ĺ 06:š 07:Ă 08:O 09: + 00:çĄ 01:ć°´ 02:ĺ° 03:çŤ 04:風 05:ćŻ 06:č 07:ć 08:ĺżľ 09:ćť 00:none, 01:water, 02:ground, 03:fire, 04:wind, 05:poinson, 06:holly, 07:dark, 08:spirit(i don know how to translate.), 09:death - ŤIÉArĽĚGtFNgŞŽŤĹĎíéĚŠĆB + ĺ°ćĽçăŤăčŠ ĺąä¸ăŽă¨ăă§ăŻăăĺąć§ă§ĺ¤ăăăŽăă¨ă casting effect might differ by skill attribute in the future. - waitÍmsPĘŠČ? + waităŻmsĺä˝ăăŞ? wait in mili second? R 0141 <type>.l <base>.l <bonus>.l - Xe[^XîńBtypeÍ0dŠç12ŞÉSTR,AGI,VIT,INT,DEX,LUKÉÎ + ăšăăźăżăšć
ĺ ąătypeăŻ0dăă12ăé ăŤSTR,AGI,VIT,INT,DEX,LUKăŤĺŻžĺż information for status. type is 0d-12 for STR,AGI,VIT,INT,DEX,LUK. - base+bonusĆ\Śłęé + base+bonusă¨čĄ¨ç¤şăăă base+bonus will be displayed. R 0144 <ID>.l <type>.l <X>.l <Y>.l <point ID>.B <color>.3B ?.B - ÄŕőpA}bvăACR\ŚpPbg + ćĄĺ
ĺĄç¨ăăăăä¸ă˘ă¤ăłăłčĄ¨ç¤şăăąăă for guid npc, packet for display icon on map. - type=1 ACRđ\Ś + type=1 ă˘ă¤ăłăłă襨示 display icon. - type=2 ACRđÁ + type=2 ă˘ă¤ăłăłăćśĺť delete icon. R 0145 <file name>.16B <type>.B - (ĄĚ)Jvłńcutin\Ś + (äťăŽć)ăŤăăŠăăcutin襨示 display capra picture(at this time). - type=02 \Ś + type=02 襨示 display. - type=ff Á + type=ff ćśĺť delete. S 0146 <ID>.l - IDĚNPCĆĚďbBCLOSE{^đľ˝BackłľÉNPCbZ[WEBhđŻÉÂśé + IDăŽNPCă¨ăŽäźčŠąăCLOSEăăżăłăćźăăăackçĄăăŤNPCăĄăăťăźă¸ăŚăŁăłăăĺćăŤéăă talk to npc with ID. Clicked CLOSE button. R 0147 <skill ID>.w <target type>.w ?.w <lv>.w <sp>.w <range>.w <skill name>.24B <up>.B - ACepĚĘęIÉžçę˝XLîń + ă˘ă¤ăă ĺŠç¨ăŽçľćä¸ćçăŤĺžăăăăšăăŤć
ĺ ą effect for skill by using item. S 0148 <ID>.l - UNVĚčß? @ Ŕ1 + ăŞăśăŹăŻăˇă§ăłăŽç¸ććąşă? @ β1 decide target of a skill rezarection? in beta1. S 0149 <ID>.l <type>.B - IDÉ}i[|Cgđ^ŚéBtype=00 vX type=01 }CiX + IDăŤăăăźăă¤ăłăăä¸ăăătype=00 ăăŠăš type=01 ăă¤ăăš give manner point to ID. type=00 is plus, type=01 is minus. R 014a <fail>.l - }i[|Cgđ^Ś˝ĘBfail=0 Ź÷ fail=1 ¸s + ăăăźăă¤ăłăăä¸ăăçľćăfail=0 ćĺ fail=1 夹ć result of giving manner point. fail=0 is success, fail=1 is fail. R 014b <type>.B <nick>.24B - }i[|CgđáÁ˝Btype=00 vX type=01 }CiX + ăăăźăă¤ăłăă貰ăŁăătype=00 ăăŠăš type=01 ăă¤ăăš get manner point. type=00 is plus, type-01 is minus. R 014C <len>.w (<type>.l <guildID>.l <guild name>.24B).* - ŻżĽGÎMh\Ś + ĺçシćľĺŻžăŽăŤă襨示 display alliance and opposition guild. - type=0 Żż + type=0 ĺç alliance. - type=1 GÎ + type=1 ćľĺŻž opposition. S 014D -@@ Mhîń\ŚJnH +ăă ăŽăŤăć
ĺ ąčĄ¨ç¤şéĺ§ďź start of guild information? R 014E <type?>.l -@@ type=0x57 ęĘMhcő +ăă type=0x57 ä¸čŹăŽăŤăĺŁĺĄ normal guild member. -@@ type=0xD7 Mh}X^[ +ăă type=0xD7 ăŽăŤăăăšăżăź guild master. S 014F <page>.l -@@ Mh\Ś^uM +ăă ăŽăŤă襨示ăżăé俥 send packet for guild "DISPLAY" tab. -R 0150 <guildID>.l <guildLv>.l <connum>.l <čő>.l <Avl.lvl>.l ?.l <next_exp>.l ?.16B <guild name>.24B <guild master>.24B ?.16B -@@ Mhîń +R 0150 <guildID>.l <guildLv>.l <connum>.l <ĺŽĺĄ>.l <Avl.lvl>.l ?.l <next_exp>.l ?.16B <guild name>.24B <guild master>.24B ?.16B +ăă ăŽăŤăć
ĺ ą guild info. S 0151 <guild ID>.l - Guv + ă¨ăłăăŹă čŚćą request for guild emblem. R 0152 <len>.w <guild ID>.l <emblem ID?>.l <emblem data>.?B - GuC[Wt + ă¨ăłăăŹă ă¤ăĄăźă¸éäť return emblem image. -R 0154 <len>.w {<accID>.l <charactorID>.l <Ż^>.w <ŻĚF>.w <ŤĘH>.w <job>.w <lvl?>.w <ă[oąl>.l <online>.l <Position>.l ?.50B <nick>.24B}* - MhoXg? +R 0154 <len>.w {<accID>.l <charactorID>.l <鍪ĺ>.w <鍪ăŽč˛>.w <ć§ĺĽďź>.w <job>.w <lvl?>.w <ä¸ç´çľé¨ĺ¤>.l <online>.l <Position>.l ?.50B <nick>.24B}* + ăŽăŤăăĄăłăăŞăšă? guild member list? S 0159 <guildID>.l <accID>.l <charID>.l <mess>.40B -@@ MhEŢM +ăă ăŽăŤăčąéé俥 send packet for leaving guild. R 015A <nic>.24B <mess>.40B -@@ MhEŢ(Ső)óM +ăă ăŽăŤăčąé(ĺ
¨ĺĄ)ĺ俥 receive packet for leaving guild(all members). S 015B <guildID>.l <accID>.l <charID>.l <mess>.40B -@@ MhÇúM +ăă ăŽăŤăčż˝ćžé俥 send packet for kicking member out of the guild. -R 015C <nick>.24B <mess>.40B <AJEghc>.24B -@@ MhÇúiSőjóM +R 015C <nick>.24B <mess>.40B <ă˘ăŤăŚăłă>.24B +ăă ăŽăŤăčż˝ćžďźĺ
¨ĺĄďźĺ俥 receive packet for kicking member out of the guild.(all member) R 0163 <len>.w <nick>.24B <accountID>.24B <kicking reason>.40B S 0165 <myaccID>.l <guild name>.24B -@@ MhěŹ +ăă ăŽăŤăä˝ć create guild R 0166 <len>.w ?.28B* - đEźXg? + 彚čˇĺăŞăšă? list for roll of members? R 0167 <type>.b - MhěŹŰ + ăŽăŤăä˝ćĺĺŚ response to vreating guild. - type = 0 Mh쏏÷ + type = 0 ăŽăŤăä˝ććĺ success. - type = 2 ŻźĚMhŞ é + type = 2 ĺĺăŽăŽăŤăăăă there is a guild with the same name. S 0168 <TargetAccID>.l <sourceAccID>.l <myCharactorID>.l -@@ MhŠU +ăă ăŽăŤăĺ§čŞ invite to the guild. R 0169 <type>.B -@@ MhŠUŰłę˝ +ăă ăŽăŤăĺ§čŞćĺŚăăă invitation denied. R 016A <guild ID>.l <guild name>.24B -@@ MhŠUłę˝ +ăă ăŽăŤăĺ§čŞăăă invited to the guild. S 016B <guild ID>.l <type>.l -@@ MhŠUÔM +ăă ăŽăŤăĺ§čŞčżäżĄ response to invitaion for joining to guild. -@@ type=0 ۡé +ăă type=0 ćĺŚăă deny. -@@ type=1 řˇé +ăă type=1 訹荞ăă OK. R 016c <guild ID>.l ?.13B <guild name>.24B - loginMhîń + loginćăŽăŤăć
ĺ ą guild information when loged in. R 016d <ID>.l <charactor ID>.l <online>.l - MhoŞloginľ˝˛Ż˝ + ăŽăŤăăĄăłăăloginăăćăăç information about guild member loged in or loged out etc. R 016f <message>.180B - Mh¨čÚ? + ăŽăŤăăéĄçŽ? guild message? S 016E <guildID>.l <mess1>.60B <mess2>.120B -@@ MhmÝč +ăă ăŽăŤăĺçĽč¨ĺŽ set guild announcement. R 016F <mess1>.60B <mess2>.120B -@@ Mhm +ăă ăŽăŤăĺçĽ guild announcement. S 0170 <TargetAccID>.l <sourceAccID>.l <myCharactorID>.l -@@ ŻżvżŠU +ăă ĺçčŚčŤĺ§čŞ invite the guild to be alliance. R 0171 <SorceAccID>.l <guild name>.24B -@@ ŻżvżŠUłę˝ +ăă ĺçčŚčŤĺ§čŞăăă invited to be a alliance. S 0172 <SorceAccID>.l <type>.l -@@ ŻżvżÔM +ăă ĺçčŚčŤčżäżĄ response for invitiation to be alliance. -@@ type=0 ۡé +ăă type=0 ćĺŚăă deny. -@@ type=1 řˇé +ăă type=1 訹荞ăă OK. R 0173 <type>.B - type = 0 ˇĹÉŻżÖW + type = 0 ăă§ăŤĺçé˘äż the guild is already alliance. -@@ type = 1 ŻżŰłę˝ +ăă type = 1 ĺçćĺŚăăă denied to be alliance. -@@ type = 2 ŻżŹ÷ +ăă type = 2 ĺçćĺ success to invite to be alliance. R 0177 <len>.w <index>.w* - ÓčÂ\ACeXg + éĺŽĺŻč˝ă˘ă¤ăă ăŞăšă list of items that need to be judge( i mean unkown items.) S 0178 <index>.w - ACeÓč + ă˘ă¤ăă éĺŽ judge item. R 0179 <index>.w <fail>.B - ACeÓčĘBfail=00ĹŹ÷Bfail=01ÁÄ éĚŠ? + ă˘ă¤ăă éĺŽçľćăfail=00ă§ćĺăfail=01ăŁăŚăăăŽă? response to judging item. fail=00 is success. is there fail=01? S 017A <index>.w -@@ J[hvNbN +ăă ăŤăźăăŻăŞă㯠card is double clicked. R 017B <len>.w {<index>.w}* -@@ J[h}üĹŤéACeIndexÔ +ăă ăŤăźăćżĺ
Ľă§ăăă˘ă¤ăă IndexçŞĺˇ item index number for items that can be inserted card. S 017C <SrcIndex>.w <DescIndex>.w -@@ Src đDescÉËÁŢ +ăă Src ăDescăŤçŞăŁčžźă insert Src to Desc. R 017D <DescIndex>.w <SrcIndex>.w <fail>.b -@@ Src đDescÉËÁÝ<fail> 0=Ź÷ 1=¸sH +ăă Src ăDescăŤçŞăŁčžźăż<fail> 0=ćĺ 1=夹ćďź response to insert Src to Desc. fail=0 is success, fail=01 is fail? S 017e <len>.w <message>.?B - MhŕbZ[Wž + ăŽăŤăĺ
ăĄăăťăźă¸çşč¨ send speach for guild members. R 017f <len>.w <message>.?B - MhŕbZ[WóM + ăŽăŤăĺ
ăĄăăťăźă¸ĺ俥 receive guild message. R 0182 <accID>.l <charactorID>.l <hair type>.w <hair color>.w <sex?>.w <job>.w <lvl?>.w <experience?>.l <online>.l <Position>.l ?.50B <nick>.24B R 0187 <account ID>.l - aliveM? + alive俥ĺˇ? alive signal? R 0188 <fail?>.w <index>.w <val>.w - í¸BBĘ+valíÉ + ćŚĺ¨ç˛žéŹăçľć+valćŚĺ¨ăŤ weapon refiling. result+val to weapon R 0189 ?.w - äBe|¸s? + čŹăăăŹă夹ć? unknown. fail to teleport? S 018a ?.w - Q[Iš + ă˛ăźă çľäş game quited. R 018b <fail>.w - Q[Iš/LZBfail=0Ź÷Bfail=1¸s? + ă˛ăźă çľäş/ăăŁăŠăťăŹĺżçăfail=0ćĺăfail=1夹ć? game quited/character select sever response. fail=0 is success, fail=1 is fail? R 018C <MonsID>.w <class>.w <size>.w <HP>.w <?>.w <deffence>.w <kind of monster>.w <magic deffence>.w <attribute>.w <anti-attribute?>.9b - wizĚGĚZXĘ + wizăŽćľăŽăťăłăšçľć response to sense skill by wizard. - 0 Ź^ + 0 ĺ°ĺ small - 1 ^ + 1 ä¸ĺ middle - 2 ĺ^ + 2 大ĺ big R 0191 <ID>.l <message>.80B - g[L[{bNXĚbZ[W + ăăźăăźăăăŻăšăŽăĄăăťăźă¸ message of talky box. S 0193 <ID>.l - MhoźOřŤ? + ăŽăŤăăĄăłăĺĺĺźă? name search for guild member? R 0194 <ID>.l <nick>.24B - MhoźOřŤ? + ăŽăŤăăĄăłăĺĺĺźăĺżç? response to name search for guild member? R 0195 <ID>.l <nick>.24B <party name>.24B <guild name>.24B <class name>.24B - MhŽPCĚęĚ0094Ô + ăŽăŤăćĺąPCăŽĺ ´ĺăŽ0094čżç response to packet number 0094 that if the player joined guild. R 0196 <type>.w <ID>.l - nXLgpĚbZ[WFXBIDÍtargetĆvíę骊ŞčĚÝľŠČ˘? + ĺ˘ĺźˇçłťăšăăŤä˝żç¨ćăŽăĄăăťăźă¸č˛ă
ăIDăŻtargetă¨ćăăăăčŞĺç¸ćăŽăżăăćĽăŞă? various message of skill that effect status. ID must be target, but only m ID and other's ID are sent? - type=00 2HQt^uUŹxŞÁľÜľ˝Bv + type=00 2HQäťä¸ăćťćé庌ăĺ˘ĺ ăăžăăăă 2HQ casted. "attack speed insreased." - type=01 2HQđuUŹx޸ľÜľ˝Bv + type=01 2HQ解é¤ăćťćé庌ăć¸ĺ°ăăžăăăă 2HQ ended. "attack speed decreased." - type=02 IMPOSITIOt^uíĚUÍŞÁľÜľ˝Bv + type=02 IMPOSITIOäťä¸ăćŚĺ¨ăŽćťćĺăĺ˘ĺ ăăžăăăă IMPOSITIO casted. "power of the weapon increased." - type=03 IMPOSITIOđuíĚUÍŞ¸ľÜľ˝Bv + type=03 IMPOSITIO解é¤ăćŚĺ¨ăŽćťćĺăć¸ĺ°ăăžăăăă IMPOSITIO ened. "power of the weapon decreased." - type=04 uXLgpfBC޸ľÜľ˝Bv + type=04 ăăšăăŤä˝żç¨ăăŁăŹă¤ăć¸ĺ°ăăžăăăă "casting delay become short" - type=05 uXLgpfBCŞłÉßčÜľ˝Bv + type=05 ăăšăăŤä˝żç¨ăăŁăŹă¤ăĺ
ăŤćťăăžăăăă "casting delay return to defailt" - type=06 uíÉĹŽŤŞt^łęÜľ˝Bv + type=06 ăćŚĺ¨ăŤćŻĺąć§ăäťä¸ăăăžăăăă "attribute of poison is given to the weapon" - type=07 ASPERSIOt^uíÉšŽŤŞt^łęÜľ˝Bv + type=07 ASPERSIOäťä¸ăćŚĺ¨ăŤčĺąć§ăäťä¸ăăăžăăăă ASPERSIO casted. "attribute of holly is given to the weapon" - type=08 ASPERSIOđuíĚŽŤŞłÉßčÜľ˝Bv + type=08 ASPERSIO解é¤ăćŚĺ¨ăŽĺąć§ăĺ
ăŤćťăăžăăăă ASPERSIO ended. "attribute of weapon return to default" - type=09 uhďÉšŽŤŞt^łęÜľ˝Bv + type=09 ăé˛ĺ
ˇăŤčĺąć§ăäťä¸ăăăžăăăă "armor got holly attribute" - type=0a uhďĚŽŤŞłÉßčÜľ˝Bv + type=0a ăé˛ĺ
ˇăŽĺąć§ăĺ
ăŤćťăăžăăăă "armor's attribute return to default" - type=0b KYRIEt^uoAóÔÉČčÜľ˝Bv + type=0b KYRIEäťä¸ăăăŞă˘çść
ăŤăŞăăžăăăă KYRIE casted. "barrier" - type=0c KYRIEđuoAóÔŞđłęÜľ˝Bv + type=0c KYRIE解é¤ăăăŞă˘çść
ă解é¤ăăăžăăăă KYRIE ended. "barrier end" - type=0d uEF|p[tFNV[hÉČčÜľ˝Bv + type=0d ăăŚă§ăăłăăźăă§ăŻăˇă§ăłă˘ăźăăŤăŞăăžăăăă "became weapon ferfection mode" - type=0e uEF|p[tFNV[hŞđłęÜľ˝Bv + type=0e ăăŚă§ăăłăăźăă§ăŻăˇă§ăłă˘ăźăă解é¤ăăăžăăăă "end weapon perfection mode" - type=0f uI[o[gXg[hÉČčÜľ˝Bv + type=0f ăăŞăźăăźăăŠăšăă˘ăźăăŤăŞăăžăăăă "became over trust mode" - type=10 uI[o[gXg[hŞđłęÜľ˝Bv + type=10 ăăŞăźăăźăăŠăšăă˘ăźăă解é¤ăăăžăăăă "end over trust mode" - type=11 u}LV}CYp[[hÉČčÜľ˝Bv + type=11 ăăăăˇăă¤ăşăăŻăźă˘ăźăăŤăŞăăžăăăă "became maximize power mode" - type=12 u}LV}CYp[[hŞđłęÜľ˝Bv + type=12 ăăăăˇăă¤ăşăăŻăźă˘ăźăă解é¤ăăăžăăăă "end maximize power mode" S 0197 <type>.w type=0 /resetstate type=1 /resetskill - ř\Íłľ? + ĺšč˝ăŻçĄă? no effect? R 019b <ID>.l <type>.l - źlĚlvupâí¸BĚ\Ś? + äťäşşăŽlvupăćŚĺ¨ç˛žéŹçăŽčĄ¨ç¤ş? display other's level up effect or weapon refiling? type=0 base lvup? type=1 job lvup? - type=3 í¸B + type=3 ćŚĺ¨ç˛žéŹ weapon refiling R 0199 <type>.w -@@ type=1 pvp[hJn? +ăă type=1 pvpă˘ăźăéĺ§? start pvp mode? R 019a <ID>.l <rank>.l <num>.l -@@ pvpĘ rank/num +ăă pvpé ä˝ rank/num pvp rank rank/num R 019b <ID>.l <type>.l - źlĚlvupâí¸BĚ\Ś? + äťäşşăŽlvupăćŚĺ¨ç˛žéŹçăŽčĄ¨ç¤ş? type=0 base lvup? type=1 job lvup? - type=2 í¸B¸s - type=3 í¸BŹ÷ + type=2 ćŚĺ¨ç˛žéŹĺ¤ąć + type=3 ćŚĺ¨ç˛žéŹćĺ R 019d <?>.4B - GMR}h/hide + GMăłăăłă/hide S 00CC <ID>.l -@ GMpENbNj
[uinamejgpҧIšvgp +ă GMç¨ĺłăŻăŞăăŻăĄăăĽăźăďźnameďźä˝żç¨č
埡ĺśçľäşăä˝żç¨ use special right click menu for GM "(name) force to quit" S 0149 <ID>.l <type>.B <time>.w -@ GMpENbNj
[u`bgÖ~Ôđş°éiđŻéjvgp ¨ type=00 +ă GMç¨ĺłăŻăŞăăŻăĄăăĽăźăăăŁăăçŚć˘ćéăä¸ăăďźč§Łăăďźăä˝żç¨ â type=00 use special right click menu for GM "decrease prohibited time to create chat room". type=00 -@ GMpENbNj
[u`bgÖ~Ôđă°éi|Żéjvgp ¨ type=01 +ă GMç¨ĺłăŻăŞăăŻăĄăăĽăźăăăŁăăçŚć˘ćéăä¸ăăďźćăăďźăä˝żç¨ â type=01 use special right click menu for GM "increase prohibited time to create chat room". type=01 - @timeÍŞPĘšimŠ + ătimeăŻĺĺä˝ă§ăďźç˘şă unit is minute (maybe R 019e - ßlX^[ß + ćç˛ă˘ăłăšăżăźćąşă S 019f <ID>.l - ßlX^[wč + ćç˛ă˘ăłăšăżăźćĺŽ R 01a0 <fail>.B - ßlťč - fail=01ĹŹ÷A00Ÿs + ćç˛ĺ¤ĺŽ + fail=01ă§ćĺă00ă§ĺ¤ąć S 01a1 <param>.1B <param> - 0x00FybgóÔ\Ś - 0x01Fađ^Śé - 0x02FptH[}X - 0x03FÉߡ - 0x04FANZTđ + 0x00ďźăăăçść
襨示 + 0x01ďźé¤ăä¸ăă + 0x02ďźăăăŠăźăăłăš + 0x03ďźĺľăŤćťă + 0x04ďźă˘ăŻăťăľăŞč§Łé¤ R 01a2 <pet name>.24B <name flag>.B <lv>.w <hungry>.w <friendly>.w <accessory>.w - ybgĚóÔ - name flag:00=źO˘Ýč 01=źOÝčĎÝ(ĎXsÂ) - lv=ybgĚxAhungry= x(0~100)Afriendly=e§x(úl250?)Aaccessory=ANZTĚItemID + ăăăăŽçść
+ name flag:00=ĺĺćŞč¨ĺŽ 01=ĺĺč¨ĺŽć¸ăż(ĺ¤ć´ä¸ĺŻ) + lv=ăăăăŽăŹăăŤăhungry=ćşč
šĺşŚ(0~100)ăfriendly=茪ĺŻĺşŚ(ĺćĺ¤250?)ăaccessory=ă˘ăŻăťăľăŞăŽItemID R 01a3 <fail>.B <itemID>.w <fail> - 0x00Faâč¸s - 0x01FaâčŹ÷ + 0x00ďźé¤ăă夹ć + 0x01ďźé¤ăăćĺ R 01a4 <type>.B <ID>.l <val>.l - ybgÖAĘm - type=00,val=00 ybgzťÉçęÄéBybgFŻpH - type=01 e§xĎť - type=02 xĎť - type=03 ANZTĎť(0Ţő) - type=04 ptH[}X mFłę˝val=1~3 - (4ÍXyVptH[}XH) - type=05 HmFłę˝val=0x14 + ăăăé˘éŁéçĽ + type=00,val=00 ăăăĺľĺćăŤéăăăŚăăăăăăčŞčç¨ďź + type=01 茪ĺŻĺşŚĺ¤ĺ + type=02 ćşč
šĺşŚĺ¤ĺ + type=03 ă˘ăŻăťăľăŞĺ¤ĺ(0ă§ćŞčŁ
ĺ) + type=04 ăăăŠăźăăłăš 確čŞăăăval=1~3 + (4ăŻăšăăˇăŁăŤăăăŠăźăăłăšďź) + type=05 ďźç˘şčŞăăăval=0x14 S 01a5 <pet name>.24B - ybgĚźOß + ăăăăŽĺĺćąşă R 01a6 <len>.w <index>.w* - ybgĚXg + ăăăăŽĺľăŞăšă S 01a7 <index>.w - ybgĚXgŞIđłę˝ + ăăăăŽĺľăŞăšăăé¸ćăăă S 01a9 <emotion>.l - ybgG[VM + ăăăă¨ă˘ăźăˇă§ăłé俥 R 01aa <ID>.l <emotion>.l - ybgG[VóM + ăăăă¨ă˘ăźăˇă§ăłĺ俥 <emotion> - 33ČşĚĆŤFG[V - 34ČăĚĆŤFže[uH + 33䝼ä¸ăŽă¨ăďźă¨ă˘ăźăˇă§ăł + 34䝼ä¸ăŽă¨ăďźçşč¨ăăźăăŤďź R 01ac <object id>.l - ANĚŽ(Ýu)ĚÝńoť(@\Íä) + ă˘ăłăŻăŤăŽçşĺ(â č¨ç˝Ž)ćăŽăżćŻĺĺşçž(ćŠč˝ăŻčŹ) R 01ad <len>.l <item>.w - îěčĚěŹÂ\ITEM\óM + ç˘ä˝ăăŽä˝ćĺŻč˝ITEM襨ĺ俥 S 01ae <itemID>.w - îěčĹg¤ŢżM + ç˘ä˝ăă§ä˝żăććé俥 S 01af <type>.w - `FWJ[giJ[gIđj - type=1 m[}J[g + ăă§ăłă¸ăŤăźăďźăŤăźăé¸ćďź + type=1 ăăźăăŤăŤăźă R 01b0 <monster id>.l <?>.b <new monster code>.l - űĚNX`FW - <new monster code>Í`FWăĚR[h(1001`)đdwordĹ + 沚ăŽăŻăŠăšăă§ăłă¸ + <new monster code>ăŻăă§ăłă¸ĺžăŽăłăźă(1001ă)ădword㧠S 01b2 <len>.w <message>.80B <flag>.B {<index>.w <amount>.w <value>.l}.8B* - IXJÝ - flag F 0=LZ , 1=I[v + é˛ĺşéč¨ + flag ďź 0=ăăŁăłăťăŤ , 1=ăŞăźăăł R 01b3 <filename>.64B <type>.B - R 0145ĚăĘݡ -R 01B6 <guildID>.l <guildLv>.l <connum>.l <čő>.l <Avl.lvl>.l <now_exp>.l <next_exp>.l <ă[|Cg>.l <ŤüF-V>.l <ŤüR-W>.l <members>.l <guild name>.24B <guild master>.24B <agit?>.20B - Mhîń + R 0145ăŽä¸ä˝äşć +R 01B6 <guildID>.l <guildLv>.l <connum>.l <ĺŽĺĄ>.l <Avl.lvl>.l <now_exp>.l <next_exp>.l <ä¸ç´ăă¤ăłă>.l <ć§ĺF-V>.l <ć§ĺR-W>.l <members>.l <guild name>.24B <guild master>.24B <agit?>.20B + ăŽăŤăć
ĺ ą R 01b9 <ID>.I - í_ÉćéIDĚrĽf + 袍ăăĄçăŤăăIDăŽčŠ ĺąä¸ć R 01c4 <index>.w <amount>.l <itemID>.w <item data>.12B - JvqÉACe + ăŤăăŠĺ庍ă˘ă¤ăă R 01c8 <index>.w <item ID>.w <ID>.l <amount left>.w <type>.B - ACegpB(00a8ĚăĘo[VH) - type=00Ěęgp¸s? amountŕS~ĚÍl - type=01ĚęŹ÷ĹAamountÍgpăĚcč + ă˘ă¤ăă 使ç¨ĺżçă(00a8ăŽä¸ä˝ăăźăˇă§ăłďź) + type=00ăŽĺ ´ĺ使ç¨ĺ¤ąć? amountăă´ăăŽć¨Ąć§ + type=01ăŽĺ ´ĺćĺă§ăamountăŻä˝żç¨ĺžăŽćŽăĺć° R 01c9 <dst ID>.l <src ID>.l <X>.w <Y>.w <type>.B <fail>.B ?.81b - XLř\něŹ(011fĚăĘo[VH) - type 0x7e:SWA0x7f:ÎÇA0x80 |^JŤA0x81 |^JŤźO - 0x82 šĚA0x83 TNA0x84 }OkXA0x85 j
[} - 0x86 0x86 ĺ@(SG/MS/LoV/GX)A0x87 t@C[sŇ@ - 0x88 t@C[sA0x87`0x8B \ŚłľA - 0x8c g[L[{bNX(Ž)A0x8D ACXEH[ - 0x8E NO}CAA0x8f uXg}CA0x90 XLbh - 0x91 ANA0x92 xm_XgA0x93 h}C - 0x94 VbNEF[ugbvA0x95 Th} - 0x96 tbV[A0x97 t[WOgbv - 0x98 NCA[gbvA0x99 g[L[{bNX - 0x9A {P[mA0x9B f
[WA0x9C oCIgQC - 0x9D hveN^[A0x9E Zeny}[NA0x9F ZenyÜ - 0xA0 ńéÎĚÖA0xA1 sNĚš (ńALč - 0xA2 ^ńÉ_Ě éőĚĘA0xA3 sNĚXvO - 0xA4 [ŁĚÉA0xA5 ńé¢ÖA0xA6 sŚaš - 0xA7 űJA0xA8 [zĚATVNXA0xA9 uMĚ - 0xAA ChDĚŃçA0xAB ŠŞčČ_XA0xAC n~O - 0xAD đYęȢĹcA0xAE T[rXtH[[ - 0xAF sNĚXvOA0xB0 \Śłľ - 0xB0 OtBeB, - 0xB1 fXg[VA0xB2`0xBF \Śłľ - 0xB2 sNĚ[v|[^ - 0xB3 ŹłČ\ËŞÓćÓć - 0xB4 oWJA0xB5 GtFNgČľH - 0xB6 ˘~ާĚIÉŠŃăŞé - 0xB7 NĚA0xB8` GtFNgČľH + ăšăăŤĺšč˝ĺ°ä˝ć(011făŽä¸ä˝ăăźăˇă§ăłďź) + type 0x7e:SWă0x7f:çŤĺŁă0x80 ăăżéăä¸ă0x81 ăăżéăç´ĺ + 0x82 čä˝ă0x83 ăľăłăŻă0x84 ăă°ăăšă0x85 ăăĽăźă + 0x86 0x86 大éćł(SG/MS/LoV/GX)ă0x87 ăăĄă¤ă¤ăźăăŠĺž
ćŠ + 0x88 ăăĄă¤ă¤ăźăăŠççşă0x87ă0x8B 襨示çĄăă + 0x8c ăăźăăźăăăŻăš(çşĺä¸)ă0x8D ă˘ă¤ăšăŚăŠăźăŤ + 0x8E ăŻăŻă°ăă¤ă˘ă0x8f ăăŠăšăăă¤ăłă0x90 ăšăăă + 0x91 ă˘ăłăŻăŤă0x92 ăăă ăăšăă0x93 ăŠăłăăă¤ăł + 0x94 ăˇă§ăăŻăŚă§ăźăăăŠăăă0x95 ăľăłăăăł + 0x96 ăăŠăăˇăŁăźă0x97 ăăŞăźă¸ăłă°ăăŠăă + 0x98 ăŻăŹă¤ă˘ă˘ăźăăŠăăă0x99 ăăźăăźăăăŻăš + 0x9A ăăŤăąăźăă0x9B ăăŞăĽăźă¸ă0x9C ăă¤ăŞăŹăłăă˛ă¤ăŤ + 0x9D ăŠăłăăăăăŻăżăźă0x9E ZenyăăźăŻă0x9F Zenyč˘ + 0xA0 ĺăçˇăŽčźŞă0xA1 ăăłăŻăŽéłçŹŚ (äşéŁçŹŚćă + 0xA2 çăä¸ăŤçšăŽăăĺ
ăŽçă0xA3 ăăłăŻăŽăšăăŞăłă° + 0xA4 桹桾ăŽä¸ăŤă0xA5 ĺăéă蟪ă0xA6 ä¸ĺĺéł + 0xA7 ĺŁçŹă0xA8 ĺ¤é˝ăŽă˘ăľăˇăłăŻăăšă0xA9 ăăŠăŽăŽčŠŠ + 0xAA ă¤ăăĽăłăŽććŞă0xAB čŞĺĺćăŞăăłăšă0xAC ăăăłă° + 0xAD ç§ăĺżăăŞăă§âŚă0xAE ăľăźăăšăăŠăźăŚăź + 0xAF ăăłăŻăŽăšăăŞăłă°ă0xB0 襨示çĄă + 0xB0 ă°ăŠăăŁăăŁ, + 0xB1 ăă˘ăłăšăăŹăźăˇă§ăłă0xB2ă0xBF 襨示çĄă + 0xB2 ăăłăŻăŽăŻăźăăăźăżăŤé˘¨ + 0xB3 ĺ°ăăŞĺĺćśăăľăăľă + 0xB4 ăă¸ăŞăŤă0xB5 ă¨ăă§ăŻăăŞăďź + 0xB6 éťăĂăçŤä˝çăŤćľŽăăłä¸ăă + 0xB7 ăŻă˘ăŽĺˇŁă0xB8ă ă¨ăă§ăŻăăŞăďź - źîńŢ - ?.81bÍäB + äťć
ĺ ąćąă + ?.81băŻčŹă R 01cd (<sid>.l)x7 - I[gXyIđóM - <sid>x7 ÉÍ NB,CB,FB,LB,SS,FBL,FD ĚĹXLR[hŞdwordĹüé - ÜžIđōȢXLĚŞÍ <sid> = 0x00000000 Şüé + ăŞăźăăšăăŤé¸ćč˘ĺ俥 + <sid>x7 ăŤăŻ NB,CB,FB,LB,SS,FBL,FD ăŽé ă§ăšăăŤăłăźăădwordă§ĺ
Ľă + ăžă é¸ćă§ăăŞăăšăăŤăŽé¨ĺ㯠<sid> = 0x00000000 ăĺ
Ľă S 01ce <sid>.l - I[gXyIđM + ăŞăźăăšăăŤé¸ćč˘é俥 R 01cf <crusader id>.l <target id>.l <?>.18b - ŁgóÔ^[QbgON/OFFBŁgŞŘęéĆ <target id> Ş 0x00000000 ÉČé + çŽčşŤçść
ăżăźă˛ăăON/OFFăçŽčşŤăĺăă㨠<target id> ă 0x00000000 ăŤăŞă R 01d0 <ID>.l <num>.w - <num> : C÷Ě(ńLv) + <num> : ć°ĺăŽć°(éLv) R 01d1 <monk id>.l <target monster id>.l <bool>.l - HćčóÔON/OFFB<bool> ÍnćčŹ§É 0x00000001 đÉ 0x00000000 Şé + ç˝çž˝ĺăçść
ON/OFFă<bool> ăŻç˝ĺĺăćçŤć㍠0x00000001 解é¤ć㍠0x00000000 ăćĽă R 01d2 <id>.l <delay>.l - NĚR{fBC(msec) - OiEAĹÍî{fBC1000(+300)AŇ´Íî{fBC700(+300) + ă˘ăłăŻăŽăłăłăăăŁăŹă¤(msec) + ä¸ćŽľăťéŁćăŻĺşćŹăăŁăŹă¤1000(+300)ăçéžăŻĺşćŹăăŁăŹă¤700(+300) R 01d4 <ID>.l - śńüÍ\Ś(IDÍNPCĚIDŞüé) + ćĺĺĺ
ĽĺçŞčĄ¨ç¤ş(IDăŻNPCăŽIDăĺ
Ľă) S 01d5 <len>.w <ID>.l <input>.?B 00 - śńüÍŕeM(IDÍNPCĚIDŞüé) + ćĺĺĺ
Ľĺĺ
厚é俥(IDăŻNPCăŽIDăĺ
Ľă) R 01d7 <ID>.l <equip point>.b <item id1>.w <item id2>.w - őOtBbN <equip point> Í 02čĆ09ŤĚÝmFBid2Íśč + čŁ
ĺă°ăŠăăŁă㯠<equip point> 㯠02ćă¨09čśłăŽăżç˘şčŞăid2ăŻĺˇŚć R 01d8 <ID>.l <speed>.w <opt1>.w <opt2>.w <option>.w <class>.w <hair>.w <item id1>.w <item id2>.w <head option bottom>.w <head option top>.w <head option mid>.w <hair color>.w ?.w <head dir>.w <guild>.l <emblem>.l <manner>.w <karma>.B <sex>.B <X_Y_dir>.3B ?.B ?.B <sit>.B <Lv>.B ?.B - }bv[h&ÚŽpAüŤtŤpLîń?(0078ĚăĘo[W) + ăăăăăźăć&秝ĺćç¨ăĺăäťăç¨ăăŁăŠć
ĺ ą?(0078ăŽä¸ä˝ăăźă¸ă§ăł) R 01d9 <ID>.l <speed>.w <opt1>.w <opt2>.w <option>.w <class>.w <hair>.w <item id1>.w <item id2>.w.<head option bottom>.w <head option top>.w <head option mid>.w <hair color>.w ?.w <head dir>.w <guild>.l <emblem>.l <manner>.w <karma>.B <sex>.B <X_Y_dir>.3B ?.B ?.B <Lv>.B ?.B - e|Ě\ŚÍÍফLpAüŤtŤłľLîń?(0079ĚăĘo[W) + ăăŹăçăŽčĄ¨ç¤şçŻĺ˛ĺ
沸ăăăŁăŠç¨ăĺăäťăçĄăăăŁăŠć
ĺ ą?(0079ăŽä¸ä˝ăăźă¸ă§ăł) R 01da <ID>.l <speed>.w <opt1>.w <opt2>.w <option>.w <class>.w <hair>.<item id1>.w <item id2>.w <head option bottom>.w <server tick>.l <head option top>.w <head option mid>.w <hair color>.w ?.w <head dir>.w <guild>.l <emblem>.l <manner>.w <karma>.B <sex>.B <X_Y_X_Y>.5B ?.B ?.B ?.B <Lv>.B ?.B - \ŚÍÍŕLÚŽîń(007bĚăĘo[W) + 襨示çŻĺ˛ĺ
ăăŁăŠç§ťĺć
ĺ ą(007băŽä¸ä˝ăăźă¸ă§ăł) S 01db - Ăťkeyv + ćĺˇĺkeyčŚćą R 01dc <len>.w <key>.?B - Ăťkeyt + ćĺˇĺkeyéäť S 01dd <version>.l <account name>.24B <md5 binary>.16B <version2>.1B - id&ĂťĎÝpassM - ÉNCAgŞ01dbđéA - IŞ01dcĹkeyđÔˇA - NCAgŞ"<key><password>"É¢Ämd5vZľ - <md5 binary>ĚđßÄ01ddđéB - <passwordencrypt2>ĚÍ - "<key><password>"ÉÎľÄmd5vZƾĢéđ - "<password><key>"ĆĎXˇé + id&ćĺˇĺć¸ăżpassé俥 + é ăŤăŻăŠă¤ă˘ăłăă01dbăéăă + éŻă01dcă§keyăčżăă + ăŻăŠă¤ă˘ăłăă"<key><password>"ăŤă¤ăăŚmd5č¨çŽă + <md5 binary>ăŽćăĺăăŚ01ddăéăă + <passwordencrypt2>ăŽć㯠+ "<key><password>"ăŤĺŻžăăŚmd5č¨çŽă¨ăăŚăăćă + "<password><key>"ă¨ĺ¤ć´ăă R 01de <skill ID>.w <src ID>.l <dst ID>.l <server tick>.l <src speed>.l <dst speed>.l <param1>.l <param2>.w <param3>.w <type>.B - UnXLGtFNg@(0114ĚăĘo[VH) - type=04 ÎÇĹĎŞ type=06ĆŮÚŻś? - type=05 NB/FBlĚŞUľ˝_[WpH - type=06 PŕĚ? param1Í_[WvAparam2ÍlevelAparam3Í1ĹčĆ\z - type=07 _[W\ŚłľH - type=08 AĹŕĚ? param1Í_[WvAparam2ÍlevelAparam3ÍŞĆ\z - type=09 _[W[VČľÉ_[WžŻ\Śłęé¨(Cf
A)ĆvÁ˝ĚžŞ_[W[VŞoé¨B(@\Íä) + ćťćçłťăšăăŤă¨ăă§ăŻă@(0114ăŽä¸ä˝ăăźăˇă§ăłďź) + type=04 çŤĺŁă§čŚłć¸Ź type=06ă¨ăťăźĺă? + type=05 NB/FBlăŽĺćŁăăăăĄăźă¸ç¨ďź + type=06 ĺçşăăŽ? param1ăŻăăĄăźă¸ĺč¨ăparam2ăŻlevelăparam3ăŻ1ĺşĺŽă¨äşćł + type=07 ăăĄăźă¸čĄ¨ç¤şçĄăďź + type=08 éŁćăăŽ? param1ăŻăăĄăźă¸ĺč¨ăparam2ăŻlevelăparam3ăŻĺĺ˛ć°ă¨äşćł + type=09 ăăĄăźă¸ă˘ăźăˇă§ăłăŞăăŤăăĄăźă¸ă ă襨示ăăăçŠ(ă¤ăłăăĽă˘)ă¨ćăŁăăŽă ăăăĄăźă¸ă˘ăźăˇă§ăłăĺşăçŠă(ćŠč˝ăŻčŹ) S 01df <ID>.| - GMENbNÉćéIDĚ`bgÖ~ńQĆH + GMĺłăŻăŞăăŻăŤăăIDăŽăăŁăăçŚć˘ĺć°ĺç
§ďź R 01e1 <ID>.l <num>.w - <num> : C÷Ě(ńLv) ęx\Śľ˝çăÇńČnumŞÄŕłłęéB + <num> : ć°ĺăŽć°(éLv) ä¸ĺşŚčĄ¨ç¤şăăăĺžăŠăăŞnumăćĽăŚăçĄčŚăăăă R 01e6 <partner name>.24B - ĽXL Ƚɧ˘˝˘gpĚŠŃş + çľĺŠăšăăŤăăŞăăŤé˘ăăă使ç¨ćăŽĺŤăłĺŁ° S 01e7 - XpmrĹ/doridoriľ˝çňńĹéBSPRńĘ2{tOđ§ÄépPbg + ăšăăăă§/doridoriăăăéŁăă§ăăăSPRĺ垊é2ĺăăŠă°ăçŤăŚăăăąăă S 01e8 <party name>.24B <item1>B <item2>B - <item1>ACeűWű@B0ĹÂlĘA1Ĺp[eBöL - <item2>ACeŞzű@B0ĹÂlĘA1Ĺp[eBÉĎŞz - (00f9ĚăĘo[V) + <item1>ă˘ă¤ăă ĺéćšćłă0ă§ĺäşşĺĽă1ă§ăăźăăŁĺ
Źć + <item2>ă˘ă¤ăă ĺé
ćšćłă0ă§ĺäşşĺĽă1ă§ăăźăăŁăŤĺçĺé
+ (00f9ăŽä¸ä˝ăăźăˇă§ăł) R 01ea <ID>.l - ĽGtFNg(šyAá) - IDÍVwĚŕĚŞüéH + çľĺŠă¨ăă§ăŻă(éłćĽ˝ăç´ĺšéŞ) + IDăŻć°ĺŠŚăŽăăŽăĺ
Ľăďź S 01ed - XpmrŞôgŽÉČétOđ§ÄépPbg + ăšăăăăçčŁćł˘ĺăŤăŞăăăŠă°ăçŤăŚăăăąăă R 01ee <len>.w {<index>.w <item ID>.w <type>.B <identify flag>.B <amount>.w ?.2B <card>.4w}.18B* - LÁŐi&űWiXg - îĚęÍ?.2BŞ0x8000ÉČé - 00a3ŠçĎX + ćććśčĺ&ĺéĺăŞăšă + ç˘ăŽĺ ´ĺăŻ?.2Bă0x8000ăŤăŞă + 00a3ăăĺ¤ć´ R 01ef <len>.w {<index>.w <item ID>.w <type>.B <identify flag>.B <amount>.w ?.2B <card>.4w}.18B* - J[gŕACeBÁŐi/űWi - 0123ŠçĎX + ăŤăźăĺ
ă˘ă¤ăă ăćśčĺ/ĺéĺ + 0123ăăĺ¤ć´ R 01f0 <len>.w {<index>.w <item ID>.w <type>.B <identify flag>.B <amount>.w ?.2B <card>.4w}.18B* - JvłńÉaŻÄ éÁŐi&űWiXg - 00a5ŠçĎX + ăŤăăŠăăăŤé ăăŚăăćśčĺ&ĺéĺăŞăšă + 00a5ăăĺ¤ć´ R 01f4 <name>.24B <trade id?>.L <LV>.w - ćűŠçćřvż - 00e5ŠçĎX + ĺ
ćšăăĺĺźčŚčŤ + 00e5ăăĺ¤ć´ R 01f5 <result>.B <trade id?>.L <LV>.w - ążçŠçĚćřvżÉÎˇé˝ - 00e7ŠçĎX + ăăĄăăăăŽĺĺźčŚčŤăŤĺŻžăăĺĺż + 00e7ăăĺ¤ć´ S 0200 <login name>.24B - ragexeÉ/accountIvVđÂŻÄNŽˇéĆOCvÉtÁłęépPbg + ragexeăŤ/accountăŞăăˇă§ăłăă¤ăăŚčľˇĺăăă¨ăă°ă¤ăłčŚćąăŤäťĺ ăăăăăąăă R 0201 ?.1B<Flag?>.1B (?.8B <Character Name>.24B)x20 Flag seems to need to be 1 to function. 8 unknown bytes and 24 bytes for name need to be repeated for each friend. S 0202 <Character name>.24B Character name to add to friend list (for server-side friend list enabled clients) S 0204 <?>.16B - OCvÉtÁłęépPbgB16oCgÍĹčH + ăă°ă¤ăłčŚćąăŤäťĺ ăăăăăąăăă16ăă¤ăăŻĺşĺŽďź S 020B <?>.17B - LN^T[oÚąv0065ÉtÁłęépPbgB1+0204Ě16oCgĹ17oCgH + ăăŁăŠăŻăżăľăźăćĽçśčŚćą0065ăŤäťĺ ăăăăăąăăă1+0204ăŽ16ăă¤ăă§17ăă¤ăďź S 020C <account id>.L, <ip address>.L IP address in network byte order for a player account in response to a charname request [MadCamel] -pPbgˇĚÇÁB019e`01aaŞŚÄéĚĹA0190`đŘ貍 +ăăąăăéˇăŽčż˝ĺ ă019eă01aaăĺ˘ăăŚăăŽă§ă0190ăăĺăćă added packet lenth. 019e-01aa is a new, so here is a packet length table from 0190. -@ 90, 86, 24,@6, 30,102,@8,@4,@ 8,@4, 14, 10, -1,@6,@2,@6, -@@3,@3, 35,@5, 11, 26, -1,@4,@ 4,@6, 10 +ă 90, 86, 24,ă6, 30,102,ă8,ă4,ă 8,ă4, 14, 10, -1,ă6,ă2,ă6, +ăă3,ă3, 35,ă5, 11, 26, -1,ă4,ă 4,ă6, 10 diff --git a/doc/readme.txt b/doc/readme.txt index 0fd0c89..797d338 100644 --- a/doc/readme.txt +++ b/doc/readme.txt @@ -91,7 +91,7 @@ provided above. The item_descriptions.txt file is where all of the descriptions are stored. Please note if you're manually -changing something in it, that you should the ť character +changing something in it, that you should the } character for a new line. (Use ALT + 175 to type it.) It should currently have the majority of the basic descriptions. You won't need to add how much defense or the attack diff --git a/src/char/int_guild.c b/src/char/int_guild.c index 49bb238..5b4fe30 100644 --- a/src/char/int_guild.c +++ b/src/char/int_guild.c @@ -32,17 +32,17 @@ int mapif_guild_basicinfochanged (int guild_id, int type, const void *data, int mapif_guild_info (int fd, struct guild *g); int guild_break_sub (void *key, void *data, va_list ap); -// Mhf[^ĚśńÖĚϡ +// ăŽăŤăăăźăżăŽćĺĺă¸ăŽĺ¤ć int inter_guild_tostr (char *str, struct guild *g) { int i, c, len; - // î{f[^ + // ĺşćŹăăźăż len = sprintf (str, "%d\t%s\t%s\t%d,%d,%d,%d,%d\t%s#\t%s#\t", g->guild_id, g->name, g->master, g->guild_lv, g->max_member, g->exp, g->skill_point, g->castle_id, g->mes1, g->mes2); - // o[ + // ăĄăłăăź for (i = 0; i < g->max_member; i++) { struct guild_member *m = &g->member[i]; @@ -52,7 +52,7 @@ int inter_guild_tostr (char *str, struct guild *g) m->class, m->lv, m->exp, m->exp_payper, m->position, ((m->account_id > 0) ? m->name : "-")); } - // đE + // ĺ˝ščˇ for (i = 0; i < MAX_GUILDPOSITION; i++) { struct guild_position *p = &g->position[i]; @@ -60,7 +60,7 @@ int inter_guild_tostr (char *str, struct guild *g) sprintf (str + len, "%d,%d\t%s#\t", p->mode, p->exp_mode, p->name); } - // Gu + // ă¨ăłăăŹă len += sprintf (str + len, "%d,%d,", g->emblem_len, g->emblem_id); for (i = 0; i < g->emblem_len; i++) { @@ -68,7 +68,7 @@ int inter_guild_tostr (char *str, struct guild *g) sprintf (str + len, "%02x", (unsigned char) (g->emblem_data[i])); } len += sprintf (str + len, "$\t"); - // ŻżXg + // ĺçăŞăšă c = 0; for (i = 0; i < MAX_GUILDALLIANCE; i++) if (g->alliance[i].guild_id > 0) @@ -82,7 +82,7 @@ int inter_guild_tostr (char *str, struct guild *g) sprintf (str + len, "%d,%d\t%s\t", a->guild_id, a->opposition, a->name); } - // ÇúXg + // čż˝ćžăŞăšă c = 0; for (i = 0; i < MAX_GUILDEXPLUSION; i++) if (g->explusion[i].account_id > 0) @@ -96,7 +96,7 @@ int inter_guild_tostr (char *str, struct guild *g) e->account_id, e->rsv1, e->rsv2, e->rsv3, e->name, e->acc, e->mes); } - // MhXL + // ăŽăŤăăšă㍠for (i = 0; i < MAX_GUILDSKILL; i++) { len += sprintf (str + len, "%d,%d ", g->skill[i].id, g->skill[i].lv); @@ -106,7 +106,7 @@ int inter_guild_tostr (char *str, struct guild *g) return 0; } -// Mhf[^ĚśńŠçĚϡ +// ăŽăŤăăăźăżăŽćĺĺăăăŽĺ¤ć int inter_guild_fromstr (char *str, struct guild *g) { int i, j, c; @@ -115,7 +115,7 @@ int inter_guild_fromstr (char *str, struct guild *g) char tmp_str2[4096]; char *pstr; - // î{f[^ + // ĺşćŹăăźăż memset (g, 0, sizeof (struct guild)); if (sscanf (str, "%d\t%[^\t]\t%[^\t]\t%d,%d,%d,%d,%d\t%[^\t]\t%[^\t]\t", @@ -136,11 +136,11 @@ int inter_guild_fromstr (char *str, struct guild *g) g->mes1[strlen (g->mes1) - 1] = 0; g->mes2[strlen (g->mes2) - 1] = 0; - for (j = 0; j < 6 && str != NULL; j++) // ĘuXLbv + for (j = 0; j < 6 && str != NULL; j++) // ä˝ç˝Žăšăăă str = strchr (str + 1, '\t'); // printf("GuildBaseInfo OK\n"); - // o[ + // ăĄăłăăź for (i = 0; i < g->max_member; i++) { struct guild_member *m = &g->member[i]; @@ -161,11 +161,11 @@ int inter_guild_fromstr (char *str, struct guild *g) m->position = tmp_int[9]; memcpy (m->name, tmp_str[0], 24); - for (j = 0; j < 2 && str != NULL; j++) // ĘuXLbv + for (j = 0; j < 2 && str != NULL; j++) // ä˝ç˝Žăšăăă str = strchr (str + 1, '\t'); } // printf("GuildMemberInfo OK\n"); - // đE + // ĺ˝ščˇ i = 0; while (sscanf (str + 1, "%d,%d%n", &tmp_int[0], &tmp_int[1], &j) == 2 && str[1 + j] == '\t') @@ -180,12 +180,12 @@ int inter_guild_fromstr (char *str, struct guild *g) tmp_str[0][strlen (tmp_str[0]) - 1] = 0; memcpy (p->name, tmp_str[0], 24); - for (j = 0; j < 2 && str != NULL; j++) // ĘuXLbv + for (j = 0; j < 2 && str != NULL; j++) // ä˝ç˝Žăšăăă str = strchr (str + 1, '\t'); i++; } // printf("GuildPositionInfo OK\n"); - // Gu + // ă¨ăłăăŹă tmp_int[1] = 0; if (sscanf (str + 1, "%d,%d,%[^\t]\t", &tmp_int[0], &tmp_int[1], tmp_str2) < 3 && sscanf (str + 1, "%d,%[^\t]\t", &tmp_int[0], tmp_str2) < 2) @@ -210,12 +210,12 @@ int inter_guild_fromstr (char *str, struct guild *g) g->emblem_data[i] = (x1 << 4) | x2; } // printf("GuildEmblemInfo OK\n"); - str = strchr (str + 1, '\t'); // ĘuXLbv + str = strchr (str + 1, '\t'); // ä˝ç˝Žăšăăă - // ŻżXg + // ĺçăŞăšă if (sscanf (str + 1, "%d\t", &c) < 1) return 1; - str = strchr (str + 1, '\t'); // ĘuXLbv + str = strchr (str + 1, '\t'); // ä˝ç˝Žăšăăă for (i = 0; i < c; i++) { struct guild_alliance *a = &g->alliance[i]; @@ -227,14 +227,14 @@ int inter_guild_fromstr (char *str, struct guild *g) a->opposition = tmp_int[1]; memcpy (a->name, tmp_str[0], 24); - for (j = 0; j < 2 && str != NULL; j++) // ĘuXLbv + for (j = 0; j < 2 && str != NULL; j++) // ä˝ç˝Žăšăăă str = strchr (str + 1, '\t'); } // printf("GuildAllianceInfo OK\n"); - // ÇúXg + // čż˝ćžăŞăšă if (sscanf (str + 1, "%d\t", &c) < 1) return 1; - str = strchr (str + 1, '\t'); // ĘuXLbv + str = strchr (str + 1, '\t'); // ä˝ç˝Žăšăăă for (i = 0; i < c; i++) { struct guild_explusion *e = &g->explusion[i]; @@ -251,11 +251,11 @@ int inter_guild_fromstr (char *str, struct guild *g) tmp_str[2][strlen (tmp_str[2]) - 1] = 0; memcpy (e->mes, tmp_str[2], 40); - for (j = 0; j < 4 && str != NULL; j++) // ĘuXLbv + for (j = 0; j < 4 && str != NULL; j++) // ä˝ç˝Žăšăăă str = strchr (str + 1, '\t'); } // printf("GuildExplusionInfo OK\n"); - // MhXL + // ăŽăŤăăšă㍠for (i = 0; i < MAX_GUILDSKILL; i++) { if (sscanf (str + 1, "%d,%d ", &tmp_int[0], &tmp_int[1]) < 2) @@ -270,7 +270,7 @@ int inter_guild_fromstr (char *str, struct guild *g) return 0; } -// Mhéf[^ĚśńÖĚϡ +// ăŽăŤăĺăăźăżăŽćĺĺă¸ăŽĺ¤ć int inter_guildcastle_tostr (char *str, struct guild_castle *gc) { int len; @@ -286,7 +286,7 @@ int inter_guildcastle_tostr (char *str, struct guild_castle *gc) return 0; } -// Mhéf[^ĚśńŠçĚϡ +// ăŽăŤăĺăăźăżăŽćĺĺăăăŽĺ¤ć int inter_guildcastle_fromstr (char *str, struct guild_castle *gc) { int tmp_int[26]; @@ -397,7 +397,7 @@ int inter_guildcastle_fromstr (char *str, struct guild_castle *gc) return 0; } -// MhÖAf[^x[XÇÝÝ +// ăŽăŤăé˘éŁăăźăżăăźăščŞăżčžźăż int inter_guild_readdb () { int i; @@ -423,7 +423,7 @@ int inter_guild_readdb () return 0; } -// Mhf[^ĚÇÝÝ +// ăŽăŤăăăźăżăŽčŞăżčžźăż int inter_guild_init () { char line[16384]; @@ -474,7 +474,7 @@ int inter_guild_init () fclose_ (fp); // printf("int_guild: %s read done (%d guilds)\n", guild_txt, c); - c = 0; //JE^úť + c = 0; //ăŤăŚăłăżĺćĺ if ((fp = fopen_ (castle_txt, "r")) == NULL) { @@ -505,7 +505,7 @@ int inter_guild_init () if (!c) { printf (" %s - making Default Data...\n", castle_txt); - //ftHgf[^đěŹ + //ăăăŠăŤăăăźăżăä˝ć for (i = 0; i < MAX_GUILDCASTLE; i++) { gc = calloc (sizeof (struct guild_castle), 1); @@ -561,7 +561,7 @@ struct guild *inter_guild_search (int guild_id) return g; } -// Mhf[^ĚZ[up +// ăŽăŤăăăźăżăŽăťăźăç¨ int inter_guild_save_sub (void *key, void *data, va_list ap) { char line[16384]; @@ -574,7 +574,7 @@ int inter_guild_save_sub (void *key, void *data, va_list ap) return 0; } -// Mhéf[^ĚZ[up +// ăŽăŤăĺăăźăżăŽăťăźăç¨ int inter_castle_save_sub (void *key, void *data, va_list ap) { char line[16384]; @@ -587,7 +587,7 @@ int inter_castle_save_sub (void *key, void *data, va_list ap) return 0; } -// Mhf[^ĚZ[u +// ăŽăŤăăăźăżăŽăťăźă int inter_guild_save () { FILE *fp; @@ -616,7 +616,7 @@ int inter_guild_save () return 0; } -// Mhźőp +// ăŽăŤăĺć¤ç´˘ç¨ int search_guildname_sub (void *key, void *data, va_list ap) { struct guild *g = (struct guild *) data, **dst; @@ -629,7 +629,7 @@ int search_guildname_sub (void *key, void *data, va_list ap) return 0; } -// Mhźő +// ăŽăŤăĺć¤ç´˘ struct guild *search_guildname (char *str) { struct guild *g = NULL; @@ -637,7 +637,7 @@ struct guild *search_guildname (char *str) return g; } -// MhŞóŠÇ¤Š`FbN +// ăŽăŤăă犺ăăŠăăăă§ă㯠int guild_check_empty (struct guild *g) { int i; @@ -649,7 +649,7 @@ int guild_check_empty (struct guild *g) return 0; } } - // Nŕ˘Č˘ĚĹđU + // 誰ăăăŞăăŽă§č§ŁćŁ numdb_foreach (guild_db, guild_break_sub, g->guild_id); numdb_erase (guild_db, g->guild_id); inter_guild_storage_delete (g->guild_id); @@ -659,7 +659,7 @@ int guild_check_empty (struct guild *g) return 1; } -// LĚŁŞČ˘Š`FbNp +// ăăŁăŠăŽçŤśĺăăŞăăăă§ăăŻç¨ int guild_check_conflict_sub (void *key, void *data, va_list ap) { struct guild *g = (struct guild *) data; @@ -669,25 +669,25 @@ int guild_check_conflict_sub (void *key, void *data, va_list ap) account_id = va_arg (ap, int); char_id = va_arg (ap, int); - if (g->guild_id == guild_id) // {ĚŽČĚĹâčČľ + if (g->guild_id == guild_id) // ćŹćĽăŽćĺąăŞăŽă§ĺéĄăŞă return 0; for (i = 0; i < MAX_GUILD; i++) { if (g->member[i].account_id == account_id) { - // ĘĚMhÉUĚŽf[^Ş éĚĹEŢ + // ĺĽăŽăŽăŤăăŤĺ˝ăŽćĺąăăźăżăăăăŽă§čąé printf ("int_guild: guild conflict! %d,%d %d!=%d\n", account_id, char_id, guild_id, g->guild_id); mapif_parse_GuildLeave (-1, g->guild_id, account_id, 0 /*char_id*/, 0, - "**f[^Ł**"); + "**ăăźăżçŤśĺ**"); } } return 0; } -// LĚŁŞČ˘Š`FbN +// ăăŁăŠăŽçŤśĺăăŞăăăă§ă㯠int guild_check_conflict (int guild_id, int account_id, int char_id) { numdb_foreach (guild_db, guild_check_conflict_sub, guild_id, account_id, @@ -704,30 +704,30 @@ int guild_nextexp (int level) return 0; } -// MhXLŞ éŠmF +// ăŽăŤăăšăăŤăăăăç˘şčŞ int guild_checkskill (struct guild *g, int id) { return g->skill[id - 10000].lv; } -// MhĚîńĚÄvZ +// ăŽăŤăăŽć
ĺ ąăŽĺč¨çŽ int guild_calcinfo (struct guild *g) { int i, c, nextexp; struct guild before = *g; - // XLIDĚÝč + // ăšăăŤIDăŽč¨ĺŽ for (i = 0; i < 5; i++) g->skill[i].id = i + 10000; - // Mhx + // ăŽăŤăăŹă㍠if (g->guild_lv <= 0) g->guild_lv = 1; nextexp = guild_nextexp (g->guild_lv); if (nextexp > 0) { while (g->exp >= nextexp) - { // xAbv + { // ăŹăăŤă˘ăăĺŚç g->exp -= nextexp; g->guild_lv++; g->skill_point++; @@ -735,13 +735,13 @@ int guild_calcinfo (struct guild *g) } } - // MhĚĚoąl + // ăŽăŤăăŽćŹĄăŽçľé¨ĺ¤ g->next_exp = guild_nextexp (g->guild_lv); - // oăŔiMhgŁKpj + // ăĄăłăä¸éďźăŽăŤăćĄĺźľéŠç¨ďź g->max_member = 100 + guild_checkskill (g, 10004) * 2; - // ˝ĎxĆICl + // ĺšłĺăŹăăŤă¨ăŞăłăŠă¤ăłäşşć° g->average_lv = 0; g->connect_member = 0; c = 0; @@ -757,7 +757,7 @@ int guild_calcinfo (struct guild *g) } g->average_lv /= c; - // Sf[^đéKvŞ čť¤ + // ĺ
¨ăăźăżăéăĺż
čŚăăăăă if (g->max_member != before.max_member || g->guild_lv != before.guild_lv || g->skill_point != before.skill_point) @@ -770,9 +770,9 @@ int guild_calcinfo (struct guild *g) } //------------------------------------------------------------------- -// map serverÖĚĘM +// map serveră¸ăŽé俥 -// MhěŹÂŰ +// ăŽăŤăä˝ćĺŻĺŚ int mapif_guild_created (int fd, int account_id, struct guild *g) { WFIFOW (fd, 0) = 0x3830; @@ -790,7 +790,7 @@ int mapif_guild_created (int fd, int account_id, struct guild *g) return 0; } -// MhîńŠÂŠç¸ +// ăŽăŤăć
ĺ ąčŚă¤ăăă int mapif_guild_noinfo (int fd, int guild_id) { WFIFOW (fd, 0) = 0x3831; @@ -802,7 +802,7 @@ int mapif_guild_noinfo (int fd, int guild_id) return 0; } -// MhîńÜĆßč +// ăŽăŤăć
ĺ ąăžă¨ăéă int mapif_guild_info (int fd, struct guild *g) { unsigned char buf[4 + sizeof (struct guild)]; @@ -820,7 +820,7 @@ int mapif_guild_info (int fd, struct guild *g) return 0; } -// oÇÁÂŰ +// ăĄăłăčż˝ĺ ĺŻĺŚ int mapif_guild_memberadded (int fd, int guild_id, int account_id, int char_id, int flag) { @@ -834,7 +834,7 @@ int mapif_guild_memberadded (int fd, int guild_id, int account_id, return 0; } -// EŢ/ÇúĘm +// čąé/čż˝ćžéçĽ int mapif_guild_leaved (int guild_id, int account_id, int char_id, int flag, const char *name, const char *mes) { @@ -854,7 +854,7 @@ int mapif_guild_leaved (int guild_id, int account_id, int char_id, int flag, return 0; } -// ICóÔĆLvXVĘm +// ăŞăłăŠă¤ăłçść
ă¨Lvć´ć°éçĽ int mapif_guild_memberinfoshort (struct guild *g, int idx) { unsigned char buf[19]; @@ -870,7 +870,7 @@ int mapif_guild_memberinfoshort (struct guild *g, int idx) return 0; } -// đUĘm +// 解ćŁéçĽ int mapif_guild_broken (int guild_id, int flag) { unsigned char buf[7]; @@ -884,7 +884,7 @@ int mapif_guild_broken (int guild_id, int flag) return 0; } -// Mhŕž +// ăŽăŤăĺ
çşč¨ int mapif_guild_message (int guild_id, int account_id, char *mes, int len) { unsigned char buf[len + 12]; @@ -899,7 +899,7 @@ int mapif_guild_message (int guild_id, int account_id, char *mes, int len) return 0; } -// Mhî{îńĎXĘm +// ăŽăŤăĺşćŹć
ĺ ąĺ¤ć´éçĽ int mapif_guild_basicinfochanged (int guild_id, int type, const void *data, int len) { @@ -914,7 +914,7 @@ int mapif_guild_basicinfochanged (int guild_id, int type, const void *data, return 0; } -// MhoîńĎXĘm +// ăŽăŤăăĄăłăć
ĺ ąĺ¤ć´éçĽ int mapif_guild_memberinfochanged (int guild_id, int account_id, int char_id, int type, const void *data, int len) { @@ -932,7 +932,7 @@ int mapif_guild_memberinfochanged (int guild_id, int account_id, int char_id, return 0; } -// MhXLAbvĘm +// ăŽăŤăăšăăŤă˘ăăéçĽ int mapif_guild_skillupack (int guild_id, int skill_num, int account_id) { unsigned char buf[14]; @@ -946,7 +946,7 @@ int mapif_guild_skillupack (int guild_id, int skill_num, int account_id) return 0; } -// MhŻż/GÎĘm +// ăŽăŤăĺç/ćľĺŻžéçĽ int mapif_guild_alliance (int guild_id1, int guild_id2, int account_id1, int account_id2, int flag, const char *name1, const char *name2) @@ -966,7 +966,7 @@ int mapif_guild_alliance (int guild_id1, int guild_id2, int account_id1, return 0; } -// MhđEĎXĘm +// ăŽăŤă彚čˇĺ¤ć´éçĽ int mapif_guild_position (struct guild *g, int idx) { unsigned char buf[sizeof (struct guild_position) + 12]; @@ -982,7 +982,7 @@ int mapif_guild_position (struct guild *g, int idx) return 0; } -// MhmĎXĘm +// ăŽăŤăĺçĽĺ¤ć´éçĽ int mapif_guild_notice (struct guild *g) { unsigned char buf[186]; @@ -996,7 +996,7 @@ int mapif_guild_notice (struct guild *g) return 0; } -// MhGuĎXĘm +// ăŽăŤăă¨ăłăăŹă ĺ¤ć´éçĽ int mapif_guild_emblem (struct guild *g) { unsigned char buf[2048]; @@ -1062,9 +1062,9 @@ int mapif_guild_castle_alldataload (int fd) } //------------------------------------------------------------------- -// map serverŠçĚĘM +// map serverăăăŽé俥 -// MhěŹv +// ăŽăŤăä˝ćčŚćą int mapif_parse_CreateGuild (int fd, int account_id, char *name, struct guild_member *master) { @@ -1106,7 +1106,7 @@ int mapif_parse_CreateGuild (int fd, int account_id, char *name, for (i = 1; i < MAX_GUILDPOSITION - 1; i++) sprintf (g->position[i].name, "Position %d", i + 1); - // ąąĹMhîńvZŞKvĆvíęé + // ăăă§ăŽăŤăć
ĺ ąč¨çŽăĺż
čŚă¨ćăăă g->max_member = 100; g->average_lv = master->lv; for (i = 0; i < 5; i++) @@ -1123,7 +1123,7 @@ int mapif_parse_CreateGuild (int fd, int account_id, char *name, return 0; } -// Mhîńv +// ăŽăŤăć
ĺ ąčŚćą int mapif_parse_GuildInfo (int fd, int guild_id) { struct guild *g; @@ -1140,7 +1140,7 @@ int mapif_parse_GuildInfo (int fd, int guild_id) return 0; } -// MhoÇÁv +// ăŽăŤăăĄăłăčż˝ĺ čŚćą int mapif_parse_GuildAddMember (int fd, int guild_id, struct guild_member *m) { struct guild *g; @@ -1171,7 +1171,7 @@ int mapif_parse_GuildAddMember (int fd, int guild_id, struct guild_member *m) return 0; } -// MhEŢ/Çúv +// ăŽăŤăčąé/čż˝ćžčŚćą int mapif_parse_GuildLeave (int fd, int guild_id, int account_id, int char_id, int flag, const char *mes) { @@ -1189,14 +1189,14 @@ int mapif_parse_GuildLeave (int fd, int guild_id, int account_id, int char_id, // printf("%d %s\n", i, g->member[i].name); if (flag) - { // ÇúĚęÇúXgÉüęé + { // čż˝ćžăŽĺ ´ĺčż˝ćžăŞăšăăŤĺ
Ľăă for (j = 0; j < MAX_GUILDEXPLUSION; j++) { if (g->explusion[j].account_id == 0) break; } if (j == MAX_GUILDEXPLUSION) - { // ętČĚĹâĚđÁˇ + { // ä¸ćŻăŞăŽă§ĺ¤ăăŽăćśă for (j = 0; j < MAX_GUILDEXPLUSION - 1; j++) g->explusion[j] = g->explusion[j + 1]; j = MAX_GUILDEXPLUSION - 1; @@ -1214,7 +1214,7 @@ int mapif_parse_GuildLeave (int fd, int guild_id, int account_id, int char_id, memset (&g->member[i], 0, sizeof (struct guild_member)); if (guild_check_empty (g) == 0) - mapif_guild_info (-1, g); // ÜžlŞ˘éĚĹf[^M + mapif_guild_info (-1, g); // ăžă äşşăăăăŽă§ăăźăżé俥 return 0; } @@ -1223,7 +1223,7 @@ int mapif_parse_GuildLeave (int fd, int guild_id, int account_id, int char_id, return 0; } -// IC/LvXV +// ăŞăłăŠă¤ăł/Lvć´ć° int mapif_parse_GuildChangeMemberInfoShort (int fd, int guild_id, int account_id, int char_id, int online, int lv, int class) @@ -1256,13 +1256,13 @@ int mapif_parse_GuildChangeMemberInfoShort (int fd, int guild_id, if (g->member[i].online) g->connect_member++; } - // ˝Ďx + // ĺšłĺăŹă㍠g->average_lv = alv / c; return 0; } -// MhđUpiŻż/GÎđđj +// ăŽăŤă解ćŁĺŚçç¨ďźĺç/ćľĺŻžă解é¤ďź int guild_break_sub (void *key, void *data, va_list ap) { struct guild *g = (struct guild *) data; @@ -1277,7 +1277,7 @@ int guild_break_sub (void *key, void *data, va_list ap) return 0; } -// MhđUv +// ăŽăŤă解ćŁčŚćą int mapif_parse_BreakGuild (int fd, int guild_id) { struct guild *g; @@ -1297,14 +1297,14 @@ int mapif_parse_BreakGuild (int fd, int guild_id) return 0; } -// MhbZ[WM +// ăŽăŤăăĄăăťăźă¸é俥 int mapif_parse_GuildMessage (int fd, int guild_id, int account_id, char *mes, int len) { return mapif_guild_message (guild_id, account_id, mes, len); } -// Mhî{f[^ĎXv +// ăŽăŤăĺşćŹăăźăżĺ¤ć´čŚćą int mapif_parse_GuildBasicInfoChange (int fd, int guild_id, int type, const char *data, int len) { @@ -1337,7 +1337,7 @@ int mapif_parse_GuildBasicInfoChange (int fd, int guild_id, int type, return 0; } -// Mhof[^ĎXv +// ăŽăŤăăĄăłăăăźăżĺ¤ć´čŚćą int mapif_parse_GuildMemberInfoChange (int fd, int guild_id, int account_id, int char_id, int type, const char *data, int len) @@ -1360,7 +1360,7 @@ int mapif_parse_GuildMemberInfoChange (int fd, int guild_id, int account_id, } switch (type) { - case GMI_POSITION: // đE + case GMI_POSITION: // ĺ˝ščˇ g->member[i].position = *((int *) data); break; case GMI_EXP: // EXP @@ -1368,7 +1368,7 @@ int mapif_parse_GuildMemberInfoChange (int fd, int guild_id, int account_id, int exp, oldexp = g->member[i].exp; exp = g->member[i].exp = *((unsigned int *) data); g->exp += (exp - oldexp); - guild_calcinfo (g); // LvAbvťf + guild_calcinfo (g); // Lvă˘ăăĺ¤ć mapif_guild_basicinfochanged (guild_id, GBI_EXP, &g->exp, 4); } break; @@ -1383,7 +1383,7 @@ int mapif_parse_GuildMemberInfoChange (int fd, int guild_id, int account_id, return 0; } -// MhđEźĎXv +// ăŽăŤă彚čˇĺĺ¤ć´čŚćą int mapif_parse_GuildPosition (int fd, int guild_id, int idx, struct guild_position *p) { @@ -1400,7 +1400,7 @@ int mapif_parse_GuildPosition (int fd, int guild_id, int idx, return 0; } -// MhXLAbvv +// ăŽăŤăăšăăŤă˘ăăčŚćą int mapif_parse_GuildSkillUp (int fd, int guild_id, int skill_num, int account_id) { @@ -1423,7 +1423,7 @@ int mapif_parse_GuildSkillUp (int fd, int guild_id, int skill_num, return 0; } -// MhŻżv +// ăŽăŤăĺçčŚćą int mapif_parse_GuildAlliance (int fd, int guild_id1, int guild_id2, int account_id1, int account_id2, int flag) { @@ -1450,7 +1450,7 @@ int mapif_parse_GuildAlliance (int fd, int guild_id1, int guild_id2, } } else - { // ÖWđÁ + { // é˘äżč§Łćś for (i = 0; i < 2 - (flag & 1); i++) { for (j = 0; j < MAX_GUILDALLIANCE; j++) @@ -1468,7 +1468,7 @@ int mapif_parse_GuildAlliance (int fd, int guild_id1, int guild_id2, return 0; } -// MhmĎXv +// ăŽăŤăĺçĽĺ¤ć´čŚćą int mapif_parse_GuildNotice (int fd, int guild_id, const char *mes1, const char *mes2) { @@ -1483,7 +1483,7 @@ int mapif_parse_GuildNotice (int fd, int guild_id, const char *mes1, return mapif_guild_notice (g); } -// MhGuĎXv +// ăŽăŤăă¨ăłăăŹă ĺ¤ć´čŚćą int mapif_parse_GuildEmblem (int fd, int len, int guild_id, int dummy, const char *data) { @@ -1697,17 +1697,17 @@ int mapif_parse_GuildCastleDataSave (int fd, int castle_id, int index, return mapif_guild_castle_datasave (gc->castle_id, index, value); } -// Mh`FbNv +// ăŽăŤăăă§ăăŻčŚćą int mapif_parse_GuildCheck (int fd, int guild_id, int account_id, int char_id) { return guild_check_conflict (guild_id, account_id, 0 /*char_id*/); } -// map server ŠçĚĘM -// EPpPbgĚÝđ͡éąĆ -// EpPbgˇf[^Íinter.cÉZbgľÄ¨ąĆ -// EpPbgˇ`FbNâARFIFOSKIPÍÄŃoľłĹsíęéĚĹsÁÄÍČçȢ -// EG[Čç0(false)Ať¤ĹȢČç1(true)𩦳ȯęÎČçȢ +// map server ăăăŽé俥 +// ăťďźăăąăăăŽăżč§Łćăăă㨠+// ăťăăąăăéˇăăźăżăŻinter.căŤăťăăăăŚăăă㨠+// ăťăăąăăéˇăă§ăăŻăăRFIFOSKIPăŻĺźăłĺşăĺ
ă§čĄăăăăŽă§čĄăŁăŚăŻăŞăăŞă +// ăťă¨ăŠăźăŞă0(false)ăăăă§ăŞăăŞă1(true)ăăăăăŞăăă°ăŞăăŞă int inter_guild_parse_frommap (int fd) { switch (RFIFOW (fd, 0)) @@ -1799,15 +1799,15 @@ int inter_guild_parse_frommap (int fd) return 1; } -// }bvT[o[ĚÚą +// ăăăăľăźăăźăŽćĽçśćĺŚç int inter_guild_mapif_init (int fd) { return mapif_guild_castle_alldataload (fd); } -// T[o[ŠçEŢviLípj +// ăľăźăăźăăčąéčŚćąďźăăŁăŠĺé¤ç¨ďź int inter_guild_leave (int guild_id, int account_id, int char_id) { return mapif_parse_GuildLeave (-1, guild_id, account_id, 0 /*char_id*/, 0, - "**T[o[˝ß**"); + "**ăľăźăăźĺ˝äť¤**"); } diff --git a/src/char/int_party.c b/src/char/int_party.c index fb9c3ca..c501c74 100644 --- a/src/char/int_party.c +++ b/src/char/int_party.c @@ -19,7 +19,7 @@ int mapif_party_broken (int party_id, int flag); int party_check_empty (struct party *p); int mapif_parse_PartyLeave (int fd, int party_id, int account_id); -// p[eBf[^ĚśńÖĚϡ +// ăăźăăŁăăźăżăŽćĺĺă¸ăŽĺ¤ć int inter_party_tostr (char *str, struct party *p) { int i, len; @@ -38,7 +38,7 @@ int inter_party_tostr (char *str, struct party *p) return 0; } -// p[eBf[^ĚśńŠçĚϡ +// ăăźăăŁăăźăżăŽćĺĺăăăŽĺ¤ć int inter_party_fromstr (char *str, struct party *p) { int i, j; @@ -86,7 +86,7 @@ int inter_party_fromstr (char *str, struct party *p) return 0; } -// p[eBf[^Ě[h +// ăăźăăŁăăźăżăŽăăźă int inter_party_init () { char line[8192]; @@ -138,7 +138,7 @@ int inter_party_init () return 0; } -// p[eB[f[^ĚZ[up +// ăăźăăŁăźăăźăżăŽăťăźăç¨ int inter_party_save_sub (void *key, void *data, va_list ap) { char line[8192]; @@ -151,7 +151,7 @@ int inter_party_save_sub (void *key, void *data, va_list ap) return 0; } -// p[eB[f[^ĚZ[u +// ăăźăăŁăźăăźăżăŽăťăźă int inter_party_save () { FILE *fp; @@ -171,7 +171,7 @@ int inter_party_save () return 0; } -// p[eBźőp +// ăăźăăŁĺć¤ç´˘ç¨ int search_partyname_sub (void *key, void *data, va_list ap) { struct party *p = (struct party *) data, **dst; @@ -185,7 +185,7 @@ int search_partyname_sub (void *key, void *data, va_list ap) return 0; } -// p[eBźő +// ăăźăăŁĺć¤ç´˘ struct party *search_partyname (char *str) { struct party *p = NULL; @@ -194,7 +194,7 @@ struct party *search_partyname (char *str) return p; } -// EXPö˝ŞzĹŤéŠ`FbN +// EXPĺ
Źĺšłĺé
ă§ăăăăă§ă㯠int party_check_exp_share (struct party *p) { int i; @@ -215,7 +215,7 @@ int party_check_exp_share (struct party *p) return (maxlv == 0 || maxlv - minlv <= party_share_level); } -// p[eBŞóŠÇ¤Š`FbN +// ăăźăăŁă犺ăăŠăăăă§ă㯠int party_check_empty (struct party *p) { int i; @@ -229,7 +229,7 @@ int party_check_empty (struct party *p) return 0; } } - // Nŕ˘Č˘ĚĹđU + // 誰ăăăŞăăŽă§č§ŁćŁ mapif_party_broken (p->party_id, 0); numdb_erase (party_db, p->party_id); free (p); @@ -237,7 +237,7 @@ int party_check_empty (struct party *p) return 1; } -// LĚŁŞČ˘Š`FbNp +// ăăŁăŠăŽçŤśĺăăŞăăăă§ăăŻç¨ int party_check_conflict_sub (void *key, void *data, va_list ap) { struct party *p = (struct party *) data; @@ -248,7 +248,7 @@ int party_check_conflict_sub (void *key, void *data, va_list ap) account_id = va_arg (ap, int); nick = va_arg (ap, char *); - if (p->party_id == party_id) // {ĚŽČĚĹâčČľ + if (p->party_id == party_id) // ćŹćĽăŽćĺąăŞăŽă§ĺéĄăŞă return 0; for (i = 0; i < MAX_PARTY; i++) @@ -256,7 +256,7 @@ int party_check_conflict_sub (void *key, void *data, va_list ap) if (p->member[i].account_id == account_id && strcmp (p->member[i].name, nick) == 0) { - // ĘĚp[eBÉUĚŽf[^Ş éĚĹEŢ + // ĺĽăŽăăźăăŁăŤĺ˝ăŽćĺąăăźăżăăăăŽă§čąé printf ("int_party: party conflict! %d %d %d\n", account_id, party_id, p->party_id); mapif_parse_PartyLeave (-1, p->party_id, account_id); @@ -266,7 +266,7 @@ int party_check_conflict_sub (void *key, void *data, va_list ap) return 0; } -// LĚŁŞČ˘Š`FbN +// ăăŁăŠăŽçŤśĺăăŞăăăă§ă㯠int party_check_conflict (int party_id, int account_id, char *nick) { numdb_foreach (party_db, party_check_conflict_sub, party_id, account_id, @@ -276,9 +276,9 @@ int party_check_conflict (int party_id, int account_id, char *nick) } //------------------------------------------------------------------- -// map serverÖĚĘM +// map serveră¸ăŽé俥 -// p[eBěŹÂŰ +// ăăźăăŁä˝ćĺŻĺŚ int mapif_party_created (int fd, int account_id, struct party *p) { WFIFOW (fd, 0) = 0x3820; @@ -301,7 +301,7 @@ int mapif_party_created (int fd, int account_id, struct party *p) return 0; } -// p[eBîńŠÂŠç¸ +// ăăźăăŁć
ĺ ąčŚă¤ăăă int mapif_party_noinfo (int fd, int party_id) { WFIFOW (fd, 0) = 0x3821; @@ -313,7 +313,7 @@ int mapif_party_noinfo (int fd, int party_id) return 0; } -// p[eBîńÜĆßč +// ăăźăăŁć
ĺ ąăžă¨ăéă int mapif_party_info (int fd, struct party *p) { unsigned char buf[4 + sizeof (struct party)]; @@ -330,7 +330,7 @@ int mapif_party_info (int fd, struct party *p) return 0; } -// p[eBoÇÁÂŰ +// ăăźăăŁăĄăłăčż˝ĺ ĺŻĺŚ int mapif_party_memberadded (int fd, int party_id, int account_id, int flag) { WFIFOW (fd, 0) = 0x3822; @@ -342,7 +342,7 @@ int mapif_party_memberadded (int fd, int party_id, int account_id, int flag) return 0; } -// p[eBÝčĎXĘm +// ăăźăăŁč¨ĺŽĺ¤ć´éçĽ int mapif_party_optionchanged (int fd, struct party *p, int account_id, int flag) { @@ -364,7 +364,7 @@ int mapif_party_optionchanged (int fd, struct party *p, int account_id, return 0; } -// p[eBEŢĘm +// ăăźăăŁčąééçĽ int mapif_party_leaved (int party_id, int account_id, char *name) { unsigned char buf[34]; @@ -379,7 +379,7 @@ int mapif_party_leaved (int party_id, int account_id, char *name) return 0; } -// p[eB}bvXVĘm +// ăăźăăŁăăăć´ć°éçĽ int mapif_party_membermoved (struct party *p, int idx) { unsigned char buf[29]; @@ -395,7 +395,7 @@ int mapif_party_membermoved (struct party *p, int idx) return 0; } -// p[eBđUĘm +// ăăźăăŁč§ŁćŁéçĽ int mapif_party_broken (int party_id, int flag) { unsigned char buf[7]; @@ -408,7 +408,7 @@ int mapif_party_broken (int party_id, int flag) return 0; } -// p[eBŕž +// ăăźăăŁĺ
çşč¨ int mapif_party_message (int party_id, int account_id, char *mes, int len) { unsigned char buf[len + 12]; @@ -424,9 +424,9 @@ int mapif_party_message (int party_id, int account_id, char *mes, int len) } //------------------------------------------------------------------- -// map serverŠçĚĘM +// map serverăăăŽé俥 -// p[eB +// ăăźă㣠int mapif_parse_CreateParty (int fd, int account_id, char *name, char *nick, char *map, int lv) { @@ -476,7 +476,7 @@ int mapif_parse_CreateParty (int fd, int account_id, char *name, char *nick, return 0; } -// p[eBîńv +// ăăźăăŁć
ĺ ąčŚćą int mapif_parse_PartyInfo (int fd, int party_id) { struct party *p; @@ -490,7 +490,7 @@ int mapif_parse_PartyInfo (int fd, int party_id) return 0; } -// p[eBÇÁv +// ăăźăăŁčż˝ĺ čŚćą int mapif_parse_PartyAddMember (int fd, int party_id, int account_id, char *nick, char *map, int lv) { @@ -534,7 +534,7 @@ int mapif_parse_PartyAddMember (int fd, int party_id, int account_id, return 0; } -// p[eB[ÝčĎXv +// ăăźăăŁăźč¨ĺŽĺ¤ć´čŚćą int mapif_parse_PartyChangeOption (int fd, int party_id, int account_id, int exp, int item) { @@ -558,7 +558,7 @@ int mapif_parse_PartyChangeOption (int fd, int party_id, int account_id, return 0; } -// p[eBEŢv +// ăăźăăŁčąéčŚćą int mapif_parse_PartyLeave (int fd, int party_id, int account_id) { struct party *p; @@ -575,7 +575,7 @@ int mapif_parse_PartyLeave (int fd, int party_id, int account_id) memset (&p->member[i], 0, sizeof (struct party_member)); if (party_check_empty (p) == 0) - mapif_party_info (-1, p); // ÜžlŞ˘éĚĹf[^M + mapif_party_info (-1, p); // ăžă äşşăăăăŽă§ăăźăżé俥 return 0; } } @@ -584,7 +584,7 @@ int mapif_parse_PartyLeave (int fd, int party_id, int account_id) return 0; } -// p[eB}bvXVv +// ăăźăăŁăăăć´ć°čŚćą int mapif_parse_PartyChangeMap (int fd, int party_id, int account_id, char *map, int online, int lv) { @@ -620,7 +620,7 @@ int mapif_parse_PartyChangeMap (int fd, int party_id, int account_id, return 0; } -// p[eBđUv +// ăăźăăŁč§ŁćŁčŚćą int mapif_parse_BreakParty (int fd, int party_id) { struct party *p; @@ -635,24 +635,24 @@ int mapif_parse_BreakParty (int fd, int party_id) return 0; } -// p[eBbZ[WM +// ăăźăăŁăĄăăťăźă¸é俥 int mapif_parse_PartyMessage (int fd, int party_id, int account_id, char *mes, int len) { return mapif_party_message (party_id, account_id, mes, len); } -// p[eB`FbNv +// ăăźăăŁăă§ăăŻčŚćą int mapif_parse_PartyCheck (int fd, int party_id, int account_id, char *nick) { return party_check_conflict (party_id, account_id, nick); } -// map server ŠçĚĘM -// EPpPbgĚÝđ͡éąĆ -// EpPbgˇf[^Íinter.cÉZbgľÄ¨ąĆ -// EpPbgˇ`FbNâARFIFOSKIPÍÄŃoľłĹsíęéĚĹsÁÄÍČçȢ -// EG[Čç0(false)Ať¤ĹȢČç1(true)𩦳ȯęÎČçȢ +// map server ăăăŽé俥 +// ăťďźăăąăăăŽăżč§Łćăăă㨠+// ăťăăąăăéˇăăźăżăŻinter.căŤăťăăăăŚăăă㨠+// ăťăăąăăéˇăă§ăăŻăăRFIFOSKIPăŻĺźăłĺşăĺ
ă§čĄăăăăŽă§čĄăŁăŚăŻăŞăăŞă +// ăťă¨ăŠăźăŞă0(false)ăăăă§ăŞăăŞă1(true)ăăăăăŞăăă°ăŞăăŞă int inter_party_parse_frommap (int fd) { switch (RFIFOW (fd, 0)) @@ -700,7 +700,7 @@ int inter_party_parse_frommap (int fd) return 1; } -// T[o[ŠçEŢviLípj +// ăľăźăăźăăčąéčŚćąďźăăŁăŠĺé¤ç¨ďź int inter_party_leave (int party_id, int account_id) { return mapif_parse_PartyLeave (-1, party_id, account_id); diff --git a/src/char/int_storage.c b/src/char/int_storage.c index 47dff67..744a59f 100644 --- a/src/char/int_storage.c +++ b/src/char/int_storage.c @@ -13,15 +13,15 @@ #include "int_storage.h" #include "int_guild.h" -// t@CźĚftHg -// inter_config_read()ĹÄÝčłęé +// ăăĄă¤ăŤĺăŽăăăŠăŤă +// inter_config_read()ă§ĺč¨ĺŽăăă char storage_txt[1024] = "save/storage.txt"; char guild_storage_txt[1024] = "save/g_storage.txt"; static struct dbt *storage_db; static struct dbt *guild_storage_db; -// qÉf[^đśńÉϡ +// ĺ庍ăăźăżăćĺĺăŤĺ¤ć int storage_tostr (char *str, struct storage *p) { int i, f = 0; @@ -49,7 +49,7 @@ int storage_tostr (char *str, struct storage *p) return 0; } -// śńđqÉf[^Éϡ +// ćĺĺăĺ庍ăăźăżăŤĺ¤ć int storage_fromstr (char *str, struct storage *p) { int tmp_int[256]; @@ -215,7 +215,7 @@ int guild_storage_fromstr (char *str, struct guild_storage *p) return 0; } -// AJEgŠçqÉf[^CfbNXđžéiVKqÉÇÁÂ\j +// ă˘ăŤăŚăłăăăĺ庍ăăźăżă¤ăłăăăŻăšăĺžăďźć°čŚĺ庍追ĺ ĺŻč˝ďź struct storage *account2storage (int account_id) { struct storage *s; @@ -260,7 +260,7 @@ struct guild_storage *guild2storage (int guild_id) } //--------------------------------------------------------- -// qÉf[^đÇÝŢ +// ĺ庍ăăźăżăčŞăżčžźă int inter_storage_init () { char line[65536]; @@ -375,7 +375,7 @@ int inter_storage_save_sub (void *key, void *data, va_list ap) } //--------------------------------------------------------- -// qÉf[^đŤŢ +// ĺ庍ăăźăżăć¸ăčžźă int inter_storage_save () { FILE *fp; @@ -413,7 +413,7 @@ int inter_guild_storage_save_sub (void *key, void *data, va_list ap) } //--------------------------------------------------------- -// qÉf[^đŤŢ +// ĺ庍ăăźăżăć¸ăčžźă int inter_guild_storage_save () { FILE *fp; @@ -434,7 +434,7 @@ int inter_guild_storage_save () return 0; } -// qÉf[^í +// ĺ庍ăăźăżĺé¤ int inter_storage_delete (int account_id) { struct storage *s = @@ -447,7 +447,7 @@ int inter_storage_delete (int account_id) return 0; } -// MhqÉf[^í +// ăŽăŤăĺ庍ăăźăżĺé¤ int inter_guild_storage_delete (int guild_id) { struct guild_storage *gs = @@ -461,9 +461,9 @@ int inter_guild_storage_delete (int guild_id) } //--------------------------------------------------------- -// map serverÖĚĘM +// map serveră¸ăŽé俥 -// qÉf[^ĚM +// ĺ庍ăăźăżăŽé俥 int mapif_load_storage (int fd, int account_id) { struct storage *s = account2storage (account_id); @@ -475,7 +475,7 @@ int mapif_load_storage (int fd, int account_id) return 0; } -// qÉf[^ŰśŽšM +// ĺ庍ăăźăżäżĺĺŽäşé俥 int mapif_save_storage_ack (int fd, int account_id) { WFIFOW (fd, 0) = 0x3811; @@ -519,16 +519,16 @@ int mapif_save_guild_storage_ack (int fd, int account_id, int guild_id, } //--------------------------------------------------------- -// map serverŠçĚĘM +// map serverăăăŽé俥 -// qÉf[^vóM +// ĺ庍ăăźăżčŚćąĺ俥 int mapif_parse_LoadStorage (int fd) { mapif_load_storage (fd, RFIFOL (fd, 2)); return 0; } -// qÉf[^óMŰś +// ĺ庍ăăźăżĺ俥ďźäżĺ int mapif_parse_SaveStorage (int fd) { struct storage *s; @@ -578,11 +578,11 @@ int mapif_parse_SaveGuildStorage (int fd) return 0; } -// map server ŠçĚĘM -// EPpPbgĚÝđ͡éąĆ -// EpPbgˇf[^Íinter.cÉZbgľÄ¨ąĆ -// EpPbgˇ`FbNâARFIFOSKIPÍÄŃoľłĹsíęéĚĹsÁÄÍČçȢ -// EG[Čç0(false)Ať¤ĹȢČç1(true)𩦳ȯęÎČçȢ +// map server ăăăŽé俥 +// ăťďźăăąăăăŽăżč§Łćăăă㨠+// ăťăăąăăéˇăăźăżăŻinter.căŤăťăăăăŚăăă㨠+// ăťăăąăăéˇăă§ăăŻăăRFIFOSKIPăŻĺźăłĺşăĺ
ă§čĄăăăăŽă§čĄăŁăŚăŻăŞăăŞă +// ăťă¨ăŠăźăŞă0(false)ăăăă§ăŞăăŞă1(true)ăăăăăŞăăă°ăŞăăŞă int inter_storage_parse_frommap (int fd) { switch (RFIFOW (fd, 0)) diff --git a/src/char/inter.c b/src/char/inter.c index 19e1d83..89a3e39 100644 --- a/src/char/inter.c +++ b/src/char/inter.c @@ -30,7 +30,7 @@ struct accreg int party_share_level = 10; -// MpPbgˇXg +// é俥ăăąăăéˇăŞăšă int inter_send_packet_length[] = { -1, -1, 27, -1, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1, 7, 0, 0, 0, 0, 0, 0, -1, 11, 0, 0, 0, 0, 0, 0, @@ -43,7 +43,7 @@ int inter_send_packet_length[] = { 11, -1, 7, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, }; -// óMpPbgˇXg +// ĺ俥ăăąăăéˇăŞăšă int inter_recv_packet_length[] = { -1, -1, 7, -1, -1, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, -1, 0, 0, 0, 0, 0, 0, 10, -1, 0, 0, 0, 0, 0, 0, @@ -67,7 +67,7 @@ static int wis_dellist[WISDELLIST_MAX], wis_delnum; //-------------------------------------------------------- -// AJEgĎđśńÖϡ +// ă˘ăŤăŚăłăĺ¤ć°ăćĺĺă¸ĺ¤ć int inter_accreg_tostr (char *str, struct accreg *reg) { int j; @@ -82,7 +82,7 @@ int inter_accreg_tostr (char *str, struct accreg *reg) return 0; } -// AJEgĎđśńŠçϡ +// ă˘ăŤăŚăłăĺ¤ć°ăćĺĺăăĺ¤ć int inter_accreg_fromstr (const char *str, struct accreg *reg) { int j, v, n; @@ -105,7 +105,7 @@ int inter_accreg_fromstr (const char *str, struct accreg *reg) return 0; } -// AJEgĎĚÇÝÝ +// ă˘ăŤăŚăłăĺ¤ć°ăŽčŞăżčžźăż int inter_accreg_init () { char line[8192]; @@ -145,7 +145,7 @@ int inter_accreg_init () return 0; } -// AJEgĎĚZ[up +// ă˘ăŤăŚăłăĺ¤ć°ăŽăťăźăç¨ int inter_accreg_save_sub (void *key, void *data, va_list ap) { char line[8192]; @@ -162,7 +162,7 @@ int inter_accreg_save_sub (void *key, void *data, va_list ap) return 0; } -// AJEgĎĚZ[u +// ă˘ăŤăŚăłăĺ¤ć°ăŽăťăźă int inter_accreg_save () { FILE *fp; @@ -184,7 +184,7 @@ int inter_accreg_save () //-------------------------------------------------------- /*========================================== - * Ýčt@CđÇÝŢ + * č¨ĺŽăăĄă¤ăŤăčŞăżčžźă *------------------------------------------ */ int inter_config_read (const char *cfgName) @@ -251,7 +251,7 @@ int inter_config_read (const char *cfgName) return 0; } -// OŤoľ +// ăă°ć¸ăĺşă int inter_log (char *fmt, ...) { FILE *logfp; @@ -269,7 +269,7 @@ int inter_log (char *fmt, ...) return 0; } -// Z[u +// ăťăźă int inter_save () { inter_party_save (); @@ -281,7 +281,7 @@ int inter_save () return 0; } -// úť +// ĺćĺ int inter_init (const char *file) { inter_config_read (file); @@ -296,7 +296,7 @@ int inter_init (const char *file) return 0; } -// }bvT[o[Úą +// ăăăăľăźăăźćĽçś int inter_mapif_init (int fd) { inter_guild_mapif_init (fd); @@ -307,7 +307,7 @@ int inter_mapif_init (int fd) //-------------------------------------------------------- // sended packets to map-server -// GMbZ[WM +// GMăĄăăťăźă¸é俥 int mapif_GMmessage (unsigned char *mes, int len) { unsigned char buf[len]; @@ -351,7 +351,7 @@ int mapif_wis_end (struct WisData *wd, int flag) return 0; } -// AJEgĎM +// ă˘ăŤăŚăłăĺ¤ć°é俥 int mapif_account_reg (int fd, unsigned char *src) { unsigned char buf[WBUFW (src, 2)]; @@ -363,7 +363,7 @@ int mapif_account_reg (int fd, unsigned char *src) return 0; } -// AJEgĎvÔM +// ă˘ăŤăŚăłăĺ¤ć°čŚćąčżäżĄ int mapif_account_reg_reply (int fd, int account_id) { struct accreg *reg = numdb_search (accreg_db, account_id); @@ -433,7 +433,7 @@ int check_ttl_wisdata () //-------------------------------------------------------- // received packets from map-server -// GMbZ[WM +// GMăĄăăťăźă¸é俥 int mapif_parse_GMmessage (int fd) { mapif_GMmessage (RFIFOP (fd, 4), RFIFOW (fd, 2)); @@ -542,7 +542,7 @@ int mapif_parse_WisToGM (int fd) return 0; } -// AJEgĎŰśv +// ă˘ăŤăŚăłăĺ¤ć°äżĺčŚćą int mapif_parse_AccReg (int fd) { int j, p; @@ -567,12 +567,12 @@ int mapif_parse_AccReg (int fd) } reg->reg_num = j; - mapif_account_reg (fd, RFIFOP (fd, 0)); // źĚMAPT[o[ÉM + mapif_account_reg (fd, RFIFOP (fd, 0)); // äťăŽMAPăľăźăăźăŤé俥 return 0; } -// AJEgĎMv +// ă˘ăŤăŚăłăĺ¤ć°é俥čŚćą int mapif_parse_AccRegRequest (int fd) { // printf("mapif: accreg request\n"); @@ -581,15 +581,15 @@ int mapif_parse_AccRegRequest (int fd) //-------------------------------------------------------- -// map server ŠçĚĘMiPpPbgĚÝđ͡éąĆj -// G[Čç0(false)AĹŤ˝Čç1A -// pPbgˇŞŤčČŻęÎ2𩦳ȯęÎČçȢ +// map server ăăăŽé俥ďźďźăăąăăăŽăżč§Łćăăăă¨ďź +// ă¨ăŠăźăŞă0(false)ăĺŚçă§ăăăŞă1ă +// ăăąăăéˇăčśłăăŞăăă°2ăăăăăŞăăă°ăŞăăŞă int inter_parse_frommap (int fd) { int cmd = RFIFOW (fd, 0); int len = 0; - // interIÇŠđ˛×é + // interéŻçŽĄč˝ăă調ăšă if (cmd < 0x3000 || cmd >= 0x3000 + @@ -597,7 +597,7 @@ int inter_parse_frommap (int fd) sizeof (inter_recv_packet_length[0]))) return 0; - // pPbgˇđ˛×é + // ăăąăăéˇă調ăšă if ((len = inter_check_length (fd, inter_recv_packet_length[cmd - 0x3000])) == 0) @@ -637,18 +637,18 @@ int inter_parse_frommap (int fd) return 1; } -// RFIFOĚpPbgˇmF -// KvpPbgˇŞ ęÎpPbgˇAÜžŤčČŻęÎ0 +// RFIFOăŽăăąăăéˇç˘şčŞ +// ĺż
čŚăăąăăéˇăăăă°ăăąăăéˇăăžă čśłăăŞăăă°0 int inter_check_length (int fd, int length) { if (length == -1) - { // ÂĎpPbgˇ - if (RFIFOREST (fd) < 4) // pPbgˇŞ˘
+ { // ĺŻĺ¤ăăąăăéˇ + if (RFIFOREST (fd) < 4) // ăăąăăéˇăćŞç return 0; length = RFIFOW (fd, 2); } - if (RFIFOREST (fd) < length) // pPbgŞ˘
+ if (RFIFOREST (fd) < length) // ăăąăăăćŞç return 0; return length; diff --git a/src/char_sql/char.c b/src/char_sql/char.c index b9c8de3..4bfce6d 100644 --- a/src/char_sql/char.c +++ b/src/char_sql/char.c @@ -1715,7 +1715,7 @@ int parse_tologin (int fd) } break; - // account_reg2ĎXĘm + // account_reg2ĺ¤ć´éçĽ case 0x2729: if (RFIFOREST (fd) < 4 || RFIFOREST (fd) < RFIFOW (fd, 2)) return 0; @@ -1732,7 +1732,7 @@ int parse_tologin (int fd) reg[j].value = RFIFOL (fd, p + 32); } // set_account_reg2(acc,j,reg); - // ŻCOCđÖ~ľÄ˘ęÎéKvÍł˘ + // ĺĺ˘ăă°ă¤ăłăçŚć˘ăăŚăăă°éăĺż
čŚăŻçĄă memcpy (buf, RFIFOP (fd, 0), RFIFOW (fd, 2)); WBUFW (buf, 0) = 0x2b11; mapif_sendall (buf, WBUFW (buf, 2)); @@ -2135,7 +2135,7 @@ int parse_frommap (int fd) break; */ - // account_regŰśv + // account_regäżĺčŚćą case 0x2b10: if (RFIFOREST (fd) < 4 || RFIFOREST (fd) < RFIFOW (fd, 2)) return 0; @@ -2151,7 +2151,7 @@ int parse_frommap (int fd) reg[j].value = RFIFOL (fd, p + 32); } // set_account_reg2(acc,j,reg); - // loginT[o[Öé + // loginăľăźăăźă¸éă if (login_fd > 0) { // don't send request if no login-server WFIFOW (login_fd, 0) = 0x2728; @@ -2159,7 +2159,7 @@ int parse_frommap (int fd) RFIFOW (fd, 2)); WFIFOSET (login_fd, WFIFOW (login_fd, 2)); } - // [hÖĚŻCOCŞČŻęÎmapT[o[ÉéKvÍȢ + // ăŻăźăŤăă¸ăŽĺĺ˘ăă°ă¤ăłăăŞăăă°mapăľăźăăźăŤéăĺż
čŚăŻăŞă //memcpy(buf,RFIFOP(fd,0),RFIFOW(fd,2)); //WBUFW(buf,0)=0x2b11; //mapif_sendall(buf,WBUFW(buf,2)); @@ -3241,7 +3241,7 @@ int check_connect_login_server (int tid, unsigned int tick, int id, int data) //---------------------------------------------------------- // Return numerical value of a switch configuration by [Yor] -// on/off, english, français, deutsch, espańol +// on/off, english, frančťis, deutsch, espaîŤl //---------------------------------------------------------- int config_switch (const char *str) { @@ -3700,7 +3700,7 @@ int do_init (int argc, char **argv) printf ("charserver configuration reading done.....\n"); - inter_init ((argc > 2) ? argv[2] : inter_cfgName); // inter server ĂĘąâČ + inter_init ((argc > 2) ? argv[2] : inter_cfgName); // inter server ďžďžď˝ąçŻłď˝ printf ("interserver configuration reading done.....\n"); printf ("start char server initializing.....\n"); diff --git a/src/char_sql/int_guild.c b/src/char_sql/int_guild.c index 5030b41..7b363a1 100644 --- a/src/char_sql/int_guild.c +++ b/src/char_sql/int_guild.c @@ -856,7 +856,7 @@ int guild_check_empty (struct guild *g) } } - // Nŕ˘Č˘ĚĹđU + // 誰ăăăŞăăŽă§č§ŁćŁ mapif_guild_broken (g->guild_id, 0); inter_guild_storage_delete (g->guild_id); inter_guild_tosql (g, 255); @@ -872,23 +872,23 @@ int guild_nextexp (int level) return 0; } -// MhXLŞ éŠmF +// ăŽăŤăăšăăŤăăăăç˘şčŞ int guild_checkskill (struct guild *g, int id) { return g->skill[id - 10000].lv; } -// MhĚîńĚÄvZ +// ăŽăŤăăŽć
ĺ ąăŽĺč¨çŽ int guild_calcinfo (struct guild *g) { int i, c, nextexp; struct guild before = *g; - // XLIDĚÝč + // ăšăăŤIDăŽč¨ĺŽ for (i = 0; i < 5; i++) g->skill[i].id = i + 10000; - // Mhx + // ăŽăŤăăŹă㍠if (g->guild_lv <= 0) g->guild_lv = 1; nextexp = guild_nextexp (g->guild_lv); @@ -903,13 +903,13 @@ int guild_calcinfo (struct guild *g) } } - // MhĚĚoąl + // ăŽăŤăăŽćŹĄăŽçľé¨ĺ¤ g->next_exp = guild_nextexp (g->guild_lv); - // oăŔiMhgŁKpj + // ăĄăłăä¸éďźăŽăŤăćĄĺźľéŠç¨ďź g->max_member = 100 + guild_checkskill (g, 10004) * 2; // Updated max_members [PoW] - // ˝ĎxĆICl + // ĺšłĺăŹăăŤă¨ăŞăłăŠă¤ăłäşşć° g->average_lv = 0; g->connect_member = 0; for (i = c = 0; i < g->max_member; i++) @@ -925,7 +925,7 @@ int guild_calcinfo (struct guild *g) } g->average_lv /= c; - // Sf[^đéKvŞ čť¤ + // ĺ
¨ăăźăżăéăĺż
čŚăăăăă if (g->max_member != before.max_member || g->guild_lv != before.guild_lv || g->skill_point != before.skill_point) @@ -938,9 +938,9 @@ int guild_calcinfo (struct guild *g) } //------------------------------------------------------------------- -// map serverÖĚĘM +// map serveră¸ăŽé俥 -// MhěŹÂŰ +// ăŽăŤăä˝ćĺŻĺŚ int mapif_guild_created (int fd, int account_id, struct guild *g) { WFIFOW (fd, 0) = 0x3830; @@ -958,7 +958,7 @@ int mapif_guild_created (int fd, int account_id, struct guild *g) return 0; } -// MhîńŠÂŠç¸ +// ăŽăŤăć
ĺ ąčŚă¤ăăă int mapif_guild_noinfo (int fd, int guild_id) { WFIFOW (fd, 0) = 0x3831; @@ -969,7 +969,7 @@ int mapif_guild_noinfo (int fd, int guild_id) return 0; } -// MhîńÜĆßč +// ăŽăŤăć
ĺ ąăžă¨ăéă int mapif_guild_info (int fd, struct guild *g) { unsigned char buf[16384]; @@ -985,7 +985,7 @@ int mapif_guild_info (int fd, struct guild *g) return 0; } -// oÇÁÂŰ +// ăĄăłăčż˝ĺ ĺŻĺŚ int mapif_guild_memberadded (int fd, int guild_id, int account_id, int char_id, int flag) { @@ -998,7 +998,7 @@ int mapif_guild_memberadded (int fd, int guild_id, int account_id, return 0; } -// EŢ/ÇúĘm +// čąé/čż˝ćžéçĽ int mapif_guild_leaved (int guild_id, int account_id, int char_id, int flag, const char *name, const char *mes) { @@ -1016,7 +1016,7 @@ int mapif_guild_leaved (int guild_id, int account_id, int char_id, int flag, return 0; } -// ICóÔĆLvXVĘm +// ăŞăłăŠă¤ăłçść
ă¨Lvć´ć°éçĽ int mapif_guild_memberinfoshort (struct guild *g, int idx) { unsigned char buf[32]; @@ -1031,7 +1031,7 @@ int mapif_guild_memberinfoshort (struct guild *g, int idx) return 0; } -// đUĘm +// 解ćŁéçĽ int mapif_guild_broken (int guild_id, int flag) { unsigned char buf[16]; @@ -1043,7 +1043,7 @@ int mapif_guild_broken (int guild_id, int flag) return 0; } -// Mhŕž +// ăŽăŤăĺ
çşč¨ int mapif_guild_message (int guild_id, int account_id, char *mes, int len) { unsigned char buf[512]; @@ -1056,7 +1056,7 @@ int mapif_guild_message (int guild_id, int account_id, char *mes, int len) return 0; } -// Mhî{îńĎXĘm +// ăŽăŤăĺşćŹć
ĺ ąĺ¤ć´éçĽ int mapif_guild_basicinfochanged (int guild_id, int type, const void *data, int len) { @@ -1070,7 +1070,7 @@ int mapif_guild_basicinfochanged (int guild_id, int type, const void *data, return 0; } -// MhoîńĎXĘm +// ăŽăŤăăĄăłăć
ĺ ąĺ¤ć´éçĽ int mapif_guild_memberinfochanged (int guild_id, int account_id, int char_id, int type, const void *data, int len) { @@ -1086,7 +1086,7 @@ int mapif_guild_memberinfochanged (int guild_id, int account_id, int char_id, return 0; } -// MhXLAbvĘm +// ăŽăŤăăšăăŤă˘ăăéçĽ int mapif_guild_skillupack (int guild_id, int skill_num, int account_id) { unsigned char buf[16]; @@ -1098,7 +1098,7 @@ int mapif_guild_skillupack (int guild_id, int skill_num, int account_id) return 0; } -// MhŻż/GÎĘm +// ăŽăŤăĺç/ćľĺŻžéçĽ int mapif_guild_alliance (int guild_id1, int guild_id2, int account_id1, int account_id2, int flag, const char *name1, const char *name2) @@ -1116,7 +1116,7 @@ int mapif_guild_alliance (int guild_id1, int guild_id2, int account_id1, return 0; } -// MhđEĎXĘm +// ăŽăŤă彚čˇĺ¤ć´éçĽ int mapif_guild_position (struct guild *g, int idx) { unsigned char buf[128]; @@ -1130,7 +1130,7 @@ int mapif_guild_position (struct guild *g, int idx) return 0; } -// MhmĎXĘm +// ăŽăŤăĺçĽĺ¤ć´éçĽ int mapif_guild_notice (struct guild *g) { unsigned char buf[256]; @@ -1142,7 +1142,7 @@ int mapif_guild_notice (struct guild *g) return 0; } -// MhGuĎXĘm +// ăŽăŤăă¨ăłăăŹă ĺ¤ć´éçĽ int mapif_guild_emblem (struct guild *g) { unsigned char buf[2048]; @@ -1235,9 +1235,9 @@ int mapif_guild_castle_alldataload (int fd) } //------------------------------------------------------------------- -// map serverŠçĚĘM +// map serverăăăŽé俥 -// MhěŹv +// ăŽăŤăä˝ćčŚćą int mapif_parse_CreateGuild (int fd, int account_id, char *name, struct guild_member *master) { @@ -1362,7 +1362,7 @@ int mapif_parse_GuildLeave (int fd, int guild_id, int account_id, int char_id, printf ("%d %s\n", i, g->member[i].name); if (flag) - { // ÇúĚęÇúXgÉüęé + { // čż˝ćžăŽĺ ´ĺčż˝ćžăŞăšăăŤĺ
Ľăă int j; for (j = 0; j < MAX_GUILDEXPLUSION; j++) { @@ -1370,7 +1370,7 @@ int mapif_parse_GuildLeave (int fd, int guild_id, int account_id, int char_id, break; } if (j == MAX_GUILDEXPLUSION) - { // ętČĚĹâĚđÁˇ + { // ä¸ćŻăŞăŽă§ĺ¤ăăŽăćśă for (j = 0; j < MAX_GUILDEXPLUSION - 1; j++) g->explusion[j] = g->explusion[j + 1]; j = MAX_GUILDEXPLUSION - 1; @@ -1388,10 +1388,10 @@ int mapif_parse_GuildLeave (int fd, int guild_id, int account_id, int char_id, memset (&g->member[i], 0, sizeof (struct guild_member)); if (guild_check_empty (g) == 0) - mapif_guild_info (-1, g); // ÜžlŞ˘éĚĹf[^M + mapif_guild_info (-1, g); // ăžă äşşăăăăŽă§ăăźăżé俥 /* * else - * inter_guild_save(); // đUľ˝ĚĹęZ[u + * inter_guild_save(); // 解ćŁăăăŽă§ä¸ĺżăťăźă * return 0; */ } } @@ -1451,7 +1451,7 @@ int mapif_parse_GuildChangeMemberInfoShort (int fd, int guild_id, if (g->member[i].online) g->connect_member++; } - // ˝Ďx + // ĺšłĺăŹă㍠g->average_lv = alv / c; inter_guild_tosql (g, 3); // Change guild & guild_member @@ -1547,14 +1547,14 @@ int mapif_parse_BreakGuild (int fd, int guild_id) return 0; } -// MhbZ[WM +// ăŽăŤăăĄăăťăźă¸é俥 int mapif_parse_GuildMessage (int fd, int guild_id, int account_id, char *mes, int len) { return mapif_guild_message (guild_id, account_id, mes, len); } -// Mhî{f[^ĎXv +// ăŽăŤăĺşćŹăăźăżĺ¤ć´čŚćą int mapif_parse_GuildBasicInfoChange (int fd, int guild_id, int type, const char *data, int len) { @@ -1594,7 +1594,7 @@ int mapif_parse_GuildBasicInfoChange (int fd, int guild_id, return 0; } -// Mhof[^ĎXv +// ăŽăŤăăĄăłăăăźăżĺ¤ć´čŚćą int mapif_parse_GuildMemberInfoChange (int fd, int guild_id, int account_id, int char_id, int type, const char *data, int len) @@ -1622,7 +1622,7 @@ int mapif_parse_GuildMemberInfoChange (int fd, int guild_id, int account_id, } switch (type) { - case GMI_POSITION: // đE + case GMI_POSITION: // ĺ˝ščˇ g->member[i].position = *((int *) data); break; case GMI_EXP: @@ -1630,7 +1630,7 @@ int mapif_parse_GuildMemberInfoChange (int fd, int guild_id, int account_id, int exp, oldexp = g->member[i].exp; exp = g->member[i].exp = *((unsigned int *) data); g->exp += (exp - oldexp); - guild_calcinfo (g); // LvAbvťf + guild_calcinfo (g); // Lvă˘ăăĺ¤ć mapif_guild_basicinfochanged (guild_id, GBI_EXP, &g->exp, 4); } break; default: @@ -1644,7 +1644,7 @@ int mapif_parse_GuildMemberInfoChange (int fd, int guild_id, int account_id, return 0; } -// MhđEźĎXv +// ăŽăŤă彚čˇĺĺ¤ć´čŚćą int mapif_parse_GuildPosition (int fd, int guild_id, int idx, struct guild_position *p) { @@ -1664,7 +1664,7 @@ int mapif_parse_GuildPosition (int fd, int guild_id, int idx, return 0; } -// MhXLAbvv +// ăŽăŤăăšăăŤă˘ăăčŚćą int mapif_parse_GuildSkillUp (int fd, int guild_id, int skill_num, int account_id) { @@ -1691,7 +1691,7 @@ int mapif_parse_GuildSkillUp (int fd, int guild_id, int skill_num, return 0; } -// MhŻżv +// ăŽăŤăĺçčŚćą int mapif_parse_GuildAlliance (int fd, int guild_id1, int guild_id2, int account_id1, int account_id2, int flag) { @@ -1722,7 +1722,7 @@ int mapif_parse_GuildAlliance (int fd, int guild_id1, int guild_id2, } } else - { // ÖWđÁ + { // é˘äżč§Łćś for (i = 0; i < 2 - (flag & 1); i++) { for (j = 0; j < MAX_GUILDALLIANCE; j++) @@ -1741,7 +1741,7 @@ int mapif_parse_GuildAlliance (int fd, int guild_id1, int guild_id2, return 0; } -// MhmĎXv +// ăŽăŤăĺçĽĺ¤ć´čŚćą int mapif_parse_GuildNotice (int fd, int guild_id, const char *mes1, const char *mes2) { @@ -1757,7 +1757,7 @@ int mapif_parse_GuildNotice (int fd, int guild_id, const char *mes1, return mapif_guild_notice (g); } -// MhGuĎXv +// ăŽăŤăă¨ăłăăŹă ĺ¤ć´čŚćą int mapif_parse_GuildEmblem (int fd, int len, int guild_id, int dummy, const char *data) { @@ -1996,18 +1996,18 @@ int mapif_parse_GuildCastleDataSave (int fd, int castle_id, int index, int value return mapif_guild_castle_datasave (gc->castle_id, index, value); } -// Mh`FbNv +// ăŽăŤăăă§ăăŻčŚćą int mapif_parse_GuildCheck (int fd, int guild_id, int account_id, int char_id) { // What does this mean? Check if belong to another guild? return 0; } -// map server ŠçĚĘM -// EPpPbgĚÝđ͡éąĆ -// EpPbgˇf[^Íinter.cÉZbgľÄ¨ąĆ -// EpPbgˇ`FbNâARFIFOSKIPÍÄŃoľłĹsíęéĚĹsÁÄÍČçȢ -// EG[Čç0(false)Ať¤ĹȢČç1(true)𩦳ȯęÎČçȢ +// map server ăăăŽé俥 +// ăťďźăăąăăăŽăżč§Łćăăă㨠+// ăťăăąăăéˇăăźăżăŻinter.căŤăťăăăăŚăăă㨠+// ăťăăąăăéˇăă§ăăŻăăRFIFOSKIPăŻĺźăłĺşăĺ
ă§čĄăăăăŽă§čĄăŁăŚăŻăŞăăŞă +// ăťă¨ăŠăźăŞă0(false)ăăăă§ăŞăăŞă1(true)ăăăăăŞăăă°ăŞăăŞă int inter_guild_parse_frommap (int fd) { switch (RFIFOW (fd, 0)) @@ -2103,9 +2103,9 @@ int inter_guild_mapif_init (int fd) return mapif_guild_castle_alldataload (fd); } -// T[o[ŠçEŢviLípj +// ăľăźăăźăăčąéčŚćąďźăăŁăŠĺé¤ç¨ďź int inter_guild_leave (int guild_id, int account_id, int char_id) { return mapif_parse_GuildLeave (-1, guild_id, account_id, char_id, 0, - "**T[o[˝ß**"); + "**ăľăźăăźĺ˝äť¤**"); } diff --git a/src/char_sql/int_party.c b/src/char_sql/int_party.c index 0eccb83..45237de 100644 --- a/src/char_sql/int_party.c +++ b/src/char_sql/int_party.c @@ -368,7 +368,7 @@ struct party *search_partyname (char *str) return p; } -// EXPö˝ŞzĹŤéŠ`FbN +// EXPĺ
Źĺšłĺé
ă§ăăăăă§ă㯠int party_check_exp_share (struct party *p) { int i; @@ -415,9 +415,9 @@ int party_check_conflict (int party_id, int account_id, char *nick) } //------------------------------------------------------------------- -// map serverÖĚĘM +// map serveră¸ăŽé俥 -// p[eBěŹÂŰ +// ăăźăăŁä˝ćĺŻĺŚ int mapif_party_created (int fd, int account_id, struct party *p) { WFIFOW (fd, 0) = 0x3820; @@ -439,7 +439,7 @@ int mapif_party_created (int fd, int account_id, struct party *p) return 0; } -// p[eBîńŠÂŠç¸ +// ăăźăăŁć
ĺ ąčŚă¤ăăă int mapif_party_noinfo (int fd, int party_id) { WFIFOW (fd, 0) = 0x3821; @@ -450,7 +450,7 @@ int mapif_party_noinfo (int fd, int party_id) return 0; } -// p[eBîńÜĆßč +// ăăźăăŁć
ĺ ąăžă¨ăéă int mapif_party_info (int fd, struct party *p) { unsigned char buf[1024]; @@ -465,7 +465,7 @@ int mapif_party_info (int fd, struct party *p) return 0; } -// p[eBoÇÁÂŰ +// ăăźăăŁăĄăłăčż˝ĺ ĺŻĺŚ int mapif_party_memberadded (int fd, int party_id, int account_id, int flag) { WFIFOW (fd, 0) = 0x3822; @@ -476,7 +476,7 @@ int mapif_party_memberadded (int fd, int party_id, int account_id, int flag) return 0; } -// p[eBÝčĎXĘm +// ăăźăăŁč¨ĺŽĺ¤ć´éçĽ int mapif_party_optionchanged (int fd, struct party *p, int account_id, int flag) { @@ -495,7 +495,7 @@ int mapif_party_optionchanged (int fd, struct party *p, int account_id, return 0; } -// p[eBEŢĘm +// ăăźăăŁčąééçĽ int mapif_party_leaved (int party_id, int account_id, char *name) { unsigned char buf[64]; @@ -508,7 +508,7 @@ int mapif_party_leaved (int party_id, int account_id, char *name) return 0; } -// p[eB}bvXVĘm +// ăăźăăŁăăăć´ć°éçĽ int mapif_party_membermoved (struct party *p, int idx) { unsigned char buf[32]; @@ -522,7 +522,7 @@ int mapif_party_membermoved (struct party *p, int idx) return 0; } -// p[eBđUĘm +// ăăźăăŁč§ŁćŁéçĽ int mapif_party_broken (int party_id, int flag) { unsigned char buf[16]; @@ -534,7 +534,7 @@ int mapif_party_broken (int party_id, int flag) return 0; } -// p[eBŕž +// ăăźăăŁĺ
çşč¨ int mapif_party_message (int party_id, int account_id, char *mes, int len) { unsigned char buf[512]; @@ -548,7 +548,7 @@ int mapif_party_message (int party_id, int account_id, char *mes, int len) } //------------------------------------------------------------------- -// map serverŠçĚĘM +// map serverăăăŽé俥 // Create Party int mapif_parse_CreateParty (int fd, int account_id, char *name, char *nick, @@ -588,7 +588,7 @@ int mapif_parse_CreateParty (int fd, int account_id, char *name, char *nick, return 0; } -// p[eBîńv +// ăăźăăŁć
ĺ ąčŚćą int mapif_parse_PartyInfo (int fd, int party_id) { struct party *p = party_pt; @@ -606,7 +606,7 @@ int mapif_parse_PartyInfo (int fd, int party_id) return 0; } -// p[eBÇÁv +// ăăźăăŁčż˝ĺ čŚćą int mapif_parse_PartyAddMember (int fd, int party_id, int account_id, char *nick, char *map, int lv) { @@ -659,7 +659,7 @@ int mapif_parse_PartyAddMember (int fd, int party_id, int account_id, return 0; } -// p[eB[ÝčĎXv +// ăăźăăŁăźč¨ĺŽĺ¤ć´čŚćą int mapif_parse_PartyChangeOption (int fd, int party_id, int account_id, int exp, int item) { @@ -694,7 +694,7 @@ int mapif_parse_PartyChangeOption (int fd, int party_id, int account_id, return 0; } -// p[eBEŢv +// ăăźăăŁčąéčŚćą int mapif_parse_PartyLeave (int fd, int party_id, int account_id) { char t_member[24]; @@ -776,7 +776,7 @@ int mapif_parse_PartyLeave (int fd, int party_id, int account_id) } } if (party_check_empty (p) == 0) - mapif_party_info (-1, p); // ÜžlŞ˘éĚĹf[^M + mapif_party_info (-1, p); // ăžă äşşăăăăŽă§ăăźăżé俥 /* * else * inter_party_tosql(party_id,p); // Break the party if no member @@ -840,7 +840,7 @@ int mapif_parse_PartyChangeMap (int fd, int party_id, int account_id, return 0; } -// p[eBđUv +// ăăźăăŁč§ŁćŁčŚćą int mapif_parse_BreakParty (int fd, int party_id) { struct party *p; @@ -864,24 +864,24 @@ int mapif_parse_BreakParty (int fd, int party_id) return 0; } -// p[eBbZ[WM +// ăăźăăŁăĄăăťăźă¸é俥 int mapif_parse_PartyMessage (int fd, int party_id, int account_id, char *mes, int len) { return mapif_party_message (party_id, account_id, mes, len); } -// p[eB`FbNv +// ăăźăăŁăă§ăăŻčŚćą int mapif_parse_PartyCheck (int fd, int party_id, int account_id, char *nick) { return party_check_conflict (party_id, account_id, nick); } -// map server ŠçĚĘM -// EPpPbgĚÝđ͡éąĆ -// EpPbgˇf[^Íinter.cÉZbgľÄ¨ąĆ -// EpPbgˇ`FbNâARFIFOSKIPÍÄŃoľłĹsíęéĚĹsÁÄÍČçȢ -// EG[Čç0(false)Ať¤ĹȢČç1(true)𩦳ȯęÎČçȢ +// map server ăăăŽé俥 +// ăťďźăăąăăăŽăżč§Łćăăă㨠+// ăťăăąăăéˇăăźăżăŻinter.căŤăťăăăăŚăăă㨠+// ăťăăąăăéˇăă§ăăŻăăRFIFOSKIPăŻĺźăłĺşăĺ
ă§čĄăăăăŽă§čĄăŁăŚăŻăŞăăŞă +// ăťă¨ăŠăźăŞă0(false)ăăăă§ăŞăăŞă1(true)ăăăăăŞăăă°ăŞăăŞă int inter_party_parse_frommap (int fd) { switch (RFIFOW (fd, 0)) @@ -928,7 +928,7 @@ int inter_party_parse_frommap (int fd) return 1; } -// T[o[ŠçEŢviLípj +// ăľăźăăźăăčąéčŚćąďźăăŁăŠĺé¤ç¨ďź int inter_party_leave (int party_id, int account_id) { return mapif_parse_PartyLeave (-1, party_id, account_id); diff --git a/src/char_sql/int_storage.c b/src/char_sql/int_storage.c index 3dd0685..63198b1 100644 --- a/src/char_sql/int_storage.c +++ b/src/char_sql/int_storage.c @@ -234,7 +234,7 @@ int inter_storage_sql_init () return 1; } -// qÉf[^í +// ĺ庍ăăźăżĺé¤ int inter_storage_delete (int account_id) { sprintf (tmp_sql, "DELETE FROM `%s` WHERE `account_id`='%d'", storage_db, diff --git a/src/char_sql/inter.c b/src/char_sql/inter.c index 048d466..800beaf 100644 --- a/src/char_sql/inter.c +++ b/src/char_sql/inter.c @@ -15,8 +15,8 @@ #include "int_pet.h" #include "lock.h" -#define WISDATA_TTL (60*1000) // Wisf[^ĚśśÔ(60b) -#define WISDELLIST_MAX 256 // Wisf[^íXgĚvf +#define WISDATA_TTL (60*1000) // WisăăźăżăŽçĺćé(60ç§) +#define WISDELLIST_MAX 256 // Wisăăźăżĺé¤ăŞăšăăŽčŚç´ ć° struct accreg { @@ -601,13 +601,13 @@ int inter_parse_frommap (int fd) int cmd = RFIFOW (fd, 0); int len = 0; - // interIÇŠđ˛×é + // interéŻçŽĄč˝ăă調ăšă if (cmd < 0x3000 || cmd >= 0x3000 + (sizeof (inter_recv_packet_length) / sizeof (inter_recv_packet_length [0]))) return 0; - // pPbgˇđ˛×é + // ăăąăăéˇă調ăšă if ((len = inter_check_length (fd, inter_recv_packet_length[cmd - 0x3000])) == 0) diff --git a/src/char_sql/itemdb.c b/src/char_sql/itemdb.c index 3e1c22d..ee0801f 100644 --- a/src/char_sql/itemdb.c +++ b/src/char_sql/itemdb.c @@ -16,7 +16,7 @@ #define MAX_RANDITEM 2000 // ** ITEMDB_OVERRIDE_NAME_VERBOSE ** -// č`ˇéĆAitemdb.txtĆgrfĹźOŞŮČéęA\ŚľÜˇ. +// ĺŽçžŠăăă¨ăitemdb.txtă¨grfă§ĺĺăç°ăŞăĺ ´ĺă襨示ăăžă. //#define ITEMDB_OVERRIDE_NAME_VERBOSE 1 char item_db_db[256] = "item_db"; // added to specify item_db sql table [Valaris] @@ -24,7 +24,7 @@ char item_db_db[256] = "item_db"; // added to specify item_db sql table [Valar static struct dbt *item_db; /*========================================== - * DBĚő + * DBăŽć¤ç´˘ *------------------------------------------ */ struct item_data *itemdb_search (int nameid) @@ -93,7 +93,7 @@ int itemdb_isequip2 (struct item_data *data) } /*========================================== - * ACef[^x[XĚÇÝÝ + * ă˘ă¤ăă ăăźăżăăźăšăŽčŞăżčžźăż *------------------------------------------ */ static int itemdb_readdb (void) diff --git a/src/char_sql/itemdb.h b/src/char_sql/itemdb.h index 9f4274e..5d55c1b 100644 --- a/src/char_sql/itemdb.h +++ b/src/char_sql/itemdb.h @@ -18,8 +18,8 @@ struct item_data int look; int elv; int wlv; - char *use_script; // ńĆŠŕSąĚĹâ뤊ČĆ - char *equip_script; // U,häĚŽŤÝčŕąĚĹÂ\ŠČ? + char *use_script; // ĺ垊ă¨ăăĺ
¨é¨ăăŽä¸ă§ăăăăăŞă¨ + char *equip_script; // ćťć,é˛ĺžĄăŽĺąć§č¨ĺŽăăăŽä¸ă§ĺŻč˝ăăŞ? char available; }; diff --git a/src/common/db.c b/src/common/db.c index 7a4fa70..07b08c8 100644 --- a/src/common/db.c +++ b/src/common/db.c @@ -211,7 +211,7 @@ static void db_rebalance (struct dbn *p, struct dbn **root) { p->color = RED; while (p != *root && p->parent->color == RED) - { // rootÍK¸ĹeÍÔ˘ĚĹeĚeÍK¸śÝˇé + { // rootăŻĺż
ăéťă§čŚŞăŻčľ¤ăăŽă§čŚŞăŽčŚŞăŻĺż
ăĺĺ¨ăă if (p->parent == p->parent->parent->left) { struct dbn *y = p->parent->parent->right; @@ -276,7 +276,7 @@ static void db_rebalance_erase (struct dbn *z, struct dbn **root) x = y->right; } if (y != z) - { // śEŞźűÜÁĢ˝ yđzĚĘuÉÁÄŤÄzđŠšé + { // 塌ĺłă严ćšĺăžăŁăŚăăć yăzăŽä˝ç˝ŽăŤćăŁăŚăăŚză澎ăăă z->left->parent = y; y->left = z->left; if (y != z->right) @@ -305,7 +305,7 @@ static void db_rebalance_erase (struct dbn *z, struct dbn **root) y = z; } else - { // ÇżçŠó˘Ä˘˝ę xđzĚĘuÉÁÄŤÄzđŠšé + { // ăŠăĄăă犺ăăŚăăĺ ´ĺ xăzăŽä˝ç˝ŽăŤćăŁăŚăăŚză澎ăăă x_parent = y->parent; if (x) x->parent = y->parent; @@ -316,9 +316,9 @@ static void db_rebalance_erase (struct dbn *z, struct dbn **root) else z->parent->right = x; } - // ąąÜĹFĚڎ̢ÄĘíĚ2ŞŘĆŻś + // ăăăžă§č˛ăŽç§ťĺăŽé¤ăăŚé常ăŽ2ĺć¨ă¨ĺă if (y->color != RED) - { // ÔŞÁŚéŞÉÍeżłľ + { // 辤ăćśăăĺăŤăŻĺ˝ąéżçĄă while (x != *root && (x == NULL || x->color == BLACK)) if (x == x_parent->left) { @@ -498,7 +498,7 @@ void db_foreach (struct dbt *table, int (*func) (void *, void *, va_list), ...) { int i, sp; - // red-black treeČĚĹ64ÂstackŞ ęÎ2^32Âm[hÜĹĺäv + // red-black treeăŞăŽă§64ĺstackăăăă°2^32ĺăăźăăžă§ĺ¤§ä¸ĺ¤Ť struct dbn *p, *pn, *stack[64]; va_list ap; diff --git a/src/common/lock.c b/src/common/lock.c index 7409baf..bed657f 100644 --- a/src/common/lock.c +++ b/src/common/lock.c @@ -4,17 +4,17 @@ #include "lock.h" #include "socket.h" -// ŤÝt@CĚŰě -// iŤÝŞIíéÜĹAt@CđŰǾĨj +// ć¸ăčžźăżăăĄă¤ăŤăŽäżčˇĺŚç +// ďźć¸ăčžźăżăçľăăăžă§ăć§ăăĄă¤ăŤăäżçŽĄăăŚăăďź -// Vľ˘t@CĚŤÝJn +// ć°ăăăăĄă¤ăŤăŽć¸ăčžźăżéĺ§ FILE *lock_fopen (const char *filename, int *info) { char newfile[512]; FILE *fp; int no = getpid (); - // ŔSČt@Cźđžéi貍j + // ĺŽĺ
¨ăŞăăĄă¤ăŤĺăĺžăďźććăďź do { sprintf (newfile, "%s_%d.tmp", filename, no++); @@ -24,7 +24,7 @@ FILE *lock_fopen (const char *filename, int *info) return fopen_ (newfile, "w"); } -// t@CđíVt@Cđl[ +// ć§ăăĄă¤ăŤăĺé¤ďźć°ăăĄă¤ăŤăăŞăăźă int lock_fclose (FILE * fp, const char *filename, int *info) { int ret = 0; @@ -34,7 +34,7 @@ int lock_fclose (FILE * fp, const char *filename, int *info) ret = fclose_ (fp); sprintf (newfile, "%s_%d.tmp", filename, *info); remove (filename); - // ąĚ^C~OĹżéĆĹŤB + // ăăŽăżă¤ăăłă°ă§č˝ăĄăă¨ććŞă rename (newfile, filename); return ret; } diff --git a/src/common/mmo.h b/src/common/mmo.h index 11d37b1..279bf4a 100644 --- a/src/common/mmo.h +++ b/src/common/mmo.h @@ -8,9 +8,9 @@ #include "utils.h" // LCCWIN32 #ifdef CYGWIN -#define RETCODE "\r\n" // (CR/LFFWindowsn) +#define RETCODE "\r\n" // (CR/LFďźWindowsçłť) #else -#define RETCODE "\n" // (LFFUnixnj +#define RETCODE "\n" // (LFďźUnixçłťďź #endif #define FIFOSIZE_SERVERLINK 256*1024 @@ -278,13 +278,13 @@ struct square enum { - GBI_EXP = 1, // MhĚEXP - GBI_GUILDLV = 2, // MhĚLv - GBI_SKILLPOINT = 3, // MhĚXL|Cg - GBI_SKILLLV = 4, // MhXLLv + GBI_EXP = 1, // ăŽăŤăăŽEXP + GBI_GUILDLV = 2, // ăŽăŤăăŽLv + GBI_SKILLPOINT = 3, // ăŽăŤăăŽăšăăŤăă¤ăłă + GBI_SKILLLV = 4, // ăŽăŤăăšăăŤLv - GMI_POSITION = 0, // o[ĚđEĎX - GMI_EXP = 1, // o[ĚEXP + GMI_POSITION = 0, // ăĄăłăăźăŽĺ˝ščˇĺ¤ć´ + GMI_EXP = 1, // ăĄăłăăźăŽEXP }; diff --git a/src/common/nullpo.c b/src/common/nullpo.c index daeca9f..3205293 100644 --- a/src/common/nullpo.c +++ b/src/common/nullpo.c @@ -2,13 +2,13 @@ #include <stdarg.h> #include <string.h> #include "nullpo.h" -// #include "logs.h" // zÎľÄÝé +// #include "logs.h" // ĺ¸çłăăŚăżă static void nullpo_info_core (const char *file, int line, const char *func, const char *fmt, va_list ap); /*====================================== - * Null`FbN yŃ îńoÍ + * Nullăă§ă㯠ĺăł ć
ĺ ąĺşĺ *-------------------------------------- */ int nullpo_chk_f (const char *file, int line, const char *func, @@ -36,7 +36,7 @@ int nullpo_chk (const char *file, int line, const char *func, } /*====================================== - * nullpoîńoÍ(OÄoľüŻbp) + * nullpoć
ĺ ąĺşĺ(ĺ¤é¨ĺźĺşăĺăăŠăă) *-------------------------------------- */ void nullpo_info_f (const char *file, int line, const char *func, @@ -55,7 +55,7 @@ void nullpo_info (const char *file, int line, const char *func) } /*====================================== - * nullpoîńoÍ(Main) + * nullpoć
ĺ ąĺşĺ(Main) *-------------------------------------- */ static void nullpo_info_core (const char *file, int line, const char *func, @@ -74,13 +74,13 @@ static void nullpo_info_core (const char *file, int line, const char *func, { vprintf (fmt, ap); - // ĹăÉüsľ˝ŠmF + // ćĺžăŤćščĄăăăç˘şčŞ if (fmt[strlen (fmt) - 1] != '\n') printf ("\n"); } } printf ("--- end nullpo info ----------------------------------------\n"); - // ąąçĹnullpoOđt@CÉŤoš˝ç - // ÜĆßÄńoĹŤéČĆvÁĢ˝čB + // ăăăă§nullpoăă°ăăăĄă¤ăŤăŤć¸ăĺşăăă + // ăžă¨ăăŚćĺşă§ăăăŞă¨ćăŁăŚăăăă } diff --git a/src/common/nullpo.h b/src/common/nullpo.h index bac92cd..baeacdc 100644 --- a/src/common/nullpo.h +++ b/src/common/nullpo.h @@ -2,8 +2,8 @@ #define _NULLPO_H_ #define NULLPO_CHECK 1 - // SĚĚXCb`đ鞾Ģéwb_Ş ęÎ - // ťąÉÚŽľÄ˘˝žŻéĆ + // ĺ
¨ä˝ăŽăšă¤ăăă厣č¨ăăŚăăăăăăăăă° + // ăăăŤç§ťĺăăŚăăă ăă㨠#if __STDC_VERSION__ < 199901L # if __GNUC__ >= 2 @@ -24,52 +24,52 @@ *---------------------------------------------------------------------------- */ /*====================================== - * Null`FbN yŃ îńoÍă return - *EWJˇéĆifĆŠreturnŞoéĚĹ - * ęsPĚĹgÁÄžł˘B - *Enullpo_ret(x = func()); - * Ěć¤Čgp@ŕzčľÄ˘ÜˇB + * Nullăă§ă㯠ĺăł ć
ĺ ąĺşĺĺž return + *ăťĺąéăăă¨ifă¨ăreturnçăĺşăăŽă§ + * ä¸čĄĺä˝ă§ä˝żăŁăŚăă ăăă + *ăťnullpo_ret(x = func()); + * ăŽăăăŞä˝żç¨ćłăćłĺŽăăŚăăžăă *-------------------------------------- * nullpo_ret(t) - * ßčl 0Ĺč - * [ř] - * t `FbNÎŰ + * ćťăĺ¤ 0ĺşĺŽ + * [ĺźć°] + * t ăă§ăăŻĺŻžčąĄ *-------------------------------------- * nullpo_retv(t) - * ßčl Čľ - * [ř] - * t `FbNÎŰ + * ćťăĺ¤ ăŞă + * [ĺźć°] + * t ăă§ăăŻĺŻžčąĄ *-------------------------------------- * nullpo_retr(ret, t) - * ßčl wč - * [ř] + * ćťăĺ¤ ćĺŽ + * [ĺźć°] * ret return(ret); - * t `FbNÎŰ + * t ăă§ăăŻĺŻžčąĄ *-------------------------------------- * nullpo_ret_f(t, fmt, ...) - * Ú×îńoÍp - * ßčl 0 - * [ř] - * t `FbNÎŰ - * fmt ... vprintfÉnłęé - * őlâÖWĎĚŤoľČÇÉ + * 芳細ć
ĺ ąĺşĺç¨ + * ćťăĺ¤ 0 + * [ĺźć°] + * t ăă§ăăŻĺŻžčąĄ + * fmt ... vprintfăŤć¸Ąăăă + * ĺčăé˘äżĺ¤ć°ăŽć¸ăĺşăăŞăŠăŤ *-------------------------------------- * nullpo_retv_f(t, fmt, ...) - * Ú×îńoÍp - * ßčl Čľ - * [ř] - * t `FbNÎŰ - * fmt ... vprintfÉnłęé - * őlâÖWĎĚŤoľČÇÉ + * 芳細ć
ĺ ąĺşĺç¨ + * ćťăĺ¤ ăŞă + * [ĺźć°] + * t ăă§ăăŻĺŻžčąĄ + * fmt ... vprintfăŤć¸Ąăăă + * ĺčăé˘äżĺ¤ć°ăŽć¸ăĺşăăŞăŠăŤ *-------------------------------------- * nullpo_retr_f(ret, t, fmt, ...) - * Ú×îńoÍp - * ßčl wč - * [ř] + * 芳細ć
ĺ ąĺşĺç¨ + * ćťăĺ¤ ćĺŽ + * [ĺźć°] * ret return(ret); - * t `FbNÎŰ - * fmt ... vprintfÉnłęé - * őlâÖWĎĚŤoľČÇÉ + * t ăă§ăăŻĺŻžčąĄ + * fmt ... vprintfăŤć¸Ąăăă + * ĺčăé˘äżĺ¤ć°ăŽć¸ăĺşăăŞăŠăŤ *-------------------------------------- */ @@ -84,9 +84,9 @@ #define nullpo_retr(ret, t) \ if (nullpo_chk(NLP_MARK, (void *)(t))) {return(ret);} -// ÂĎř}NÉÖˇéđRpC +// ĺŻĺ¤ĺźć°ăăŻăăŤé˘ăăćĄäťśăłăłăă¤ăŤ #if __STDC_VERSION__ >= 199901L -/* C99ÉÎ */ +/* C99ăŤĺŻžĺż */ #define nullpo_ret_f(t, fmt, ...) \ if (nullpo_chk_f(NLP_MARK, (void *)(t), (fmt), __VA_ARGS__)) {return(0);} @@ -97,7 +97,7 @@ if (nullpo_chk_f(NLP_MARK, (void *)(t), (fmt), __VA_ARGS__)) {return(ret);} #elif __GNUC__ >= 2 -/* GCCp */ +/* GCCç¨ */ #define nullpo_ret_f(t, fmt, args...) \ if (nullpo_chk_f(NLP_MARK, (void *)(t), (fmt), ## args)) {return(0);} @@ -109,7 +109,7 @@ #else -/* ťĚźĚęEEE orz */ +/* ăăŽäťăŽĺ ´ĺăťăťăť orz */ #endif @@ -117,28 +117,28 @@ /* No Nullpo check */ // if((t)){;} -// Ǣű@Şv˘ÂŠČŠÁ˝ĚĹEEEę÷ĚôšB -// ę[jOÍoȢ͸ +// čŻăćšćłăćăă¤ăăŞăăŁăăŽă§ăťăťăťčŚčăŽçă§ăă +// ä¸ĺżăŻăźăăłă°ăŻĺşăŞăăŻă #define nullpo_ret(t) if((t)){;} #define nullpo_retv(t) if((t)){;} #define nullpo_retr(ret, t) if((t)){;} -// ÂĎř}NÉÖˇéđRpC +// ĺŻĺ¤ĺźć°ăăŻăăŤé˘ăăćĄäťśăłăłăă¤ăŤ #if __STDC_VERSION__ >= 199901L -/* C99ÉÎ */ +/* C99ăŤĺŻžĺż */ #define nullpo_ret_f(t, fmt, ...) if((t)){;} #define nullpo_retv_f(t, fmt, ...) if((t)){;} #define nullpo_retr_f(ret, t, fmt, ...) if((t)){;} #elif __GNUC__ >= 2 -/* GCCp */ +/* GCCç¨ */ #define nullpo_ret_f(t, fmt, args...) if((t)){;} #define nullpo_retv_f(t, fmt, args...) if((t)){;} #define nullpo_retr_f(ret, t, fmt, args...) if((t)){;} #else -/* ťĚźĚęEEE orz */ +/* ăăŽäťăŽĺ ´ĺăťăťăť orz */ #endif #endif /* NULLPO_CHECK */ @@ -149,14 +149,14 @@ */ /*====================================== * nullpo_chk - * Null`FbN yŃ îńoÍ - * [ř] + * Nullăă§ă㯠ĺăł ć
ĺ ąĺşĺ + * [ĺźć°] * file __FILE__ * line __LINE__ - * func __func__ (Öź) - * ąęçÉÍ NLP_MARK đg¤Ćć˘ - * target `FbNÎŰ - * [Ôčl] + * func __func__ (é˘ć°ĺ) + * ăăăăŤăŻ NLP_MARK ă使ăă¨ăă + * target ăă§ăăŻĺŻžčąĄ + * [čżăĺ¤] * 0 OK * 1 NULL *-------------------------------------- @@ -166,16 +166,16 @@ int nullpo_chk (const char *file, int line, const char *func, /*====================================== * nullpo_chk_f - * Null`FbN yŃ Ú×ČîńoÍ - * [ř] + * Nullăă§ă㯠ĺ㳠芳細ăŞć
ĺ ąĺşĺ + * [ĺźć°] * file __FILE__ * line __LINE__ - * func __func__ (Öź) - * ąęçÉÍ NLP_MARK đg¤Ćć˘ - * target `FbNÎŰ - * fmt ... vprintfÉnłęé - * őlâÖWĎĚŤoľČÇÉ - * [Ôčl] + * func __func__ (é˘ć°ĺ) + * ăăăăŤăŻ NLP_MARK ă使ăă¨ăă + * target ăă§ăăŻĺŻžčąĄ + * fmt ... vprintfăŤć¸Ąăăă + * ĺčăé˘äżĺ¤ć°ăŽć¸ăĺşăăŞăŠăŤ + * [čżăĺ¤] * 0 OK * 1 NULL *-------------------------------------- @@ -186,26 +186,26 @@ int nullpo_chk_f (const char *file, int line, const char *func, /*====================================== * nullpo_info - * nullpoîńoÍ - * [ř] + * nullpoć
ĺ ąĺşĺ + * [ĺźć°] * file __FILE__ * line __LINE__ - * func __func__ (Öź) - * ąęçÉÍ NLP_MARK đg¤Ćć˘ + * func __func__ (é˘ć°ĺ) + * ăăăăŤăŻ NLP_MARK ă使ăă¨ăă *-------------------------------------- */ void nullpo_info (const char *file, int line, const char *func); /*====================================== * nullpo_info_f - * nullpoÚ×îńoÍ - * [ř] + * nullpo芳細ć
ĺ ąĺşĺ + * [ĺźć°] * file __FILE__ * line __LINE__ - * func __func__ (Öź) - * ąęçÉÍ NLP_MARK đg¤Ćć˘ - * fmt ... vprintfÉnłęé - * őlâÖWĎĚŤoľČÇÉ + * func __func__ (é˘ć°ĺ) + * ăăăăŤăŻ NLP_MARK ă使ăă¨ăă + * fmt ... vprintfăŤć¸Ąăăă + * ĺčăé˘äżĺ¤ć°ăŽć¸ăĺşăăŞăŠăŤ *-------------------------------------- */ void nullpo_info_f (const char *file, int line, const char *func, diff --git a/src/common/timer.c b/src/common/timer.c index d9552fe..fca6f42 100644 --- a/src/common/timer.c +++ b/src/common/timer.c @@ -253,7 +253,7 @@ int delete_timer (int id, int (*func) (int, unsigned int, int, int)) search_timer_func_list (func)); return -2; } - // ťĚ¤żÁŚéÉÜŠšé + // ăăŽăăĄćśăăăŤăžăăă timer_data[id].func = NULL; timer_data[id].type = TIMER_ONCE_AUTODEL; timer_data[id].tick -= 60 * 60 * 1000; @@ -298,10 +298,10 @@ int do_timer (unsigned int tick) { if (DIFF_TICK (timer_data[i].tick, tick) < -1000) { - // 1bČăĚĺČxŞśľÄ˘éĚĹA - // timer^C~OđťÝlơéĹ - // ÄŃoľ^C~O(řĚtick)ÎĹľÄé - // timerÖĚń^C~Ođxçšé + // 1ç§äťĽä¸ăŽĺ¤§ĺš
ăŞé
ĺťśăçşçăăŚăăăŽă§ă + // timerĺŚçăżă¤ăăłă°ăçžĺ¨ĺ¤ă¨ăăäşă§ + // ĺźăłĺşăćăżă¤ăăłă°(ĺźć°ăŽtick)ç¸ĺŻžă§ĺŚçăăŚă + // timeré˘ć°ăŽćŹĄĺĺŚçăżă¤ăăłă°ăé
ăăă timer_data[i].func (i, tick, timer_data[i].id, timer_data[i].data); } diff --git a/src/common/version.h b/src/common/version.h index 60c9fca..cd9808e 100644 --- a/src/common/version.h +++ b/src/common/version.h @@ -14,14 +14,14 @@ #define ATHENA_SERVER_INTER 4 // inter server #define ATHENA_SERVER_MAP 8 // map server -// ATHENA_MOD_VERSIONÍpb`ÔšB -// ąęÍłÉĎŚČÄŕCŞü˘˝çĎŚéöxĚľ˘ĹB -// ińAbv[hĚxÉĎXˇéĚŕĘ|ĆvíęéľAťŕťŕ -// @ąĚÚđQơélŞ˘éŠÇ¤ŠĹ^➊çBj -// ťĚöxĚľ˘ČĚĹAT[o[Éâ˘íšé¤ŕA ÜĹÚŔöxĚľ˘Ĺ -// ńÜčMpľČ˘ąĆB -// IsnapshotĚâAĺŤČĎXŞ Á˝ęÍÝčľÄŮľ˘ĹˇB -// CžęĚdlăAĹÉ0đtŻéĆ8iÉČéĚĹÔáŚČ˘Ĺşł˘B +// ATHENA_MOD_VERSIONăŻăăăçŞĺˇă§ăă +// ăăăŻçĄçăŤĺ¤ăăŞăăŚăć°ăĺăăăĺ¤ăăç¨ĺşŚăŽćąăă§ă +// ďźćŻĺă˘ăăăăźăăŽĺşŚăŤĺ¤ć´ăăăŽăé˘ĺă¨ćăăăăăăăăă +// ăăăŽé
çŽăĺç
§ăăäşşăăăăăŠăăă§çĺă ăăăďź +// ăăŽç¨ĺşŚăŽćąăăŞăŽă§ăăľăźăăźăŤĺăĺăăăĺ´ăăăăăžă§çŽĺŽç¨ĺşŚăŽćąă㧠+// ăăăžă俥ç¨ăăŞăăă¨ă +// éŻsnapshotăŽćăă大ăăŞĺ¤ć´ăăăŁăĺ ´ĺăŻč¨ĺŽăăŚăťăăă§ăă +// Cč¨čŞăŽäťć§ä¸ăćĺăŤ0ăäťăăă¨8é˛ć°ăŤăŞăăŽă§ééăăŞăă§ä¸ăăă #define ATHENA_MOD_VERSION 1052 // mod version (patch No.) #endif diff --git a/src/login_sql/login.c b/src/login_sql/login.c index cc59f19..db58026 100644 --- a/src/login_sql/login.c +++ b/src/login_sql/login.c @@ -1707,7 +1707,7 @@ int parse_login (int fd) //------------------------------------------------- // Return numerical value of a switch configuration -// on/off, english, français, deutsch, espańol +// on/off, english, frančťis, deutsch, espaîŤl //------------------------------------------------- int config_switch (const char *str) { diff --git a/src/map/battle.c b/src/map/battle.c index 9d868c7..f81aaf0 100644 --- a/src/map/battle.c +++ b/src/map/battle.c @@ -29,8 +29,8 @@ int attr_fix_table[4][10][10]; struct Battle_Config battle_config; /*========================================== - * ń_ÔĚŁđÔˇ - * ßčÍŽĹ0Čă + * äşçšéăŽčˇé˘ăčżă + * ćťăăŻć´ć°ă§0äťĽä¸ *------------------------------------------ */ static int distance (int x0, int y0, int x1, int y1) @@ -43,8 +43,8 @@ static int distance (int x0, int y0, int x1, int y1) } /*========================================== - * ŠŞđbNľÄ˘éÎŰĚđÔˇ(Äp) - * ßčÍŽĹ0Čă + * čŞĺăăăăŻăăŚăă寞蹥ăŽć°ăčżă(ćąç¨) + * ćťăăŻć´ć°ă§0äťĽä¸ *------------------------------------------ */ int battle_counttargeted (struct block_list *bl, struct block_list *src, @@ -60,8 +60,8 @@ int battle_counttargeted (struct block_list *bl, struct block_list *src, } /*========================================== - * ÎŰĚClassđÔˇ(Äp) - * ßčÍŽĹ0Čă + * 寞蹥ăŽClassăčżă(ćąç¨) + * ćťăăŻć´ć°ă§0äťĽä¸ *------------------------------------------ */ int battle_get_class (struct block_list *bl) @@ -76,8 +76,8 @@ int battle_get_class (struct block_list *bl) } /*========================================== - * ÎŰĚűüđÔˇ(Äp) - * ßčÍŽĹ0Čă + * 寞蹥ăŽćšĺăčżă(ćąç¨) + * ćťăăŻć´ć°ă§0äťĽä¸ *------------------------------------------ */ int battle_get_dir (struct block_list *bl) @@ -92,8 +92,8 @@ int battle_get_dir (struct block_list *bl) } /*========================================== - * ÎŰĚxđÔˇ(Äp) - * ßčÍŽĹ0Čă + * 寞蹥ăŽăŹăăŤăčżă(ćąç¨) + * ćťăăŻć´ć°ă§0äťĽä¸ *------------------------------------------ */ int battle_get_lv (struct block_list *bl) @@ -108,8 +108,8 @@ int battle_get_lv (struct block_list *bl) } /*========================================== - * ÎŰĚËöđÔˇ(Äp) - * ßčÍŽĹ0Čă + * 寞蹥ăŽĺ°ç¨ăčżă(ćąç¨) + * ćťăăŻć´ć°ă§0äťĽä¸ *------------------------------------------ */ int battle_get_range (struct block_list *bl) @@ -124,8 +124,8 @@ int battle_get_range (struct block_list *bl) } /*========================================== - * ÎŰĚHPđÔˇ(Äp) - * ßčÍŽĹ0Čă + * 寞蹥ăŽHPăčżă(ćąç¨) + * ćťăăŻć´ć°ă§0äťĽä¸ *------------------------------------------ */ int battle_get_hp (struct block_list *bl) @@ -140,8 +140,8 @@ int battle_get_hp (struct block_list *bl) } /*========================================== - * ÎŰĚMHPđÔˇ(Äp) - * ßčÍŽĹ0Čă + * 寞蹥ăŽMHPăčżă(ćąç¨) + * ćťăăŻć´ć°ă§0äťĽä¸ *------------------------------------------ */ int battle_get_max_hp (struct block_list *bl) @@ -183,8 +183,8 @@ int battle_get_max_hp (struct block_list *bl) } /*========================================== - * ÎŰĚStrđÔˇ(Äp) - * ßčÍŽĹ0Čă + * 寞蹥ăŽStrăčżă(ćąç¨) + * ćťăăŻć´ć°ă§0äťĽä¸ *------------------------------------------ */ int battle_get_str (struct block_list *bl) @@ -205,15 +205,15 @@ int battle_get_str (struct block_list *bl) && bl->type != BL_PC) str += 4; if (sc_data[SC_BLESSING].timer != -1 && bl->type != BL_PC) - { // ubVO + { // ăăŹăăˇăłă° int race = battle_get_race (bl); if (battle_check_undead (race, battle_get_elem_type (bl)) || race == 6) - str >>= 1; // Ť /s + str >>= 1; // ćŞ é/ä¸ćť else - str += sc_data[SC_BLESSING].val1; // ťĚź + str += sc_data[SC_BLESSING].val1; // ăăŽäť } - if (sc_data[SC_TRUESIGHT].timer != -1 && bl->type != BL_PC) // gD[TCg + if (sc_data[SC_TRUESIGHT].timer != -1 && bl->type != BL_PC) // ăăĽăŤăźăľă¤ă str += 5; } if (str < 0) @@ -222,8 +222,8 @@ int battle_get_str (struct block_list *bl) } /*========================================== - * ÎŰĚAgiđÔˇ(Äp) - * ßčÍŽĹ0Čă + * 寞蹥ăŽAgiăčżă(ćąç¨) + * ćťăăŻć´ć°ă§0äťĽä¸ *------------------------------------------ */ @@ -241,19 +241,19 @@ int battle_get_agi (struct block_list *bl) if (sc_data) { - if (sc_data[SC_INCREASEAGI].timer != -1 && sc_data[SC_QUAGMIRE].timer == -1 && sc_data[SC_DONTFORGETME].timer == -1 && bl->type != BL_PC) // ŹxÁ(PCÍpc.cĹ) + if (sc_data[SC_INCREASEAGI].timer != -1 && sc_data[SC_QUAGMIRE].timer == -1 && sc_data[SC_DONTFORGETME].timer == -1 && bl->type != BL_PC) // é庌ĺ˘ĺ (PCăŻpc.că§) agi += 2 + sc_data[SC_INCREASEAGI].val1; if (sc_data[SC_CONCENTRATE].timer != -1 && sc_data[SC_QUAGMIRE].timer == -1 && bl->type != BL_PC) agi += agi * (2 + sc_data[SC_CONCENTRATE].val1) / 100; - if (sc_data[SC_DECREASEAGI].timer != -1) // Źx¸ + if (sc_data[SC_DECREASEAGI].timer != -1) // é庌ć¸ĺ° agi -= 2 + sc_data[SC_DECREASEAGI].val1; - if (sc_data[SC_QUAGMIRE].timer != -1) // N@O}CA + if (sc_data[SC_QUAGMIRE].timer != -1) // ăŻăĄă°ăă¤ă˘ agi >>= 1; - if (sc_data[SC_TRUESIGHT].timer != -1 && bl->type != BL_PC) // gD[TCg + if (sc_data[SC_TRUESIGHT].timer != -1 && bl->type != BL_PC) // ăăĽăŤăźăľă¤ă agi += 5; } if (agi < 0) @@ -262,8 +262,8 @@ int battle_get_agi (struct block_list *bl) } /*========================================== - * ÎŰĚVitđÔˇ(Äp) - * ßčÍŽĹ0Čă + * 寞蹥ăŽVităčżă(ćąç¨) + * ćťăăŻć´ć°ă§0äťĽä¸ *------------------------------------------ */ int battle_get_vit (struct block_list *bl) @@ -281,7 +281,7 @@ int battle_get_vit (struct block_list *bl) { if (sc_data[SC_STRIPARMOR].timer != -1 && bl->type != BL_PC) vit = vit * 60 / 100; - if (sc_data[SC_TRUESIGHT].timer != -1 && bl->type != BL_PC) // gD[TCg + if (sc_data[SC_TRUESIGHT].timer != -1 && bl->type != BL_PC) // ăăĽăŤăźăľă¤ă vit += 5; } @@ -291,8 +291,8 @@ int battle_get_vit (struct block_list *bl) } /*========================================== - * ÎŰĚIntđÔˇ(Äp) - * ßčÍŽĹ0Čă + * 寞蹥ăŽIntăčżă(ćąç¨) + * ćťăăŻć´ć°ă§0äťĽä¸ *------------------------------------------ */ int battle_get_int (struct block_list *bl) @@ -310,17 +310,17 @@ int battle_get_int (struct block_list *bl) if (sc_data) { if (sc_data[SC_BLESSING].timer != -1 && bl->type != BL_PC) - { // ubVO + { // ăăŹăăˇăłă° int race = battle_get_race (bl); if (battle_check_undead (race, battle_get_elem_type (bl)) || race == 6) - int_ >>= 1; // Ť /s + int_ >>= 1; // ćŞ é/ä¸ćť else - int_ += sc_data[SC_BLESSING].val1; // ťĚź + int_ += sc_data[SC_BLESSING].val1; // ăăŽäť } if (sc_data[SC_STRIPHELM].timer != -1 && bl->type != BL_PC) int_ = int_ * 60 / 100; - if (sc_data[SC_TRUESIGHT].timer != -1 && bl->type != BL_PC) // gD[TCg + if (sc_data[SC_TRUESIGHT].timer != -1 && bl->type != BL_PC) // ăăĽăŤăźăľă¤ă int_ += 5; } if (int_ < 0) @@ -329,8 +329,8 @@ int battle_get_int (struct block_list *bl) } /*========================================== - * ÎŰĚDexđÔˇ(Äp) - * ßčÍŽĹ0Čă + * 寞蹥ăŽDexăčżă(ćąç¨) + * ćťăăŻć´ć°ă§0äťĽä¸ *------------------------------------------ */ int battle_get_dex (struct block_list *bl) @@ -352,18 +352,18 @@ int battle_get_dex (struct block_list *bl) dex += dex * (2 + sc_data[SC_CONCENTRATE].val1) / 100; if (sc_data[SC_BLESSING].timer != -1 && bl->type != BL_PC) - { // ubVO + { // ăăŹăăˇăłă° int race = battle_get_race (bl); if (battle_check_undead (race, battle_get_elem_type (bl)) || race == 6) - dex >>= 1; // Ť /s + dex >>= 1; // ćŞ é/ä¸ćť else - dex += sc_data[SC_BLESSING].val1; // ťĚź + dex += sc_data[SC_BLESSING].val1; // ăăŽäť } - if (sc_data[SC_QUAGMIRE].timer != -1) // N@O}CA + if (sc_data[SC_QUAGMIRE].timer != -1) // ăŻăĄă°ăă¤ă˘ dex >>= 1; - if (sc_data[SC_TRUESIGHT].timer != -1 && bl->type != BL_PC) // gD[TCg + if (sc_data[SC_TRUESIGHT].timer != -1 && bl->type != BL_PC) // ăăĽăŤăźăľă¤ă dex += 5; } if (dex < 0) @@ -372,8 +372,8 @@ int battle_get_dex (struct block_list *bl) } /*========================================== - * ÎŰĚLukđÔˇ(Äp) - * ßčÍŽĹ0Čă + * 寞蹥ăŽLukăčżă(ćąç¨) + * ćťăăŻć´ć°ă§0äťĽä¸ *------------------------------------------ */ int battle_get_luk (struct block_list *bl) @@ -390,11 +390,11 @@ int battle_get_luk (struct block_list *bl) if (sc_data) { - if (sc_data[SC_GLORIA].timer != -1 && bl->type != BL_PC) // OA(PCÍpc.cĹ) + if (sc_data[SC_GLORIA].timer != -1 && bl->type != BL_PC) // ă°ăăŞă˘(PCăŻpc.că§) luk += 30; - if (sc_data[SC_CURSE].timer != -1) // ô˘ + if (sc_data[SC_CURSE].timer != -1) // ĺŞă luk = 0; - if (sc_data[SC_TRUESIGHT].timer != -1 && bl->type != BL_PC) // gD[TCg + if (sc_data[SC_TRUESIGHT].timer != -1 && bl->type != BL_PC) // ăăĽăŤăźăľă¤ă luk += 5; } if (luk < 0) @@ -403,8 +403,8 @@ int battle_get_luk (struct block_list *bl) } /*========================================== - * ÎŰĚFleeđÔˇ(Äp) - * ßčÍŽĹ1Čă + * 寞蹥ăŽFleeăčżă(ćąç¨) + * ćťăăŻć´ć°ă§1äťĽä¸ *------------------------------------------ */ int battle_get_flee (struct block_list *bl) @@ -427,9 +427,9 @@ int battle_get_flee (struct block_list *bl) (sc_data[SC_WHISTLE].val3 >> 16)) / 100; if (sc_data[SC_BLIND].timer != -1 && bl->type != BL_PC) flee -= flee * 25 / 100; - if (sc_data[SC_WINDWALK].timer != -1 && bl->type != BL_PC) // EBhEH[N + if (sc_data[SC_WINDWALK].timer != -1 && bl->type != BL_PC) // ăŚăŁăłăăŚăŠăźăŻ flee += flee * (sc_data[SC_WINDWALK].val2) / 100; - if (sc_data[SC_SPIDERWEB].timer != -1 && bl->type != BL_PC) //XpC_[EFu + if (sc_data[SC_SPIDERWEB].timer != -1 && bl->type != BL_PC) //ăšăă¤ăăźăŚă§ă flee -= flee * 50 / 100; if (battle_is_unarmed (bl)) @@ -442,8 +442,8 @@ int battle_get_flee (struct block_list *bl) } /*========================================== - * ÎŰĚHitđÔˇ(Äp) - * ßčÍŽĹ1Čă + * 寞蹥ăŽHităčżă(ćąç¨) + * ćťăăŻć´ć°ă§1äťĽä¸ *------------------------------------------ */ int battle_get_hit (struct block_list *bl) @@ -465,11 +465,11 @@ int battle_get_hit (struct block_list *bl) hit * (sc_data[SC_HUMMING].val1 * 2 + sc_data[SC_HUMMING].val2 + sc_data[SC_HUMMING].val3) / 100; - if (sc_data[SC_BLIND].timer != -1 && bl->type != BL_PC) // ô˘ + if (sc_data[SC_BLIND].timer != -1 && bl->type != BL_PC) // ĺŞă hit -= hit * 25 / 100; - if (sc_data[SC_TRUESIGHT].timer != -1 && bl->type != BL_PC) // gD[TCg + if (sc_data[SC_TRUESIGHT].timer != -1 && bl->type != BL_PC) // ăăĽăŤăźăľă¤ă hit += 3 * (sc_data[SC_TRUESIGHT].val1); - if (sc_data[SC_CONCENTRATION].timer != -1 && bl->type != BL_PC) //RZg[V + if (sc_data[SC_CONCENTRATION].timer != -1 && bl->type != BL_PC) //ăłăłăťăłăăŹăźăˇă§ăł hit += (hit * (10 * (sc_data[SC_CONCENTRATION].val1))) / 100; if (battle_is_unarmed (bl)) @@ -481,8 +481,8 @@ int battle_get_hit (struct block_list *bl) } /*========================================== - * ÎŰĚŽSńđđÔˇ(Äp) - * ßčÍŽĹ1Čă + * 寞蹥ăŽĺŽĺ
¨ĺéżăčżă(ćąç¨) + * ćťăăŻć´ć°ă§1äťĽä¸ *------------------------------------------ */ int battle_get_flee2 (struct block_list *bl) @@ -518,8 +518,8 @@ int battle_get_flee2 (struct block_list *bl) } /*========================================== - * ÎŰĚNeBJđÔˇ(Äp) - * ßčÍŽĹ1Čă + * 寞蹥ăŽăŻăŞăăŁăŤăŤăčżă(ćąç¨) + * ćťăăŻć´ć°ă§1äťĽä¸ *------------------------------------------ */ int battle_get_critical (struct block_list *bl) @@ -547,7 +547,7 @@ int battle_get_critical (struct block_list *bl) sc_data[SC_FORTUNE].val3) * 10; if (sc_data[SC_EXPLOSIONSPIRITS].timer != -1 && bl->type != BL_PC) critical += sc_data[SC_EXPLOSIONSPIRITS].val2; - if (sc_data[SC_TRUESIGHT].timer != -1 && bl->type != BL_PC) //gD[TCg + if (sc_data[SC_TRUESIGHT].timer != -1 && bl->type != BL_PC) //ăăĽăŤăźăľă¤ă critical += critical * sc_data[SC_TRUESIGHT].val1 / 100; } if (critical < 1) @@ -556,8 +556,8 @@ int battle_get_critical (struct block_list *bl) } /*========================================== - * base_atkĚćž - * ßčÍŽĹ1Čă + * base_atkăŽĺĺž + * ćťăăŻć´ć°ă§1äťĽä¸ *------------------------------------------ */ int battle_get_baseatk (struct block_list *bl) @@ -568,31 +568,31 @@ int battle_get_baseatk (struct block_list *bl) nullpo_retr (1, bl); sc_data = battle_get_sc_data (bl); if (bl->type == BL_PC && (struct map_session_data *) bl) - batk = ((struct map_session_data *) bl)->base_atk; //ÝčłęĢébase_atk + batk = ((struct map_session_data *) bl)->base_atk; //č¨ĺŽăăăŚăăbase_atk else - { //ťęČOČç + { //ăă䝼ĺ¤ăŞă int str, dstr; str = battle_get_str (bl); //STR dstr = str / 10; - batk = dstr * dstr + str; //base_atkđvZˇé + batk = dstr * dstr + str; //base_atkăč¨çŽăă } if (sc_data) - { //óÔŮí č - if (sc_data[SC_PROVOKE].timer != -1 && bl->type != BL_PC) //PCĹv{bN(SM_PROVOKE)óÔ - batk = batk * (100 + 2 * sc_data[SC_PROVOKE].val1) / 100; //base_atkÁ - if (sc_data[SC_CURSE].timer != -1) //ôíęĢ˝ç - batk -= batk * 25 / 100; //base_atkŞ25%¸ - if (sc_data[SC_CONCENTRATION].timer != -1 && bl->type != BL_PC) //RZg[V + { //çść
ç°ĺ¸¸ăă + if (sc_data[SC_PROVOKE].timer != -1 && bl->type != BL_PC) //PCă§ăăăăăŻ(SM_PROVOKE)çść
+ batk = batk * (100 + 2 * sc_data[SC_PROVOKE].val1) / 100; //base_atkĺ˘ĺ + if (sc_data[SC_CURSE].timer != -1) //ĺŞăăăŚăăă + batk -= batk * 25 / 100; //base_atkă25%ć¸ĺ° + if (sc_data[SC_CONCENTRATION].timer != -1 && bl->type != BL_PC) //ăłăłăťăłăăŹăźăˇă§ăł batk += batk * (5 * sc_data[SC_CONCENTRATION].val1) / 100; } if (batk < 1) - batk = 1; //base_atkÍĹáĹŕ1 + batk = 1; //base_atkăŻćä˝ă§ă1 return batk; } /*========================================== - * ÎŰĚAtkđÔˇ(Äp) - * ßčÍŽĹ0Čă + * 寞蹥ăŽAtkăčżă(ćąç¨) + * ćťăăŻć´ć°ă§0äťĽä¸ *------------------------------------------ */ int battle_get_atk (struct block_list *bl) @@ -613,7 +613,7 @@ int battle_get_atk (struct block_list *bl) atk = atk * (100 + 2 * sc_data[SC_PROVOKE].val1) / 100; if (sc_data[SC_CURSE].timer != -1) atk -= atk * 25 / 100; - if (sc_data[SC_CONCENTRATION].timer != -1 && bl->type != BL_PC) //RZg[V + if (sc_data[SC_CONCENTRATION].timer != -1 && bl->type != BL_PC) //ăłăłăťăłăăŹăźăˇă§ăł atk += atk * (5 * sc_data[SC_CONCENTRATION].val1) / 100; } if (atk < 0) @@ -622,8 +622,8 @@ int battle_get_atk (struct block_list *bl) } /*========================================== - * ÎŰĚśčAtkđÔˇ(Äp) - * ßčÍŽĹ0Čă + * 寞蹥ăŽĺˇŚćAtkăčżă(ćąç¨) + * ćťăăŻć´ć°ă§0äťĽä¸ *------------------------------------------ */ int battle_get_atk_ (struct block_list *bl) @@ -642,8 +642,8 @@ int battle_get_atk_ (struct block_list *bl) } /*========================================== - * ÎŰĚAtk2đÔˇ(Äp) - * ßčÍŽĹ0Čă + * 寞蹥ăŽAtk2ăčżă(ćąç¨) + * ćťăăŻć´ć°ă§0äťĽä¸ *------------------------------------------ */ int battle_get_atk2 (struct block_list *bl) @@ -672,7 +672,7 @@ int battle_get_atk2 (struct block_list *bl) atk2 += sc_data[SC_NIBELUNGEN].val2; if (sc_data[SC_STRIPWEAPON].timer != -1) atk2 = atk2 * 90 / 100; - if (sc_data[SC_CONCENTRATION].timer != -1) //RZg[V + if (sc_data[SC_CONCENTRATION].timer != -1) //ăłăłăťăłăăŹăźăˇă§ăł atk2 += atk2 * (5 * sc_data[SC_CONCENTRATION].val1) / 100; } @@ -684,8 +684,8 @@ int battle_get_atk2 (struct block_list *bl) } /*========================================== - * ÎŰĚśčAtk2đÔˇ(Äp) - * ßčÍŽĹ0Čă + * 寞蹥ăŽĺˇŚćAtk2ăčżă(ćąç¨) + * ćťăăŻć´ć°ă§0äťĽä¸ *------------------------------------------ */ int battle_get_atk_2 (struct block_list *bl) @@ -698,8 +698,8 @@ int battle_get_atk_2 (struct block_list *bl) } /*========================================== - * ÎŰĚMAtk1đÔˇ(Äp) - * ßčÍŽĹ0Čă + * 寞蹥ăŽMAtk1ăčżă(ćąç¨) + * ćťăăŻć´ć°ă§0äťĽä¸ *------------------------------------------ */ int battle_get_matk1 (struct block_list *bl) @@ -724,8 +724,8 @@ int battle_get_matk1 (struct block_list *bl) } /*========================================== - * ÎŰĚMAtk2đÔˇ(Äp) - * ßčÍŽĹ0Čă + * 寞蹥ăŽMAtk2ăčżă(ćąç¨) + * ćťăăŻć´ć°ă§0äťĽä¸ *------------------------------------------ */ int battle_get_matk2 (struct block_list *bl) @@ -749,8 +749,8 @@ int battle_get_matk2 (struct block_list *bl) } /*========================================== - * ÎŰĚDefđÔˇ(Äp) - * ßčÍŽĹ0Čă + * 寞蹥ăŽDefăčżă(ćąç¨) + * ćťăăŻć´ć°ă§0äťĽä¸ *------------------------------------------ */ int battle_get_def (struct block_list *bl) @@ -777,38 +777,38 @@ int battle_get_def (struct block_list *bl) { if (sc_data) { - //L[sOÍDEF100 + //ăăźăăłă°ćăŻDEF100 if (sc_data[SC_KEEPING].timer != -1) def = 100; - //v{bN͸Z + //ăăăăăŻćăŻć¸çŽ if (sc_data[SC_PROVOKE].timer != -1 && bl->type != BL_PC) def = (def * (100 - 6 * sc_data[SC_PROVOKE].val1) + 50) / 100; - //ížŰĚżŤÍÁZ + //ćŚĺ¤ŞéźăŽéżăćăŻĺ çŽ if (sc_data[SC_DRUMBATTLE].timer != -1 && bl->type != BL_PC) def += sc_data[SC_DRUMBATTLE].val3; - //ĹÉŠŠÁĢé͸Z + //ćŻăŤăăăŁăŚăăćăŻć¸çŽ if (sc_data[SC_POISON].timer != -1 && bl->type != BL_PC) def = def * 75 / 100; - //XgbvV[h͸Z + //ăšăăŞăăăˇăźăŤăćăŻć¸çŽ if (sc_data[SC_STRIPSHIELD].timer != -1 && bl->type != BL_PC) def = def * 85 / 100; - //VOiNVX͸Z + //ăˇă°ăă ăŻăŤăˇăšćăŻć¸çŽ if (sc_data[SC_SIGNUMCRUCIS].timer != -1 && bl->type != BL_PC) def = def * (100 - sc_data[SC_SIGNUMCRUCIS].val2) / 100; - //iĚŹ×ÍDEF0ÉČé + //ć°¸é ăŽćˇˇć˛ćăŻDEF0ăŤăŞă if (sc_data[SC_ETERNALCHAOS].timer != -1 && bl->type != BL_PC) def = 0; - //AÎťÍEVtg + //ĺçľăçłĺćăŻĺłăˇăă if (sc_data[SC_FREEZE].timer != -1 || (sc_data[SC_STONE].timer != -1 && sc_data[SC_STONE].val2 == 0)) def >>= 1; - //RZg[V͸Z + //ăłăłăťăłăăŹăźăˇă§ăłćăŻć¸çŽ if (sc_data[SC_CONCENTRATION].timer != -1 && bl->type != BL_PC) def = (def * (100 - 5 * sc_data[SC_CONCENTRATION].val1)) / 100; } - //rĽÍrĽ¸ZŚÉîâĸZ + //čŠ ĺąä¸ăŻčŠ ĺąćć¸çŽçăŤĺşăĽăăŚć¸çŽ if (skilltimer != -1) { int def_rate = skill_get_castdef (skillid); @@ -822,8 +822,8 @@ int battle_get_def (struct block_list *bl) } /*========================================== - * ÎŰĚMDefđÔˇ(Äp) - * ßčÍŽĹ0Čă + * 寞蹥ăŽMDefăčżă(ćąç¨) + * ćťăăŻć´ć°ă§0äťĽä¸ *------------------------------------------ */ int battle_get_mdef (struct block_list *bl) @@ -842,7 +842,7 @@ int battle_get_mdef (struct block_list *bl) { if (sc_data) { - //oA[óÔÍMDEF100 + //ăăŞă˘ăźçść
ćăŻMDEF100 if (mdef < 90 && sc_data[SC_MBARRIER].timer != -1) { mdef += sc_data[SC_MBARRIER].val1; @@ -851,7 +851,7 @@ int battle_get_mdef (struct block_list *bl) } if (sc_data[SC_BARRIER].timer != -1) mdef = 100; - //AÎťÍ1.25{ + //ĺçľăçłĺćăŻ1.25ĺ if (sc_data[SC_FREEZE].timer != -1 || (sc_data[SC_STONE].timer != -1 && sc_data[SC_STONE].val2 == 0)) @@ -866,8 +866,8 @@ int battle_get_mdef (struct block_list *bl) } /*========================================== - * ÎŰĚDef2đÔˇ(Äp) - * ßčÍŽĹ1Čă + * 寞蹥ăŽDef2ăčżă(ćąç¨) + * ćťăăŻć´ć°ă§1äťĽä¸ *------------------------------------------ */ int battle_get_def2 (struct block_list *bl) @@ -890,7 +890,7 @@ int battle_get_def2 (struct block_list *bl) def2 = (def2 * (100 - 6 * sc_data[SC_PROVOKE].val1) + 50) / 100; if (sc_data[SC_POISON].timer != -1 && bl->type != BL_PC) def2 = def2 * 75 / 100; - //RZg[V͸Z + //ăłăłăťăłăăŹăźăˇă§ăłćăŻć¸çŽ if (sc_data[SC_CONCENTRATION].timer != -1 && bl->type != BL_PC) def2 = def2 * (100 - 5 * sc_data[SC_CONCENTRATION].val1) / 100; } @@ -900,8 +900,8 @@ int battle_get_def2 (struct block_list *bl) } /*========================================== - * ÎŰĚMDef2đÔˇ(Äp) - * ßčÍŽĹ0Čă + * 寞蹥ăŽMDef2ăčżă(ćąç¨) + * ćťăăŻć´ć°ă§0äťĽä¸ *------------------------------------------ */ int battle_get_mdef2 (struct block_list *bl) @@ -929,9 +929,9 @@ int battle_get_mdef2 (struct block_list *bl) } /*========================================== - * ÎŰĚSpeed(ÚŽŹx)đÔˇ(Äp) - * ßčÍŽĹ1Čă - * SpeedÍŹł˘Ů¤ŞÚŽŹxŞŹ˘ + * 寞蹥ăŽSpeed(秝ĺé庌)ăčżă(ćąç¨) + * ćťăăŻć´ć°ă§1äťĽä¸ + * SpeedăŻĺ°ăăăťăă秝ĺé庌ăéă *------------------------------------------ */ int battle_get_speed (struct block_list *bl) @@ -948,35 +948,35 @@ int battle_get_speed (struct block_list *bl) if (sc_data) { - //ŹxÁÍ25%¸Z + //é庌ĺ˘ĺ ćăŻ25%ć¸çŽ if (sc_data[SC_INCREASEAGI].timer != -1 && sc_data[SC_DONTFORGETME].timer == -1) speed -= speed * 25 / 100; - //Źx¸Í25%ÁZ + //é庌ć¸ĺ°ćăŻ25%ĺ çŽ if (sc_data[SC_DECREASEAGI].timer != -1) speed = speed * 125 / 100; - //N@O}CAÍ50%ÁZ + //ăŻăĄă°ăă¤ă˘ćăŻ50%ĺ çŽ if (sc_data[SC_QUAGMIRE].timer != -1) speed = speed * 3 / 2; - //đYęȢĹcÍÁZ + //ç§ăĺżăăŞăă§âŚćăŻĺ çŽ if (sc_data[SC_DONTFORGETME].timer != -1) speed = speed * (100 + sc_data[SC_DONTFORGETME].val1 * 2 + sc_data[SC_DONTFORGETME].val2 + (sc_data[SC_DONTFORGETME].val3 & 0xffff)) / 100; - //ŕÍ25%ÁZ + //éĺćăŻ25%ĺ çŽ if (sc_data[SC_STEELBODY].timer != -1) speed = speed * 125 / 100; - //fBtF_[ÍÁZ + //ăăŁăă§ăłăăźćăŻĺ çŽ if (sc_data[SC_DEFENDER].timer != -1) speed = (speed * (155 - sc_data[SC_DEFENDER].val1 * 5)) / 100; - //xčóÔÍ4{x˘ + //č¸ăçść
ăŻ4ĺé
ă if (sc_data[SC_DANCING].timer != -1) speed *= 4; - //ô˘Í450ÁZ + //ĺŞăćăŻ450ĺ çŽ if (sc_data[SC_CURSE].timer != -1) speed = speed + 450; - //EBhEH[NÍLv*2%¸Z + //ăŚăŁăłăăŚăŠăźăŻćăŻLv*2%ć¸çŽ if (sc_data[SC_WINDWALK].timer != -1) speed -= (speed * (sc_data[SC_WINDWALK].val1 * 2)) / 100; } @@ -989,8 +989,8 @@ int battle_get_speed (struct block_list *bl) } /*========================================== - * ÎŰĚaDelay(UfBC)đÔˇ(Äp) - * aDelayÍŹł˘Ů¤ŞUŹxŞŹ˘ + * 寞蹥ăŽaDelay(ćťććăăŁăŹă¤)ăčżă(ćąç¨) + * aDelayăŻĺ°ăăăťăăćťćé庌ăéă *------------------------------------------ */ int battle_get_adelay (struct block_list *bl) @@ -1007,28 +1007,28 @@ int battle_get_adelay (struct block_list *bl) if (sc_data) { - //c[nhNCbPgpĹN@O}CAĹŕđYęȢĹcĹŕȢÍ3¸Z + //ăăźăăłăăŻă¤ăăąăłä˝żç¨ćă§ăŻăĄă°ăă¤ă˘ă§ăç§ăĺżăăŞăă§âŚă§ăăŞăćăŻ3ĺ˛ć¸çŽ if (sc_data[SC_TWOHANDQUICKEN].timer != -1 && sc_data[SC_QUAGMIRE].timer == -1 && sc_data[SC_DONTFORGETME].timer == -1) // 2HQ aspd_rate -= 30; - //AhibV
gpĹc[nhNCbPĹŕN@O}CAĹŕđYęȢĹcĹŕČ˘Í + //ă˘ăăŹăăŞăłăŠăăˇăĽä˝żç¨ćă§ăăźăăłăăŻă¤ăăąăłă§ăăŻăĄă°ăă¤ă˘ă§ăç§ăĺżăăŞăă§âŚă§ăăŞăć㯠if (sc_data[SC_ADRENALINE].timer != -1 && sc_data[SC_TWOHANDQUICKEN].timer == -1 && sc_data[SC_QUAGMIRE].timer == -1 && sc_data[SC_DONTFORGETME].timer == -1) - { // AhibV
- //gpŇĆp[eBo[ĹiˇŞoéÝčĹČŻęÎ3¸Z + { // ă˘ăăŹăăŞăłăŠăăˇăĽ + //使ç¨č
ă¨ăăźăăŁăĄăłăăźă§ć źĺˇŽăĺşăč¨ĺŽă§ăŞăăă°3ĺ˛ć¸çŽ if (sc_data[SC_ADRENALINE].val2 || !battle_config.party_skill_penaly) aspd_rate -= 30; - //ť¤ĹČŻęÎ2.5¸Z + //ăăă§ăŞăăă°2.5ĺ˛ć¸çŽ else aspd_rate -= 25; } - //XsANBbP͸Z - if (sc_data[SC_SPEARSQUICKEN].timer != -1 && sc_data[SC_ADRENALINE].timer == -1 && sc_data[SC_TWOHANDQUICKEN].timer == -1 && sc_data[SC_QUAGMIRE].timer == -1 && sc_data[SC_DONTFORGETME].timer == -1) // XsANBbP + //ăšăă˘ăŻăŁăăąăłćăŻć¸çŽ + if (sc_data[SC_SPEARSQUICKEN].timer != -1 && sc_data[SC_ADRENALINE].timer == -1 && sc_data[SC_TWOHANDQUICKEN].timer == -1 && sc_data[SC_QUAGMIRE].timer == -1 && sc_data[SC_DONTFORGETME].timer == -1) // ăšăă˘ăŻăŁăăąăł aspd_rate -= sc_data[SC_SPEARSQUICKEN].val2; - //[úĚATVNX͸Z - if (sc_data[SC_ASSNCROS].timer != -1 && // [zĚATVNX + //ĺ¤ćĽăŽă˘ăľăˇăłăŻăăšćăŻć¸çŽ + if (sc_data[SC_ASSNCROS].timer != -1 && // ĺ¤é˝ăŽă˘ăľăˇăłăŻăăš sc_data[SC_TWOHANDQUICKEN].timer == -1 && sc_data[SC_ADRENALINE].timer == -1 && sc_data[SC_SPEARSQUICKEN].timer == -1 @@ -1036,16 +1036,16 @@ int battle_get_adelay (struct block_list *bl) aspd_rate -= 5 + sc_data[SC_ASSNCROS].val1 + sc_data[SC_ASSNCROS].val2 + sc_data[SC_ASSNCROS].val3; - //đYęȢĹcÍÁZ - if (sc_data[SC_DONTFORGETME].timer != -1) // đYęȢŠ+ //ç§ăĺżăăŞăă§âŚćăŻĺ çŽ + if (sc_data[SC_DONTFORGETME].timer != -1) // ç§ăĺżăăŞă㧠aspd_rate += sc_data[SC_DONTFORGETME].val1 * 3 + sc_data[SC_DONTFORGETME].val2 + (sc_data[SC_DONTFORGETME].val3 >> 16); - //ŕ25%ÁZ - if (sc_data[SC_STEELBODY].timer != -1) // ŕ + //éĺć25%ĺ çŽ + if (sc_data[SC_STEELBODY].timer != -1) // éĺ aspd_rate += 25; - //Ź|[Vgp͸Z + //ĺ˘éăăźăˇă§ăłä˝żç¨ćăŻć¸çŽ if (sc_data[i = SC_SPEEDPOTION2].timer != -1 || sc_data[i = SC_SPEEDPOTION1].timer != -1 || sc_data[i = SC_SPEEDPOTION0].timer != -1) @@ -1053,7 +1053,7 @@ int battle_get_adelay (struct block_list *bl) // Fate's `haste' spell works the same as the above if (sc_data[SC_HASTE].timer != -1) aspd_rate -= sc_data[SC_HASTE].val1; - //fBtF_[ÍÁZ + //ăăŁăă§ăłăăźćăŻĺ çŽ if (sc_data[SC_DEFENDER].timer != -1) adelay += (1100 - sc_data[SC_DEFENDER].val1 * 100); } @@ -1087,16 +1087,16 @@ int battle_get_amotion (struct block_list *bl) && sc_data[SC_TWOHANDQUICKEN].timer == -1 && sc_data[SC_QUAGMIRE].timer == -1 && sc_data[SC_DONTFORGETME].timer == -1) - { // AhibV
+ { // ă˘ăăŹăăŞăłăŠăăˇăĽ if (sc_data[SC_ADRENALINE].val2 || !battle_config.party_skill_penaly) aspd_rate -= 30; else aspd_rate -= 25; } - if (sc_data[SC_SPEARSQUICKEN].timer != -1 && sc_data[SC_ADRENALINE].timer == -1 && sc_data[SC_TWOHANDQUICKEN].timer == -1 && sc_data[SC_QUAGMIRE].timer == -1 && sc_data[SC_DONTFORGETME].timer == -1) // XsANBbP + if (sc_data[SC_SPEARSQUICKEN].timer != -1 && sc_data[SC_ADRENALINE].timer == -1 && sc_data[SC_TWOHANDQUICKEN].timer == -1 && sc_data[SC_QUAGMIRE].timer == -1 && sc_data[SC_DONTFORGETME].timer == -1) // ăšăă˘ăŻăŁăăąăł aspd_rate -= sc_data[SC_SPEARSQUICKEN].val2; - if (sc_data[SC_ASSNCROS].timer != -1 && // [zĚATVNX + if (sc_data[SC_ASSNCROS].timer != -1 && // ĺ¤é˝ăŽă˘ăľăˇăłăŻăăš sc_data[SC_TWOHANDQUICKEN].timer == -1 && sc_data[SC_ADRENALINE].timer == -1 && sc_data[SC_SPEARSQUICKEN].timer == -1 @@ -1104,12 +1104,12 @@ int battle_get_amotion (struct block_list *bl) aspd_rate -= 5 + sc_data[SC_ASSNCROS].val1 + sc_data[SC_ASSNCROS].val2 + sc_data[SC_ASSNCROS].val3; - if (sc_data[SC_DONTFORGETME].timer != -1) // đYęȢŠ+ if (sc_data[SC_DONTFORGETME].timer != -1) // ç§ăĺżăăŞă㧠aspd_rate += sc_data[SC_DONTFORGETME].val1 * 3 + sc_data[SC_DONTFORGETME].val2 + (sc_data[SC_DONTFORGETME].val3 >> 16); - if (sc_data[SC_STEELBODY].timer != -1) // ŕ + if (sc_data[SC_STEELBODY].timer != -1) // éĺ aspd_rate += 25; if (sc_data[i = SC_SPEEDPOTION2].timer != -1 || sc_data[i = SC_SPEEDPOTION1].timer != -1 @@ -1167,16 +1167,16 @@ int battle_get_element (struct block_list *bl) nullpo_retr (ret, bl); sc_data = battle_get_sc_data (bl); - if (bl->type == BL_MOB && (struct mob_data *) bl) // 10ĚĘLv*2APĚĘŽŤ + if (bl->type == BL_MOB && (struct mob_data *) bl) // 10ăŽä˝ďźLv*2ăďźăŽä˝ďźĺąć§ ret = ((struct mob_data *) bl)->def_ele; else if (bl->type == BL_PC && (struct map_session_data *) bl) - ret = 20 + ((struct map_session_data *) bl)->def_ele; // h䎍Lv1 + ret = 20 + ((struct map_session_data *) bl)->def_ele; // é˛ĺžĄĺąć§Lv1 if (sc_data) { - if (sc_data[SC_BENEDICTIO].timer != -1) // šĚ~ + if (sc_data[SC_BENEDICTIO].timer != -1) // čä˝éçŚ ret = 26; - if (sc_data[SC_FREEZE].timer != -1) // + if (sc_data[SC_FREEZE].timer != -1) // ĺçľ ret = 21; if (sc_data[SC_STONE].timer != -1 && sc_data[SC_STONE].val2 == 0) ret = 22; @@ -1198,17 +1198,17 @@ int battle_get_attack_element (struct block_list *bl) if (sc_data) { - if (sc_data[SC_FROSTWEAPON].timer != -1) // tXgEF| + if (sc_data[SC_FROSTWEAPON].timer != -1) // ăăăšăăŚă§ăăł ret = 1; - if (sc_data[SC_SEISMICWEAPON].timer != -1) // TCY~bNEF| + if (sc_data[SC_SEISMICWEAPON].timer != -1) // ăľă¤ăşăăăŻăŚă§ăăł ret = 2; - if (sc_data[SC_FLAMELAUNCHER].timer != -1) // t[`[ + if (sc_data[SC_FLAMELAUNCHER].timer != -1) // ăăŹăźă ăŠăłăăŁăź ret = 3; - if (sc_data[SC_LIGHTNINGLOADER].timer != -1) // CgjO[_[ + if (sc_data[SC_LIGHTNINGLOADER].timer != -1) // ăŠă¤ăăăłă°ăăźăăź ret = 4; - if (sc_data[SC_ENCPOISON].timer != -1) // G`g|CY + if (sc_data[SC_ENCPOISON].timer != -1) // ă¨ăłăăŁăłăăă¤ăşăł ret = 5; - if (sc_data[SC_ASPERSIO].timer != -1) // AXyVI + if (sc_data[SC_ASPERSIO].timer != -1) // ă˘ăšăăŤăˇăŞ ret = 6; } @@ -1226,17 +1226,17 @@ int battle_get_attack_element2 (struct block_list *bl) if (sc_data) { - if (sc_data[SC_FROSTWEAPON].timer != -1) // tXgEF| + if (sc_data[SC_FROSTWEAPON].timer != -1) // ăăăšăăŚă§ăăł ret = 1; - if (sc_data[SC_SEISMICWEAPON].timer != -1) // TCY~bNEF| + if (sc_data[SC_SEISMICWEAPON].timer != -1) // ăľă¤ăşăăăŻăŚă§ăăł ret = 2; - if (sc_data[SC_FLAMELAUNCHER].timer != -1) // t[`[ + if (sc_data[SC_FLAMELAUNCHER].timer != -1) // ăăŹăźă ăŠăłăăŁăź ret = 3; - if (sc_data[SC_LIGHTNINGLOADER].timer != -1) // CgjO[_[ + if (sc_data[SC_LIGHTNINGLOADER].timer != -1) // ăŠă¤ăăăłă°ăăźăăź ret = 4; - if (sc_data[SC_ENCPOISON].timer != -1) // G`g|CY + if (sc_data[SC_ENCPOISON].timer != -1) // ă¨ăłăăŁăłăăă¤ăşăł ret = 5; - if (sc_data[SC_ASPERSIO].timer != -1) // AXyVI + if (sc_data[SC_ASPERSIO].timer != -1) // ă˘ăšăăŤăˇăŞ ret = 6; } return ret; @@ -1303,7 +1303,7 @@ int battle_get_mode (struct block_list *bl) if (bl->type == BL_MOB && (struct mob_data *) bl) return mob_db[((struct mob_data *) bl)->class].mode; else - return 0x01; // Ćč Ś¸ŽĆ˘¤ąĆĹ1 + return 0x01; // ă¨ăăăăĺăă¨ăăăă¨ă§1 } int battle_get_mexp (struct block_list *bl) @@ -1345,7 +1345,7 @@ int battle_get_stat (int stat_id /* SP_VIT or similar */ , } } -// StatusChangenĚž +// StatusChangeçłťăŽćĺž struct status_change *battle_get_sc_data (struct block_list *bl) { nullpo_retr (NULL, bl); @@ -1416,7 +1416,7 @@ short *battle_get_option (struct block_list *bl) //------------------------------------------------------------------- -// _[WĚx +// ăăĄăźă¸ăŽé
ĺťś struct battle_delay_damage_ { struct block_list *src, *target; @@ -1451,7 +1451,7 @@ int battle_delay_damage (unsigned int tick, struct block_list *src, return 0; } -// ŔŰÉHPđě +// ĺŽéăŤHPăćä˝ int battle_damage (struct block_list *bl, struct block_list *target, int damage, int flag) { @@ -1460,7 +1460,7 @@ int battle_damage (struct block_list *bl, struct block_list *target, short *sc_count; int i; - nullpo_retr (0, target); //blÍNULLĹÄÎęéąĆŞ éĚĹźĹ`FbN + nullpo_retr (0, target); //blăŻNULLă§ĺźă°ăăăă¨ăăăăŽă§äťă§ăă§ă㯠if (damage == 0) return 0; @@ -1483,7 +1483,7 @@ int battle_damage (struct block_list *bl, struct block_list *target, if (!flag && (sc_count = battle_get_sc_count (target)) != NULL && *sc_count > 0) { - // AÎťA°đÁ + // ĺçľăçłĺăçĄç ăćśĺť if (sc_data[SC_FREEZE].timer != -1) skill_status_change_end (target, SC_FREEZE, -1); if (sc_data[SC_STONE].timer != -1 && sc_data[SC_STONE].val2 == 0) @@ -1495,7 +1495,7 @@ int battle_damage (struct block_list *bl, struct block_list *target, if (target->type == BL_MOB) { // MOB struct mob_data *md = (struct mob_data *) target; - if (md && md->skilltimer != -1 && md->state.skillcastcancel) // rĽWQ + if (md && md->skilltimer != -1 && md->state.skillcastcancel) // čŠ ĺąĺŚ¨ĺŽł skill_castcancel (target, 0); return mob_damage (bl, md, damage, 0); } @@ -1505,7 +1505,7 @@ int battle_damage (struct block_list *bl, struct block_list *target, struct map_session_data *tsd = (struct map_session_data *) target; if (tsd && tsd->sc_data && tsd->sc_data[SC_DEVOTION].val1) - { // fB{[VđŠŻçęĢé + { // ăăŁăăźăˇă§ăłăăăăăăŚăă struct map_session_data *md = map_id2sd (tsd->sc_data[SC_DEVOTION].val1); if (md && skill_devotion3 (&md->bl, target->id)) @@ -1525,8 +1525,8 @@ int battle_damage (struct block_list *bl, struct block_list *target, } if (tsd && tsd->skilltimer != -1) - { // rĽWQ - // tFJ[hâWQłęȢXLŠĚ¸ + { // čŠ ĺąĺŚ¨ĺŽł + // ăă§ăłăŤăźăă匨厳ăăăŞăăšăăŤăăŽć¤ćť if ((!tsd->special_state.no_castcancel || map[bl->m].flag.gvg) && tsd->state.skillcastcancel && !tsd->special_state.no_castcancel2) @@ -1545,7 +1545,7 @@ int battle_damage (struct block_list *bl, struct block_list *target, int battle_heal (struct block_list *bl, struct block_list *target, int hp, int sp, int flag) { - nullpo_retr (0, target); //blÍNULLĹÄÎęéąĆŞ éĚĹźĹ`FbN + nullpo_retr (0, target); //blăŻNULLă§ĺźă°ăăăă¨ăăăăŽă§äťă§ăă§ă㯠if (target->type == BL_PC && pc_isdead ((struct map_session_data *) target)) @@ -1563,7 +1563,7 @@ int battle_heal (struct block_list *bl, struct block_list *target, int hp, return 0; } -// Uâ~ +// ćťćĺć˘ int battle_stopattack (struct block_list *bl) { nullpo_retr (0, bl); @@ -1574,7 +1574,7 @@ int battle_stopattack (struct block_list *bl) return 0; } -// ÚŽâ~ +// 秝ĺĺć˘ int battle_stopwalking (struct block_list *bl, int type) { nullpo_retr (0, bl); @@ -1586,7 +1586,7 @@ int battle_stopwalking (struct block_list *bl, int type) } /*========================================== - * _[WĚŽŤCł + * ăăĄăźă¸ăŽĺąć§äżŽćŁ *------------------------------------------ */ int battle_attr_fix (int damage, int atk_elem, int def_elem) @@ -1595,7 +1595,7 @@ int battle_attr_fix (int damage, int atk_elem, int def_elem) if (atk_elem < 0 || atk_elem > 9 || def_type < 0 || def_type > 9 || def_lv < 1 || def_lv > 4) - { // Ž ŤlިŠľ˘ĚĹĆč Ś¸ťĚÜÜÔˇ + { // ĺą ć§ĺ¤ăăăăăăŽă§ă¨ăăăăăăŽăžăžčżă if (battle_config.error_log) printf ("battle_attr_fix: unknown attr type: atk=%d def_type=%d def_lv=%d\n", @@ -1607,7 +1607,7 @@ int battle_attr_fix (int damage, int atk_elem, int def_elem) } /*========================================== - * _[WĹIvZ + * ăăĄăźă¸ćçľč¨çŽ *------------------------------------------ */ int battle_calc_damage (struct block_list *src, struct block_list *bl, @@ -1638,37 +1638,37 @@ int battle_calc_damage (struct block_list *src, struct block_list *bl, && flag & BF_WEAPON && flag & BF_SHORT && skill_num != NPC_GUIDEDATTACK) { - // Z[teBEH[ + // ăťăźăăăŁăŚăŠăźăŤ struct skill_unit *unit = (struct skill_unit *) sc_data[SC_SAFETYWALL].val2; if (unit && unit->alive && (--unit->group->val2) <= 0) skill_delunit (unit); - skill_unit_move (bl, gettick (), 1); // dË|Ż`FbN + skill_unit_move (bl, gettick (), 1); // éăćăăă§ă㯠damage = 0; } if (sc_data[SC_PNEUMA].timer != -1 && damage > 0 && flag & BF_WEAPON && flag & BF_LONG && skill_num != NPC_GUIDEDATTACK) { - // j
[} + // ăăĽăźă damage = 0; } if (sc_data[SC_ROKISWEIL].timer != -1 && damage > 0 && flag & BF_MAGIC) { - // j
[} + // ăăĽăźă damage = 0; } if (sc_data[SC_AETERNA].timer != -1 && damage > 0) - { // bNXG[ei + { // ăŹăăŻăšă¨ăźăăŤă damage <<= 1; skill_status_change_end (bl, SC_AETERNA, -1); } - //ŽŤęĚ_[WÁ + //ĺąć§ĺ ´ăŽăăĄăźă¸ĺ˘ĺ if (sc_data[SC_VOLCANO].timer != -1) - { // {P[m + { // ăăŤăąăźă if (flag & BF_SKILL && skill_get_pl (skill_num) == 3) damage += damage * sc_data[SC_VOLCANO].val4 / 100; else if (!(flag & BF_SKILL) && (battle_get_attack_element (bl) == 3)) @@ -1676,7 +1676,7 @@ int battle_calc_damage (struct block_list *src, struct block_list *bl, } if (sc_data[SC_VIOLENTGALE].timer != -1) - { // oCIgQC + { // ăă¤ăŞăŹăłăă˛ă¤ăŤ if (flag & BF_SKILL && skill_get_pl (skill_num) == 4) damage += damage * sc_data[SC_VIOLENTGALE].val4 / 100; else if (!(flag & BF_SKILL) && (battle_get_attack_element (bl) == 4)) @@ -1684,7 +1684,7 @@ int battle_calc_damage (struct block_list *src, struct block_list *bl, } if (sc_data[SC_DELUGE].timer != -1) - { // f
[W + { // ăăŞăĽăźă¸ if (flag & BF_SKILL && skill_get_pl (skill_num) == 1) damage += damage * sc_data[SC_DELUGE].val4 / 100; else if (!(flag & BF_SKILL) && (battle_get_attack_element (bl) == 1)) @@ -1693,7 +1693,7 @@ int battle_calc_damage (struct block_list *src, struct block_list *bl, if (sc_data[SC_ENERGYCOAT].timer != -1 && damage > 0 && flag & BF_WEAPON) - { // GiW[R[g + { // ă¨ăă¸ăźăłăźă if (sd) { if (sd->status.sp > 0) @@ -1713,7 +1713,7 @@ int battle_calc_damage (struct block_list *src, struct block_list *bl, } if (sc_data[SC_KYRIE].timer != -1 && damage > 0) - { // LGGC\ + { // ăăŞă¨ă¨ăŹă¤ă˝ăł sc = &sc_data[SC_KYRIE]; sc->val2 -= damage; if (flag & BF_WEAPON) @@ -1730,13 +1730,13 @@ int battle_calc_damage (struct block_list *src, struct block_list *bl, if (sc_data[SC_BASILICA].timer != -1 && damage > 0) { - // j
[} + // ăăĽăźă damage = 0; } if (sc_data[SC_LANDPROTECTOR].timer != -1 && damage > 0 && flag & BF_MAGIC) { - // j
[} + // ăăĽăźă damage = 0; } @@ -1766,7 +1766,7 @@ int battle_calc_damage (struct block_list *src, struct block_list *bl, sc_data[SC_PARRYING].val1, 1); } } - // WFNg\[h + // ăŞă¸ă§ăŻăă˝ăźă if (sc_data[SC_REJECTSWORD].timer != -1 && damage > 0 && flag & BF_WEAPON && @@ -1776,11 +1776,11 @@ int battle_calc_damage (struct block_list *src, struct block_list *bl, || src->type == BL_MOB)) { if (MRAND (100) < (10 + 5 * sc_data[SC_REJECTSWORD].val1)) - { //˝ËmŚÍ10+5*Lv + { //ĺĺ°ç˘şçăŻ10+5*Lv damage = damage * 50 / 100; battle_damage (bl, src, damage, 0); - //_[Wđ^Ś˝ĚÍǢńžŞAąąŠçǤľÄ\ŚˇéńžŠíŠńËĽ - //GtFNgŕąęޢ̊íŠńËĽ + //ăăĄăźă¸ăä¸ăăăŽăŻčŻăăă ăăăăăăăŠăăăŚčĄ¨ç¤şăăăă ăăăăăă + //ă¨ăă§ăŻăăăăă§ăăăŽăăăăăă clif_skill_nodamage (bl, bl, ST_REJECTSWORD, sc_data[SC_REJECTSWORD].val1, 1); if ((--sc_data[SC_REJECTSWORD].val2) <= 0) @@ -1805,11 +1805,11 @@ int battle_calc_damage (struct block_list *src, struct block_list *bl, if (gc && agit_flag == 0 && class != 1288) // guardians cannot be damaged during non-woe [Valaris] damage = 0; // end woe check [Valaris] if (g == NULL) - damage = 0; //Mh˘ÁüČç_[Włľ + damage = 0; //ăŽăŤăćŞĺ ĺ
ĽăŞăăăĄăźă¸çĄă else if ((gc != NULL) && guild_isallied (g, gc)) - damage = 0; //ŠčĚMhĚGyČç_[Włľ + damage = 0; //čŞĺ é ăŽăŤăăŽă¨ăłăăŞăăăĄăźă¸çĄă else if (g && guild_checkskill (g, GD_APPROVAL) <= 0) - damage = 0; //łKMhłFŞČ˘Ć_[Włľ + damage = 0; //ćŁčŚăŽăŤăćżčŞăăŞăă¨ăăĄăźă¸çĄă else if (battle_config.guild_max_castles != 0 && guild_checkcastles (g) >= battle_config.guild_max_castles) @@ -1847,14 +1847,14 @@ int battle_calc_damage (struct block_list *src, struct block_list *bl, damage = 3; } - if (md != NULL && md->hp > 0 && damage > 0) // ˝ČÇĚMOBXLťč + if (md != NULL && md->hp > 0 && damage > 0) // ĺćăŞăŠăŽMOBăšăăŤĺ¤ĺŽ mobskill_event (md, flag); return damage; } /*========================================== - * Cű_[W + * 俎硴ăăĄăźă¸ *------------------------------------------ */ int battle_addmastery (struct map_session_data *sd, struct block_list *target, @@ -1867,13 +1867,13 @@ int battle_addmastery (struct map_session_data *sd, struct block_list *target, nullpo_retr (0, sd); - // f[xC(+3 ` +30) vs s or Ť (lÍÜßȢH) + // ăăźă˘ăłăă¤ăł(+3 ă +30) vs ä¸ćť or ćŞé (ćťäşşăŻĺŤăăŞăďź) if ((skill = pc_checkskill (sd, AL_DEMONBANE)) > 0 && (battle_check_undead (race, battle_get_elem_type (target)) || race == 6)) damage += (skill * 3); - // r[XgxC(+4 ` +40) vs Ž¨ or Š + // ăăźăšăăă¤ăł(+4 ă +40) vs ĺçŠ or ćčŤ if ((skill = pc_checkskill (sd, HT_BEASTBANE)) > 0 && (race == 2 || race == 4)) damage += (skill * 4); @@ -1884,10 +1884,10 @@ int battle_addmastery (struct map_session_data *sd, struct block_list *target, weapon = sd->weapontype2; switch (weapon) { - case 0x01: // Z (Updated By AppleGirl) + case 0x01: // çĺŁ (Updated By AppleGirl) case 0x02: // 1HS { - // Cű(+4 ` +40) Đč ZÜŢ + // ĺŁäżŽçˇ´(+4 ă +40) çćĺŁ çĺŁĺŤă if ((skill = pc_checkskill (sd, SM_SWORD)) > 0) { damage += (skill * 4); @@ -1896,7 +1896,7 @@ int battle_addmastery (struct map_session_data *sd, struct block_list *target, } case 0x03: // 2HS { - // źčCű(+4 ` +40) źč + // 严ćĺŁäżŽçˇ´(+4 ă +40) 严ćĺŁ if ((skill = pc_checkskill (sd, SM_TWOHAND)) > 0) { damage += (skill * 4); @@ -1905,29 +1905,29 @@ int battle_addmastery (struct map_session_data *sd, struct block_list *target, } case 0x04: // 1HL { - // Cű(+4 ` +40,+5 ` +50) + // ć§äżŽçˇ´(+4 ă +40,+5 ă +50) ć§ if ((skill = pc_checkskill (sd, KN_SPEARMASTERY)) > 0) { if (!pc_isriding (sd)) - damage += (skill * 4); // yRÉćÁÄȢ + damage += (skill * 4); // ăăłăŤäšăŁăŚăŞă else - damage += (skill * 5); // yRÉćÁÄé + damage += (skill * 5); // ăăłăŤäšăŁăŚă } break; } case 0x05: // 2HL { - // Cű(+4 ` +40,+5 ` +50) + // ć§äżŽçˇ´(+4 ă +40,+5 ă +50) ć§ if ((skill = pc_checkskill (sd, KN_SPEARMASTERY)) > 0) { if (!pc_isriding (sd)) - damage += (skill * 4); // yRÉćÁÄȢ + damage += (skill * 4); // ăăłăŤäšăŁăŚăŞă else - damage += (skill * 5); // yRÉćÁÄé + damage += (skill * 5); // ăăłăŤäšăŁăŚă } break; } - case 0x06: // Đč + case 0x06: // çćć§ { if ((skill = pc_checkskill (sd, AM_AXEMASTERY)) > 0) { @@ -1943,25 +1943,25 @@ int battle_addmastery (struct map_session_data *sd, struct block_list *target, } break; } - case 0x08: // CX + case 0x08: // ăĄă¤ăš { - // CXCű(+3 ` +30) CX + // ăĄă¤ăšäżŽçˇ´(+3 ă +30) ăĄă¤ăš if ((skill = pc_checkskill (sd, PR_MACEMASTERY)) > 0) { damage += (skill * 3); } break; } - case 0x09: // Čľ? + case 0x09: // ăŞă? break; - case 0x0a: // ń + case 0x0a: // ć break; - case 0x0b: // | + case 0x0b: // ĺź break; - case 0x00: // fč + case 0x00: // ç´ ć case 0x0c: // Knuckles { - // S(+3 ` +30) fč,ibN + // éćł(+3 ă +30) ç´ ć,ăăăŻăŤ if ((skill = pc_checkskill (sd, MO_IRONHAND)) > 0) { damage += (skill * 3); @@ -1970,7 +1970,7 @@ int battle_addmastery (struct map_session_data *sd, struct block_list *target, } case 0x0d: // Musical Instrument { - // yíĚűK(+3 ` +30) yí + // 漽ĺ¨ăŽçˇ´çż(+3 ă +30) ćĽ˝ĺ¨ if ((skill = pc_checkskill (sd, BA_MUSICALLESSON)) > 0) { damage += (skill * 3); @@ -1979,7 +1979,7 @@ int battle_addmastery (struct map_session_data *sd, struct block_list *target, } case 0x0e: // Dance Mastery { - // Dance Lesson Skill Effect(+3 damage for every lvl = +30) Ú + // Dance Lesson Skill Effect(+3 damage for every lvl = +30) é if ((skill = pc_checkskill (sd, DC_DANCINGLESSON)) > 0) { damage += (skill * 3); @@ -1997,10 +1997,10 @@ int battle_addmastery (struct map_session_data *sd, struct block_list *target, } case 0x10: // Katars { - // J^[Cű(+3 ` +30) J^[ + // ăŤăżăźăŤäżŽçˇ´(+3 ă +30) ăŤăżăźăŤ if ((skill = pc_checkskill (sd, AS_KATAR)) > 0) { - //\jbNu[ÍĘi1ÉtŤ1/8K) + //ă˝ăăăŻăăăźćăŻĺĽĺŚçďź1ćăŤäťă1/8éŠĺż) damage += (skill * 3); } break; @@ -2031,7 +2031,7 @@ static struct Damage battle_calc_mob_weapon_attack (struct block_list *src, short *sc_count; short *option, *opt1, *opt2; - //returnOĚŞ éĚĹîńoÍĚÝĎX + //returnĺăŽĺŚçăăăăŽă§ć
ĺ ąĺşĺé¨ăŽăżĺ¤ć´ if (src == NULL || target == NULL || md == NULL) { nullpo_info (NLP_MARK); @@ -2047,7 +2047,7 @@ static struct Damage battle_calc_mob_weapon_attack (struct block_list *src, opt1 = battle_get_opt1 (src); opt2 = battle_get_opt2 (src); - // ^[Qbg + // ăżăźă˛ăă if (target->type == BL_PC) tsd = (struct map_session_data *) target; else if (target->type == BL_MOB) @@ -2090,9 +2090,9 @@ static struct Damage battle_calc_mob_weapon_attack (struct block_list *src, ac_flag = 1; } } - flag = BF_SHORT | BF_WEAPON | BF_NORMAL; // UĚíŢĚÝč + flag = BF_SHORT | BF_WEAPON | BF_NORMAL; // ćťćăŽç¨ŽéĄăŽč¨ĺŽ - // ńđŚvZAńđťčÍăĹ + // ĺéżçč¨çŽăĺéżĺ¤ĺŽăŻĺžă§ flee = battle_get_flee (target); if (battle_config.agi_penaly_type > 0 || battle_config.vit_penaly_type > 0) @@ -2131,7 +2131,7 @@ static struct Damage battle_calc_mob_weapon_attack (struct block_list *src, else damage = 0; if (skill_num == HW_MAGICCRASHER) - { /* }WbNNbV[ÍMATKĹŁé */ + { /* ăă¸ăăŻăŻăŠăăˇăŁăźăŻMATKă§ćŽ´ă */ atkmin = battle_get_matk1 (src); atkmax = battle_get_matk2 (src); } @@ -2147,7 +2147,7 @@ static struct Damage battle_calc_mob_weapon_attack (struct block_list *src, atkmin = atkmax; if (sc_data != NULL && sc_data[SC_MAXIMIZEPOWER].timer != -1) - { // }LV}CYp[ + { // ăăăˇăă¤ăşăăŻăź atkmin = atkmax; } @@ -2159,7 +2159,7 @@ static struct Damage battle_calc_mob_weapon_attack (struct block_list *src, if (cri < 1) cri = 1; } - if (t_sc_data != NULL && t_sc_data[SC_SLEEP].timer != -1) // °ÍNeBJŞ{É + if (t_sc_data != NULL && t_sc_data[SC_SLEEP].timer != -1) // çĄç ä¸ăŻăŻăŞăăŁăŤăŤăĺ㍠cri <<= 1; if (ac_flag) @@ -2176,8 +2176,8 @@ static struct Damage battle_calc_mob_weapon_attack (struct block_list *src, if (tsd && tsd->critical_def) cri = cri * (100 - tsd->critical_def) / 100; - if ((skill_num == 0 || skill_num == KN_AUTOCOUNTER) && skill_lv >= 0 && battle_config.enemy_critical && (MRAND (1000)) < cri) // ťčiXLĚęÍłj - // GĚťč + if ((skill_num == 0 || skill_num == KN_AUTOCOUNTER) && skill_lv >= 0 && battle_config.enemy_critical && (MRAND (1000)) < cri) // ĺ¤ĺŽďźăšăăŤăŽĺ ´ĺăŻçĄčŚďź + // ćľăŽĺ¤ĺŽ { damage += atkmax; type = 0x0a; @@ -2190,20 +2190,20 @@ static struct Damage battle_calc_mob_weapon_attack (struct block_list *src, damage += atkmin + MRAND ((atkmax - atkmin + 1)); else damage += atkmin; - // XLCłPiUÍ{ťnj - // I[o[gXg(+5% ` +25%),źUnXLĚęąąĹâł - // obV
,}OiuCN, - // {[OobV
,XsAu[,ufBbV
XsA,XsAX^bu, - // }[iCg,J[g{
[V - // _uXgCtBO,A[V[,`[WA[, - // \jbNu[ + // ăšăăŤäżŽćŁďźďźćťćĺĺĺçłťďź + // ăŞăźăăźăăŠăšă(+5% ă +25%),äťćťćçłťăšăăŤăŽĺ ´ĺăăă§čŁćŁ + // ăăăˇăĽ,ăă°ăă ăăŹă¤ăŻ, + // ăăźăŞăłă°ăăăˇăĽ,ăšăă˘ăăźăĄăŠăł,ăăŠăłăăŁăăˇăĽăšăă˘,ăšăă˘ăšăżăă, + // ăĄăăźăă¤ă,ăŤăźăăŹăăŞăĽăźăˇă§ăł + // ăăăŤăšăăŹă¤ăăŁăłă°,ă˘ăăźăˇăŁăŻăź,ăăŁăźă¸ă˘ăăź, + // ă˝ăăăŻăăăź if (sc_data) - { //óÔŮíĚ_[WÇÁ - if (sc_data[SC_OVERTHRUST].timer != -1) // I[o[gXg + { //çść
ç°ĺ¸¸ä¸ăŽăăĄăźă¸čż˝ĺ + if (sc_data[SC_OVERTHRUST].timer != -1) // ăŞăźăăźăăŠăšă damage += damage * (5 * sc_data[SC_OVERTHRUST].val1) / 100; - if (sc_data[SC_TRUESIGHT].timer != -1) // gD[TCg + if (sc_data[SC_TRUESIGHT].timer != -1) // ăăĽăŤăźăľă¤ă damage += damage * (2 * sc_data[SC_TRUESIGHT].val1) / 100; - if (sc_data[SC_BERSERK].timer != -1) // o[T[N + if (sc_data[SC_BERSERK].timer != -1) // ăăźăľăźăŻ damage += damage * 50 / 100; } @@ -2216,44 +2216,44 @@ static struct Damage battle_calc_mob_weapon_attack (struct block_list *src, flag = (flag & ~BF_SKILLMASK) | BF_SKILL; switch (skill_num) { - case SM_BASH: // obV
+ case SM_BASH: // ăăăˇăĽ damage = damage * (100 + 30 * skill_lv) / 100; hitrate = (hitrate * (100 + 5 * skill_lv)) / 100; break; - case SM_MAGNUM: // }OiuCN + case SM_MAGNUM: // ăă°ăă ăăŹă¤ăŻ damage = damage * (5 * skill_lv + (wflag) ? 65 : 115) / 100; break; - case MC_MAMMONITE: // }[iCg + case MC_MAMMONITE: // ăĄăăźăă¤ă damage = damage * (100 + 50 * skill_lv) / 100; break; - case AC_DOUBLE: // _uXgCtBO + case AC_DOUBLE: // ăăăŤăšăăŹă¤ăăŁăłă° damage = damage * (180 + 20 * skill_lv) / 100; div_ = 2; flag = (flag & ~BF_RANGEMASK) | BF_LONG; break; - case AC_SHOWER: // A[V[ + case AC_SHOWER: // ă˘ăăźăˇăŁăŻăź damage = damage * (75 + 5 * skill_lv) / 100; flag = (flag & ~BF_RANGEMASK) | BF_LONG; break; - case AC_CHARGEARROW: // `[WA[ + case AC_CHARGEARROW: // ăăŁăźă¸ă˘ăăź damage = damage * 150 / 100; flag = (flag & ~BF_RANGEMASK) | BF_LONG; break; - case KN_PIERCE: // sA[X + case KN_PIERCE: // ăă˘ăźăš damage = damage * (100 + 10 * skill_lv) / 100; hitrate = hitrate * (100 + 5 * skill_lv) / 100; div_ = t_size + 1; damage *= div_; break; - case KN_SPEARSTAB: // XsAX^u + case KN_SPEARSTAB: // ăšăă˘ăšăżă damage = damage * (100 + 15 * skill_lv) / 100; break; - case KN_SPEARBOOMERANG: // XsAu[ + case KN_SPEARBOOMERANG: // ăšăă˘ăăźăĄăŠăł damage = damage * (100 + 50 * skill_lv) / 100; flag = (flag & ~BF_RANGEMASK) | BF_LONG; break; - case KN_BRANDISHSPEAR: // ufBbV
XsA + case KN_BRANDISHSPEAR: // ăăŠăłăăŁăăˇăĽăšă㢠damage = damage * (100 + 20 * skill_lv) / 100; if (skill_lv > 3 && wflag == 1) damage2 += damage / 2; @@ -2270,7 +2270,7 @@ static struct Damage battle_calc_mob_weapon_attack (struct block_list *src, damage += damage2; blewcount = 0; break; - case KN_BOWLINGBASH: // {EOobV
+ case KN_BOWLINGBASH: // ăăŚăŞăłă°ăăăˇăĽ damage = damage * (100 + 50 * skill_lv) / 100; blewcount = 0; break; @@ -2281,25 +2281,25 @@ static struct Damage battle_calc_mob_weapon_attack (struct block_list *src, hitrate = 1000000; flag = (flag & ~BF_SKILLMASK) | BF_NORMAL; break; - case AS_SONICBLOW: // \jbNuE + case AS_SONICBLOW: // ă˝ăăăŻăă㌠damage = damage * (300 + 50 * skill_lv) / 100; div_ = 8; break; - case TF_SPRINKLESAND: // ťÜŤ + case TF_SPRINKLESAND: // ç ăžă damage = damage * 125 / 100; break; - case MC_CARTREVOLUTION: // J[g{
[V + case MC_CARTREVOLUTION: // ăŤăźăăŹăăŞăĽăźăˇă§ăł damage = (damage * 150) / 100; break; - // ČşMOB - case NPC_COMBOATTACK: // ˝iU + // 䝼ä¸MOB + case NPC_COMBOATTACK: // ĺ¤ćŽľćťć div_ = skill_get_num (skill_num, skill_lv); damage *= div_; break; - case NPC_RANDOMATTACK: // _ATKU + case NPC_RANDOMATTACK: // ăŠăłăă ATKćťć damage = damage * (MPRAND (50, 150)) / 100; break; - // ŽŤUiKj + // ĺąć§ćťćďźéŠĺ˝ďź case NPC_WATERATTACK: case NPC_GROUNDATTACK: case NPC_FIREATTACK: @@ -2319,46 +2319,46 @@ static struct Damage battle_calc_mob_weapon_attack (struct block_list *src, case NPC_PIERCINGATT: flag = (flag & ~BF_RANGEMASK) | BF_SHORT; break; - case RG_BACKSTAP: // obNX^u + case RG_BACKSTAP: // ăăăŻăšăżă damage = damage * (300 + 40 * skill_lv) / 100; hitrate = 1000000; break; - case RG_RAID: // TvCYA^bN + case RG_RAID: // ăľăăŠă¤ăşă˘ăżă㯠damage = damage * (100 + 40 * skill_lv) / 100; break; - case RG_INTIMIDATE: // CeB~fCg + case RG_INTIMIDATE: // ă¤ăłăăŁăăă¤ă damage = damage * (100 + 30 * skill_lv) / 100; break; - case CR_SHIELDCHARGE: // V[h`[W + case CR_SHIELDCHARGE: // ăˇăźăŤăăăŁăźă¸ damage = damage * (100 + 20 * skill_lv) / 100; flag = (flag & ~BF_RANGEMASK) | BF_SHORT; s_ele = 0; break; - case CR_SHIELDBOOMERANG: // V[hu[ + case CR_SHIELDBOOMERANG: // ăˇăźăŤăăăźăĄăŠăł damage = damage * (100 + 30 * skill_lv) / 100; flag = (flag & ~BF_RANGEMASK) | BF_LONG; s_ele = 0; break; - case CR_HOLYCROSS: // z[[NX + case CR_HOLYCROSS: // ăăźăŞăźăŻăăš damage = damage * (100 + 35 * skill_lv) / 100; div_ = 2; break; case CR_GRANDCROSS: hitrate = 1000000; break; - case AM_DEMONSTRATION: // fXg[V + case AM_DEMONSTRATION: // ăă˘ăłăšăăŹăźăˇă§ăł damage = damage * (100 + 20 * skill_lv) / 100; damage2 = damage2 * (100 + 20 * skill_lv) / 100; break; - case AM_ACIDTERROR: // AVbhe[ + case AM_ACIDTERROR: // ă˘ăˇăăăăŠăź damage = damage * (100 + 40 * skill_lv) / 100; damage2 = damage2 * (100 + 40 * skill_lv) / 100; break; - case MO_FINGEROFFENSIVE: //we + case MO_FINGEROFFENSIVE: //ćĺźž damage = damage * (100 + 50 * skill_lv) / 100; div_ = 1; break; - case MO_INVESTIGATE: // ¤ + case MO_INVESTIGATE: // çş ĺ if (def1 < 1000000) damage = damage * (100 + 75 * skill_lv) / 100 * (def1 + @@ -2367,61 +2367,61 @@ static struct Damage battle_calc_mob_weapon_attack (struct block_list *src, hitrate = 1000000; s_ele = 0; break; - case MO_EXTREMITYFIST: // ˘C
eP + case MO_EXTREMITYFIST: // éżäżŽçž
čŚéłłćł damage = damage * 8 + 250 + (skill_lv * 150); hitrate = 1000000; s_ele = 0; break; - case MO_CHAINCOMBO: // AĹś + case MO_CHAINCOMBO: // éŁćć damage = damage * (150 + 50 * skill_lv) / 100; div_ = 4; break; - case BA_MUSICALSTRIKE: // ~
[WJXgCN + case BA_MUSICALSTRIKE: // ăăĽăźă¸ăŤăŤăšăăŠă¤ăŻ damage = damage * (100 + 50 * skill_lv) / 100; flag = (flag & ~BF_RANGEMASK) | BF_LONG; break; - case DC_THROWARROW: // îż + case DC_THROWARROW: // ç˘ć㥠damage = damage * (100 + 50 * skill_lv) / 100; flag = (flag & ~BF_RANGEMASK) | BF_LONG; break; - case MO_COMBOFINISH: // Ň´ + case MO_COMBOFINISH: // çéžćł damage = damage * (240 + 60 * skill_lv) / 100; break; - case CH_TIGERFIST: // Ő + case CH_TIGERFIST: // äźčćł damage = damage * (100 + 20 * skill_lv) / 100; break; - case CH_CHAINCRUSH: // Aö + case CH_CHAINCRUSH: // éŁćąĺ´Šć damage = damage * (100 + 20 * skill_lv) / 100; div_ = skill_get_num (skill_num, skill_lv); break; - case CH_PALMSTRIKE: // ŇŐdhR + case CH_PALMSTRIKE: // çč祏洞幹 damage = damage * (50 + 100 * skill_lv) / 100; break; - case LK_SPIRALPIERCE: /* XpCsA[X */ - damage = damage * (100 + 50 * skill_lv) / 100; //ÁĘŞŞŠçȢĚĹKÉ + case LK_SPIRALPIERCE: /* ăšăă¤ăŠăŤăă˘ăźăš */ + damage = damage * (100 + 50 * skill_lv) / 100; //ĺ˘ĺ éăĺăăăŞăăŽă§éŠĺ˝ăŤ div_ = 5; if (tsd) tsd->canmove_tick = gettick () + 1000; else if (tmd) tmd->canmove_tick = gettick () + 1000; break; - case LK_HEADCRUSH: /* wbhNbV
*/ + case LK_HEADCRUSH: /* ăăăăŻăŠăăˇăĽ */ damage = damage * (100 + 20 * skill_lv) / 100; break; - case LK_JOINTBEAT: /* WCgr[g */ + case LK_JOINTBEAT: /* ă¸ă§ă¤ăłăăăźă */ damage = damage * (50 + 10 * skill_lv) / 100; break; - case ASC_METEORASSAULT: /* eIATg */ + case ASC_METEORASSAULT: /* ăĄăăŞă˘ăľăŤă */ damage = damage * (40 + 40 * skill_lv) / 100; break; - case SN_SHARPSHOOTING: /* V[vV
[eBO */ + case SN_SHARPSHOOTING: /* ăˇăŁăźăăˇăĽăźăăŁăłă° */ damage += damage * (30 * skill_lv) / 100; break; - case CG_ARROWVULCAN: /* A[oJ */ + case CG_ARROWVULCAN: /* ă˘ăăźăăŤăŤăł */ damage = damage * (160 + 40 * skill_lv) / 100; div_ = 9; break; - case AS_SPLASHER: /* xiXvbV[ */ + case AS_SPLASHER: /* ăăă ăšăăŠăăˇăŁăź */ damage = damage * (200 + 20 * skill_lv) / 100; break; } @@ -2429,11 +2429,11 @@ static struct Damage battle_calc_mob_weapon_attack (struct block_list *src, if (skill_num != NPC_CRITICALSLASH) { - // Î ŰĚhäÍÉćé_[W̸ - // fBoCveNViąąĹ˘˘ĚŠČHj + // 寞 蹥ăŽé˛ĺžĄĺăŤăăăăĄăźă¸ăŽć¸ĺ° + // ăăŁăă¤ăłăăăăŻăˇă§ăłďźăăă§ăăăŽăăŞďźďź if (skill_num != MO_INVESTIGATE && skill_num != MO_EXTREMITYFIST && skill_num != KN_AUTOCOUNTER && def1 < 1000000) - { //DEF, VITł + { //DEF, VITçĄčŚ int t_def; target_count = 1 + battle_counttargeted (target, src, @@ -2513,17 +2513,17 @@ static struct Damage battle_calc_mob_weapon_attack (struct block_list *src, } } - // 0˘žÁ˝ę1Éâł + // 0ćŞćşă ăŁăĺ ´ĺ1ăŤčŁćŁ if (damage < 1) damage = 1; - // ńđCł + // ĺéżäżŽćŁ if (hitrate < 1000000) hitrate = ((hitrate > 95) ? 95 : ((hitrate < 5) ? 5 : hitrate)); - if (hitrate < 1000000 && // KU - (t_sc_data != NULL && (t_sc_data[SC_SLEEP].timer != -1 || // °ÍK - t_sc_data[SC_STAN].timer != -1 || // X^ÍK - t_sc_data[SC_FREEZE].timer != -1 || (t_sc_data[SC_STONE].timer != -1 && t_sc_data[SC_STONE].val2 == 0)))) // ÍK + if (hitrate < 1000000 && // ĺż
ä¸ćťć + (t_sc_data != NULL && (t_sc_data[SC_SLEEP].timer != -1 || // çĄç ăŻĺż
ä¸ + t_sc_data[SC_STAN].timer != -1 || // ăšăżăłăŻĺż
ä¸ + t_sc_data[SC_FREEZE].timer != -1 || (t_sc_data[SC_STONE].timer != -1 && t_sc_data[SC_STONE].val2 == 0)))) // ĺçľăŻĺż
ä¸ hitrate = 1000000; if (type == 0 && MRAND (100) >= hitrate) { @@ -2538,8 +2538,8 @@ static struct Damage battle_calc_mob_weapon_attack (struct block_list *src, if (tsd) { int cardfix = 100, i; - cardfix = cardfix * (100 - tsd->subele[s_ele]) / 100; // Ž ŤÉćé_[WĎŤ - cardfix = cardfix * (100 - tsd->subrace[s_race]) / 100; // í°Éćé_[WĎŤ + cardfix = cardfix * (100 - tsd->subele[s_ele]) / 100; // ĺą ć§ăŤăăăăĄăźă¸čć§ + cardfix = cardfix * (100 - tsd->subrace[s_race]) / 100; // 税ćăŤăăăăĄăźă¸čć§ if (mob_db[md->class].mode & 0x20) cardfix = cardfix * (100 - tsd->subrace[10]) / 100; else @@ -2567,7 +2567,7 @@ static struct Damage battle_calc_mob_weapon_attack (struct block_list *src, damage = damage * cardfix / 100; } if (t_sc_data && t_sc_data[SC_ASSUMPTIO].timer != -1) - { //AVveBI + { //ă˘ăˇăŁăłăăăŁăŞ if (!map[target->m].flag.pvp) damage = damage / 3; else @@ -2577,19 +2577,19 @@ static struct Damage battle_calc_mob_weapon_attack (struct block_list *src, if (damage < 0) damage = 0; - // Ž ŤĚKp + // ĺą ć§ăŽéŠç¨ if (!((battle_config.mob_ghostring_fix == 1) && (battle_get_element (target) == 8) && (target->type == BL_PC))) // [MouseJstr] if (skill_num != 0 || s_ele != 0 || !battle_config.mob_attack_attr_none) damage = battle_attr_fix (damage, s_ele, battle_get_element (target)); - if (sc_data && sc_data[SC_AURABLADE].timer != -1) /* I[u[h K */ + if (sc_data && sc_data[SC_AURABLADE].timer != -1) /* ăŞăźăŠăăŹăźă ĺż
ä¸ */ damage += sc_data[SC_AURABLADE].val1 * 10; - if (skill_num == PA_PRESSURE) /* vbV[ K? */ + if (skill_num == PA_PRESSURE) /* ăăŹăăˇăŁăź ĺż
ä¸? */ damage = 700 + 100 * skill_lv; - // CxiCł + // ă¤ăłăăă äżŽćŁ if (skill_num == TF_POISON) { damage = @@ -2601,7 +2601,7 @@ static struct Damage battle_calc_mob_weapon_attack (struct block_list *src, damage = battle_attr_fix (damage, 0, battle_get_element (target)); } - // ŽSńđĚťč + // ĺŽĺ
¨ĺéżăŽĺ¤ĺŽ if (skill_num == 0 && skill_lv >= 0 && tsd != NULL && MRAND (1000) < battle_get_flee2 (target)) { @@ -2664,7 +2664,7 @@ int battle_is_unarmed (struct block_list *bl) /* * ========================================================================= - * PCĚíÉćéU + * PCăŽćŚĺ¨ăŤăăćťć *------------------------------------------------------------------------- */ static struct Damage battle_calc_pc_weapon_attack (struct block_list *src, @@ -2688,13 +2688,13 @@ static struct Damage battle_calc_pc_weapon_attack (struct block_list *src, struct status_change *sc_data, *t_sc_data; short *sc_count; short *option, *opt1, *opt2; - int atkmax_ = 0, atkmin_ = 0, s_ele_; //ńŹp + int atkmax_ = 0, atkmin_ = 0, s_ele_; //äşĺćľç¨ int watk, watk_, cardfix, t_ele; int da = 0, i, t_class, ac_flag = 0; int idef_flag = 0, idef_flag_ = 0; int target_distance; - //returnOĚŞ éĚĹîńoÍĚÝĎX + //returnĺăŽĺŚçăăăăŽă§ć
ĺ ąĺşĺé¨ăŽăżĺ¤ć´ if (src == NULL || target == NULL || sd == NULL) { nullpo_info (NLP_MARK); @@ -2702,31 +2702,31 @@ static struct Damage battle_calc_pc_weapon_attack (struct block_list *src, return wd; } - // A^bJ[ - s_race = battle_get_race (src); //í° - s_ele = battle_get_attack_element (src); //ŽŤ - s_ele_ = battle_get_attack_element2 (src); //śčŽŤ - sc_data = battle_get_sc_data (src); //Xe[^XŮí - sc_count = battle_get_sc_count (src); //Xe[^XŮíĚ - option = battle_get_option (src); //éĆŠyRĆŠJ[gĆŠ - opt1 = battle_get_opt1 (src); //ÎťAAX^A°AĂĹ - opt2 = battle_get_opt2 (src); //ĹAô˘AžŮAĂĹH - - if (skill_num != CR_GRANDCROSS) //OhNXĹȢČç - sd->state.attack_type = BF_WEAPON; //U^CvÍíU - - // ^[Qbg - if (target->type == BL_PC) //ÎŰŞPCČç - tsd = (struct map_session_data *) target; //tsdÉăü(tmdÍNULL) - else if (target->type == BL_MOB) //ÎŰŞMobČç - tmd = (struct mob_data *) target; //tmdÉăü(tsdÍNULL) - t_race = battle_get_race (target); //ÎŰĚí° - t_ele = battle_get_elem_type (target); //ÎŰĚŽŤ - t_size = battle_get_size (target); //ÎŰĚTCY - t_mode = battle_get_mode (target); //ÎŰĚMode - t_sc_data = battle_get_sc_data (target); //ÎŰĚXe[^XŮí - -//I[gJE^[ąąŠç + // ă˘ăżăăŤăź + s_race = battle_get_race (src); //税ć + s_ele = battle_get_attack_element (src); //ĺąć§ + s_ele_ = battle_get_attack_element2 (src); //塌ćĺąć§ + sc_data = battle_get_sc_data (src); //ăšăăźăżăšç°ĺ¸¸ + sc_count = battle_get_sc_count (src); //ăšăăźăżăšç°ĺ¸¸ăŽć° + option = battle_get_option (src); //顚ă¨ăăăłă¨ăăŤăźăă¨ă + opt1 = battle_get_opt1 (src); //çłĺăĺçľăăšăżăłăçĄç ăćé + opt2 = battle_get_opt2 (src); //ćŻăĺŞăăć˛éťăćéďź + + if (skill_num != CR_GRANDCROSS) //ă°ăŠăłăăŻăăšă§ăŞăăŞă + sd->state.attack_type = BF_WEAPON; //ćťćăżă¤ăăŻćŚĺ¨ćťć + + // ăżăźă˛ăă + if (target->type == BL_PC) //寞蹥ăPCăŞă + tsd = (struct map_session_data *) target; //tsdăŤäťŁĺ
Ľ(tmdăŻNULL) + else if (target->type == BL_MOB) //寞蹥ăMobăŞă + tmd = (struct mob_data *) target; //tmdăŤäťŁĺ
Ľ(tsdăŻNULL) + t_race = battle_get_race (target); //寞蹥ăŽç¨Žć + t_ele = battle_get_elem_type (target); //寞蹥ăŽĺąć§ + t_size = battle_get_size (target); //寞蹥ăŽăľă¤ăş + t_mode = battle_get_mode (target); //寞蹥ăŽMode + t_sc_data = battle_get_sc_data (target); //寞蹥ăŽăšăăźăżăšç°ĺ¸¸ + +//ăŞăźăăŤăŚăłăżăźĺŚçăăăă if ((skill_num == 0 || (target->type == BL_PC && battle_config.pc_auto_counter_type & 2) || (target->type == BL_MOB @@ -2735,57 +2735,57 @@ static struct Damage battle_calc_pc_weapon_attack (struct block_list *src, { if (skill_num != CR_GRANDCROSS && t_sc_data && t_sc_data[SC_AUTOCOUNTER].timer != -1) - { //OhNXĹČAÎŰŞI[gJE^[óÔĚę + { //ă°ăŠăłăăŻăăšă§ăŞăă寞蹥ăăŞăźăăŤăŚăłăżăźçść
ăŽĺ ´ĺ int dir = map_calc_dir (src, target->x, target->y), t_dir = battle_get_dir (target); int dist = distance (src->x, src->y, target->x, target->y); if (dist <= 0 || map_check_dir (dir, t_dir)) - { //ÎŰĆĚŁŞ0ČşAÜ˝ÍÎŰĚłĘH + { //寞蹥ă¨ăŽčˇé˘ă0䝼ä¸ăăžăăŻĺŻžčąĄăŽćŁé˘ďź memset (&wd, 0, sizeof (wd)); t_sc_data[SC_AUTOCOUNTER].val3 = 0; t_sc_data[SC_AUTOCOUNTER].val4 = 1; if (sc_data && sc_data[SC_AUTOCOUNTER].timer == -1) - { //ŠŞŞI[gJE^[óÔ + { //čŞĺăăŞăźăăŤăŚăłăżăźçść
int range = battle_get_range (target); - if ((target->type == BL_PC && ((struct map_session_data *) target)->status.weapon != 11 && dist <= range + 1) || //ÎŰŞPCĹíŞ|îĹČËöŕ - (target->type == BL_MOB && range <= 3 && dist <= range + 1)) //Ü˝ÍÎŰŞMobĹËöŞ3ČşĹËöŕ + if ((target->type == BL_PC && ((struct map_session_data *) target)->status.weapon != 11 && dist <= range + 1) || //寞蹥ăPCă§ćŚĺ¨ăĺźç˘ă§ăŞăĺ°ç¨ĺ
+ (target->type == BL_MOB && range <= 3 && dist <= range + 1)) //ăžăăŻĺŻžčąĄăMobă§ĺ°ç¨ă3䝼ä¸ă§ĺ°ç¨ĺ
t_sc_data[SC_AUTOCOUNTER].val3 = src->id; } - return wd; //_[W\˘ĚđÔľÄIš + return wd; //ăăĄăźă¸ć§é ä˝ăčżăăŚçľäş } else ac_flag = 1; } } -//I[gJE^[ąąÜĹ +//ăŞăźăăŤăŚăłăżăźĺŚçăăăžă§ - flag = BF_SHORT | BF_WEAPON | BF_NORMAL; // UĚíŢĚÝč + flag = BF_SHORT | BF_WEAPON | BF_NORMAL; // ćťćăŽç¨ŽéĄăŽč¨ĺŽ - // ńđŚvZAńđťčÍăĹ + // ĺéżçč¨çŽăĺéżĺ¤ĺŽăŻĺžă§ flee = battle_get_flee (target); - if (battle_config.agi_penaly_type > 0 || battle_config.vit_penaly_type > 0) //AGIAVITyieBÝčŞLř - target_count += battle_counttargeted (target, src, battle_config.agi_penaly_count_lv); //ÎŰĚđZo + if (battle_config.agi_penaly_type > 0 || battle_config.vit_penaly_type > 0) //AGIăVITăăăŤăăŁč¨ĺŽăćĺš + target_count += battle_counttargeted (target, src, battle_config.agi_penaly_count_lv); //寞蹥ăŽć°ăçŽĺş if (battle_config.agi_penaly_type > 0) { if (target_count >= battle_config.agi_penaly_count) - { //yieBÝčćčÎŰŞ˝˘ - if (battle_config.agi_penaly_type == 1) //ńđŚŞagi_penaly_num%¸Â¸ + { //ăăăŤăăŁč¨ĺŽăă寞蹥ăĺ¤ă + if (battle_config.agi_penaly_type == 1) //ĺéżçăagi_penaly_num%ăă¤ć¸ĺ° flee = (flee * (100 - (target_count - (battle_config.agi_penaly_count - 1)) * battle_config.agi_penaly_num)) / 100; - else if (battle_config.agi_penaly_type == 2) //ńđŚŞagi_penaly_num޸ + else if (battle_config.agi_penaly_type == 2) //ĺéżçăagi_penaly_numĺć¸ĺ° flee -= (target_count - (battle_config.agi_penaly_count - 1)) * battle_config.agi_penaly_num; if (flee < 1) - flee = 1; //ńđŚÍĹáĹŕ1 + flee = 1; //ĺéżçăŻćä˝ă§ă1 } } - hitrate = battle_get_hit (src) - flee + 80; //˝ŚvZ + hitrate = battle_get_hit (src) - flee + 80; //ĺ˝ä¸çč¨çŽ { // [fate] Reduce hit chance by distance int dx = abs (src->x - target->x); @@ -2801,18 +2801,18 @@ static struct Damage battle_calc_pc_weapon_attack (struct block_list *src, dex = battle_get_dex (src); //DEX luk = battle_get_luk (src); //LUK watk = battle_get_atk (src); //ATK - watk_ = battle_get_atk_ (src); //ATKśč + watk_ = battle_get_atk_ (src); //ATK塌ć type = 0; // normal div_ = 1; // single attack if (skill_num == HW_MAGICCRASHER) - { /* }WbNNbV[ÍMATKĹŁé */ - damage = damage2 = battle_get_matk1 (src); //damega,damega2oęAbase_atkĚćž + { /* ăă¸ăăŻăŻăŠăăˇăŁăźăŻMATKă§ćŽ´ă */ + damage = damage2 = battle_get_matk1 (src); //damega,damega2ĺçťĺ ´ăbase_atkăŽĺĺž } else { - damage = damage2 = battle_get_baseatk (&sd->bl); //damega,damega2oęAbase_atkĚćž + damage = damage2 = battle_get_baseatk (&sd->bl); //damega,damega2ĺçťĺ ´ăbase_atkăŽĺĺž } if (sd->attackrange > 2) { // [fate] ranged weapon? @@ -2827,8 +2827,8 @@ static struct Damage battle_calc_pc_weapon_attack (struct block_list *src, sd->attackrange)) >> 8; } - atkmin = atkmin_ = dex; //ĹáATKÍDEXĹúťH - sd->state.arrow_atk = 0; //arrow_atkúť + atkmin = atkmin_ = dex; //ćä˝ATKăŻDEXă§ĺćĺďź + sd->state.arrow_atk = 0; //arrow_atkĺćĺ if (sd->equip_index[9] >= 0 && sd->inventory_data[sd->equip_index[9]]) atkmin = atkmin * (80 + @@ -2839,22 +2839,22 @@ static struct Damage battle_calc_pc_weapon_attack (struct block_list *src, sd->inventory_data[sd->equip_index[8]]->wlv * 20) / 100; if (sd->status.weapon == 11) - { //íŞ|îĚę - atkmin = watk * ((atkmin < watk) ? atkmin : watk) / 100; //|pĹáATKvZ - flag = (flag & ~BF_RANGEMASK) | BF_LONG; //ŁUtOđLř - if (sd->arrow_ele > 0) //ŽŤîČ玍đîĚŽŤÉĎX + { //ćŚĺ¨ăĺźç˘ăŽĺ ´ĺ + atkmin = watk * ((atkmin < watk) ? atkmin : watk) / 100; //ĺźç¨ćä˝ATKč¨çŽ + flag = (flag & ~BF_RANGEMASK) | BF_LONG; //é čˇé˘ćťćăăŠă°ăćĺš + if (sd->arrow_ele > 0) //ĺąć§ç˘ăŞăĺąć§ăç˘ăŽĺąć§ăŤĺ¤ć´ s_ele = sd->arrow_ele; - sd->state.arrow_atk = 1; //arrow_atkLřť + sd->state.arrow_atk = 1; //arrow_atkćĺšĺ } - // TCYCł - // yRRćľÄ˘ÄAĹUľ˝ęÍ^ĚTCYCłđ100ɡé - // EF|p[tFNV,hCNC + // ăľă¤ăşäżŽćŁ + // ăăłé¨äšăăŚăăŚăć§ă§ćťćăăĺ ´ĺăŻä¸ĺăŽăľă¤ăşäżŽćŁă100ăŤăă + // ăŚă§ăăłăăźăă§ăŻăˇă§ăł,ăăŹă¤ăŻC if (((sd->special_state.no_sizefix) || (pc_isriding (sd) && (sd->status.weapon == 4 || sd->status.weapon == 5) && t_size == 1) || skill_num == MO_EXTREMITYFIST)) - { //yRRćľÄ˘ÄAĹ^đU + { //ăăłé¨äšăăŚăăŚăć§ă§ä¸ĺăćťć atkmax = watk; atkmax_ = watk_; } @@ -2867,23 +2867,23 @@ static struct Damage battle_calc_pc_weapon_attack (struct block_list *src, } if ((sc_data != NULL && sc_data[SC_WEAPONPERFECTION].timer != -1) || (sd->special_state.no_sizefix)) - { // EF|p[tFNV || hCNJ[h + { // ăŚă§ăăłăăźăă§ăŻăˇă§ăł || ăăŹă¤ăŻăŤăźă atkmax = watk; atkmax_ = watk_; } if (atkmin > atkmax && !(sd->state.arrow_atk)) - atkmin = atkmax; //|ÍĹáŞăńéę č + atkmin = atkmax; //ĺźăŻćä˝ăä¸ĺăĺ ´ĺăă if (atkmin_ > atkmax_) atkmin_ = atkmax_; if (sc_data != NULL && sc_data[SC_MAXIMIZEPOWER].timer != -1) - { // }LV}CYp[ + { // ăăăˇăă¤ăşăăŻăź atkmin = atkmax; atkmin_ = atkmax_; } - //_uA^bNťč + //ăăăŤă˘ăżăăŻĺ¤ĺŽ if (sd->weapontype1 == 0x01) { if (skill_num == 0 && skill_lv >= 0 @@ -2891,7 +2891,7 @@ static struct Damage battle_calc_pc_weapon_attack (struct block_list *src, da = (MRAND (100) < (skill * 5)) ? 1 : 0; } - //Oiś + //ä¸ćŽľć if (skill_num == 0 && skill_lv >= 0 && (skill = pc_checkskill (sd, MO_TRIPLEATTACK)) > 0 && sd->status.weapon <= 16 && !sd->state.arrow_atk) @@ -2902,24 +2902,24 @@ static struct Damage battle_calc_pc_weapon_attack (struct block_list *src, if (sd->double_rate > 0 && da == 0 && skill_num == 0 && skill_lv >= 0) da = (MRAND (100) < sd->double_rate) ? 1 : 0; - // ßč¸B{[iX + // éĺ°ç˛žéŹăăźăăš if (sd->overrefine > 0) damage += MPRAND (1, sd->overrefine); if (sd->overrefine_ > 0) damage2 += MPRAND (1, sd->overrefine_); if (da == 0) - { //_uA^bNŞŽľÄ˘Č˘ - // NeBJvZ + { //ăăăŤă˘ăżăăŻăçşĺăăŚăăŞă + // ăŻăŞăăŁăŤăŤč¨çŽ cri = battle_get_critical (src); if (sd->state.arrow_atk) cri += sd->arrow_cri; if (sd->status.weapon == 16) - // J^[ĚęANeBJđ{É + // ăŤăżăźăŤăŽĺ ´ĺăăŻăŞăăŁăŤăŤăĺ㍠cri <<= 1; cri -= battle_get_luk (target) * 3; - if (t_sc_data != NULL && t_sc_data[SC_SLEEP].timer != -1) // °ÍNeBJŞ{É + if (t_sc_data != NULL && t_sc_data[SC_SLEEP].timer != -1) // çĄç ä¸ăŻăŻăŞăăŁăŤăŤăĺ㍠cri <<= 1; if (ac_flag) cri = 1000; @@ -2939,8 +2939,8 @@ static struct Damage battle_calc_pc_weapon_attack (struct block_list *src, if (tsd && tsd->critical_def) cri = cri * (100 - tsd->critical_def) / 100; - if (da == 0 && (skill_num == 0 || skill_num == KN_AUTOCOUNTER || skill_num == SN_SHARPSHOOTING) && skill_lv >= 0 && //_uA^bNŞŽľÄ˘Č˘ - (MRAND (1000)) < cri) // ťčiXLĚęÍłj + if (da == 0 && (skill_num == 0 || skill_num == KN_AUTOCOUNTER || skill_num == SN_SHARPSHOOTING) && skill_lv >= 0 && //ăăăŤă˘ăżăăŻăçşĺăăŚăăŞă + (MRAND (1000)) < cri) // ĺ¤ĺŽďźăšăăŤăŽĺ ´ĺăŻçĄčŚďź { damage += atkmax; damage2 += atkmax_; @@ -3051,27 +3051,27 @@ static struct Damage battle_calc_pc_weapon_attack (struct block_list *src, } } - // XLCłPiUÍ{ťnj - // I[o[gXg(+5% ` +25%),źUnXLĚęąąĹâł - // obV
,}OiuCN, - // {[OobV
,XsAu[,ufBbV
XsA,XsAX^bu, - // }[iCg,J[g{
[V - // _uXgCtBO,A[V[,`[WA[, - // \jbNu[ + // ăšăăŤäżŽćŁďźďźćťćĺĺĺçłťďź + // ăŞăźăăźăăŠăšă(+5% ă +25%),äťćťćçłťăšăăŤăŽĺ ´ĺăăă§čŁćŁ + // ăăăˇăĽ,ăă°ăă ăăŹă¤ăŻ, + // ăăźăŞăłă°ăăăˇăĽ,ăšăă˘ăăźăĄăŠăł,ăăŠăłăăŁăăˇăĽăšăă˘,ăšăă˘ăšăżăă, + // ăĄăăźăă¤ă,ăŤăźăăŹăăŞăĽăźăˇă§ăł + // ăăăŤăšăăŹă¤ăăŁăłă°,ă˘ăăźăˇăŁăŻăź,ăăŁăźă¸ă˘ăăź, + // ă˝ăăăŻăăăź if (sc_data) - { //óÔŮíĚ_[WÇÁ + { //çść
ç°ĺ¸¸ä¸ăŽăăĄăźă¸čż˝ĺ if (sc_data[SC_OVERTHRUST].timer != -1) - { // I[o[gXg + { // ăŞăźăăźăăŠăšă damage += damage * (5 * sc_data[SC_OVERTHRUST].val1) / 100; damage2 += damage2 * (5 * sc_data[SC_OVERTHRUST].val1) / 100; } if (sc_data[SC_TRUESIGHT].timer != -1) - { // gD[TCg + { // ăăĽăŤăźăľă¤ă damage += damage * (2 * sc_data[SC_TRUESIGHT].val1) / 100; damage2 += damage2 * (2 * sc_data[SC_TRUESIGHT].val1) / 100; } if (sc_data[SC_BERSERK].timer != -1) - { // o[T[N + { // ăăźăľăźăŻ damage += damage * 50 / 100; damage2 += damage2 * 50 / 100; } @@ -3086,22 +3086,22 @@ static struct Damage battle_calc_pc_weapon_attack (struct block_list *src, flag = (flag & ~BF_SKILLMASK) | BF_SKILL; switch (skill_num) { - case SM_BASH: // obV
+ case SM_BASH: // ăăăˇăĽ damage = damage * (100 + 30 * skill_lv) / 100; damage2 = damage2 * (100 + 30 * skill_lv) / 100; hitrate = (hitrate * (100 + 5 * skill_lv)) / 100; break; - case SM_MAGNUM: // }OiuCN + case SM_MAGNUM: // ăă°ăă ăăŹă¤ăŻ damage = damage * (5 * skill_lv + (wflag) ? 65 : 115) / 100; damage2 = damage2 * (5 * skill_lv + (wflag) ? 65 : 115) / 100; break; - case MC_MAMMONITE: // }[iCg + case MC_MAMMONITE: // ăĄăăźăă¤ă damage = damage * (100 + 50 * skill_lv) / 100; damage2 = damage2 * (100 + 50 * skill_lv) / 100; break; - case AC_DOUBLE: // _uXgCtBO + case AC_DOUBLE: // ăăăŤăšăăŹă¤ăăŁăłă° if (!sd->state.arrow_atk && sd->arrow_atk > 0) { int arr = MRAND ((sd->arrow_atk + 1)); @@ -3119,7 +3119,7 @@ static struct Damage battle_calc_pc_weapon_attack (struct block_list *src, flag = (flag & ~BF_RANGEMASK) | BF_LONG; sd->state.arrow_atk = 1; break; - case AC_SHOWER: // A[V[ + case AC_SHOWER: // ă˘ăăźăˇăŁăŻăź if (!sd->state.arrow_atk && sd->arrow_atk > 0) { int arr = MRAND ((sd->arrow_atk + 1)); @@ -3136,7 +3136,7 @@ static struct Damage battle_calc_pc_weapon_attack (struct block_list *src, flag = (flag & ~BF_RANGEMASK) | BF_LONG; sd->state.arrow_atk = 1; break; - case AC_CHARGEARROW: // `[WA[ + case AC_CHARGEARROW: // ăăŁăźă¸ă˘ăăź if (!sd->state.arrow_atk && sd->arrow_atk > 0) { int arr = MRAND ((sd->arrow_atk + 1)); @@ -3153,7 +3153,7 @@ static struct Damage battle_calc_pc_weapon_attack (struct block_list *src, flag = (flag & ~BF_RANGEMASK) | BF_LONG; sd->state.arrow_atk = 1; break; - case KN_PIERCE: // sA[X + case KN_PIERCE: // ăă˘ăźăš damage = damage * (100 + 10 * skill_lv) / 100; damage2 = damage2 * (100 + 10 * skill_lv) / 100; hitrate = hitrate * (100 + 5 * skill_lv) / 100; @@ -3161,16 +3161,16 @@ static struct Damage battle_calc_pc_weapon_attack (struct block_list *src, damage *= div_; damage2 *= div_; break; - case KN_SPEARSTAB: // XsAX^u + case KN_SPEARSTAB: // ăšăă˘ăšăżă damage = damage * (100 + 15 * skill_lv) / 100; damage2 = damage2 * (100 + 15 * skill_lv) / 100; break; - case KN_SPEARBOOMERANG: // XsAu[ + case KN_SPEARBOOMERANG: // ăšăă˘ăăźăĄăŠăł damage = damage * (100 + 50 * skill_lv) / 100; damage2 = damage2 * (100 + 50 * skill_lv) / 100; flag = (flag & ~BF_RANGEMASK) | BF_LONG; break; - case KN_BRANDISHSPEAR: // ufBbV
XsA + case KN_BRANDISHSPEAR: // ăăŠăłăăŁăăˇăĽăšă㢠damage = damage * (100 + 20 * skill_lv) / 100; damage2 = damage2 * (100 + 20 * skill_lv) / 100; if (skill_lv > 3 && wflag == 1) @@ -3201,7 +3201,7 @@ static struct Damage battle_calc_pc_weapon_attack (struct block_list *src, damage2 += damage4; blewcount = 0; break; - case KN_BOWLINGBASH: // {EOobV
+ case KN_BOWLINGBASH: // ăăŚăŞăłă°ăăăˇăĽ damage = damage * (100 + 50 * skill_lv) / 100; damage2 = damage2 * (100 + 50 * skill_lv) / 100; blewcount = 0; @@ -3213,17 +3213,17 @@ static struct Damage battle_calc_pc_weapon_attack (struct block_list *src, hitrate = 1000000; flag = (flag & ~BF_SKILLMASK) | BF_NORMAL; break; - case AS_SONICBLOW: // \jbNuE + case AS_SONICBLOW: // ă˝ăăăŻăă㌠hitrate += 30; // hitrate +30, thanks to midas damage = damage * (300 + 50 * skill_lv) / 100; damage2 = damage2 * (300 + 50 * skill_lv) / 100; div_ = 8; break; - case TF_SPRINKLESAND: // ťÜŤ + case TF_SPRINKLESAND: // ç ăžă damage = damage * 125 / 100; damage2 = damage2 * 125 / 100; break; - case MC_CARTREVOLUTION: // J[g{
[V + case MC_CARTREVOLUTION: // ăŤăźăăŹăăŞăĽăźăˇă§ăł if (sd->cart_max_weight > 0 && sd->cart_weight > 0) { damage = @@ -3243,17 +3243,17 @@ static struct Damage battle_calc_pc_weapon_attack (struct block_list *src, damage2 = (damage2 * 150) / 100; } break; - // ČşMOB - case NPC_COMBOATTACK: // ˝iU + // 䝼ä¸MOB + case NPC_COMBOATTACK: // ĺ¤ćŽľćťć div_ = skill_get_num (skill_num, skill_lv); damage *= div_; damage2 *= div_; break; - case NPC_RANDOMATTACK: // _ATKU + case NPC_RANDOMATTACK: // ăŠăłăă ATKćťć damage = damage * (MPRAND (50, 150)) / 100; damage2 = damage2 * (MPRAND (50, 150)) / 100; break; - // ŽŤUiKj + // ĺąć§ćťćďźéŠĺ˝ďź case NPC_WATERATTACK: case NPC_GROUNDATTACK: case NPC_FIREATTACK: @@ -3274,7 +3274,7 @@ static struct Damage battle_calc_pc_weapon_attack (struct block_list *src, case NPC_PIERCINGATT: flag = (flag & ~BF_RANGEMASK) | BF_SHORT; break; - case RG_BACKSTAP: // obNX^u + case RG_BACKSTAP: // ăăăŻăšăżă if (battle_config.backstab_bow_penalty == 1 && sd->status.weapon == 11) { @@ -3288,27 +3288,27 @@ static struct Damage battle_calc_pc_weapon_attack (struct block_list *src, } hitrate = 1000000; break; - case RG_RAID: // TvCYA^bN + case RG_RAID: // ăľăăŠă¤ăşă˘ăżă㯠damage = damage * (100 + 40 * skill_lv) / 100; damage2 = damage2 * (100 + 40 * skill_lv) / 100; break; - case RG_INTIMIDATE: // CeB~fCg + case RG_INTIMIDATE: // ă¤ăłăăŁăăă¤ă damage = damage * (100 + 30 * skill_lv) / 100; damage2 = damage2 * (100 + 30 * skill_lv) / 100; break; - case CR_SHIELDCHARGE: // V[h`[W + case CR_SHIELDCHARGE: // ăˇăźăŤăăăŁăźă¸ damage = damage * (100 + 20 * skill_lv) / 100; damage2 = damage2 * (100 + 20 * skill_lv) / 100; flag = (flag & ~BF_RANGEMASK) | BF_SHORT; s_ele = 0; break; - case CR_SHIELDBOOMERANG: // V[hu[ + case CR_SHIELDBOOMERANG: // ăˇăźăŤăăăźăĄăŠăł damage = damage * (100 + 30 * skill_lv) / 100; damage2 = damage2 * (100 + 30 * skill_lv) / 100; flag = (flag & ~BF_RANGEMASK) | BF_LONG; s_ele = 0; break; - case CR_HOLYCROSS: // z[[NX + case CR_HOLYCROSS: // ăăźăŞăźăŻăăš damage = damage * (100 + 35 * skill_lv) / 100; damage2 = damage2 * (100 + 35 * skill_lv) / 100; div_ = 2; @@ -3316,15 +3316,15 @@ static struct Damage battle_calc_pc_weapon_attack (struct block_list *src, case CR_GRANDCROSS: hitrate = 1000000; break; - case AM_DEMONSTRATION: // fXg[V + case AM_DEMONSTRATION: // ăă˘ăłăšăăŹăźăˇă§ăł damage = damage * (100 + 20 * skill_lv) / 100; damage2 = damage2 * (100 + 20 * skill_lv) / 100; break; - case AM_ACIDTERROR: // AVbhe[ + case AM_ACIDTERROR: // ă˘ăˇăăăăŠăź damage = damage * (100 + 40 * skill_lv) / 100; damage2 = damage2 * (100 + 40 * skill_lv) / 100; break; - case MO_FINGEROFFENSIVE: //we + case MO_FINGEROFFENSIVE: //ćĺźž if (battle_config.finger_offensive_type == 0) { damage = @@ -3344,7 +3344,7 @@ static struct Damage battle_calc_pc_weapon_attack (struct block_list *src, div_ = 1; } break; - case MO_INVESTIGATE: // ¤ + case MO_INVESTIGATE: // çş ĺ if (def1 < 1000000) { damage = @@ -3360,7 +3360,7 @@ static struct Damage battle_calc_pc_weapon_attack (struct block_list *src, s_ele = 0; s_ele_ = 0; break; - case MO_EXTREMITYFIST: // ˘C
eP + case MO_EXTREMITYFIST: // éżäżŽçž
čŚéłłćł damage = damage * (8 + ((sd->status.sp) / 10)) + 250 + (skill_lv * 150); @@ -3373,16 +3373,16 @@ static struct Damage battle_calc_pc_weapon_attack (struct block_list *src, s_ele = 0; s_ele_ = 0; break; - case MO_CHAINCOMBO: // AĹś + case MO_CHAINCOMBO: // éŁćć damage = damage * (150 + 50 * skill_lv) / 100; damage2 = damage2 * (150 + 50 * skill_lv) / 100; div_ = 4; break; - case MO_COMBOFINISH: // Ň´ + case MO_COMBOFINISH: // çéžćł damage = damage * (240 + 60 * skill_lv) / 100; damage2 = damage2 * (240 + 60 * skill_lv) / 100; break; - case BA_MUSICALSTRIKE: // ~
[WJXgCN + case BA_MUSICALSTRIKE: // ăăĽăźă¸ăŤăŤăšăăŠă¤ăŻ if (!sd->state.arrow_atk && sd->arrow_atk > 0) { int arr = MRAND ((sd->arrow_atk + 1)); @@ -3399,7 +3399,7 @@ static struct Damage battle_calc_pc_weapon_attack (struct block_list *src, flag = (flag & ~BF_RANGEMASK) | BF_LONG; sd->state.arrow_atk = 1; break; - case DC_THROWARROW: // îż + case DC_THROWARROW: // ç˘ć㥠if (!sd->state.arrow_atk && sd->arrow_atk > 0) { int arr = MRAND ((sd->arrow_atk + 1)); @@ -3416,50 +3416,50 @@ static struct Damage battle_calc_pc_weapon_attack (struct block_list *src, flag = (flag & ~BF_RANGEMASK) | BF_LONG; sd->state.arrow_atk = 1; break; - case CH_TIGERFIST: // Ő + case CH_TIGERFIST: // äźčćł damage = damage * (100 + 20 * skill_lv) / 100; damage2 = damage2 * (100 + 20 * skill_lv) / 100; break; - case CH_CHAINCRUSH: // Aö + case CH_CHAINCRUSH: // éŁćąĺ´Šć damage = damage * (100 + 20 * skill_lv) / 100; damage2 = damage2 * (100 + 20 * skill_lv) / 100; div_ = skill_get_num (skill_num, skill_lv); break; - case CH_PALMSTRIKE: // ŇŐdhR + case CH_PALMSTRIKE: // çč祏洞幹 damage = damage * (50 + 100 * skill_lv) / 100; damage2 = damage2 * (50 + 100 * skill_lv) / 100; break; - case LK_SPIRALPIERCE: /* XpCsA[X */ - damage = damage * (100 + 50 * skill_lv) / 100; //ÁĘŞŞŠçȢĚĹKÉ - damage2 = damage2 * (100 + 50 * skill_lv) / 100; //ÁĘŞŞŠçȢĚĹKÉ + case LK_SPIRALPIERCE: /* ăšăă¤ăŠăŤăă˘ăźăš */ + damage = damage * (100 + 50 * skill_lv) / 100; //ĺ˘ĺ éăĺăăăŞăăŽă§éŠĺ˝ăŤ + damage2 = damage2 * (100 + 50 * skill_lv) / 100; //ĺ˘ĺ éăĺăăăŞăăŽă§éŠĺ˝ăŤ div_ = 5; if (tsd) tsd->canmove_tick = gettick () + 1000; else if (tmd) tmd->canmove_tick = gettick () + 1000; break; - case LK_HEADCRUSH: /* wbhNbV
*/ + case LK_HEADCRUSH: /* ăăăăŻăŠăăˇăĽ */ damage = damage * (100 + 20 * skill_lv) / 100; damage2 = damage2 * (100 + 20 * skill_lv) / 100; break; - case LK_JOINTBEAT: /* WCgr[g */ + case LK_JOINTBEAT: /* ă¸ă§ă¤ăłăăăźă */ damage = damage * (50 + 10 * skill_lv) / 100; damage2 = damage2 * (50 + 10 * skill_lv) / 100; break; - case ASC_METEORASSAULT: /* eIATg */ + case ASC_METEORASSAULT: /* ăĄăăŞă˘ăľăŤă */ damage = damage * (40 + 40 * skill_lv) / 100; damage2 = damage2 * (40 + 40 * skill_lv) / 100; break; - case SN_SHARPSHOOTING: /* V[vV
[eBO */ + case SN_SHARPSHOOTING: /* ăˇăŁăźăăˇăĽăźăăŁăłă° */ damage += damage * (30 * skill_lv) / 100; damage2 += damage2 * (30 * skill_lv) / 100; break; - case CG_ARROWVULCAN: /* A[oJ */ + case CG_ARROWVULCAN: /* ă˘ăăźăăŤăŤăł */ damage = damage * (160 + 40 * skill_lv) / 100; damage2 = damage2 * (160 + 40 * skill_lv) / 100; div_ = 9; break; - case AS_SPLASHER: /* xiXvbV[ */ + case AS_SPLASHER: /* ăăă ăšăăŠăăˇăŁăź */ damage = damage * (200 + 20 * skill_lv + 20 * pc_checkskill (sd, @@ -3542,9 +3542,9 @@ static struct Damage battle_calc_pc_weapon_attack (struct block_list *src, } } if (da == 2) - { //OiśŞŽľÄ˘éŠ + { //ä¸ćŽľćăçşĺăăŚăăă type = 0x08; - div_ = 255; //OiśpÉc + div_ = 255; //ä¸ćŽľćç¨ăŤâŚ damage = damage * (100 + 20 * pc_checkskill (sd, MO_TRIPLEATTACK)) / 100; @@ -3552,11 +3552,11 @@ static struct Damage battle_calc_pc_weapon_attack (struct block_list *src, if (skill_num != NPC_CRITICALSLASH) { - // Î ŰĚhäÍÉćé_[W̸ - // fBoCveNViąąĹ˘˘ĚŠČHj + // 寞 蹥ăŽé˛ĺžĄĺăŤăăăăĄăźă¸ăŽć¸ĺ° + // ăăŁăă¤ăłăăăăŻăˇă§ăłďźăăă§ăăăŽăăŞďźďź if (skill_num != MO_INVESTIGATE && skill_num != MO_EXTREMITYFIST && skill_num != KN_AUTOCOUNTER && def1 < 1000000) - { //DEF, VITł + { //DEF, VITçĄčŚ int t_def; target_count = 1 + battle_counttargeted (target, src, @@ -3676,9 +3676,9 @@ static struct Damage battle_calc_pc_weapon_attack (struct block_list *src, } } } - // ¸B_[WĚÇÁ + // 粞éŹăăĄăźă¸ăŽčż˝ĺ if (skill_num != MO_INVESTIGATE && skill_num != MO_EXTREMITYFIST) - { //DEF, VITł + { //DEF, VITçĄčŚ damage += battle_get_atk2 (src); damage2 += battle_get_atk_2 (src); } @@ -3698,9 +3698,9 @@ static struct Damage battle_calc_pc_weapon_attack (struct block_list *src, } } if (skill_num == LK_SPIRALPIERCE) - { /* XpCsA[X */ + { /* ăšăă¤ăŠăŤăă˘ăźăš */ if (sd->equip_index[9] >= 0) - { //dĘĹÇÁ_[W羢ĚĹV[hu[đQlÉÇÁ + { //ééă§čż˝ĺ ăăĄăźă¸ăăăăŽă§ăˇăźăŤăăăźăĄăŠăłăĺčăŤčż˝ĺ int index = sd->equip_index[9]; if (sd->inventory_data[index] && sd->inventory_data[index]->type == 4) @@ -3715,17 +3715,17 @@ static struct Damage battle_calc_pc_weapon_attack (struct block_list *src, } } - // 0˘žÁ˝ę1Éâł + // 0ćŞćşă ăŁăĺ ´ĺ1ăŤčŁćŁ if (damage < 1) damage = 1; if (damage2 < 1) damage2 = 1; - // XLCłQiCűnj - // Cű_[W(EčĚÝ) \jbNu[ÍĘi1ÉtŤ1/8K) + // ăšăăŤäżŽćŁďźďźäżŽçˇ´çłťďź + // 俎硴ăăĄăźă¸(ĺłćăŽăż) ă˝ăăăŻăăăźćăŻĺĽĺŚçďź1ćăŤäťă1/8éŠĺż) if (skill_num != MO_INVESTIGATE && skill_num != MO_EXTREMITYFIST && skill_num != CR_GRANDCROSS) - { //Cű_[Wł + { //俎硴ăăĄăźă¸çĄčŚ damage = battle_addmastery (sd, target, damage, 0); damage2 = battle_addmastery (sd, target, damage2, 1); } @@ -3736,12 +3736,12 @@ static struct Damage battle_calc_pc_weapon_attack (struct block_list *src, hitrate = 1000000; } - // ńđCł + // ĺéżäżŽćŁ hitrate = (hitrate < 5) ? 5 : hitrate; - if (hitrate < 1000000 && // KU - (t_sc_data != NULL && (t_sc_data[SC_SLEEP].timer != -1 || // °ÍK - t_sc_data[SC_STAN].timer != -1 || // X^ÍK - t_sc_data[SC_FREEZE].timer != -1 || (t_sc_data[SC_STONE].timer != -1 && t_sc_data[SC_STONE].val2 == 0)))) // ÍK + if (hitrate < 1000000 && // ĺż
ä¸ćťć + (t_sc_data != NULL && (t_sc_data[SC_SLEEP].timer != -1 || // çĄç ăŻĺż
ä¸ + t_sc_data[SC_STAN].timer != -1 || // ăšăżăłăŻĺż
ä¸ + t_sc_data[SC_FREEZE].timer != -1 || (t_sc_data[SC_STONE].timer != -1 && t_sc_data[SC_STONE].val2 == 0)))) // ĺçľăŻĺż
ä¸ hitrate = 1000000; if (type == 0 && MRAND (100) >= hitrate) { @@ -3752,7 +3752,7 @@ static struct Damage battle_calc_pc_weapon_attack (struct block_list *src, { dmg_lv = ATK_DEF; } - // XLCłRií¤j + // ăšăăŤäżŽćŁďźďźćŚĺ¨ç çŠśďź if ((skill = pc_checkskill (sd, BS_WEAPONRESEARCH)) > 0) { damage += skill * 2; @@ -3767,56 +3767,56 @@ static struct Damage battle_calc_pc_weapon_attack (struct block_list *src, } } -//XLÉćé_[WâłąąÜĹ +//ăšăăŤăŤăăăăĄăźă¸čŁćŁăăăžă§ -//J[hÉćé_[WÇÁąąŠç +//ăŤăźăăŤăăăăĄăźă¸čż˝ĺ ĺŚçăăăă cardfix = 100; if (!sd->state.arrow_atk) - { //|îČO + { //ĺźç˘äťĽĺ¤ if (!battle_config.left_cardfix_to_right) - { //śčJ[hâłÝčłľ - cardfix = cardfix * (100 + sd->addrace[t_race]) / 100; // í°Éćé_[WCł - cardfix = cardfix * (100 + sd->addele[t_ele]) / 100; // ŽŤÉćé_[WCł - cardfix = cardfix * (100 + sd->addsize[t_size]) / 100; // TCYÉćé_[WCł + { //塌ćăŤăźăčŁćŁč¨ĺŽçĄă + cardfix = cardfix * (100 + sd->addrace[t_race]) / 100; // 税ćăŤăăăăĄăźă¸äżŽćŁ + cardfix = cardfix * (100 + sd->addele[t_ele]) / 100; // ĺąć§ăŤăăăăĄăźă¸äżŽćŁ + cardfix = cardfix * (100 + sd->addsize[t_size]) / 100; // ăľă¤ăşăŤăăăăĄăźă¸äżŽćŁ } else { - cardfix = cardfix * (100 + sd->addrace[t_race] + sd->addrace_[t_race]) / 100; // í°Éćé_[WCł(śčÉćéÇÁ č) - cardfix = cardfix * (100 + sd->addele[t_ele] + sd->addele_[t_ele]) / 100; // ŽŤÉćé_[WCł(śčÉćéÇÁ č) - cardfix = cardfix * (100 + sd->addsize[t_size] + sd->addsize_[t_size]) / 100; // TCYÉćé_[WCł(śčÉćéÇÁ č) + cardfix = cardfix * (100 + sd->addrace[t_race] + sd->addrace_[t_race]) / 100; // 税ćăŤăăăăĄăźă¸äżŽćŁ(塌ćăŤăăčż˝ĺ ăă) + cardfix = cardfix * (100 + sd->addele[t_ele] + sd->addele_[t_ele]) / 100; // ĺąć§ăŤăăăăĄăźă¸äżŽćŁ(塌ćăŤăăčż˝ĺ ăă) + cardfix = cardfix * (100 + sd->addsize[t_size] + sd->addsize_[t_size]) / 100; // ăľă¤ăşăŤăăăăĄăźă¸äżŽćŁ(塌ćăŤăăčż˝ĺ ăă) } } else - { //|î - cardfix = cardfix * (100 + sd->addrace[t_race] + sd->arrow_addrace[t_race]) / 100; // í°Éćé_[WCł(|îÉćéÇÁ č) - cardfix = cardfix * (100 + sd->addele[t_ele] + sd->arrow_addele[t_ele]) / 100; // ŽŤÉćé_[WCł(|îÉćéÇÁ č) - cardfix = cardfix * (100 + sd->addsize[t_size] + sd->arrow_addsize[t_size]) / 100; // TCYÉćé_[WCł(|îÉćéÇÁ č) + { //ĺźç˘ + cardfix = cardfix * (100 + sd->addrace[t_race] + sd->arrow_addrace[t_race]) / 100; // 税ćăŤăăăăĄăźă¸äżŽćŁ(ĺźç˘ăŤăăčż˝ĺ ăă) + cardfix = cardfix * (100 + sd->addele[t_ele] + sd->arrow_addele[t_ele]) / 100; // ĺąć§ăŤăăăăĄăźă¸äżŽćŁ(ĺźç˘ăŤăăčż˝ĺ ăă) + cardfix = cardfix * (100 + sd->addsize[t_size] + sd->arrow_addsize[t_size]) / 100; // ăľă¤ăşăŤăăăăĄăźă¸äżŽćŁ(ĺźç˘ăŤăăčż˝ĺ ăă) } if (t_mode & 0x20) - { //{X + { //ăăš if (!sd->state.arrow_atk) - { //|îUČOČç - if (!battle_config.left_cardfix_to_right) //śčJ[hâłÝčłľ - cardfix = cardfix * (100 + sd->addrace[10]) / 100; //{XX^[ÉÇÁ_[W - else //śčJ[hâłÝč č - cardfix = cardfix * (100 + sd->addrace[10] + sd->addrace_[10]) / 100; //{XX^[ÉÇÁ_[W(śčÉćéÇÁ č) + { //ĺźç˘ćťć䝼ĺ¤ăŞă + if (!battle_config.left_cardfix_to_right) //塌ćăŤăźăčŁćŁč¨ĺŽçĄă + cardfix = cardfix * (100 + sd->addrace[10]) / 100; //ăăšă˘ăłăšăżăźăŤčż˝ĺ ăăĄăźă¸ + else //塌ćăŤăźăčŁćŁč¨ĺŽăă + cardfix = cardfix * (100 + sd->addrace[10] + sd->addrace_[10]) / 100; //ăăšă˘ăłăšăżăźăŤčż˝ĺ ăăĄăźă¸(塌ćăŤăăčż˝ĺ ăă) } - else //|îU - cardfix = cardfix * (100 + sd->addrace[10] + sd->arrow_addrace[10]) / 100; //{XX^[ÉÇÁ_[W(|îÉćéÇÁ č) + else //ĺźç˘ćťć + cardfix = cardfix * (100 + sd->addrace[10] + sd->arrow_addrace[10]) / 100; //ăăšă˘ăłăšăżăźăŤčż˝ĺ ăăĄăźă¸(ĺźç˘ăŤăăčż˝ĺ ăă) } else - { //{XśáȢ + { //ăăšăăăŞă if (!sd->state.arrow_atk) - { //|îUČO - if (!battle_config.left_cardfix_to_right) //śčJ[hâłÝčłľ - cardfix = cardfix * (100 + sd->addrace[11]) / 100; //{XČOX^[ÉÇÁ_[W - else //śčJ[hâłÝč č - cardfix = cardfix * (100 + sd->addrace[11] + sd->addrace_[11]) / 100; //{XČOX^[ÉÇÁ_[W(śčÉćéÇÁ č) + { //ĺźç˘ćťćäťĽĺ¤ + if (!battle_config.left_cardfix_to_right) //塌ćăŤăźăčŁćŁč¨ĺŽçĄă + cardfix = cardfix * (100 + sd->addrace[11]) / 100; //ăăšäťĽĺ¤ă˘ăłăšăżăźăŤčż˝ĺ ăăĄăźă¸ + else //塌ćăŤăźăčŁćŁč¨ĺŽăă + cardfix = cardfix * (100 + sd->addrace[11] + sd->addrace_[11]) / 100; //ăăšäťĽĺ¤ă˘ăłăšăżăźăŤčż˝ĺ ăăĄăźă¸(塌ćăŤăăčż˝ĺ ăă) } else - cardfix = cardfix * (100 + sd->addrace[11] + sd->arrow_addrace[11]) / 100; //{XČOX^[ÉÇÁ_[W(|îÉćéÇÁ č) + cardfix = cardfix * (100 + sd->addrace[11] + sd->arrow_addrace[11]) / 100; //ăăšäťĽĺ¤ă˘ăłăšăżăźăŤčż˝ĺ ăăĄăźă¸(ĺźç˘ăŤăăčż˝ĺ ăă) } - //ÁčClasspâł(ĚúL¨{SpH) + //çšĺŽClassç¨čŁćŁĺŚç(ĺ°ĺĽłăŽćĽč¨âăăłă´ăłç¨ďź) t_class = battle_get_class (target); for (i = 0; i < sd->add_damage_class_count; i++) { @@ -3827,22 +3827,22 @@ static struct Damage battle_calc_pc_weapon_attack (struct block_list *src, } } if (skill_num != CR_GRANDCROSS || !battle_config.gx_cardfix) - damage = damage * cardfix / 100; //J[hâłÉćé_[WÁ -//J[hÉćé_[WÁąąÜĹ + damage = damage * cardfix / 100; //ăŤăźăčŁćŁăŤăăăăĄăźă¸ĺ˘ĺ +//ăŤăźăăŤăăăăĄăźă¸ĺ˘ĺ ĺŚçăăăžă§ -//J[hÉćé_[WÇÁ(śč)ąąŠç +//ăŤăźăăŤăăăăĄăźă¸čż˝ĺ ĺŚç(塌ć)ăăăă cardfix = 100; if (!battle_config.left_cardfix_to_right) - { //śčJ[hâłÝčłľ - cardfix = cardfix * (100 + sd->addrace_[t_race]) / 100; // í°Éćé_[WCłśč - cardfix = cardfix * (100 + sd->addele_[t_ele]) / 100; // Ž ŤÉćé_[WCłśč - cardfix = cardfix * (100 + sd->addsize_[t_size]) / 100; // TCYÉćé_[WCłśč - if (t_mode & 0x20) //{X - cardfix = cardfix * (100 + sd->addrace_[10]) / 100; //{XX^[ÉÇÁ_[Wśč + { //塌ćăŤăźăčŁćŁč¨ĺŽçĄă + cardfix = cardfix * (100 + sd->addrace_[t_race]) / 100; // 税ćăŤăăăăĄăźă¸äżŽćŁĺˇŚć + cardfix = cardfix * (100 + sd->addele_[t_ele]) / 100; // ĺą ć§ăŤăăăăĄăźă¸äżŽćŁĺˇŚć + cardfix = cardfix * (100 + sd->addsize_[t_size]) / 100; // ăľă¤ăşăŤăăăăĄăźă¸äżŽćŁĺˇŚć + if (t_mode & 0x20) //ăăš + cardfix = cardfix * (100 + sd->addrace_[10]) / 100; //ăăšă˘ăłăšăżăźăŤčż˝ĺ ăăĄăźă¸ĺˇŚć else - cardfix = cardfix * (100 + sd->addrace_[11]) / 100; //{XČOX^[ÉÇÁ_[Wśč + cardfix = cardfix * (100 + sd->addrace_[11]) / 100; //ăăšäťĽĺ¤ă˘ăłăšăżăźăŤčż˝ĺ ăăĄăźă¸ĺˇŚć } - //ÁčClasspâłśč(ĚúL¨{SpH) + //çšĺŽClassç¨čŁćŁĺŚç塌ć(ĺ°ĺĽłăŽćĽč¨âăăłă´ăłç¨ďź) for (i = 0; i < sd->add_damage_class_count_; i++) { if (sd->add_damage_classid_[i] == t_class) @@ -3852,24 +3852,24 @@ static struct Damage battle_calc_pc_weapon_attack (struct block_list *src, } } if (skill_num != CR_GRANDCROSS) - damage2 = damage2 * cardfix / 100; //J[hâłÉćéśč_[WÁ -//J[hÉćé_[WÁ(śč)ąąÜĹ + damage2 = damage2 * cardfix / 100; //ăŤăźăčŁćŁăŤăă塌ćăăĄăźă¸ĺ˘ĺ +//ăŤăźăăŤăăăăĄăźă¸ĺ˘ĺ ĺŚç(塌ć)ăăăžă§ // -- moonsoul (cardfix for magic damage portion of ASC_BREAKER) if (skill_num == ASC_BREAKER) damage3 = damage3 * cardfix / 100; -//J[hÉćé_[W¸ąąŠç +//ăŤăźăăŤăăăăĄăźă¸ć¸čĄ°ĺŚçăăăă if (tsd) - { //ÎŰŞPCĚę + { //寞蹥ăPCăŽĺ ´ĺ cardfix = 100; - cardfix = cardfix * (100 - tsd->subrace[s_race]) / 100; // í°Éćé_[WĎŤ - cardfix = cardfix * (100 - tsd->subele[s_ele]) / 100; // ŽŤÉćé_[WĎŤ + cardfix = cardfix * (100 - tsd->subrace[s_race]) / 100; // 税ćăŤăăăăĄăźă¸čć§ + cardfix = cardfix * (100 - tsd->subele[s_ele]) / 100; // ĺąć§ăŤăăăăĄăźă¸čć§ if (battle_get_mode (src) & 0x20) - cardfix = cardfix * (100 - tsd->subrace[10]) / 100; //{XŠçĚUÍ_[W¸ + cardfix = cardfix * (100 - tsd->subrace[10]) / 100; //ăăšăăăŽćťćăŻăăĄăźă¸ć¸ĺ° else - cardfix = cardfix * (100 - tsd->subrace[11]) / 100; //{XČOŠçĚUÍ_[W¸ - //ÁčClasspâłśč(ĚúL¨{SpH) + cardfix = cardfix * (100 - tsd->subrace[11]) / 100; //ăăšäťĽĺ¤ăăăŽćťćăŻăăĄăźă¸ć¸ĺ° + //çšĺŽClassç¨čŁćŁĺŚç塌ć(ĺ°ĺĽłăŽćĽč¨âăăłă´ăłç¨ďź) for (i = 0; i < tsd->add_def_class_count; i++) { if (tsd->add_def_classid[i] == sd->status.class) @@ -3879,27 +3879,27 @@ static struct Damage battle_calc_pc_weapon_attack (struct block_list *src, } } if (flag & BF_LONG) - cardfix = cardfix * (100 - tsd->long_attack_def_rate) / 100; //ŁUÍ_[W¸(zCĆŠ) + cardfix = cardfix * (100 - tsd->long_attack_def_rate) / 100; //é čˇé˘ćťćăŻăăĄăźă¸ć¸ĺ°(ăăŤăłCă¨ă) if (flag & BF_SHORT) - cardfix = cardfix * (100 - tsd->near_attack_def_rate) / 100; //ߣUÍ_[W¸(YłľH) - damage = damage * cardfix / 100; //J[hâłÉćé_[W¸ - damage2 = damage2 * cardfix / 100; //J[hâłÉćéśč_[W¸ + cardfix = cardfix * (100 - tsd->near_attack_def_rate) / 100; //čżčˇé˘ćťćăŻăăĄăźă¸ć¸ĺ°(芲ĺ˝çĄăďź) + damage = damage * cardfix / 100; //ăŤăźăčŁćŁăŤăăăăĄăźă¸ć¸ĺ° + damage2 = damage2 * cardfix / 100; //ăŤăźăčŁćŁăŤăă塌ćăăĄăźă¸ć¸ĺ° } -//J[hÉćé_[W¸ąąÜĹ +//ăŤăźăăŤăăăăĄăźă¸ć¸čĄ°ĺŚçăăăžă§ -//ÎŰÉXe[^XŮíŞ éęĚ_[W¸ZąąŠç +//寞蹥ăŤăšăăźăżăšç°ĺ¸¸ăăăĺ ´ĺăŽăăĄăźă¸ć¸çŽĺŚçăăăă if (t_sc_data) { cardfix = 100; - if (t_sc_data[SC_DEFENDER].timer != -1 && flag & BF_LONG) //fBtF_[óÔĹŁU - cardfix = cardfix * (100 - t_sc_data[SC_DEFENDER].val2) / 100; //fBtF_[Éćé¸ + if (t_sc_data[SC_DEFENDER].timer != -1 && flag & BF_LONG) //ăăŁăă§ăłăăźçść
ă§é čˇé˘ćťć + cardfix = cardfix * (100 - t_sc_data[SC_DEFENDER].val2) / 100; //ăăŁăă§ăłăăźăŤăăć¸čĄ° if (cardfix != 100) { - damage = damage * cardfix / 100; //fBtF_[âłÉćé_[W¸ - damage2 = damage2 * cardfix / 100; //fBtF_[âłÉćéśč_[W¸ + damage = damage * cardfix / 100; //ăăŁăă§ăłăăźčŁćŁăŤăăăăĄăźă¸ć¸ĺ° + damage2 = damage2 * cardfix / 100; //ăăŁăă§ăłăăźčŁćŁăŤăă塌ćăăĄăźă¸ć¸ĺ° } if (t_sc_data[SC_ASSUMPTIO].timer != -1) - { //AXveBI + { //ă˘ăšă ăăăŁăŞ if (!map[target->m].flag.pvp) { damage = damage / 3; @@ -3912,67 +3912,67 @@ static struct Damage battle_calc_pc_weapon_attack (struct block_list *src, } } } -//ÎŰÉXe[^XŮíŞ éęĚ_[W¸ZąąÜĹ +//寞蹥ăŤăšăăźăżăšç°ĺ¸¸ăăăĺ ´ĺăŽăăĄăźă¸ć¸çŽĺŚçăăăžă§ if (damage < 0) damage = 0; if (damage2 < 0) damage2 = 0; - // Ž ŤĚKp + // ĺą ć§ăŽéŠç¨ damage = battle_attr_fix (damage, s_ele, battle_get_element (target)); damage2 = battle_attr_fix (damage2, s_ele_, battle_get_element (target)); - // ŻĚŠŻçAC
ĚKp + // ćăŽăăăăć°çăŽéŠç¨ damage += sd->star; damage2 += sd->star_; damage += sd->spiritball * 3; damage2 += sd->spiritball * 3; if (sc_data && sc_data[SC_AURABLADE].timer != -1) - { /* I[u[h K */ + { /* ăŞăźăŠăăŹăźă ĺż
ä¸ */ damage += sc_data[SC_AURABLADE].val1 * 10; damage2 += sc_data[SC_AURABLADE].val1 * 10; } if (skill_num == PA_PRESSURE) - { /* vbV[ K? */ + { /* ăăŹăăˇăŁăź ĺż
ä¸? */ damage = 700 + 100 * skill_lv; damage2 = 700 + 100 * skill_lv; } - // >ńŹĚśE_[WvZNŠâÁÄ꼼ĽĽŚŚŚI - // >map_session_data Éśč_[W(atk,atk2)ÇÁľÄ - // >pc_calcstatus()Ĺâé׍ŠČH - // map_session_data Éśčí(atk,atk2,ele,star,atkmods)ÇÁľÄ - // pc_calcstatus()Ĺf[^đü;Ģܡ + // >äşĺćľăŽĺˇŚĺłăăĄăźă¸č¨çŽčŞ°ăăăŁăŚăăăăăăăăăďź + // >map_session_data ăŤĺˇŚćăăĄăźă¸(atk,atk2)čż˝ĺ ă㌠+ // >pc_calcstatus()ă§ăăăšăăăŞďź + // map_session_data ăŤĺˇŚććŚĺ¨(atk,atk2,ele,star,atkmods)čż˝ĺ ă㌠+ // pc_calcstatus()ă§ăăźăżăĺ
ĽĺăăŚăăžă - //śčĚÝíő + //塌ćăŽăżćŚĺ¨čŁ
ĺ if (sd->weapontype1 == 0 && sd->weapontype2 > 0) { damage = damage2; damage2 = 0; } - // EčAśčCűĚKp + // ĺłćă塌ć俎硴ăŽéŠç¨ if (sd->status.weapon > 16) - { // ńŹŠ? + { // äşĺćľă? int dmg = damage, dmg2 = damage2; - // EčCű(60% ` 100%) EčSĘ + // ĺłć俎硴(60% ă 100%) ĺłćĺ
¨čŹ skill = pc_checkskill (sd, AS_RIGHT); damage = damage * (50 + (skill * 10)) / 100; if (dmg > 0 && damage < 1) damage = 1; - // śčCű(40% ` 80%) śčSĘ + // 塌ć俎硴(40% ă 80%) 塌ćĺ
¨čŹ skill = pc_checkskill (sd, AS_LEFT); damage2 = damage2 * (30 + (skill * 10)) / 100; if (dmg2 > 0 && damage2 < 1) damage2 = 1; } - else //ńŹĹČŻęÎśč_[WÍ0 + else //äşĺćľă§ăŞăăă°ĺˇŚćăăĄăźă¸ăŻ0 damage2 = 0; - // Eč,ZĚÝ + // ĺłć,çĺŁăŽăż if (da == 1) - { //_uA^bNŞŽľÄ˘éŠ + { //ăăăŤă˘ăżăăŻăçşĺăăŚăăă div_ = 2; damage += damage; type = 0x08; @@ -3980,14 +3980,14 @@ static struct Damage battle_calc_pc_weapon_attack (struct block_list *src, if (sd->status.weapon == 16) { - // J^[Ç_[W + // ăŤăżăźăŤčż˝ćăăĄăźă¸ skill = pc_checkskill (sd, TF_DOUBLE); damage2 = damage * (1 + (skill * 2)) / 100; if (damage > 0 && damage2 < 1) damage2 = 1; } - // CxiCł + // ă¤ăłăăă äżŽćŁ if (skill_num == TF_POISON) { damage = @@ -3999,7 +3999,7 @@ static struct Damage battle_calc_pc_weapon_attack (struct block_list *src, damage = battle_attr_fix (damage, 0, battle_get_element (target)); } - // ŽSńđĚťč + // ĺŽĺ
¨ĺéżăŽĺ¤ĺŽ if (skill_num == 0 && skill_lv >= 0 && tsd != NULL && div_ < 255 && MRAND (1000) < battle_get_flee2 (target)) { @@ -4008,7 +4008,7 @@ static struct Damage battle_calc_pc_weapon_attack (struct block_list *src, dmg_lv = ATK_LUCKY; } - // ÎŰŞŽSńđđˇéÝčŞONČç + // 寞蹥ăĺŽĺ
¨ĺéżăăăč¨ĺŽăONăŞă if (battle_config.enemy_perfect_flee) { if (skill_num == 0 && skill_lv >= 0 && tmd != NULL && div_ < 255 @@ -4020,7 +4020,7 @@ static struct Damage battle_calc_pc_weapon_attack (struct block_list *src, } } - //MobĚModeÉćtOާÁĢéĆŤĚ + //MobăŽModeăŤé 埡ăăŠă°ăçŤăŁăŚăăă¨ăăŽĺŚç if (t_mode & 0x40) { if (damage > 0) @@ -4029,23 +4029,23 @@ static struct Damage battle_calc_pc_weapon_attack (struct block_list *src, damage2 = 1; } - //bNoWeaponDamage(ÝčACełľH)ĹOhNXśáȢęÍ_[WŞ0 + //bNoWeaponDamage(č¨ĺŽă˘ă¤ăă çĄăďź)ă§ă°ăŠăłăăŻăăšăăăŞăĺ ´ĺăŻăăĄăźă¸ă0 if (tsd && tsd->special_state.no_weapon_damage && skill_num != CR_GRANDCROSS) damage = damage2 = 0; if (skill_num != CR_GRANDCROSS && (damage > 0 || damage2 > 0)) { - if (damage2 < 1) // _[WĹICł + if (damage2 < 1) // ăăĄăźă¸ćçľäżŽćŁ damage = battle_calc_damage (src, target, damage, div_, skill_num, skill_lv, flag); - else if (damage < 1) // EčŞ~XH + else if (damage < 1) // ĺłćăăăšďź damage2 = battle_calc_damage (src, target, damage2, div_, skill_num, skill_lv, flag); else - { // ź č/J^[ĚęÍżĺÁĆvZââąľ˘ + { // 严 ć/ăŤăżăźăŤăŽĺ ´ĺăŻăĄăăŁă¨č¨çŽăăăăă int d1 = damage + damage2, d2 = damage2; damage = battle_calc_damage (src, target, damage + damage2, div_, @@ -4094,7 +4094,7 @@ static struct Damage battle_calc_pc_weapon_attack (struct block_list *src, } /*========================================== - * í_[WvZ + * ćŚĺ¨ăăĄăźă¸č¨çŽ *------------------------------------------ */ struct Damage battle_calc_weapon_attack (struct block_list *src, @@ -4104,7 +4104,7 @@ struct Damage battle_calc_weapon_attack (struct block_list *src, { struct Damage wd; - //returnOĚŞ éĚĹîńoÍĚÝĎX + //returnĺăŽĺŚçăăăăŽă§ć
ĺ ąĺşĺé¨ăŽăżĺ¤ć´ if (src == NULL || target == NULL) { nullpo_info (NLP_MARK); @@ -4173,7 +4173,7 @@ struct Damage battle_calc_weapon_attack (struct block_list *src, } /*========================================== - * @_[WvZ + * éćłăăĄăźă¸č¨çŽ *------------------------------------------ */ struct Damage battle_calc_magic_attack (struct block_list *bl, @@ -4192,7 +4192,7 @@ struct Damage battle_calc_magic_attack (struct block_list *bl, struct map_session_data *sd = NULL, *tsd = NULL; struct mob_data *tmd = NULL; - //returnOĚŞ éĚĹîńoÍĚÝĎX + //returnĺăŽĺŚçăăăăŽă§ć
ĺ ąĺşĺé¨ăŽăżĺ¤ć´ if (bl == NULL || target == NULL) { nullpo_info (NLP_MARK); @@ -4227,24 +4227,24 @@ struct Damage battle_calc_magic_attack (struct block_list *bl, if (skill_num > 0) { switch (skill_num) - { // î{_[WvZ(XL˛ĆÉ) - // q[oršĚ + { // ĺşćŹăăĄăźă¸č¨çŽ(ăšăăŤăă¨ăŤĺŚç) + // ăăźăŤorčä˝ case AL_HEAL: case PR_BENEDICTIO: damage = skill_calc_heal (bl, skill_lv) / 2; normalmagic_flag = 0; break; - case PR_ASPERSIO: /* AXyVI */ - damage = 40; //Ĺč_[W + case PR_ASPERSIO: /* ă˘ăšăăŤăˇăŞ */ + damage = 40; //ĺşĺŽăăĄăźă¸ normalmagic_flag = 0; break; - case PR_SANCTUARY: // TN`
A + case PR_SANCTUARY: // ăľăłăŻăăĽă˘ăŞ damage = (skill_lv > 6) ? 388 : skill_lv * 50; normalmagic_flag = 0; blewcount |= 0x10000; break; case ALL_RESURRECTION: - case PR_TURNUNDEAD: // UUNVĆ^[Afbh + case PR_TURNUNDEAD: // ćťćăŞăśăŹăŻăˇă§ăłă¨ăżăźăłă˘ăłăăă if (target->type != BL_PC && battle_check_undead (t_race, t_ele)) { @@ -4257,10 +4257,10 @@ struct Damage battle_calc_magic_attack (struct block_list *bl, if (thres > 700) thres = 700; // if(battle_config.battle_log) -// printf("^[AfbhI mŚ%d ń(窌)\n", thres); - if (MRAND (1000) < thres && !(t_mode & 0x20)) // Ź÷ +// printf("ăżăźăłă˘ăłăăăďź ç˘şç%d â°(ĺĺç)\n", thres); + if (MRAND (1000) < thres && !(t_mode & 0x20)) // ćĺ damage = hp; - else // ¸s + else // 夹ć damage = battle_get_lv (bl) + battle_get_int (bl) + skill_lv * 10; @@ -4268,7 +4268,7 @@ struct Damage battle_calc_magic_attack (struct block_list *bl, normalmagic_flag = 0; break; - case MG_NAPALMBEAT: // ip[r[giŞUvZÝj + case MG_NAPALMBEAT: // ăăăźă ăăźăďźĺćŁč¨çŽčžźăżďź MATK_FIX (70 + skill_lv * 10, 100); if (flag > 0) { @@ -4281,7 +4281,7 @@ struct Damage battle_calc_magic_attack (struct block_list *bl, ("battle_calc_magic_attack(): napam enemy count=0 !\n"); } break; - case MG_FIREBALL: // t@C[{[ + case MG_FIREBALL: // ăăĄă¤ă¤ăźăăźăŤ { const int drate[] = { 100, 90, 70 }; if (flag > 2) @@ -4290,9 +4290,9 @@ struct Damage battle_calc_magic_attack (struct block_list *bl, MATK_FIX ((95 + skill_lv * 5) * drate[flag], 10000); } break; - case MG_FIREWALL: // t@C[EH[ + case MG_FIREWALL: // ăăĄă¤ă¤ăźăŚăŠăźăŤ /* - if( (t_ele!=3 && !battle_check_undead(t_race,t_ele)) || target->type==BL_PC ) //PCÍÎŽŤĹŕňÔHťŕťŕ_[WóŻéH + if( (t_ele!=3 && !battle_check_undead(t_race,t_ele)) || target->type==BL_PC ) //PCăŻçŤĺąć§ă§ăéŁăśďźăăăăăăĄăźă¸ĺăăďź blewcount |= 0x10000; else blewcount = 0; @@ -4304,18 +4304,18 @@ struct Damage battle_calc_magic_attack (struct block_list *bl, blewcount |= 0x10000; MATK_FIX (1, 2); break; - case MG_THUNDERSTORM: // T_[Xg[ + case MG_THUNDERSTORM: // ăľăłăăźăšăăźă MATK_FIX (80, 100); break; - case MG_FROSTDIVER: // tXg_Co + case MG_FROSTDIVER: // ăăăšăăă¤ă MATK_FIX (100 + skill_lv * 10, 100); break; - case WZ_FROSTNOVA: // tXg_Co + case WZ_FROSTNOVA: // ăăăšăăă¤ă MATK_FIX (((100 + skill_lv * 10) * (2 / 3)), 100); break; - case WZ_FIREPILLAR: // t@C[s[ + case WZ_FIREPILLAR: // ăăĄă¤ă¤ăźăăŠăź if (mdef1 < 1000000) - mdef1 = mdef2 = 0; // MDEFł + mdef1 = mdef2 = 0; // MDEFçĄčŚ MATK_FIX (1, 5); matk1 += 50; matk2 += 50; @@ -4324,26 +4324,26 @@ struct Damage battle_calc_magic_attack (struct block_list *bl, MATK_FIX (100 + skill_lv * 20, 100); break; case WZ_METEOR: - case WZ_JUPITEL: // seT_[ + case WZ_JUPITEL: // ăŚăăăŤăľăłăăź break; - case WZ_VERMILION: // [hIuo[~I + case WZ_VERMILION: // ăăźăăŞăăăźăăŞăŞăł MATK_FIX (skill_lv * 20 + 80, 100); break; - case WZ_WATERBALL: // EH[^[{[ + case WZ_WATERBALL: // ăŚăŠăźăżăźăăźăŤ matk1 += skill_lv * 30; matk2 += skill_lv * 30; break; - case WZ_STORMGUST: // Xg[KXg + case WZ_STORMGUST: // ăšăăźă ăŹăšă MATK_FIX (skill_lv * 40 + 100, 100); blewcount |= 0x10000; break; - case AL_HOLYLIGHT: // z[[Cg + case AL_HOLYLIGHT: // ăăźăŞăźăŠă¤ă MATK_FIX (125, 100); break; case AL_RUWACH: MATK_FIX (145, 100); break; - case HW_NAPALMVULCAN: // ip[r[giŞUvZÝj + case HW_NAPALMVULCAN: // ăăăźă ăăźăďźĺćŁč¨çŽčžźăżďź MATK_FIX (70 + skill_lv * 10, 100); if (flag > 0) { @@ -4360,7 +4360,7 @@ struct Damage battle_calc_magic_attack (struct block_list *bl, } if (normalmagic_flag) - { // ęĘ@_[WvZ + { // ä¸čŹéćłăăĄăźă¸č¨çŽ int imdef_flag = 0; if (matk1 > matk2) damage = matk2 + MRAND ((matk1 - matk2 + 1)); @@ -4426,8 +4426,8 @@ struct Damage battle_calc_magic_attack (struct block_list *bl, { int s_class = battle_get_class (bl); cardfix = 100; - cardfix = cardfix * (100 - tsd->subele[ele]) / 100; // Ž ŤÉćé_[WĎŤ - cardfix = cardfix * (100 - tsd->subrace[race]) / 100; // í°Éćé_[WĎŤ + cardfix = cardfix * (100 - tsd->subele[ele]) / 100; // ĺą ć§ăŤăăăăĄăźă¸čć§ + cardfix = cardfix * (100 - tsd->subrace[race]) / 100; // 税ćăŤăăăăĄăźă¸čć§ cardfix = cardfix * (100 - tsd->magic_subrace[race]) / 100; if (battle_get_mode (bl) & 0x20) cardfix = cardfix * (100 - tsd->magic_subrace[10]) / 100; @@ -4447,18 +4447,18 @@ struct Damage battle_calc_magic_attack (struct block_list *bl, if (damage < 0) damage = 0; - damage = battle_attr_fix (damage, ele, battle_get_element (target)); // Ž ŤCł + damage = battle_attr_fix (damage, ele, battle_get_element (target)); // ĺą ć§äżŽćŁ if (skill_num == CR_GRANDCROSS) - { // OhNX + { // ă°ăŠăłăăŻăăš struct Damage wd; wd = battle_calc_weapon_attack (bl, target, skill_num, skill_lv, flag); damage = (damage + wd.damage) * (100 + 40 * skill_lv) / 100; if (battle_config.gx_dupele) - damage = battle_attr_fix (damage, ele, battle_get_element (target)); //ŽŤ2ńŠŠé + damage = battle_attr_fix (damage, ele, battle_get_element (target)); //ĺąć§2ĺăăă if (bl == target) - damage = damage / 2; //˝ŽÍźŞ + damage = damage / 2; //ĺĺăŻĺĺ } div_ = skill_get_num (skill_num, skill_lv); @@ -4479,10 +4479,10 @@ struct Damage battle_calc_magic_attack (struct block_list *bl, damage = (damage * (100 - battle_config.gtb_pvp_only)) / 100; } else - damage = 0; // Š ŕĺłJ[hi@_[WOj + damage = 0; // éť éč˛ăŤăźăďźéćłăăĄăźă¸ďźďź } - damage = battle_calc_damage (bl, target, damage, div_, skill_num, skill_lv, aflag); // ĹICł + damage = battle_calc_damage (bl, target, damage, div_, skill_num, skill_lv, aflag); // ćçľäżŽćŁ /* magic_damage_return by [AppleGirl] and [Valaris] */ if (target->type == BL_PC && tsd && tsd->magic_damage_return > 0) @@ -4508,7 +4508,7 @@ struct Damage battle_calc_magic_attack (struct block_list *bl, } /*========================================== - * ťĚź_[WvZ + * ăăŽäťăăĄăźă¸č¨çŽ *------------------------------------------ */ struct Damage battle_calc_misc_attack (struct block_list *bl, @@ -4527,7 +4527,7 @@ struct Damage battle_calc_misc_attack (struct block_list *bl, int aflag = BF_MISC | BF_LONG | BF_SKILL; - //returnOĚŞ éĚĹîńoÍĚÝĎX + //returnĺăŽĺŚçăăăăŽă§ć
ĺ ąĺşĺé¨ăŽăżĺ¤ć´ if (bl == NULL || target == NULL) { nullpo_info (NLP_MARK); @@ -4547,19 +4547,19 @@ struct Damage battle_calc_misc_attack (struct block_list *bl, switch (skill_num) { - case HT_LANDMINE: // h}C + case HT_LANDMINE: // ăŠăłăăă¤ăł damage = skill_lv * (dex + 75) * (100 + int_) / 100; break; - case HT_BLASTMINE: // uXg}C + case HT_BLASTMINE: // ăăŠăšăăă¤ăł damage = skill_lv * (dex / 2 + 50) * (100 + int_) / 100; break; - case HT_CLAYMORETRAP: // NCA[gbv + case HT_CLAYMORETRAP: // ăŻăŹă¤ă˘ă˘ăźăăŠăă damage = skill_lv * (dex / 2 + 75) * (100 + int_) / 100; break; - case HT_BLITZBEAT: // ubcr[g + case HT_BLITZBEAT: // ăăŞăăăăźă if (sd == NULL || (skill = pc_checkskill (sd, HT_STEELCROW)) <= 0) skill = 0; damage = (dex / 10 + int_ / 2 + skill * 3 + 40) * 2; @@ -4567,22 +4567,22 @@ struct Damage battle_calc_misc_attack (struct block_list *bl, damage /= flag; break; - case TF_THROWSTONE: // ΰ + case TF_THROWSTONE: // çłćă damage = 30; damagefix = 0; break; - case BA_DISSONANCE: // sŚaš + case BA_DISSONANCE: // ä¸ĺĺéł damage = (skill_lv) * 20 + pc_checkskill (sd, BA_MUSICALLESSON) * 3; break; - case NPC_SELFDESTRUCTION: // Š + case NPC_SELFDESTRUCTION: // čŞç damage = battle_get_hp (bl) - (bl == target ? 1 : 0); damagefix = 0; break; - case NPC_SMOKING: // ^oRđz¤ + case NPC_SMOKING: // ăżăăłăĺ¸ă damage = 3; damagefix = 0; break; @@ -4608,7 +4608,7 @@ struct Damage battle_calc_misc_attack (struct block_list *bl, } } break; - case SN_FALCONASSAULT: /* t@RATg */ + case SN_FALCONASSAULT: /* ăăĄăŤăłăłă˘ăľăŤă */ skill = pc_checkskill (sd, HT_BLITZBEAT); damage = (100 + 50 * skill_lv + @@ -4627,14 +4627,14 @@ struct Damage battle_calc_misc_attack (struct block_list *bl, if (tsd) { cardfix = 100; - cardfix = cardfix * (100 - tsd->subele[ele]) / 100; // ŽŤÉćé_[WĎŤ - cardfix = cardfix * (100 - tsd->subrace[race]) / 100; // í°Éćé_[WĎŤ + cardfix = cardfix * (100 - tsd->subele[ele]) / 100; // ĺąć§ăŤăăăăĄăźă¸čć§ + cardfix = cardfix * (100 - tsd->subrace[race]) / 100; // 税ćăŤăăăăĄăźă¸čć§ cardfix = cardfix * (100 - tsd->misc_def_rate) / 100; damage = damage * cardfix / 100; } if (damage < 0) damage = 0; - damage = battle_attr_fix (damage, ele, battle_get_element (target)); // ŽŤCł + damage = battle_attr_fix (damage, ele, battle_get_element (target)); // ĺąć§äżŽćŁ } div_ = skill_get_num (skill_num, skill_lv); @@ -4649,7 +4649,7 @@ struct Damage battle_calc_misc_attack (struct block_list *bl, damage = div_; } - damage = battle_calc_damage (bl, target, damage, div_, skill_num, skill_lv, aflag); // ĹICł + damage = battle_calc_damage (bl, target, damage, div_, skill_num, skill_lv, aflag); // ćçľäżŽćŁ md.damage = damage; md.div_ = div_; @@ -4664,7 +4664,7 @@ struct Damage battle_calc_misc_attack (struct block_list *bl, } /*========================================== - * _[WvZęp + * ăăĄăźă¸č¨çŽä¸ćŹĺŚçç¨ *------------------------------------------ */ struct Damage battle_calc_attack (int attack_type, @@ -4696,7 +4696,7 @@ struct Damage battle_calc_attack (int attack_type, } /*========================================== - * ĘíUÜĆß + * é常ćťćĺŚçăžă¨ă *------------------------------------------ */ int battle_weapon_attack (struct block_list *src, struct block_list *target, @@ -4741,7 +4741,7 @@ int battle_weapon_attack (struct block_list *src, struct block_list *target, if (battle_check_target (src, target, BCT_ENEMY) > 0 && battle_check_range (src, target, 0)) { - // UÎŰĆČč¤éĚĹU + // ćťć寞蹥ă¨ăŞăăăăŽă§ćťć if (sd && sd->status.weapon == 11) { if (sd->equip_index[10] >= 0) @@ -4833,14 +4833,14 @@ int battle_weapon_attack (struct block_list *src, struct block_list *target, } if (wd.div_ == 255 && sd) - { //Oiś + { //ä¸ćŽľć int delay = 1000 - 4 * battle_get_agi (src) - 2 * battle_get_dex (src); int skilllv; if (wd.damage + wd.damage2 < battle_get_hp (target)) { if ((skilllv = pc_checkskill (sd, MO_CHAINCOMBO)) > 0) - delay += 300 * battle_config.combo_delay_rate / 100; //ÇÁfBCđconfÉć貎 + delay += 300 * battle_config.combo_delay_rate / 100; //čż˝ĺ ăăŁăŹă¤ăconfăŤăăčŞżć´ skill_status_change_start (src, SC_COMBO, MO_TRIPLEATTACK, skilllv, 0, 0, delay, 0); @@ -4855,7 +4855,7 @@ int battle_weapon_attack (struct block_list *src, struct block_list *target, { clif_damage (src, target, tick, wd.amotion, wd.dmotion, wd.damage, wd.div_, wd.type, wd.damage2); - //ńŹśčĆJ^[ÇĚ~X\Ś(łâč`) + //äşĺćľĺˇŚćă¨ăŤăżăźăŤčż˝ćăŽăăščĄ¨ç¤ş(çĄçăăă) if (sd && sd->status.weapon >= 16 && wd.damage2 == 0) clif_damage (src, target, tick + 10, wd.amotion, wd.dmotion, 0, 1, 0, 0); @@ -4967,7 +4967,7 @@ int battle_weapon_attack (struct block_list *src, struct block_list *target, skilllv, tick, flag); break; - case 1: /* xn */ + case 1: /* ćŻć´çłť */ if ((sc_data[SC_AUTOSPELL].val2 == AL_HEAL || (sc_data[SC_AUTOSPELL].val2 == ALL_RESURRECTION @@ -5011,7 +5011,7 @@ int battle_weapon_attack (struct block_list *src, struct block_list *target, [SC_AUTOSPELL].val2, skilllv, tick, flag); break; - case 1: /* xn */ + case 1: /* ćŻć´çłť */ if ((sc_data[SC_AUTOSPELL].val2 == AL_HEAL || (sc_data[SC_AUTOSPELL].val2 == ALL_RESURRECTION @@ -5064,7 +5064,7 @@ int battle_weapon_attack (struct block_list *src, struct block_list *target, skilllv, tick, flag); break; - case 1: /* xn */ + case 1: /* ćŻć´çłť */ if ((sd->autospell_id == AL_HEAL || (sd->autospell_id == ALL_RESURRECTION && target->type != BL_PC)) @@ -5154,7 +5154,7 @@ int battle_weapon_attack (struct block_list *src, struct block_list *target, (int) target, (int) src, skill_get_time2 (MO_BLADESTOP, lv), 0); } - if (t_sc_data && t_sc_data[SC_SPLASHER].timer != -1) //ŁÁ˝ĚĹÎŰĚxiXvbV[óÔđđ + if (t_sc_data && t_sc_data[SC_SPLASHER].timer != -1) //掴ăŁăăŽă§ĺŻžčąĄăŽăăă ăšăăŠăăˇăŁăźçść
ăč§Łé¤ skill_status_change_end (target, SC_SPLASHER, -1); map_freeblock_unlock (); @@ -5183,12 +5183,12 @@ int battle_check_undead (int race, int element) } /*========================================== - * GĄűťč(1=mč,0=Űč,-1=G[) - * flag&0xf0000 = 0x00000:GśáȢŠťčiret:1GĹÍȢj - * = 0x10000:p[eB[ťčiret:1=p[eB[o) - * = 0x20000:SÄ(ret:1=GĄűźű) - * = 0x40000:GŠťč(ret:1=G) - * = 0x50000:p[eB[śáȢŠťč(ret:1=p[eBĹȢ) + * ćľĺłćšĺ¤ĺŽ(1=čŻĺŽ,0=ĺŚĺŽ,-1=ă¨ăŠăź) + * flag&0xf0000 = 0x00000:ćľăăăŞăăĺ¤ĺŽďźret:1ďźćľă§ăŻăŞăďź + * = 0x10000:ăăźăăŁăźĺ¤ĺŽďźret:1=ăăźăăŁăźăĄăłă) + * = 0x20000:ĺ
¨ăŚ(ret:1=ćľĺłćšä¸Ąćš) + * = 0x40000:ćľăĺ¤ĺŽ(ret:1=ćľ) + * = 0x50000:ăăźăăŁăźăăăŞăăĺ¤ĺŽ(ret:1=ăăźăăŁă§ăŞă) *------------------------------------------ */ int battle_check_target (struct block_list *src, struct block_list *target, @@ -5201,7 +5201,7 @@ int battle_check_target (struct block_list *src, struct block_list *target, nullpo_retr (0, target); if (flag & 0x40000) - { // ˝]tO + { // ĺ蝢ăăŠă° int ret = battle_check_target (src, target, flag & 0x30000); if (ret != -1) return !ret; @@ -5216,7 +5216,7 @@ int battle_check_target (struct block_list *src, struct block_list *target, return -1; } - if (src->type == BL_SKILL && target->type == BL_SKILL) // ÎŰŞXLjbgČçłđmč + if (src->type == BL_SKILL && target->type == BL_SKILL) // 寞蹥ăăšăăŤăŚăăăăŞăçĄćĄäťśčŻĺŽ return -1; if (target->type == BL_PC @@ -5235,7 +5235,7 @@ int battle_check_target (struct block_list *src, struct block_list *target, } } - // XLjbgĚęAeđßé + // ăšăăŤăŚăăăăŽĺ ´ĺă茪ăćąăă if (src->type == BL_SKILL) { int inf2 = @@ -5257,25 +5257,25 @@ int battle_check_target (struct block_list *src, struct block_list *target, return -1; } } - // MobĹmaster_idŞ ÁÄspecial_mob_aiČçA˘Ťĺđßé + // Mobă§master_idăăăŁăŚspecial_mob_aiăŞăăĺŹĺ丝ăćąăă if (src->type == BL_MOB) { struct mob_data *md = (struct mob_data *) src; if (md && md->master_id > 0) { - if (md->master_id == target->id) // ĺČçmč + if (md->master_id == target->id) // 丝ăŞăčŻĺŽ return 1; if (md->state.special_mob_ai) { if (target->type == BL_MOB) - { //special_mob_aiĹÎŰŞMob + { //special_mob_aiă§ĺŻžčąĄăMob struct mob_data *tmd = (struct mob_data *) target; if (tmd) { - if (tmd->master_id != md->master_id) //˘ŤĺŞęĹČŻęÎŰč + if (tmd->master_id != md->master_id) //ĺŹĺ丝ăä¸çˇă§ăŞăăă°ĺŚĺŽ return 0; else - { //˘ŤĺŞęČĚĹmčľ˝˘ŻÇŠÍŰč + { //ĺŹĺ丝ăä¸çˇăŞăŽă§čŻĺŽăăăăăŠčŞçăŻĺŚĺŽ if (md->state.special_mob_ai > 2) return 0; else @@ -5289,20 +5289,20 @@ int battle_check_target (struct block_list *src, struct block_list *target, } } - if (src == target || ss == target) // ŻśČçmč + if (src == target || ss == target) // ĺăăŞăčŻĺŽ return 1; if (target->type == BL_PC && pc_isinvisible ((struct map_session_data *) target)) return -1; - if (src->prev == NULL || // ńĹéČçG[ + if (src->prev == NULL || // ćťăă§ăăŞăă¨ăŠăź (src->type == BL_PC && pc_isdead ((struct map_session_data *) src))) return -1; if ((ss->type == BL_PC && target->type == BL_MOB) || (ss->type == BL_MOB && target->type == BL_PC)) - return 0; // PCvsMOBČçŰč + return 0; // PCvsMOBăŞăĺŚĺŽ s_p = battle_get_party_id (ss); s_g = battle_get_guild_id (ss); @@ -5312,20 +5312,20 @@ int battle_check_target (struct block_list *src, struct block_list *target, if (flag & 0x10000) { - if (s_p && t_p && s_p == t_p) // Żśp[eBČçmčiĄűj + if (s_p && t_p && s_p == t_p) // ĺăăăźăăŁăŞăčŻĺŽďźĺłćšďź return 1; - else // p[eBőČ篜p[eBśáȢ_ĹŰč + else // ăăźăăŁć¤ç´˘ăŞăĺăăăźăăŁăăăŞăćçšă§ĺŚĺŽ return 0; } - if (ss->type == BL_MOB && s_g > 0 && t_g > 0 && s_g == t_g) // ŻśMh/mobNXČçmčiĄűj + if (ss->type == BL_MOB && s_g > 0 && t_g > 0 && s_g == t_g) // ĺăăŽăŤă/mobăŻăŠăšăŞăčŻĺŽďźĺłćšďź return 1; //printf("ss:%d src:%d target:%d flag:0x%x %d %d ",ss->id,src->id,target->id,flag,src->type,target->type); //printf("p:%d %d g:%d %d\n",s_p,t_p,s_g,t_g); if (ss->type == BL_PC && target->type == BL_PC) - { // źűPVP[hČçŰčiGj + { // 严ćšPVPă˘ăźăăŞăĺŚĺŽďźćľďź struct skill_unit *su = NULL; if (src->type == BL_SKILL) su = (struct skill_unit *) src; @@ -5367,9 +5367,9 @@ int battle_check_target (struct block_list *src, struct block_list *target, && g->alliance[i].guild_id == t_g) { if (g->alliance[i].opposition) - return 0; //GÎMhČçłđÉG + return 0; //ćľĺŻžăŽăŤăăŞăçĄćĄäťśăŤćľ else - return 1; //ŻżMhČçłđÉĄű + return 1; //ĺçăŽăŤăăŞăçĄćĄäťśăŤĺłćš } } } @@ -5377,11 +5377,11 @@ int battle_check_target (struct block_list *src, struct block_list *target, } } - return 1; // YľČ˘ĚĹłÖWl¨iÜ GśáȢĚĹĄűj + return 1; // 芲ĺ˝ăăŞăăŽă§çĄé˘äżäşşçŠďźăžăćľăăăŞăăŽă§ĺłćšďź } /*========================================== - * Ëöťč + * ĺ°ç¨ĺ¤ĺŽ *------------------------------------------ */ int battle_check_range (struct block_list *src, struct block_list *bl, @@ -5399,19 +5399,19 @@ int battle_check_range (struct block_list *src, struct block_list *bl, dy = abs (bl->y - src->y); arange = ((dx > dy) ? dx : dy); - if (src->m != bl->m) // á¤}bv + if (src->m != bl->m) // éăăăă return 0; - if (range > 0 && range < arange) // ˇŹé + if (range > 0 && range < arange) // é ăăă return 0; - if (arange < 2) // Żś}XŠ×Ú + if (arange < 2) // ĺăăăšăéŁćĽ return 1; // if(bl->type == BL_SKILL && ((struct skill_unit *)bl)->group->unit_id == 0x8d) // return 1; - // áQ¨ťč + // é厳çŠĺ¤ĺŽ wpd.path_len = 0; wpd.path_pos = 0; wpd.path_half = 0; @@ -5427,7 +5427,7 @@ int battle_check_range (struct block_list *src, struct block_list *bl, /*========================================== * Return numerical value of a switch configuration (modified by [Yor]) - * on/off, english, français, deutsch, espańol + * on/off, english, frančťis, deutsch, espaîŤl *------------------------------------------ */ int battle_config_switch (const char *str) @@ -5443,7 +5443,7 @@ int battle_config_switch (const char *str) } /*========================================== - * Ýčt@CđÇÝŢ + * č¨ĺŽăăĄă¤ăŤăčŞăżčžźă *------------------------------------------ */ int battle_config_read (const char *cfgName) diff --git a/src/map/battle.h b/src/map/battle.h index 44016a5..3153925 100644 --- a/src/map/battle.h +++ b/src/map/battle.h @@ -2,7 +2,7 @@ #ifndef _BATTLE_H_ #define _BATTLE_H_ -// _[W +// ăăĄăźă¸ struct Damage { int damage, damage2; @@ -10,17 +10,17 @@ struct Damage int amotion, dmotion; int blewcount; int flag; - int dmg_lv; //ÍÜę¸ZvZp@0:XLU ATK_LUCKY,ATK_FLEE,ATK_DEF + int dmg_lv; //ĺ˛ăžăć¸çŽč¨çŽç¨ă0:ăšăăŤćťć ATK_LUCKY,ATK_FLEE,ATK_DEF }; -// ŽŤ\iÇÝÝÍpc.cAbattle_attr_fixĹgpj +// ĺąć§čĄ¨ďźčŞăżčžźăżăŻpc.căbattle_attr_fixă§ä˝żç¨ďź extern int attr_fix_table[4][10][10]; struct map_session_data; struct mob_data; struct block_list; -// _[WvZ +// ăăĄăźă¸č¨çŽ struct Damage battle_calc_attack (int attack_type, struct block_list *bl, @@ -38,15 +38,15 @@ struct Damage battle_calc_misc_attack (struct block_list *bl, struct block_list *target, int skill_num, int skill_lv, int flag); -// ŽŤCłvZ +// ĺąć§äżŽćŁč¨çŽ int battle_attr_fix (int damage, int atk_elem, int def_elem); -// _[WĹIvZ +// ăăĄăźă¸ćçľč¨çŽ int battle_calc_damage (struct block_list *src, struct block_list *bl, int damage, int div_, int skill_num, int skill_lv, int flag); enum -{ // ĹIvZĚtO +{ // ćçľč¨çŽăŽăăŠă° BF_WEAPON = 0x0001, BF_MAGIC = 0x0002, BF_MISC = 0x0004, @@ -59,7 +59,7 @@ enum BF_SKILLMASK = 0x0f00, }; -// ŔŰÉHPđ¸ +// ĺŽéăŤHPăĺ˘ć¸ int battle_delay_damage (unsigned int tick, struct block_list *src, struct block_list *target, int damage, int flag); int battle_damage (struct block_list *bl, struct block_list *target, @@ -67,15 +67,15 @@ int battle_damage (struct block_list *bl, struct block_list *target, int battle_heal (struct block_list *bl, struct block_list *target, int hp, int sp, int flag); -// UâÚŽđ~ßé +// ćťćă秝ĺăć˘ăă int battle_stopattack (struct block_list *bl); int battle_stopwalking (struct block_list *bl, int type); -// ĘíUÜĆß +// é常ćťćĺŚçăžă¨ă int battle_weapon_attack (struct block_list *bl, struct block_list *target, unsigned int tick, int flag); -// eíp[^đžé +// ĺ税ăăŠăĄăźăżăĺžă int battle_counttargeted (struct block_list *bl, struct block_list *src, int target_lv); int battle_is_unarmed (struct block_list *bl); @@ -107,7 +107,7 @@ int battle_get_amotion (struct block_list *bl); int battle_get_dmotion (struct block_list *bl); int battle_get_element (struct block_list *bl); int battle_get_attack_element (struct block_list *bl); -int battle_get_attack_element2 (struct block_list *bl); //śčíŽŤćž +int battle_get_attack_element2 (struct block_list *bl); //塌ććŚĺ¨ĺąć§ĺĺž #define battle_get_elem_type(bl) (battle_get_element(bl)%10) #define battle_get_elem_level(bl) (battle_get_element(bl)/10/2) int battle_get_party_id (struct block_list *bl); @@ -142,7 +142,7 @@ int battle_check_target (struct block_list *src, struct block_list *target, int battle_check_range (struct block_list *src, struct block_list *bl, int range); -// Ýč +// č¨ĺŽ int battle_config_switch (const char *str); // [Valaris] diff --git a/src/map/chat.c b/src/map/chat.c index 1005205..772ac4c 100644 --- a/src/map/chat.c +++ b/src/map/chat.c @@ -19,7 +19,7 @@ int chat_triggerevent (struct chat_data *cd); /*========================================== - * `bg[ěŹ + * ăăŁăăăŤăźă ä˝ć *------------------------------------------ */ int chat_createchat (struct map_session_data *sd, int limit, int pub, @@ -63,7 +63,7 @@ int chat_createchat (struct map_session_data *sd, int limit, int pub, } /*========================================== - * ůś`bg[ÉQÁ + * ć˘ĺăăŁăăăŤăźă ăŤĺĺ *------------------------------------------ */ int chat_joinchat (struct map_session_data *sd, int chatid, char *pass) @@ -92,17 +92,17 @@ int chat_joinchat (struct map_session_data *sd, int chatid, char *pass) pc_setchatid (sd, cd->bl.id); - clif_joinchatok (sd, cd); // V˝ÉQÁľ˝lÉÍSőĚXg - clif_addchat (cd, sd); // ůÉÉ˝lÉÍÇÁľ˝lĚń - clif_dispchat (cd, 0); // üÍĚlÉÍlĎťń + clif_joinchatok (sd, cd); // ć°ăăŤĺĺ ăăäşşăŤăŻĺ
¨ĺĄăŽăŞăšă + clif_addchat (cd, sd); // ć˘ăŤä¸ăŤĺą
ăäşşăŤăŻčż˝ĺ ăăäşşăŽĺ ąĺ + clif_dispchat (cd, 0); // ĺ¨ĺ˛ăŽäşşăŤăŻäşşć°ĺ¤ĺĺ ąĺ - chat_triggerevent (cd); // Cxg + chat_triggerevent (cd); // ă¤ăăłă return 0; } /*========================================== - * `bg[Šç˛Żé + * ăăŁăăăŤăźă ăăćăă *------------------------------------------ */ int chat_leavechat (struct map_session_data *sd) @@ -124,17 +124,17 @@ int chat_leavechat (struct map_session_data *sd) break; } } - if (leavechar < 0) // ťĚchatÉŽľÄ˘Č˘çľ˘ (oOĚÝ) + if (leavechar < 0) // ăăŽchatăŤćĺąăăŚăăŞăăăă (ăă°ćăŽăż) return -1; if (leavechar == 0 && cd->users > 1 && (*cd->owner)->type == BL_PC) { - // LŇžÁ˝&źÉlŞé&PCĚ`bg + // ććč
ă ăŁă&äťăŤäşşăĺą
ă&PCăŽăăŁăă clif_changechatowner (cd, cd->usersd[1]); clif_clearchat (cd, 0); } - // ˛ŻéPCÉŕéĚĹusersđ¸çˇOÉŔs + // ćăăPCăŤăéăăŽă§usersăć¸ăăĺăŤĺŽčĄ clif_leavechat (cd, sd); cd->users--; @@ -142,9 +142,9 @@ int chat_leavechat (struct map_session_data *sd) if (cd->users == 0 && (*cd->owner)->type == BL_PC) { - // SőČČÁ˝&PCĚ`bgČĚĹÁˇ + // ĺ
¨ĺĄĺą
ăŞăăŞăŁă&PCăŽăăŁăăăŞăŽă§ćśă clif_clearchat (cd, 0); - map_delobject (cd->bl.id, BL_CHAT); // freeÜĹľÄęé + map_delobject (cd->bl.id, BL_CHAT); // freeăžă§ăăŚăăă } else { @@ -152,7 +152,7 @@ int chat_leavechat (struct map_session_data *sd) cd->usersd[i] = cd->usersd[i + 1]; if (leavechar == 0 && (*cd->owner)->type == BL_PC) { - // PCĚ`bgČĚĹLŇŞ˛Ż˝ĚĹĘuĎX + // PCăŽăăŁăăăŞăŽă§ććč
ăćăăăŽă§ä˝ç˝Žĺ¤ć´ cd->bl.x = cd->usersd[0]->bl.x; cd->bl.y = cd->usersd[0]->bl.y; } @@ -163,7 +163,7 @@ int chat_leavechat (struct map_session_data *sd) } /*========================================== - * `bg[Ěżĺđ÷é + * ăăŁăăăŤăźă ăŽćăĄä¸ťăč˛ă *------------------------------------------ */ int chat_changechatowner (struct map_session_data *sd, char *nextownername) @@ -186,31 +186,31 @@ int chat_changechatowner (struct map_session_data *sd, char *nextownername) break; } } - if (nextowner < 0) // ťńČlÍȢ + if (nextowner < 0) // ăăăŞäşşăŻĺą
ăŞă return -1; clif_changechatowner (cd, cd->usersd[nextowner]); - // ęUÁˇ + // ä¸ćŚćśă clif_clearchat (cd, 0); - // userlistĚÔĎX (0ŞLŇČĚĹ) + // userlistăŽé çŞĺ¤ć´ (0ăććč
ăŞăŽă§) if ((tmp_sd = cd->usersd[0]) == NULL) - return 1; // čŚéĚŠČH + return 1; //ăăăăăŽăăŞďź cd->usersd[0] = cd->usersd[nextowner]; cd->usersd[nextowner] = tmp_sd; - // Vľ˘LŇĚĘuÖĎX + // ć°ăăććč
ăŽä˝ç˝Žă¸ĺ¤ć´ cd->bl.x = cd->usersd[0]->bl.x; cd->bl.y = cd->usersd[0]->bl.y; - // Äx\Ś + // ĺ庌襨示 clif_dispchat (cd, 0); return 0; } /*========================================== - * `bgĚóÔ(^Cg)đĎX + * ăăŁăăăŽçść
(ăżă¤ăăŤç)ăĺ¤ć´ *------------------------------------------ */ int chat_changechatstatus (struct map_session_data *sd, int limit, int pub, @@ -239,7 +239,7 @@ int chat_changechatstatus (struct map_session_data *sd, int limit, int pub, } /*========================================== - * `bg[ŠçRčoˇ + * ăăŁăăăŤăźă ăăčš´ăĺşă *------------------------------------------ */ int chat_kickchat (struct map_session_data *sd, char *kickusername) @@ -261,7 +261,7 @@ int chat_kickchat (struct map_session_data *sd, char *kickusername) break; } } - if (kickuser < 0) // ťńČlÍȢ + if (kickuser < 0) // ăăăŞäşşăŻĺą
ăŞă return -1; chat_leavechat (cd->usersd[kickuser]); @@ -270,7 +270,7 @@ int chat_kickchat (struct map_session_data *sd, char *kickusername) } /*========================================== - * npc`bg[ěŹ + * npcăăŁăăăŤăźă ä˝ć *------------------------------------------ */ int chat_createnpcchat (struct npc_data *nd, int limit, int pub, int trigger, @@ -315,7 +315,7 @@ int chat_createnpcchat (struct npc_data *nd, int limit, int pub, int trigger, } /*========================================== - * npc`bg[í + * npcăăŁăăăŤăźă ĺé¤ *------------------------------------------ */ int chat_deletenpcchat (struct npc_data *nd) @@ -327,14 +327,14 @@ int chat_deletenpcchat (struct npc_data *nd) chat_npckickall (cd); clif_clearchat (cd, 0); - map_delobject (cd->bl.id, BL_CHAT); // freeÜĹľÄęé + map_delobject (cd->bl.id, BL_CHAT); // freeăžă§ăăŚăăă nd->chat_id = 0; return 0; } /*========================================== - * KčlČăĹCxgŞč`łęÄéČçŔs + * čŚĺŽäşşć°äťĽä¸ă§ă¤ăăłăăĺŽçžŠăăăŚăăŞăĺŽčĄ *------------------------------------------ */ int chat_triggerevent (struct chat_data *cd) @@ -347,7 +347,7 @@ int chat_triggerevent (struct chat_data *cd) } /*========================================== - * CxgĚLřť + * ă¤ăăłăăŽćĺšĺ *------------------------------------------ */ int chat_enableevent (struct chat_data *cd) @@ -360,7 +360,7 @@ int chat_enableevent (struct chat_data *cd) } /*========================================== - * CxgĚłřť + * ă¤ăăłăăŽçĄĺšĺ *------------------------------------------ */ int chat_disableevent (struct chat_data *cd) @@ -372,7 +372,7 @@ int chat_disableevent (struct chat_data *cd) } /*========================================== - * `bg[ŠçSőRčoˇ + * ăăŁăăăŤăźă ăăĺ
¨ĺĄčš´ăĺşă *------------------------------------------ */ int chat_npckickall (struct chat_data *cd) @@ -387,7 +387,7 @@ int chat_npckickall (struct chat_data *cd) } /*========================================== - * Iš + * çľäş *------------------------------------------ */ int do_final_chat (void) diff --git a/src/map/chrif.c b/src/map/chrif.c index fd2398b..4bcfa45 100644 --- a/src/map/chrif.c +++ b/src/map/chrif.c @@ -44,7 +44,7 @@ static int char_port = 6121; static char userid[24], passwd[24]; static int chrif_state; -// Ýčt@CÇÝÝÖW +// č¨ĺŽăăĄă¤ăŤčŞăżčžźăżé˘äż /*========================================== * *------------------------------------------ @@ -147,7 +147,7 @@ int chrif_connect (int fd) } /*========================================== - * }bvM + * ăăăé俥 *------------------------------------------ */ int chrif_sendmap (int fd) @@ -167,7 +167,7 @@ int chrif_sendmap (int fd) } /*========================================== - * }bvóM + * ăăăĺ俥 *------------------------------------------ */ int chrif_recvmap (int fd) @@ -175,7 +175,7 @@ int chrif_recvmap (int fd) int i, j, ip, port; unsigned char *p = (unsigned char *) &ip; - if (chrif_state < 2) // Üžő + if (chrif_state < 2) // ăžă ćşĺä¸ return -1; ip = RFIFOL (fd, 4); @@ -194,7 +194,7 @@ int chrif_recvmap (int fd) } /*========================================== - * }bvIÔÚŽĚ˝ßĚf[^őv + * ăăăéŻé秝ĺăŽăăăŽăăźăżćşĺčŚćą *------------------------------------------ */ int chrif_changemapserver (struct map_session_data *sd, char *name, int x, @@ -230,7 +230,7 @@ int chrif_changemapserver (struct map_session_data *sd, char *name, int x, } /*========================================== - * }bvIÔÚŽack + * ăăăéŻé秝ĺack *------------------------------------------ */ int chrif_changemapserverack (int fd) @@ -361,7 +361,7 @@ int chrif_charselectreq (struct map_session_data *sd) } /*========================================== - * Lźâ˘íš + * ăăŁăŠĺĺăĺăă *------------------------------------------ */ int chrif_searchcharid (int char_id) @@ -377,7 +377,7 @@ int chrif_searchcharid (int char_id) } /*========================================== - * GMÉĎťv + * GMăŤĺ¤ĺčŚćą *------------------------------------------ */ int chrif_changegm (int id, const char *pass, int len) @@ -633,7 +633,7 @@ int chrif_changedgm (int fd) } /*========================================== - * ŤĘĎťIš (modified by Yor) + * ć§ĺĽĺ¤ĺçľäş (modified by Yor) *------------------------------------------ */ int chrif_changedsex (int fd) @@ -705,7 +705,7 @@ int chrif_changedsex (int fd) } /*========================================== - * AJEgĎŰśv + * ă˘ăŤăŚăłăĺ¤ć°äżĺčŚćą *------------------------------------------ */ int chrif_saveaccountreg2 (struct map_session_data *sd) @@ -733,7 +733,7 @@ int chrif_saveaccountreg2 (struct map_session_data *sd) } /*========================================== - * AJEgĎĘm + * ă˘ăŤăŚăłăĺ¤ć°éçĽ *------------------------------------------ */ int chrif_accountreg2 (int fd) @@ -1151,12 +1151,12 @@ int chrif_parse (int fd) || packet_len_table[cmd - 0x2af8] == 0) { - int r = intif_parse (fd); // intifÉnˇ + int r = intif_parse (fd); // intifăŤć¸Ąă if (r == 1) - continue; // intifĹľ˝ + continue; // intifă§ĺŚçăă if (r == 2) - return 0; // intifĹľ˝ŞAf[^ŞŤčȢ + return 0; // intifă§ĺŚçăăăăăăźăżăčśłăăŞă session[fd]->eof = 1; return 0; @@ -1244,8 +1244,8 @@ int chrif_parse (int fd) } /*========================================== - * timerÖ - * ĄąĚmapIÉqŞÁĢéNCAglđcharIÖé + * timeré˘ć° + * äťăăŽmapéŻăŤçšăăŁăŚăăăŻăŠă¤ă˘ăłăäşşć°ăcharéŻă¸éă *------------------------------------------ */ int send_users_tochar (int tid, unsigned int tick, int id, int data) @@ -1276,8 +1276,8 @@ int send_users_tochar (int tid, unsigned int tick, int id, int data) } /*========================================== - * timerÖ - * charIĆĚÚąđmFľAŕľŘęĢ˝çÄxÚąˇé + * timeré˘ć° + * charéŻă¨ăŽćĽçśă確čŞăăăăĺăăŚăăăĺ庌ćĽçśăă *------------------------------------------ */ int check_connect_char_server (int tid, unsigned int tick, int id, int data) diff --git a/src/map/guild.c b/src/map/guild.c index edee837..1d328ea 100644 --- a/src/map/guild.c +++ b/src/map/guild.c @@ -35,17 +35,17 @@ struct eventlist struct eventlist *next; }; -// MhĚEXPLbV
ĚtbV
ÉÖAˇéč -#define GUILD_PAYEXP_INVERVAL 10000 // Ôu(LbV
ĚĹĺśśÔA~b) -#define GUILD_PAYEXP_LIST 8192 // LbV
ĚĹĺ +// ăŽăŤăăŽEXPăăŁăăˇăĽăŽăăŠăăˇăĽăŤé˘éŁăăĺŽć° +#define GUILD_PAYEXP_INVERVAL 10000 // éé(ăăŁăăˇăĽăŽć大çĺćéăăăŞç§) +#define GUILD_PAYEXP_LIST 8192 // ăăŁăăˇăĽăŽćĺ¤§ć° -// MhĚEXPLbV
+// ăŽăŤăăŽEXPăăŁăăˇăĽ struct guild_expcache { int guild_id, account_id, char_id, exp; }; -// MhXLdbĚANZTiĄÍźĹżĹăpj +// ăŽăŤăăšăăŤdbăŽă˘ăŻăťăľďźäťăŻç´ćăĄă§äťŁç¨ďź int guild_skill_get_inf (int id) { return 0; @@ -66,7 +66,7 @@ int guild_skill_get_max (int id) return (id == 10004) ? 10 : 1; } -// MhXLŞ éŠmF +// ăŽăŤăăšăăŤăăăăç˘şčŞ int guild_checkskill (struct guild *g, int id) { return g->skill[id - 10000].lv; @@ -146,7 +146,7 @@ static int guild_read_castledb (void) return 0; } -// úť +// ĺćĺ void do_init_guild (void) { guild_db = numdb_init (); @@ -164,7 +164,7 @@ void do_init_guild (void) guild_payexp_timer, 0, 0, GUILD_PAYEXP_INVERVAL); } -// ő +// ć¤ç´˘ struct guild *guild_search (int guild_id) { return numdb_search (guild_db, guild_id); @@ -181,7 +181,7 @@ int guild_searchname_sub (void *key, void *data, va_list ap) return 0; } -// Mhźő +// ăŽăŤăĺć¤ç´˘ struct guild *guild_searchname (char *str) { struct guild *g = NULL; @@ -194,7 +194,7 @@ struct guild_castle *guild_castle_search (int gcid) return numdb_search (castle_db, gcid); } -// mapnameÉÎľ˝AWgĚgcđÔˇ +// mapnameăŤĺŻžĺżăăă˘ă¸ăăŽgcăčżă struct guild_castle *guild_mapname2gc (char *mapname) { int i; @@ -210,7 +210,7 @@ struct guild_castle *guild_mapname2gc (char *mapname) return NULL; } -// OCĚMho[ĚPlĚsdđÔˇ +// ăă°ă¤ăłä¸ăŽăŽăŤăăĄăłăăźăŽďźäşşăŽsdăčżă struct map_session_data *guild_getavailablesd (struct guild *g) { int i; @@ -223,7 +223,7 @@ struct map_session_data *guild_getavailablesd (struct guild *g) return NULL; } -// Mho[ĚCfbNXđÔˇ +// ăŽăŤăăĄăłăăźăŽă¤ăłăăăŻăšăčżă int guild_getindex (struct guild *g, int account_id, int char_id) { int i; @@ -235,7 +235,7 @@ int guild_getindex (struct guild *g, int account_id, int char_id) return -1; } -// Mho[ĚđEđÔˇ +// ăŽăŤăăĄăłăăźăŽĺ˝ščˇăčżă int guild_getposition (struct map_session_data *sd, struct guild *g) { int i; @@ -250,7 +250,7 @@ int guild_getposition (struct map_session_data *sd, struct guild *g) return -1; } -// o[îńĚěŹ +// ăĄăłăăźć
ĺ ąăŽä˝ć void guild_makemember (struct guild_member *m, struct map_session_data *sd) { nullpo_retv (sd); @@ -271,7 +271,7 @@ void guild_makemember (struct guild_member *m, struct map_session_data *sd) return; } -// MhŁmF +// ăŽăŤă獜ĺç˘şčŞ int guild_check_conflict (struct map_session_data *sd) { nullpo_retr (0, sd); @@ -281,7 +281,7 @@ int guild_check_conflict (struct map_session_data *sd) return 0; } -// MhĚEXPLbV
đinterIÉtbV
ˇé +// ăŽăŤăăŽEXPăăŁăăˇăĽăinteréŻăŤăăŠăăˇăĽăă int guild_payexp_timer_sub (void *key, void *data, va_list ap) { int i, *dellist, *delp, dataid = (int) key; @@ -401,7 +401,7 @@ int guild_created (int account_id, int guild_id) return 0; } -// îńv +// ć
ĺ ąčŚćą int guild_request_info (int guild_id) { // if(battle_config.etc_log) @@ -409,7 +409,7 @@ int guild_request_info (int guild_id) return intif_guild_request_info (guild_id); } -// CxgtŤîńv +// ă¤ăăłăäťăć
ĺ ąčŚćą int guild_npc_request_info (int guild_id, const char *event) { struct eventlist *ev; @@ -432,7 +432,7 @@ int guild_npc_request_info (int guild_id, const char *event) return guild_request_info (guild_id); } -// ŽLĚmF +// ćĺąăăŁăŠăŽç˘şčŞ int guild_check_member (const struct guild *g) { int i; @@ -448,7 +448,7 @@ int guild_check_member (const struct guild *g) { int j, f = 1; for (j = 0; j < MAX_GUILD; j++) - { // f[^Ş éŠ + { // ăăźăżăăăă if (g->member[j].account_id == sd->status.account_id) f = 0; } @@ -467,7 +467,7 @@ int guild_check_member (const struct guild *g) return 0; } -// îńž¸siťĚIDĚLđS˘ŽÉˇéj +// ć
ĺ ąćĺžĺ¤ąćďźăăŽIDăŽăăŁăŠăĺ
¨é¨ćŞćĺąăŤăăďź int guild_recv_noinfo (int guild_id) { int i; @@ -483,7 +483,7 @@ int guild_recv_noinfo (int guild_id) return 0; } -// îńž +// ć
ĺ ąćĺž int guild_recv_info (struct guild *sg) { struct guild *g, before; @@ -498,7 +498,7 @@ int guild_recv_info (struct guild *sg) numdb_insert (guild_db, sg->guild_id, g); before = *sg; - // ĹĚ[hČĚĹ[U[Ě`FbNđs¤ + // ćĺăŽăăźăăŞăŽă§ăŚăźăśăźăŽăă§ăăŻăčĄă guild_check_member (sg); } else @@ -506,7 +506,7 @@ int guild_recv_info (struct guild *sg) memcpy (g, sg, sizeof (struct guild)); for (i = bm = m = 0; i < g->max_member; i++) - { // sdĚÝčĆlĚmF + { // sdăŽč¨ĺŽă¨äşşć°ăŽç˘şčŞ if (g->member[i].account_id > 0) { struct map_session_data *sd = map_id2sd (g->member[i].account_id); @@ -522,7 +522,7 @@ int guild_recv_info (struct guild *sg) } for (i = 0; i < g->max_member; i++) - { // îńĚM + { // ć
ĺ ąăŽé俥 struct map_session_data *sd = g->member[i].sd; if (sd == NULL) continue; @@ -530,20 +530,20 @@ int guild_recv_info (struct guild *sg) if (before.guild_lv != g->guild_lv || bm != m || before.max_member != g->max_member) { - clif_guild_basicinfo (sd); // î{îńM - clif_guild_emblem (sd, g); // GuM + clif_guild_basicinfo (sd); // ĺşćŹć
ĺ ąé俥 + clif_guild_emblem (sd, g); // ă¨ăłăăŹă é俥 } if (bm != m) - { // o[îńM + { // ăĄăłăăźć
ĺ ąé俥 clif_guild_memberlist (g->member[i].sd); } if (before.skill_point != g->skill_point) - clif_guild_skillinfo (sd); // XLîńM + clif_guild_skillinfo (sd); // ăšăăŤć
ĺ ąé俥 if (sd->guild_sended == 0) - { // ˘MČçŽîńŕé + { // ćŞé俥ăŞăćĺąć
ĺ ąăéă clif_guild_belonginfo (sd, g); clif_guild_notice (sd, g); sd->guild_emblem_id = g->emblem_id; @@ -551,7 +551,7 @@ int guild_recv_info (struct guild *sg) } } - // CxgĚś + // ă¤ăăłăăŽçşç if ((ev = numdb_search (guild_infoevent_db, sg->guild_id)) != NULL) { numdb_erase (guild_infoevent_db, sg->guild_id); @@ -564,7 +564,7 @@ int guild_recv_info (struct guild *sg) return 0; } -// MhÖĚŠU +// ăŽăŤăă¸ăŽĺ§čŞ int guild_invite (struct map_session_data *sd, int account_id) { struct map_session_data *tsd; @@ -581,18 +581,18 @@ int guild_invite (struct map_session_data *sd, int account_id) if (!battle_config.invite_request_check) { if (tsd->party_invite > 0 || tsd->trade_partner) - { // čŞćřŠÇ¤Š + { // ç¸ćăĺĺźä¸ăăŠăă clif_guild_inviteack (sd, 0); return 0; } } if (tsd->status.guild_id > 0 || tsd->guild_invite > 0) - { // čĚŽmF + { // ç¸ćăŽćĺąç˘şčŞ clif_guild_inviteack (sd, 0); return 0; } - // čőmF + // ĺŽĺĄç˘şčŞ for (i = 0; i < g->max_member; i++) if (g->member[i].account_id == 0) break; @@ -609,7 +609,7 @@ int guild_invite (struct map_session_data *sd, int account_id) return 0; } -// MhŠUÖĚÔ +// ăŽăŤăĺ§čŞă¸ăŽčżç int guild_reply_invite (struct map_session_data *sd, int guild_id, int flag) { struct map_session_data *tsd; @@ -617,16 +617,16 @@ int guild_reply_invite (struct map_session_data *sd, int guild_id, int flag) nullpo_retr (0, sd); nullpo_retr (0, tsd = map_id2sd (sd->guild_invite_account)); - if (sd->guild_invite != guild_id) // ŠUĆMhIDŞá¤ + if (sd->guild_invite != guild_id) // ĺ§čŞă¨ăŽăŤăIDăéă return 0; if (flag == 1) - { // łř + { // ćżčŤž struct guild_member m; struct guild *g; int i; - // čőmF + // ĺŽĺĄç˘şčŞ if ((g = guild_search (tsd->status.guild_id)) == NULL) { sd->guild_invite = 0; @@ -644,13 +644,13 @@ int guild_reply_invite (struct map_session_data *sd, int guild_id, int flag) return 0; } - //interIÖÇÁv + //interéŻă¸čż˝ĺ čŚćą guild_makemember (&m, sd); intif_guild_addmember (sd->guild_invite, &m); return 0; } else - { // Ű + { // ćĺŚ sd->guild_invite = 0; sd->guild_invite_account = 0; if (tsd == NULL) @@ -660,7 +660,7 @@ int guild_reply_invite (struct map_session_data *sd, int guild_id, int flag) return 0; } -// MhoŞÇÁłę˝ +// ăŽăŤăăĄăłăăčż˝ĺ ăăă int guild_member_added (int guild_id, int account_id, int char_id, int flag) { struct map_session_data *sd = map_id2sd (account_id), *sd2; @@ -671,11 +671,11 @@ int guild_member_added (int guild_id, int account_id, int char_id, int flag) if ((sd == NULL || sd->guild_invite == 0) && flag == 0) { - // L¤Éo^ĹŤČŠÁ˝˝ßEŢvđoˇ + // ăăŁăŠĺ´ăŤçťé˛ă§ăăŞăăŁăăăčąéčŚćąăĺşă if (battle_config.error_log) printf ("guild: member added error %d is not online\n", account_id); - intif_guild_leave (guild_id, account_id, 0 /*char_id*/, 0, "**o^¸s**"); + intif_guild_leave (guild_id, account_id, 0 /*char_id*/, 0, "**çťé˛ĺ¤ąć**"); return 0; } sd->guild_invite = 0; @@ -684,26 +684,26 @@ int guild_member_added (int guild_id, int account_id, int char_id, int flag) sd2 = map_id2sd (sd->guild_invite_account); if (flag == 1) - { // ¸s + { // 夹ć if (sd2 != NULL) clif_guild_inviteack (sd2, 3); return 0; } - // Ź÷ + // ćĺ sd->guild_sended = 0; sd->status.guild_id = guild_id; if (sd2 != NULL) clif_guild_inviteack (sd2, 2); - // ˘ż¨¤ŁmF + // ăăĄăă獜ĺç˘şčŞ guild_check_conflict (sd); return 0; } -// MhEŢv +// ăŽăŤăčąéčŚćą int guild_leave (struct map_session_data *sd, int guild_id, int account_id, int char_id, const char *mes) { @@ -722,7 +722,7 @@ int guild_leave (struct map_session_data *sd, int guild_id, return 0; for (i = 0; i < g->max_member; i++) - { // ŽľÄ˘éŠ + { // ćĺąăăŚăăă if (g->member[i].account_id == sd->status.account_id) { intif_guild_leave (g->guild_id, sd->status.account_id, @@ -733,7 +733,7 @@ int guild_leave (struct map_session_data *sd, int guild_id, return 0; } -// MhÇúv +// ăŽăŤăčż˝ćžčŚćą int guild_explusion (struct map_session_data *sd, int guild_id, int account_id, int char_id, const char *mes) { @@ -752,10 +752,10 @@ int guild_explusion (struct map_session_data *sd, int guild_id, if ((ps = guild_getposition (sd, g)) < 0 || !(g->position[ps].mode & 0x0010)) - return 0; // ą Ŕłľ + return 0; // ĺŚç˝°ć¨ŠéçĄă for (i = 0; i < g->max_member; i++) - { // ŽľÄ˘éŠ + { // ćĺąăăŚăăă if (g->member[i].account_id == account_id) { intif_guild_leave (g->guild_id, account_id, 0 /*char_id*/, 1, mes); @@ -765,7 +765,7 @@ int guild_explusion (struct map_session_data *sd, int guild_id, return 0; } -// MhoŞEŢľ˝ +// ăŽăŤăăĄăłăăčąéăă int guild_member_leaved (int guild_id, int account_id, int char_id, int flag, const char *name, const char *mes) { @@ -802,7 +802,7 @@ int guild_member_leaved (int guild_id, int account_id, int char_id, int flag, sd->guild_sended = 0; } - // o[XgđSőÉÄĘm + // ăĄăłăăźăŞăšăăĺ
¨ĺĄăŤĺéçĽ for (i = 0; i < g->max_member; i++) { if (g->member[i].sd != NULL) @@ -812,7 +812,7 @@ int guild_member_leaved (int guild_id, int account_id, int char_id, int flag, return 0; } -// MhoĚICóÔ/LvXVM +// ăŽăŤăăĄăłăăŽăŞăłăŠă¤ăłçść
/Lvć´ć°é俥 int guild_send_memberinfoshort (struct map_session_data *sd, int online) { struct guild *g; @@ -831,7 +831,7 @@ int guild_send_memberinfoshort (struct map_session_data *sd, int online) sd->status.class); if (!online) - { // OAEgˇéČçsdđNAľÄIš + { // ăă°ă˘ăŚăăăăŞăsdăăŻăŞă˘ăăŚçľäş int i = guild_getindex (g, sd->status.account_id, 0 /*char_id*/); if (i >= 0) @@ -839,16 +839,16 @@ int guild_send_memberinfoshort (struct map_session_data *sd, int online) return 0; } - if (sd->guild_sended != 0) // MhúMf[^ÍMĎÝ + if (sd->guild_sended != 0) // ăŽăŤăĺćé俥ăăźăżăŻé俥ć¸ăż return 0; - // ŁmF + // 獜ĺç˘şčŞ guild_check_conflict (sd); - // éČçMhúMf[^M + // ăăăŞăăŽăŤăĺćé俥ăăźăżé俥 if ((g = guild_search (sd->status.guild_id)) != NULL) { - guild_check_member (g); // ŽđmFˇé + guild_check_member (g); // ćĺąă確čŞăă if (sd->status.guild_id == g->guild_id) { clif_guild_belonginfo (sd, g); @@ -860,7 +860,7 @@ int guild_send_memberinfoshort (struct map_session_data *sd, int online) return 0; } -// MhoĚICóÔ/LvXVĘm +// ăŽăŤăăĄăłăăŽăŞăłăŠă¤ăłçść
/Lvć´ć°éçĽ int guild_recv_memberinfoshort (int guild_id, int account_id, int char_id, int online, int lv, int class) { @@ -897,22 +897,22 @@ int guild_recv_memberinfoshort (int guild_id, int account_id, int char_id, g->average_lv = alv / c; g->connect_member = om; - if (oldonline != online) // ICóÔŞĎíÁ˝ĚĹĘm + if (oldonline != online) // ăŞăłăŠă¤ăłçść
ăĺ¤ăăŁăăŽă§éçĽ clif_guild_memberlogin_notice (g, idx, online); for (i = 0; i < g->max_member; i++) - { // sdÄÝč + { // sdĺč¨ĺŽ struct map_session_data *sd = map_id2sd (g->member[i].account_id); g->member[i].sd = (sd != NULL && sd->status.guild_id == guild_id) ? sd : NULL; } - // ąąÉNCAgÉMŞKv + // ăăăŤăŻăŠă¤ă˘ăłăăŤé俥ĺŚçăĺż
čŚ return 0; } -// MhďbM +// ăŽăŤăäźčŠąé俥 int guild_send_message (struct map_session_data *sd, char *mes, int len) { nullpo_retr (0, sd); @@ -924,7 +924,7 @@ int guild_send_message (struct map_session_data *sd, char *mes, int len) return 0; } -// MhďbóM +// ăŽăŤăäźčŠąĺ俥 int guild_recv_message (int guild_id, int account_id, char *mes, int len) { struct guild *g; @@ -934,7 +934,7 @@ int guild_recv_message (int guild_id, int account_id, char *mes, int len) return 0; } -// MhoĚđEĎX +// ăŽăŤăăĄăłăăŽĺ˝ščˇĺ¤ć´ int guild_change_memberposition (int guild_id, int account_id, int char_id, int idx) { @@ -942,7 +942,7 @@ int guild_change_memberposition (int guild_id, int account_id, int char_id, GMI_POSITION, &idx, sizeof (idx)); } -// MhoĚđEĎXĘm +// ăŽăŤăăĄăłăăŽĺ˝ščˇĺ¤ć´éçĽ int guild_memberposition_changed (struct guild *g, int idx, int pos) { nullpo_retr (0, g); @@ -952,7 +952,7 @@ int guild_memberposition_changed (struct guild *g, int idx, int pos) return 0; } -// MhđEĎX +// ăŽăŤă彚čˇĺ¤ć´ int guild_change_position (struct map_session_data *sd, int idx, int mode, int exp_mode, const char *name) { @@ -970,7 +970,7 @@ int guild_change_position (struct map_session_data *sd, int idx, return intif_guild_position (sd->status.guild_id, idx, &p); } -// MhđEĎXĘm +// ăŽăŤă彚čˇĺ¤ć´éçĽ int guild_position_changed (int guild_id, int idx, struct guild_position *p) { struct guild *g = guild_search (guild_id); @@ -981,7 +981,7 @@ int guild_position_changed (int guild_id, int idx, struct guild_position *p) return 0; } -// MhmĎX +// ăŽăŤăĺçĽĺ¤ć´ int guild_change_notice (struct map_session_data *sd, int guild_id, const char *mes1, const char *mes2) { @@ -1005,7 +1005,7 @@ int guild_change_notice (struct map_session_data *sd, int guild_id, return intif_guild_notice (guild_id, mes1, mes2); } -// MhmĎXĘm +// ăŽăŤăĺçĽĺ¤ć´éçĽ int guild_notice_changed (int guild_id, const char *mes1, const char *mes2) { int i; @@ -1025,7 +1025,7 @@ int guild_notice_changed (int guild_id, const char *mes1, const char *mes2) return 0; } -// MhGuĎX +// ăŽăŤăă¨ăłăăŹă ĺ¤ć´ int guild_change_emblem (struct map_session_data *sd, int len, const char *data) { @@ -1046,7 +1046,7 @@ int guild_change_emblem (struct map_session_data *sd, int len, return intif_guild_emblem (sd->status.guild_id, len, data); } -// MhGuĎXĘm +// ăŽăŤăă¨ăłăăŹă ĺ¤ć´éçĽ int guild_emblem_changed (int len, int guild_id, int emblem_id, const char *data) { @@ -1072,7 +1072,7 @@ int guild_emblem_changed (int len, int guild_id, int emblem_id, return 0; } -// MhĚEXPă[ +// ăŽăŤăăŽEXPä¸ç´ int guild_payexp (struct map_session_data *sd, int exp) { struct guild *g; @@ -1110,7 +1110,7 @@ int guild_payexp (struct map_session_data *sd, int exp) return exp2; } -// XL|CgčUč +// ăšăăŤăă¤ăłăĺ˛ăćŻă int guild_skillup (struct map_session_data *sd, int skill_num) { struct guild *g; @@ -1133,7 +1133,7 @@ int guild_skillup (struct map_session_data *sd, int skill_num) return 0; } -// XL|CgčUčĘm +// ăšăăŤăă¤ăłăĺ˛ăćŻăéçĽ int guild_skillupack (int guild_id, int skill_num, int account_id) { struct map_session_data *sd = map_id2sd (account_id); @@ -1143,14 +1143,14 @@ int guild_skillupack (int guild_id, int skill_num, int account_id) return 0; if (sd != NULL) clif_guild_skillup (sd, skill_num, g->skill[skill_num - 10000].lv); - // SőÉĘm + // ĺ
¨ĺĄăŤéçĽ for (i = 0; i < g->max_member; i++) if ((sd = g->member[i].sd) != NULL) clif_guild_skillinfo (sd); return 0; } -// MhŻżž +// ăŽăŤăĺçć°ćĺž int guild_get_alliance_count (struct guild *g, int flag) { int i, c; @@ -1165,7 +1165,7 @@ int guild_get_alliance_count (struct guild *g, int flag) return c; } -// MhŻżv +// ăŽăŤăĺçčŚćą int guild_reqalliance (struct map_session_data *sd, int account_id) { struct map_session_data *tsd = map_id2sd (account_id); @@ -1194,19 +1194,19 @@ int guild_reqalliance (struct map_session_data *sd, int account_id) || !(g[0]->position[ps].mode & 0x0010)) return 0; - if (guild_get_alliance_count (g[0], 0) > 3) // ŻżmF + if (guild_get_alliance_count (g[0], 0) > 3) // ĺçć°ç˘şčŞ clif_guild_allianceack (sd, 4); if (guild_get_alliance_count (g[1], 0) > 3) clif_guild_allianceack (sd, 3); if (tsd->guild_alliance > 0) - { // 誯żvżóԊǤŠmF + { // ç¸ćăĺçčŚčŤçść
ăăŠăăç˘şčŞ clif_guild_allianceack (sd, 1); return 0; } for (i = 0; i < MAX_GUILDALLIANCE; i++) - { // ˇĹÉŻżóÔŠmF + { // ăă§ăŤĺççść
ăç˘şčŞ if (g[0]->alliance[i].guild_id == tsd->status.guild_id && g[0]->alliance[i].opposition == 0) { @@ -1222,7 +1222,7 @@ int guild_reqalliance (struct map_session_data *sd, int account_id) return 0; } -// MhŠUÖĚÔ +// ăŽăŤăĺ§čŞă¸ăŽčżç int guild_reply_reqalliance (struct map_session_data *sd, int account_id, int flag) { @@ -1231,14 +1231,14 @@ int guild_reply_reqalliance (struct map_session_data *sd, int account_id, nullpo_retr (0, sd); nullpo_retr (0, tsd = map_id2sd (account_id)); - if (sd->guild_alliance != tsd->status.guild_id) // ŠUĆMhIDŞá¤ + if (sd->guild_alliance != tsd->status.guild_id) // ĺ§čŞă¨ăŽăŤăIDăéă return 0; if (flag == 1) - { // łř + { // ćżčŤž int i; - struct guild *g; // ŻżÄmF + struct guild *g; // ĺçć°ĺç˘şčŞ if ((g = guild_search (sd->status.guild_id)) == NULL || guild_get_alliance_count (g, 0) > 3) { @@ -1254,7 +1254,7 @@ int guild_reply_reqalliance (struct map_session_data *sd, int account_id, return 0; } - // GÎÖWČçGÎđ~ßé + // ćľĺŻžé˘äżăŞăćľĺŻžăć˘ăă if ((g = guild_search (sd->status.guild_id)) == NULL) return 0; for (i = 0; i < MAX_GUILDALLIANCE; i++) @@ -1278,14 +1278,14 @@ int guild_reply_reqalliance (struct map_session_data *sd, int account_id, sd->status.account_id, 9); } - // interIÖŻżvż + // interéŻă¸ĺçčŚčŤ intif_guild_alliance (sd->status.guild_id, tsd->status.guild_id, sd->status.account_id, tsd->status.account_id, 0); return 0; } else - { // Ű + { // ćĺŚ sd->guild_alliance = 0; sd->guild_alliance_account = 0; if (tsd != NULL) @@ -1294,7 +1294,7 @@ int guild_reply_reqalliance (struct map_session_data *sd, int account_id, return 0; } -// MhÖWđÁ +// ăŽăŤăé˘äżč§Łćś int guild_delalliance (struct map_session_data *sd, int guild_id, int flag) { if (agit_flag) @@ -1323,7 +1323,7 @@ int guild_delalliance (struct map_session_data *sd, int guild_id, int flag) return 0; } -// MhGÎ +// ăŽăŤăćľĺŻž int guild_opposition (struct map_session_data *sd, int account_id /*char_id*/) { struct map_session_data *tsd = map_id2sd (account_id /*char_id*/); @@ -1340,19 +1340,19 @@ int guild_opposition (struct map_session_data *sd, int account_id /*char_id*/) || !(g->position[ps].mode & 0x0010)) return 0; - if (guild_get_alliance_count (g, 1) > 3) // GÎmF + if (guild_get_alliance_count (g, 1) > 3) // ćľĺŻžć°ç˘şčŞ clif_guild_oppositionack (sd, 1); for (i = 0; i < MAX_GUILDALLIANCE; i++) - { // ˇĹÉÖWđÁĢéŠmF + { // ăă§ăŤé˘äżăćăŁăŚăăăç˘şčŞ if (g->alliance[i].guild_id == tsd->status.guild_id) { if (g->alliance[i].opposition == 1) - { // ˇĹÉGÎ + { // ăă§ăŤćľĺŻž clif_guild_oppositionack (sd, 2); return 0; } - else // Żżjü + else // ĺçç ´ćŁ intif_guild_alliance (sd->status.guild_id, tsd->status.guild_id, sd->status.account_id, @@ -1360,13 +1360,13 @@ int guild_opposition (struct map_session_data *sd, int account_id /*char_id*/) } } - // interIÉGÎvż + // interéŻăŤćľĺŻžčŚčŤ intif_guild_alliance (sd->status.guild_id, tsd->status.guild_id, sd->status.account_id, tsd->status.account_id, 1); return 0; } -// MhŻż/GÎĘm +// ăŽăŤăĺç/ćľĺŻžéçĽ int guild_allianceack (int guild_id1, int guild_id2, int account_id1, int account_id2, int flag, const char *name1, const char *name2) @@ -1388,7 +1388,7 @@ int guild_allianceack (int guild_id1, int guild_id2, int account_id1, } if (flag & 0x70) - { // ¸s + { // 夹ć for (i = 0; i < 2 - (flag & 1); i++) if (sd[i] != NULL) clif_guild_allianceack (sd[i], @@ -1399,7 +1399,7 @@ int guild_allianceack (int guild_id1, int guild_id2, int account_id1, // printf("guild alliance_ack %d %d %d %d %d %s %s\n",guild_id1,guild_id2,account_id1,account_id2,flag,name1,name2); if (!(flag & 0x08)) - { // ÖWÇÁ + { // é˘äżčż˝ĺ for (i = 0; i < 2 - (flag & 1); i++) if (g[i] != NULL) for (j = 0; j < MAX_GUILDALLIANCE; j++) @@ -1413,7 +1413,7 @@ int guild_allianceack (int guild_id1, int guild_id2, int account_id1, } } else - { // ÖWđÁ + { // é˘äżč§Łćś for (i = 0; i < 2 - (flag & 1); i++) { if (g[i] != NULL) @@ -1424,24 +1424,24 @@ int guild_allianceack (int guild_id1, int guild_id2, int account_id1, g[i]->alliance[j].guild_id = 0; break; } - if (sd[i] != NULL) // đÁĘm + if (sd[i] != NULL) // 解ćśéçĽ clif_guild_delalliance (sd[i], guild_id[1 - i], (flag & 1)); } } if ((flag & 0x0f) == 0) - { // ŻżĘm + { // ĺçéçĽ if (sd[1] != NULL) clif_guild_allianceack (sd[1], 2); } else if ((flag & 0x0f) == 1) - { // GÎĘm + { // ćľĺŻžéçĽ if (sd[0] != NULL) clif_guild_oppositionack (sd[0], 0); } for (i = 0; i < 2 - (flag & 1); i++) - { // Żż/GÎXgĚÄM + { // ĺç/ćľĺŻžăŞăšăăŽĺé俥 struct map_session_data *sd; if (g[i] != NULL) for (j = 0; j < g[i]->max_member; j++) @@ -1451,7 +1451,7 @@ int guild_allianceack (int guild_id1, int guild_id2, int account_id1, return 0; } -// MhđUĘmp +// ăŽăŤă解ćŁéçĽç¨ int guild_broken_sub (void *key, void *data, va_list ap) { struct guild *g = (struct guild *) data; @@ -1462,7 +1462,7 @@ int guild_broken_sub (void *key, void *data, va_list ap) nullpo_retr (0, g); for (i = 0; i < MAX_GUILDALLIANCE; i++) - { // ÖWđjü + { // é˘äżăç ´ćŁ if (g->alliance[i].guild_id == guild_id) { for (j = 0; j < g->max_member; j++) @@ -1475,7 +1475,7 @@ int guild_broken_sub (void *key, void *data, va_list ap) return 0; } -// MhđUĘm +// ăŽăŤă解ćŁéçĽ int guild_broken (int guild_id, int flag) { struct guild *g = guild_search (guild_id); @@ -1485,7 +1485,7 @@ int guild_broken (int guild_id, int flag) return 0; for (i = 0; i < g->max_member; i++) - { // MhđUđĘm + { // ăŽăŤă解ćŁăéçĽ if ((sd = g->member[i].sd) != NULL) { if (sd->state.storage_flag == 2) @@ -1503,7 +1503,7 @@ int guild_broken (int guild_id, int flag) return 0; } -// MhđU +// ăŽăŤăč§ŁćŁ int guild_break (struct map_session_data *sd, char *name) { struct guild *g; @@ -1533,13 +1533,13 @@ int guild_break (struct map_session_data *sd, char *name) return 0; } -// Mhéf[^v +// ăŽăŤăĺăăźăżčŚćą int guild_castledataload (int castle_id, int index) { return intif_guild_castle_dataload (castle_id, index); } -// MhéîńžCxgÇÁ +// ăŽăŤăĺć
ĺ ąćĺžćă¤ăăłăčż˝ĺ int guild_addcastleinfoevent (int castle_id, int index, const char *name) { struct eventlist *ev; @@ -1555,7 +1555,7 @@ int guild_addcastleinfoevent (int castle_id, int index, const char *name) return 0; } -// Mhéf[^vÔM +// ăŽăŤăĺăăźăżčŚćąčżäżĄ int guild_castledataloadack (int castle_id, int index, int value) { struct guild_castle *gc = guild_castle_search (castle_id); @@ -1659,13 +1659,13 @@ int guild_castledataloadack (int castle_id, int index, int value) return 1; } -// Mhéf[^ĎXv +// ăŽăŤăĺăăźăżĺ¤ć´čŚćą int guild_castledatasave (int castle_id, int index, int value) { return intif_guild_castle_datasave (castle_id, index, value); } -// Mhéf[^ĎXĘm +// ăŽăŤăĺăăźăżĺ¤ć´éçĽ int guild_castledatasaveack (int castle_id, int index, int value) { struct guild_castle *gc = guild_castle_search (castle_id); @@ -1758,7 +1758,7 @@ int guild_castledatasaveack (int castle_id, int index, int value) return 1; } -// Mhf[^ęóMiúťj +// ăŽăŤăăăźăżä¸ćŹĺ俥ďźĺćĺćďź int guild_castlealldataload (int len, struct guild_castle *gc) { int i; @@ -1766,14 +1766,14 @@ int guild_castlealldataload (int len, struct guild_castle *gc) nullpo_retr (0, gc); - // CxgtŤĹvˇéf[^ĘuđTˇ(ĹăĚčf[^) + // ă¤ăăłăäťăă§čŚćąăăăăźăżä˝ç˝Žăć˘ă(ćĺžăŽĺ ć ăăźăż) for (i = 0; i < n; i++) { if ((gc + i)->guild_id) ev = i; } - // éf[^i[ĆMhîńv + // ĺăăźăżć źç´ă¨ăŽăŤăć
ĺ ąčŚćą for (i = 0; i < n; i++, gc++) { struct guild_castle *c = guild_castle_search (gc->castle_id); diff --git a/src/map/intif.c b/src/map/intif.c index 6945486..efde695 100644 --- a/src/map/intif.c +++ b/src/map/intif.c @@ -48,11 +48,11 @@ static const int packet_len_table[] = { 11, -1, 7, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, }; -extern int char_fd; // inter serverĚfdÍchar_fdđg¤ -#define inter_fd (char_fd) // GCAX +extern int char_fd; // inter serverăŽfdăŻchar_fdă使ă +#define inter_fd (char_fd) // ă¨ă¤ăŞă˘ăš //----------------------------------------------------------------- -// inter serverÖĚM +// inter serveră¸ăŽé俥 // Message for all GMs on all map servers int intif_GMmessage (char *mes, int len, int flag) @@ -120,7 +120,7 @@ int intif_wis_message_to_gm (char *Wisp_name, int min_gm_level, char *mes, return 0; } -// AJEgĎM +// ă˘ăŤăŚăłăĺ¤ć°é俥 int intif_saveaccountreg (struct map_session_data *sd) { int j, p; @@ -139,7 +139,7 @@ int intif_saveaccountreg (struct map_session_data *sd) return 0; } -// AJEgĎv +// ă˘ăŤăŚăłăĺ¤ć°čŚćą int intif_request_accountreg (struct map_session_data *sd) { nullpo_retr (0, sd); @@ -150,7 +150,7 @@ int intif_request_accountreg (struct map_session_data *sd) return 0; } -// qÉf[^v +// ĺ庍ăăźăżčŚćą int intif_request_storage (int account_id) { WFIFOW (inter_fd, 0) = 0x3010; @@ -159,7 +159,7 @@ int intif_request_storage (int account_id) return 0; } -// qÉf[^M +// ĺ庍ăăźăżé俥 int intif_send_storage (struct storage *stor) { nullpo_retr (0, stor); @@ -191,7 +191,7 @@ int intif_send_guild_storage (int account_id, struct guild_storage *gstor) return 0; } -// p[eBěŹv +// ăăźăăŁä˝ćčŚćą int intif_create_party (struct map_session_data *sd, char *name) { nullpo_retr (0, sd); @@ -208,7 +208,7 @@ int intif_create_party (struct map_session_data *sd, char *name) return 0; } -// p[eBîńv +// ăăźăăŁć
ĺ ąčŚćą int intif_request_partyinfo (int party_id) { WFIFOW (inter_fd, 0) = 0x3021; @@ -219,7 +219,7 @@ int intif_request_partyinfo (int party_id) return 0; } -// p[eBÇÁv +// ăăźăăŁčż˝ĺ čŚćą int intif_party_addmember (int party_id, int account_id) { struct map_session_data *sd; @@ -239,7 +239,7 @@ int intif_party_addmember (int party_id, int account_id) return 0; } -// p[eBÝčĎX +// ăăźăăŁč¨ĺŽĺ¤ć´ int intif_party_changeoption (int party_id, int account_id, int exp, int item) { WFIFOW (inter_fd, 0) = 0x3023; @@ -251,7 +251,7 @@ int intif_party_changeoption (int party_id, int account_id, int exp, int item) return 0; } -// p[eBEŢv +// ăăźăăŁčąéčŚćą int intif_party_leave (int party_id, int account_id) { // if(battle_config.etc_log) @@ -263,7 +263,7 @@ int intif_party_leave (int party_id, int account_id) return 0; } -// p[eBÚŽv +// ăăźăăŁç§ťĺčŚćą int intif_party_changemap (struct map_session_data *sd, int online) { if (sd != NULL) @@ -281,7 +281,7 @@ int intif_party_changemap (struct map_session_data *sd, int online) return 0; } -// p[eB[đUv +// ăăźăăŁăźč§ŁćŁčŚćą int intif_break_party (int party_id) { WFIFOW (inter_fd, 0) = 0x3026; @@ -290,7 +290,7 @@ int intif_break_party (int party_id) return 0; } -// p[eBďbM +// ăăźăăŁäźčŠąé俥 int intif_party_message (int party_id, int account_id, char *mes, int len) { // if(battle_config.etc_log) @@ -304,7 +304,7 @@ int intif_party_message (int party_id, int account_id, char *mes, int len) return 0; } -// p[eBŁ`FbNv +// ăăźăăŁçŤśĺăă§ăăŻčŚćą int intif_party_checkconflict (int party_id, int account_id, char *nick) { WFIFOW (inter_fd, 0) = 0x3028; @@ -315,7 +315,7 @@ int intif_party_checkconflict (int party_id, int account_id, char *nick) return 0; } -// MhěŹv +// ăŽăŤăä˝ćčŚćą int intif_guild_create (const char *name, const struct guild_member *master) { nullpo_retr (0, master); @@ -329,7 +329,7 @@ int intif_guild_create (const char *name, const struct guild_member *master) return 0; } -// Mhîńv +// ăŽăŤăć
ĺ ąčŚćą int intif_guild_request_info (int guild_id) { WFIFOW (inter_fd, 0) = 0x3031; @@ -338,7 +338,7 @@ int intif_guild_request_info (int guild_id) return 0; } -// MhoÇÁv +// ăŽăŤăăĄăłăčż˝ĺ čŚćą int intif_guild_addmember (int guild_id, struct guild_member *m) { WFIFOW (inter_fd, 0) = 0x3032; @@ -349,7 +349,7 @@ int intif_guild_addmember (int guild_id, struct guild_member *m) return 0; } -// MhoEŢ/Çúv +// ăŽăŤăăĄăłăčąé/čż˝ćžčŚćą int intif_guild_leave (int guild_id, int account_id, int char_id, int flag, const char *mes) { @@ -363,7 +363,7 @@ int intif_guild_leave (int guild_id, int account_id, int char_id, int flag, return 0; } -// MhoĚICóľ/LvXVv +// ăŽăŤăăĄăłăăŽăŞăłăŠă¤ăłçśćł/Lvć´ć°čŚćą int intif_guild_memberinfoshort (int guild_id, int account_id, int char_id, int online, int lv, int class) @@ -379,7 +379,7 @@ int intif_guild_memberinfoshort (int guild_id, return 0; } -// MhđUĘm +// ăŽăŤă解ćŁéçĽ int intif_guild_break (int guild_id) { WFIFOW (inter_fd, 0) = 0x3036; @@ -388,7 +388,7 @@ int intif_guild_break (int guild_id) return 0; } -// MhďbM +// ăŽăŤăäźčŠąé俥 int intif_guild_message (int guild_id, int account_id, char *mes, int len) { WFIFOW (inter_fd, 0) = 0x3037; @@ -400,7 +400,7 @@ int intif_guild_message (int guild_id, int account_id, char *mes, int len) return 0; } -// MhŁ`FbNv +// ăŽăŤă獜ĺăă§ăăŻčŚćą int intif_guild_checkconflict (int guild_id, int account_id, int char_id) { WFIFOW (inter_fd, 0) = 0x3038; @@ -411,7 +411,7 @@ int intif_guild_checkconflict (int guild_id, int account_id, int char_id) return 0; } -// Mhî{îńĎXv +// ăŽăŤăĺşćŹć
ĺ ąĺ¤ć´čŚćą int intif_guild_change_basicinfo (int guild_id, int type, const void *data, int len) { @@ -424,7 +424,7 @@ int intif_guild_change_basicinfo (int guild_id, int type, const void *data, return 0; } -// MhoîńĎXv +// ăŽăŤăăĄăłăć
ĺ ąĺ¤ć´čŚćą int intif_guild_change_memberinfo (int guild_id, int account_id, int char_id, int type, const void *data, int len) { @@ -439,7 +439,7 @@ int intif_guild_change_memberinfo (int guild_id, int account_id, int char_id, return 0; } -// MhđEĎXv +// ăŽăŤă彚čˇĺ¤ć´čŚćą int intif_guild_position (int guild_id, int idx, struct guild_position *p) { WFIFOW (inter_fd, 0) = 0x303b; @@ -451,7 +451,7 @@ int intif_guild_position (int guild_id, int idx, struct guild_position *p) return 0; } -// MhXLAbvv +// ăŽăŤăăšăăŤă˘ăăčŚćą int intif_guild_skillup (int guild_id, int skill_num, int account_id) { WFIFOW (inter_fd, 0) = 0x303c; @@ -462,7 +462,7 @@ int intif_guild_skillup (int guild_id, int skill_num, int account_id) return 0; } -// MhŻż/GÎv +// ăŽăŤăĺç/ćľĺŻžčŚćą int intif_guild_alliance (int guild_id1, int guild_id2, int account_id1, int account_id2, int flag) { @@ -476,7 +476,7 @@ int intif_guild_alliance (int guild_id1, int guild_id2, int account_id1, return 0; } -// MhmĎXv +// ăŽăŤăĺçĽĺ¤ć´čŚćą int intif_guild_notice (int guild_id, const char *mes1, const char *mes2) { WFIFOW (inter_fd, 0) = 0x303e; @@ -487,7 +487,7 @@ int intif_guild_notice (int guild_id, const char *mes1, const char *mes2) return 0; } -// MhGuĎXv +// ăŽăŤăă¨ăłăăŹă ĺ¤ć´čŚćą int intif_guild_emblem (int guild_id, int len, const char *data) { if (guild_id <= 0 || len < 0 || len > 2000) @@ -501,7 +501,7 @@ int intif_guild_emblem (int guild_id, int len, const char *data) return 0; } -//ťÝĚMhéčĚMhđ˛×é +//çžĺ¨ăŽăŽăŤăĺĺ é ăŽăŤăă調ăšă int intif_guild_castle_dataload (int castle_id, int index) { WFIFOW (inter_fd, 0) = 0x3040; @@ -511,7 +511,7 @@ int intif_guild_castle_dataload (int castle_id, int index) return 0; } -//MhéčĚMhĎXv +//ăŽăŤăĺĺ é ăŽăŤăĺ¤ć´čŚćą int intif_guild_castle_datasave (int castle_id, int index, int value) { WFIFOW (inter_fd, 0) = 0x3041; @@ -615,7 +615,7 @@ int mapif_parse_WisToGM (int fd) return 0; } -// AJEgĎĘm +// ă˘ăŤăŚăłăĺ¤ć°éçĽ int intif_parse_AccountReg (int fd) { int j, p; @@ -635,7 +635,7 @@ int intif_parse_AccountReg (int fd) return 0; } -// qÉf[^óM +// ĺ庍ăăźăżĺ俥 int intif_parse_LoadStorage (int fd) { struct storage *stor; @@ -687,7 +687,7 @@ int intif_parse_LoadStorage (int fd) return 0; } -// qÉf[^MŹ÷ +// ĺ庍ăăźăżé俥ćĺ int intif_parse_SaveStorage (int fd) { if (battle_config.save_log) @@ -771,7 +771,7 @@ int intif_parse_SaveGuildStorage (int fd) return 0; } -// p[eBěŹÂŰ +// ăăźăăŁä˝ćĺŻĺŚ int intif_parse_PartyCreated (int fd) { if (battle_config.etc_log) @@ -781,7 +781,7 @@ int intif_parse_PartyCreated (int fd) return 0; } -// p[eBîń +// ăăźăăŁć
ĺ ą int intif_parse_PartyInfo (int fd) { if (RFIFOW (fd, 2) == 8) @@ -804,7 +804,7 @@ int intif_parse_PartyInfo (int fd) return 0; } -// p[eBÇÁĘm +// ăăźăăŁčż˝ĺ éçĽ int intif_parse_PartyMemberAdded (int fd) { if (battle_config.etc_log) @@ -814,7 +814,7 @@ int intif_parse_PartyMemberAdded (int fd) return 0; } -// p[eBÝčĎXĘm +// ăăźăăŁč¨ĺŽĺ¤ć´éçĽ int intif_parse_PartyOptionChanged (int fd) { party_optionchanged (RFIFOL (fd, 2), RFIFOL (fd, 6), RFIFOW (fd, 10), @@ -822,7 +822,7 @@ int intif_parse_PartyOptionChanged (int fd) return 0; } -// p[eBEŢĘm +// ăăźăăŁčąééçĽ int intif_parse_PartyMemberLeaved (int fd) { if (battle_config.etc_log) @@ -832,14 +832,14 @@ int intif_parse_PartyMemberLeaved (int fd) return 0; } -// p[eBđUĘm +// ăăźăăŁč§ŁćŁéçĽ int intif_parse_PartyBroken (int fd) { party_broken (RFIFOL (fd, 2)); return 0; } -// p[eBÚŽĘm +// ăăźăăŁç§ťĺéçĽ int intif_parse_PartyMove (int fd) { // if(battle_config.etc_log) @@ -849,7 +849,7 @@ int intif_parse_PartyMove (int fd) return 0; } -// p[eBbZ[W +// ăăźăăŁăĄăăťăźă¸ int intif_parse_PartyMessage (int fd) { // if(battle_config.etc_log) @@ -859,14 +859,14 @@ int intif_parse_PartyMessage (int fd) return 0; } -// MhěŹÂŰ +// ăŽăŤăä˝ćĺŻĺŚ int intif_parse_GuildCreated (int fd) { guild_created (RFIFOL (fd, 2), RFIFOL (fd, 6)); return 0; } -// Mhîń +// ăŽăŤăć
ĺ ą int intif_parse_GuildInfo (int fd) { if (RFIFOW (fd, 2) == 8) @@ -890,7 +890,7 @@ int intif_parse_GuildInfo (int fd) return 0; } -// MhoÇÁĘm +// ăŽăŤăăĄăłăčż˝ĺ éçĽ int intif_parse_GuildMemberAdded (int fd) { if (battle_config.etc_log) @@ -901,7 +901,7 @@ int intif_parse_GuildMemberAdded (int fd) return 0; } -// MhoEŢ/ÇúĘm +// ăŽăŤăăĄăłăčąé/čż˝ćžéçĽ int intif_parse_GuildMemberLeaved (int fd) { guild_member_leaved (RFIFOL (fd, 2), RFIFOL (fd, 6), RFIFOL (fd, 10), @@ -909,7 +909,7 @@ int intif_parse_GuildMemberLeaved (int fd) return 0; } -// MhoICóÔ/LvĎXĘm +// ăŽăŤăăĄăłăăŞăłăŠă¤ăłçść
/Lvĺ¤ć´éçĽ int intif_parse_GuildMemberInfoShort (int fd) { guild_recv_memberinfoshort (RFIFOL (fd, 2), RFIFOL (fd, 6), @@ -919,14 +919,14 @@ int intif_parse_GuildMemberInfoShort (int fd) return 0; } -// MhđUĘm +// ăŽăŤă解ćŁéçĽ int intif_parse_GuildBroken (int fd) { guild_broken (RFIFOL (fd, 2), RFIFOB (fd, 6)); return 0; } -// Mhî{îńĎXĘm +// ăŽăŤăĺşćŹć
ĺ ąĺ¤ć´éçĽ int intif_parse_GuildBasicInfoChanged (int fd) { int type = RFIFOW (fd, 8), guild_id = RFIFOL (fd, 4); @@ -951,7 +951,7 @@ int intif_parse_GuildBasicInfoChanged (int fd) return 0; } -// MhoîńĎXĘm +// ăŽăŤăăĄăłăć
ĺ ąĺ¤ć´éçĽ int intif_parse_GuildMemberInfoChanged (int fd) { int type = RFIFOW (fd, 16), guild_id = RFIFOL (fd, 4); @@ -975,7 +975,7 @@ int intif_parse_GuildMemberInfoChanged (int fd) return 0; } -// MhđEĎXĘm +// ăŽăŤă彚čˇĺ¤ć´éçĽ int intif_parse_GuildPosition (int fd) { if (RFIFOW (fd, 2) != sizeof (struct guild_position) + 12) @@ -990,14 +990,14 @@ int intif_parse_GuildPosition (int fd) return 0; } -// MhXLčUčĘm +// ăŽăŤăăšăăŤĺ˛ăćŻăéçĽ int intif_parse_GuildSkillUp (int fd) { guild_skillupack (RFIFOL (fd, 2), RFIFOL (fd, 6), RFIFOL (fd, 10)); return 0; } -// MhŻż/GÎĘm +// ăŽăŤăĺç/ćľĺŻžéçĽ int intif_parse_GuildAlliance (int fd) { guild_allianceack (RFIFOL (fd, 2), RFIFOL (fd, 6), RFIFOL (fd, 10), @@ -1006,14 +1006,14 @@ int intif_parse_GuildAlliance (int fd) return 0; } -// MhmĎXĘm +// ăŽăŤăĺçĽĺ¤ć´éçĽ int intif_parse_GuildNotice (int fd) { guild_notice_changed (RFIFOL (fd, 2), RFIFOP (fd, 6), RFIFOP (fd, 66)); return 0; } -// MhGuĎXĘm +// ăŽăŤăă¨ăłăăŹă ĺ¤ć´éçĽ int intif_parse_GuildEmblem (int fd) { guild_emblem_changed (RFIFOW (fd, 2) - 12, RFIFOL (fd, 4), RFIFOL (fd, 8), @@ -1021,7 +1021,7 @@ int intif_parse_GuildEmblem (int fd) return 0; } -// MhďbóM +// ăŽăŤăäźčŠąĺ俥 int intif_parse_GuildMessage (int fd) { guild_recv_message (RFIFOL (fd, 4), RFIFOL (fd, 8), RFIFOP (fd, 12), @@ -1029,21 +1029,21 @@ int intif_parse_GuildMessage (int fd) return 0; } -// Mhéf[^vÔM +// ăŽăŤăĺăăźăżčŚćąčżäżĄ int intif_parse_GuildCastleDataLoad (int fd) { return guild_castledataloadack (RFIFOW (fd, 2), RFIFOB (fd, 4), RFIFOL (fd, 5)); } -// Mhéf[^ĎXĘm +// ăŽăŤăĺăăźăżĺ¤ć´éçĽ int intif_parse_GuildCastleDataSave (int fd) { return guild_castledatasaveack (RFIFOW (fd, 2), RFIFOB (fd, 4), RFIFOL (fd, 5)); } -// Mhéf[^ęóM(úť) +// ăŽăŤăĺăăźăżä¸ćŹĺ俥(ĺćĺć) int intif_parse_GuildCastleAllDataLoad (int fd) { return guild_castlealldataload (RFIFOW (fd, 2), @@ -1051,14 +1051,14 @@ int intif_parse_GuildCastleAllDataLoad (int fd) } //----------------------------------------------------------------- -// inter serverŠçĚĘM -// G[Ş ęÎ0(false)đÔˇąĆ -// pPbgŞĹŤęÎ1,pPbgˇŞŤčČŻęÎ2đÔˇąĆ +// inter serverăăăŽé俥 +// ă¨ăŠăźăăăă°0(false)ăčżăă㨠+// ăăąăăăĺŚçă§ăăă°1,ăăąăăéˇăčśłăăŞăăă°2ăčżăă㨠int intif_parse (int fd) { int packet_len; int cmd = RFIFOW (fd, 0); - // pPbgĚIDmF + // ăăąăăăŽIDç˘şčŞ if (cmd < 0x3800 || cmd >= 0x3800 + (sizeof (packet_len_table) / sizeof (packet_len_table[0])) @@ -1066,7 +1066,7 @@ int intif_parse (int fd) { return 0; } - // pPbg̡łmF + // ăăąăăăŽéˇăç˘şčŞ packet_len = packet_len_table[cmd - 0x3800]; if (packet_len == -1) { @@ -1080,7 +1080,7 @@ int intif_parse (int fd) { return 2; } - // Şň + // ĺŚçĺĺ˛ switch (cmd) { case 0x3800: @@ -1195,7 +1195,7 @@ int intif_parse (int fd) RFIFOW (fd, 0)); return 0; } - // pPbgÇÝňÎľ + // ăăąăăčŞăżéŁă°ă RFIFOSKIP (fd, packet_len); return 1; } diff --git a/src/map/itemdb.c b/src/map/itemdb.c index cf2910a..d589e35 100644 --- a/src/map/itemdb.c +++ b/src/map/itemdb.c @@ -21,7 +21,7 @@ #define MAX_RANDITEM 2000 // ** ITEMDB_OVERRIDE_NAME_VERBOSE ** -// č`ˇéĆAitemdb.txtĆgrfĹźOŞŮČéęA\ŚľÜˇ. +// ĺŽçžŠăăă¨ăitemdb.txtă¨grfă§ĺĺăç°ăŞăĺ ´ĺă襨示ăăžă. //#define ITEMDB_OVERRIDE_NAME_VERBOSE 1 static struct dbt *item_db; @@ -45,7 +45,7 @@ static int itemdb_read_noequip (void); void itemdb_reload (void); /*========================================== - * źOĹőp + * ĺĺă§ć¤ç´˘ç¨ *------------------------------------------ */ // name = item alias, so we should find items aliases first. if not found then look for "jname" (full name) @@ -63,7 +63,7 @@ int itemdb_searchname_sub (void *key, void *data, va_list ap) } /*========================================== - * źOĹőp + * ĺĺă§ć¤ç´˘ç¨ *------------------------------------------ */ int itemdb_searchjname_sub (void *key, void *data, va_list ap) @@ -78,7 +78,7 @@ int itemdb_searchjname_sub (void *key, void *data, va_list ap) } /*========================================== - * źOĹő + * ĺĺă§ć¤ç´˘ *------------------------------------------ */ struct item_data *itemdb_searchname (const char *str) @@ -89,7 +89,7 @@ struct item_data *itemdb_searchname (const char *str) } /*========================================== - * nACeő + * 玹糝ă˘ă¤ăă ć¤ç´˘ *------------------------------------------ */ int itemdb_searchrandomid (int flags) @@ -139,7 +139,7 @@ int itemdb_searchrandomid (int flags) } /*========================================== - * DBĚśÝmF + * DBăŽĺĺ¨ç˘şčŞ *------------------------------------------ */ struct item_data *itemdb_exists (int nameid) @@ -148,7 +148,7 @@ struct item_data *itemdb_exists (int nameid) } /*========================================== - * DBĚő + * DBăŽć¤ç´˘ *------------------------------------------ */ struct item_data *itemdb_search (int nameid) @@ -169,7 +169,7 @@ struct item_data *itemdb_search (int nameid) id->sex = 2; id->elv = 0; id->flag.available = 0; - id->flag.value_notdc = 0; //ęEEE + id->flag.value_notdc = 0; //ä¸ĺżăťăťăť id->flag.value_notoc = 0; id->flag.no_equip = 0; id->view_id = 0; @@ -236,16 +236,16 @@ int itemdb_isequip3 (int nameid) } /*========================================== - * ĚÄçęéACeÍ1Ať¤ĹȢACeÍ0 + * ć¨ăŚăăăă˘ă¤ăă ăŻ1ăăăă§ăŞăă˘ă¤ăă ăŻ0 *------------------------------------------ */ int itemdb_isdropable (int nameid) { - //ĽwÖÍĚÄçęȢ + //çľĺŠć蟪ăŻć¨ăŚăăăŞă switch (nameid) { - case 2634: //ĽwÖ - case 2635: //ĽwÖ + case 2634: //çľĺŠć蟪 + case 2635: //çľĺŠć蟪 return 0; } @@ -253,7 +253,7 @@ int itemdb_isdropable (int nameid) } // -// úť +// ĺćĺ // /*========================================== * @@ -289,7 +289,7 @@ static int itemdb_read_itemslottable (void) } /*========================================== - * ACef[^x[XĚÇÝÝ + * ă˘ă¤ăă ăăźăżăăźăšăŽčŞăżčžźăż *------------------------------------------ */ static int itemdb_readdb (void) @@ -396,7 +396,7 @@ static int itemdb_readdb (void) // Removed item_value_db, don't re-add! /*========================================== - * _ACeoťf[^ĚÇÝÝ + * ăŠăłăă ă˘ă¤ăă ĺşçžăăźăżăŽčŞăżčžźăż *------------------------------------------ */ static int itemdb_read_randomitem () @@ -487,7 +487,7 @@ static int itemdb_read_randomitem () } /*========================================== - * ACegpÂ\tOĚI[o[Ch + * ă˘ă¤ăă 使ç¨ĺŻč˝ăăŠă°ăŽăŞăźăăźăŠă¤ă *------------------------------------------ */ static int itemdb_read_itemavail (void) @@ -540,7 +540,7 @@ static int itemdb_read_itemavail (void) } /*========================================== - * ACeĚźOe[uđÇÝŢ + * ă˘ă¤ăă ăŽĺĺăăźăăŤăčŞăżčžźă *------------------------------------------ */ static int itemdb_read_itemnametable (void) @@ -586,7 +586,7 @@ static int itemdb_read_itemnametable (void) } /*========================================== - * J[hCXgĚ\[XźOe[uđÇÝŢ + * ăŤăźăă¤ăŠăšăăŽăŞă˝ăźăšĺĺăăźăăŤăčŞăżčžźă *------------------------------------------ */ static int itemdb_read_cardillustnametable (void) @@ -624,7 +624,7 @@ static int itemdb_read_cardillustnametable (void) } /*========================================== - * ő§Ŕt@CÇÝoľ + * čŁ
ĺĺśéăăĄă¤ăŤčŞăżĺşă *------------------------------------------ */ static int itemdb_read_noequip (void) diff --git a/src/map/map.c b/src/map/map.c index 19a7528..57183d1 100644 --- a/src/map/map.c +++ b/src/map/map.c @@ -40,7 +40,7 @@ #include "memwatch.h" #endif -// ÉÍ staticĹ[JÉűßé +// 漾ĺ statică§ăăźăŤăŤăŤĺăă static struct dbt *id_db = NULL; static struct dbt *map_db = NULL; static struct dbt *nick_db = NULL; @@ -80,8 +80,8 @@ char help_txt[256] = "conf/help.txt"; char wisp_server_name[24] = "Server"; // can be modified in char-server configuration file /*========================================== - * SmapIvĹĚÚąÝč - * (charIŠççęÄé) + * ĺ
¨mapéŻçˇč¨ă§ăŽćĽçść°č¨ĺŽ + * (charéŻăăéăăăŚăă) *------------------------------------------ */ void map_setusers (int n) @@ -90,7 +90,7 @@ void map_setusers (int n) } /*========================================== - * SmapIvĹĚÚąćž (/wÖĚp) + * ĺ
¨mapéŻçˇč¨ă§ăŽćĽçść°ĺĺž (/wă¸ăŽĺżçç¨) *------------------------------------------ */ int map_getusers (void) @@ -99,12 +99,12 @@ int map_getusers (void) } // -// blockíĚŔSŤmŰ +// blockĺé¤ăŽĺŽĺ
¨ć§ç˘şäżĺŚç // /*========================================== - * blockđfreeˇéĆŤfreeĚĎíčÉÄÔ - * bNłęĢéĆŤÍobt@É˝ßé + * blockăfreeăăă¨ăfreeăŽĺ¤ăăăŤĺźăś + * ăăăŻăăăŚăăă¨ăăŻăăăăĄăŤăăă *------------------------------------------ */ int map_freeblock (void *bl) @@ -130,7 +130,7 @@ int map_freeblock (void *bl) } /*========================================== - * blockĚfreeđęIÉÖ~ˇé + * blockăŽfreeăä¸ćçăŤçŚć˘ăă *------------------------------------------ */ int map_freeblock_lock (void) @@ -139,9 +139,9 @@ int map_freeblock_lock (void) } /*========================================== - * blockĚfreeĚbNđđˇé - * ąĚĆŤAbNŞŽSÉČČéĆ - * obt@É˝ÜÁĢ˝blockđSí + * blockăŽfreeăŽăăăŻă解é¤ăă + * ăăŽă¨ăăăăăŻăĺŽĺ
¨ăŤăŞăăŞă㨠+ * ăăăăĄăŤăăžăŁăŚăăblockăĺ
¨é¨ĺé¤ *------------------------------------------ */ int map_freeblock_unlock (void) @@ -169,20 +169,20 @@ int map_freeblock_unlock (void) } // -// blockť +// blockĺĺŚç // /*========================================== - * map[]Ěblock_listŠçqŞÁĢéęÉ - * bl->prevÉbl_headĚAhXđüęĨ + * map[]ăŽblock_listăăçšăăŁăŚăăĺ ´ĺ㍠+ * bl->prevăŤbl_headăŽă˘ăăŹăšăĺ
ĽăăŚăă *------------------------------------------ */ static struct block_list bl_head; /*========================================== - * map[]Ěblock_listÉÇÁ - * mobÍŞ˝˘ĚĹĘXg + * map[]ăŽblock_listăŤčż˝ĺ + * mobăŻć°ăĺ¤ăăŽă§ĺĽăŞăšă * - * ůÉlinkĎÝŠĚmFŞł˘B믊ŕ + * ć˘ăŤlinkć¸ăżăăŽç˘şčŞăçĄăăĺąéşăă *------------------------------------------ */ int map_addblock (struct block_list *bl) @@ -233,8 +233,8 @@ int map_addblock (struct block_list *bl) } /*========================================== - * map[]Ěblock_listŠçOˇ - * prevŞNULLĚęlistÉqŞÁÄȢ + * map[]ăŽblock_listăăĺ¤ă + * prevăNULLăŽĺ ´ĺlistăŤçšăăŁăŚăŞă *------------------------------------------ */ int map_delblock (struct block_list *bl) @@ -242,12 +242,12 @@ int map_delblock (struct block_list *bl) int b; nullpo_retr (0, bl); - // ůÉblocklistŠç˛ŻÄ˘é + // ć˘ăŤblocklistăăćăăŚăă if (bl->prev == NULL) { if (bl->next != NULL) { - // prevŞNULLĹnextŞNULLĹȢĚÍLÁÄÍČçȢ + // prevăNULLă§nextăNULLă§ăŞăăŽăŻćăŁăŚăŻăŞăăŞă if (battle_config.error_log) printf ("map_delblock error : bl->next!=NULL\n"); } @@ -263,7 +263,7 @@ int map_delblock (struct block_list *bl) bl->next->prev = bl->prev; if (bl->prev == &bl_head) { - // XgĚŞČĚĹAmap[]Ěblock_listđXVˇé + // ăŞăšăăŽé ăŞăŽă§ămap[]ăŽblock_listăć´ć°ăă if (bl->type == BL_MOB) { map[bl->m].block_mob[b] = bl->next; @@ -288,7 +288,7 @@ int map_delblock (struct block_list *bl) } /*========================================== - * üÍĚPClđŚé (ťÝ˘gp) + * ĺ¨ĺ˛ăŽPCäşşć°ăć°ăă (çžĺ¨ćŞä˝żç¨) *------------------------------------------ */ int map_countnearpc (int m, int x, int y) @@ -320,7 +320,7 @@ int map_countnearpc (int m, int x, int y) } /*========================================== - * ZăĚPCĆMOBĚđŚé (OhNXp) + * ăťăŤä¸ăŽPCă¨MOBăŽć°ăć°ăă (ă°ăŠăłăăŻăăšç¨) *------------------------------------------ */ int map_count_oncell (int m, int x, int y) @@ -355,9 +355,9 @@ int map_count_oncell (int m, int x, int y) } /*========================================== - * map m (x0,y0)-(x1,y1)ŕĚSobjÉÎľÄ - * funcđÄÔ - * type!=0 ČçťĚíŢĚÝ + * map m (x0,y0)-(x1,y1)ĺ
ăŽĺ
¨objăŤĺŻžă㌠+ * funcăĺźăś + * type!=0 ăŞăăăŽç¨ŽéĄăŽăż *------------------------------------------ */ void map_foreachinarea (int (*func) (struct block_list *, va_list), int m, @@ -418,24 +418,24 @@ void map_foreachinarea (int (*func) (struct block_list *, va_list), int m, printf ("map_foreachinarea: *WARNING* block count too many!\n"); } - map_freeblock_lock (); // ŠçĚđúđÖ~ˇé + map_freeblock_lock (); // ăĄă˘ăŞăăăŽč§ŁćžăçŚć˘ăă for (i = blockcount; i < bl_list_count; i++) - if (bl_list[i]->prev) // LřŠÇ¤Š`FbN + if (bl_list[i]->prev) // ćĺšăăŠăăăă§ă㯠func (bl_list[i], ap); - map_freeblock_unlock (); // đúđ¡é + map_freeblock_unlock (); // 解ćžă訹ĺŻăă va_end (ap); bl_list_count = blockcount; } /*========================================== - * é`(x0,y0)-(x1,y1)Ş(dx,dy)ÚŽľ˝Ě - * ĚćOÉČéĚć(é`ŠL`)ŕĚobjÉ - * ÎľÄfuncđÄÔ + * çŠĺ˝˘(x0,y0)-(x1,y1)ă(dx,dy)秝ĺăăć㎠+ * é ĺĺ¤ăŤăŞăé ĺ(çŠĺ˝˘ăLĺ形)ĺ
ăŽobj㍠+ * 寞ăăŚfuncăĺźăś * - * dx,dyÍ-1,0,1ĚÝơéiÇńČlĹࢢÁۢHj + * dx,dyăŻ-1,0,1ăŽăżă¨ăăďźăŠăăŞĺ¤ă§ăăăăŁă˝ăďźďź *------------------------------------------ */ void map_foreachinmovearea (int (*func) (struct block_list *, va_list), int m, @@ -450,7 +450,7 @@ void map_foreachinmovearea (int (*func) (struct block_list *, va_list), int m, va_start (ap, type); if (dx == 0 || dy == 0) { - // é`ĚćĚę + // çŠĺ˝˘é ĺăŽĺ ´ĺ if (dx == 0) { if (dy < 0) @@ -510,7 +510,7 @@ void map_foreachinmovearea (int (*func) (struct block_list *, va_list), int m, } else { - // LĚćĚę + // Lĺé ĺăŽĺ ´ĺ if (x0 < 0) x0 = 0; @@ -573,13 +573,13 @@ void map_foreachinmovearea (int (*func) (struct block_list *, va_list), int m, printf ("map_foreachinarea: *WARNING* block count too many!\n"); } - map_freeblock_lock (); // ŠçĚđúđÖ~ˇé + map_freeblock_lock (); // ăĄă˘ăŞăăăŽč§ŁćžăçŚć˘ăă for (i = blockcount; i < bl_list_count; i++) - if (bl_list[i]->prev) // LřŠÇ¤Š`FbN + if (bl_list[i]->prev) // ćĺšăăŠăăăă§ă㯠func (bl_list[i], ap); - map_freeblock_unlock (); // đúđ¡é + map_freeblock_unlock (); // 解ćžă訹ĺŻăă va_end (ap); bl_list_count = blockcount; @@ -632,23 +632,23 @@ void map_foreachincell (int (*func) (struct block_list *, va_list), int m, printf ("map_foreachincell: *WARNING* block count too many!\n"); } - map_freeblock_lock (); // ŠçĚđúđÖ~ˇé + map_freeblock_lock (); // ăĄă˘ăŞăăăŽč§ŁćžăçŚć˘ăă for (i = blockcount; i < bl_list_count; i++) - if (bl_list[i]->prev) // LřŠÇ¤Š`FbN + if (bl_list[i]->prev) // ćĺšăăŠăăăă§ă㯠func (bl_list[i], ap); - map_freeblock_unlock (); // đúđ¡é + map_freeblock_unlock (); // 解ćžă訹ĺŻăă va_end (ap); bl_list_count = blockcount; } /*========================================== - * °ACeâGtFNgpĚęobjčÄ - * object[]ÖĚŰśĆid_dbo^ÜĹ + * ĺşă˘ă¤ăă ăă¨ăă§ăŻăç¨ăŽä¸ćobjĺ˛ăĺ˝ăŚ + * object[]ă¸ăŽäżĺă¨id_dbçťé˛ăžă§ * - * bl->idŕąĚĹÝčľÄâ賢? + * bl->idăăăŽä¸ă§č¨ĺŽăăŚĺéĄçĄă? *------------------------------------------ */ int map_addobject (struct block_list *bl) @@ -679,8 +679,8 @@ int map_addobject (struct block_list *bl) } /*========================================== - * ęobjectĚđú - * map_delobjectĚfreeľČ˘o[W + * ä¸ćobjectăŽč§Łćž + * map_delobjectăŽfreeăăŞăăăźă¸ă§ăł *------------------------------------------ */ int map_delobjectnofree (int id, int type) @@ -710,11 +710,11 @@ int map_delobjectnofree (int id, int type) } /*========================================== - * ęobjectĚđú - * block_listŠçĚíAid_dbŠçĚí - * object dataĚfreeAobject[]ÖĚNULLăü + * ä¸ćobjectăŽč§Łćž + * block_listăăăŽĺé¤ăid_dbăăăŽĺé¤ + * object dataăŽfreeăobject[]ă¸ăŽNULL䝣ĺ
Ľ * - * addĆĚÎĚŤŞł˘ĚŞCÉČé + * addă¨ăŽĺŻžç§°ć§ăçĄăăŽăć°ăŤăŞă *------------------------------------------ */ int map_delobject (int id, int type) @@ -734,7 +734,7 @@ int map_delobject (int id, int type) } /*========================================== - * SęobjčÉfuncđÄÔ + * ĺ
¨ä¸ćobjç¸ćăŤfuncăĺźăś * *------------------------------------------ */ @@ -776,13 +776,13 @@ void map_foreachobject (int (*func) (struct block_list *, va_list), int type, } /*========================================== - * °ACeđÁˇ + * ĺşă˘ă¤ăă ăćśă * - * data==0ĚÍtimerĹÁŚ˝ - * data!=0ĚÍE¤ĹÁŚ˝ĆľÄŽě + * data==0ăŽćăŻtimeră§ćśăăć + * data!=0ăŽćăŻćžăçă§ćśăăćă¨ăăŚĺä˝ * - * ăŇÍAmap_clearflooritem(id)Ö - * map.hŕĹ#defineľÄ é + * ĺžč
ăŻămap_clearflooritem(id)㸠+ * map.hĺ
ă§#defineăăŚăă *------------------------------------------ */ int map_clearflooritem_timer (int tid, unsigned int tick, int id, int data) @@ -806,10 +806,10 @@ int map_clearflooritem_timer (int tid, unsigned int tick, int id, int data) } /*========================================== - * (m,x,y)ĚüÍrange}XŕĚóŤ(=NüÂ\)cellĚ - * ŕŠçKČ}XÚĚŔWđx+(y<<16)ĹÔˇ + * (m,x,y)ăŽĺ¨ĺ˛rangeăăšĺ
ăŽçŠşă(=äžľĺ
ĽĺŻč˝)cell㎠+ * ĺ
ăăéŠĺ˝ăŞăăšçŽăŽĺş§ć¨ăx+(y<<16)ă§čżă * - * ťórange=1ĹACehbvprĚÝ + * çžçśrange=1ă§ă˘ă¤ăă ăăăăç¨éăŽăż *------------------------------------------ */ int map_searchrandfreecell (int m, int x, int y, int range) @@ -857,9 +857,9 @@ int map_searchrandfreecell (int m, int x, int y, int range) } /*========================================== - * (m,x,y)đSÉ3x3ČŕÉ°ACeÝu + * (m,x,y)ăä¸ĺżăŤ3x3䝼ĺ
ăŤĺşă˘ă¤ăă č¨ç˝Ž * - * item_dataÍamountČOđcopyˇé + * item_dataăŻamount䝼ĺ¤ăcopyăă *------------------------------------------ */ int map_addflooritem_any (struct item *item_data, int amount, int m, int x, @@ -1019,7 +1019,7 @@ int map_addflooritem (struct item *item_data, int amount, int m, int x, int y, /* } */ /*========================================== - * charid_dbÖÇÁ(ÔMŇżŞ ęÎÔM) + * charid_dbă¸čż˝ĺ (čżäżĄĺž
ăĄăăăă°čżäżĄ) *------------------------------------------ */ void map_addchariddb (int charid, char *name) @@ -1029,7 +1029,7 @@ void map_addchariddb (int charid, char *name) p = numdb_search (charid_db, charid); if (p == NULL) - { // f[^x[XÉȢ + { // ăăźăżăăźăšăŤăŞă p = (struct charid2nick *) aCalloc (1, sizeof (struct charid2nick)); p->req_id = 0; } @@ -1041,7 +1041,7 @@ void map_addchariddb (int charid, char *name) p->req_id = 0; numdb_insert (charid_db, charid, p); if (req) - { // ÔMŇżŞ ęÎÔM + { // čżäżĄĺž
ăĄăăăă°čżäżĄ struct map_session_data *sd = map_id2sd (req); if (sd != NULL) clif_solved_charname (sd, charid); @@ -1049,7 +1049,7 @@ void map_addchariddb (int charid, char *name) } /*========================================== - * charid_dbÖÇÁiÔMvĚÝj + * charid_dbă¸čż˝ĺ ďźčżäżĄčŚćąăŽăżďź *------------------------------------------ */ int map_reqchariddb (struct map_session_data *sd, int charid) @@ -1059,7 +1059,7 @@ int map_reqchariddb (struct map_session_data *sd, int charid) nullpo_retr (0, sd); p = numdb_search (charid_db, charid); - if (p != NULL) // f[^x[XɡĹÉ é + if (p != NULL) // ăăźăżăăźăšăŤăă§ăŤăă return 0; p = (struct charid2nick *) aCalloc (1, sizeof (struct charid2nick)); p->req_id = sd->bl.id; @@ -1068,7 +1068,7 @@ int map_reqchariddb (struct map_session_data *sd, int charid) } /*========================================== - * id_dbÖblđÇÁ + * id_dbă¸blăčż˝ĺ *------------------------------------------ */ void map_addiddb (struct block_list *bl) @@ -1079,7 +1079,7 @@ void map_addiddb (struct block_list *bl) } /*========================================== - * id_dbŠçblđí + * id_dbăăblăĺé¤ *------------------------------------------ */ void map_deliddb (struct block_list *bl) @@ -1090,7 +1090,7 @@ void map_deliddb (struct block_list *bl) } /*========================================== - * nick_dbÖsdđÇÁ + * nick_dbă¸sdăčż˝ĺ *------------------------------------------ */ void map_addnickdb (struct map_session_data *sd) @@ -1101,43 +1101,43 @@ void map_addnickdb (struct map_session_data *sd) } /*========================================== - * PCĚquit map.cઠ+ * PCăŽquitĺŚç map.cĺ
ĺ * - * quitĚĺĚŞá¤ć¤ČCŕľÄŤ˝ + * quitĺŚçăŽä¸ťä˝ăéăăăăŞć°ăăăŚăă *------------------------------------------ */ int map_quit (struct map_session_data *sd) { nullpo_retr (0, sd); - if (sd->chatID) // `bgŠçoé + if (sd->chatID) // ăăŁăăăăĺşă chat_leavechat (sd); - if (sd->trade_partner) // ćřđfˇé + if (sd->trade_partner) // ĺĺźăä¸ćăă trade_tradecancel (sd); - if (sd->party_invite > 0) // p[eBŠUđۡé + if (sd->party_invite > 0) // ăăźăăŁĺ§čŞăćĺŚăă party_reply_invite (sd, sd->party_invite_account, 0); - if (sd->guild_invite > 0) // MhŠUđۡé + if (sd->guild_invite > 0) // ăŽăŤăĺ§čŞăćĺŚăă guild_reply_invite (sd, sd->guild_invite, 0); - if (sd->guild_alliance > 0) // MhŻżŠUđۡé + if (sd->guild_alliance > 0) // ăŽăŤăĺçĺ§čŞăćĺŚăă guild_reply_reqalliance (sd, sd->guild_alliance_account, 0); - party_send_logout (sd); // p[eBĚOAEgbZ[WM + party_send_logout (sd); // ăăźăăŁăŽăă°ă˘ăŚăăĄăăťăźă¸é俥 - guild_send_memberinfoshort (sd, 0); // MhĚOAEgbZ[WM + guild_send_memberinfoshort (sd, 0); // ăŽăŤăăŽăă°ă˘ăŚăăĄăăťăźă¸é俥 - pc_cleareventtimer (sd); // Cxg^C}đjüˇé + pc_cleareventtimer (sd); // ă¤ăăłăăżă¤ăăç ´ćŁăă - skill_castcancel (&sd->bl, 0); // rĽđfˇé - skill_stop_dancing (&sd->bl, 1); // _X/tf + skill_castcancel (&sd->bl, 0); // čŠ ĺąăä¸ćăă + skill_stop_dancing (&sd->bl, 1); // ăăłăš/ćźĺĽä¸ć - if (sd->sc_data && sd->sc_data[SC_BERSERK].timer != -1) //o[T[NĚIšÍHPđ100É + if (sd->sc_data && sd->sc_data[SC_BERSERK].timer != -1) //ăăźăľăźăŻä¸ăŽçľäşăŻHPă100㍠sd->status.hp = 100; - skill_status_change_clear (&sd->bl, 1); // Xe[^XŮíđđˇé - skill_clear_unitgroup (&sd->bl); // XLjbgO[vĚí + skill_status_change_clear (&sd->bl, 1); // ăšăăźăżăšç°ĺ¸¸ă解é¤ăă + skill_clear_unitgroup (&sd->bl); // ăšăăŤăŚăăăă°ăŤăźăăŽĺé¤ skill_cleartimerskill (&sd->bl); pc_stop_walking (sd, 0); pc_stopattack (sd); @@ -1152,7 +1152,7 @@ int map_quit (struct map_session_data *sd) if (pc_isdead (sd)) pc_setrestartvalue (sd, 2); pc_makesavestatus (sd); - //N[XLĹoŚ˝XLÍÁˇ + //ăŻăăźăłăšăăŤă§čŚăăăšăăŤăŻćśă //The storage closing routines will save the char if needed. [Skotlex] if (!sd->state.storage_flag) @@ -1175,7 +1175,7 @@ int map_quit (struct map_session_data *sd) } /*========================================== - * idÔĚPCđTˇBČŻęÎNULL + * idçŞĺˇăŽPCăć˘ăăĺą
ăŞăăă°NULL *------------------------------------------ */ struct map_session_data *map_id2sd (int id) @@ -1205,7 +1205,7 @@ struct map_session_data *map_id2sd (int id) } /*========================================== - * char_idÔĚźOđTˇ + * char_idçŞĺˇăŽĺĺăć˘ă *------------------------------------------ */ char *map_charid2nick (int id) @@ -1322,8 +1322,8 @@ struct map_session_data *map_nick2sd (char *nick) } /*========================================== - * idǪ̂đTˇ - * ęobjectĚęÍzńđřĚÝ + * idçŞĺˇăŽçŠăć˘ă + * ä¸ćobjectăŽĺ ´ĺăŻé
ĺăĺźăăŽăż *------------------------------------------ */ struct block_list *map_id2bl (int id) @@ -1338,7 +1338,7 @@ struct block_list *map_id2bl (int id) } /*========================================== - * id_dbŕĚSÄÉfuncđŔs + * id_dbĺ
ăŽĺ
¨ăŚăŤfuncăĺŽčĄ *------------------------------------------ */ int map_foreachiddb (int (*func) (void *, void *, va_list), ...) @@ -1352,7 +1352,7 @@ int map_foreachiddb (int (*func) (void *, void *, va_list), ...) } /*========================================== - * map.npcÖÇÁ (warpĚĚćżĚÝ) + * map.npcă¸čż˝ĺ (warpçăŽé ĺćăĄăŽăż) *------------------------------------------ */ int map_addnpc (int m, struct npc_data *nd) @@ -1411,7 +1411,7 @@ void map_removenpc (void) } /*========================================== - * mapźŠçmapÔÖϡ + * mapĺăămapçŞĺˇă¸ĺ¤ć *------------------------------------------ */ int map_mapname2mapid (char *name) @@ -1425,7 +1425,7 @@ int map_mapname2mapid (char *name) } /*========================================== - * źImapźŠçip,portϡ + * äťéŻmapĺăăip,portĺ¤ć *------------------------------------------ */ int map_mapname2ipport (char *name, int *ip, int *port) @@ -1487,7 +1487,7 @@ int map_check_dir (int s_dir, int t_dir) } /*========================================== - * ŢäĚűüđvZ + * 彟ćăŽćšĺăč¨çŽ *------------------------------------------ */ int map_calc_dir (struct block_list *src, int x, int y) @@ -1500,47 +1500,47 @@ int map_calc_dir (struct block_list *src, int x, int y) dx = x - src->x; dy = y - src->y; if (dx == 0 && dy == 0) - { // ŢäĚęęv - dir = 0; // ă + { // 彟ćăŽĺ ´ćä¸č´ + dir = 0; // ä¸ } else if (dx >= 0 && dy >= 0) - { // űüIÉEă - dir = 7; // Eă + { // ćšĺçăŤĺłä¸ + dir = 7; // ĺłä¸ if (dx * 3 - 1 < dy) - dir = 0; // ă + dir = 0; // ä¸ if (dx > dy * 3) - dir = 6; // E + dir = 6; // ĺł } else if (dx >= 0 && dy <= 0) - { // űüIÉEş - dir = 5; // Eş + { // ćšĺçăŤĺłä¸ + dir = 5; // ĺłä¸ if (dx * 3 - 1 < -dy) - dir = 4; // ş + dir = 4; // ä¸ if (dx > -dy * 3) - dir = 6; // E + dir = 6; // ĺł } else if (dx <= 0 && dy <= 0) - { // űüIÉśş - dir = 3; // śş + { // ćšĺçăŤĺˇŚä¸ + dir = 3; // ĺˇŚä¸ if (dx * 3 + 1 > dy) - dir = 4; // ş + dir = 4; // ä¸ if (dx < dy * 3) - dir = 2; // ś + dir = 2; // 塌 } else - { // űüIÉśă - dir = 1; // śă + { // ćšĺçăŤĺˇŚä¸ + dir = 1; // ĺˇŚä¸ if (-dx * 3 - 1 < dy) - dir = 0; // ă + dir = 0; // ä¸ if (-dx > dy * 3) - dir = 2; // ś + dir = 2; // 塌 } return dir; } -// gatn +// gatçłť /*========================================== - * (m,x,y)ĚóÔđ˛×é + * (m,x,y)ăŽçść
ă調ăšă *------------------------------------------ */ int map_getcell (int m, int x, int y) @@ -1551,7 +1551,7 @@ int map_getcell (int m, int x, int y) } /*========================================== - * (m,x,y)ĚóÔđtɡé + * (m,x,y)ăŽçść
ătăŤăă *------------------------------------------ */ int map_setcell (int m, int x, int y, int t) @@ -1562,7 +1562,7 @@ int map_setcell (int m, int x, int y, int t) } /*========================================== - * źIÇĚ}bvđdbÉÇÁ + * äťéŻçŽĄçăŽăăăădbăŤčż˝ĺ *------------------------------------------ */ int map_setipport (char *name, unsigned long ip, int port) @@ -1604,9 +1604,9 @@ int map_setipport (char *name, unsigned long ip, int port) return 0; } -// úťüč +// ĺćĺĺ¨ă /*========================================== - *
ęłÝč + * ć°´ĺ ´éŤăč¨ĺŽ *------------------------------------------ */ static struct @@ -1663,7 +1663,7 @@ static void map_readwater (char *watertxt) } /*========================================== - * }bv1ÇÝÝ + * ăăă1ćčŞăżčžźăż *------------------------------------------ */ static int map_readmap (int m, char *fn, char *alias) @@ -1709,7 +1709,7 @@ static int map_readmap (int m, char *fn, char *alias) for (x = 0; x < xs; x++) { /*if(wh!=NO_WATER && p->type==0){ - * //
ęťč + * // ć°´ĺ ´ĺ¤ĺŽ * map[m].gat[x+y*xs]=(p->high[0]>wh || p->high[1]>wh || p->high[2]>wh || p->high[3]>wh) ? 3 : 0; * } else { */ map[m].gat[x + y * xs] = p->type; @@ -1763,7 +1763,7 @@ static int map_readmap (int m, char *fn, char *alias) } /*========================================== - * SÄĚmapf[^đÇÝŢ + * ĺ
¨ăŚăŽmapăăźăżăčŞăżčžźă *------------------------------------------ */ int map_readallmap (void) @@ -1771,7 +1771,7 @@ int map_readallmap (void) int i, maps_removed = 0; char fn[256] = ""; - // ćÉSĚbvĚśÝđmF + // ĺ
ăŤĺ
¨é¨ăŽăŁbăăŽĺĺ¨ăç˘şčŞ for (i = 0; i < map_num; i++) { if (strstr (map[i].name, ".gat") == NULL) @@ -1820,7 +1820,7 @@ int map_readallmap (void) } /*========================================== - * ÇÝŢmapđÇÁˇé + * čŞăżčžźămapăčż˝ĺ ăă *------------------------------------------ */ int map_addmap (char *mapname) @@ -1842,7 +1842,7 @@ int map_addmap (char *mapname) } /*========================================== - * ÇÝŢmapđíˇé + * čŞăżčžźămapăĺé¤ăă *------------------------------------------ */ int map_delmap (char *mapname) @@ -1938,7 +1938,7 @@ void map_write_log (char *format, ...) } /*========================================== - * Ýčt@CđÇÝŢ + * č¨ĺŽăăĄă¤ăŤăčŞăżčžźă *------------------------------------------ */ int map_config_read (char *cfgName) @@ -2130,7 +2130,7 @@ static int cleanup_sub (struct block_list *bl, va_list ap) } /*========================================== - * mapIIš + * mapéŻçľäşćĺŚç *------------------------------------------ */ void do_final (void) @@ -2248,7 +2248,7 @@ int do_init (int argc, char *argv[]) do_init_chrif (); do_init_clif (); do_init_itemdb (); - do_init_mob (); // npcĚúťŕĹmob_spawnľÄAmob_dbđQơéĚĹinit_npcćčć + do_init_mob (); // npcăŽĺćĺćĺ
ă§mob_spawnăăŚămob_dbăĺç
§ăăăŽă§init_npcăăĺ
do_init_script (); do_init_npc (); do_init_pc (); @@ -2258,7 +2258,7 @@ int do_init (int argc, char *argv[]) do_init_skill (); do_init_magic (); - npc_event_do_oninit (); // npcĚOnInitCxgŔs + npc_event_do_oninit (); // npcăŽOnInită¤ăăłăĺŽčĄ if (battle_config.pk_mode == 1) printf ("The server is running in \033[1;31mPK Mode\033[0m.\n"); diff --git a/src/map/map.h b/src/map/map.h index dde7d7f..53f6dfc 100644 --- a/src/map/map.h +++ b/src/map/map.h @@ -294,8 +294,8 @@ struct map_session_data int castrate, hprate, sprate, dsprate; int addele[10], addrace[12], addsize[3], subele[10], subrace[12]; int addeff[10], addeff2[10], reseff[10]; - int watk_, watk_2, atkmods_[3], addele_[10], addrace_[12], addsize_[3]; //ńŹĚ˝ßÉÇÁ - int atk_ele_, star_, overrefine_; //ńŹĚ˝ßÉÇÁ + int watk_, watk_2, atkmods_[3], addele_[10], addrace_[12], addsize_[3]; //äşĺćľăŽăăăŤčż˝ĺ + int atk_ele_, star_, overrefine_; //äşĺćľăŽăăăŤčż˝ĺ int base_atk, atk_rate; int arrow_atk, arrow_ele, arrow_cri, arrow_hit, arrow_range; int arrow_addele[10], arrow_addrace[12], arrow_addsize[3], @@ -452,7 +452,7 @@ struct npc_data } warp; char *message; // for MESSAGE: only send this message } u; - // ąąÉođÇÁľÄÍČçȢ(shop_itemŞÂϡĚ×) + // ăăăŤăĄăłăăčż˝ĺ ăăŚăŻăŞăăŞă(shop_itemăĺŻĺ¤éˇăŽçş) char eventqueue[MAX_EVENTQUEUE][50]; int eventtimer[MAX_EVENTTIMER]; @@ -552,13 +552,13 @@ enum { NONE_ATTACKABLE, ATTACKABLE }; enum -{ ATK_LUCKY = 1, ATK_FLEE, ATK_DEF }; // ÍÜęyieBvZp +{ ATK_LUCKY = 1, ATK_FLEE, ATK_DEF }; // ĺ˛ăžăăăăŤăăŁč¨çŽç¨ struct map_data { char name[24]; char alias[24]; // [MouseJstr] - unsigned char *gat; // NULLČçşĚmap_data_other_serverƾľ¤ + unsigned char *gat; // NULLăŞăä¸ăŽmap_data_other_serveră¨ăăŚćąă struct block_list **block; struct block_list **block_mob; int *block_count, *block_mob_count; @@ -611,7 +611,7 @@ struct map_data struct map_data_other_server { char name[24]; - unsigned char *gat; // NULLĹčɾĝf + unsigned char *gat; // NULLĺşĺŽăŤăăŚĺ¤ć unsigned long ip; unsigned int port; }; @@ -725,14 +725,14 @@ extern char talkie_mes[]; extern char wisp_server_name[]; -// ISĚîń +// éŻĺ
¨ä˝ć
ĺ ą void map_setusers (int); int map_getusers (void); -// blockíÖA +// blockĺé¤é˘éŁ int map_freeblock (void *bl); int map_freeblock_lock (void); int map_freeblock_unlock (void); -// blockÖA +// blocké˘éŁ int map_addblock (struct block_list *); int map_delblock (struct block_list *); void map_foreachinarea (int (*)(struct block_list *, va_list), int, int, int, @@ -743,9 +743,9 @@ void map_foreachincell (int (*)(struct block_list *, va_list), int, int, int, void map_foreachinmovearea (int (*)(struct block_list *, va_list), int, int, int, int, int, int, int, int, ...); int map_countnearpc (int, int, int); -//blockÖAÉÇÁ +//blocké˘éŁăŤčż˝ĺ int map_count_oncell (int m, int x, int y); -// ęIobjectÖA +// ä¸ćçobjecté˘éŁ int map_addobject (struct block_list *); int map_delobject (int, int type); int map_delobjectnofree (int id, int type); @@ -761,7 +761,7 @@ void map_write_log (char *format, ...); #define MAP_LOG_PC(sd, fmt, args...) MAP_LOG("PC%d %d:%d,%d " fmt, sd->status.char_id, sd->bl.m, sd->bl.x, sd->bl.y, ## args) -// °ACeÖA +// ĺşă˘ă¤ăă é˘éŁ int map_clearflooritem_timer (int, unsigned int, int, int); #define map_clearflooritem(id) map_clearflooritem_timer(0,0,id,1) int map_addflooritem_any (struct item *, int amount, int m, int x, int y, @@ -773,7 +773,7 @@ int map_addflooritem (struct item *, int, int, int, int, struct map_session_data *, int); int map_searchrandfreecell (int, int, int, int); -// LidLź ϡÖA +// ăăŁăŠidďźďźăăŁăŠĺ ĺ¤ćé˘éŁ void map_addchariddb (int charid, char *name); void map_delchariddb (int charid); int map_reqchariddb (struct map_session_data *sd, int charid); @@ -800,15 +800,15 @@ struct map_session_data *map_get_next_session (struct map_session_data struct map_session_data *map_get_prev_session (struct map_session_data *current); -// gatÖA +// gaté˘éŁ int map_getcell (int, int, int); int map_setcell (int, int, int, int); -// ťĚź +// ăăŽäť int map_check_dir (int s_dir, int t_dir); int map_calc_dir (struct block_list *src, int x, int y); -// path.cćč +// path.căă int path_search (struct walkpath_data *, int, int, int, int, int, int); int path_blownpos (int m, int x0, int y0, int dx, int dy, int count); diff --git a/src/map/mob.c b/src/map/mob.c index de691c1..7962114 100644 --- a/src/map/mob.c +++ b/src/map/mob.c @@ -353,11 +353,11 @@ int mob_once_spawn (struct map_session_data *sd, char *mapname, else m = map_mapname2mapid (mapname); - if (m < 0 || amount <= 0 || (class >= 0 && class <= 1000) || class > 2000) // lŞŮíČ碍đ~ßé + if (m < 0 || amount <= 0 || (class >= 0 && class <= 1000) || class > 2000) // ĺ¤ăç°ĺ¸¸ăŞăĺŹĺăć˘ăă return 0; if (class < 0) - { // _ɢŤ + { // ăŠăłăă ăŤĺŹĺ int i = 0; int j = -class - 1; int k; @@ -412,7 +412,7 @@ int mob_once_spawn (struct map_session_data *sd, char *mapname, md->bl.x = x; md->bl.y = y; if (r < 0 && battle_config.dead_branch_active == 1) - md->mode = 0x1 + 0x4 + 0x80; //ÚŽľÄANeBuĹ˝ˇé + md->mode = 0x1 + 0x4 + 0x80; //秝ĺăăŚă˘ăŻăăŁăă§ĺćăă md->m = m; md->x0 = x; md->y0 = y; @@ -510,7 +510,7 @@ int mob_spawn_guardian (struct map_session_data *sd, char *mapname, else m = map_mapname2mapid (mapname); - if (m < 0 || amount <= 0 || (class >= 0 && class <= 1000) || class > 2000) // lŞŮíČ碍đ~ßé + if (m < 0 || amount <= 0 || (class >= 0 && class <= 1000) || class > 2000) // ĺ¤ăç°ĺ¸¸ăŞăĺŹĺăć˘ăă return 0; if (class < 0) @@ -677,11 +677,11 @@ int mob_can_move (struct mob_data *md) if (md->canmove_tick > gettick () || (md->opt1 > 0 && md->opt1 != 6) || md->option & 2) return 0; - // ANĹŽŻČ˘ĆŠ - if (md->sc_data[SC_ANKLE].timer != -1 || //ANXlA - md->sc_data[SC_AUTOCOUNTER].timer != -1 || //I[gJE^[ - md->sc_data[SC_BLADESTOP].timer != -1 || //nćč - md->sc_data[SC_SPIDERWEB].timer != -1 //XpC_[EFbu + // ă˘ăłăŻăŤä¸ă§ĺăăŞăă¨ă + if (md->sc_data[SC_ANKLE].timer != -1 || //ă˘ăłăŻăŤăšă㢠+ md->sc_data[SC_AUTOCOUNTER].timer != -1 || //ăŞăźăăŤăŚăłăżăź + md->sc_data[SC_BLADESTOP].timer != -1 || //ç˝ĺĺă + md->sc_data[SC_SPIDERWEB].timer != -1 //ăšăă¤ăăźăŚă§ăă ) return 0; @@ -917,12 +917,12 @@ static int mob_attack (struct mob_data *md, unsigned int tick, int data) return 0; if (battle_config.monster_attack_direction_change) - md->dir = map_calc_dir (&md->bl, tbl->x, tbl->y); // üŤÝč + md->dir = map_calc_dir (&md->bl, tbl->x, tbl->y); // ĺăč¨ĺŽ //clif_fixmobpos(md); md->state.skillstate = MSS_ATTACK; - if (mobskill_use (md, tick, -2)) // XLgp + if (mobskill_use (md, tick, -2)) // ăšăăŤä˝żç¨ return 0; md->target_lv = battle_weapon_attack (&md->bl, tbl, tick, 0); @@ -1041,7 +1041,7 @@ static int mob_timer (int tid, unsigned int tick, int id, int data) struct block_list *bl; if ((bl = map_id2bl (id)) == NULL) - { //UľÄŤ˝GŞŕ¤˘Č˘ĚÍłíĚ椞 + { //ćťćăăŚăăćľăăăăăŞăăŽăŻćŁĺ¸¸ăŽăăă return 1; } @@ -1453,13 +1453,13 @@ int mob_can_reach (struct mob_data *md, struct block_list *bl, int range) return 0; } - if (md->bl.m != bl->m) // á¤bv + if (md->bl.m != bl->m) // éăăŁbă return 0; - if (range > 0 && range < ((dx > dy) ? dx : dy)) // ˇŹé + if (range > 0 && range < ((dx > dy) ? dx : dy)) // é ăăă return 0; - if (md->bl.x == bl->x && md->bl.y == bl->y) // ŻśX + if (md->bl.x == bl->x && md->bl.y == bl->y) // ĺăăŁX return 1; // Obstacle judging @@ -1573,7 +1573,7 @@ static int mob_ai_sub_hard_activesearch (struct block_list *bl, va_list ap) else return 0; - //GĄűťč + //ćľĺłćšĺ¤ĺŽ if (battle_check_target (&smd->bl, bl, BCT_ENEMY) == 0) return 0; @@ -1582,11 +1582,11 @@ static int mob_ai_sub_hard_activesearch (struct block_list *bl, va_list ap) else mode = smd->mode; - // ANeBuĹ^[QbgËöŕɢéČçAbNˇé + // ă˘ăŻăăŁăă§ăżăźă˛ăăĺ°ç¨ĺ
ăŤăăăŞăăăăăŻăă if (mode & 0x04) { race = mob_db[smd->class].race; - //ÎŰŞPCĚę + //寞蹥ăPCăŽĺ ´ĺ if (tsd && !pc_isdead (tsd) && tsd->bl.m == smd->bl.m && @@ -1599,25 +1599,25 @@ static int mob_ai_sub_hard_activesearch (struct block_list *bl, va_list ap) (tsd->sc_data[SC_TRICKDEAD].timer == -1 && ((!pc_ishiding (tsd) && !tsd->state.gangsterparadise) || race == 4 || race == 6))) - { // WQŞČ˘Šťč - if (mob_can_reach (smd, bl, 12) && // BÂ\Ťťč + { // 匨厳ăăŞăăĺ¤ĺŽ + if (mob_can_reach (smd, bl, 12) && // ĺ°éĺŻč˝ć§ĺ¤ĺŽ MRAND (1000) < 1000 / (++(*pcc))) - { // ÍÍŕPCĹmŚÉˇé + { // çŻĺ˛ĺ
PCă§ç確çăŤăă smd->target_id = tsd->bl.id; smd->state.targettype = ATTACKABLE; smd->min_chase = 13; } } } - //ÎŰŞMobĚę + //寞蹥ăMobăŽĺ ´ĺ else if (tmd && tmd->bl.m == smd->bl.m && (dist = distance (smd->bl.x, smd->bl.y, tmd->bl.x, tmd->bl.y)) < 9) { - if (mob_can_reach (smd, bl, 12) && // BÂ\Ťťč + if (mob_can_reach (smd, bl, 12) && // ĺ°éĺŻč˝ć§ĺ¤ĺŽ MRAND (1000) < 1000 / (++(*pcc))) - { // ÍÍŕĹmŚÉˇé + { // çŻĺ˛ĺ
ă§ç確çăŤăă smd->target_id = bl->id; smd->state.targettype = ATTACKABLE; smd->min_chase = 13; @@ -1828,7 +1828,7 @@ static int mob_ai_sub_hard_slavemob (struct mob_data *md, unsigned int tick) (sd->sc_data[SC_TRICKDEAD].timer == -1 && ((!pc_ishiding (sd) && !sd->state.gangsterparadise) || race == 4 || race == 6))) - { // WQŞČ˘Šťč + { // 匨厳ăăŞăăĺ¤ĺŽ md->target_id = sd->bl.id; md->state.targettype = ATTACKABLE; @@ -2028,7 +2028,7 @@ static int mob_ai_sub_hard (struct block_list *bl, va_list ap) if (md->master_id > 0 && md->state.special_mob_ai == 0) mob_ai_sub_hard_slavemob (md, tick); - // ANeBX^[ĚôG (?? of a bitter taste TIVU monster) + // ă˘ăŻăăŁă´ă˘ăłăšăżăźăŽçćľ (?? of a bitter taste TIVU monster) if ((!md->target_id || md->state.targettype == NONE_ATTACKABLE) && mode & 0x04 && !md->state.master_check && battle_config.monster_active_enable == 1) @@ -2077,45 +2077,45 @@ static int mob_ai_sub_hard (struct block_list *bl, va_list ap) || (dist = distance (md->bl.x, md->bl.y, tbl->x, tbl->y)) >= md->min_chase) - mob_unlocktarget (md, tick); // Ę}bvŠAEO + mob_unlocktarget (md, tick); // ĺĽăăăăăčŚçĺ¤ else if (tsd && !(mode & 0x20) && (tsd->sc_data[SC_TRICKDEAD].timer != -1 || ((pc_ishiding (tsd) || tsd->state.gangsterparadise) && race != 4 && race != 6))) - mob_unlocktarget (md, tick); // XLČÇÉćéôGWQ + mob_unlocktarget (md, tick); // ăšăăŤăŞăŠăŤăăçćľĺŚ¨ĺŽł else if (!battle_check_range (&md->bl, tbl, mob_db[md->class].range)) { - // UÍÍOČĚĹÚŽ + // ćťćçŻĺ˛ĺ¤ăŞăŽă§ç§ťĺ if (!(mode & 1)) - { // ÚŽľČ˘[h + { // 秝ĺăăŞăă˘ăźă mob_unlocktarget (md, tick); return 0; } - if (!mob_can_move (md)) // ŽŻČ˘óÔÉ é + if (!mob_can_move (md)) // ĺăăŞăçść
ăŤăă return 0; - md->state.skillstate = MSS_CHASE; // ËXL + md->state.skillstate = MSS_CHASE; // çŞććăšă㍠mobskill_use (md, tick, -1); // if(md->timer != -1 && (DIFF_TICK(md->next_walktime,tick)<0 || distance(md->to_x,md->to_y,tsd->bl.x,tsd->bl.y)<2) ) if (md->timer != -1 && md->state.state != MS_ATTACK && (DIFF_TICK (md->next_walktime, tick) < 0 || distance (md->to_x, md->to_y, tbl->x, tbl->y) < 2)) - return 0; // ůÉÚŽ + return 0; // ć˘ăŤç§ťĺä¸ if (!mob_can_reach (md, tbl, (md->min_chase > 13) ? md->min_chase : 13)) - mob_unlocktarget (md, tick); // ڎōȢĚĹ^QđiIWĆŠHj + mob_unlocktarget (md, tick); // 秝ĺă§ăăŞăăŽă§ăżă˛č§Łé¤ďźIWă¨ăďźďź else { - // ÇŐ + // 追补 md->next_walktime = tick + 500; i = 0; do { if (i == 0) - { // ĹÍAEGISĆŻśű@Ĺő + { // ćĺăŻAEGISă¨ĺăćšćłă§ć¤ç´˘ dx = tbl->x - md->bl.x; dy = tbl->y - md->bl.y; if (dx < 0) @@ -2128,7 +2128,7 @@ static int mob_ai_sub_hard (struct block_list *bl, va_list ap) dy--; } else - { // žßČçAthenaŽ(_) + { // ă ăăŞăAthenaĺź(ăŠăłăă ) dx = tbl->x - md->bl.x + MRAND (3) - 1; dy = tbl->y - md->bl.y + MRAND (3) - 1; } @@ -2148,7 +2148,7 @@ static int mob_ai_sub_hard (struct block_list *bl, va_list ap) while (ret && i < 5); if (ret) - { // ÚŽsÂ\ČŠçĚUČç2ŕşé + { // 秝ĺä¸ĺŻč˝ăŞćăăăŽćťćăŞă2ćŠä¸ă if (dx < 0) dx = 2; else if (dx > 0) @@ -2163,15 +2163,15 @@ static int mob_ai_sub_hard (struct block_list *bl, va_list ap) } } else - { // UËöÍÍŕ + { // ćťćĺ°ç¨çŻĺ˛ĺ
md->state.skillstate = MSS_ATTACK; if (md->state.state == MS_WALK) - mob_stop_walking (md, 1); // ŕsČçâ~ + mob_stop_walking (md, 1); // ćŠčĄä¸ăŞăĺć˘ if (md->state.state == MS_ATTACK) - return 0; // ůÉU + return 0; // ć˘ăŤćťćä¸ mob_changestate (md, MS_ATTACK, attack_type); -/* if(mode&0x08){ // NX^[ +/* if(mode&0x08){ // ăŞăłăŻă˘ăłăšăżăź map_foreachinarea(mob_ai_sub_hard_linksearch,md->bl.m, md->bl.x-13,md->bl.y-13, md->bl.x+13,md->bl.y+13, @@ -2181,34 +2181,34 @@ static int mob_ai_sub_hard (struct block_list *bl, va_list ap) return 0; } else - { // [gX^[ + { // ăŤăźăă˘ăłăšăżăźĺŚç if (tbl == NULL || tbl->type != BL_ITEM || tbl->m != md->bl.m || (dist = distance (md->bl.x, md->bl.y, tbl->x, tbl->y)) >= md->min_chase || !md->lootitem) { - // ˇŹéŠACeŞČČÁ˝ + // é ăăăăă˘ă¤ăă ăăŞăăŞăŁă mob_unlocktarget (md, tick); if (md->state.state == MS_WALK) - mob_stop_walking (md, 1); // ŕsČçâ~ + mob_stop_walking (md, 1); // ćŠčĄä¸ăŞăĺć˘ } else if (dist) { if (!(mode & 1)) - { // ÚŽľČ˘[h + { // 秝ĺăăŞăă˘ăźă mob_unlocktarget (md, tick); return 0; } - if (!mob_can_move (md)) // ŽŻČ˘óÔÉ é + if (!mob_can_move (md)) // ĺăăŞăçść
ăŤăă return 0; - md->state.skillstate = MSS_LOOT; // [gXLgp + md->state.skillstate = MSS_LOOT; // ăŤăźăćăšăăŤä˝żç¨ mobskill_use (md, tick, -1); // if(md->timer != -1 && (DIFF_TICK(md->next_walktime,tick)<0 || distance(md->to_x,md->to_y,tbl->x,tbl->y)<2) ) if (md->timer != -1 && md->state.state != MS_ATTACK && (DIFF_TICK (md->next_walktime, tick) < 0 || distance (md->to_x, md->to_y, tbl->x, tbl->y) <= 0)) - return 0; // ůÉÚŽ + return 0; // ć˘ăŤç§ťĺä¸ md->next_walktime = tick + 500; dx = tbl->x - md->bl.x; dy = tbl->y - md->bl.y; @@ -2218,14 +2218,14 @@ static int mob_ai_sub_hard (struct block_list *bl, va_list ap) }*/ ret = mob_walktoxy (md, md->bl.x + dx, md->bl.y + dy, 0); if (ret) - mob_unlocktarget (md, tick); // ڎōȢĚĹ^QđiIWĆŠHj + mob_unlocktarget (md, tick); // 秝ĺă§ăăŞăăŽă§ăżă˛č§Łé¤ďźIWă¨ăďźďź } else - { // ACeÜĹ˝Çč
˘˝ + { // ă˘ă¤ăă ăžă§ăăŠăçăă if (md->state.state == MS_ATTACK) - return 0; // U + return 0; // ćťćä¸ if (md->state.state == MS_WALK) - mob_stop_walking (md, 1); // ŕsČçâ~ + mob_stop_walking (md, 1); // ćŠčĄä¸ăŞăĺć˘ fitem = (struct flooritem_data *) tbl; if (md->lootitem_count < LOOTITEM_SIZE) memcpy (&md->lootitem[md->lootitem_count++], @@ -2254,7 +2254,7 @@ static int mob_ai_sub_hard (struct block_list *bl, va_list ap) { mob_unlocktarget (md, tick); if (md->state.state == MS_WALK) - mob_stop_walking (md, 4); // ŕsČçâ~ + mob_stop_walking (md, 4); // ćŠčĄä¸ăŞăĺć˘ return 0; } } @@ -2263,11 +2263,11 @@ static int mob_ai_sub_hard (struct block_list *bl, va_list ap) if (mobskill_use (md, tick, -1)) return 0; - // ŕs - if (mode & 1 && mob_can_move (md) && // ÚŽÂ\MOB&ŽŻéóÔÉ é + // ćŠčĄĺŚç + if (mode & 1 && mob_can_move (md) && // 秝ĺĺŻč˝MOB&ĺăăçść
ăŤăă (md->master_id == 0 || md->state.special_mob_ai || md->master_dist > 10)) - { //ć認MOBśáȢ + { //ĺă塝ăMOBăăăŞă if (DIFF_TICK (md->next_walktime, tick) > +7000 && (md->walkpath.path_len == 0 @@ -2599,7 +2599,7 @@ int mob_damage (struct block_list *src, struct mob_data *md, int damage, int drop_rate; int skill, sp; - nullpo_retr (0, md); //srcÍNULLĹÄÎęéęŕ éĚĹAźĹ`FbN + nullpo_retr (0, md); //srcăŻNULLă§ĺźă°ăăĺ ´ĺăăăăŽă§ăäťă§ăă§ă㯠if (src && src->id == md->master_id && md->mode & MOB_MODE_TURNS_AGAINST_BAD_MASTER) @@ -2818,7 +2818,7 @@ int mob_damage (struct block_list *src, struct mob_data *md, int damage, skill_status_change_end (&md->bl, SC_CLOAKING, -1); if (md->state.special_mob_ai == 2) - { //XtBA[}C + { //ăšăăŁă˘ăźăă¤ăł int skillidx = 0; if ((skillidx = @@ -2826,7 +2826,7 @@ int mob_damage (struct block_list *src, struct mob_data *md, int damage, { md->mode |= 0x1; md->next_walktime = tick; - mobskill_use_id (md, &md->bl, skillidx); //ŠrĽJn + mobskill_use_id (md, &md->bl, skillidx); //čŞçčŠ ĺąéĺ§ md->state.special_mob_ai++; } } @@ -2838,11 +2838,11 @@ int mob_damage (struct block_list *src, struct mob_data *md, int damage, MAP_LOG ("MOB%d DEAD", md->bl.id); - // ----- ąąŠçS ----- + // ----- ăăăăćťäşĄĺŚç ----- map_freeblock_lock (); mob_changestate (md, MS_DEAD, 0); - mobskill_use (md, tick, -1); // SXL + mobskill_use (md, tick, -1); // ćťäşĄćăšă㍠memset (tmpsd, 0, sizeof (tmpsd)); memset (pt, 0, sizeof (pt)); @@ -2852,7 +2852,7 @@ int mob_damage (struct block_list *src, struct mob_data *md, int damage, if (src && src->type == BL_MOB) mob_unlocktarget ((struct mob_data *) src, tick); - /* \EhC */ + /* ă˝ăŚăŤăăŹă¤ăł */ if (sd && (skill = pc_checkskill (sd, HW_SOULDRAIN)) > 0) { clif_skill_nodamage (src, &md->bl, HW_SOULDRAIN, skill, 1); @@ -2863,8 +2863,8 @@ int mob_damage (struct block_list *src, struct mob_data *md, int damage, clif_heal (sd->fd, SP_SP, sp); } - // mapOÉÁŚ˝lÍvZŠçĚĹ - // overkillŞÍł˘ŻÇsumÍmax_hpĆÍᤠ+ // mapĺ¤ăŤćśăăäşşăŻč¨çŽăăé¤ăăŽă§ + // overkillĺăŻçĄăăăŠsumăŻmax_hpă¨ăŻéă tdmg = 0; for (i = 0, count = 0, mvp_damage = 0; i < DAMAGELOG_SIZE; i++) @@ -2897,7 +2897,7 @@ int mob_damage (struct block_list *src, struct mob_data *md, int damage, else dmg_rate = 1; - // oąlĚŞz + // çľé¨ĺ¤ăŽĺé
for (i = 0; i < DAMAGELOG_SIZE; i++) { @@ -2953,13 +2953,13 @@ int mob_damage (struct block_list *src, struct mob_data *md, int damage, job_exp = 0; // Added [Valaris] if ((pid = tmpsd[i]->status.party_id) > 0) - { // p[eBÉüÁĢé + { // ăăźăăŁăŤĺ
ĽăŁăŚăă int j = 0; - for (j = 0; j < pnum; j++) // ö˝p[eBXgɢéŠÇ¤Š + for (j = 0; j < pnum; j++) // ĺ
ŹĺšłăăźăăŁăŞăšăăŤăăăăŠăă if (pt[j].id == pid) break; if (j == pnum) - { // ˘Č˘ĆŤÍö˝ŠÇ¤ŠmF + { // ăăŞăă¨ăăŻĺ
ŹĺšłăăŠăăç˘şčŞ if ((p = party_search (pid)) != NULL && p->exp != 0) { pt[pnum].id = pid; @@ -2971,16 +2971,16 @@ int mob_damage (struct block_list *src, struct mob_data *md, int damage, } } else - { // ˘éĆŤÍö˝ + { // ăăă¨ăăŻĺ
Źĺšł pt[j].base_exp += base_exp; pt[j].job_exp += job_exp; flag = 0; } } - if (flag) // eŠž + if (flag) // ĺčŞćĺž pc_gainexp (tmpsd[i], base_exp, job_exp); } - // ö˝Şz + // ĺ
Źĺšłĺé
for (i = 0; i < pnum; i++) party_exp_share (pt[i].p, md->bl.m, pt[i].base_exp, pt[i].job_exp); @@ -3086,7 +3086,7 @@ int mob_damage (struct block_list *src, struct mob_data *md, int damage, } } - // mvp + // mvpĺŚç if (mvp_sd && mob_db[md->class].mexp > 0) { int j; @@ -3097,7 +3097,7 @@ int mob_damage (struct block_list *src, struct mob_data *md, int damage, mexp = (temp > 2147483647.) ? 0x7fffffff : (int) temp; if (mexp < 1) mexp = 1; - clif_mvp_effect (mvp_sd); // GtFNg + clif_mvp_effect (mvp_sd); // ă¨ăă§ăŻă clif_mvp_exp (mvp_sd, mexp); pc_gainexp (mvp_sd, mexp, 0); for (j = 0; j < 3; j++) @@ -3145,7 +3145,7 @@ int mob_damage (struct block_list *src, struct mob_data *md, int damage, guild_agit_break (md); } - // SCRIPTŔs + // SCRIPTĺŽčĄ if (md->npc_event[0]) { if (sd == NULL) @@ -3265,7 +3265,7 @@ int mob_class_change (struct mob_data *md, int *value) } /*========================================== - * mobń + * mobĺ垊 *------------------------------------------ */ int mob_heal (struct mob_data *md, int heal) @@ -3338,7 +3338,7 @@ int mob_warpslave (struct mob_data *md, int x, int y) } /*========================================== - * mob[v + * mobăŻăźă *------------------------------------------ */ int mob_warp (struct mob_data *md, int m, int x, int y, int type) @@ -3363,7 +3363,7 @@ int mob_warp (struct mob_data *md, int m, int x, int y, int type) map_delblock (&md->bl); if (bx > 0 && by > 0) - { // ĘuwčĚęüÍXZđTő + { // ä˝ç˝ŽćĺŽăŽĺ ´ĺĺ¨ĺ˛ďźăťăŤăć˘ç´˘ xs = ys = 9; } @@ -3371,12 +3371,12 @@ int mob_warp (struct mob_data *md, int m, int x, int y, int type) && (i++) < 1000) { if (xs > 0 && ys > 0 && i < 250) - { // wčĘutßĚTő + { // ćĺŽä˝ç˝ŽäťčżăŽć˘ç´˘ x = MPRAND (bx, xs) - xs / 2; y = MPRAND (by, ys) - ys / 2; } else - { // ŽS_Tő + { // ĺŽĺ
¨ăŠăłăă ć˘ç´˘ x = MPRAND (1, (map[m].xs - 2)); y = MPRAND (1, (map[m].ys - 2)); } @@ -3395,7 +3395,7 @@ int mob_warp (struct mob_data *md, int m, int x, int y, int type) printf ("MOB %d warp failed, class = %d\n", md->bl.id, md->class); } - md->target_id = 0; // ^Qđđˇé + md->target_id = 0; // ăżă˛ă解é¤ăă md->state.targettype = NONE_ATTACKABLE; md->attacked_id = 0; md->state.skillstate = MSS_IDLE; @@ -3419,7 +3419,7 @@ int mob_warp (struct mob_data *md, int m, int x, int y, int type) } /*========================================== - * ćĘŕĚć認ĚvZp(foreachinarea) + * çťé˘ĺ
ăŽĺă塝ăăŽć°č¨çŽç¨(foreachinarea) *------------------------------------------ */ int mob_countslave_sub (struct block_list *bl, va_list ap) @@ -3440,7 +3440,7 @@ int mob_countslave_sub (struct block_list *bl, va_list ap) } /*========================================== - * ćĘŕĚć認ĚvZ + * çťé˘ĺ
ăŽĺă塝ăăŽć°č¨çŽ *------------------------------------------ */ int mob_countslave (struct mob_data *md) @@ -3456,7 +3456,7 @@ int mob_countslave (struct mob_data *md) } /*========================================== - * čşMOB˘Ť + * ćä¸MOBĺŹĺ *------------------------------------------ */ int mob_summonslave (struct mob_data *md2, int *value, int amount, int flag) @@ -3471,7 +3471,7 @@ int mob_summonslave (struct mob_data *md2, int *value, int amount, int flag) by = md2->bl.y; m = md2->bl.m; - if (value[0] <= 1000 || value[0] > 2000) // lŞŮíČ碍đ~ßé + if (value[0] <= 1000 || value[0] > 2000) // ĺ¤ăç°ĺ¸¸ăŞăĺŹĺăć˘ăă return 0; while (count < 5 && value[count] > 1000 && value[count] <= 2000) count++; @@ -3520,8 +3520,8 @@ int mob_summonslave (struct mob_data *md2, int *value, int amount, int flag) md->xs = 0; md->ys = 0; md->stats[MOB_SPEED] = md2->stats[MOB_SPEED]; - md->spawndelay1 = -1; // ęxĚÝtO - md->spawndelay2 = -1; // ęxĚÝtO + md->spawndelay1 = -1; // ä¸ĺşŚăŽăżăăŠă° + md->spawndelay2 = -1; // ä¸ĺşŚăŽăżăăŠă° memset (md->npc_event, 0, sizeof (md->npc_event)); md->bl.type = BL_MOB; @@ -3539,7 +3539,7 @@ int mob_summonslave (struct mob_data *md2, int *value, int amount, int flag) } /*========================================== - * ŠŞđbNľÄ˘éPCĚđŚé(foreachclient) + * čŞĺăăăăŻăăŚăăPCăŽć°ăć°ăă(foreachclient) *------------------------------------------ */ static int mob_counttargeted_sub (struct block_list *bl, va_list ap) @@ -3574,7 +3574,7 @@ static int mob_counttargeted_sub (struct block_list *bl, va_list ap) } /*========================================== - * ŠŞđbNľÄ˘éPCĚđŚé + * čŞĺăăăăŻăăŚăăPCăŽć°ăć°ăă *------------------------------------------ */ int mob_counttargeted (struct mob_data *md, struct block_list *src, @@ -3592,7 +3592,7 @@ int mob_counttargeted (struct mob_data *md, struct block_list *src, } /*========================================== - *MOBskillŠçYskillidĚskillidxđÔˇ + *MOBskillăă芲ĺ˝skillidăŽskillidxăčżă *------------------------------------------ */ int mob_skillid2skillidx (int class, int skillid) @@ -3613,11 +3613,11 @@ int mob_skillid2skillidx (int class, int skillid) } // -// MOBXL +// MOBăšă㍠// /*========================================== - * XLgpirĽŽšAIDwčj + * ăšăăŤä˝żç¨ďźčŠ ĺąĺŽäşăIDćĺŽďź *------------------------------------------ */ int mobskill_castend_id (int tid, unsigned int tick, int id, int data) @@ -3627,7 +3627,7 @@ int mobskill_castend_id (int tid, unsigned int tick, int id, int data) struct block_list *mbl; int range; - if ((mbl = map_id2bl (id)) == NULL) //rĽľ˝MobŞŕ¤˘Č˘Ć˘¤ĚÍÇ éłí + if ((mbl = map_id2bl (id)) == NULL) //čŠ ĺąăăMobăăăăăŞăă¨ăăăŽăŻčŻăăăćŁĺ¸¸ĺŚç return 0; if ((md = (struct mob_data *) mbl) == NULL) { @@ -3636,30 +3636,30 @@ int mobskill_castend_id (int tid, unsigned int tick, int id, int data) } if (md->bl.type != BL_MOB || md->bl.prev == NULL) return 0; - if (md->skilltimer != tid) // ^C}IDĚmF + if (md->skilltimer != tid) // ăżă¤ăIDăŽç˘şčŞ return 0; md->skilltimer = -1; - //žŮâóÔŮíČÇ + //ć˛éťăçść
ç°ĺ¸¸ăŞăŠ if (md->sc_data) { if (md->opt1 > 0 || md->sc_data[SC_DIVINA].timer != -1 || md->sc_data[SC_ROKISWEIL].timer != -1 || md->sc_data[SC_STEELBODY].timer != -1) return 0; - if (md->sc_data[SC_AUTOCOUNTER].timer != -1 && md->skillid != KN_AUTOCOUNTER) //I[gJE^[ + if (md->sc_data[SC_AUTOCOUNTER].timer != -1 && md->skillid != KN_AUTOCOUNTER) //ăŞăźăăŤăŚăłăżăź return 0; - if (md->sc_data[SC_BLADESTOP].timer != -1) //nćč + if (md->sc_data[SC_BLADESTOP].timer != -1) //ç˝ĺĺă return 0; - if (md->sc_data[SC_BERSERK].timer != -1) //o[T[N + if (md->sc_data[SC_BERSERK].timer != -1) //ăăźăľăźăŻ return 0; } if (md->skillid != NPC_EMOTION) md->last_thinktime = tick + battle_get_adelay (&md->bl); if ((bl = map_id2bl (md->skilltarget)) == NULL || bl->prev == NULL) - { //XL^[QbgŞśÝľČ˘ - //printf("mobskill_castend_id nullpo\n");//^[QbgŞ˘Č˘ĆŤÍnullpośáČÄĘÉIš + { //ăšăăŤăżăźă˛ăăăĺĺ¨ăăŞă + //printf("mobskill_castend_id nullpo\n");//ăżăźă˛ăăăăăŞăă¨ăăŻnullpoăăăŞăăŚćŽéăŤçľäş return 0; } if (md->bl.m != bl->m) @@ -3682,7 +3682,7 @@ int mobskill_castend_id (int tid, unsigned int tick, int id, int data) if (bl->type != BL_SKILL && (dist == 0 || map_check_dir (dir, t_dir))) return 0; } - if (((skill_get_inf (md->skillid) & 1) || (skill_get_inf2 (md->skillid) & 4)) && // ŢäGÎÖW`FbN + if (((skill_get_inf (md->skillid) & 1) || (skill_get_inf2 (md->skillid) & 4)) && // 彟ććľĺŻžé˘äżăă§ă㯠battle_check_target (&md->bl, bl, BCT_ENEMY) <= 0) return 0; range = skill_get_range (md->skillid, md->skilllv); @@ -3701,13 +3701,13 @@ int mobskill_castend_id (int tid, unsigned int tick, int id, int data) switch (skill_get_nk (md->skillid)) { - // Un/ŤňÎľn + // ćťćçłť/ĺšăéŁă°ăçłť case 0: case 2: skill_castend_damage_id (&md->bl, bl, md->skillid, md->skilllv, tick, 0); break; - case 1: // xn + case 1: // ćŻć´çłť if (!mob_db[md->class].skill[md->skillidx].val[0] && (md->skillid == AL_HEAL || (md->skillid == ALL_RESURRECTION && bl->type != BL_PC)) @@ -3725,7 +3725,7 @@ int mobskill_castend_id (int tid, unsigned int tick, int id, int data) } /*========================================== - * XLgpirĽŽšAęwčj + * ăšăăŤä˝żç¨ďźčŠ ĺąĺŽäşăĺ ´ććĺŽďź *------------------------------------------ */ int mobskill_castend_pos (int tid, unsigned int tick, int id, int data) @@ -3734,7 +3734,7 @@ int mobskill_castend_pos (int tid, unsigned int tick, int id, int data) struct block_list *bl; int range, maxcount; - //mobskill_castend_idŻlrĽľ˝MobŞrĽŽšÉढȢƢ¤ĚÍ čť¤ČĚĹnullpoŠçO + //mobskill_castend_idĺć§čŠ ĺąăăMobăčŠ ĺąĺŽäşćăŤăăăăŞăă¨ăăăŽăŻăăăăăŞăŽă§nullpoăăé¤ĺ¤ if ((bl = map_id2bl (id)) == NULL) return 0; @@ -3743,7 +3743,7 @@ int mobskill_castend_pos (int tid, unsigned int tick, int id, int data) if (md->bl.type != BL_MOB || md->bl.prev == NULL) return 0; - if (md->skilltimer != tid) // ^C}IDĚmF + if (md->skilltimer != tid) // ăżă¤ăIDăŽç˘şčŞ return 0; md->skilltimer = -1; @@ -3753,11 +3753,11 @@ int mobskill_castend_pos (int tid, unsigned int tick, int id, int data) || md->sc_data[SC_ROKISWEIL].timer != -1 || md->sc_data[SC_STEELBODY].timer != -1) return 0; - if (md->sc_data[SC_AUTOCOUNTER].timer != -1 && md->skillid != KN_AUTOCOUNTER) //I[gJE^[ + if (md->sc_data[SC_AUTOCOUNTER].timer != -1 && md->skillid != KN_AUTOCOUNTER) //ăŞăźăăŤăŚăłăżăź return 0; - if (md->sc_data[SC_BLADESTOP].timer != -1) //nćč + if (md->sc_data[SC_BLADESTOP].timer != -1) //ç˝ĺĺă return 0; - if (md->sc_data[SC_BERSERK].timer != -1) //o[T[N + if (md->sc_data[SC_BERSERK].timer != -1) //ăăźăľăźăŻ return 0; } @@ -3777,7 +3777,7 @@ int mobskill_castend_pos (int tid, unsigned int tick, int id, int data) case HT_FREEZINGTRAP: case HT_BLASTMINE: case HT_CLAYMORETRAP: - case PF_SPIDERWEB: /* XpC_[EFbu */ + case PF_SPIDERWEB: /* ăšăă¤ăăźăŚă§ăă */ range = 0; break; case AL_PNEUMA: @@ -3808,7 +3808,7 @@ int mobskill_castend_pos (int tid, unsigned int tick, int id, int data) case HT_BLASTMINE: case HT_CLAYMORETRAP: case AM_DEMONSTRATION: - case PF_SPIDERWEB: /* XpC_[EFbu */ + case PF_SPIDERWEB: /* ăšăă¤ăăźăŚă§ăă */ range = 1; break; case AL_WARP: @@ -3882,18 +3882,18 @@ int mobskill_use_id (struct mob_data *md, struct block_list *target, skill_id = ms->skill_id; skill_lv = ms->skill_lv; - // žŮâŮí + // ć˛éťăç°ĺ¸¸ if (md->sc_data) { if (md->opt1 > 0 || md->sc_data[SC_DIVINA].timer != -1 || md->sc_data[SC_ROKISWEIL].timer != -1 || md->sc_data[SC_STEELBODY].timer != -1) return 0; - if (md->sc_data[SC_AUTOCOUNTER].timer != -1 && md->skillid != KN_AUTOCOUNTER) //I[gJE^[ + if (md->sc_data[SC_AUTOCOUNTER].timer != -1 && md->skillid != KN_AUTOCOUNTER) //ăŞăźăăŤăŚăłăżăź return 0; - if (md->sc_data[SC_BLADESTOP].timer != -1) //nćč + if (md->sc_data[SC_BLADESTOP].timer != -1) //ç˝ĺĺă return 0; - if (md->sc_data[SC_BERSERK].timer != -1) //o[T[N + if (md->sc_data[SC_BERSERK].timer != -1) //ăăźăľăźăŻ return 0; } @@ -3912,7 +3912,7 @@ int mobskill_use_id (struct mob_data *md, struct block_list *target, if (skill_get_inf2 (skill_id) & 0x200 && md->bl.id == target->id) return 0; - // ËöĆáQ¨`FbN + // ĺ°ç¨ă¨é厳çŠăă§ă㯠range = skill_get_range (skill_id, skill_lv); if (range < 0) range = battle_get_range (&md->bl) - (range + 1); @@ -3927,19 +3927,19 @@ int mobskill_use_id (struct mob_data *md, struct block_list *target, md->skilldelay[skill_idx] = gettick (); switch (skill_id) - { /* ˝ŠÁęČŞKv */ - case ALL_RESURRECTION: /* UNV */ + { /* ä˝ăçšćŽăŞĺŚçăĺż
čŚ */ + case ALL_RESURRECTION: /* ăŞăśăŹăŻăˇă§ăł */ if (target->type != BL_PC && battle_check_undead (battle_get_race (target), battle_get_elem_type (target))) - { /* GŞAfbhČç */ - forcecast = 1; /* ^[AfbgĆŻśrĽÔ */ + { /* ćľăă˘ăłăăăăŞă */ + forcecast = 1; /* ăżăźăłă˘ăłăăăă¨ĺăčŠ ĺąćé */ casttime = skill_castfix (&md->bl, skill_get_cast (PR_TURNUNDEAD, skill_lv)); } break; - case MO_EXTREMITYFIST: /*˘C
eP */ + case MO_EXTREMITYFIST: /*éżäżŽçž
čŚéłłćł */ case SA_MAGICROD: case SA_SPELLBREAKER: forcecast = 1; @@ -3952,12 +3952,12 @@ int mobskill_use_id (struct mob_data *md, struct block_list *target, target->id, skill_id, skill_lv, casttime, md->class); if (casttime > 0 || forcecast) - { // rĽŞKv + { // čŠ ĺąăĺż
čŚ // struct mob_data *md2; clif_skillcasting (&md->bl, md->bl.id, target->id, 0, 0, skill_id, casttime); - // rĽ˝X^[ + // čŠ ĺąĺĺżă˘ăłăšăżăź /* if( target->type==BL_MOB && mob_db[(md2=(struct mob_data *)target)->class].mode&0x10 && md2->state.state!=MS_ATTACK){ md2->target_id=md->bl.id; @@ -3966,7 +3966,7 @@ int mobskill_use_id (struct mob_data *md, struct block_list *target, }*/ } - if (casttime <= 0) // rĽĚł˘ŕĚÍLZłęȢ + if (casttime <= 0) // čŠ ĺąăŽçĄăăăŽăŻăăŁăłăťăŤăăăŞă md->state.skillcastcancel = 0; md->skilltarget = target->id; @@ -3996,7 +3996,7 @@ int mobskill_use_id (struct mob_data *md, struct block_list *target, } /*========================================== - * XLgpięwčj + * ăšăăŤä˝żç¨ďźĺ ´ććĺŽďź *------------------------------------------ */ int mobskill_use_pos (struct mob_data *md, @@ -4016,18 +4016,18 @@ int mobskill_use_pos (struct mob_data *md, skill_id = ms->skill_id; skill_lv = ms->skill_lv; - //žŮâóÔŮíČÇ + //ć˛éťăçść
ç°ĺ¸¸ăŞăŠ if (md->sc_data) { if (md->opt1 > 0 || md->sc_data[SC_DIVINA].timer != -1 || md->sc_data[SC_ROKISWEIL].timer != -1 || md->sc_data[SC_STEELBODY].timer != -1) return 0; - if (md->sc_data[SC_AUTOCOUNTER].timer != -1 && md->skillid != KN_AUTOCOUNTER) //I[gJE^[ + if (md->sc_data[SC_AUTOCOUNTER].timer != -1 && md->skillid != KN_AUTOCOUNTER) //ăŞăźăăŤăŚăłăżăź return 0; - if (md->sc_data[SC_BLADESTOP].timer != -1) //nćč + if (md->sc_data[SC_BLADESTOP].timer != -1) //ç˝ĺĺă return 0; - if (md->sc_data[SC_BERSERK].timer != -1) //o[T[N + if (md->sc_data[SC_BERSERK].timer != -1) //ăăźăľăźăŻ return 0; } @@ -4040,7 +4040,7 @@ int mobskill_use_pos (struct mob_data *md, || skill_id == TF_BACKSLIDING)) return 0; - // ËöĆáQ¨`FbN + // ĺ°ç¨ă¨é厳çŠăă§ă㯠bl.type = BL_NUL; bl.m = md->bl.m; bl.x = skill_x; @@ -4201,7 +4201,7 @@ int mobskill_use (struct mob_data *md, unsigned int tick, int event) if (md->state.special_mob_ai) return 0; - if (md->sc_data[SC_SELFDESTRUCTION].timer != -1) //ŠÍXLđgíȢ + if (md->sc_data[SC_SELFDESTRUCTION].timer != -1) //čŞçä¸ăŻăšăăŤă使ăăŞă return 0; for (i = 0; i < mob_db[md->class].maxskill; i++) @@ -4209,15 +4209,15 @@ int mobskill_use (struct mob_data *md, unsigned int tick, int event) int c2 = ms[i].cond2, flag = 0; struct mob_data *fmd = NULL; - // fBC + // ăăŁăŹă¤ä¸ if (DIFF_TICK (tick, md->skilldelay[i]) < ms[i].delay) continue; - // óÔťč + // çść
ĺ¤ĺŽ if (ms[i].state >= 0 && ms[i].state != md->state.skillstate) continue; - // đťč + // ćĄäťśĺ¤ĺŽ flag = (event == ms[i].cond1); if (!flag) { @@ -4278,13 +4278,13 @@ int mobskill_use (struct mob_data *md, unsigned int tick, int event) } } - // mŚťč + // 確çĺ¤ĺŽ if (flag && MRAND (10000) < ms[i].permillage) { if (skill_get_inf (ms[i].skill_id) & 2) { - // ęwč + // ĺ ´ććĺŽ struct block_list *bl = NULL; int x = 0, y = 0; if (ms[i].target <= MST_AROUND) @@ -4313,7 +4313,7 @@ int mobskill_use (struct mob_data *md, unsigned int tick, int event) } if (x <= 0 || y <= 0) continue; - // ŠŞĚüÍ + // čŞĺăŽĺ¨ĺ˛ if (ms[i].target >= MST_AROUND1) { int bx = x, by = y, i = 0, c, m = bl->m, r = @@ -4333,7 +4333,7 @@ int mobskill_use (struct mob_data *md, unsigned int tick, int event) y = by; } } - // čĚüÍ + // ç¸ćăŽĺ¨ĺ˛ if (ms[i].target >= MST_AROUND5) { int bx = x, by = y, i = 0, c, m = bl->m, r = @@ -4368,7 +4368,7 @@ int mobskill_use (struct mob_data *md, unsigned int tick, int event) if (bl && !mobskill_use_id (md, bl, i)) return 0; } - // IDwč + // IDćĺŽ if (ms[i].target <= MST_FRIEND) { struct block_list *bl = NULL; @@ -4411,7 +4411,7 @@ int mobskill_event (struct mob_data *md, int flag) } /*========================================== - * MobŞGyEČÇĚęĚťč + * Mobăă¨ăłăăŞăŚă ăŞăŠăŽĺ ´ĺăŽĺ¤ĺŽ *------------------------------------------ */ int mob_gvmobcheck (struct map_session_data *sd, struct block_list *bl) @@ -4429,14 +4429,14 @@ int mob_gvmobcheck (struct map_session_data *sd, struct block_list *bl) struct guild *g = guild_search (sd->status.guild_id); if (g == NULL && md->class == 1288) - return 0; //Mh˘ÁüČç_[Włľ + return 0; //ăŽăŤăćŞĺ ĺ
ĽăŞăăăĄăźă¸çĄă else if (gc != NULL && !map[sd->bl.m].flag.gvg) - return 0; //ÔŕĹGvśáȢƍÍ_[WČľ + return 0; //ç Śĺ
ă§GvăăăŞăă¨ăăŻăăĄăźă¸ăŞă else if (g && gc != NULL && g->guild_id == gc->guild_id) - return 0; //ŠčĚMhĚGyČç_[Włľ + return 0; //čŞĺ é ăŽăŤăăŽă¨ăłăăŞăăăĄăźă¸çĄă else if (g && guild_checkskill (g, GD_APPROVAL) <= 0 && md->class == 1288) - return 0; //łKMhłFŞČ˘Ć_[Włľ + return 0; //ćŁčŚăŽăŤăćżčŞăăŞăă¨ăăĄăźă¸çĄă } @@ -4444,7 +4444,7 @@ int mob_gvmobcheck (struct map_session_data *sd, struct block_list *bl) } /*========================================== - * XLp^C}[í + * ăšăăŤç¨ăżă¤ăăźĺé¤ *------------------------------------------ */ int mobskill_deltimer (struct mob_data *md) @@ -4463,7 +4463,7 @@ int mobskill_deltimer (struct mob_data *md) } // -// úť +// ĺćĺ // /*========================================== * Since un-setting [ mob ] up was used, it is an initial provisional value setup. @@ -4742,7 +4742,7 @@ static int mob_readdb_mobavail (void) class = atoi (str[0]); - if (class <= 1000 || class > 2000) // lŞŮíČçľČ˘B + if (class <= 1000 || class > 2000) // ĺ¤ăç°ĺ¸¸ăŞăĺŚçăăŞăă continue; k = atoi (str[1]); if (k >= 0) @@ -4792,7 +4792,7 @@ static int mob_read_randommonster (void) for (i = 0; i < MAX_RANDOMMONSTER; i++) { - mob_db[0].summonper[i] = 1002; // ÝčľYę˝ęÍ|Şoéć¤ÉľÄ¨ + mob_db[0].summonper[i] = 1002; // č¨ĺŽăĺżăăĺ ´ĺăŻăăŞăłăĺşăăăăŤăăŚăă fp = fopen_ (mobfile[i], "r"); if (fp == NULL) { diff --git a/src/map/mob.h b/src/map/mob.h index ec0352e..2463283 100644 --- a/src/map/mob.h +++ b/src/map/mob.h @@ -85,12 +85,12 @@ enum enum { - MSS_IDLE, // Ň@ - MSS_WALK, // ÚŽ - MSS_ATTACK, // U - MSS_DEAD, // S - MSS_LOOT, // [g - MSS_CHASE, // Ë + MSS_IDLE, // ĺž
ćŠ + MSS_WALK, // 秝ĺ + MSS_ATTACK, // ćťć + MSS_DEAD, // ćťäşĄ + MSS_LOOT, // ăŤăźă + MSS_CHASE, // çŞć }; int mobdb_searchname (const char *str); diff --git a/src/map/party.c b/src/map/party.c index 3277edf..f87d390 100644 --- a/src/map/party.c +++ b/src/map/party.c @@ -21,13 +21,13 @@ #include "memwatch.h" #endif -#define PARTY_SEND_XYHP_INVERVAL 1000 // ŔWâgoMĚÔu +#define PARTY_SEND_XYHP_INVERVAL 1000 // 座ć¨ăé俥ăŽéé static struct dbt *party_db; int party_send_xyhp_timer (int tid, unsigned int tick, int id, int data); /*========================================== - * Iš + * çľäş *------------------------------------------ */ static int party_db_final (void *key, void *data, va_list ap) @@ -42,7 +42,7 @@ void do_final_party (void) numdb_final (party_db, party_db_final); } -// úť +// ĺćĺ void do_init_party (void) { party_db = numdb_init (); @@ -52,7 +52,7 @@ void do_init_party (void) PARTY_SEND_XYHP_INVERVAL); } -// ő +// ć¤ç´˘ struct party *party_search (int party_id) { return numdb_search (party_db, party_id); @@ -69,7 +69,7 @@ int party_searchname_sub (void *key, void *data, va_list ap) return 0; } -// p[eBźő +// ăăźăăŁĺć¤ç´˘ struct party *party_searchname (char *str) { struct party *p = NULL; @@ -135,13 +135,13 @@ int party_created (int account_id, int fail, int party_id, char *name) return 0; } -// îńv +// ć
ĺ ąčŚćą int party_request_info (int party_id) { return intif_request_partyinfo (party_id); } -// ŽLĚmF +// ćĺąăăŁăŠăŽç˘şčŞ int party_check_member (struct party *p) { int i; @@ -157,13 +157,13 @@ int party_check_member (struct party *p) { int j, f = 1; for (j = 0; j < MAX_PARTY; j++) - { // p[eBÉf[^Ş éŠmF + { // ăăźăăŁăŤăăźăżăăăăç˘şčŞ if (p->member[j].account_id == sd->status.account_id) { if (strcmp (p->member[j].name, sd->status.name) == 0) - f = 0; // f[^Ş é + f = 0; // ăăźăżăăă else - p->member[j].sd = NULL; // ŻCĘLžÁ˝ + p->member[j].sd = NULL; // ĺĺ˘ĺĽăăŁăŠă ăŁă } } if (f) @@ -179,7 +179,7 @@ int party_check_member (struct party *p) return 0; } -// îńž¸siťĚIDĚLđS˘ŽÉˇéj +// ć
ĺ ąćĺžĺ¤ąćďźăăŽIDăŽăăŁăŠăĺ
¨é¨ćŞćĺąăŤăăďź int party_recv_noinfo (int party_id) { int i; @@ -195,7 +195,7 @@ int party_recv_noinfo (int party_id) return 0; } -// îńž +// ć
ĺ ąćĺž int party_recv_info (struct party *sp) { struct party *p; @@ -208,13 +208,13 @@ int party_recv_info (struct party *sp) p = (struct party *) aCalloc (1, sizeof (struct party)); numdb_insert (party_db, sp->party_id, p); - // ĹĚ[hČĚĹ[U[Ě`FbNđs¤ + // ćĺăŽăăźăăŞăŽă§ăŚăźăśăźăŽăă§ăăŻăčĄă party_check_member (sp); } memcpy (p, sp, sizeof (struct party)); for (i = 0; i < MAX_PARTY; i++) - { // sdĚÝč + { // sdăŽč¨ĺŽ struct map_session_data *sd = map_id2sd (p->member[i].account_id); p->member[i].sd = (sd != NULL && sd->status.party_id == p->party_id) ? sd : NULL; @@ -223,7 +223,7 @@ int party_recv_info (struct party *sp) clif_party_info (p, -1); for (i = 0; i < MAX_PARTY; i++) - { // ÝčîńĚM + { // č¨ĺŽć
ĺ ąăŽé俥 // struct map_session_data *sd = map_id2sd(p->member[i].account_id); struct map_session_data *sd = p->member[i].sd; if (sd != NULL && sd->party_sended == 0) @@ -334,7 +334,7 @@ int party_reply_invite (struct map_session_data *sd, int account_id, int flag) return 0; } -// p[eBŞÇÁłę˝ +// ăăźăăŁăčż˝ĺ ăăă int party_member_added (int party_id, int account_id, int flag) { struct map_session_data *sd = map_id2sd (account_id), *sd2; @@ -347,7 +347,7 @@ int party_member_added (int party_id, int account_id, int flag) if (battle_config.error_log) printf ("party: member added error %d is not online\n", account_id); - intif_party_leave (party_id, account_id); // L¤Éo^ĹŤČŠÁ˝˝ßEŢvđoˇ + intif_party_leave (party_id, account_id); // ăăŁăŠĺ´ăŤçťé˛ă§ăăŞăăŁăăăčąéčŚćąăĺşă } return 0; } @@ -363,20 +363,20 @@ int party_member_added (int party_id, int account_id, int flag) } if (flag == 1) - { // ¸s + { // 夹ć if (sd2 != NULL) clif_party_inviteack (sd2, sd->status.name, 0); return 0; } - // Ź÷ + // ćĺ sd->party_sended = 0; sd->status.party_id = party_id; if (sd2 != NULL) clif_party_inviteack (sd2, sd->status.name, 2); - // ˘ż¨¤ŁmF + // ăăĄăă獜ĺç˘şčŞ party_check_conflict (sd); party_send_xy_clear (p); @@ -384,7 +384,7 @@ int party_member_added (int party_id, int account_id, int flag) return 0; } -// p[eBźv +// ăăźăăŁé¤ĺčŚćą int party_removemember (struct map_session_data *sd, int account_id, char *name) { @@ -397,14 +397,14 @@ int party_removemember (struct map_session_data *sd, int account_id, return 0; for (i = 0; i < MAX_PARTY; i++) - { // [_[ŠÇ¤Š`FbN + { // ăŞăźăăźăăŠăăăă§ă㯠if (p->member[i].account_id == sd->status.account_id) if (p->member[i].leader == 0) return 0; } for (i = 0; i < MAX_PARTY; i++) - { // ŽľÄ˘éŠ˛×é + { // ćĺąăăŚăăă調ăšă if (p->member[i].account_id == account_id) { intif_party_leave (p->party_id, account_id); @@ -414,7 +414,7 @@ int party_removemember (struct map_session_data *sd, int account_id, return 0; } -// p[eBEŢv +// ăăźăăŁčąéčŚćą int party_leave (struct map_session_data *sd) { struct party *p; @@ -426,7 +426,7 @@ int party_leave (struct map_session_data *sd) return 0; for (i = 0; i < MAX_PARTY; i++) - { // ŽľÄ˘éŠ + { // ćĺąăăŚăăă if (p->member[i].account_id == sd->status.account_id) { intif_party_leave (p->party_id, sd->status.account_id); @@ -436,7 +436,7 @@ int party_leave (struct map_session_data *sd) return 0; } -// p[eBoŞEŢľ˝ +// ăăźăăŁăĄăłăăčąéăă int party_member_leaved (int party_id, int account_id, char *name) { struct map_session_data *sd = map_id2sd (account_id); @@ -460,7 +460,7 @@ int party_member_leaved (int party_id, int account_id, char *name) return 0; } -// p[eBđUĘm +// ăăźăăŁč§ŁćŁéçĽ int party_broken (int party_id) { struct party *p; @@ -483,7 +483,7 @@ int party_broken (int party_id) return 0; } -// p[eBĚÝčĎXv +// ăăźăăŁăŽč¨ĺŽĺ¤ć´čŚćą int party_changeoption (struct map_session_data *sd, int exp, int item) { struct party *p; @@ -498,7 +498,7 @@ int party_changeoption (struct map_session_data *sd, int exp, int item) return 0; } -// p[eBĚÝčĎXĘm +// ăăźăăŁăŽč¨ĺŽĺ¤ć´éçĽ int party_optionchanged (int party_id, int account_id, int exp, int item, int flag) { @@ -515,7 +515,7 @@ int party_optionchanged (int party_id, int account_id, int exp, int item, return 0; } -// p[eBoĚÚŽĘm +// ăăźăăŁăĄăłăăŽç§ťĺéçĽ int party_recv_movemap (int party_id, int account_id, char *map, int online, int lv) { @@ -548,19 +548,19 @@ int party_recv_movemap (int party_id, int account_id, char *map, int online, } for (i = 0; i < MAX_PARTY; i++) - { // sdÄÝč + { // sdĺč¨ĺŽ struct map_session_data *sd = map_id2sd (p->member[i].account_id); p->member[i].sd = (sd != NULL && sd->status.party_id == p->party_id) ? sd : NULL; } - party_send_xy_clear (p); // ŔWÄĘmvż + party_send_xy_clear (p); // 座ć¨ĺéçĽčŚčŤ clif_party_info (p, -1); return 0; } -// p[eBoĚÚŽ +// ăăźăăŁăĄăłăăŽç§ťĺ int party_send_movemap (struct map_session_data *sd) { struct party *p; @@ -571,16 +571,16 @@ int party_send_movemap (struct map_session_data *sd) return 0; intif_party_changemap (sd, 1); - if (sd->party_sended != 0) // ŕ¤p[eBf[^ÍMĎÝ + if (sd->party_sended != 0) // ăăăăźăăŁăăźăżăŻé俥ć¸ăż return 0; - // ŁmF + // 獜ĺç˘şčŞ party_check_conflict (sd); - // éČçp[eBîńM + // ăăăŞăăăźăăŁć
ĺ ąé俥 if ((p = party_search (sd->status.party_id)) != NULL) { - party_check_member (p); // ŽđmFˇé + party_check_member (p); // ćĺąă確čŞăă if (sd->status.party_id == p->party_id) { clif_party_info (p, sd->fd); @@ -592,7 +592,7 @@ int party_send_movemap (struct map_session_data *sd) return 0; } -// p[eBoĚOAEg +// ăăźăăŁăĄăłăăŽăă°ă˘ăŚă int party_send_logout (struct map_session_data *sd) { struct party *p; @@ -602,7 +602,7 @@ int party_send_logout (struct map_session_data *sd) if (sd->status.party_id > 0) intif_party_changemap (sd, 0); - // sdŞłřÉČéĚĹp[eBîńŠçí + // sdăçĄĺšăŤăŞăăŽă§ăăźăăŁć
ĺ ąăăĺé¤ if ((p = party_search (sd->status.party_id)) != NULL) { int i; @@ -614,7 +614,7 @@ int party_send_logout (struct map_session_data *sd) return 0; } -// p[eBbZ[WM +// ăăźăăŁăĄăăťăźă¸é俥 int party_send_message (struct map_session_data *sd, char *mes, int len) { if (sd->status.party_id == 0) @@ -624,7 +624,7 @@ int party_send_message (struct map_session_data *sd, char *mes, int len) return 0; } -// p[eBbZ[WóM +// ăăźăăŁăĄăăťăźă¸ĺ俥 int party_recv_message (int party_id, int account_id, char *mes, int len) { struct party *p; @@ -634,7 +634,7 @@ int party_recv_message (int party_id, int account_id, char *mes, int len) return 0; } -// p[eBŁmF +// ăăźăăŁçŤśĺç˘şčŞ int party_check_conflict (struct map_session_data *sd) { nullpo_retr (0, sd); @@ -644,7 +644,7 @@ int party_check_conflict (struct map_session_data *sd) return 0; } -// ĘuâgoĘmp +// ä˝ç˝ŽăéçĽç¨ int party_send_xyhp_timer_sub (void *key, void *data, va_list ap) { struct party *p = (struct party *) data; @@ -657,14 +657,14 @@ int party_send_xyhp_timer_sub (void *key, void *data, va_list ap) struct map_session_data *sd; if ((sd = p->member[i].sd) != NULL) { - // ŔWĘm + // 座ć¨éçĽ if (sd->party_x != sd->bl.x || sd->party_y != sd->bl.y) { clif_party_xy (p, sd); sd->party_x = sd->bl.x; sd->party_y = sd->bl.y; } - // goĘm + // éçĽ if (sd->party_hp != sd->status.hp) { clif_party_hp (p, sd); @@ -676,14 +676,14 @@ int party_send_xyhp_timer_sub (void *key, void *data, va_list ap) return 0; } -// ĘuâgoĘm +// ä˝ç˝ŽăéçĽ int party_send_xyhp_timer (int tid, unsigned int tick, int id, int data) { numdb_foreach (party_db, party_send_xyhp_timer_sub, tick); return 0; } -// ĘuĘmNA +// ä˝ç˝ŽéçĽăŻăŞă˘ int party_send_xy_clear (struct party *p) { int i; @@ -703,7 +703,7 @@ int party_send_xy_clear (struct party *p) return 0; } -// HPĘmĚKvŤ¸pimap_foreachinmoveareaŠçÄÎęéj +// HPéçĽăŽĺż
čŚć§ć¤ćťç¨ďźmap_foreachinmoveareaăăĺźă°ăăďź int party_send_hp_check (struct block_list *bl, va_list ap) { int party_id; @@ -725,7 +725,7 @@ int party_send_hp_check (struct block_list *bl, va_list ap) return 0; } -// oąlö˝Şz +// çľé¨ĺ¤ĺ
Źĺšłĺé
int party_exp_share (struct party *p, int map, int base_exp, int job_exp) { struct map_session_data *sd; @@ -744,9 +744,9 @@ int party_exp_share (struct party *p, int map, int base_exp, int job_exp) return 0; } -// Żś}bvĚp[eBo[SĚÉđŠŻé -// type==0 Żś}bv -// !=0 ćĘŕ +// ĺăăăăăŽăăźăăŁăĄăłăăźĺ
¨ä˝ăŤĺŚçăăăă +// type==0 ĺăăăă +// !=0 çťé˘ĺ
void party_foreachsamemap (int (*func) (struct block_list *, va_list), struct map_session_data *sd, int type, ...) { @@ -784,13 +784,13 @@ void party_foreachsamemap (int (*func) (struct block_list *, va_list), } } - map_freeblock_lock (); // ŠçĚđúđÖ~ˇé + map_freeblock_lock (); // ăĄă˘ăŞăăăŽč§ŁćžăçŚć˘ăă for (i = 0; i < blockcount; i++) - if (list[i]->prev) // LřŠÇ¤Š`FbN + if (list[i]->prev) // ćĺšăăŠăăăă§ă㯠func (list[i], ap); - map_freeblock_unlock (); // đúđ¡é + map_freeblock_unlock (); // 解ćžă訹ĺŻăă va_end (ap); } diff --git a/src/map/path.c b/src/map/path.c index a6e7535..93ce960 100644 --- a/src/map/path.c +++ b/src/map/path.c @@ -22,7 +22,7 @@ struct tmp_path #define calc_index(x,y) (((x)+(y)*MAX_WALKPATH) & (MAX_WALKPATH*MAX_WALKPATH-1)) /*========================================== - * oHTőâheap push + * çľčˇŻć˘ç´˘čŁĺŠheap push *------------------------------------------ */ static void push_heap_path (int *heap, struct tmp_path *tp, int index) @@ -44,8 +44,8 @@ static void push_heap_path (int *heap, struct tmp_path *tp, int index) } /*========================================== - * oHTőâheap update - * cost޸Á˝ĚĹŞĚűÖÚŽ + * çľčˇŻć˘ç´˘čŁĺŠheap update + * costăć¸ăŁăăŽă§ć šăŽćšă¸ç§ťĺ *------------------------------------------ */ static void update_heap_path (int *heap, struct tmp_path *tp, int index) @@ -70,7 +70,7 @@ static void update_heap_path (int *heap, struct tmp_path *tp, int index) } /*========================================== - * oHTőâheap pop + * çľčˇŻć˘ç´˘čŁĺŠheap pop *------------------------------------------ */ static int pop_heap_path (int *heap, struct tmp_path *tp) @@ -105,7 +105,7 @@ static int pop_heap_path (int *heap, struct tmp_path *tp) } /*========================================== - * ťÝĚ_ĚcostvZ + * çžĺ¨ăŽçšăŽcostč¨çŽ *------------------------------------------ */ static int calc_cost (struct tmp_path *p, int x1, int y1) @@ -124,7 +124,7 @@ static int calc_cost (struct tmp_path *p, int x1, int y1) } /*========================================== - * KvČçpathđÇÁ/Cłˇé + * ĺż
čŚăŞăpathăčż˝ĺ /俎ćŁăă *------------------------------------------ */ static int add_path (int *heap, struct tmp_path *tp, int x, int y, int dist, @@ -170,8 +170,8 @@ static int add_path (int *heap, struct tmp_path *tp, int x, int y, int dist, } /*========================================== - * (x,y)ŞÚŽsÂ\nъǤŠ - * flag 0x10000 ŁUťč + * (x,y)ă秝ĺä¸ĺŻč˝ĺ°ĺ¸ŻăăŠăă + * flag 0x10000 é čˇé˘ćťćĺ¤ĺŽ *------------------------------------------ */ static int can_place (struct map_data *m, int x, int y, int flag) @@ -190,7 +190,7 @@ static int can_place (struct map_data *m, int x, int y, int flag) } /*========================================== - * (x0,y0)Šç(x1,y1)Ö1ŕĹÚŽÂ\ŠvZ + * (x0,y0)ăă(x1,y1)ă¸1ćŠă§ç§ťĺĺŻč˝ăč¨çŽ *------------------------------------------ */ static int can_move (struct map_data *m, int x0, int y0, int x1, int y1, @@ -214,8 +214,8 @@ static int can_move (struct map_data *m, int x0, int y0, int x1, int y1, } /*========================================== - * (x0,y0)Šç(dx,dy)űüÖcountZŞ - * ŤňÎľ˝ ĆĚŔWđž + * (x0,y0)ăă(dx,dy)ćšĺă¸countăťăŤĺ + * ĺšăéŁă°ăăăă¨ăŽĺş§ć¨ăćĺž *------------------------------------------ */ int path_blownpos (int m, int x0, int y0, int dx, int dy, int count) @@ -227,7 +227,7 @@ int path_blownpos (int m, int x0, int y0, int dx, int dy, int count) md = &map[m]; if (count > 15) - { // Ĺĺ10}XɧŔ + { // ć大10ăăšăŤĺśé if (battle_config.error_log) printf ("path_blownpos: count too many %d !\n", count); count = 15; @@ -265,7 +265,7 @@ int path_blownpos (int m, int x0, int y0, int dx, int dy, int count) } /*========================================== - * pathTő (x0,y0)->(x1,y1) + * pathć˘ç´˘ (x0,y0)->(x1,y1) *------------------------------------------ */ int path_search (struct walkpath_data *wpd, int m, int x0, int y0, int x1, @@ -408,7 +408,7 @@ char gat[64][64] = { struct map_data map[1]; /*========================================== - * oHTő[`PĚeXgpmainÖ + * çľčˇŻć˘ç´˘ăŤăźăăłĺä˝ăăšăç¨mainé˘ć° *------------------------------------------ */ void main (int argc, char *argv[]) diff --git a/src/map/pc.h b/src/map/pc.h index ec5afb9..20ae26e 100644 --- a/src/map/pc.h +++ b/src/map/pc.h @@ -182,12 +182,12 @@ void pc_cleanup (struct map_session_data *sd); // [Fate] Clean up after a logge struct pc_base_job { - int job; //EĆA˝žľ]śEâ{qEĚęÍłĚEĆđÔˇ(pv¨v) - int type; //mr 0, ęE 1, ńE 2, Xpmr 3 - int upper; //Ęí 0, ]ś 1, {q 2 + int job; //čˇćĽăăă ă蝢çčˇăé¤ĺčˇăŽĺ ´ĺăŻĺ
ăŽčˇćĽăčżă(ĺťăăŞâăăŞ) + int type; //ăă 0, ä¸ćŹĄčˇ 1, äşćŹĄčˇ 2, ăšăăă 3 + int upper; //é常 0, 蝢ç 1, é¤ĺ 2 }; -struct pc_base_job pc_calc_base_job (int b_class); //]śâ{qEĚłĚEĆđÔˇ +struct pc_base_job pc_calc_base_job (int b_class); //蝢çăé¤ĺčˇăŽĺ
ăŽčˇćĽăčżă int pc_read_gm_account (int fd); int pc_setinvincibletimer (struct map_session_data *sd, int); diff --git a/src/map/skill.h b/src/map/skill.h index 2361f87..08f2e18 100644 --- a/src/map/skill.h +++ b/src/map/skill.h @@ -14,7 +14,7 @@ #define SKILL_POOL_ACTIVE 0x2 // is an active pool skill #define SKILL_POOL_ACTIVATED 0x4 // pool skill has been activated (used for clif) -// XLf[^x[X +// ăšăăŤăăźăżăăźăš struct skill_db { int range[MAX_SKILL_LEVEL], hit, inf, pl, nk, max, stat, poolflags, max_raise; // `max' is the global max, `max_raise' is the maximum attainable via skill-ups @@ -48,7 +48,7 @@ struct skill_unit_group; int do_init_skill (void); -// XLf[^x[XÖĚANZT +// ăšăăŤăăźăżăăźăšă¸ăŽă˘ăŻăťăľ int skill_get_hit (int id); int skill_get_inf (int id); int skill_get_pl (int id); @@ -72,7 +72,7 @@ int skill_get_inf2 (int id); int skill_get_maxcount (int id); int skill_get_blewcount (int id, int lv); -// XLĚgp +// ăšăăŤăŽä˝żç¨ int skill_use_id (struct map_session_data *sd, int target_id, int skill_num, int skill_lv); int skill_use_pos (struct map_session_data *sd, @@ -86,12 +86,12 @@ int skill_addtimerskill (struct block_list *src, unsigned int tick, int target, int x, int y, int skill_id, int skill_lv, int type, int flag); -// ÇÁřĘ +// čż˝ĺ ĺšć int skill_additional_effect (struct block_list *src, struct block_list *bl, int skillid, int skilllv, int attack_type, unsigned int tick); -// jbgXL +// ăŚăăăăšă㍠struct skill_unit *skill_initunit (struct skill_unit_group *group, int idx, int x, int y); int skill_delunit (struct skill_unit *unit); @@ -123,7 +123,7 @@ int skill_unit_move_unit_group (struct skill_unit_group *group, int m, struct skill_unit_group *skill_check_dancing (struct block_list *src); void skill_stop_dancing (struct block_list *src, int flag); -// rĽLZ +// čŠ ĺąăăŁăłăťăŤ int skill_castcancel (struct block_list *bl, int type); int skill_gangsterparadise (struct map_session_data *sd, int type); @@ -138,11 +138,11 @@ void skill_devotion_end (struct map_session_data *md, #define skill_calc_heal(bl,skill_lv) (( battle_get_lv(bl)+battle_get_int(bl) )/8 *(4+ skill_lv*8)) -// ťĚź +// ăăŽäť int skill_check_cloaking (struct block_list *bl); int skill_is_danceskill (int id); -// Xe[^XŮí +// ăšăăźăżăšç°ĺ¸¸ int skill_status_effect (struct block_list *bl, int type, int val1, int val2, int val3, int val4, int tick, int flag, int spell_invocation); @@ -155,7 +155,7 @@ int skill_encchant_eremental_end (struct block_list *bl, int type); int skill_status_change_end (struct block_list *bl, int type, int tid); int skill_status_change_clear (struct block_list *bl, int type); -// mobXLĚ˝ß +// mobăšăăŤăŽăă int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, int skillid, int skilllv, unsigned int tick, int flag); @@ -165,7 +165,7 @@ int skill_castend_damage_id (struct block_list *src, struct block_list *bl, int skill_castend_pos2 (struct block_list *src, int x, int y, int skillid, int skilllv, unsigned int tick, int flag); -// XLUę +// ăšăăŤćťćä¸ćŹĺŚç int skill_attack (int attack_type, struct block_list *src, struct block_list *dsrc, struct block_list *bl, int skillid, int skilllv, unsigned int tick, int flag); @@ -182,7 +182,7 @@ enum }; enum -{ // struct map_session_data Ě status_changeĚÔe[u +{ // struct map_session_data ㎠status_changeăŽçŞĺˇăăźă㍠SC_SENDMAX = 256, SC_PROVOKE = 0, SC_ENDURE = 1, diff --git a/src/map/storage.c b/src/map/storage.c index 9a3f366..84dedb3 100644 --- a/src/map/storage.c +++ b/src/map/storage.c @@ -23,7 +23,7 @@ static struct dbt *storage_db; static struct dbt *guild_storage_db; /*========================================== - * qÉŕACe\[g + * ĺ庍ĺ
ă˘ă¤ăă ă˝ăźă *------------------------------------------ */ int storage_comp_item (const void *_i1, const void *_i2) @@ -69,10 +69,10 @@ void sortage_gsortitem (struct guild_storage *gstor) } /*========================================== - * úťĆŠ + * ĺćĺă¨ă *------------------------------------------ */ -int do_init_storage (void) // map.c::do_init()ŠçÄÎęé +int do_init_storage (void) // map.c::do_init()ăăĺźă°ăă { storage_db = numdb_init (); guild_storage_db = numdb_init (); @@ -144,7 +144,7 @@ int storage_delete (int account_id) } /*========================================== - * JvqÉđJ + * ăŤăăŠĺ庍ăéă *------------------------------------------ */ int storage_storageopen (struct map_session_data *sd) diff --git a/src/map/trade.c b/src/map/trade.c index 40a762b..664d2fa 100644 --- a/src/map/trade.c +++ b/src/map/trade.c @@ -12,7 +12,7 @@ #include "nullpo.h" /*========================================== - * ćřvżđčÉé + * ĺĺźčŚčŤăç¸ćăŤéă *------------------------------------------ */ void trade_traderequest (struct map_session_data *sd, int target_id) @@ -27,7 +27,7 @@ void trade_traderequest (struct map_session_data *sd, int target_id) { if (target_sd->guild_invite > 0 || target_sd->party_invite > 0) { - clif_tradestart (sd, 2); // čÍPTvżŠGuildvż + clif_tradestart (sd, 2); // ç¸ćăŻPTčŚčŤä¸ăGuildčŚčŤä¸ return; } } @@ -66,7 +66,7 @@ void trade_traderequest (struct map_session_data *sd, int target_id) } /*========================================== - * ćřvż + * ĺĺźčŚčŤ *------------------------------------------ */ void trade_tradeack (struct map_session_data *sd, int type) @@ -99,7 +99,7 @@ void trade_tradeack (struct map_session_data *sd, int type) } /*========================================== - * ACeÇÁ + * ă˘ă¤ăă čż˝ĺ *------------------------------------------ */ void trade_tradeadditem (struct map_session_data *sd, int index, int amount) @@ -222,7 +222,7 @@ void trade_tradeadditem (struct map_session_data *sd, int index, int amount) } /*========================================== - * ACeÇÁŽš(okľ) + * ă˘ă¤ăă čż˝ĺ ĺŽäş(okćźă) *------------------------------------------ */ void trade_tradeok (struct map_session_data *sd) @@ -254,7 +254,7 @@ void trade_tradeok (struct map_session_data *sd) } /*========================================== - * ćřLZ + * ĺĺźăăŁăłăťăŤ *------------------------------------------ */ void trade_tradecancel (struct map_session_data *sd) @@ -306,7 +306,7 @@ void trade_tradecancel (struct map_session_data *sd) #define MAP_LOG_PC(sd, fmt, args...) MAP_LOG("PC%d %d:%d,%d " fmt, sd->status.char_id, sd->bl.m, sd->bl.x, sd->bl.y, ## args) /*========================================== - * ćřř(tradeľ) + * ĺĺźč¨ąčŤž(tradećźă) *------------------------------------------ */ void trade_tradecommit (struct map_session_data *sd) diff --git a/src/tool/backup b/src/tool/backup index 939c7ee..bde63b5 100644 --- a/src/tool/backup +++ b/src/tool/backup @@ -1,47 +1,47 @@ #!/usr/bin/perl ########################################################################## -# Athenapf[^obNAbvc[ +# Athenaç¨ăăźăżăăăŻă˘ăăăăźăŤ # -# @AthenaĚeíf[^t@C*.txtđobNAbvˇéc[ +# ăAthenaăŽĺ税ăăźăżăăĄă¤ăŤ*.txtăăăăŻă˘ăăăăăăźăŤ # #------------------------------------------------------------------------- -# Ýčű@ -# @ŔsˇéĚJgtH_ŠçĚf[^ÖĚpXAt@CĚXgđ -# @łľÝčľÜˇBobNAbvćĚtH_ÍŠŽěŹłęȢĚĹA -# @ŠŞĹ쏾ĨKvŞ čܡB -# @tH_ĚĹăĚu/vÍČŞĹŤÜšńB +# č¨ĺŽćšćł +# ăĺŽčĄăăćăŽăŤăŹăłăăăŠăŤăăăăŽăăźăżă¸ăŽăăšăăăĄă¤ăŤăŽăŞăšăă +# ăćŁăăč¨ĺŽăăžăăăăăŻă˘ăăĺ
ăŽăăŠăŤăăŻčŞĺä˝ćăăăŞăăŽă§ă +# ăčŞĺă§ä˝ćăăŚăăĺż
čŚăăăăžăă +# ăăăŠăŤăăŽćĺžăŽă/ăăŻççĽă§ăăžăăă # -# @tH_ÍřĹŕwčōܡBá./backup ../save/ ./backup_data/ -# @tH_ĚĹăĚu/vÍČŞĹŤÜšńB +# ăăăŠăŤăăŻĺźć°ă§ăćĺŽă§ăăžăăäžďź./backup ../save/ ./backup_data/ +# ăăăŠăŤăăŽćĺžăŽă/ăăŻççĽă§ăăžăăă # -# @ŔsˇéĆobNAbvćĚtH_ÖAt@CźÉťÝĚútĆđ -# @ÂŻÄt@CđRs[ľÜˇB +# ăĺŽčĄăăă¨ăăăŻă˘ăăĺ
ăŽăăŠăŤăă¸ăăăĄă¤ăŤĺăŤçžĺ¨ăŽćĽäťă¨ćĺťă +# ăă¤ăăŚăăĄă¤ăŤăăłăăźăăžăă # -# * tooltH_ŕÉbackup_datatH_đ쏾A -# @ athena.shĚÉu./tool/backup ./save/ ./tool/backup_data/v -# Ƣ¤sđÇÁˇéĆAathenađNŽˇé˝ŃÉobNAbvŞćęܡ +# * toolăăŠăŤăĺ
ăŤbackup_dataăăŠăŤăăä˝ćăă +# ă athena.shăŽä¸ăŤă./tool/backup ./save/ ./tool/backup_data/ă +# ă¨ăăčĄăčż˝ĺ ăăă¨ăathenaă辡ĺăăăăłăŤăăăŻă˘ăăăĺăăžă # -# łˇéĆŤÍřÉu-r útĆvđwčľÜˇB -# @Ü˝ťĚăëÉtH_đwčˇéąĆŕoܡ -# @áP ./backup -r 200309191607 -# @áQ ./backup -r 200309191607 ../save ./backup_data/ -# @ąĚáĹÍ2003/09/19Ě16:07ŞÉobNAbvľ˝f[^đłľÄ˘Üˇ +# 垊ĺ
ăăă¨ăăŻĺźć°ăŤă-r ćĽäťă¨ćĺťăăćĺŽăăžăă +# ăăžăăăŽĺžăăŤăăŠăŤăăćĺŽăăăă¨ăĺşćĽăžă +# ăäžďźďź ./backup -r 200309191607 +# ăäžďźďź ./backup -r 200309191607 ../save ./backup_data/ +# ăăăŽäžă§ăŻ2003/09/19ăŽ16:07ĺăŤăăăŻă˘ăăăăăăźăżă垊ĺ
ăăŚăăžă # -# @łˇéĆŤAAthenafBNgÉ éf[^Í *.bak ÉźOđĎXľÄ -# @cľÄ˘éĚĹA˘çȢęÍ rm *.bak ČÇĹÁľÄžł˘B +# ă垊ĺ
ăăă¨ăăAthenaăăŁăŹăŻăăŞăŤăăăăźăżăŻ *.bak ăŤĺĺăĺ¤ć´ă㌠+# ăćŽăăŚăăăŽă§ăăăăŞăĺ ´ĺ㯠rm *.bak ăŞăŠă§ćśăăŚăă ăăă # ########################################################################## -$sdir="../save/"; #obNAbvł(AthenaĚfBNg/save/) -$tdir="./backup_data/"; #obNAbvć +$sdir="../save/"; #ăăăŻă˘ăăĺ
(AthenaăŽăăŁăŹăŻăăŞ/save/) +$tdir="./backup_data/"; #ăăăŻă˘ăăĺ
-@files=( #t@CĚXg +@files=( #ăăĄă¤ăŤăŽăŞăšă "account","athena","storage","party","guild","castle","pet" ); -#-------------------------------ÝčąąÜĹ----------------------------- +#-------------------------------č¨ĺŽăăăžă§----------------------------- @@ -54,7 +54,7 @@ $tdir="./backup_data/"; #obNAbvć if($ARGV[0]=~/^\-r$/i || $ARGV[0]=~/\-\-(recover|restore)/i){ - #ł + #垊ĺ
ĺŚç $file=$ARGV[1]; $sdir=$ARGV[2]||$sdir; @@ -63,7 +63,7 @@ if($ARGV[0]=~/^\-r$/i || $ARGV[0]=~/\-\-(recover|restore)/i){ exit(0); } -#obNAbv +#ăăăŻă˘ăăĺŚç $sdir=$ARGV[0]||$sdir; $tdir=$ARGV[1]||$tdir; diff --git a/src/tool/cgi/addaccount.cgi b/src/tool/cgi/addaccount.cgi index 7d1788c..009f30f 100644 --- a/src/tool/cgi/addaccount.cgi +++ b/src/tool/cgi/addaccount.cgi @@ -2,35 +2,35 @@ #========================================================================= # addaccount.cgi ver.1.00 -# ladminđbvľ˝AAJEgđ쏡éCGIB -# ladmin ver.1.04ĹĚŽěđmFB +# ladminăăŠăăăăăă˘ăŤăŚăłăăä˝ćăăCGIă +# ladmin ver.1.04ă§ăŽĺä˝ă確čŞă # -# ** Ýčű@ ** +# ** č¨ĺŽćšćł ** # -# - şĚ$ladminĎÉladminÖĚpXđÝčˇéąĆB -# - UNIXnOSĹgpˇéęÍladminƤÉüsR[hđϡˇéąĆAÜ˝ -# t@CćŞsđperlĚłľ˘pXɡéąĆBá> $ which perl -# - T[o[vOâuEUÉćÁÄÍ $cgiuri ÉąĚt@CÖĚ -# ŽSČURIđZbgľČŻęÎČçȢęŕ éB -# - perlÉpXŞĘÁĢȢęÍ $perl đperlÖĚłľ˘pXɡéąĆB -# - źÍĘĚCGIĆŻśĹˇBiŔs âcgi-bintH_ČÇj +# - ä¸ăŽ$ladminĺ¤ć°ăŤladmină¸ăŽăăšăč¨ĺŽăăăă¨ă +# - UNIXçłťOSă§ä˝żç¨ăăĺ ´ĺăŻladmină¨ĺ
ąăŤćščĄăłăźăăĺ¤ćăăăă¨ăăžă +# ăăĄă¤ăŤĺ
é čĄăperlăŽćŁăăăăšăŤăăăă¨ăäž> $ which perl +# - ăľăźăăźăăă°ăŠă ăăăŠăŚăśăŤăăŁăŚăŻ $cgiuri ăŤăăŽăăĄă¤ăŤă¸ăŽ +# ĺŽĺ
¨ăŞURIăăťăăăăŞăăă°ăŞăăŞăĺ ´ĺăăăă +# - perlăŤăăšăéăŁăŚăăŞăĺ ´ĺ㯠$perl ăperlă¸ăŽćŁăăăăšăŤăăăă¨ă +# - äťăŻćŽéăŽCGIă¨ĺăă§ăăďźĺŽčĄć¨Šăcgi-binăăŠăŤăăŞăŠďź # -# ** ťĚź ** -# addaccount.cgi đuEUĹJĆTvHTMLiťĚÜÜgŚÜˇjŞ -# JŤÜˇBÜ˝AąĚcgiÍuEUŠççęéAccept-LanguageŞ -# jaĹnÜÁĢęÎbZ[WĚęđú{ęÉϡľÜˇB -# (IEČçC^[lbgIvVĚžęÝčĹęÔăÉú{ęđu) -# ťęČOĚęÍpęĚÜÜo;ܡB +# ** ăăŽäť ** +# addaccount.cgi ăăăŠăŚăśă§éăă¨ăľăłăăŤHTMLďźăăŽăžăžä˝żăăžăďźă +# éăăžăăăžăăăăŽcgiăŻăăŠăŚăśăăéăăăAccept-Languageă +# jaă§ĺ§ăžăŁăŚăăă°ăĄăăťăźă¸ăŽä¸é¨ăćĽćŹčŞăŤĺ¤ćăăžăă +# (IEăŞăă¤ăłăżăźăăăăŞăăˇă§ăłăŽč¨čŞč¨ĺŽă§ä¸çŞä¸ăŤćĽćŹčŞă罎ă) +# ăă䝼ĺ¤ăŽĺ ´ĺăŻčąčŞăŽăžăžĺşĺăăžăă #------------------------------------------------------------------------- -my($ladmin) = "../ladmin"; # ladminĚpX(¨ťçĎXŞKv) +my($ladmin) = "../ladmin"; # ladminăŽăăš(ăăăăĺ¤ć´ăĺż
čŚ) -my($cgiuri) = "./addaccount.cgi"; # ąĚt@CĚURI -my($perl) = "perl"; # perlĚR}hź +my($cgiuri) = "./addaccount.cgi"; # ăăŽăăĄă¤ăŤăŽURI +my($perl) = "perl"; # perlăŽăłăăłăĺ -#--------------------------- ÝčąąÜĹ -------------------------------- +#--------------------------- č¨ĺŽăăăžă§ -------------------------------- @@ -46,47 +46,47 @@ my(%langconv)=( 'logged on.*' => '', ); -# ----- ú{ęÂŤČçϡe[uđZbg ----- +# ----- ćĽćŹčŞç°ĺ˘ăŞăĺ¤ćăăźăăŤăăťăă ----- if($ENV{'HTTP_ACCEPT_LANGUAGE'}=~/^ja/){ my(%tmp)=( 'Account \[(.+)\] is successfully created.*' - => 'AJEg "$1" đ쏾ܾ˝.', + => 'ă˘ăŤăŚăłă "$1" ăä˝ćăăžăă.', 'Account \[(.+)\] creation failed\. same account exists.*' - => 'AJEg "$1" Íůɜݾܡ.', + => 'ă˘ăŤăŚăłă "$1" ăŻć˘ăŤĺĺ¨ăăžă.', 'Illeagal charactor found in UserID.*' - => 'IDĚÉsłČśŞ čܡ.', + => 'IDăŽä¸ăŤä¸ćŁăŞćĺăăăăžă.', 'Illeagal charactor found in Password.*' - => 'PasswordĚÉsłČśŞ čܡ.', + => 'PasswordăŽä¸ăŤä¸ćŁăŞćĺăăăăžă.', 'input UserID 4-24 bytes.' - => 'IDÍźp4`24śĹü;Ğł˘.', + => 'IDăŻĺč§4ă24ćĺă§ĺ
ĽĺăăŚăă ăă.', 'input Password 4-24 bytes.' - => 'PasswordÍźp4`24śĹü;Ğł˘.', + => 'PasswordăŻĺč§4ă24ćĺă§ĺ
ĽĺăăŚăă ăă.', 'Illeagal gender.*' - => 'ŤĘިŠľ˘Ĺˇ.', + => 'ć§ĺĽăăăăăă§ă.', 'Cant connect to login server.*' - => 'OCT[o[Éڹōܚń.', + => 'ăă°ă¤ăłăľăźăăźăŤćĽçśă§ăăžăă.', 'login error.*' - => 'OCT[o[ÖĚÇŇ ŔOCɸsľÜľ˝', + => 'ăă°ă¤ăłăľăźăăźă¸ăŽçŽĄçč
樊éăă°ă¤ăłăŤĺ¤ąćăăžăă', "Can't execute ladmin.*" - => 'ladminĚŔsɸsľÜľ˝', + => 'ladminăŽĺŽčĄăŤĺ¤ąćăăžăă', 'UserID "(.+)" is already used.*' - => 'ID "$1" ÍůÉgpłęĢܡ.', + => 'ID "$1" ăŻć˘ăŤä˝żç¨ăăăŚăăžă.', 'You can use UserID \"(.+)\".*' - => 'ID "$1" ÍgpÂ\š.', + => 'ID "$1" ăŻä˝żç¨ĺŻč˝ă§ă.', - 'account making' =>'AJEgěŹ', - '\>UserID' =>'>hc', - '\>Password' =>'>pX[h', - '\>Gender' =>'>ŤĘ', - '\>Male' =>'>jŤ', - '\>Female' =>'>Ť', - '\"Make Account\"' =>'"AJEgěŹ"', - '\"Check UserID\"' =>'"IDĚ`FbN"', + 'account making' =>'ă˘ăŤăŚăłăä˝ć', + '\>UserID' =>'>', + '\>Password' =>'>ăăšăŻăźă', + '\>Gender' =>'>ć§ĺĽ', + '\>Male' =>'>çˇć§', + '\>Female' =>'>弳ć§', + '\"Make Account\"' =>'"ă˘ăŤăŚăłăä˝ć"', + '\"Check UserID\"' =>'"IDăŽăă§ăăŻ"', ); map { $langconv{$_}=$tmp{$_}; } keys (%tmp); } -# ----- ÇÁ ----- +# ----- čż˝ĺ ----- if( $cgi->param("addaccount") ){ my($userid)= $cgi->param("userid"); my($passwd)= $cgi->param("passwd"); @@ -112,7 +112,7 @@ if( $cgi->param("addaccount") ){ close PIPE; HttpMsg(@msg); } -# ----- śÝ`FbN ----- +# ----- ĺĺ¨ăă§ă㯠----- elsif( $cgi->param("check") ){ my($userid)= $cgi->param("userid"); if(length($userid)<4 || length($userid)>24){ @@ -133,7 +133,7 @@ elsif( $cgi->param("check") ){ HttpError("ladmin error ?\n---output---\n",@msg); } -# ----- tH[ ----- +# ----- ăăŠăźă ----- else{ print LangConv( <<"EOM" ); Content-type: text/html\n diff --git a/src/tool/convert.c b/src/tool/convert.c index 154b154..8436ebb 100644 --- a/src/tool/convert.c +++ b/src/tool/convert.c @@ -164,7 +164,7 @@ int mmo_char_fromstr (char *str, struct mmo_charstatus *p) if (set != 41) return 0; if (str[next] == '\n' || str[next] == '\r') - return 1; // VKf[^ + return 1; // ć°čŚăăźăż next++; for (i = 0; str[next] && str[next] != '\t'; i++) { @@ -245,7 +245,7 @@ int mmo_char_fromstr (char *str, struct mmo_charstatus *p) for (i = 0; str[next] && str[next] != '\t' && str[next] != '\n' && str[next] != '\r'; i++) - { //global_regŔČOĚathena.txtݡ̽ßę'\n'`FbN + { //global_regĺŽčŁ
䝼ĺăŽathena.txtäşćăŽăăä¸ĺż'\n'ăă§ă㯠set = sscanf (str + next, "%[^,],%d%n", p->global_reg[i].str, &p->global_reg[i].value, &len); if (set != 2) diff --git a/src/txt-converter/common/mmo.h b/src/txt-converter/common/mmo.h index b9939fd..0295f6b 100644 --- a/src/txt-converter/common/mmo.h +++ b/src/txt-converter/common/mmo.h @@ -6,10 +6,10 @@ #include <time.h> #ifdef CYGWIN -// txtâlogČÇĚŤoˇt@CĚüsR[h -#define RETCODE "\r\n" // (CR/LFFWindowsn) +// txtălogăŞăŠăŽć¸ăĺşăăăĄă¤ăŤăŽćščĄăłăźă +#define RETCODE "\r\n" // (CR/LFďźWindowsçłť) #else -#define RETCODE "\n" // (LFFUnixnj +#define RETCODE "\n" // (LFďźUnixçłťďź #endif #define FIFOSIZE_SERVERLINK 128*1024 @@ -274,13 +274,13 @@ struct square enum { - GBI_EXP = 1, // MhĚEXP - GBI_GUILDLV = 2, // MhĚLv - GBI_SKILLPOINT = 3, // MhĚXL|Cg - GBI_SKILLLV = 4, // MhXLLv + GBI_EXP = 1, // ăŽăŤăăŽEXP + GBI_GUILDLV = 2, // ăŽăŤăăŽLv + GBI_SKILLPOINT = 3, // ăŽăŤăăŽăšăăŤăă¤ăłă + GBI_SKILLLV = 4, // ăŽăŤăăšăăŤLv - GMI_POSITION = 0, // o[ĚđEĎX - GMI_EXP = 1, // o[ĚEXP + GMI_POSITION = 0, // ăĄăłăăźăŽĺ˝ščˇĺ¤ć´ + GMI_EXP = 1, // ăĄăłăăźăŽEXP }; diff --git a/src/txt-converter/login/login-converter.c b/src/txt-converter/login/login-converter.c index 2836866..477a0cc 100644 --- a/src/txt-converter/login/login-converter.c +++ b/src/txt-converter/login/login-converter.c @@ -204,7 +204,7 @@ int mmo_auth_init (void) return 0; } -// AJEgf??x?XĚŤÝ +// ă˘ăŤăŚăłăă??ă?ăšăŽć¸ăčžźăż void nowork (void) { //null |