Page 1 of 3

A change in the organization of things

Posted: 21 Oct 2009, 20:42
by Bjørn
The current situation of development being closely related to one central server has always shown considerate drawbacks. For example:
  • We've always strived to make the client generic enough to be used with entirely different servers, but this opportunity isn't used in practice. Instead, we've seen several times that other projects prefer to fork than to cooperate (without much success, unfortunately).
  • Developers get dragged into community politics, even though they really don't want to. It could be much better if developers were separated from this, or could choose their preferred player community independent of having to choose a development team.
Hence, I am suggesting we separate client and server development from any official production server. Of course, each developer can still individually choose to be part of any player community, including the themanaworld.org community. What follows is the road ahead as see it.

The Mana Roadmap
  • Client and server development will be moved to the manasource.org domain. It will be separated from content development, although manasource.org can still maintain a content library.
  • The tmw client will be renamed to Mana Client (executable can be simply called 'mana').
  • The tmwserv server will be renamed to Mana Server (manaserv).
  • themanaworld.org will stay the home of the current player community and server.themanaworld.org will remain one of the primary "production servers". However, other servers may also wish to participate on an equal footing, for example thealternateworld.org, invertika.org, aethyra (if they're compatible), our Brazilian friends, etc.

    The Mana Client itself will contain minimal branding (but enough to identify it), independent of any of the servers. Right after login it will brand itself as appropriate to a certain server (wallpaper, music, gui style).
  • A testing server will run on testing.manasource.org, maintained by the developers. It is meant to run a reference world that demonstrates the features of the server and client.
  • The formerly planned The Mana World 0.1.0 will be released as Mana Client and Mana Server 1.0. While these can still gain features in minor releases, work will then start on the Qt-based Mana 2.0 platform.
  • I will remain project lead for the Mana Client and Server. I will however only administrate the testing server. The running of other servers will be left to those who feel up to the challenge. Hopefully Platyna will keep hosting server.themanaworld.org since it has proved a very dependable service, but I also hope other projects will be able to grow and develop in this ecosystem.
Now, I'd like to have some feedback. :-)

Re: A change in the organization of things

Posted: 21 Oct 2009, 21:08
by i
I agree.

Re: A change in the organization of things

Posted: 21 Oct 2009, 21:12
by Rotonen
No objections here.

This way things are going to be clear.

Re: A change in the organization of things

Posted: 21 Oct 2009, 21:27
by Jaxad0127
I've been trying to think of a compelling name for one of the two parts so we can do this separation. "mana" is usable, but rather popular. Should be good.

As for the test server, separate graphics might be in order. The "tron" theme would be good.

Re: A change in the organization of things

Posted: 21 Oct 2009, 22:01
by peavey
This I like, please remove my account here (after the move) and I'll see you on the new forum.

Re: A change in the organization of things

Posted: 22 Oct 2009, 00:56
by Jaxad0127
I'll focus on Mana, but I'll help out with all servers (as long as they remain reasonable towards me). I'll still help with TMW world development.

Re: A change in the organization of things

Posted: 22 Oct 2009, 05:35
by Crush
On one hand this will separate us from the distracting (but imo often entertaining) drama which comes from managing a player community.

But on the other hand it will also separate the programmers from the content developers.

So far technical development and content development were powerful multiplicators for each other. A lot of technical improvements were made because the content plans required it and a lot of content was direct implementation of the PoCs from the technical department.


But nevertheless doing it that way will force us to design our technology as flexible and extensible as possible because we will be forced to adapt to the needs of multiple different servers and not just one. We will also be forced to care more about forward- and backward compatibility. These are good things on the long run.


I am comming with you to Manasource.

But there is one thing which may not be neglected during this reorganisation and that are the needs of the player. A player who stumbles upon the homepage of a mana-based game should be able to get into it with one software installation from the site he visited and not forced to write down a server address and download a (from his point of view) completely unrelated software from a completely different site. I already have a solution for this problem for windows users. More about this on the manasource forum when it is online.

Re: A change in the organization of things

Posted: 22 Oct 2009, 07:36
by ElvenProgrammer
So if I understood it correctly, all the developers are moving to manasource.org and we need to create a solid team to keep server.themanaworld.org up to date with development and correctly managed as a production server.

Anyone willing to join me on this task?

Re: A change in the organization of things

Posted: 22 Oct 2009, 07:47
by Bertram
I agree, and this initiative to get things clearer has my full support!

I hope content managers and makers will still be able to get an easy way to talk with devs, while avoiding being mined by the forum flames out there.

I'd like to keep pushing features for the mana client, mana server, and [FND] content for the testing eAthena server data, if no one minds.

As we're speaking of organization and future, I've got two complains, but I'll tell them nicely: ;)

- This sounds as a logical question to me (but you never know):
Why use QT for the mana server monitor? I mean, why use such heavy dependencies for such an thin tool, around a server that shouldn't depend of such technology, or only optionally?
I know you want to remove the DAL and put QT instead and I still think it's a bad idea, removing a lot of flexibility for nothing better. Just my two cents and just to make things clear.

- I've been maintaining mantis actively for, let's say, two months or so, without great complains from you or anyone (or I didn't notice and I apologize). So, I'd like to get a clear and agreed workflow on how to do this, but, please, don't set things back to the new status without explaining and no sensible reasons (or I didn't get the point) when you're in a bad mood (or just getting the moment will to do so).
A topic has been defined here : http://forums.themanaworld.org/viewtopi ... =16&t=8639
If nothing happens, then I'll have the regret to stop maintaing it, and maybe that's what you want, but just tell me in a polite and non-sarcastic manner and I'll understand without a counter-thought.

Regards.

Re: A change in the organization of things

Posted: 22 Oct 2009, 07:49
by Bertram
Hi Elven,
So if I understood it correctly, all the developers are moving to manasource.org and we need to create a solid team to keep server.themanaworld.org up to date with development and correctly managed as a production server.
:arrow: I think Jaxad, Kage, Kess, ... already do the task among other I'm obviously forgetting. Is there a reason for this to change?

Regards.

Re: A change in the organization of things

Posted: 22 Oct 2009, 08:52
by Platyna
Splitting the project is pointless, community will go after developers and you will have to make GMs or deal with them yourself, so you will just make staus quo x2. Not to mention we can end like worldforge - multiple subprojects, all brain dead, no one knows what is going on and where it is going to.

I would suggest you to do not panic and simply do not involve into GMs and moderators decisions, living example is Jaxad, who should be only concerned in the development side of the the mana world server (eathena or tmwserv) and it will be fine - it was totally unacceptable that he was involving in my decisions and commenting them on public forums at all.

You already have powers into development forums - if something doesn't work here or someone has no access - let me know, Jaxad as a content developer has a full technical powers over eathena - which I do not control.

I do rarely involve in the development - I have resigned from content development to avoid problems and divide the role of community and tmw development.

So if you will cooperate and communicate me your needs then we can keep improving the situation. I can set eathena permissions, forum permissions or additional account on Platinum that can suit the needs of developers.

Regards.

Re: A change in the organization of things

Posted: 22 Oct 2009, 10:06
by Bjørn
Thanks for all your insights and especially also for raising possible issues with this change!

Crush, I don't think technical development and content development will stop encouraging each other even when more separated. You've seen yourself that also 3rd parties like Invertika push us to implement certain features. If anything, I think being connected to multiple independent teams will motivate client/server development further.

About keeping things clear for the player, I welcome your ideas about this. We've already made a first step I think in having the client download a server list for the player to choose from. To make this a bit more useful, the number of online users should be visible in this list, so that a new player can quickly see what the most popular servers are.
ElvenProgrammer wrote:So if I understood it correctly, all the developers are moving to manasource.org and we need to create a solid team to keep server.themanaworld.org up to date with development and correctly managed as a production server.

Anyone willing to join me on this task?
Elven, it's great news that you want to be part of that responsibility.
Bertram wrote:- This sounds as a logical question to me (but you never know):
Why use QT for the mana server monitor? I mean, why use such heavy dependencies for such an thin tool, around a server that shouldn't depend of such technology, or only optionally?
I know you want to remove the DAL and put QT instead and I still think it's a bad idea, removing a lot of flexibility for nothing better. Just my two cents and just to make things clear.
In fact the server monitor only depends on QtCore, a 1-2 MB library, and it uses it for threading, running processes and timing. I used Qt because that's what I know best, the code is easy to follow, and it's portable.

I think it makes sense to use Qt for the server too, but simply because I think it's easier to learn Qt and understand Qt code than to get familiar with a dozen independent libraries. I do admit that Qt for the client seems to make more sense than for the server, but then another issue is that we'd like to keep sharing as much code as possible between the client and server. I'm not sure what kind of flexibility you mean we're losing by using QtSql instead of our own DAL, please follow that up in a different discussion.

That said, I fully admit to just being a fan of Qt.
Bertram wrote:- I've been maintaining mantis actively for, let's say, two months or so, without great complains from you or anyone (or I didn't notice and I apologize). So, I'd like to get a clear and agreed workflow on how to do this, but, please, don't set things back to the new status without explaining and no sensible reasons (or I didn't get the point) when you're in a bad mood (or just getting the moment will to do so).
This was inconsiderate of me, I've replied in the topic you linked.
Platyna wrote:Splitting the project is pointless, community will go after developers and you will have to make GMs or deal with them yourself, so you will just make staus quo x2. Not to mention we can end like worldforge - multiple subprojects, all brain dead, no one knows what is going on and where it is going to.
I don't intend the player community to go after the developers and I don't think it will. For one, there won't really be a hangout for any player community on manasource.org. Of course, we don't want a situation like WorldForge either. This was also an issue raised by Crush, and I think we can make sure the player experience remains solid.

I'm not panicking, btw. The need for this kind of separation and the discussions date back at least a year, for example when I was talking with Tametomo of Aethyra. I believe it will allow us to gain more strength on both sides of the community (player community and development community).

Re: A change in the organization of things

Posted: 22 Oct 2009, 10:33
by Rotonen
ElvenProgrammer wrote:So if I understood it correctly, all the developers are moving to manasource.org and we need to create a solid team to keep server.themanaworld.org up to date with development and correctly managed as a production server.

Anyone willing to join me on this task?
Can I take this as you stepping up a bit again in the project? This is great news since I was worried I'd have to take charge of the entire TMW project which would take my time away from content development oversight.

I'll be still managing the content development of the project, but we need someone to manage the technical side of things: we need a TMW client for each TMW CR. Also having a server will be nice.

I'd say we need one client maintainer and one server maintainer for the time being. I would also say we'll be sticking to platinum and Platyna when it comes to hosting, if that is fine with her.

I propose we have dev.themanaworld.org, testing.themanaworld.org and server.themanaworld.org. Currently there should be a TMWServ running on dev.themanaworld.org and it should be rather broken.

Re: A change in the organization of things

Posted: 22 Oct 2009, 11:01
by Platyna
Well, then as you wish, however I really see no need to move elsewhere from Platinum. ;-) I never told you that you have get off my hosting because you don't do what I like (my attempt to resign was mainly because I felt that besides enormous amount of packets I have nothing - and remember that only profit I have from this profit is satisfaction).

Anyway do as you see fit.

Regards.

Re: A change in the organization of things

Posted: 22 Oct 2009, 11:31
by Crush
Bjørn wrote:About keeping things clear for the player, I welcome your ideas about this. We've already made a first step I think in having the client download a server list for the player to choose from. To make this a bit more useful, the number of online users should be visible in this list, so that a new player can quickly see what the most popular servers are.
Disclaimer: this concept is solely for windows users.

My idea was that we offer a NSIS installer template which can be easily customized by the admin of a server. It:
1. checks if the most recent version (or version recommended by the admin) of the Mana client is installed
2. If not downloads it from the internet and installs it. Otherwise the existing installation is used.
3. creates a branding file for the server
4. creates a shortcut on the desktop and start menu which starts manasource with a command line parameter causing it to use the branding file and skip the server selection

This installation and setup feels to the user who only wants to play one game like there is just this one server in the world and he has the client software especially made for it.

But a user interested in other servers can either run the installers for other servers to get individual shortcuts and brandings for them or just launch the mana client normally without a shortcut to get to the server selection with all (official) servers and try anotherone.

The downloadable installers will also have a very small filesize because their only payload is the branding. This will be an additional incentive for the user to try them (when they see that it is downloading 50 additional megs from the net they already overcame the hesitation to download and start the installation and will be unlikely reconsider).


I don't know much about distribution of Linux software, but maybe a similar system could be utilized on most distros by having server-specific installer packages which have the mana client as a required dependency.