Skip to content

wowserhq/client

Repository files navigation

Wowser Client

Join Community Version MIT License CI Test Coverage

World of Warcraft in the browser using JavaScript and WebGL.

This repository contains the web client.

Background

Wowser is a proof-of-concept of getting a triple-A game to run in a webbrowser.

See the Wowser umbrella repository for more information.

Status

This repository contains the Wowser web client, which currently has support for:

  • Loading Blizzard UI files (.toc, .xml and .lua)
  • Extremely primitive scene rendering using WebGL 2 (frames and textures mostly)
  • GLSL ES 300 shaders and PNG textures (no BLP support yet)

Note: Only Wrath of the Lich King (3.3.5a) is currently supported. A copy of the official client is required.

Development

Wowser is written in TypeScript and developed with vite.

  1. Clone the repository:

    git clone git://github.com/wowserhq/wowser.git
  2. Download and install Node.js 20+ for your platform.

  3. Install dependencies:

    npm install
  4. Extract interface files from the official Wrath of the Lich King client into the public folder, resulting in the following structure:

    public
      ├── Interface
      ├── Shaders
      └── Wowser
    

    In addition, convert BLP files to PNGs, using BLPConverter.

    This entire step will be obsolete soon™.

  5. Run the dev server:

    npm run start:dev

    Disclaimer: Wowser serves up resources to the browser over HTTP. Depending on your network configuration these may be available to others. Respect laws and do not distribute game data you do not own.

Contribution

When contributing, please:

  • Fork the repository
  • Open a pull request (preferably on a separate branch)

License

Except where otherwise noted, Wowser Client is copyright © 2019-2024 Wowser Contributors. It is licensed under the MIT license. See LICENSE for more information.