Freelancer fejlesztő: Ronan C. P. Lana

A Nexon(Duh!), az eredeti MapleSolaxia staff és más munkatársak is elismerésben részesülnek, mivel csak néhány változtatást/patchet alkalmaztam a játékon, amelyek közül néhány eltért az eredeti v83 patch tartalmától.

Az itt bemutatott kód terjeszthetőségét és felhasználását illetően: ahogy korábban is volt, ez a MapleStory szerver nyílt forráskódú. Ez alatt azt értjük, hogy bárki szabadon telepítheti, használhatja, módosíthatja és terjesztheti a tartalmát, mindaddig, amíg semmiféle kereskedelmi kereskedelemmel nem jár, és a kódokon belül megmarad az eredeti alkotókra való hivatkozás.

Ez egy NetBeans 8.0.2 projekt, amelyet JDK/JRE 7 alatt KELL építeni és futtatni ahhoz, hogy megfelelően fusson. Ez azt jelenti, hogy a projektet könnyebb telepíteni a NetBeans IDE-n belül a szerver projekt mappa megnyitásával. A telepítés után építsd fel ezt a projektet a gépeden, és futtasd a szervert a “launch.bat” alkalmazással.

Ezzel a projekttel számos, akár az eredeti WZ fájlok, akár a szerver forrásai által generált játékmenetbeli probléma részben vagy teljesen megoldódott. A mellékelt szerkesztett WZ-ek és a szerveroldali wz.xml fájlok használatának figyelembevétele a legnagyobb jelentőséggel kell bírnia, amikor a privát szerver ezen példányával foglalkozik, annak érdekében, hogy teljes potenciálját érzékelje. Az én véleményem, bár! A “README_wzchanges.txt”-ben találsz további információkat arról, hogy mi változott a Nexon v83 WZ fájljaihoz képest.

A projekt fő célja, hogy a lehető legjobban megpróbálja újraalkotni azt, ami egykor az eredeti MapleStory v83 volt, miközben hozzáad néhány ízt, ami fűszerezi a játékmenetet. Más szavakkal, a cél, hogy a legjobbat hozzuk ki az akkori MapleStoryból.

Letöltendő elemek

Szerver fájlok: https://github.com/ronancpl/MapleSolaxiaV2

Kliens fájlok & általános eszközök: https://drive.google.com/drive/folders/0BzDsHSr-0V4MYVJ0TWIxd05hYUk

Adomány

Ha tetszett, amit a projektben láttál, adományozz egy kicsit, mint segítő kéz a Maple fejlesztéséhez való hozzájárulásomért: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=3K8KVTWRLFBQ4

A környezet előkészítése

Az alábbi link megtanít arra, hogyan kell telepíteni egy MapleStory v83 privát szervert, azonban Eltérő, hogy mit használnak itt: http://forum.ragezone.com/f428/maplestory-private-server-v83-741739/

Ezt a linket CSAK ORIENTÁCIÓKÉNT használd, hogy hol kezdenek itt a dolgok félreérthetővé válni.

Először is telepítsd a szerver futtatásához szükséges összes általános eszközt:

  • WampServer2.0i.exe -> a szerver címzettje.
  • hamachi.msi -> a szerver/kliens kommunikáció alagútvonalának létrehozására szolgál.
  • mysql-query-browser-1.1.20-win.msi -> MySQL szerver komponens, a szerver DB-jét fogja tárolni.

Most telepítsük a Java 7 Development Kit-et:

  • jdk-7u79-windows-x64.exe
  • netbeans-8.0.2-javase-windows.exe -> Ez egy NetBeans projekt, más IDE használata saját felelősségre.

Amelyik Java mappában található “jce_policy-7/UnlimitedJCEPolicy” alatt található JAR fájlokat írja felül, amikor erre felszólítják:

  • C:\Program Files\Java\jre7\lib
  • C:\Program Files\Java\jre7\lib\ext
  • C:\Program Files\Java\jre7\lib\security
  • C:\Program Files\Java\jdk1.7.0_01\lib
  • C:\Program Files\Java\jdk1.7.0_01\jre\lib
  • C:\Program Files\Java\jdk1.7.0_01\jre\lib\ext
  • C:\Program Files\Java\jdk1.7.0_01\jre\lib\security

Most, hogy az eszközök telepítése megtörtént, teszteljük, hogy működnek-e.

A WampServer esetében:Miután befejeztük a telepítést, futtassuk le, és a jobb alsó sarokban megjelenik a Wamp ikon.Kattints rá a bal gombbal és kattints a ‘Put Online’-ra.Narancssárga ICON esetén a “httpd.conf”-ban változtasd meg a 80-as portot egy másikra, mivel ez ütközik a Windows egyik alapértelmezett portjával.Ezután kattints rá ismét a bal gombbal és kattints a ‘Start All Services’-re.A Wamp ikonjának teljesen zöldnek kell lennie (ha narancssárga vagy piros, akkor gond van).

Hamachi esetében:Próbáld meg megnyitni. Ilyen egyszerű.a Hamachi azonban opcionális. Nem kell telepítened a Hamachit, ha csak a saját gépeden akarod használni a szervert. Ha azonban szeretnéd, hogy más játékosok is hozzáférjenek a szerveredhez, fontold meg alternatívaként a port-továbbítási módszerek használatát.

A SZERVER telepítése

A “MapleSolaxia” mappát állítsd be egy általad kívánt helyre. Ajánlott a “C:\Nexon\MapleSolaxia” használata.

Az SQL beállítása: nyissa meg a MySQL Query Browser-t, és az indításkor határozza meg ezeket a paramétereket, majd kattintson az OK gombra:Server Host: localhostPort: 3306Username: root

Most ezt óvatosan kell megtenni:

  1. File -> Open Script… -> Keresse meg a “C:\Nexon\MapleSolaxia\sql” -> db_database.sql, és hajtsa végre.
  2. File -> Open Script… -> Keresse meg a “C:\Nexon\MapleSolaxia\sql” -> db_drops.sql, és futtasd le.

Most ez OPCIONÁLIS, nem kell lefuttatnod, ha nem akarod, mivel egyszerűen csak megváltoztat néhány NPC boltot, hogy néhány új, az eredeti MapleStoryban nem létező árut állítson be eladásra:

  1. File -> Open Script… -> Keressük meg a “C:\Nexon\MapleSolaxia\sql” -> db_shopupdate.sql-t, és hajtsuk végre.

Az SQL-ek végrehajtásának végén telepítenünk kell egy “maplesolaxia” nevű adatbázis-sémát. REGISZTRÁLD AZ ELSŐ FELVÉTELEDET a játékban való használathoz, létrehozva manuálisan egy bejegyzést az “accounts” táblában ebben az adatbázisban egy login és egy jelszóval.

Konfiguráld a “configuration.ini” fájlban a MapleStory szerverhez használni kívánt IP-t, vagy állítsd be “localhost”-nak, ha csak a saját gépeden akarod futtatni. Alternatívaként használhatod a Hamachi által megadott IP-t, amit egy Hamachi hálózaton használhatsz, vagy használhatsz egy nem Hamachi port-továbbítási módszert. Itt egyiket sem fogjuk megközelíteni.

Most nyissa meg a NetBeans-t, és válassza a Projekt megnyitása… lehetőséget. Ezután válaszd ki a “MapleSolaxia” mappát, aminek már a NetBeans által felismerhető projektnek kell lennie. Ha nem, akkor problémád van.

A projektben néhány kódhibával találkozhatsz. Ezek azért történnek, mert még nem állítottad be a projekt “magjait”. A projekthierarchiában kattintson a jobb gombbal a projektre, és válassza a “Projektproblémák megoldása” lehetőséget. Keresse meg a “cores” mappát a projekt gyökérkönyvtárán belül, és manuálisan állítsa be a hiányzó fájlokat az ott található fájlokkal.

Végül válassza a “Clean and Build project” lehetőséget a MapleStory szerver JAR fájljának elkészítéséhez. Ha ez megtörtént, győződjön meg róla, hogy mind a WampServer, mind a Hamachi be van kapcsolva és működik, majd hajtsa végre a “launch.bat” parancsot a projekt gyökerén. Ha ettől a művelettől nem keletkezett hiba, akkor a MapleStory szervered már online van.

A CLIENT telepítése

A kliens beállítása meglehetősen egyszerű:

  1. A “ManagerMsv83.exe” telepítse a MapleStory-t a kívánt mappába (pl. “C:\Nexon\MapleStory”), és kövesse az utasításaikat.
  2. Amikor kész, törölje ezeket a fájlokat: “
  3. Vonja ki a kliens mappába a “localhost.exe” fájlt a Localhostv83-ból.
  4. Visszaírja az eredeti WZ fájlokat a Google Drive-on található “client_wz” mappából származó fájlokkal.

Ha nem a “localhost”-ot használja cél-IP-ként a szerver konfigurációs fájljában, akkor a “localhost.exe”-t HEX-EDIT-elni kell, hogy lekérje az IP-jét. Nyomozza le az összes IP-helyet a “Text String” “127.0.0.1” keresésével, és alkalmazza a változtatásokat, ahol csak illik.

A hex-szerkesztéshez telepítse a Neo Hex Editor-t a “free-hex-editor-neo.exe”-ről, és kövesse az utasításokat. Ha kész, nyissa meg a “localhost.exe” fájlt szerkesztésre, és írja felül az IP értékeket a 3 cím alatt. Mentse a módosításokat, és lépjen ki a szerkesztőből.

Nyissa meg a “localhost.exe” klienst. Ha semmiképpen nem nyílt meg a program, és a que szervernaplót ellenőrizve a pinged meghallgatásra került, és Windows 8 vagy 10-et használsz, akkor valószínűleg valamilyen kompatibilitási probléma lehet. Csomagold ki a “lolwut.exe”-t a “lolwut-v0.01.rar”-ból és helyezd a MapleStory kliens mappába (“C:\Nexon\MapleStory”). A “localhost.exe” tulajdonságainak beállításai a következők szerint legyenek:

  • Futtatás kompatibilitási módban:
  • Ellenőrzött csökkentett színmód;
  • 640 x 480 felbontás;
  • Elenőrzött megjelenítés letiltása magas DPI beállításoknál;
  • Futtatás rendszergazdaként;
  • A “lolwut.exe”, használd Fraysa módszerét.

Fontos: ha a kliens nem hajlandó csatlakozni a játékszerverhez, az tűzfalproblémák miatt lehet. Menjen a fájl végére, hogy folytassa a kapcsolat engedélyezését a számítógép tűzfalával. Alternatívaként kikapcsolhatjuk a tűzfalat, és megpróbálhatjuk újra megnyitni a klienst.

Fontos megjegyzés a CLIENT SZERZŐDÉSÉRŐL

NEM HASZNÁLJUK a szerver XML-jét a kliens WZ-be való visszaimportáláshoz, ez utána valamilyen hibát fog generálni.

  • Használd helyette a HaRepacker 4.2.4, kódolás “GMS (régi)”.
  • Nyisd meg a kívánt WZ-t szerkesztésre, és a felhasználói felületet használva végezd el a kívánt módosításokat.
  • Mentsd el a módosított WZ-t, felülírva az eredeti tartalmat a kliens mappában.
  • Végül, RE-EXPORTÁLJ (“Private Server….” exportálási opció) a módosított XML-eket a kiszolgáló WZ.XML fájljaiba, felülírva a régi tartalmat.

Ezek a lépések FONTOSak a kiszolgáló és az ügyfélmodulok közötti szinkronizáció fenntartásához.

A kliens WZ-szerkesztés példájaként tekintsük meg az általam fejlesztett MobBookUpdate projektet, amely a játékban lévő mobok összes bejelentett drop-adatának frissítésére szolgál az adatbázisban lévő aktuális drop-adatok alapján:

  • Nyissuk meg a MobBookUpdate projektet a NetBeansban, amely a “C:\Nexon\MapleSolaxia\MobBookUpdate” címen található, és építsük be.
  • A “lib” almappába másolja be a “MonsterBook.img.xml” fájlt. Ez az eredeti WZ v83-ból származik.
  • Elhelyezd a “dist” almappába.
  • A “dist”-ben nyisd meg a parancssort az ott lévő alt+jobb klikk segítségével.
  • Futtasd a “java -jar MobBookUpdate.jar” parancsot. Ez létrehoz egy “MonsterBook_updated.img.xml” fájlt.
  • Végül írja felül a “MonsterBook.img.xml” fájlt a “C:\Nexon\MapleSolaxia\wz\String.wz” fájlt ezzel a fájllal, és nevezze át újra “MonsterBook.img.xml”-re.

Ezzel a ponttal a kiszolgálóoldali Monster Book frissült az adatbázis ejtési adatainak aktuális állapotával. Ezután nyissa meg a HaRepacker 4.2.2-t és töltse be a “String.wz” fájlt a “C:\Nexon\MapleStory” könyvtárból. Dobja el a “MonsterBook.img” csomópontot azáltal, hogy eltávolítja a hierarchiafából, majd (NORMÁLISAN TÖRTÉNNIE KELL!) importálja a szerver “MonsterBook.img.xml”-jét.

Figyeljen arra, hogy ez teljesen veszélyes, ha óvatlanul végzi. Miután a MonsterBook.img nem tartalmaz ügyfélspecifikus adatokat a csomópontok tartalmában, az XML importálása egyáltalán nem okoz kárt. Azonban próbáld meg nem eltávolítani/reimportálni a csomópontokat a WZ fájlokból, mert ez adatvesztést okozhat. Használd inkább a HaRepacker felhasználói felületét a módosítások elvégzéséhez.

Mentsd el a módosításokat és írd felül a régebbi WZ-t a MapleStory kliens mappában.

Portforwarding the SERVER

A portforward használatához szükséged lesz jogosultságra a LAN router megváltoztatásához. Lépjen be a routerébe az internetböngésző segítségével. Az URL-címek a gyártótól függően változnak. A felfedezéshez nyissa meg a parancssort, írja be az “ipconfig” parancsot, és keresse meg az “alapértelmezett átjáró” mezőt. Az ott feltüntetett IP cím az útválasztó eléréséhez szükséges URL. Keresse meg a gépének adott IP-t is (más néven “IPv4 cím” mező), ez lesz a kiszolgáló.

Az alapértelmezett bejelentkezés/jelszó is változik, ezért használja referenciaként a http://www.routerpasswords.com/ linket. Általában a bejelentkezés “admin”-ként és a jelszó “password”-ként jól teljesíti a feladatot.

Most bejelentkeztél a router rendszerébe, keress bármit, ami a portforwardinggal kapcsolatos. Amennyiben a rendszer a portforwarding és a portriggering között kérdez, válasszuk az elsőt, ezt fogjuk használni.

Most a megfelelő portok engedélyezése szükséges az internethez. A MapleSolaxia esetében alapvetően a 7575-7575 + (csatornák száma) és a 8484-es portot kell megnyitni. Hozzon létre egy új egyéni szolgáltatást, amely engedélyezi ezt a porttartományt a szerver csatornájához, és válassza a TCP/UDP protokollok használatát. Végül hozzon létre most egy egyéni szolgáltatást a 8484-es port használatához.

Az opcionálisan, ha weboldalt szeretne hosztolni, a 80-as portot (a HTTP portot) is továbbítsa.

Ez még nincs kész, néha a tűzfalak blokkolják a LAN és az internet közötti kapcsolatokat. Ennek kiküszöbölésére néhány szabályt kell létrehozni a tűzfal számára, hogy engedélyezze ezeket a kapcsolatokat. Keresse meg a számítógépén a tűzfalakkal kapcsolatos speciális beállításokat, és ha ez meg van nyitva, hozzon létre két szabályt (egy kimenő és egy bejövő).

Ezeknek a szabályoknak az “egy alkalmazást”, a “kapcsolatok engedélyezését” és a MapleStory kliensét (aka localhost) kell célozniuk.

Mindezen lépések után a porttovábbítási folyamatnak már készen kell lennie.

Vélemény, hozzászólás?

Az e-mail-címet nem tesszük közzé.