Giter Site home page Giter Site logo

den13501 / tbcmangos_hgcore Goto Github PK

View Code? Open in Web Editor NEW

This project forked from tbcmangos/core

0.0 0.0 0.0 113.06 MB

License: GNU General Public License v2.0

Shell 0.02% C++ 78.66% Python 0.03% C 19.49% PHP 0.01% Objective-C 0.02% D 0.03% Assembly 0.03% Pascal 0.22% Makefile 0.34% HTML 0.55% CMake 0.35% LLVM 0.01% Batchfile 0.01% Yacc 0.04% M4 0.01% Dockerfile 0.01% Roff 0.19%

tbcmangos_hgcore's Introduction

######################

Disclaimer2020

######################

CI build

This core is a server emulator for World of Warcraft: The Burning Crusade. The server serves full world content including authentication & scripts support. Compatible with World of Warcraft client 2.4.3(8606). As you can see it is based on hellgroundcore which had stopped for 4 years. if you dont familar with the background below is the timeframe of each emulator.

the original hellground pserver was a very good server and was stopped around 2016, Looking4Group pretty much using the same HellgroundCore and adding/fixing a few stuff. I was able to merge Looking4Group fixes into HellGroundCore but majority code still HellGroundCore, A lot of the structures are very similar to MaNGOS, as it is based on TrinityCore 2009.

although hellground lived for 8 years, this public source still filled with problems and bad code and should not be used in a production server. A lot of effort was put into the content, so it may still a good source for dev/learning purpose.

The orignal source has been tested on Ubuntu and compilled with gcc4.8, and with windows2010 project files that you can compile under windows and running smoothly. The current source has been upgraded to support cmake, and tested under vs2017 to 2019, both x86/x64 debug and release build works. it also works for centos7 and ubuntu18, i forgot which ubuntu it works but will update read me.

This is an eductional project for people to learn stuffs like server/communication/c++/cmake/sql/travis. also enjoy the good tbc memory back in the day. my plan for now is to do below at spare time and maybe later fixing some game content and such.

    • fix cmake for windows
    • merge script system into core
    • upgrade core to latest compiler
    • attempt to learn the framework and compare with latest mangos/trinity functions
    • interact with travis with multiple build and some more research
    • fix bugs etc..

how to compile

notice for windows

  • uncheck ACE_USE_EXTERNAL to compile use dep/acelite
  • uncheck USE_STD_MALLOC
  • after compile copy libmysql.dll libeay32.dll libssl32.dll tbb.dll tbbmalloc.dll

notice for linux

  • install tbb and ace lib
  • in centos7 it is easier to add -DACE_USE_EXTERNAL=0 to use internal ace
  • for ubuntu can just install the libace-dev and use default -DACE_USE_EXTERNAL=1(no need add, it is default on)

tested x86/x64 vs2017 debug and release both works, RelWithDebInfo fails.

###################### #HellGroundCoreLegacy # ######################

HUGE thanks to the Hellground.net team for temporarily going open-source with their project in 2014

If the Wiki is ever down, there is a dump of the entire website zipped into the repository.

Why use HellGroundCore?

The common cores like MaNGOS and TrinityCore were abandoned in 2009, in favor of developing 3.x emulation. They were later taken on again by different forks like OregonCore and SkyfireOne. Even MaNGOS eventually resumed development.

However, they mostly received some update to their libraries and not many of the quality code base was taken and backported to those forks. As a result, the public emulators are in a fairly bad state of playability.

HellGroundCore was developed by the team behind the server for players expecting no gamebreaking bugs. It is fairly stable and a great base - only if you're starting development from scratch.

That's 5 years of development other servers don't have. Yet you shouldn't expect something mind blowing. A lot of the structures are very similar to MaNGOS, as it is based on TrinityCore 2009. It comes with some custom systems as well as improved debug handling/logging and GM permissions and other smaller features like Recruit A Friend.

Downsides

  • Old libraries, especially since this fork hasn't been updated for 2 years
  • 64 bit compile under Visual Studio currently doesn't work out of the box
  • Not necessarily compatible with fixes ported to cMaNGOS-TBC, OregonCore or TrinityCore2 due to being in closed development for so long

#Compile in Windows If you intend on compiling it in anything but 32 bit, you will need to use CMake as suggested here.

Disclaimer:

If you prefer compiling your own dependencies, they can be fund under dep/include/*. These have the correct versions, so that you don't have to worry about conflicts with precompiled binaries you may be using!

You can find OpenSSL as an installer for Win32/64 here You will also need to make your version of Visual Studio compatible with the 2010 64 Bit Compiler

CMake expects ACE, MySQL and TBB (if you want to use the latter) to be under dep/lib/*, if you aren't using external libraries. There are already precompiled libraries you can find under dep/lib/precompiled/Release.

Either edit CMakeLists to your liking or provide MySQL or put your MySQL libraries under dep/lib/[x64_release|win32_release]/*.

tbcmangos_hgcore's People

Contributors

lukaasm avatar tbcmangos avatar koostosh avatar siarkowy avatar paradox avatar worlther avatar sharm avatar henhouse avatar coolzoom avatar schaka avatar hellground-tbc avatar deadsandro avatar litr avatar zaeouh avatar antonraiev avatar siof 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.