Jump to content

[Work in Progress] QuantumCoreX


Recommended Posts

Welcome to Quantum Core X

a fork of the original Quantum Core:

 

Goal

The goal of Quantum Core X is not different than that of Quantum Core: To provide an alternative to hosting metin2 servers free and open source. The implementation however will be limited to a 2009~2014 Metin2 server. Its goal is not to compete with the latest and newest custom server implementations or the official server but rather an old-schoolish implementation which can be used as foundation for users to build their own server on top of.

 

History

Quantum Core used to be a C++ application but transitioned into using C# and .NET only. I created a fork a while back to apply my own coding style to the project. Since then several people found the project through Github's search/recommendation algorithm (no advertisement otherwise). The official discord has been transferred to me too by the original developer @ NoFr1ends

 

Community

I post this here as someone who has never really posted anything before. I'm unknown and don't care if people know my name or not. I want to deliver value to the community with implementing an alternative and documenting features of Metin2 itself (such as the packets).

With this post I want to advertise this project and let you know that we exist. You are very welcome to contribute, watch or otherwise engage with the project. Please refrain from sending private messages but rather ask questions publicly whenever possible make other people benefit from your thoughts too.


I tried to make the project as easy to setup as possible. However some parts cannot be made fully automatic as of right now, so bear with me here for now. For example I cannot tell you how or where to download a Metin2 client as this may be illegal as seen with the latest Yuzu emulator takedown from Nintendo. I'm not a lawyer. This is just a precautionary measure from me personally. I'd personally love to see Webzen to acknowledge this project and set some "offical borders" so we don't have to worry about legal stuff.

For this reason I may delete your contribution if it contains any original soruce code or other content that may be protected by Webzen or others. Please have understanding for this

It's also possible that this project "dies" on my hands. And this is fine. It did die on @ NoFr1ends hands and that's okay too. I forked it and revived it. That's the spirit of open source. Feel free to fork it. Just remember to apply to the license. There's also a project that's already heavily inspired by our project: Open Mt2 - I love it

State of the Implementation

Our roadmap: https://github.com/MeikelLP/quantum-core-x/issues/98

At the time of writing this post the implementation is a very limited but solid implementation of the Metin2 server. It's intentionally simple implemented as of right now to make it easy to hop onto the project. Current features include but are not limited to:

  • Logging in
  • Creating players
  • Moving around
  • Attacking mobs
  • Several commands
  • Auto Spawning of NPCs (regen)
  • Basic guild features
  • Chat
  • Inventory/Items/Equipment
  • Some skills
  • Leveling

I'm currently implementing a "single" executable project which makes hosting a metin2 server as easy as running 1 executable file. This is not recommend for production use (when we get there someday). I will later provide a guide on how to run it but for now you will have to stick to the developer setup guide (as it's the only target audience as of right now).

The application is not in a stable version and can't even be considered an alpha but it's also no longer a proof of concept or minimum vial product.

 

The Future

We are currently trying to implement all features planned for milestone 0.1 to enter the first real development stage: The alpha. With entering the alpha the project will be a somewhat stable product to extend upon. The foundation will be there and developers should easily implement more features.

The 1.0 release will be a stable product and should have everything that you would expect from an old-school Metin2 server. The API should be stable and breaking changes will be documented and well communicated. Some updates may be posted here but all updates will be posted on the Github repo and on our Discord. Feel free to watch them

 

License / Price

The source code is licensed under the Mozilla Public License which requires you to also publish your modification if you make changes to the source code thus contributing to the community. However there will be a way to implement custom plugins/extensions which are not required to be open source similar to how the Linux kernel is licensed. When you will host a server you will not be required to open source any of it as long as you don't modify it  don't worry. This is similar to other MMO open source projects licensing models (see https://github.com/azerothcore/azerothcore-wotlk for World of Warcraft and https://github.com/modernuo/ModernUO for Ultima Online).

 

Technical Details

Since I overtook the project I implemented several known best practices of the .NET world like Dependency injection and usage of commonly used libraries such as all Microsoft .NET libraries. This improves developer experience especially for C# developers as these are industry standards. The project currently uses .NET 8 (LTS) but I will always try to use the latest runtime to use the latest features and performance improvements.

The projects first platform is docker thus "cloud native" or "cloud first". However I believe that cloud is not always the best solution and the project is and will be always "choose your own hardware" and docker is not a requirement but rather the "convenience default".


Some key facts (2024-11-10)

Spoiler
  • Github Stars: 39
  • Contributors (inlcuding Quantum Core): 15
  • 906 Commits

68747470733a2f2f7374617263686172742e6363

 

Closing words

Feel free to ask me any question. I'd love to hear your thoughts on this. Just remember to be nice 🙂

Edited by Metin2 Dev International
Core X - External 2 Internal
  • Love 1
  • Love 3
Link to comment
https://metin2.dev/topic/33204-work-in-progress-quantumcorex/
Share on other sites

  • 1 year later...

Sadly I have to say goodbye to this site. Sadly I cannot change my email address to anything not Google. I don't use Google anymore so I don't even have access to the email inbox linked to this account. This is unfortunate but support here is basically non existent.

Saying farewell to this forum. You can't ban me because I'm closing my account myself.
 

The project will stay available over at Github and maybe some other forums.

  • Love 1

Don't use any images from : imgur, turkmmop, freakgamers, inforge, hizliresim... Or your content will be deleted without notice...
Use : https://metin2.download/media/add/

Please use https://metin2.download/ when uploading files smaller than 100MB, otherwise the approval will take longer due to manual upload.

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
×
×
  • Create New...

Important Information

Terms of Use / Privacy Policy / Guidelines / 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.