All Projects → erorus → casc

erorus / casc

Licence: Apache-2.0 license
CASC extractor for World of Warcraft data

Programming Languages

PHP
23972 projects - #3 most used programming language

Projects that are alternatives of or similar to casc

Connectors
Connectors simplify connecting to standalone and CloudFoundry services
Stars: ✭ 28 (+86.67%)
Mutual labels:  db2
ElvUI
ElvUI for World of Warcraft - Vanilla (1.12.1)
Stars: ✭ 67 (+346.67%)
Mutual labels:  world-of-warcraft
docker-wow-vanilla
Repository for Docker WoW Vanilla image based on Ubuntu
Stars: ✭ 18 (+20%)
Mutual labels:  world-of-warcraft
TellMeWhen
TellMeWhen is a combat tracking AddOn for World of Warcraft Retail and Classic
Stars: ✭ 69 (+360%)
Mutual labels:  world-of-warcraft
Sushi-3.1
A GUI framework, all wrapped in rice and seaweed for extra flavor.
Stars: ✭ 25 (+66.67%)
Mutual labels:  world-of-warcraft
strongbox
a World of Warcraft Addon Manager aimed at Linux players
Stars: ✭ 131 (+773.33%)
Mutual labels:  world-of-warcraft
DBM-Retail
The ultimate encounter helper (for Retail) to give you fight info that's easy to process at a glance. DBM aims to focus on what's happening to you, and what YOU need to do about it.
Stars: ✭ 194 (+1193.33%)
Mutual labels:  world-of-warcraft
raiderio-addon
RaiderIO AddOn
Stars: ✭ 35 (+133.33%)
Mutual labels:  world-of-warcraft
mythicpl.us
Flat file site built to be a compendium for World of Warcraft mythic+ dungeon information
Stars: ✭ 41 (+173.33%)
Mutual labels:  world-of-warcraft
hero-lib
WoW Addon - Core Library used by HeroRotation and AethysTools, can also be used by others 3rd-Party Addons.
Stars: ✭ 33 (+120%)
Mutual labels:  world-of-warcraft
Ovale
An add-on for World of Warcraft that displays icons based on scripts
Stars: ✭ 46 (+206.67%)
Mutual labels:  world-of-warcraft
AIO
AIO is a pure lua server-client communication system for Eluna and WoW.
Stars: ✭ 50 (+233.33%)
Mutual labels:  world-of-warcraft
Cell
A World of Warcraft raid frame addon.
Stars: ✭ 21 (+40%)
Mutual labels:  world-of-warcraft
CChatNotifier
A WoW Classic addon that can be used to filter chat for custom keywords.
Stars: ✭ 17 (+13.33%)
Mutual labels:  world-of-warcraft
nodejs-idb-connector
A JavaScript (Node.js) library for communicating with Db2 for IBM i, with support for queries, procedures, and much more. Uses traditional callback-style syntax
Stars: ✭ 35 (+133.33%)
Mutual labels:  db2
sInterface
An opinionated replacement for Blizzard's Interface
Stars: ✭ 15 (+0%)
Mutual labels:  world-of-warcraft
AzeriteUI
Custom user interface suite for WoW. Design and code by Lars Norberg and Daniel Troconis.
Stars: ✭ 0 (-100%)
Mutual labels:  world-of-warcraft
oRA3
Raid and Party Assist.
Stars: ✭ 16 (+6.67%)
Mutual labels:  world-of-warcraft
tsm-groups
My World of Warcraft TradeSkillMaster groups for Transmog, Recipes, and Mats
Stars: ✭ 27 (+80%)
Mutual labels:  world-of-warcraft
Dominos
A main actionbar replacement
Stars: ✭ 72 (+380%)
Mutual labels:  world-of-warcraft

CASC Extractor

This is a command-line utility written in PHP that extracts files from World of Warcraft CASC archives.

Install

Clone this repo, and run composer install to get the requirements.

Usage

  php casc.php --files <path> --out <path> [--wow <path>] [--cache <path>] [--program <wow>] [--region <us>] [--locale <enUS>]
  php casc.php --help

-f, --files    Required. Path of a text file listing the files to extract, one per line. 
-o, --out      Required. Destination path for extracted files.

-w, --wow      Recommended. Path to World of Warcraft's base directory.

-c, --cache    Optional. Path for CASC's file cache. [default: $HOME/.casc-cache]
-p, --program  Optional. The NGDP program code (wow, wow_beta, wowt). [default: wow] 
-r, --region   Optional. Region. (us, eu, cn, tw, kr) [default: us]
-l, --locale   Optional. Locale. [default: enUS]

--no-check-certificate  Optional. Ignores SSL certificate issues when connecting to HTTPS hosts.

-h, --help     This help message.

Example:

php casc.php --files dbcs.all.txt --out ./out --wow "$HOME/.wine/drive_c/Program Files (x86)/World of Warcraft"

OS Compatibility

This was written in a Linux environment, though it should also function in Windows. Windows compatibility has not yet been tested.

This requires at least 64-bit PHP 7.2.

Game Compatibility

This was designed specifically to extract data for World of Warcraft. Parts of it may happen to be compatible with other Blizzard games, but they have not been tested.

Development Status

This tool is considered complete. It should be able to extract most files from both local and remote CASC sources.

Features that are not planned to be supported:

  • Patch archives (unnecessary since we aren't going to patch old files)
  • The Encoding specification table (only required for patching)
  • Background downloader files

Disclaimer

This work is neither endorsed by nor affiliated with Blizzard Entertainment.

World of Warcraft, Warcraft, Battle.net and Blizzard Entertainment are trademarks or registered trademarks of Blizzard Entertainment, Inc. in the U.S. and/or other countries.

Thanks

I could not have done this without the documentation at the WoWDev wiki. Thanks to those who contribute there!

Some BLTE processing details (especially for encrypted blocks) came from the CASCExplorer project.

Become a Patron!

License

Copyright 2017 Gerard Dombroski

Licensed under the Apache License, Version 2.0 (the "License"); you may not use these files except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].