Let's start a new project?

Let me first be clear on one thing: I do really appreciate this project, its history and developers and all the efforts that have been made with time to make it so great during all those years.

But currently WoW development is slowly dying, and I feel a big change is needed in order to bring back that entusiasm that is no longer here.

The current state of the project has some major pain points:

  • CONTENT. All the content after WOTLK is not stable or complete, so it doesn’t add much value to keep what we currently have on master branch;

  • CONTRIBUTORS. We have less and less contributors, there is no much hope to see the master branch fully playable in future

  • CODE. The code is full of anti patterns (huge class files, spaghetti code, etc…). This is mostly due to the fact that the codebase has been modified for years and years by many different people. Because of that, it is really complicated for newcomers or less experienced programmers to be able to contribute;

  • TESTS. There are no tests. At all. No unit test, no integration tests, etc… It is nearly impossible to be sure that you don’t break something whenever you make a change in the code;

  • API/TOOLING. There were some attempts on providing tools for TC (which I really appreciate), however most of them rely on accessing the DB directly OR using external PHP APIs that are not standardized by the project and tend to break easily with time (e.g. when the DB structure changes). Ideally the application server itself should expose the API, or the API project should be part of the official project and be maintained with it;

All those reasons, together with the fact that C++ is an old language and there are better modern alternatives make me wonder:

why don’t we start a new project from scratch, using a modern language? (for example Rust - see this post). So we can use the experience gained during all those years of WoW development to create something that works better, is more developer-friendly and can attract more contributors.

I write this post to see if this can be of interest for any of you, please let me know what you think.

No.

@Influencer you can do that any time https://locka99.gitbooks.io/a-guide-to-porting-c-to-rust/content/

I agree. You should make a start on a new project. You’ll probably get a lot more interest then.

However, if you’re going to use the stable branch, which is pretty stable in my experience, are you really going to get that much advantage out of rust? (I’ve never used it.) If not, maybe you’d be better off trying to set up tests, etc. for the existing code.

Do you mean the target WoW client version?

Glad to see this forum is still going strong :slight_smile:

You really want to get more people into emulation by literally rewriting everything and breaking everything AND expecting professional coding standards from an open source community project? Please wake up. This wont happen. You cannot invite less experienced people while expecting them to work like a master-degree full-time nerd.

Considering the fact that most people just left the emulation scene because they have grown up, changed their life or went private special snowflake mode your suggested changes will have no positive impact at all. Even if the core would make it until there most people would just leech it and do private projects as they always do.

I understand your point of view. I’m just writing this to understand if there are people out there who would be interested to come back into wow development if there was such a new project to work on. Being the only one who thinks so can also be a possibility, but I never knew if I did’t ask around =)