Making Content

Making Map Content

Python Converter Tool

After editing maps for the client, you need to generate the walkmaps and imports for the server. yhis can be done either by the Tiled application or by running the python script tmx_converter.py which is located in the tools folder of the Server Data folder.
(see Mapping Tutorial#Creating the WLK files)
After that, commit and push the files that the converter edited. Note that, if you do not have push access to the main repository, you should let someone else update the submodule itself.

Instructions for old EAthena server (obsolete)

We're using Git as version control system for our source files and content. Have a look at our Tutorial about how to use Git.

Set Up

This is a how to help content development for official server (tmwAthena) using Ubuntu and the Mana+ client. Other OS and clients may differ. Following this guide, you should be able to get development testing versions of the client data (tmwa-client-data), server-data (tmwa-server-data) and participate in development by using a localhost server. After getting these, you can both test current development and begin development in the direction you find most fitting.

Hosting Updates

TMW makes it easy to generate delta zips out of a repository, once it is initially set up.

It will put them in ~/www/updates/, which may be a symlink to wherever your web server is really serving. Setting up a webserver is not covered here.

Once everything is set up, just run 'make updates' from the server-data dir every time client-data changes. It will do nothing if appropriate, generate complete zips the first time, and incremental zips afterwards.

Some notes:

You must put news.txt and skeleton resources.xml file (and maybe an empty resources2.txt) in ~/www/updates/ first.

Music updates are never added; they should be in the skeleton and updated manually if needed.

You definitely want to run one of the analyzer scripts frequently, and remove the old updates.

Updating the Server

Running and Administrating the Server

The TMWAthena is in fact 3 servers:

tmwa-login which manages accounts and connection to char server.

tmwa-char which manages characters and connects them to the map server.

tmwa-map which manages game content (maps, monsters, items, scripts...) and their interaction with characters

Start the servers: Open a terminal and run all the local servers. To stop them, either close the terminal or type control-C.

cd ~/tmwAthena/tmwa-server-data/
./run-all

In a new terminal, Launch tmwa-admin the administration tool, add yourself as an user and make yourself a GM:

Note : Be sure that you are running tmwa-admin from within the "login/" directory. Check that the config files are correct: the connection port should be 6901 for tmwa's configuration, not 6900, which is the hard-coded default.

^ : a step for those with commit access to the remote repositories. For others, you don't need to reconfigure your clone and please make a patch on steps where git push is suggested.

^ : you only need to do this once, no matter how many times you independently clone the repositories.

git format-patch -M -C origin/master

pastebin the patch(es) and post for review at irc.freenode.net channel: #evol-dev or on our development forums. Extensive patches must be posted on the forum as a series of well-formed patches with descriptive commit messages. In particular, later patches should not fix errors introduced in earlier patches, and each patch should form a logically independent part.

Note : This is kind of outdated; with github it's often easier to do patches on branches there. see: Working With Git page