wowdev / WoWDBDefs

Client database definitions for World of Warcraft
Other
254 stars 95 forks source link

Clarification on column annotations #131

Closed gtker closed 1 year ago

gtker commented 1 year ago

Hello,

I have written a Rust library for this format, but I'm unclear on what exactly the noninline and relation annotations actually mean.

I'm also wondering if there's a way to map the enums/flags from here to individual tables without too much hassle?

Thanks :)

Marlamin commented 1 year ago

noninline refers to columns that aren't stored in line with row data but separately in the DB2 files. relation means a column is/has a foreign key to a different table. When a relation is noninline it is stored in a separate part of DB2 files called the relationship mapping. You can find more information on the DB2 format here.

As for a way to get the enums/flags into DBD, we have a discussion set up for that (and other things) here,

gtker commented 1 year ago

Thanks, any time estimate on when/if enums/flags will arrive?

Marlamin commented 1 year ago

Nope, I want to get the manifest out first. Also going to take it easy with the WoW stuff so hoping someone else will take on the flags/enums task.

gtker commented 1 year ago

Understandable.

I would not mind adding enums/flags for at least 1.12/2.4.3/3.3.5, but I don't care about anything newer than that.

I noticed that you're mentioning automatic updates to wowdev.wiki, do you know who I should talk to in case I want something similar for network messages? I have almost all messages definitions for 1.12/2.4.3/3.3.5 at wow_messages that generates some documentation and it would make sense to also just generate docs for the wiki.

Marlamin commented 1 year ago

I'll link that to the person who was working on automated wiki updates at the time, thanks. They'll probably drop a reply if interested, but like many people the interest in WoW has been somewhat low.

gtker commented 1 year ago

Thanks. I don't mind implementing it myself if it's relatively easy since it would just be my documentation generator but slightly modified I just don't know who's really responsible for the Wiki and I didn't want to just spam upload several thousand new pages at once.

Thanks for the effort on the project it's incredibly useful for autogenerating DBC parsers, and thanks for the quick answers. :)