Frilansande utvecklare: Ronan C. P. Lana

Krediter ska också ges till Nexon(Duh!), den ursprungliga MapleSolaxia-personalen och andra medarbetare, eftersom bara några ändringar/korrigeringar av spelet tillämpades av mig själv, där några av dem avvek från det ursprungliga v83-patchinnehållet.

Reglering av distribuerbarhet och användning av koden som presenteras här: som tidigare är denna MapleStory-server öppen källkod. Med det menas att vem som helst är fri att installera, använda, modifiera och distribuera innehållet vidare, så länge det inte finns någon form av kommersiell handel inblandad och krediterna till de ursprungliga skaparna bibehålls i koderna.

Detta är ett NetBeans 8.0.2-projekt, som MÅSTE byggas och köras under JDK/JRE 7 för att kunna köras korrekt. Detta innebär att det är lättare att installera projektet genom att öppna mappen för serverprojektet i NetBeans IDE. När projektet är installerat, bygg detta projekt på din maskin och kör servern med hjälp av programmet ”launch.bat”.

I detta projekt har många spelmässiga problem som genererats från antingen de ursprungliga WZ-filerna och serverkällorna delvis eller helt lösts. Att överväga användningen av de medföljande redigerade WZ-filerna och wz.xml-filerna på serversidan bör vara av största vikt när man arbetar med den här instansen av privat server, för att uppfatta den till sin fulla potential. Det är dock min åsikt! Se ”README_wzchanges.txt” för mer information om vad som har ändrats från Nexons v83 WZ-filer.

Huvudsyftet med det här projektet är att så gott det går försöka återskapa det som en gång var det ursprungliga MapleStory v83, samtidigt som man lägger till några smaker som kryddar spelet. Med andra ord, att sträva efter att få det bästa av den tidens MapleStory.

Ladda ner objekt

Serverfiler: https://github.com/ronancpl/MapleSolaxiaV2

Klientfiler & allmänna verktyg: https://drive.google.com/drive/folders/0BzDsHSr-0V4MYVJ0TWIxd05hYUk

Donation

Om du gillade vad du har sett på projektet, donera en liten sak som en hjälpande hand för mina bidrag till Maple-utvecklingen: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=3K8KVTWRLFBQ4

Förberedelse av miljön

Följande länk lär ut hur man installerar en privat server för MapleStory v83, men det skiljer sig åt vad som används här: http://forum.ragezone.com/f428/maplestory-private-server-v83-741739/

Använd den länken ENDAST SOM ORIENTERING för att förstå var här saker och ting börjar bli tvetydiga.

Installera först alla allmänna verktyg som krävs för att köra servern:

  • WampServer2.0i.exe -> mottagare av servern.
  • hamachi.msi -> används för att upprätta en tunnelled för kommunikationen mellan server och klient.
  • mysql-query-browser-1.1.20-win.msi -> MySQL-serverkomponent, kommer att lagra serverns DB.

Installera nu Java 7 Development Kit:

  • jdk-7u79-windows-x64.exe
  • netbeans-8.0.2-javase-windows.exe -> Det är ett NetBeans-projekt, använd andra IDE på egen risk.

Övergrip när du uppmanas med JAR-filerna under ”jce_policy-7/UnlimitedJCEPolicy” i dessa Java-mappar:

  • 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

Nu när verktygen har installerats kan du testa om de fungerar.

För WampServer:När du har installerat det, kör det och du kommer att se Wamp-ikonen i det nedre högra hörnet.Vänsterklicka på den och klicka på ”Put Online”.Om du har ORANGE ICON, ändra port 80 i ”httpd.conf” till en annan, eftersom den kolliderar med en standardport i Windows.Vänsterklicka sedan på den igen och klicka på ”Start All Services”.Wamp-ikonen måste se helt grön ut (om den är orange eller röd har du ett problem).

För Hamachi:Försök att öppna den. Så enkelt är det.Hamachi är dock valfritt. Du behöver inte installera Hamachi om du vill göra servern bara för att använda den på din egen maskin. Men om du vill låta andra spelare få tillgång till din server kan du överväga att alternativt använda port-forwarding-metoder.

Installation av SERVER

Sätt mappen ”MapleSolaxia” på en plats som du föredrar. Det rekommenderas att använda ”C:\Nexon\MapleSolaxia”.

Installation av SQL: öppna MySQL Query Browser och definiera dessa parametrar vid uppstart och klicka på OK:Server Host: localhostPort: 3306Username: root

Nu måste det göras FÖRSIKTIGT:

  1. Fil -> Open Script… -> Bläddra efter ”C:\Nexon\MapleSolaxia\sql” -> db_database.sql och kör den.
  2. Fil -> Open Script… -> Bläddra efter ”C:\Nexon\MapleSolaxia\sql” -> db_drops.sql, och kör det.

Nu är det FRIVILLIGT, du behöver inte köra det om du inte vill, eftersom det helt enkelt kommer att ändra några NPC-butiker för att ställa in några nya varor, som inte finns i det ursprungliga MapleStory, för att sälja:

  1. Fil -> Open Script… -> Bläddra efter ”C:\Nexon\MapleSolaxia\sql” -> db_shopupdate.sql, och kör den.

När du har utfört dessa SQL:er bör du ha installerat ett databasschema som heter ”maplesolaxia”. REGISTRERA DITT FÖRSTA KONTO som ska användas i spelet genom att manuellt skapa en post i tabellen ”accounts” i den databasen med en inloggning och ett lösenord.

Konfigurera den IP som du vill använda för din MapleStory-server i ”configuration.ini”-filen, eller ställ in den som ”localhost” om du bara vill köra den på din maskin. Alternativt kan du använda den IP som ges av Hamachi för användning i ett Hamachi-nätverk, eller så kan du använda en icke-Hamachimetod för portforwarding. Ingendera kommer att behandlas här.

Öppna nu NetBeans och välj Öppna ett projekt… Välj sedan mappen ”MapleSolaxia”, som redan borde vara ett projekt som NetBeans kan känna igen. Om det inte gör det har du ett problem.

Inom projektet kan du stöta på några kodfel. Dessa händer eftersom du ännu inte har ställt in projektets ”cores”. Från projekthierarkin högerklickar du på projektet och väljer ”Resolve Project Problems”. Leta upp mappen ”cores” i projektets rotkatalog och konfigurera manuellt de saknade filerna med de filer som finns där.

Slutligt väljer du ”Clean and Build project” (Rensa och bygg projektet) för att bygga JAR-filen för MapleStory-servern. När det är gjort ser du till att både WampServer och Hamachi är på och fungerar och kör sedan ”launch.bat” i roten av projektet. Om inga fel uppstod efter denna åtgärd är din MapleStory-server nu online.

Installera CLIENTEN

Klientens installation är ganska okomplicerad:

  1. Från ”ManagerMsv83.exe”, installera MapleStory i din önskemapp (t.ex. ”C:\Nexon\MapleStory”) och följ deras instruktioner.
  2. När du är klar raderar du dessa filer:
  3. Släck ut ”HShield” (mapp), ”ASPLauncher.exe”, ”MapleStory.exe” och ”patcher.exe”.
  4. Extrahera ”localhost.exe” från Localhostv83 till klientmappen.
  5. Översätt de ursprungliga WZ-filerna med de filer som finns i mappen ”client_wz” på Google Drive.

Om du inte använder ”localhost” som mål-IP i serverns konfigurationsfil måste du HEX-EDITera ”localhost.exe” för att hämta din IP. Spåra alla IP-platser genom att söka efter ”Text String” ”127.0.0.0.1” och tillämpa ändringarna där det passar.

För att hex-redigera installerar du Neo Hex Editor från ”free-hex-editor-neo.exe” och följer deras instruktioner. När du är klar öppnar du ”localhost.exe” för redigering och skriver över IP-värdena under de tre adresserna. Spara ändringarna och avsluta editorn.

Öppna klienten ”localhost.exe”. Om programmet på något sätt inte öppnades, och om du kontrollerar que-serverloggen har ditt ping lyssnats och du använder Windows 8 eller 10, kan det förmodligen vara något kompatibilitetsproblem. Extrahera ”lolwut.exe” från ”lolwut-v0.01.rar” och placera den i MapleStory-klientmappen (”C:\Nexon\MapleStory”). Egenskapsinställningarna för ”localhost.exe” måste följa dessa:

  • Kör i kompatibilitetsläge: Windows 7;
  • Obekräftat reducerat färgläge;
  • 640 x 480 upplösning;
  • Obekräftat inaktivera visning vid höga DPI-inställningar;
  • Kör som administratör;
  • Öppning av ”lolwut.exe”, använd Fraysas metod.

Viktigt: Om klienten nekas att ansluta till spelservern kan det bero på brandväggsproblem. Gå till slutet av den här filen för att fortsätta till att aktivera denna anslutning med datorns brandvägg. Alternativt kan man avaktivera brandväggen och försöka öppna klienten igen.

Viktigt meddelande om CLIENT EDITING

ANVÄNDA INTE serverns XML:er för att återimportera till klientens WZ, det kommer att generera någon form av buggar i efterhand.

  • Använd istället HaRepacker 4.2.4, kryptering ”GMS (old)”.
  • Öppna den önskade WZ:n för redigering och gör med hjälp av användargränssnittet de önskade ändringarna.
  • Spara den ändrade WZ:n och skriv över originalinnehållet i klientens mapp.
  • Sluttligen, RE-EXPORtera (”Private Server…” exportalternativet) de ändrade XML:erna till serverns WZ.XML-filer och skriver över det gamla innehållet.

Dessa steg är VIKTIGA för att upprätthålla synkroniseringen mellan server- och klientmoduler.

Som ett exempel på WZ-redigering i klienten, se på MobBookUpdate-projektet som jag utvecklade, för att uppdatera alla rapporterade droppdata för mobs i spelet baserat på de aktuella droppdata som finns i databasen:

  • Öppna MobBookUpdate-projektet i NetBeans, som finns på ”C:\Nexon\MapleSolaxia\MobBookUpdate”, och bygg det.
  • I undermappen ”lib” kopierar du filen ”MonsterBook.img.xml”. Detta är från den ursprungliga WZ v83.
  • Klipp in den i undermappen ”dist”.
  • Inom ”dist” öppnar du kommandotolken genom att alt+högerklicka där.
  • Exekvera ”java -jar MobBookUpdate.jar”. Det kommer att generera en ”MonsterBook_updated.img.xml”-fil.
  • Slutligen, skriv över ”MonsterBook.img.xml” på ”C:\Nexon\MapleSolaxia\wz\String.wz” med den här filen och döpa om den till ”MonsterBook.img.xml”.

I det här läget har monsterboken på serversidan uppdaterats med det aktuella läget för databasens droppdata. Öppna sedan HaRepacker 4.2.2.2 och ladda ”String.wz” från ”C:\Nexon\MapleStory”. Släpp noden ”MonsterBook.img” genom att ta bort den från hierarkiträdet och importera sedan (TROTS VAD SOM SKULLE GÖRAS NORMALT!) serverns ”MonsterBook.img.xml”.

Tänk på att detta är absolut farligt om det görs oförsiktigt. När MonsterBook.img inte innehåller klientspecifika data i sitt nodinnehåll orsakar importen av XML ingen skada alls. Försök dock att inte ta bort/återimportera noder från WZ-filer, eftersom det kan orsaka dataförluster. Använd istället HaRepacker’s UI för att göra ändringarna.

Spara ändringarna och skriv över den äldre WZ:n på MapleStory-klientmappen.

Portforwarding the SERVER

För att använda portforward måste du ha behörighet att ändra saker på LAN-routern. Öppna routern med hjälp av webbläsaren. URL:erna varierar beroende på tillverkare. För att upptäcka den öppnar du kommandotolken och skriver ”ipconfig” och söker efter fältet ”default gateway”. Den IP-adress som visas där är den URL som behövs för att komma åt routern. Leta också efter den IP som din maskin har fått (fältet ”IPv4-adress”), vilket kommer att vara serveradressen.

Den standardiserade inloggningen/lösenordet varierar också, så använd länken http://www.routerpasswords.com/ som referens. Vanligtvis brukar inloggning som ”admin” och lösenord som ”password” slutföra uppgiften väl.

Nu har du loggat in i routerns system, leta efter något som har med portforwarding att göra. Om systemet frågar dig mellan portforwarding och portriggering, välj det första, det är det vi kommer att använda.

Nu gäller det att aktivera rätt portar för Internet. För MapleSolaxia är det i princip nödvändigt att öppna portarna 7575 till 7575 + (antal kanaler) och port 8484. Skapa en ny anpassad tjänst som aktiverar det portintervallet för serverns kanal och välj att använda TCP/UDP-protokoll. Skapa slutligen en anpassad tjänst nu för att använda port 8484.

Optionellt, om du vill vara värd för en webbsida, portforwardar du även port 80 (HTTP-porten).

Det är inte färdigt ännu, ibland blockerar brandväggarna anslutningar mellan LAN och Internet. För att övervinna detta måste man skapa några regler för brandväggen för att tillåta dessa anslutningar. Sök efter de avancerade alternativen med brandväggar på din dator och med den öppen skapar du två regler (en utgående och en inkommande).

Dessa regler måste vara inriktade på ”ett program”, ”aktivera anslutningar” och måste vara inriktade på din MapleStory-klient (aka localhost).

Efter alla dessa steg bör portforwarding-processen nu vara klar.

Lämna ett svar

Din e-postadress kommer inte publiceras.