sudlud 0f82c8e8dd fix(Core/Events) Implement Fireworks Spectacular (#18860)
* init sql file for fireworks spectacular - add entry in game_event

* add missing delete statement

* add gameobjects 180698 'Party Table, 180699 'Festive Keg, 180700 'Hay Bale 1'

* update comment, add gameobject 180754 Toasting Goblet

- todo: pooling (?) - the tables are quite full
- todo: why are there tables missing? e.g. below:
.go ga 82615

* add gameobject 180905 'Festive Mug'

* add gameobjects 'Firework, Show, Type%'

* add vendors

* add revelers and bruisers

TODO: also add 15906 'Ironforge Reveler'

* remove '%Firework Show%' spawns

- these will be spawned temporarily via script

* add firework gameobject SmartAI

* WIP stormwind fireworks show

steps to test the show:
.go xyz -8984 498 96 0
.gob add temp 180749

* improve handling of fireworks show, add gameobject 180749 'Cheer Speaker' spawns

how to test:
.go ga 64640
.event start 72

* prepare fetching correct show based on map+zone

* introduce typedef for FireworkShow

* Add Teldrassil show

.go ga 64651
.event start 72

* fix Teldrassil and Stormwind shows, add initShow() debug message, replace magic numbers for fireworkShow sizes

- these were broken due to an error in my txt parsing script

* add Shattrath show

.go c 139914
.event start 72

* add Silvermoon show

.go ga 64670
.event start 72

* add Booty Bay show

.go ga 64630
.event start 72

* add Thunder Bluff show, add Exodar show, set firework gameobjects active, update comments, remove _maxCount

* add Underciy show

.go ga 64641
.event start 72

* fix Undercity show indexes

* move code from midsummer.cpp to new file firework_show.cpp

* add Orgrimmar show

.go ga 64647
.event start 72

* add Ironforge show

.go ga 64634
.event start 72

* update shows from sniff parses using fixed export script

* update 'Party Table, 'Festive Keg' and 'Hay Bale 1' spawns with additional sniffs

* update 'Toasting Goblet' spawns with additional sniffs

* update 'Festive Mug' spawns with additional sniffs

* update 'Fireworks Revelers' spawns with additional sniffs

* remove duplicate AND from sql file

* attempt moving FireworkShows to the heap

* start firework show at the full hour and also handle late starts correctly

- also perform a minor cleanup

* do not touch gameobject with guid 16586 which is linked to harvest festival

* move firework_show.cpp to subfolder firework_show

* move firework_show arrays to seperate header files

* update show handling, still not final

* update for new struct design, Teldrassil show running correctly already

* update remaining shows for new firework show structs

* rename go_cheer_speaker to go_firework_show

* update debug / error messages

* update all firework shows for local spawnIndex handling

* spawn 'Toasting Goblet's for 10min after show ende

* add reveler SAI and make revelers cheer on show end

* remove log_error messages

* add comment for festive mugs

* Update firework_show.cpp

* add missing include for uint32

* replace an uint32 with an int

* revert unintended changes in midsummer.cpp

* add #include "GameObjectScript.h"

* remove ThunderBluff Reveler spawns with wandering movement

- these probably should have waypoints instead or just got parsed incorrectly
- it should be safe to remove these for now and probably investigage this further later on

* update function names
2024-05-12 18:39:14 +02:00
2021-06-15 11:02:48 +02:00
2023-02-20 21:10:00 +00:00
2023-01-01 11:06:21 -03:00
2018-07-15 22:51:17 +02:00
2016-06-26 10:39:44 +02:00

logo AzerothCore

Contributor Covenant CodeFactor StackOverflow Discord

Build Status

nopch-build core-modules-build windows-build macos-build docker-build

Introduction

AzerothCore is an open-source game server application and framework designed for hosting massively multiplayer online role-playing games (MMORPGs). It is based on the popular MMORPG World of Warcraft (WoW) and seeks to recreate the gameplay experience of the original game from patch 3.3.5a.

The original code is based on MaNGOS, TrinityCore, and SunwellCore and has since then had extensive development to improve stability, in-game mechanics, and modularity to the game. AC has also grown into a community-driven project with a significant number of contributors and developers. It is written in C++ and provides a solid foundation for creating private servers that mimic the mechanics and behavior of the official WoW servers.

Philosophy

Our main goal is to create a playable game server, offering a fully working in-game experience.

Here are the main points we focus on:

  • Stability

    • We make sure all changes pass the CIs before being merged into the master branch.
  • Blizzlike content

    • We strive to make all in-game content to be blizzlike. Therefore we have a high standard for fixes being made.
  • Customization

    • It is easy to customize your experience using modules.
  • Community driven

    • AzerothCore has an active community of developers, contributors, and users who collaborate, share knowledge, and provide support through forums, Discord channels, and other communication platforms.

Modules

AzerothCore is designed to be highly modular, allowing developers to extend and customize the game to suit their preferences or create unique gameplay experiences. This flexibility enables the addition of custom features, content, and modifications.

We have a lot of modules already made by the community, many of which can be found in the Module Catalogue.

Installation

Detailed installation instructions are available here.

Contributing

AzerothCore can also serve as a learning resource for aspiring developers who want to understand how WoW servers work, how MMORPGs are structured, how game server emulators are created, or to improve their C++ and SQL knowledge.

If you want to contribute to the project, you will find a lot of resources that will guide you in our wiki.

We also recommend you read our Contributor Covenant Code of Conduct.

Feel free to join our Discord server.

Click on the " Star" button to help us gain more visibility on Github!

Authors & Contributors

The project was born in 2016 based on SunwellCore. Unfortunately, SunwellCore was published without any git history, so on git there are no credits for all the contributors before 2016.

You can check the authors file for more details.

License

  • The new AzerothCore source components are released under the GNU AGPL v3
  • The old sources based on MaNGOS/TrinityCore are released under the GNU GPL v2

It's important to note that AzerothCore is not an official Blizzard Entertainment product, and it is not affiliated with or endorsed by World of Warcraft or Blizzard Entertainment. AzerothCore does not in any case sponsor nor support illegal public servers. If you use this project to run an illegal public server and not for testing and learning it is your own personal choice.

Special thanks

JetBrains is providing free open-source licenses to the AzerothCore developers.

JetBrains

Languages
C++ 92.4%
C 5.3%
Shell 1.3%
CMake 0.7%
Python 0.2%