mirror of
https://github.com/Kelsidavis/WoWee.git
synced 2026-03-22 23:30:14 +00:00
Add attribution and source citations for open source release
- Create ATTRIBUTION.md crediting WoWDev Wiki, TrinityCore, MaNGOS, and third-party libraries used - Add WoWDev Wiki format specification links to file format parsers (ADT, BLP, DBC loaders) - Add protocol documentation reference to opcodes.hpp
This commit is contained in:
parent
ce6cb8f38e
commit
0c85fcd444
5 changed files with 61 additions and 0 deletions
56
ATTRIBUTION.md
Normal file
56
ATTRIBUTION.md
Normal file
|
|
@ -0,0 +1,56 @@
|
|||
# Attribution
|
||||
|
||||
This project was made possible by the work of the WoW modding and reverse-engineering community. We gratefully acknowledge the following resources and projects:
|
||||
|
||||
## Documentation
|
||||
|
||||
### WoWDev Wiki
|
||||
https://wowdev.wiki/
|
||||
|
||||
The WoWDev Wiki is a community-maintained resource documenting World of Warcraft file formats and protocols. This project's file format parsers were implemented based on specifications from the wiki:
|
||||
|
||||
- [ADT (terrain)](https://wowdev.wiki/ADT) - Terrain tile format
|
||||
- [M2 (models)](https://wowdev.wiki/M2) - Character and creature model format
|
||||
- [WMO (buildings)](https://wowdev.wiki/WMO) - World model object format
|
||||
- [BLP (textures)](https://wowdev.wiki/BLP) - Blizzard picture format
|
||||
- [DBC (database)](https://wowdev.wiki/DBC) - Database client file format
|
||||
- [World Packet](https://wowdev.wiki/World_Packet) - Network protocol opcodes
|
||||
|
||||
## Reference Implementations
|
||||
|
||||
### TrinityCore
|
||||
https://github.com/TrinityCore/TrinityCore
|
||||
|
||||
Open-source WoW server emulator. Referenced for understanding server-side protocol behavior and packet structures.
|
||||
|
||||
### MaNGOS / CMaNGOS
|
||||
https://github.com/cmangos/mangos-wotlk
|
||||
|
||||
Open-source WoW server emulator. Referenced for protocol documentation and authentication flow.
|
||||
|
||||
## Libraries
|
||||
|
||||
This project uses the following open-source libraries:
|
||||
|
||||
| Library | License | Purpose |
|
||||
|---------|---------|---------|
|
||||
| [SDL2](https://libsdl.org/) | zlib | Window management, input handling |
|
||||
| [GLEW](http://glew.sourceforge.net/) | BSD/MIT | OpenGL extension loading |
|
||||
| [GLM](https://github.com/g-truc/glm) | MIT | Mathematics library |
|
||||
| [OpenSSL](https://www.openssl.org/) | Apache 2.0 | Cryptographic functions (SRP6) |
|
||||
| [StormLib](https://github.com/ladislav-zezula/StormLib) | MIT | MPQ archive extraction |
|
||||
| [Dear ImGui](https://github.com/ocornut/imgui) | MIT | Immediate mode GUI |
|
||||
|
||||
## Cryptographic Standards
|
||||
|
||||
The SRP6 authentication implementation follows:
|
||||
- [RFC 2945](https://tools.ietf.org/html/rfc2945) - The SRP Authentication and Key Exchange System
|
||||
- [RFC 5054](https://tools.ietf.org/html/rfc5054) - Using SRP for TLS Authentication
|
||||
|
||||
## Legal Notice
|
||||
|
||||
World of Warcraft is a trademark of Blizzard Entertainment, Inc. This project is not affiliated with or endorsed by Blizzard Entertainment.
|
||||
|
||||
This project does not include any Blizzard Entertainment proprietary data, assets, or code. All file format parsers were implemented independently based on publicly available community documentation.
|
||||
|
||||
Users must supply their own legally obtained WoW 3.3.5a game data files to use this software.
|
||||
|
|
@ -6,6 +6,8 @@ namespace wowee {
|
|||
namespace game {
|
||||
|
||||
// World of Warcraft 3.3.5a opcodes
|
||||
// Values derived from community reverse-engineering efforts
|
||||
// Reference: https://wowdev.wiki/World_Packet
|
||||
enum class Opcode : uint16_t {
|
||||
// Client to Server
|
||||
CMSG_PING = 0x1DC,
|
||||
|
|
|
|||
|
|
@ -147,6 +147,7 @@ struct ADTTerrain {
|
|||
* ADT terrain loader
|
||||
*
|
||||
* Loads WoW 3.3.5a ADT (Azeroth Data Tile) terrain files
|
||||
* Format specification: https://wowdev.wiki/ADT
|
||||
*/
|
||||
class ADTLoader {
|
||||
public:
|
||||
|
|
|
|||
|
|
@ -50,6 +50,7 @@ struct BLPImage {
|
|||
*
|
||||
* Supports BLP0, BLP1, BLP2 formats
|
||||
* Handles DXT1/3/5 compression and palette formats
|
||||
* Format specification: https://wowdev.wiki/BLP
|
||||
*/
|
||||
class BLPLoader {
|
||||
public:
|
||||
|
|
|
|||
|
|
@ -14,6 +14,7 @@ namespace pipeline {
|
|||
*
|
||||
* DBC files store game database tables (spells, items, maps, creatures, etc.)
|
||||
* Format: Fixed header + fixed-size records + string block
|
||||
* Format specification: https://wowdev.wiki/DBC
|
||||
*/
|
||||
class DBCFile {
|
||||
public:
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue