Jump to content

New MangosZero Branch available for testing


antz

Recommended Posts

Hi Everyone, I have just created a new branch in the mangos Zero repo called Rel19.

- I urge you all to take a look and attempt to build it and report back any issues.

There are a lot of updates and i'll compile them for a release note later.

But for now... First off the main changes.

The Build system has been reverted back on the pre-cmake on windows version.

- There are multiple reasons behind this which are documented elsewhere.

- I have also done some serious redesigning of the existing build system to fix the numerous hackfixes in place for visual studio.

To that end, all the extractors now use the standard mangos dependant libraries rather than their own outdated ones.

A clean output folder will now mean that you can build the map extractor.

- All projects now build in 64Bit as well as 32Bit

- VS2013 support available for all projects

- Build time for windows down from 50+ mins to about 5mins

- There are now some additional helper solutions for windows users:

In the win folder there is a 'BuildEverything' solution, this builds the core AND all the extractors

In the src/tools folder there is a 'BuildTools' solution, this builds all the extractors.

Currently scripts still need to be built separately, but I am still working on that.

I have done extensive testing on the windows versions using vs2010,2012 and vs2013.

- however, I have only been able to perform minimal testing on Linux - so would appreciated as much help there as possible.

Anyhow build and enjoy, please log any issues here or contact me direct.

The current deadline for Rel19 'Luda's Legacy' to go live is now the 31st May 2014

Link to comment
Share on other sites

I will try it on Debian in a bit.

*UPDATE*

Building now. I did get this right off the bat, but it is still compiling.

Generating build information using aclocal, autoheader, automake and autoconf
This may take a while ...
libtoolize: putting auxiliary files in `.'.
libtoolize: copying file `./ltmain.sh'
libtoolize: You should add the contents of the following files to `aclocal.m4':
libtoolize:   `/usr/share/aclocal/libtool.m4'
libtoolize:   `/usr/share/aclocal/ltoptions.m4'
libtoolize:   `/usr/share/aclocal/ltversion.m4'
libtoolize:   `/usr/share/aclocal/ltsugar.m4'
libtoolize:   `/usr/share/aclocal/lt~obsolete.m4'
libtoolize: Consider adding `AC_CONFIG_MACRO_DIR([m4])' to configure.ac and
libtoolize: rerunning libtoolize, to keep the correct libtool macros in-tree.
libtoolize: Consider adding `-I m4' to ACLOCAL_AMFLAGS in Makefile.am.
configure.ac:5: installing `./config.guess'
configure.ac:5: installing `./config.sub'
configure.ac:8: installing `./install-sh'
configure.ac:8: installing `./missing'
bindings/python/Makefile.am:5: installing `./py-compile'
Now you are ready to run ./configure

Are those lines "configure.ac:8" errors?

*UPDATE*

Well, we have our first error!

Scanning dependencies of target libmpq
[ 34%] Building C object dep/libmpq/CMakeFiles/libmpq.dir/libmpq/wave.c.o
[ 34%] Building C object dep/libmpq/CMakeFiles/libmpq.dir/libmpq/extract.c.o
[ 34%] Building C object dep/libmpq/CMakeFiles/libmpq.dir/libmpq/huffman.c.o
[ 35%] Building C object dep/libmpq/CMakeFiles/libmpq.dir/libmpq/mpq.c.o
/usr/src/zero/server/dep/libmpq/libmpq/mpq.c:22:20: fatal error: config.h: No such file or directory
compilation terminated.
make[2]: *** [dep/libmpq/CMakeFiles/libmpq.dir/libmpq/mpq.c.o] Error 1
make[1]: *** [dep/libmpq/CMakeFiles/libmpq.dir/all] Error 2
make: *** [all] Error 2

Missing a configuration file for libmpq during the build process.

Link to comment
Share on other sites

I have been insanely busy lately and had little time to work on MaNGOS. I should be slowing down this week or next week and will resume working on Zero. Also, why are Zero and One on hold? I thought the plan was to get a polished Zero, use that base for One, get a polished One, and so on and so forth. It doesn't make sense to me to start at the current ones and work backwards.

Link to comment
Share on other sites

Because we have very few devs to do any work. At this point, it's either prune things back or let the whole tree die. Trying to spread a handful of guys around 15 projects is ludicrous. And let's not forget there's yet another expansion coming this fall. Unless matters improve, Two is next on the chopping block.

I fail to see why any of you would be surprised at this.

Zero and One are not gone, just put in mothballs until we have enough devs to support all of our projects. You can still work on patches, but push access to the closed projects is suspended as of now.

Official development is being focused on newer cores, where it makes the most sense. The entire idea of "making Zero 100%" then porting forward the work was a bullshit idea put forth by TheLuda to justify putting all our resources into Zero because he didn't care about anything else. We've been working like that for two years and all we've succeeded in doing is letting the cores newer than One fall into disrepair. Leeching nearly everything from Cmangos and calling that "development" for WoTLK is shameful. That we still do not have a decently working Cata server and can't get past the login screen with MoP is downright embarrassing. The time for pet projects is over.

The majority of our end-users expect a working Cata or MoP server. Not giving that to them is suicide, guaranteeing they will go elsewhere to find them. MaNGOS is supposed to be a community effort, not some private club where we ignore our user base and do whatever the hell we want. Until we have a more robust Dev Team, this means working on things you'd rather not for the greater good of MaNGOS. If you fail to see this, then we're over before we've had a chance.

If any of you know how to add lots of devs to the team in a big damn hurry, then we can consider reopening closed projects. We can't rely on the trickle coming in from new members wanting to work with the projects. Half of them have already disappeared while the other half have little experience and no mentors to teach them.

Next time I push about recruiting more developers, somebody had better listen! :mad:

Link to comment
Share on other sites

Well to be honest, I hate everything post-LK. I do not care a bit about the failures after LK, and if the kiddies want those failures, they can play them now. I cannot play the original, balanced release any more. I cannot play just BC or just LK.

As far as Luda is concerned, that may be true, but it makes logical sense. Assume we have a fairly good version of Zero. One is just Zero with a new set of talents and some other minor changes. Going from start to finish seems logical as hell to me. Two is just one with another set of talents as well as vehicles and some other stuff. We can keep building on existing code, but going from a functioning Four or Five to Zero won't work as well due to not just stripping code for things like vehicles and flying mounts, but also because so much has changed since then. I do not agree with that style.

Link to comment
Share on other sites

At the end of the day, As I stated in the original post - If someone wants to continue development of Zero and One, I have no problem with that.

But faced with the situation where none of the current mangos devs wanted on work on Zero, plus requests to the community for additional help have met with nothing.

- In a way the community have spoken !

Any major missing functionality and enhancements (like formations etc.) will be backported to Zero and One once complete.

Link to comment
Share on other sites

Alright, but it still makes no sense form a logical standpoint. It's like building an engine and assembling the block before you put the pistons and rods in. We're going from tackling Zero/One/Two which are fairly well done, to tackling the latest incarnations which are 99% not done. This pushes EVERYTHING back eons. Instead of finishing the ones almost done, they now wait years for what could be done in months. It makes no sense and I fear we'll suffer losses due to this, but I'll stick around and see what happens. I'm going to remain in Zero and then move to One.

Another way to look at this is that you don't fly before you run, you don't run before you walk, and you don't walk before you crawl. We're starting off trying to fly without crawling.

Link to comment
Share on other sites

You're making the assumption that the plan was the only way. Long before TheLuda got onto the Zero track, MaNGOS development was always focused on the latest expansion, with code backported to older cores where applicable. It worked quite well for many years.

When you get down to it, porting forwards or backwards amounts to the same thing. The critical difference here is we're losing our user base with this obsession to finish old, outdated cores in which fans have little interest. Without them, we have no project just a private coders club. In which case why bother with having a website and forums at all? Additionally, there is very little chance of obtaining the complete data on clients dating from 2005 and 2008, so Zero and One will most likely never fully replicate retail play.

It boils down to having to pick our battles to keep MaNGOS alive as a project and a community.

Link to comment
Share on other sites

Initially I didn't want to interfere into this discussion here, but now I want to bring out some point, which should be considered into the decision of abandoning the old projects.

Additionally, there is very little chance of obtaining the complete data on clients dating from 2005 and 2008, so Zero and One will most likely never fully replicate retail play.

Just because of this fact that the chances are fading to gather data of these expansions it is necessary to push these projects as far as possible as long as there are still possibilities to obtain proper data.

With Cataclysm and the reworking of the old areas (Kalimdor and Eastern Kingdom) it is already too late for MaNGOS Zero. But not for MaNGOS One. The starting zones of Blood Elves and Draenei and the Outland as well are still available on retail and nearly unchanged from 2008. We should use this as long as it is still available.

With every upcoming expansion these areas are in danger of receiving a rework as well. And if that happens, then you can slow down the development. Because then it doesn't matter anymore of fast progress or gathering as much data as possible, because everything (references on retail servers) is gone and will never return.

Just some thoughts, which might worth considering.

Link to comment
Share on other sites

Sadly even TBC is badly affected now, since blizz decided group quests were a bad idea in outland and nerfed them to be solo quests.

As it stands, up until year ago when a dev focussed on Zero, it had been dead for many years.

Many of the fixes in Two and Three have not been ported back to Zero and one.

besides, a majority of the issues are db based now.

This whole lets get Zero 100% idea has destroyed the other cores due to neglect.

- a better approach is to work on more current cores where information is still available and backport to the older cores as required.

@Zen - If you want to head up the dev effort on Zero, I don't have an issue with that.

Since Jan I have virtually the sole dev on Zero, I had to switch from Four to Zero to attempt to sort out the windows build mess.

Once this release has gone out, I have no desire to continue on it and NOONE has come forward to offer to take over from me on Zero.

- The situation on One is even worst.

I feel a little aggrieved that Four (MOP) development (While we still have an active live server to work with) has had to suffer to sort out a dead core.

Link to comment
Share on other sites

I can totally understand that. Since Zero does appear to be stable in the *nix world, I'm thinking about using that as a first solid attempt to port to BSD. So, now that I have finally made up my mind on this topic, keep an eye out for M0BSD. ;)

Link to comment
Share on other sites

@wolverine

I'm rooting for you, bro! I honestly believe you've got what it takes to make Zero work with BSD. I can hardly wait to see "BSD Lead" attached to your Developer title. ;)

Regarding the protests:

As a witness to the events and sharing many late-night discussions regarding development, I can attest to the fact that Antz has bent over backwards to fix up Zero as best he could, to leave it in good shape for the day when we do have enough devs for our projects. He insisted on cleaning up the mess TheLuda left behind so future devs would not have to face the same problems. That Antz was doing all of this alone made it a Sisyphean task for which he's seen little thanks. I think that says a lot about the integrity and character of the man who is the new father of MaNGOS. He's done nothing but right by all of us.

I expect there will be a similar level of whining when another core is closed, in direct proportion to the lack of commitment the project had. If you haven't already stepped up to support Zero or One, then you have no right to bitch.

Since there's been no recent posts in response to the original topic, it's time to move on. There's work that needs to be done if there's to be a MaNGOS at all.

Link to comment
Share on other sites

I have been in and out of town for three weeks and missed a lot of this, so forgive my late reply. I only want to point out that Zero is broken as heck on Linux and that I am not sure what is so hard about finishing Zero (in response to having no chance of doing it) since I have found the info I need online without too much issue. I will continue working on Zero, but since I became an active developer I have had a broken piece of code I cannot figure out, and I have blown hours and hours into this. If I had some working code, I could add or improve it, but as it stands I am still working out the whole scripts issue. I will be around more now however, and will continue my work.

Again, sorry for the late response. Being the head IT guy during a busy season leaves me little time to myself. I actually started work today at 7:30 and got off around 18:30. Nature of the beast!

Link to comment
Share on other sites

Apart from the few remaining core issues and missing functionality, most of the issues are database related.

- Formations and Group Loot are the two big features missing from all the cores

I am hoping that we can get these features implemented soon.

- Since the cores share over 80% of the same code, copying the changes between the cores is a fairly minor job.

By focusing on Zero so much and getting virtually no user feedback, we have neglected the other cores.

This situation is only going to get worse unless we truly focus on the areas where the interest is.

- MOP for example has six months left before it is replaced, we currently do not have a database and working server

When it's gone, it's gone - and we are then forced to reply on historic information only.

I am happy that you want to push Zero forward. For me, one of the frustrations is that I am not a linux man - so I am not always able to check everything i do.

Rel19 is a big step forward for Zero and I hope to bring the changes made there forward to a new release of One.

Historically mangos shot itself in the foot a little by initially only supporting a single core / release.

MangosTwo is our most advanced core with the others in various states behind them.

I am happy to work with you to get the final issues of Rel19 resolved so that we mark that is the new baseline version

- But we need people to install and test this as much as possible !!

Link to comment
Share on other sites

I can totally understand that. Since Zero does appear to be stable in the *nix world, I'm thinking about using that as a first solid attempt to port to BSD. So, now that I have finally made up my mind on this topic, keep an eye out for M0BSD. ;)

Hi Wolverine, did you make much progress with this ?

- If would be nice to have this added to the Rel19 'Luda's Legacy' Release, which is due to go live on the 31st May 2014

Link to comment
Share on other sites

Unfortunately, due to real life, the going on my end has been slow. I do need to get a little bit of help on my end, though. I need to redownload rel19 and try to compile it later today on my BSD machine. I can get as far as running CMAKE and all that jazz, but when I try to initiate the first make command, it runs most of the checks and freezes at one check in particular, which as near as I can tell, is a memory management check. I'll get you the real check in a little while and hopefully we can get it one step closer to compiling in the BSD world. ;)

EDIT: Alright. This is a fresh install of FreeBSD, btw. So it may take me a little while yet to get fully functional again. I got gnome up and running,at least, and that was a nightmare under BSD. ;) LOL

Either way, I have had to install git and cmake so far. And now hopefully I can get into that nasty freezing scenario in a moment and get y'all some concrete info on my issue. :)

EDIT: Alright. Just got a cmake done with rel19 and there were no errors, except for my typo...

/~/mangos-server

After I realized that mistake, I busted up laughing.

Link to comment
Share on other sites

Alrighty. Make crashed a little differently. I have to clean up my log file of the make output real quick, but then I'll be able to read it for myself in the peace of Word and pastebin the rest that doesn't make any sense to me whatsoever. :) Plenty of edits to follow.

Edit: Alrighty. You know, I thought there would be more to the log file, but there is not. It's crashing in the tbb pre-req. I don't know yet if this is stricly a bsd issue or an environmental issue, but here is the log. Didn't need pastebin after all. Not long enough. ;) LOL

 [  3%] Performing build step for 'TBB_Project'

make[3]: stopped in /usr/home/wolverine/mangos/server/dep/tbb
*** Error code 1

Stop.
make[2]: stopped in /usr/home/wolverine/mangos/server/obj
*** Error code 1

Stop.
make[1]: stopped in /usr/home/wolverine/mangos/server/obj
*** Error code 1

Stop.
make: stopped in /usr/home/wolverine/mangos/server/obj

Woops. Wound up pasting like 20 times cause my computer slowed down for now reason. ;)

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. Privacy Policy Terms of Use