@dada78641/bwtoolsdata
TypeScript icon, indicating that this package has built-in type declarations

2.1.0 • Public • Published

TypeScript MIT license npm version

@dada78641/bwtoolsdata

Collection of Brood War data and functions used to help interpret replay and map files.

Usage

This library recently got rewritten and I haven't documented the new interface yet.

See src/lib/index.ts for the user facing functions you'll want to import.

In-game colors

Colors work quite inconsistently in StarCraft. There are two sets of color codes: one for briefing messages (and map names), and one for in-game chat messages. These each have their quirks that are different between Brood War (v1.16.1 and below) and Remastered.

Here's a list of all colors:

Briefing text colors
Name Hex value Code Slug
Pale blue Preview for briefing swatch #0xa4b4f8 #a4b4f8 0x02 bt_pale_blue
Green Preview for briefing swatch #0x4cc428 #4cc428 0x03 bt_green
Light green Preview for briefing swatch #0xb4fc74 #b4fc74 0x04 br_light_green
Gray† Preview for briefing swatch #0x585858 #585858 0x05 bt_gray
White Preview for briefing swatch #0xffffff #ffffff 0x06 bt_white
Red Preview for briefing swatch #0xfc0000 #fc0000 0x07 bt_red
In-game text colors
Name/slot ID‡ Hex value Code Slug
Pale blue Preview for ingame swatch #0xb8b8e8 #b8b8e8 0x02 ig_pale_blue
Yellow Preview for ingame swatch #0xdcdc3c #dcdc3c 0x03 ig_yellow
White Preview for ingame swatch #0xffffff #ffffff 0x04 ig_white
Red Preview for ingame swatch #0xc81818 #c81818 0x06 ig_red
Green Preview for ingame swatch #0x10fc18 #10fc18 0x07 ig_green
Gray† Preview for ingame swatch #0x847474 #847474 0x05 ig_gray
Red 0 Preview for ingame swatch #0xf40404 #f40404 0x08 red
Blue 1 Preview for ingame swatch #0x0c48cc #0c48cc 0x0e blue
Teal 2 Preview for ingame swatch #0x2cb494 #2cb494 0x0f teal
Purple 3 Preview for ingame swatch #0x88409c #88409c 0x10 purple
Orange 4 Preview for ingame swatch #0xf88c14 #f88c14 0x11 orange
Brown 5 Preview for ingame swatch #0x703014 #703014 0x15 brown
White 6 Preview for ingame swatch #0xcce0d0 #cce0d0 0x16 white
Yellow 7 Preview for ingame swatch #0xfcfc38 #fcfc38 0x17 yellow
Green 8 Preview for ingame swatch #0x088008 #088008 0x18 green
Pale yellow 9 Preview for ingame swatch #0xfcfc7c #fcfc7c 0x19 yellow
Tan 10 Preview for ingame swatch #0xecc4b0 #ecc4b0 0x1b tan
Cerulean 11 Preview for ingame swatch #0x4068d4 #4068d4 0x1c cerulean
Pale green 12 Preview for ingame swatch #0x74a47c #74a47c 0x1d pale_green
Bluish gray 13 Preview for ingame swatch #0x9090b8 #9090b8 0x1e bluish_gray
Turquoise 15 Preview for ingame swatch #0x00e4fc #00e4fc 0x1f turquoise
Pink 16 Preview for ingame swatch #0xffc4e4 #ffc4e4 pink
Olive 17 Preview for ingame swatch #0x787800 #787800 olive
Lime 18 Preview for ingame swatch #0xd2f53c #d2f53c lime
Navy 19 Preview for ingame swatch #0x0000e6 #0000e6 navy
Magenta 21 Preview for ingame swatch #0xf032e6 #f032e6 magenta
Gray 22 Preview for ingame swatch #0x808080 #808080 gray
Black 23 Preview for ingame swatch #0x3c3c3c #3c3c3c black

†: In StarCraft, gray is buggy: when it's used in a map name in Brood War, the rest of the name becomes gray as well—this was fixed in Remastered. In in-game text messages, gray will take over the entire rest of the line, both in Brood War and Remastered. This buggy behavior is not completely implemented in this library, and more research is needed to determine every edge case.

‡: Slot IDs 11, 14, 15 and 20 are not selectable as player colors (the color for 11 is used for the neutral player, however). 11 and 15 are still usable as text color. 14 and 20 are duplicates of Pale Yellow and Cerulean.

Tilesets

The following are all available tileset types.

A few of the aforementioned player colors are not pickable on certain tilesets (due to bad contrast).

Tileset name Internal name ID Disallowed colors
Ash World Preview for the Ash World tileset ashworld 3 Gray, Black
Badlands Preview for the Badlands tileset badlands 0
Desert Preview for the Desert tileset desert 5 Orange
Ice† Preview for the Ice tileset ice 6 White
Installation‡ Preview for the Installation tileset install 2 Blue, Navy, Bluish gray
Jungle World Preview for the Jungle World tileset jungle 4
Space Platform Preview for the Space Platform tileset platform 1 Gray, Black
Twilight Preview for the Twilight tileset twilight 7 Bluish gray

†: Also called "Arctic" in the community.

‡: The Installation tileset is only used in the campaign and does not support regular custom games.

The internal names are the names used by the game files themselves, whereas the proper names are taken from the original Brood War map editor.

Game speed

Number of milliseconds per game frame for each game speed.

E.g. for "Fastest", there are approximately 1000 / 42 = ~23.81 frames in a second. This is used to convert the number of game frames into real time.

Name ㎳/frame Frames/second % of "Fastest"
Fastest 42 23.810 100.0%
Faster 48 20.833 87.5%
Fast 56 17.857 75.0%
Normal 67 14.925 62.7%
Slow 83 12.048 50.6%
Slower 111 9.009 37.8%
Slowest 167 5.988 25.1%

By far most replays use "Fastest" as the speed, but this table can be used for the rare cases that aren't. In the very old days of StarCraft, the ladder speed setting was "Fast" by default, but this got changed to "Fastest" relatively early on.

License

MIT licensed.

Readme

Keywords

none

Package Sidebar

Install

npm i @dada78641/bwtoolsdata

Weekly Downloads

10

Version

2.1.0

License

MIT

Unpacked Size

178 kB

Total Files

9

Last publish

Collaborators

  • dada78641