Freelancer-kehittäjä: Ronan C. P. Lana

Krediitit on annettava myös Nexonille(Duh!), alkuperäiselle MapleSolaxian henkilökunnalle ja muille yhteistyökumppaneille, sillä itse tein vain joitain muutoksia/korjauksia peliin, joista osa poikkesi alkuperäisen v83 patchin sisällöstä.

Tässä esitellyn koodin jakelukelpoisuudesta ja käytöstä: kuten aiemminkin, tämä MapleStory-palvelin on avoimen lähdekoodin palvelin. Tällä tarkoitetaan sitä, että kuka tahansa voi vapaasti asentaa, käyttää, muokata ja levittää sisältöä, kunhan siihen ei liity minkäänlaista kaupallista kaupankäyntiä ja alkuperäisten tekijöiden maininta säilyy koodissa.

Tämä on NetBeans 8.0.2 -projekti, joka PITÄÄ rakentaa ja ajaa JDK/JRE 7:llä, jotta se toimisi oikein. Tämä tarkoittaa, että projekti on helpompi asentaa avaamalla palvelinprojektikansio NetBeansin IDE:n sisällä. Kun olet asentanut tämän projektin, rakenna se koneellesi ja suorita palvelin käyttämällä ”launch.bat”-sovellusta.

Tässä projektissa on ratkaistu osittain tai kokonaan monet pelattavuuteen liittyvät ongelmat, jotka ovat syntyneet joko alkuperäisistä WZ-tiedostoista tai palvelimen lähteistä. Mukana toimitettujen muokattujen WZ:ien ja palvelinpuolen wz.xml-tiedostojen käytön huomioon ottamisen tulisi olla erittäin tärkeää, kun käsitellään tätä yksityisen palvelimen instanssia, jotta se voidaan hahmottaa täydellä potentiaalillaan. Minun mielipiteeni kuitenkin! Katso ”README_wzchanges.txt” saadaksesi lisätietoja siitä, mitä on muutettu Nexonin v83:n WZ-tiedostoista.

Tämän projektin päätavoitteena on yrittää mahdollisimman hyvin luoda uudelleen se, mikä kerran oli alkuperäinen MapleStory v83, ja samalla lisätä joitain makuja, jotka maustavat pelattavuutta. Toisin sanoen, pyrkiä saamaan parasta tuon aikakauden MapleStorysta.

Lataa kohteita

Server-tiedostot: https://github.com/ronancpl/MapleSolaxiaV2

Client-tiedostot & yleiset työkalut: https://drive.google.com/drive/folders/0BzDsHSr-0V4MYVJ0TWIxd05hYUk

Lahjoitus

Jos pidit siitä, mitä olet nähnyt projektissa, lahjoittaisit jotain pientä apukädeksi panokselleni Maplen kehitykseen.Paypal: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=3K8KVTWRLFBQ4

Ympäristön valmistelu

Oheinen linkki opettaa miten MapleStory v83 yksityinen palvelin asennetaan, kuitenkin ITSE VAIHTOEHTOEHTOA mitä tässä käytetään: http://forum.ragezone.com/f428/maplestory-private-server-v83-741739/

Käyttäkää tuota linkkiä AINOASTAAN ORIENTOINTINA siitä, missä kohtaa tässä asiat alkavat muuttua epäselviksi.

Asenna ensin kaikki yleiset työkalut, joita tarvitaan palvelimen pyörittämiseen:

  • WampServer2.0i.exe -> palvelimen vastaanottaja.
  • hamachi.msi -> käytetään palvelimen ja asiakkaan välisen tiedonsiirron tunnelointireitin luomiseen.
  • mysql-query-browser-1.1.20-win.msi -> MySQL-palvelinkomponentti, varastoi palvelimen DB:n.

Asenna nyt Java 7 Development Kit:

  • jdk-7u79-windows-x64.exe
  • netbeans-8.0.2-javase-windows.exe -> Kyseessä on NetBeans-projekti, käytä muuta IDE:tä omalla vastuulla.

Kirjoita aina pyydettäessä JAR-tiedostot kohdassa ”jce_policy-7/UnlimitedJCEPolicy” näissä Java-kansioissa:

  • 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

Nyt kun työkalut on asennettu, testaa, että ne toimivat.

WampServerin osalta: Kun olet asentanut sen, suorita se ja näet Wamp-kuvakkeen oikeassa alakulmassa.Napsauta sitä vasemmalla ja napsauta ’Put Online’.Jos kyseessä on ORANSSI KUVAKE, vaihda portti 80 kohdassa ”httpd.conf” toiseen, koska se on ristiriidassa Windowsin oletusportin kanssa.Napsauta sitten sitä uudelleen vasemmalla ja napsauta ’Start All Services’.Wamp-kuvakkeen on näytettävä täysin vihreältä (jos se on oranssi tai punainen, sinulla on ongelma).

Hamachia varten:Kokeile avata se. Se on niin yksinkertaista.hamachi on kuitenkin valinnainen. Sinun ei tarvitse asentaa Hamachia, jos haluat tehdä palvelimen vain omalle koneellesi. Jos kuitenkin haluat antaa muille pelaajille pääsyn palvelimeesi, harkitse vaihtoehtoisesti porttisuuntamenetelmien käyttämistä.

PALVELIMEN ASENTAMINEN

Aseta ”MapleSolaxia”-kansio haluamaasi paikkaan. On suositeltavaa käyttää ”C:\Nexon\MapleSolaxia”.

SQL:n asettaminen: Avaa MySQL Query Browser ja määritä nämä parametrit käynnistyksen yhteydessä ja napsauta OK:Server Host: localhostPort: 3306Username: root

Nyt se on tehtävä HUOLELLISESTI:

  1. Tiedosto -> Avaa skripti… -> Etsi ”C:\Nexon\MapleSolaxia\sql” -> db_database.sql ja suorita se.
  2. File -> Open Script… -> Etsi ”C:\Nexon\MapleSolaxia\sql” -> db_drops.sql, ja suorita se.

Nyt se on OPTIIVINEN, sinun ei tarvitse suorittaa sitä, jos et halua, sillä se vain muuttaa joitakin NPC-kauppoja asettamaan myyntiin joitain uusia tavaroita, joita ei ole alkuperäisessä MapleStoryssa:

  1. Tiedosto -> Avaa Script… -> Etsi ”C:\Nexon\MapleSolaxia\sql” -> db_shopupdate.sql ja suorita se.

Tämän SQL:n suorittamisen päätteeksi sinun pitäisi olla asentanut tietokantaskeeman nimeltä ”maplesolaxia”. REKISTERÖI ENSIMMÄINEN TILI pelissä käytettäväksi luomalla manuaalisesti merkintä taulukkoon ”accounts” kyseisessä tietokannassa käyttäjätunnuksella ja salasanalla.

Konfiguroi IP-osoite, jota haluat käyttää MapleStory-palvelimellesi ”configuration.ini”-tiedostossa, tai aseta sen arvoksi ”localhost”, jos haluat käyttää palvelinta vain omalla koneellasi. Vaihtoehtoisesti voit käyttää Hamachin antamaa IP-osoitetta, jota voit käyttää Hamachi-verkossa, tai voit käyttää muuta kuin Hamachi-menetelmää porttien välittämiseen. Kumpaakaan ei lähestytä tässä.

Avaa nyt NetBeans ja valitse Avaa projekti… Valitse sitten ”MapleSolaxia”-kansio, jonka pitäisi olla jo NetBeansin tunnistama projekti. Jos se ei tunnista, sinulla on ongelma.

Projektin sisällä saatat törmätä joihinkin koodivirheisiin. Nämä tapahtuvat, koska et ole vielä asettanut projektin ”ytimiä”. Napsauta projektihierarkiassa hiiren kakkospainikkeella projektia ja valitse ”Resolve Project Problems”. Etsi ”cores”-kansio tämän projektin juurihakemiston sisältä ja määritä puuttuvat tiedostot manuaalisesti siellä olevilla tiedostoilla.

Viimeiseksi, valitse ”Clean and Build project” rakentaaksesi JAR-tiedoston MapleStory-palvelinta varten. Kun tämä on tehty, varmista, että sekä WampServer että Hamachi ovat päällä ja toimivat, ja suorita sitten ”launch.bat” projektin juuressa. Jos tästä toimenpiteestä ei tullut virheitä, MapleStory-palvelimesi on nyt verkossa.

CLIENTin asentaminen

Clientin asentaminen on melko suoraviivaista:

  1. From ”ManagerMsv83.exe” asenna MapleStory haluamaasi kansioon (esim. ”C:\Nexon\MapleStory”) ja seuraa heidän ohjeitaan.
  2. Kun olet valmis, pyyhi nämä tiedostot: ”
  3. Purkaa client-kansioon ”localhost.exe” Localhostv83:sta.
  4. Kirjoita alkuperäiset WZ-tiedostot Google Driven ”client_wz”-kansiosta löytyvillä tiedostoilla.

Jos et käytä ”localhost” -kohde-IP:tä palvelimen konfigurointitiedostossa, sinun on HEX-EDITOITTAVA ”localhost.exe” noutaaksesi IP:si. Jäljitä kaikki IP-paikat etsimällä ”Tekstijono” ”127.0.0.1”, ja soveltaen muutoksia mihin se sopii.

Hex-editointia varten asenna Neo Hex Editor osoitteesta ”free-hex-editor-neo.exe” ja noudata niiden ohjeita. Kun olet valmis, avaa ”localhost.exe” muokkausta varten ja korvaa IP-arvot 3 osoitteen alle. Tallenna muutokset ja poistu editorista.

Avaa ”localhost.exe”-asiakasohjelma. Jos millään tavalla ohjelma ei auennut, ja tarkistamalla que-palvelimen loki pingiäsi on kuunneltu ja käytät Windows 8:aa tai 10:tä, kyse voi todennäköisesti olla jostain yhteensopivuusongelmasta. Pura ”lolwut.exe” tiedostosta ”lolwut-v0.01.rar” ja aseta se MapleStory-asiakaskansioon (”C:\Nexon\MapleStory”). ”localhost.exe”-ominaisuutesi asetusten on oltava seuraavat:

  • Suorita yhteensopivuustilassa: Windows 7;
  • Ei ole valittuna pienennetty väritila;
  • 640 x 480 resoluutio;
  • Ei ole valittuna näytön poistaminen käytöstä korkeilla DPI-asetuksilla;
  • Ajetaan ylläpitäjänä;
  • Avaamalla ”lolwut.exe”, käytä Fraysan menetelmää.

Tärkeää: jos asiakkaalta evätään yhteys pelipalvelimeen, se voi johtua palomuuriongelmista. Suuntaa tämän tiedoston loppuun jatkaaksesi yhteyden ottamista käyttöön tietokoneen palomuurilla. Vaihtoehtoisesti voi ottaa palomuurin pois käytöstä ja yrittää avata clientin uudelleen.

Tärkeä huomautus CLIENTIN MUOKKAUKSESTA

ÄLÄ KÄYTÄ palvelimen XML:iä uudelleen tuodaksesi ne clientin WZ:iin, se TULEE synnyttämään jälkikäteen jonkinlaisia bugeja.

  • Käyttäkää sen sijaan HaRepacker 4.2.4, salaus ”GMS (vanha)”.
  • Avatkaa haluttu WZ muokattavaksi ja tehkää käyttöliittymän avulla halutut muutokset.
  • Tallentakaa muutettu WZ korvaten alkuperäisen sisällön asiakaskansiossa.
  • Viimeiseksi RE-EXPORT (”Private Server…” vientivaihtoehto) muutetut XML-tiedostot palvelimen WZ.XML-tiedostoihin, jolloin vanha sisältö korvataan.

Nämä vaiheet ovat TÄRKEITÄ, jotta synkronointi palvelin- ja asiakasmoduulien välillä säilyy.

Esimerkkinä asiakkaan WZ-muokkauksesta tarkastellaan kehittämääni MobBookUpdate-projektia, jolla päivitetään kaikki pelin mobien raportoidut pudotustiedot tietokannan tämänhetkisten pudotustietojen perusteella:

  • Avaa MobBookUpdate-projekti NetBeansissa, joka sijaitsee osoitteessa ”C:\”\”Nexon\”\MapleSolaxia\”\”MobBookUpdate”, ja rakenna se.
  • Kopioi alikansioon ”lib” tiedosto ”MonsterBook.img.xml”. Tämä on alkuperäisestä WZ v83:sta.
  • Liitä se alikansioon ”dist”.
  • Sisällä ”dist”, avaa komentorivi klikkaamalla siellä alt+oikealla.
  • Suorita ”java -jar MobBookUpdate.jar”. Se luo tiedoston ”MonsterBook_updated.img.xml”.
  • Kirjoita lopuksi ”MonsterBook.img.xml” tiedostoon ”C:\Nexon\MapleSolaxia\wz\String.wz” tällä tiedostolla ja nimeä se uudelleen muotoon ”MonsterBook.img.xml”.

Tässä vaiheessa palvelinpuolen Monster Book on päivitetty tietokannan pudotustietojen nykytilalla. Avaa sitten HaRepacker 4.2.2 ja lataa ”String.wz” tiedostosta ”C:\Nexon\MapleStory”. Pudota ”MonsterBook.img”-solmu poistamalla se hierarkiapuusta, ja tuo sen jälkeen (MUUTTUEN KUIN MITEN NORMAALISESTI PITÄISI TEHDÄ!) palvelimen ”MonsterBook.img.xml”.

Huomaa, että tämä on ehdottoman vaarallista, jos se tehdään varomattomasti. Kun MonsterBook.img ei sisällä asiakaskohtaisia tietoja solmujensa sisällössä, XML:n tuonti ei aiheuta minkäänlaista haittaa. Yritä kuitenkin olla poistamatta/uudelleentuontamatta solmuja WZ-tiedostoista, sillä se voi aiheuttaa tietojen menetyksiä. Käytä sen sijaan HaRepackerin käyttöliittymää muutosten tekemiseen.

Tallenna muutokset ja korvaa vanhempi WZ MapleStory-asiakkaan kansiossa.

PALVELIMEN porttiohjaus

Käyttääksesi porttiohjausta tarvitset oikeudet muuttaa asioita LAN-reitittimessä. Pääset reitittimeen Internet-selaimella. URL-osoitteet vaihtelevat valmistajan mukaan. Löydät sen avaamalla komentorivin ja kirjoittamalla ”ipconfig” ja etsimällä ”default gateway” -kentän. Siellä näkyvä IP-osoite on reitittimeen pääsemiseksi tarvittava URL-osoite. Etsi myös koneellesi annettu IP-osoite (eli ”IPv4-osoite”-kenttä), joka on palvelimen IP-osoite.

Myös oletuskirjautuminen/salasana vaihtelee, joten käytä linkkiä http://www.routerpasswords.com/ viitteenä. Yleensä kirjautuminen nimellä ”admin” ja salasana nimellä ”password” hoitaa tehtävän hyvin.

Nyt olet kirjautunut reitittimen järjestelmään, etsi jotain portforwardingiin liittyvää. Jos järjestelmä kysyy portforwardingin ja portriggeringin välillä, valitse ensimmäinen, sitä tulemme käyttämään.

Nyt on otettava käyttöön oikeat portit internetiä varten. MapleSolaxia varten on periaatteessa avattava portit 7575-7575 + (kanavien määrä) ja portti 8484. Luo uusi mukautettu palvelu, joka mahdollistaa kyseisen porttialueen palvelimen kanavalle ja valitsee TCP/UDP-protokollien käytön. Lopuksi luo nyt mukautettu palvelu portin 8484 käyttämistä varten.

Vaihtoehtoisesti, jos haluat isännöidä verkkosivuja, port forwardaa myös portti 80 (HTTP-portti).

Ei ole vielä valmista, joskus palomuurit estävät yhteydet lähiverkon ja internetin välillä. Tämän voittamiseksi on luotava palomuuriin joitakin sääntöjä, jotka sallivat nämä yhteydet. Etsi tietokoneeltasi palomuurin lisäasetukset ja, kun se on auki, luo kaksi sääntöä (yksi lähtevä ja yksi saapuva).

Tämän säännön tulee kohdistua ”yhteen sovellukseen”, ”sallia yhteydet” ja sen tulee kohdistua MapleStory-asiakkaaseen (eli localhostiin).

Kaikkien näiden vaiheiden jälkeen porttien edelleenlähetysprosessin pitäisi nyt olla valmis.

Vastaa

Sähköpostiosoitettasi ei julkaista.