Jump to content

WoW:3.3.5a: Difference between revisions

From Thunderbrew
No edit summary
No edit summary
 
(12 intermediate revisions by the same user not shown)
Line 10: Line 10:
Many attempts have been made throughout history to study the internals of this client.
Many attempts have been made throughout history to study the internals of this client.


To consolidate and refine our collective understanding, a single reverse engineering repository called [[Thunderbrew:Binana|binana]] was invented.
To consolidate and refine our collective understanding, a single reverse engineering repository called [[Thunderbrew:binana|binana]] was invented.


=== Compiler ===
=== Compiler ===


For Windows, the client was known to be compiled using the Microsoft Visual C++ Compiler {{Which version?}}
For Windows, the client was known to be compiled using the Microsoft Visual C++ Compiler (VS2005, build 50727).


For the [[WoW:Mac OS X port|Mac OS X port]], the XCode version of GCC was used.
For the [[WoW:Mac OS X port|Mac OS X port]], the XCode version of GCC was used.
Line 27: Line 27:


* libexpat - Used to parse XML, commonly used in GlueXML and FrameXML
* libexpat - Used to parse XML, commonly used in GlueXML and FrameXML
{| class="wikitable"
|+ Libraries
|-
! Library !! Version !! Author !! Description !! Depends on
|-
| [[Blizzard Entertainment:BlizzardCore|BlizzardCore]] || ? || [[Blizzard Entertainment|Blizzard]] || || None
|-
| [[Blizzard Entertainment:Storm|Storm]] || ? || [[Blizzard Entertainment|Blizzard]] || || [[Blizzard Entertainment:BlizzardCore|BlizzardCore]]
|-
| [[Blizzard Entertainment:Tempest|Tempest]] || ? || [[Blizzard Entertainment|Blizzard]] || 3D arithmetic classes and routines || [[Blizzard Entertainment:Storm|Storm]]
|-
| [[Firelight Technologies:FMOD|FMOD]] || ? || [[Firelight Technologies]] || 3D sound effects library || None
|-
| [[Lua|Lua]] || 5.1.1 || Roberto Ierusalimschy with various modifications by [[Blizzard Entertainment|Blizzard]] || Embedded script/programming language || None
|-
| FreeType || ? || The FreeType Project || Font rasterization library || None
|}


== Software that supports 3.3.5a ==
== Software that supports 3.3.5a ==

Latest revision as of 08:17, 5 April 2026

Reverse engineering

Many attempts have been made throughout history to study the internals of this client.

To consolidate and refine our collective understanding, a single reverse engineering repository called binana was invented.

Compiler

For Windows, the client was known to be compiled using the Microsoft Visual C++ Compiler (VS2005, build 50727).

For the Mac OS X port, the XCode version of GCC was used.

Libraries

The WoW client was known to have the following libraries:

  • fmod - For in-game audio playback
  • lua - Used extensively for Glue and FrameScript. Much of the client runs through this Lua interface.
  • libexpat - Used to parse XML, commonly used in GlueXML and FrameXML
Libraries
Library Version Author Description Depends on
BlizzardCore ? Blizzard None
Storm ? Blizzard BlizzardCore
Tempest ? Blizzard 3D arithmetic classes and routines Storm
FMOD ? Firelight Technologies 3D sound effects library None
Lua 5.1.1 Roberto Ierusalimschy with various modifications by Blizzard Embedded script/programming language None
FreeType ? The FreeType Project Font rasterization library None

Software that supports 3.3.5a

3.3.5a benefits from a significant buy-in from the community of developers, making it the de facto standard version of WoW.