Skip to content

LTurret/MapleStory-TMS-v120-Server

 
 

Repository files navigation

MapleStory-TMS-v120-Server

A server dedicated to hosting the Taiwan MapleStory version 1.20 Server.

English|繁體中文

Getting Start

Database

  1. Create new database named MapleStory (case-sensitive).
  2. Follow the order and run all .sql inside /sql.

Alternatively, you can hosting the database using docker:

docker compose up db -d

Server

There are three approaches for compiling the server.

docker

docker compose up server -d

make

make

From-Scratch

  1. Make sure you have JDK 1.8 installed.

    $ java -version
    openjdk version "1.8.0_452"
    OpenJDK Runtime Environment (build 1.8.0_452-b09)
    OpenJDK 64-Bit Server VM (build 25.452-b09, mixed mode)
  2. Open the repository in editor.

    $ pwd
    /MapleStory-TMS-v120-Server
  3. Create out and dist directory, and your structure should look like this:

    .
    ├── dist   (new created)
    ├── lib
    ├── log
    ├── out    (new created)
    ├── sql
    ├── src
    ├── wz
    ├── docker-compose.yml
    ├── launcher.bat
    ├── launch.sh
    ├── LICENSE-GPL
    ├── LICENSE-MIT
    ├── makefile
    ├── MANIFEST.MF
    ├── README.md
    └── Settings.ini
    
  4. To compiling the source, run the following command:

    javac -cp "lib/jar/*" -d out $(find src -name "*.java")
  5. To create the JAR file (replace TMS120.jar and MANIFEST.MF as needed), use following command:

    jar cvfm dist/TMS120.jar MANIFEST.MF -C out .

Run

To run the server, enter following command:

java -Xmx2048m -server -cp "dist/TMS120.jar:lib/jar/*" -Dnet.sf.odinms.wzpath=wz server.Start

Distribution

When you build an Java application project that has a main class, the IDE automatically copies all of the JAR files on the projects classpath to your projects dist/lib folder. The IDE also adds each of the JAR files to the Class-Path element in the application JAR files manifest file (MANIFEST.MF).

To distribute this project, compress up the /dist (including the .jar) and distribute the .7z file.

Note

  • If two JAR files on the project classpath have the same name, only the first JAR file is copied to the lib folder.
  • Only JAR files are copied to the lib folder. If the classpath contains other types of files or folders, these files (folders) are not copied.
  • If a library on the projects classpath also has a Class-Path element specified in the manifest,the content of the Class-Path element has to be on the projects runtime path.
  • To set a main class in a standard Java project, right-click the project node in the Projects window and choose Properties. Then click Run and enter the class name in the Main Class field. Alternatively, you can manually type the class name in the manifest Main-Class element.

License

This project is licensed under the GPL licenses.

About

A server dedicated to hosting the Taiwan MapleStory version 1.20 Server.

Resources

License

Stars

Watchers

Forks

Languages

  • Java 59.1%
  • JavaScript 40.9%