Create your own maps and campaigns for KeeperFX and DK1 with Unearth.

You can find it here.

KeeperFX VS Code DevTools

Submitted by cerwym
Category Application
Rating Not rated yet
Submission date 2026-02-07
Last updated 2026-02-08
Filesize 66.89KiB
Downloads 36
File Filesize Downloads Date
keeperfx-devtools-0.0.2.vsix 66.89KiB 18 2026-02-08
keeperfx-raw-viewer-0.0.1.vsix 5.91KiB 19 2026-02-07
Description

https://github.com/Cerwym/keeperfx-devtools

NOTE : This extension is also published to marketplace (https://marketplace.visualstudio.com/items?itemName=PeterLockett.keeperfx-devtools)

Started out as a way to view the RAW file data so I could see what I was doing when adding overlay support to lenses.

Features

DAT Sprite Viewer

  • View .dat files: Opens .dat files that have sprite data inside them and attempts to redner the display
  • Game palette: Automatically loads the game pallete, but you can select another to see how a different palette affects the content

Raw Image Viewer

  • View .raw files: Opens 256×256 8-bit indexed .raw image files used by KeeperFX
  • Game palette: Automatically loads data/palette.dat from your workspace to display images with correct colors
  • Transparency support: Shows color index 0 as transparent with a checkerboard background
  • Zoom controls: Fit, 100%, 200%, 400%, and 800% zoom levels
  • Pixel-perfect rendering: Uses nearest-neighbor scaling to preserve sharp pixels

Requirements

  • A KeeperFX workspace containing data/palette.dat (768 bytes: 256 colors × RGB with 6-bit values)
  • .raw files must be exactly 65536 bytes (256×256 pixels)

Usage

  1. Open a KeeperFX workspace in VS Code
  2. Open any .raw file (e.g., config/mods/your-mod/data/overlay_test.raw)
  3. The custom viewer will automatically open showing the image with the correct palette
  4. Use the toolbar buttons to zoom in/out

How It Works

  1. Reads the 256×256 indexed pixel data from the .raw file
  2. Loads the palette from data/palette.dat in your workspace
  3. Converts 6-bit RGB palette values (0-63) to 8-bit (0-255) by multiplying by 4
  4. Maps each pixel's color index to RGB using the palette
  5. Renders transparency (color 0) with checkerboard background
  6. Displays the result in a webview canvas with zoom controls

Known Limitations

  • Only supports 256×256 .raw files (the standard size for KeeperFX lens overlays and mists)
  • Requires data/palette.dat in the workspace (falls back to grayscale if not found)
  • Read-only viewer (no editing capabilities)
Installation Instructions

Double click VSIX

Comments

Login or register to comment on this workshop item.

No comments yet.