# Datamining

This is very, very incomplete and only here to serve as a basic guide whilst this is being worked on.

Current Wizard101 Revision
Current Version - Live: V_r754018.Wizard_1_540 | 01/05/2024 (5/1)
You will need the wizard101_kiwad.bms (link below).

*Note that the test patcher may be offline.

The process is actually fairly simple - provided you have the game on your computer, you could just extract (almost) any game file and browse through its contents. This is done with QuickBMS and a script that iterates through the file, decompressing and writing its contents to disk.

You will mostly be interested in the GameData folder, located at ~/Data/GameData andRoot.wadwhich includes pretty much everything in-game, along with _Shared-WorldData.wad - the home of icons and graphical content. Feel free to experiment.

Sidenote: Some files may return 'unexistent file' - this is because you're trying to extract a dynamic wad archive and the contents of the file you're trying to extract have not been loaded by the game. You can solve this by downloading directly from the Patcher or extracting non-dynamic wad archives.

_Due to the configuration of the Patch server, you are able to "read" files within a directory but not the contents of the Directory itself. You can find a collection of important files in "GameData" below, and the wad files found within %Prograta%/KingsIsle Entertainment/Wizard101/Data/GameData are also found in the relevant Patcher directory.

Here's a video of the process, if that helps.

The process of extracting Wizard101 game files with QuickBMS.

# Introduction

Wizard101 is located at C:/ProgramData/KingsIsle Entertainment/Wizard101.

Oh, you're going to need a hex editor, such as HxD, as well.

./ refers to C:/ProgramData/KingsIsle Entertainment/Wizard101

LocalPackagesList.txt - The game will use this text file as a list to scan for during patch (you know, the thing that either takes ages or doesn't) - the game will also use this list to avoid downloading files you already have. You can edit this file to force the patcher to download certain wad files or clear it to patch in seconds.

WizardClient.log - Useful to understanding how the game functions behind the scenes and also logs errors so useful for troubleshooting.

PatchConfig.xml - Contains information relating to the patch server, login server and the patch client. Sometimes useful but usually static.

WizardGraphicalClient.exe - The game, sometimes useful but usually untouched.

data.dat/revision.dat - These are important for the Wizard101 revision needed for downloading files from the patcher (TL;DR: server with wiz game files)

config.xml - Contains all the key binds and some various settings properties - usually not of interest to datamining aside from a few things.

# Notes:

*All these files can be found in the GameData directory in the patch server (above), and accessed with GameData/FILENAME.wad (replacing filename with the name of the wad file such as Root)

The full path should be as follows - http://versionec.us.wizard101.com/WizPatcher/V_r710208.WizardDev/LatestBuild/Data/GameData/Root.wad (Example, revision 710208.WizardDev no longer exists.)

# GameData Files

Root.wad (STA) - The most important file with all the gear, mobs, mounts, pets, spells, etc. This will feature more of the logic and info behind mobs/pets/gear rather than the actual models.

_Shared-WorldData.wad (STA) - Also a major file and home to a lot of the graphical content on Wizard101, such as spell icons and equipment icons. Contains a lot of .*gui files which essentially create interactable GUIs for W101.

Mob-WorldData.wad (DYN) - A file approaching 1GB that contains a ton of models for various things in the game - namely Pets, Mounts and NPCs (among other things, such as Rings, Jewels, Athames, etc.)

# Miscellaneous

Mob2-WorldData.wad (DYN) - Probably made because Mob was becoming chonky so this is mostly used for new stuff - though only used for Mounts/Pets/NPCs it seems. However, Mob is still updated.

Music-WorldData.wad (DYN) - Another large file_, the first to ever hit 1GB actually _- this contains all the music used in Wizard101, including stingers/cues and some sound effects, though those are mostly in another file.

Equipment-WorldData & HighDetail.wad (DYN) - File containing all the equipment models and textures. If you're unsure what that is, it's pretty much what makes your gear look like your gear. HighDetail contains textures used for High Detail mode.

GUI-WorldData.wad (DYN)- Contains all the world maps and crown shop pack models.

# Very Miscellaneous

Recipes-WorldData.wad (STA) - File containing all the Recipes in the game.

TreasureCards-WorldData.wad (DYN) - Contains all spell animations and Sound Effects. This includes spells for Fishing and Gardening as well as Lore packs. File also (obviously) has the textures for these spells.

The HousingObject Trio (DYN) - For some reason, KI has three files for Housing related shenanigans. The last one, HousingObject3, was created ~Mar 17, 2016 - with no clear reason. Anyway, let's break it down.

HousingObject-WorldData.wad - Housing file for housing stuff. 
Not many things notable here - aside from a few updates here and there, the focus is on newer files.

HousingObject2-WorldData.wad - Housing file for many things - 
including the School sets, fishes, Musical Instruments, Holiday stuff, and whatnot.

HousingObject3-WorldData.wad - Usually the file to be updated with newer stuff, 
such as Castle Magic, (more fishes) and housing stuff for newer worlds - such as Karamelle.

``

**Sound Dialogue (DYN) & Dynamic (DYN)** - Each world will have its own dialogue - that much is clear. Where does this dialogue come from? Well. It comes from a file created for that world's dialogue - usually following in the form of `Sound_Dialogue_KM-WorldData.wad`

Given this, hopefully it's obvious how the format of dialogue for other worlds is presented. Dynamic is just (Sound_Dynamic-WorldData.wad) and contains a lot of the Sound Effects used in-game.


+++ Review

An overview -

`Models & Textures - [Mob, Mob2, Equipment, EquipmentHD, Zone Files]
Images and Assets - [Shared, Root, GUI]
Music & Sound - [Music, Sound_Dialogue, Dynamic]
Animations - [Mob, Mob2, Equipment]
Data & Info - [Root]`

Example - an Elixir:

`Elixir file - Root.wad (data / logic / elixir properties)
Elixir model - Mob-WorldData.wad (Gamebryo Model)
Elixir icon - Shared-WorldData (EquipmentIcons)
Elixir sound - Shared-WorldData (GUI/Sound)`

_All these files can be obtained from the Patcher at the link above._

DYN: Content can only be extracted once loaded into the files by the game if the file is not from Patcher

STA: Content can be accessed regardless of where the file has come from

# Patcher Intro

The files are hosted on http://versionec.us.wizard101.com - this houses all the game files for Wizard101.

The current version is necessary (since October 2018) to download files directly from the Patcher. This is necessary if you wish to extract content in some of the larger files that is only 'loaded' when required for use.

The directory structure is the same - wad files are in the GameData folder. You can find the Patcher at the top of this post.

WizPatcher/V_rXXXXXX.Wizard_1_XXX/LatestBuild/Data/GameData/Root.wad for live

WizPatcher/V_rXXXXXX.WizardDev/LatestBuild/Data/GameData/Root.wad for test.

# Dynamic Files

Many of the larger files are dynamic. This means that for the contents of the file to exist in Dynamic files, it has to be downloaded from the Patcher - and as a result when you try to extract files prior to this, the file basically doesn't exist.

A clear example is housing items - when you see boxes, that's the game downloading the chair model and textures compressed data (for example) from the Patcher and writing to the file.

In short, you will only extract what you've seen in-game when you try to extract a dynamic file. To avoid this issue, just always download dynamic files from the Patcher, where the game gets the info to begin with.

Here's a list of such files.

List of dynamic .wad files
ClassicMode-WorldData.wad
HousingObject-WorldData.wad
HousingObject2-WorldData.wad
HousingObject3-WorldData.wad
Mob-WorldData.wad
Mob2-WorldData.wad
GUI-WorldData.wad
Equipment-WorldData.wad
Equipment-HighDetail.wad
Sound_Dialogue-WorldData.wad
Sound_Dialogue_KT-WorldData.wad
Sound_Dialogue_MB-WorldData.wad
Sound_Dialogue_MS-WorldData.wad
Sound_Dialogue_DS-WorldData.wad
Sound_Dialogue_GH-WorldData.wad
Sound_Dialogue_CL-WorldData.wad
Sound_Dialogue_GDN-WorldData.wad
Sound_Dialogue_TRI-WorldData.wad
Sound_Dialogue_GH1-WorldData.wad
Sound_Dialogue_GH2-WorldData.wad
Sound_MusicPreview_GH2-WorldData.wad
Sound_Dialogue_WYS-WorldData.wad
Sound_Dialogue_ZF-WorldData.wad
Music-WorldData.wad
Sound_Dialogue_AVA-WorldData.wad
Sound_Dialogue_AZT-WorldData.wad
Sound_Dialogue_GEN-WorldData.wad
Sound_Dynamic-WorldData.wad
Sound_Dialogue_AQL-WorldData.wad
Sound_Dialogue_KHR-WorldData.wad
Sound_Dialogue_KH2-WorldData.wad
Sound_Dialogue_POL-WorldData.wad
Sound_Dialogue_MIR-WorldData.wad
Sound_Dialogue_EMP-WorldData.wad
Sound_Dialogue_EM2-WorldData.wad
Sound_Dialogue_001-WorldData.wad
Sound_Dialogue_CAT-WorldData.wad
Sound_Dialogue_002-WorldData.wad
Sound_Dialogue_003-WorldData.wad

More coming soon.