Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[EPIC] Align DB structure to TrinityCore #1118

Open
FrancescoBorzi opened this issue Dec 17, 2018 · 5 comments

Comments

@FrancescoBorzi
Copy link
Member

@FrancescoBorzi FrancescoBorzi commented Dec 17, 2018

Note: I'm opening this in order to finish the work previously started here: #236

This is an epic task that groups all the tasks needed to upgrade the structure of the AzerothCore Databases in order to make it as close as possible to the one of TrinityCore 3.3.5.

Benefits

  • Documentation. Currently we have no official DB documentation. We could just copy and reuse the same DB documentation from tc once this task is completed (this is already the case for many tables, but for some of them the structure is different and it's undocumented).

  • Cross-project collaboration. It will be easier to import any DB-content fixes that are pushed into the 3.3.5 branch of TrinityCore. Having a look at the commit history of that branch, you can notice that there are still several contributors that push DB fixes periodically.

  • Tooling. AzerothCore would benefit of all existing tooling currently available for TC 3.3.5. For example the JSON API and all the tools that rely on it (such as Keira2 DB editor and many other tools like those).

  • Migration. It would be much easier for server administrators to migrate from TrinityCore to AzerothCore.

  • Simplicity. The new structure simplifies many things, for example the huge quest_template table has being split into several smaller ones.

Personal note: I believe a big part of this job has been already done, and it's worth to finish it. Also it looks like that there is no intention in TrinityCore to change the 3.3.5 DB structure anymore. So once we finish this, we can only benefit

Tasks

World DB

  • #1119 Simplify the quest_template table
  • #1120 Update structure of the *_loot_template tables
  • #1178 Misc minor changes
  • #1179 Locale changes
  • #1182 Creature movement
  • #1177 achievement_reward
  • #1180 creature
  • #1181 creature_template
  • #1183 gameobject
  • #1184 gameobject_addon
  • #1185 gameobject_overrides
  • #1186 gameobject_template
  • #1187 game_event
  • #1189 graveyard_zone
  • #1190 instance_spawn_groups
  • #1191 playercreateinfo_*
  • #1192 player_factionchange_*
  • #1193 points_of_interest
  • #1313 quest_greeting
  • #1328 quest_template_addon
  • #1195 skill_extra_item_template
  • #1196 skill_perfect_item_template
  • #1197 smart_scripts
  • #1198 spawn_group*
  • #1199 spell_enchant_proc_data
  • #1200 spell_group
  • #1201 spell_learn_spell
  • #1202 spell_proc_*

Characters DB

  • #1125 Add itemcount5 and itemcount6 fields in character_queststatus
  • #1176 Implement Quest Tracker
  • #1165 auctionbidders (new table)
  • #1239 auctionhouse
  • #1166 channels
  • #1167 character_arena_stats
  • #1168 character_aura & pet_aura Pondaveia: due to spells being different from AC to TC I suggest leaving this change off due to issues with the pull request on TC aswell.
  • #1169 character_fishingsteps (new table)
  • #1170 character_instance
  • #1171 character_spell, character_spell_cooldown & pet_spell_cooldown NOT APPLICABLE
  • #1172 character_talent NOT APPLICABLE
  • #1173 group_instance (new table)
  • #1174 item_loot_items (different table)
  • #1175 item_loot_money (new table)

Auth

  • #1162 Import logs_ip_actions table and feature
  • #1121 Import RBAC system DEFERRED
  • #1163 Table account minor changes

How to spot the original commits that made the diff

Finding the commits is quite easy for most of the diff, read this: https://github.com/azerothcore/azerothcore-wotlk/wiki/How-to-spot-db-struct-diff-commits

Diffs

I extracted most of the diff from:


Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.

@FrancescoBorzi

This comment has been minimized.

Copy link
Member Author

@FrancescoBorzi FrancescoBorzi commented Dec 29, 2018

UPDATE: we can extract further tasks from the DB diffs:

@FrancescoBorzi

This comment has been minimized.

Copy link
Member Author

@FrancescoBorzi FrancescoBorzi commented Jan 5, 2019

@FrancescoBorzi FrancescoBorzi changed the title [EPIC] Database structure updates [EPIC] Align DB struct to TrinityCore Jan 27, 2019
@FrancescoBorzi FrancescoBorzi changed the title [EPIC] Align DB struct to TrinityCore [EPIC] Align DB structure to TrinityCore Jan 27, 2019
@BarbzYHOOL

This comment has been minimized.

Copy link
Member

@BarbzYHOOL BarbzYHOOL commented Apr 9, 2019

it's still WIP?

@FrancescoBorzi

This comment has been minimized.

Copy link
Member Author

@FrancescoBorzi FrancescoBorzi commented Apr 10, 2019

All the most important changes have been imported. There are still a few ones left but AFAIK no one is working on them. This can be left open and visible to whoever wants to import more changes.

@BarbzYHOOL

This comment has been minimized.

Copy link
Member

@BarbzYHOOL BarbzYHOOL commented Apr 10, 2019

because we could also put the "big list to import" as pinned issue

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
2 participants
You can’t perform that action at this time.