Giter VIP home page Giter VIP logo

summit's Introduction

๐Ÿ” Summit

World of Warcraft 3.3.5a server emulator - Written in purely GO

"The climbers reached the summit of the mountain after a long and challenging journey."

GitHub go.mod Go version go workflow GitHub top language Lines of code GitHub GitHub last commit

Modules:

  • Authentication/Realmlist server [summit-auth]
  • World Server [summit-world]
  • WoW Database converter [datagen]
  • Proxy (actually a worm) [serworm]
  • Packet dumper

Only for fun/education purposes

This project is just a tiny fun project, my free-time fun with GO & Ghidra. I really love this programming language and I've decided to rewrite my abandoned project that I wrote ~15years ago in C++ (that was the original summit emulator for burning crusade) later became Ascent -> ArcEmu โ˜  -> AscEmu

This project will be pure fun, writing the emulator from scratch after +15years experience ๐Ÿ˜ˆ

Goal: A fast running emulator that is stupid easy to compile and setup, as well as easy to mod.

How to run/develop

The project contains a Makefile which is parameterized to build the project with go 1.20+, the binaries will be placed in bin/ folder. Later I'm planning to create a goreleaser pipeline for github actions to provide some instant binaries too.

make && cd bin && ./summit && cd ..

The DBC stuff? Hmm... I have an idea to load the dbc in a different way than before. If you check the package:

Community

Developers:

I have an architecture in my head how this tiny project will change the ๐Ÿ—บ and I'll document it here soon, but feel free to fork this repository and have fun.

I'm got some existing parts from emulators:

Thanks to these communities for the research! ๐Ÿ™

Why Wotlk?

Because I'm preferable to it. I left the WoW community with this version, so I've decided to jump back in time. And as a linux lover: it runs well on it, so I'll have a lot of fun ๐Ÿง

Plans/Ideas

  • easy to implement/pluggable packet(handler) system
  • Some scripting interface (js maybe) to script the dungeons
  • exportable metrics
  • clustering
  • administation interface with gRPC connector
  • federated auth server (one authentication server, anyone can join with a custom server)
  • Kubernetes ready scalable world
  • Binary file based database no 3rd party sql needed (WIP)

If you have any question, feel free to contact me:

[email protected] | gophers.slack.com/#wow | fb.me/

PR-s are welcome!

Made with โ™ฅ by @paalgyula

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.