Server replacement; Good idea?

Content and general development discussion, including quest scripts and server code. The Mana World is a project comprising the original 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: The Mana World.

User avatar
bogus
Newly Registered User
Posts: 15
Joined: 28 Nov 2011, 01:52

Server replacement; Good idea?

Post by bogus »

Hi, I just downloaded the client code and I must say that it's not at all shabby. I was planning on making my own server and to use a tcp lib I know how to easily use. If I'm right there is no motion planning in the server at all? I do wish I could see the server side workings currently in place so I can see where I am doing upgrades and downgrades (if any) to the current model. Can I get that? Oh, and I'm not going to use any scripting either. I'm more of a code and database guy. :idea:
*>* Professor Farnsworth: You can't just waltz into the Central Bureaucracy. It's a tangled web of red tape and regulations. I've never been, but a friend of mine went completely mad trying to find the washroom there.
Leela: Then we'll need a guide, someone who's been there before.
Professor Farnsworth: Oh, I've been there. Lots of times.
[laughs maniacally]
*>*
Frost
TMW Adviser
TMW Adviser
Posts: 851
Joined: 09 Sep 2010, 06:20
Location: California, USA

Re: Server replacement; Good idea?

Post by Frost »

You earn respect by how you live, not by what you demand.
-unknown
User avatar
o11c
Grand Knight
Grand Knight
Posts: 2262
Joined: 20 Feb 2011, 21:09
Location: ^ ^

Re: Server replacement; Good idea?

Post by o11c »

I'm working on a cleanup of the server: http://gitorious.org/~o11c/tmw-eathena/ ... a-comments

Right now I'm writing a replacement network layer ... I'm stuck on some really, really, really nasty stuff with stream-based Unix Domain Sockets and ancillary data.

The single greatest thing I need write now, that can be done without worrying about touching anything else, is someone to write python gdb pretty-printers. But there are several other tasks.

If you're interested, join #tmwa - it requires registering with NickServ after the last lot of spam bots.
Former programmer for the TMWA server.
User avatar
bogus
Newly Registered User
Posts: 15
Joined: 28 Nov 2011, 01:52

Re: Server replacement; Good idea?

Post by bogus »

Imma c/c++ coder so all these tools mentioned in the dev materials seem like a step backwards for me. If the server code was my kind of code I could put in some simple motion planning but I wouldn't know how to translate that to flex and bison and python and such. You guys have c/c++ code but use other tools to generate the code and scripts to handle things? I still think we can collaborate. I'm going to use this code to further my project. I'd like to give back. By the time my project is in beta testing all that code will probably be replaced but still it helps me in my pre alpha project quite a bit.
*>* Professor Farnsworth: You can't just waltz into the Central Bureaucracy. It's a tangled web of red tape and regulations. I've never been, but a friend of mine went completely mad trying to find the washroom there.
Leela: Then we'll need a guide, someone who's been there before.
Professor Farnsworth: Oh, I've been there. Lots of times.
[laughs maniacally]
*>*
User avatar
Crush
TMW Adviser
TMW Adviser
Posts: 8046
Joined: 25 Aug 2005, 16:08
Location: Germany

Re: Server replacement; Good idea?

Post by Crush »

What exactly do you mean with "Motion Planning"?
  • former Manasource Programmer
  • former TMW Pixel artist
  • NOT a game master

Please do not send me any inquiries regarding player accounts on TMW.


You might have heard a certain rumor about me. This rumor is completely false. You might also have heard the other rumor about me. This rumor is 100% accurate.
User avatar
bogus
Newly Registered User
Posts: 15
Joined: 28 Nov 2011, 01:52

Re: Server replacement; Good idea?

Post by bogus »

I mean getting the game in sync so clients know where each other are at, and collisions are such that it looks like there is no lag. That's the short explanation. The long explanation is very long.
*>* Professor Farnsworth: You can't just waltz into the Central Bureaucracy. It's a tangled web of red tape and regulations. I've never been, but a friend of mine went completely mad trying to find the washroom there.
Leela: Then we'll need a guide, someone who's been there before.
Professor Farnsworth: Oh, I've been there. Lots of times.
[laughs maniacally]
*>*
User avatar
o11c
Grand Knight
Grand Knight
Posts: 2262
Joined: 20 Feb 2011, 21:09
Location: ^ ^

Re: Server replacement; Good idea?

Post by o11c »

When a being moves, the server sends its current location and its destination location. The server and client use independent implementations of the same pathfinding algorithm.

Note that if you use the arrow keys to navigate, the server has no way of telling everybody where you intend to go, but if you use the mouse (or the manaplus "go to nav point" feature), then it can.
Former programmer for the TMWA server.
User avatar
bogus
Newly Registered User
Posts: 15
Joined: 28 Nov 2011, 01:52

Re: Server replacement; Good idea?

Post by bogus »

R u saying "There is no way to write a better server."?
*>* Professor Farnsworth: You can't just waltz into the Central Bureaucracy. It's a tangled web of red tape and regulations. I've never been, but a friend of mine went completely mad trying to find the washroom there.
Leela: Then we'll need a guide, someone who's been there before.
Professor Farnsworth: Oh, I've been there. Lots of times.
[laughs maniacally]
*>*
User avatar
Crush
TMW Adviser
TMW Adviser
Posts: 8046
Joined: 25 Aug 2005, 16:08
Location: Germany

Re: Server replacement; Good idea?

Post by Crush »

When you have ideas how the netcode could be improved through movement prediction I would be very interested in your long version.

When you don't feel comfortable enough with the server codebase to write a patch on your own you could first write an article on the RFC section on the wiki (http://wiki.themanaworld.org) explaining your theoretical approach and then discuss how to implement it with the other developers on IRC.

Regarding your plan to write your own server from scratch to try out your idea: As someone who already took part in the development of a new server for the Mana plattform (Manaserv) I can tell you that it is a lot more work than it seems at first glance. There are tons of small things you have to make sure they are working while also keeping a lot of additional problems in mind like thread-safety, security and stability (a critical bug in the client is only a mild inconvenience for the affected players - a critical bug in the server can screw up the whole gamestate beyond repair).
  • former Manasource Programmer
  • former TMW Pixel artist
  • NOT a game master

Please do not send me any inquiries regarding player accounts on TMW.


You might have heard a certain rumor about me. This rumor is completely false. You might also have heard the other rumor about me. This rumor is 100% accurate.
User avatar
bogus
Newly Registered User
Posts: 15
Joined: 28 Nov 2011, 01:52

Re: Server replacement; Good idea?

Post by bogus »

I'm hearing.. something like.. you should try it cuz it's hard and I helped make one and it's hard. It's actually quite simple once you figure out how to send something to the server and back again. I haven't started an in depth look at the client code yet and I haven't start the server. Have I created servers and clients before? yes, I have done that. Just slap together some c/c++ and make files to hold data. Let's start simple and small. Since thi is the tech dev forum I will start a new thread so we can be clear.

On this thread I want to know if a rewrite of the server is a good idea. Yes? No? Maybe?

edit added What if someone,.. okay me, What if I gave you a network framework to which you could simply add message identifiers and database files and run it?
Last edited by bogus on 29 Nov 2011, 00:01, edited 1 time in total.
*>* Professor Farnsworth: You can't just waltz into the Central Bureaucracy. It's a tangled web of red tape and regulations. I've never been, but a friend of mine went completely mad trying to find the washroom there.
Leela: Then we'll need a guide, someone who's been there before.
Professor Farnsworth: Oh, I've been there. Lots of times.
[laughs maniacally]
*>*
User avatar
salmondine
Warrior
Warrior
Posts: 357
Joined: 08 Jan 2008, 02:37
Location: Florence. Oregon

Re: Server replacement; Good idea?

Post by salmondine »

maybe? there has been an ongoing attempt to create a new server from scratch for the past few years.
that project is on freenode irc mana something? I used to know.
for years "the new server is coming" was the chanted mantra used to discourage any real work on fixing eAthena here.
So when you ask is it a good idea? without this history...you miss the context of silence.

Fixing eAthena is a good idea yes....halting development to wait for it...no.
Integrating with efforts on platinum irc would be smarter than just offering a blank page statement and asking yes or no?
If you don't do this its hard to take your post seriously, it like saying gee just trust me to fix everything without peer review.
That's never going to happen, every minute change will be inspected and scrutinized and debated.
This is the process, I welcome any help fixing the server we have.
User avatar
bogus
Newly Registered User
Posts: 15
Joined: 28 Nov 2011, 01:52

Re: Server replacement; Good idea?

Post by bogus »

You guys use sdl and asl_mixer and sdl_net ect ect. This game was started as a simple cross platform code and now that I have reviewed the code it looks like a monster of stuff that needs to be redesigned. There are a ton of small issues that stem from a lack of basic understanding of how games work. I can see it hurts your collective pride too much to think this, but someone needed to say it. Just take your account and item database data and start over. I can see we arent going to work together so... see youz
*>* Professor Farnsworth: You can't just waltz into the Central Bureaucracy. It's a tangled web of red tape and regulations. I've never been, but a friend of mine went completely mad trying to find the washroom there.
Leela: Then we'll need a guide, someone who's been there before.
Professor Farnsworth: Oh, I've been there. Lots of times.
[laughs maniacally]
*>*
Frost
TMW Adviser
TMW Adviser
Posts: 851
Joined: 09 Sep 2010, 06:20
Location: California, USA

Re: Server replacement; Good idea?

Post by Frost »

bogus wrote:You guys use sdl and asl_mixer and sdl_net ect ect. This game was started as a simple cross platform code and now that I have reviewed the code it looks like a monster of stuff that needs to be redesigned. There are a ton of small issues that stem from a lack of basic understanding of how games work. I can see it hurts your collective pride too much to think this, but someone needed to say it. Just take your account and item database data and start over. I can see we arent going to work together so... see youz
There's no shame in deciding that a task isn't what you want. I'm glad you realized that before you invested a lot of effort. I'm no programmer, but based on what I hear from the people who do work on this code, your criticisms of the code are valid. There is an effort to "burn and start over" called manaserv, which isn't quite ready to be played yet. Fortunately for those who play this game, a few talented people continue to develop the old server.

I hope you find an exciting, challenging, and satisfying project where you enjoy putting your programming and teambuilding skills to use.
You earn respect by how you live, not by what you demand.
-unknown
User avatar
o11c
Grand Knight
Grand Knight
Posts: 2262
Joined: 20 Feb 2011, 21:09
Location: ^ ^

Re: Server replacement; Good idea?

Post by o11c »

You did not come to the table with a friendly attitude toward working together, and that is the only thing that can prevent us from working together.

I am competent and am fixing the existing tmwAthena server. It is an arduous battle. If you wanted to help with server code, you would have talked to me when I first mentioned this, and I would have given you a task. One possible task is figuring out the side effects of http://forums.themanaworld.org/viewtopi ... =2&t=14333

SDL, etc. are only used in the client, and you were talking about the server. You do not seem to be able to distinguish between the various components and projects that contribute to server.themanaworld.org

And I agree that the client is pretty bad. The cynic in me says, if it were written to my standards, then it would be easy to create an effective bot client.
Former programmer for the TMWA server.
User avatar
Crush
TMW Adviser
TMW Adviser
Posts: 8046
Joined: 25 Aug 2005, 16:08
Location: Germany

Re: Server replacement; Good idea?

Post by Crush »

Frost wrote:I'm no programmer, but based on what I hear from the people who do work on this code, your criticisms of the code are valid.
You shouldn't take that so seriously. Egomania is an occupational diesease for us programmers. We programmers always tend to insult each others work while trying to understand it, because blaming someone else for "writing crap code" is easier than blaming oneself for not immediately understanding why someone solved an issue in a different way than we would have solved it (and the possibilities of different solutions to the same problem are endless in programming).
  • former Manasource Programmer
  • former TMW Pixel artist
  • NOT a game master

Please do not send me any inquiries regarding player accounts on TMW.


You might have heard a certain rumor about me. This rumor is completely false. You might also have heard the other rumor about me. This rumor is 100% accurate.
Post Reply