[WIP] dev.themanaworld.org

Content and general development discussion, including quest scripts and server code. TMW Classic is a project comprising the Legacy tmwAthena server & the designated improved engine server based on evolHercules.


Forum rules

This forum houses many years of development, tracing back to some of the earliest posts that exist on the board.

Its current use is for the continued development of the server and game it has always served: TMW Classic.

User avatar
Jaxad0127
Manasource
Manasource
Posts: 4209
Joined: 01 Nov 2007, 17:35
Location: Internet

Re: [REQ] dev.themanaworld.org

Post by Jaxad0127 »

As for the repos, it might be better to have one main repo for each type, and use a clone (owned by the new tmw-admins group) for the other. I think the main repos should be used for testing/prod. So we'd have tmw/client and tmw/server for testing/prod data, and +tmw-admins/tmw/client and +tmw-admins/tmw/server for dev data.
Image
User avatar
Bertram
Manasource
Manasource
Posts: 1026
Joined: 07 Sep 2004, 14:55
Location: France

Re: [REQ] dev.themanaworld.org

Post by Bertram »

Hi Jaxad,

Ok for me. Can you create the clone right away, even with no change for now?

Also, may I ask for being part of the tmw-admins, or is it only for the chosen one, working on tAthena? ;)

Best regards.
User avatar
Jaxad0127
Manasource
Manasource
Posts: 4209
Joined: 01 Nov 2007, 17:35
Location: Internet

Re: [REQ] dev.themanaworld.org

Post by Jaxad0127 »

Repositories: I've committed a license file to all (GPL2).
Image
User avatar
Rotonen
TMW Adviser
TMW Adviser
Posts: 3154
Joined: 08 Sep 2004, 19:48
Location: Bern, Switzerland

Re: [REQ] dev.themanaworld.org

Post by Rotonen »

And to again clarify: "prod" is just a tag of a published revision in the testing repo.

We should aim to not tag stuff just for the fun of it and to minimize the amount of fix releases. How to handle merging from dev to testing is yet to be decided, but that workflow will IMO come to us naturally once we get there.
This message used to be meaningful.
User avatar
Bertram
Manasource
Manasource
Posts: 1026
Joined: 07 Sep 2004, 14:55
Location: France

Re: [REQ] dev.themanaworld.org

Post by Bertram »

Hi there,

I just committed last night the very first and very WIP files asked by Rotonen into the following repositories:
http://www.gitorious.org/tmw/client-dev
http://www.gitorious.org/tmw/server-dev

These data can be used as is to start what is to later become the CR1 server.

As for a linux own installation,
Be sure to copy the manaserv.xml as .manaserv.xml in your home directory, and start both the manaserv-account and manaserv-game servers.

Then, you can start the client by using the following parameters:
mana -u -d ../path/to/client-dev-data

And try to connect to a custom server on localhost:9601.

I'm sure most readers of this topic will know how to do it, but I still hope it'll help people to test it out.

I'll then hope we can start making further decisions based on this, even without having a real server out there yet.

Best regards.
User avatar
Rotonen
TMW Adviser
TMW Adviser
Posts: 3154
Joined: 08 Sep 2004, 19:48
Location: Bern, Switzerland

Re: [REQ] dev.themanaworld.org

Post by Rotonen »

Current status for the completion of the [REQ] and a clear simple list of blocking features/aspects?
This message used to be meaningful.
User avatar
Bertram
Manasource
Manasource
Posts: 1026
Joined: 07 Sep 2004, 14:55
Location: France

Re: [REQ] dev.themanaworld.org

Post by Bertram »

Hi,

As of today:

In development data repository:
* Simple map in place.
* Minimal required data put in place for both client and server, the stats.xml file apart.
* Localhost server loggable, but still some fixes to push because the player is starting by dying.
* Fix for attributes from Freeyorp.
* Renaming or stats.xml to attributes.xml file

On the web:
* The access credentials have been asked some time ago.
* Nothing yet, I just recalled myself to Platyna. I also sent at her request a mail at root@platinum.edu.pl on august, the 2nd.

On going:
* Fix for attributes from Freeyorp (today or tomorrow): The localhost server and client will be usable, as for walking and talking.
* Renaming or stats.xml to attributes.xml file.
* The client part needs a bit more tweaks about computing attributes; we'll then be technically ready as for the requested steps, but still lacking a web access.
* Discussion of the starting points to the attributes.xml ongoing, useful for testing the future attribute system, here: http://forums.themanaworld.org/viewtopi ... 16&t=11200
* Discussion about a global roadmap, including every project. This for coordination purpose, here : http://forums.themanaworld.org/viewtopi ... 16&t=11194
* Updates files preparation for dev convenience purpose.

Best regards.
User avatar
Bertram
Manasource
Manasource
Posts: 1026
Joined: 07 Sep 2004, 14:55
Location: France

Re: [REQ] dev.themanaworld.org

Post by Bertram »

Hi there!

First of all, I shall give a BIG THANK YOU to Platyna to give us space and a exhaustive-tools-provided and really responsive dev server.

News from the battlefront:

Done:
* I have access to the dev.manaworld.org server since several days. Even if I've got very little spare time those days, I've been advancing a bit on this.
* The server and related data are in place there, and the server should be running at the time I'm writing this post.
It's really basic for now but running. I have the joy to get a really better view about tools we should do to make updates easier, and manage a bit more accurately the server binaries. I'll be on that and submit patches whenever I've made something I find relevant.
* Access to the main CR1 developers: Rotonen, Crush, Freeyorp, ... have been created and registration disabled.
I'll send the credentials to each of the people concerned by PM.
* The number of character per account has been lowered to one, as requested by Rotonen.
* Client updates data are prepared and in place.

In progress:
* The website access, meaning typing: http://dev.themanaworld.org, and the updates folder, meaning: http://dev.themanaworld.org/updates aren't available for now. To be discussed with Platyna and Elven. I'll keep you informed.
This means you'll have to connect there using the mana client from the attributes-test clone and using both the -d and -u options, and using the -d /path/to/client/dev/data option more precisely.
* The account server login is ok but the player creation is giving me problem I've fixed locally, but I need to be sure before uploading and I don't have time right now. So no character creation yet, but we're the closest possible.
* I'll also have a look at what is possible to include as for the manaweb interface for the dev server.
* I'll add a branding file in the client data dev files asap.

To be discussed:
* Character creation starting points server->client information needs to be cleared out and fixed!!!
* Character's slots presentation (when there are not three slot available) in client needs to be fixed!!!

Secondary note:
It's my birthday! So I won't be coding tonight ;)

Best regards.
User avatar
AxlTrozz
Knight
Knight
Posts: 843
Joined: 04 Aug 2006, 23:12
Location: Now from TX

Re: [REQ] dev.themanaworld.org

Post by AxlTrozz »

Off Topic:

I wish you a very nice day and a Happy Birthday. :!:
User avatar
Bertram
Manasource
Manasource
Posts: 1026
Joined: 07 Sep 2004, 14:55
Location: France

Re: [REQ] dev.themanaworld.org

Post by Bertram »

Still off-topic:
Thanks Axltrozz :)
User avatar
Bertram
Manasource
Manasource
Posts: 1026
Joined: 07 Sep 2004, 14:55
Location: France

Re: [REQ] dev.themanaworld.org

Post by Bertram »

Hi again,

Latest news:
After updating the last config files preventing files from letting us in, the server is still not useable due to mysql weirdnesses, not happening in sqlite.

The latest one http://bugs.manasource.org/view.php?id=189 , is also preventing from connecting to the game server.
If this is fixed, i hope to get the first baby steps done. :)

Best regards.
User avatar
Bertram
Manasource
Manasource
Posts: 1026
Joined: 07 Sep 2004, 14:55
Location: France

Re: [REQ] dev.themanaworld.org

Post by Bertram »

Hi,

Latest news again:

The good news:
- A nightly client is now able to log into the dev server using: dev.themanaworld.org - 9601 - Manaserv server type as a custom server.
- The server now provides an update Host, which is: http://dev.themanaworld.org/updates (and is working). :)
- The server is also providing debug logs here: http://dev.themanaworld.org/logs

What's left before baby step I completed:

The following bugs are preventing players from logging in :
- Client:
http://bugs.manasource.org/view.php?id=220 [Manaserv] The attributes.xml file can't be loaded when in an update file. -> Done!

- Server :
http://bugs.manasource.org/view.php?id=189 [Manaserv Mysql] The client doesn't display the created character at next login. -> Done!
http://bugs.manasource.org/view.php?id=221 [Manaserv - MySQL specific] the client stays stuck trying to connect to the game server. -> Done!

I'm now asking Freeyorp's help on the mantis 189, and 221. -> All done!

EDIT:
Issues 220 and 221 resolved. You can now log in the dev server. But the character you created won't display at next login.
One issue left!

EDIT2:
Issue 189 resolved. You should now be able to create your character at slot 1, and find it the next time you log in.
I also updated the data files to remove the playerset, not wanted into for the baby step 1.

The bad thing for now is that you can't reach the point where you actually display the map and can talk for some obscure reason. Actually, I was able tog in 1 on ten times and this has to be fixed in top priority :)
We're close!

Thanks for reading and best regards.

Stay tuned! ;)
User avatar
Bertram
Manasource
Manasource
Posts: 1026
Joined: 07 Sep 2004, 14:55
Location: France

Re: [REQ] dev.themanaworld.org

Post by Bertram »

Bumped since there are news ;)
User avatar
Rotonen
TMW Adviser
TMW Adviser
Posts: 3154
Joined: 08 Sep 2004, 19:48
Location: Bern, Switzerland

Re: [REQ] dev.themanaworld.org

Post by Rotonen »

There is some sort of an issue with the update server I cannot decipher due to my inability to switch away from a horribly broken Finnish translation.
This message used to be meaningful.
User avatar
Bertram
Manasource
Manasource
Posts: 1026
Joined: 07 Sep 2004, 14:55
Location: France

Re: [REQ] dev.themanaworld.org

Post by Bertram »

Hi Rotonen,

As discussed yesterday, the bug doesn't come from the data, even if the client can have some strange logging, especially for the serverlist.xml download.

I'm slowly tracking it and here what I gathered atm:

- The bug is present with the current attributes.xml configuration (which should be the correct one a few description's updates apart.)
- It is present only when using MySQL (It must come from a certain data type storage related to attributes. I suspect the doubles)

Tracking it in the server code, here is what I found :
The server is separated into two binaries account and game server which must both serve at real time.
Hence, they share data net buffer-based at a regular time and / or at a maximum size. (See the tokenCollector)

When a player selects its character, the account server sends character serialized data to the game server, and add a pending connection addressed to the game server.

The game server, at a regular time and / or a max size basis, download the character's data and add the pending connection to its pending collection.

At some time, the game server is able to match the link between the connection and the character's data once its fully downloaded, and add the character to its map. The fact of adding a character into a map sends a change map event to the client with the map name, and here we go.

Our problem is that with current configuration and using MySQL, the matching between the connection and the character is never done, and the client stays stuck after the character selection.
10 seconds later or so, the token collector sees there is an orphan connection and drop it, and the client tells the connection to the game server has been lost.

Sequencially, the mainly concerned functions are called AFAIK:

?
void GameHandler::tokenMatched(GameClient *computer, Character *character) src/game-server/gamehandler.cpp line 649
GameState::insert(character) -> bool GameState::insert(Thing *ptr) src_game-server/state.cpp line 513
MessageOut mapChangeMessage(GPMSG_PLAYER_MAP_CHANGE); line 588
mapChangeMessage.writeString(map->getName()); line 589

I will now check where the game-server stops, in the hope to find out why.

Best regards.
Post Reply