Code Monkey home page Code Monkey logo

azothacore-rs's Introduction

Azothacore

Azothacore is an attempt at rewriting an World of Warcraft emulator based on TrinityCore/Azerothcore tagged to version 7.3.5 (rev 269672), using Rust.

7.3.5 source reference is based on TrinityCore's 7.3.5/269672 release.

Referencing Database files notes from here: https://github.com/TrinityCore/TrinityCore/commit/7f2b7dc9c2165d2608742473a931f55b1c1a753a

It is completely open source and still a work in progress; Community involvement is highly encouraged.

Run the following to clone the repo, including submodules.

git clone --recurse-submodules [email protected]:lohvht/azothacore-rs.git

Requirements

Ensure that you're on a NIGHTLY toolchain for rust as the project uses a few features that are not stable yet.

There are several other dependencies required to compile this project other than a nightly build due to the project's dependencies on non-rust components. These are the crates in the crates/ directory ending with -sys. As well as recastnavigation-sys

These are the following requirements needed at the moment:

  • cmake
  • clang
  • C/C++ compiler

For casclib-sys, Cmake and a C++ compiler is required to compile CascLib while clang is required to parse the C++ headers to generate bindings to CascLib.

A C++ compiler and clang is also required to compile recastnavigation-sys.

TODO: FILL THIS IN WITH CMAKE/C++ REQUIREMENTS AND TEST OUT BUILDS FOR WINDOWS/Other Systems

Roadmap checklist (To be updated as it goes)

  • Extractors/Generators
    • Map & DB2
    • Vmap4 Extractor
    • Vmap4 Assembler
    • Mmap Generator
  • CI/CD helpers
    • Database pending updates / archive / etc (to prevent clashes)
    • CI lint / format
    • compile check for windows / linux / macos
    • Tests + Coverage
      • Coverage backbone code
  • Authserver netcode
    • Login REST service
    • Auth session handling
    • SSL/TLS cert patching / override
    • Test can login to login screen in UI
      • Can login and see RealmList
  • Loading game assets
  • Loading DB fixes
  • Migrations / DB reloader
  • Worldserver netcode
  • ...

Special Thanks

Special Thanks goes out to the authors of the following World of Warcraft emulators for providing a source to reference for this following implementation

azothacore-rs's People

Contributors

lohvht avatar dependabot[bot] avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.