diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 16dd610f85..c3b903fb40 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -164,13 +164,14 @@ jobs:
path: OpenRCT2
- name: Download gxc
run: |
- curl -Lo tools.tar.gz https://github.com/IntelOrca/libsawyer/releases/download/v1.3.0/libsawyer-tools-linux-x64.tar.gz
+ curl -Lo tools.tar.gz https://github.com/OpenRCT2/libsawyer/releases/download/v1.4.0/libsawyer-tools-linux-x64.tar.gz
mkdir -p "$GITHUB_WORKSPACE/bin"
tar -C "$GITHUB_WORKSPACE/bin" -xf tools.tar.gz
echo "$GITHUB_WORKSPACE/bin" >> $GITHUB_PATH
- name: Build graphics .dat files
run: |
gxc build g2.dat OpenRCT2/resources/g2/sprites.json
+ gxc build palettes.dat OpenRCT2/resources/palettes/sprites.json
gxc build fonts.dat OpenRCT2/resources/fonts/sprites.json
gxc build tracks.dat OpenRCT2/resources/tracks/sprites.json
- name: Upload graphics .dat files
@@ -179,6 +180,7 @@ jobs:
name: graphics-${{ needs.build_variables.outputs.name }}
path: |
g2.dat
+ palettes.dat
fonts.dat
tracks.dat
windows:
diff --git a/.gitignore b/.gitignore
index 65fcf32af1..099edb699e 100644
--- a/.gitignore
+++ b/.gitignore
@@ -25,6 +25,7 @@ libversion
# Downloaded or built data files
data/g2.dat
data/fonts.dat
+data/palettes.dat
data/tracks.dat
data/sequence
data/object
diff --git a/CMakeLists.txt b/CMakeLists.txt
index cf38b47276..b6f1f13165 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -396,9 +396,9 @@ if(NOT DISABLE_GUI)
include("${ROOT_DIR}/src/openrct2-ui/CMakeLists.txt" NO_POLICY_SCOPE)
endif()
-# graphics files (g2.dat and font.dat)
+# graphics files (g2.dat, fonts.dat, palettes.dat, tracks.dat)
if (NOT CMAKE_CROSSCOMPILING)
- set(graphics_files "g2" "fonts" "tracks")
+ set(graphics_files "g2" "fonts" "palettes" "tracks")
foreach(graphics_file ${graphics_files})
set(output_file "${graphics_file}.dat")
@@ -505,6 +505,7 @@ if (NOT MACOS_BUNDLE OR (MACOS_BUNDLE AND WITH_TESTS))
endif ()
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/g2.dat" DESTINATION "${CMAKE_INSTALL_DATADIR}/openrct2")
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/fonts.dat" DESTINATION "${CMAKE_INSTALL_DATADIR}/openrct2")
+ install(FILES "${CMAKE_CURRENT_BINARY_DIR}/palettes.dat" DESTINATION "${CMAKE_INSTALL_DATADIR}/openrct2")
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/tracks.dat" DESTINATION "${CMAKE_INSTALL_DATADIR}/openrct2")
install(DIRECTORY "data/" DESTINATION "${CMAKE_INSTALL_DATADIR}/openrct2")
diff --git a/openrct2.targets b/openrct2.targets
index c6cc62b737..2da26f6f8e 100644
--- a/openrct2.targets
+++ b/openrct2.targets
@@ -20,6 +20,7 @@
$(ResourcesPath)g2\sprites.json
$(ResourcesPath)fonts\sprites.json
$(ResourcesPath)tracks\sprites.json
+ $(ResourcesPath)palettes\sprites.json
$(OutDir)data\
@@ -28,6 +29,7 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/resources/g2/sprites.json b/resources/g2/sprites.json
index 0bfa446504..321b1ed5c8 100644
--- a/resources/g2/sprites.json
+++ b/resources/g2/sprites.json
@@ -542,246 +542,6 @@
{
"path": "loader/loader_gokarts_vehicles.png"
},
- {
- "path": "palette_map/palette_map_dark_olive_dark.png",
- "palette": "keep",
- "format": "raw"
- },
- {
- "path": "palette_map/palette_map_dark_olive_light.png",
- "palette": "keep",
- "format": "raw"
- },
- {
- "path": "palette_map/palette_map_saturated_brown_light.png",
- "palette": "keep",
- "format": "raw"
- },
- {
- "path": "palette_map/palette_map_bordeaux_red_dark.png",
- "palette": "keep",
- "format": "raw"
- },
- {
- "path": "palette_map/palette_map_bordeaux_red_light.png",
- "palette": "keep",
- "format": "raw"
- },
- {
- "path": "palette_map/palette_map_grass_green_dark.png",
- "palette": "keep",
- "format": "raw"
- },
- {
- "path": "palette_map/palette_map_grass_green_light.png",
- "palette": "keep",
- "format": "raw"
- },
- {
- "path": "palette_map/palette_map_olive_dark.png",
- "palette": "keep",
- "format": "raw"
- },
- {
- "path": "palette_map/palette_map_olive_light.png",
- "palette": "keep",
- "format": "raw"
- },
- {
- "path": "palette_map/palette_map_saturated_green_light.png",
- "palette": "keep",
- "format": "raw"
- },
- {
- "path": "palette_map/palette_map_tan_dark.png",
- "palette": "keep",
- "format": "raw"
- },
- {
- "path": "palette_map/palette_map_tan_light.png",
- "palette": "keep",
- "format": "raw"
- },
- {
- "path": "palette_map/palette_map_dull_purple_light.png",
- "palette": "keep",
- "format": "raw"
- },
- {
- "path": "palette_map/palette_map_dull_green_dark.png",
- "palette": "keep",
- "format": "raw"
- },
- {
- "path": "palette_map/palette_map_dull_green_light.png",
- "palette": "keep",
- "format": "raw"
- },
- {
- "path": "palette_map/palette_map_saturated_purple_dark.png",
- "palette": "keep",
- "format": "raw"
- },
- {
- "path": "palette_map/palette_map_saturated_purple_light.png",
- "palette": "keep",
- "format": "raw"
- },
- {
- "path": "palette_map/palette_map_orange_light.png",
- "palette": "keep",
- "format": "raw"
- },
- {
- "path": "palette_map/palette_map_aqua_dark.png",
- "palette": "keep",
- "format": "raw"
- },
- {
- "path": "palette_map/palette_map_magenta_light.png",
- "palette": "keep",
- "format": "raw"
- },
- {
- "path": "palette_map/palette_map_dull_brown_dark.png",
- "palette": "keep",
- "format": "raw"
- },
- {
- "path": "palette_map/palette_map_dull_brown_light.png",
- "palette": "keep",
- "format": "raw"
- },
- {
- "path": "palette_map/palette_map_invisible.png",
- "palette": "keep",
- "format": "raw"
- },
- {
- "path": "palette_map/palette_map_void.png",
- "palette": "keep",
- "format": "raw"
- },
- {
- "path": "palette_map/palette_map_glass_dark_olive_dark.png",
- "palette": "keep",
- "format": "raw"
- },
- {
- "path": "palette_map/palette_map_glass_dark_olive_light.png",
- "palette": "keep",
- "format": "raw"
- },
- {
- "path": "palette_map/palette_map_glass_saturated_brown_light.png",
- "palette": "keep",
- "format": "raw"
- },
- {
- "path": "palette_map/palette_map_glass_bordeaux_red_dark.png",
- "palette": "keep",
- "format": "raw"
- },
- {
- "path": "palette_map/palette_map_glass_bordeaux_red_light.png",
- "palette": "keep",
- "format": "raw"
- },
- {
- "path": "palette_map/palette_map_glass_grass_green_dark.png",
- "palette": "keep",
- "format": "raw"
- },
- {
- "path": "palette_map/palette_map_glass_grass_green_light.png",
- "palette": "keep",
- "format": "raw"
- },
- {
- "path": "palette_map/palette_map_glass_olive_dark.png",
- "palette": "keep",
- "format": "raw"
- },
- {
- "path": "palette_map/palette_map_glass_olive_light.png",
- "palette": "keep",
- "format": "raw"
- },
- {
- "path": "palette_map/palette_map_glass_saturated_green_light.png",
- "palette": "keep",
- "format": "raw"
- },
- {
- "path": "palette_map/palette_map_glass_tan_dark.png",
- "palette": "keep",
- "format": "raw"
- },
- {
- "path": "palette_map/palette_map_glass_tan_light.png",
- "palette": "keep",
- "format": "raw"
- },
- {
- "path": "palette_map/palette_map_glass_dull_purple_light.png",
- "palette": "keep",
- "format": "raw"
- },
- {
- "path": "palette_map/palette_map_glass_dull_green_dark.png",
- "palette": "keep",
- "format": "raw"
- },
- {
- "path": "palette_map/palette_map_glass_dull_green_light.png",
- "palette": "keep",
- "format": "raw"
- },
- {
- "path": "palette_map/palette_map_glass_saturated_purple_dark.png",
- "palette": "keep",
- "format": "raw"
- },
- {
- "path": "palette_map/palette_map_glass_saturated_purple_light.png",
- "palette": "keep",
- "format": "raw"
- },
- {
- "path": "palette_map/palette_map_glass_orange_light.png",
- "palette": "keep",
- "format": "raw"
- },
- {
- "path": "palette_map/palette_map_glass_aqua_dark.png",
- "palette": "keep",
- "format": "raw"
- },
- {
- "path": "palette_map/palette_map_glass_magenta_light.png",
- "palette": "keep",
- "format": "raw"
- },
- {
- "path": "palette_map/palette_map_glass_dull_brown_dark.png",
- "palette": "keep",
- "format": "raw"
- },
- {
- "path": "palette_map/palette_map_glass_dull_brown_light.png",
- "palette": "keep",
- "format": "raw"
- },
- {
- "path": "palette_map/palette_map_glass_invisible.png",
- "palette": "keep",
- "format": "raw"
- },
- {
- "path": "palette_map/palette_map_glass_void.png",
- "palette": "keep",
- "format": "raw"
- },
{
"path": "surface/glassy_recolourable.png",
"x": -32,
diff --git a/resources/palettes/base/palette_45.png b/resources/palettes/base/palette_45.png
new file mode 100644
index 0000000000..30ccf69df6
Binary files /dev/null and b/resources/palettes/base/palette_45.png differ
diff --git a/resources/palettes/base/palette_46.png b/resources/palettes/base/palette_46.png
new file mode 100644
index 0000000000..595d6edd7c
Binary files /dev/null and b/resources/palettes/base/palette_46.png differ
diff --git a/resources/palettes/base/palette_51.png b/resources/palettes/base/palette_51.png
new file mode 100644
index 0000000000..94e3c64e6e
Binary files /dev/null and b/resources/palettes/base/palette_51.png differ
diff --git a/resources/palettes/base/palette_darken_1.png b/resources/palettes/base/palette_darken_1.png
new file mode 100644
index 0000000000..01970babba
Binary files /dev/null and b/resources/palettes/base/palette_darken_1.png differ
diff --git a/resources/palettes/base/palette_darken_2.png b/resources/palettes/base/palette_darken_2.png
new file mode 100644
index 0000000000..fc0b6f7308
Binary files /dev/null and b/resources/palettes/base/palette_darken_2.png differ
diff --git a/resources/palettes/base/palette_darken_3.png b/resources/palettes/base/palette_darken_3.png
new file mode 100644
index 0000000000..4c07c7c750
Binary files /dev/null and b/resources/palettes/base/palette_darken_3.png differ
diff --git a/resources/palettes/base/palette_decreased_contrast.png b/resources/palettes/base/palette_decreased_contrast.png
new file mode 100644
index 0000000000..ca4e68ac90
Binary files /dev/null and b/resources/palettes/base/palette_decreased_contrast.png differ
diff --git a/resources/palettes/base/palette_ghost.png b/resources/palettes/base/palette_ghost.png
new file mode 100644
index 0000000000..b7b8cc2a73
Binary files /dev/null and b/resources/palettes/base/palette_ghost.png differ
diff --git a/resources/g2/palette_map/palette_map_aqua_dark.png b/resources/palettes/map_base/palette_map_aqua_dark.png
similarity index 100%
rename from resources/g2/palette_map/palette_map_aqua_dark.png
rename to resources/palettes/map_base/palette_map_aqua_dark.png
diff --git a/resources/palettes/map_base/palette_map_aquamarine.png b/resources/palettes/map_base/palette_map_aquamarine.png
new file mode 100644
index 0000000000..97874fba8b
Binary files /dev/null and b/resources/palettes/map_base/palette_map_aquamarine.png differ
diff --git a/resources/palettes/map_base/palette_map_black.png b/resources/palettes/map_base/palette_map_black.png
new file mode 100644
index 0000000000..2a6e28eaeb
Binary files /dev/null and b/resources/palettes/map_base/palette_map_black.png differ
diff --git a/resources/palettes/map_base/palette_map_bordeaux_red.png b/resources/palettes/map_base/palette_map_bordeaux_red.png
new file mode 100644
index 0000000000..cb797ff6ff
Binary files /dev/null and b/resources/palettes/map_base/palette_map_bordeaux_red.png differ
diff --git a/resources/g2/palette_map/palette_map_bordeaux_red_dark.png b/resources/palettes/map_base/palette_map_bordeaux_red_dark.png
similarity index 100%
rename from resources/g2/palette_map/palette_map_bordeaux_red_dark.png
rename to resources/palettes/map_base/palette_map_bordeaux_red_dark.png
diff --git a/resources/g2/palette_map/palette_map_bordeaux_red_light.png b/resources/palettes/map_base/palette_map_bordeaux_red_light.png
similarity index 100%
rename from resources/g2/palette_map/palette_map_bordeaux_red_light.png
rename to resources/palettes/map_base/palette_map_bordeaux_red_light.png
diff --git a/resources/palettes/map_base/palette_map_bright_green.png b/resources/palettes/map_base/palette_map_bright_green.png
new file mode 100644
index 0000000000..af79c639f9
Binary files /dev/null and b/resources/palettes/map_base/palette_map_bright_green.png differ
diff --git a/resources/palettes/map_base/palette_map_bright_pink.png b/resources/palettes/map_base/palette_map_bright_pink.png
new file mode 100644
index 0000000000..43585544a0
Binary files /dev/null and b/resources/palettes/map_base/palette_map_bright_pink.png differ
diff --git a/resources/palettes/map_base/palette_map_bright_purple.png b/resources/palettes/map_base/palette_map_bright_purple.png
new file mode 100644
index 0000000000..7c17730340
Binary files /dev/null and b/resources/palettes/map_base/palette_map_bright_purple.png differ
diff --git a/resources/palettes/map_base/palette_map_bright_red.png b/resources/palettes/map_base/palette_map_bright_red.png
new file mode 100644
index 0000000000..559387f31d
Binary files /dev/null and b/resources/palettes/map_base/palette_map_bright_red.png differ
diff --git a/resources/palettes/map_base/palette_map_bright_yellow.png b/resources/palettes/map_base/palette_map_bright_yellow.png
new file mode 100644
index 0000000000..30234e59a4
Binary files /dev/null and b/resources/palettes/map_base/palette_map_bright_yellow.png differ
diff --git a/resources/palettes/map_base/palette_map_dark_blue.png b/resources/palettes/map_base/palette_map_dark_blue.png
new file mode 100644
index 0000000000..484e405c89
Binary files /dev/null and b/resources/palettes/map_base/palette_map_dark_blue.png differ
diff --git a/resources/palettes/map_base/palette_map_dark_brown.png b/resources/palettes/map_base/palette_map_dark_brown.png
new file mode 100644
index 0000000000..c4833b4542
Binary files /dev/null and b/resources/palettes/map_base/palette_map_dark_brown.png differ
diff --git a/resources/palettes/map_base/palette_map_dark_green.png b/resources/palettes/map_base/palette_map_dark_green.png
new file mode 100644
index 0000000000..d2f999bf56
Binary files /dev/null and b/resources/palettes/map_base/palette_map_dark_green.png differ
diff --git a/resources/g2/palette_map/palette_map_dark_olive_dark.png b/resources/palettes/map_base/palette_map_dark_olive_dark.png
similarity index 100%
rename from resources/g2/palette_map/palette_map_dark_olive_dark.png
rename to resources/palettes/map_base/palette_map_dark_olive_dark.png
diff --git a/resources/palettes/map_base/palette_map_dark_olive_green.png b/resources/palettes/map_base/palette_map_dark_olive_green.png
new file mode 100644
index 0000000000..12aeb10b0f
Binary files /dev/null and b/resources/palettes/map_base/palette_map_dark_olive_green.png differ
diff --git a/resources/g2/palette_map/palette_map_dark_olive_light.png b/resources/palettes/map_base/palette_map_dark_olive_light.png
similarity index 100%
rename from resources/g2/palette_map/palette_map_dark_olive_light.png
rename to resources/palettes/map_base/palette_map_dark_olive_light.png
diff --git a/resources/palettes/map_base/palette_map_dark_orange.png b/resources/palettes/map_base/palette_map_dark_orange.png
new file mode 100644
index 0000000000..09d30d2c6e
Binary files /dev/null and b/resources/palettes/map_base/palette_map_dark_orange.png differ
diff --git a/resources/palettes/map_base/palette_map_dark_pink.png b/resources/palettes/map_base/palette_map_dark_pink.png
new file mode 100644
index 0000000000..8f424359d4
Binary files /dev/null and b/resources/palettes/map_base/palette_map_dark_pink.png differ
diff --git a/resources/palettes/map_base/palette_map_dark_purple.png b/resources/palettes/map_base/palette_map_dark_purple.png
new file mode 100644
index 0000000000..225cb316ad
Binary files /dev/null and b/resources/palettes/map_base/palette_map_dark_purple.png differ
diff --git a/resources/palettes/map_base/palette_map_dark_yellow.png b/resources/palettes/map_base/palette_map_dark_yellow.png
new file mode 100644
index 0000000000..af1590a3a0
Binary files /dev/null and b/resources/palettes/map_base/palette_map_dark_yellow.png differ
diff --git a/resources/g2/palette_map/palette_map_dull_brown_dark.png b/resources/palettes/map_base/palette_map_dull_brown_dark.png
similarity index 100%
rename from resources/g2/palette_map/palette_map_dull_brown_dark.png
rename to resources/palettes/map_base/palette_map_dull_brown_dark.png
diff --git a/resources/g2/palette_map/palette_map_dull_brown_light.png b/resources/palettes/map_base/palette_map_dull_brown_light.png
similarity index 100%
rename from resources/g2/palette_map/palette_map_dull_brown_light.png
rename to resources/palettes/map_base/palette_map_dull_brown_light.png
diff --git a/resources/g2/palette_map/palette_map_dull_green_dark.png b/resources/palettes/map_base/palette_map_dull_green_dark.png
similarity index 100%
rename from resources/g2/palette_map/palette_map_dull_green_dark.png
rename to resources/palettes/map_base/palette_map_dull_green_dark.png
diff --git a/resources/g2/palette_map/palette_map_dull_green_light.png b/resources/palettes/map_base/palette_map_dull_green_light.png
similarity index 100%
rename from resources/g2/palette_map/palette_map_dull_green_light.png
rename to resources/palettes/map_base/palette_map_dull_green_light.png
diff --git a/resources/g2/palette_map/palette_map_dull_purple_light.png b/resources/palettes/map_base/palette_map_dull_purple_light.png
similarity index 100%
rename from resources/g2/palette_map/palette_map_dull_purple_light.png
rename to resources/palettes/map_base/palette_map_dull_purple_light.png
diff --git a/resources/g2/palette_map/palette_map_grass_green_dark.png b/resources/palettes/map_base/palette_map_grass_green_dark.png
similarity index 100%
rename from resources/g2/palette_map/palette_map_grass_green_dark.png
rename to resources/palettes/map_base/palette_map_grass_green_dark.png
diff --git a/resources/g2/palette_map/palette_map_grass_green_light.png b/resources/palettes/map_base/palette_map_grass_green_light.png
similarity index 100%
rename from resources/g2/palette_map/palette_map_grass_green_light.png
rename to resources/palettes/map_base/palette_map_grass_green_light.png
diff --git a/resources/palettes/map_base/palette_map_grey.png b/resources/palettes/map_base/palette_map_grey.png
new file mode 100644
index 0000000000..ff0415f97e
Binary files /dev/null and b/resources/palettes/map_base/palette_map_grey.png differ
diff --git a/resources/palettes/map_base/palette_map_icy_blue.png b/resources/palettes/map_base/palette_map_icy_blue.png
new file mode 100644
index 0000000000..f3525bd15d
Binary files /dev/null and b/resources/palettes/map_base/palette_map_icy_blue.png differ
diff --git a/resources/g2/palette_map/palette_map_invisible.png b/resources/palettes/map_base/palette_map_invisible.png
similarity index 100%
rename from resources/g2/palette_map/palette_map_invisible.png
rename to resources/palettes/map_base/palette_map_invisible.png
diff --git a/resources/palettes/map_base/palette_map_light_blue.png b/resources/palettes/map_base/palette_map_light_blue.png
new file mode 100644
index 0000000000..18b8bcf21b
Binary files /dev/null and b/resources/palettes/map_base/palette_map_light_blue.png differ
diff --git a/resources/palettes/map_base/palette_map_light_brown.png b/resources/palettes/map_base/palette_map_light_brown.png
new file mode 100644
index 0000000000..15e1e450b1
Binary files /dev/null and b/resources/palettes/map_base/palette_map_light_brown.png differ
diff --git a/resources/palettes/map_base/palette_map_light_orange.png b/resources/palettes/map_base/palette_map_light_orange.png
new file mode 100644
index 0000000000..6fae8a5224
Binary files /dev/null and b/resources/palettes/map_base/palette_map_light_orange.png differ
diff --git a/resources/palettes/map_base/palette_map_light_pink.png b/resources/palettes/map_base/palette_map_light_pink.png
new file mode 100644
index 0000000000..b82fb9d044
Binary files /dev/null and b/resources/palettes/map_base/palette_map_light_pink.png differ
diff --git a/resources/palettes/map_base/palette_map_light_purple.png b/resources/palettes/map_base/palette_map_light_purple.png
new file mode 100644
index 0000000000..5c6e47080f
Binary files /dev/null and b/resources/palettes/map_base/palette_map_light_purple.png differ
diff --git a/resources/g2/palette_map/palette_map_magenta_light.png b/resources/palettes/map_base/palette_map_magenta_light.png
similarity index 100%
rename from resources/g2/palette_map/palette_map_magenta_light.png
rename to resources/palettes/map_base/palette_map_magenta_light.png
diff --git a/resources/palettes/map_base/palette_map_moss_green.png b/resources/palettes/map_base/palette_map_moss_green.png
new file mode 100644
index 0000000000..8258e7b2a5
Binary files /dev/null and b/resources/palettes/map_base/palette_map_moss_green.png differ
diff --git a/resources/g2/palette_map/palette_map_olive_dark.png b/resources/palettes/map_base/palette_map_olive_dark.png
similarity index 100%
rename from resources/g2/palette_map/palette_map_olive_dark.png
rename to resources/palettes/map_base/palette_map_olive_dark.png
diff --git a/resources/palettes/map_base/palette_map_olive_green.png b/resources/palettes/map_base/palette_map_olive_green.png
new file mode 100644
index 0000000000..d262acabab
Binary files /dev/null and b/resources/palettes/map_base/palette_map_olive_green.png differ
diff --git a/resources/g2/palette_map/palette_map_olive_light.png b/resources/palettes/map_base/palette_map_olive_light.png
similarity index 100%
rename from resources/g2/palette_map/palette_map_olive_light.png
rename to resources/palettes/map_base/palette_map_olive_light.png
diff --git a/resources/g2/palette_map/palette_map_orange_light.png b/resources/palettes/map_base/palette_map_orange_light.png
similarity index 100%
rename from resources/g2/palette_map/palette_map_orange_light.png
rename to resources/palettes/map_base/palette_map_orange_light.png
diff --git a/resources/palettes/map_base/palette_map_salmon_pink.png b/resources/palettes/map_base/palette_map_salmon_pink.png
new file mode 100644
index 0000000000..aceb0d932c
Binary files /dev/null and b/resources/palettes/map_base/palette_map_salmon_pink.png differ
diff --git a/resources/palettes/map_base/palette_map_saturated_brown.png b/resources/palettes/map_base/palette_map_saturated_brown.png
new file mode 100644
index 0000000000..8bcc374d59
Binary files /dev/null and b/resources/palettes/map_base/palette_map_saturated_brown.png differ
diff --git a/resources/g2/palette_map/palette_map_saturated_brown_light.png b/resources/palettes/map_base/palette_map_saturated_brown_light.png
similarity index 100%
rename from resources/g2/palette_map/palette_map_saturated_brown_light.png
rename to resources/palettes/map_base/palette_map_saturated_brown_light.png
diff --git a/resources/palettes/map_base/palette_map_saturated_green.png b/resources/palettes/map_base/palette_map_saturated_green.png
new file mode 100644
index 0000000000..d442a60924
Binary files /dev/null and b/resources/palettes/map_base/palette_map_saturated_green.png differ
diff --git a/resources/g2/palette_map/palette_map_saturated_green_light.png b/resources/palettes/map_base/palette_map_saturated_green_light.png
similarity index 100%
rename from resources/g2/palette_map/palette_map_saturated_green_light.png
rename to resources/palettes/map_base/palette_map_saturated_green_light.png
diff --git a/resources/g2/palette_map/palette_map_saturated_purple_dark.png b/resources/palettes/map_base/palette_map_saturated_purple_dark.png
similarity index 100%
rename from resources/g2/palette_map/palette_map_saturated_purple_dark.png
rename to resources/palettes/map_base/palette_map_saturated_purple_dark.png
diff --git a/resources/g2/palette_map/palette_map_saturated_purple_light.png b/resources/palettes/map_base/palette_map_saturated_purple_light.png
similarity index 100%
rename from resources/g2/palette_map/palette_map_saturated_purple_light.png
rename to resources/palettes/map_base/palette_map_saturated_purple_light.png
diff --git a/resources/palettes/map_base/palette_map_saturated_red.png b/resources/palettes/map_base/palette_map_saturated_red.png
new file mode 100644
index 0000000000..1a64f8f19d
Binary files /dev/null and b/resources/palettes/map_base/palette_map_saturated_red.png differ
diff --git a/resources/g2/palette_map/palette_map_tan_dark.png b/resources/palettes/map_base/palette_map_tan_dark.png
similarity index 100%
rename from resources/g2/palette_map/palette_map_tan_dark.png
rename to resources/palettes/map_base/palette_map_tan_dark.png
diff --git a/resources/g2/palette_map/palette_map_tan_light.png b/resources/palettes/map_base/palette_map_tan_light.png
similarity index 100%
rename from resources/g2/palette_map/palette_map_tan_light.png
rename to resources/palettes/map_base/palette_map_tan_light.png
diff --git a/resources/palettes/map_base/palette_map_teal.png b/resources/palettes/map_base/palette_map_teal.png
new file mode 100644
index 0000000000..cb2719c48a
Binary files /dev/null and b/resources/palettes/map_base/palette_map_teal.png differ
diff --git a/resources/g2/palette_map/palette_map_void.png b/resources/palettes/map_base/palette_map_void.png
similarity index 100%
rename from resources/g2/palette_map/palette_map_void.png
rename to resources/palettes/map_base/palette_map_void.png
diff --git a/resources/palettes/map_base/palette_map_water.png b/resources/palettes/map_base/palette_map_water.png
new file mode 100644
index 0000000000..116f0df7bc
Binary files /dev/null and b/resources/palettes/map_base/palette_map_water.png differ
diff --git a/resources/palettes/map_base/palette_map_white.png b/resources/palettes/map_base/palette_map_white.png
new file mode 100644
index 0000000000..32d959e3c9
Binary files /dev/null and b/resources/palettes/map_base/palette_map_white.png differ
diff --git a/resources/palettes/map_base/palette_map_yellow.png b/resources/palettes/map_base/palette_map_yellow.png
new file mode 100644
index 0000000000..0e02ed449c
Binary files /dev/null and b/resources/palettes/map_base/palette_map_yellow.png differ
diff --git a/resources/g2/palette_map/palette_map_glass_aqua_dark.png b/resources/palettes/map_glass/palette_map_glass_aqua_dark.png
similarity index 100%
rename from resources/g2/palette_map/palette_map_glass_aqua_dark.png
rename to resources/palettes/map_glass/palette_map_glass_aqua_dark.png
diff --git a/resources/palettes/map_glass/palette_map_glass_aquamarine.png b/resources/palettes/map_glass/palette_map_glass_aquamarine.png
new file mode 100644
index 0000000000..87183c2129
Binary files /dev/null and b/resources/palettes/map_glass/palette_map_glass_aquamarine.png differ
diff --git a/resources/palettes/map_glass/palette_map_glass_black.png b/resources/palettes/map_glass/palette_map_glass_black.png
new file mode 100644
index 0000000000..c8a703ca7d
Binary files /dev/null and b/resources/palettes/map_glass/palette_map_glass_black.png differ
diff --git a/resources/palettes/map_glass/palette_map_glass_bordeaux_red.png b/resources/palettes/map_glass/palette_map_glass_bordeaux_red.png
new file mode 100644
index 0000000000..36bde566c9
Binary files /dev/null and b/resources/palettes/map_glass/palette_map_glass_bordeaux_red.png differ
diff --git a/resources/g2/palette_map/palette_map_glass_bordeaux_red_dark.png b/resources/palettes/map_glass/palette_map_glass_bordeaux_red_dark.png
similarity index 100%
rename from resources/g2/palette_map/palette_map_glass_bordeaux_red_dark.png
rename to resources/palettes/map_glass/palette_map_glass_bordeaux_red_dark.png
diff --git a/resources/g2/palette_map/palette_map_glass_bordeaux_red_light.png b/resources/palettes/map_glass/palette_map_glass_bordeaux_red_light.png
similarity index 100%
rename from resources/g2/palette_map/palette_map_glass_bordeaux_red_light.png
rename to resources/palettes/map_glass/palette_map_glass_bordeaux_red_light.png
diff --git a/resources/palettes/map_glass/palette_map_glass_bright_green.png b/resources/palettes/map_glass/palette_map_glass_bright_green.png
new file mode 100644
index 0000000000..4c8a980243
Binary files /dev/null and b/resources/palettes/map_glass/palette_map_glass_bright_green.png differ
diff --git a/resources/palettes/map_glass/palette_map_glass_bright_pink.png b/resources/palettes/map_glass/palette_map_glass_bright_pink.png
new file mode 100644
index 0000000000..a320df4ce9
Binary files /dev/null and b/resources/palettes/map_glass/palette_map_glass_bright_pink.png differ
diff --git a/resources/palettes/map_glass/palette_map_glass_bright_purple.png b/resources/palettes/map_glass/palette_map_glass_bright_purple.png
new file mode 100644
index 0000000000..18864d7b08
Binary files /dev/null and b/resources/palettes/map_glass/palette_map_glass_bright_purple.png differ
diff --git a/resources/palettes/map_glass/palette_map_glass_bright_red.png b/resources/palettes/map_glass/palette_map_glass_bright_red.png
new file mode 100644
index 0000000000..e24a6d71c6
Binary files /dev/null and b/resources/palettes/map_glass/palette_map_glass_bright_red.png differ
diff --git a/resources/palettes/map_glass/palette_map_glass_bright_yellow.png b/resources/palettes/map_glass/palette_map_glass_bright_yellow.png
new file mode 100644
index 0000000000..00a67f7a95
Binary files /dev/null and b/resources/palettes/map_glass/palette_map_glass_bright_yellow.png differ
diff --git a/resources/palettes/map_glass/palette_map_glass_dark_blue.png b/resources/palettes/map_glass/palette_map_glass_dark_blue.png
new file mode 100644
index 0000000000..b96ccfb47a
Binary files /dev/null and b/resources/palettes/map_glass/palette_map_glass_dark_blue.png differ
diff --git a/resources/palettes/map_glass/palette_map_glass_dark_brown.png b/resources/palettes/map_glass/palette_map_glass_dark_brown.png
new file mode 100644
index 0000000000..6a59d2f5d3
Binary files /dev/null and b/resources/palettes/map_glass/palette_map_glass_dark_brown.png differ
diff --git a/resources/palettes/map_glass/palette_map_glass_dark_green.png b/resources/palettes/map_glass/palette_map_glass_dark_green.png
new file mode 100644
index 0000000000..3b50026b9c
Binary files /dev/null and b/resources/palettes/map_glass/palette_map_glass_dark_green.png differ
diff --git a/resources/g2/palette_map/palette_map_glass_dark_olive_dark.png b/resources/palettes/map_glass/palette_map_glass_dark_olive_dark.png
similarity index 100%
rename from resources/g2/palette_map/palette_map_glass_dark_olive_dark.png
rename to resources/palettes/map_glass/palette_map_glass_dark_olive_dark.png
diff --git a/resources/palettes/map_glass/palette_map_glass_dark_olive_green.png b/resources/palettes/map_glass/palette_map_glass_dark_olive_green.png
new file mode 100644
index 0000000000..d6588db08d
Binary files /dev/null and b/resources/palettes/map_glass/palette_map_glass_dark_olive_green.png differ
diff --git a/resources/g2/palette_map/palette_map_glass_dark_olive_light.png b/resources/palettes/map_glass/palette_map_glass_dark_olive_light.png
similarity index 100%
rename from resources/g2/palette_map/palette_map_glass_dark_olive_light.png
rename to resources/palettes/map_glass/palette_map_glass_dark_olive_light.png
diff --git a/resources/palettes/map_glass/palette_map_glass_dark_orange.png b/resources/palettes/map_glass/palette_map_glass_dark_orange.png
new file mode 100644
index 0000000000..b63746c404
Binary files /dev/null and b/resources/palettes/map_glass/palette_map_glass_dark_orange.png differ
diff --git a/resources/palettes/map_glass/palette_map_glass_dark_pink.png b/resources/palettes/map_glass/palette_map_glass_dark_pink.png
new file mode 100644
index 0000000000..34e068c58d
Binary files /dev/null and b/resources/palettes/map_glass/palette_map_glass_dark_pink.png differ
diff --git a/resources/palettes/map_glass/palette_map_glass_dark_purple.png b/resources/palettes/map_glass/palette_map_glass_dark_purple.png
new file mode 100644
index 0000000000..f8de645ce9
Binary files /dev/null and b/resources/palettes/map_glass/palette_map_glass_dark_purple.png differ
diff --git a/resources/palettes/map_glass/palette_map_glass_dark_yellow.png b/resources/palettes/map_glass/palette_map_glass_dark_yellow.png
new file mode 100644
index 0000000000..17d34021c5
Binary files /dev/null and b/resources/palettes/map_glass/palette_map_glass_dark_yellow.png differ
diff --git a/resources/g2/palette_map/palette_map_glass_dull_brown_dark.png b/resources/palettes/map_glass/palette_map_glass_dull_brown_dark.png
similarity index 100%
rename from resources/g2/palette_map/palette_map_glass_dull_brown_dark.png
rename to resources/palettes/map_glass/palette_map_glass_dull_brown_dark.png
diff --git a/resources/g2/palette_map/palette_map_glass_dull_brown_light.png b/resources/palettes/map_glass/palette_map_glass_dull_brown_light.png
similarity index 100%
rename from resources/g2/palette_map/palette_map_glass_dull_brown_light.png
rename to resources/palettes/map_glass/palette_map_glass_dull_brown_light.png
diff --git a/resources/g2/palette_map/palette_map_glass_dull_green_dark.png b/resources/palettes/map_glass/palette_map_glass_dull_green_dark.png
similarity index 100%
rename from resources/g2/palette_map/palette_map_glass_dull_green_dark.png
rename to resources/palettes/map_glass/palette_map_glass_dull_green_dark.png
diff --git a/resources/g2/palette_map/palette_map_glass_dull_green_light.png b/resources/palettes/map_glass/palette_map_glass_dull_green_light.png
similarity index 100%
rename from resources/g2/palette_map/palette_map_glass_dull_green_light.png
rename to resources/palettes/map_glass/palette_map_glass_dull_green_light.png
diff --git a/resources/g2/palette_map/palette_map_glass_dull_purple_light.png b/resources/palettes/map_glass/palette_map_glass_dull_purple_light.png
similarity index 100%
rename from resources/g2/palette_map/palette_map_glass_dull_purple_light.png
rename to resources/palettes/map_glass/palette_map_glass_dull_purple_light.png
diff --git a/resources/g2/palette_map/palette_map_glass_grass_green_dark.png b/resources/palettes/map_glass/palette_map_glass_grass_green_dark.png
similarity index 100%
rename from resources/g2/palette_map/palette_map_glass_grass_green_dark.png
rename to resources/palettes/map_glass/palette_map_glass_grass_green_dark.png
diff --git a/resources/g2/palette_map/palette_map_glass_grass_green_light.png b/resources/palettes/map_glass/palette_map_glass_grass_green_light.png
similarity index 100%
rename from resources/g2/palette_map/palette_map_glass_grass_green_light.png
rename to resources/palettes/map_glass/palette_map_glass_grass_green_light.png
diff --git a/resources/palettes/map_glass/palette_map_glass_grey.png b/resources/palettes/map_glass/palette_map_glass_grey.png
new file mode 100644
index 0000000000..04e55c99a1
Binary files /dev/null and b/resources/palettes/map_glass/palette_map_glass_grey.png differ
diff --git a/resources/palettes/map_glass/palette_map_glass_icy_blue.png b/resources/palettes/map_glass/palette_map_glass_icy_blue.png
new file mode 100644
index 0000000000..9fd0e41406
Binary files /dev/null and b/resources/palettes/map_glass/palette_map_glass_icy_blue.png differ
diff --git a/resources/g2/palette_map/palette_map_glass_invisible.png b/resources/palettes/map_glass/palette_map_glass_invisible.png
similarity index 100%
rename from resources/g2/palette_map/palette_map_glass_invisible.png
rename to resources/palettes/map_glass/palette_map_glass_invisible.png
diff --git a/resources/palettes/map_glass/palette_map_glass_light_blue.png b/resources/palettes/map_glass/palette_map_glass_light_blue.png
new file mode 100644
index 0000000000..8981bcedd7
Binary files /dev/null and b/resources/palettes/map_glass/palette_map_glass_light_blue.png differ
diff --git a/resources/palettes/map_glass/palette_map_glass_light_brown.png b/resources/palettes/map_glass/palette_map_glass_light_brown.png
new file mode 100644
index 0000000000..ad820bc44d
Binary files /dev/null and b/resources/palettes/map_glass/palette_map_glass_light_brown.png differ
diff --git a/resources/palettes/map_glass/palette_map_glass_light_orange.png b/resources/palettes/map_glass/palette_map_glass_light_orange.png
new file mode 100644
index 0000000000..e01ed68571
Binary files /dev/null and b/resources/palettes/map_glass/palette_map_glass_light_orange.png differ
diff --git a/resources/palettes/map_glass/palette_map_glass_light_pink.png b/resources/palettes/map_glass/palette_map_glass_light_pink.png
new file mode 100644
index 0000000000..95fd037dfe
Binary files /dev/null and b/resources/palettes/map_glass/palette_map_glass_light_pink.png differ
diff --git a/resources/palettes/map_glass/palette_map_glass_light_purple.png b/resources/palettes/map_glass/palette_map_glass_light_purple.png
new file mode 100644
index 0000000000..91c2d34aaf
Binary files /dev/null and b/resources/palettes/map_glass/palette_map_glass_light_purple.png differ
diff --git a/resources/g2/palette_map/palette_map_glass_magenta_light.png b/resources/palettes/map_glass/palette_map_glass_magenta_light.png
similarity index 100%
rename from resources/g2/palette_map/palette_map_glass_magenta_light.png
rename to resources/palettes/map_glass/palette_map_glass_magenta_light.png
diff --git a/resources/palettes/map_glass/palette_map_glass_moss_green.png b/resources/palettes/map_glass/palette_map_glass_moss_green.png
new file mode 100644
index 0000000000..c17a289dfb
Binary files /dev/null and b/resources/palettes/map_glass/palette_map_glass_moss_green.png differ
diff --git a/resources/g2/palette_map/palette_map_glass_olive_dark.png b/resources/palettes/map_glass/palette_map_glass_olive_dark.png
similarity index 100%
rename from resources/g2/palette_map/palette_map_glass_olive_dark.png
rename to resources/palettes/map_glass/palette_map_glass_olive_dark.png
diff --git a/resources/palettes/map_glass/palette_map_glass_olive_green.png b/resources/palettes/map_glass/palette_map_glass_olive_green.png
new file mode 100644
index 0000000000..99553aef93
Binary files /dev/null and b/resources/palettes/map_glass/palette_map_glass_olive_green.png differ
diff --git a/resources/g2/palette_map/palette_map_glass_olive_light.png b/resources/palettes/map_glass/palette_map_glass_olive_light.png
similarity index 100%
rename from resources/g2/palette_map/palette_map_glass_olive_light.png
rename to resources/palettes/map_glass/palette_map_glass_olive_light.png
diff --git a/resources/g2/palette_map/palette_map_glass_orange_light.png b/resources/palettes/map_glass/palette_map_glass_orange_light.png
similarity index 100%
rename from resources/g2/palette_map/palette_map_glass_orange_light.png
rename to resources/palettes/map_glass/palette_map_glass_orange_light.png
diff --git a/resources/palettes/map_glass/palette_map_glass_salmon_pink.png b/resources/palettes/map_glass/palette_map_glass_salmon_pink.png
new file mode 100644
index 0000000000..469efbf7f5
Binary files /dev/null and b/resources/palettes/map_glass/palette_map_glass_salmon_pink.png differ
diff --git a/resources/palettes/map_glass/palette_map_glass_saturated_brown.png b/resources/palettes/map_glass/palette_map_glass_saturated_brown.png
new file mode 100644
index 0000000000..36037d5eae
Binary files /dev/null and b/resources/palettes/map_glass/palette_map_glass_saturated_brown.png differ
diff --git a/resources/g2/palette_map/palette_map_glass_saturated_brown_light.png b/resources/palettes/map_glass/palette_map_glass_saturated_brown_light.png
similarity index 100%
rename from resources/g2/palette_map/palette_map_glass_saturated_brown_light.png
rename to resources/palettes/map_glass/palette_map_glass_saturated_brown_light.png
diff --git a/resources/palettes/map_glass/palette_map_glass_saturated_green.png b/resources/palettes/map_glass/palette_map_glass_saturated_green.png
new file mode 100644
index 0000000000..b8d86f0a69
Binary files /dev/null and b/resources/palettes/map_glass/palette_map_glass_saturated_green.png differ
diff --git a/resources/g2/palette_map/palette_map_glass_saturated_green_light.png b/resources/palettes/map_glass/palette_map_glass_saturated_green_light.png
similarity index 100%
rename from resources/g2/palette_map/palette_map_glass_saturated_green_light.png
rename to resources/palettes/map_glass/palette_map_glass_saturated_green_light.png
diff --git a/resources/g2/palette_map/palette_map_glass_saturated_purple_dark.png b/resources/palettes/map_glass/palette_map_glass_saturated_purple_dark.png
similarity index 100%
rename from resources/g2/palette_map/palette_map_glass_saturated_purple_dark.png
rename to resources/palettes/map_glass/palette_map_glass_saturated_purple_dark.png
diff --git a/resources/g2/palette_map/palette_map_glass_saturated_purple_light.png b/resources/palettes/map_glass/palette_map_glass_saturated_purple_light.png
similarity index 100%
rename from resources/g2/palette_map/palette_map_glass_saturated_purple_light.png
rename to resources/palettes/map_glass/palette_map_glass_saturated_purple_light.png
diff --git a/resources/palettes/map_glass/palette_map_glass_saturated_red.png b/resources/palettes/map_glass/palette_map_glass_saturated_red.png
new file mode 100644
index 0000000000..024de73243
Binary files /dev/null and b/resources/palettes/map_glass/palette_map_glass_saturated_red.png differ
diff --git a/resources/g2/palette_map/palette_map_glass_tan_dark.png b/resources/palettes/map_glass/palette_map_glass_tan_dark.png
similarity index 100%
rename from resources/g2/palette_map/palette_map_glass_tan_dark.png
rename to resources/palettes/map_glass/palette_map_glass_tan_dark.png
diff --git a/resources/g2/palette_map/palette_map_glass_tan_light.png b/resources/palettes/map_glass/palette_map_glass_tan_light.png
similarity index 100%
rename from resources/g2/palette_map/palette_map_glass_tan_light.png
rename to resources/palettes/map_glass/palette_map_glass_tan_light.png
diff --git a/resources/palettes/map_glass/palette_map_glass_teal.png b/resources/palettes/map_glass/palette_map_glass_teal.png
new file mode 100644
index 0000000000..07f7bc4862
Binary files /dev/null and b/resources/palettes/map_glass/palette_map_glass_teal.png differ
diff --git a/resources/g2/palette_map/palette_map_glass_void.png b/resources/palettes/map_glass/palette_map_glass_void.png
similarity index 100%
rename from resources/g2/palette_map/palette_map_glass_void.png
rename to resources/palettes/map_glass/palette_map_glass_void.png
diff --git a/resources/palettes/map_glass/palette_map_glass_white.png b/resources/palettes/map_glass/palette_map_glass_white.png
new file mode 100644
index 0000000000..f9caff52c1
Binary files /dev/null and b/resources/palettes/map_glass/palette_map_glass_white.png differ
diff --git a/resources/palettes/map_glass/palette_map_glass_yellow.png b/resources/palettes/map_glass/palette_map_glass_yellow.png
new file mode 100644
index 0000000000..2bb75cb254
Binary files /dev/null and b/resources/palettes/map_glass/palette_map_glass_yellow.png differ
diff --git a/resources/palettes/map_translucent/palette_map_translucent_bordeaux_red.png b/resources/palettes/map_translucent/palette_map_translucent_bordeaux_red.png
new file mode 100644
index 0000000000..36bde566c9
Binary files /dev/null and b/resources/palettes/map_translucent/palette_map_translucent_bordeaux_red.png differ
diff --git a/resources/palettes/map_translucent/palette_map_translucent_bordeaux_red_highlight.png b/resources/palettes/map_translucent/palette_map_translucent_bordeaux_red_highlight.png
new file mode 100644
index 0000000000..b8b87ef1f8
Binary files /dev/null and b/resources/palettes/map_translucent/palette_map_translucent_bordeaux_red_highlight.png differ
diff --git a/resources/palettes/map_translucent/palette_map_translucent_bordeaux_red_shadow.png b/resources/palettes/map_translucent/palette_map_translucent_bordeaux_red_shadow.png
new file mode 100644
index 0000000000..6780f66926
Binary files /dev/null and b/resources/palettes/map_translucent/palette_map_translucent_bordeaux_red_shadow.png differ
diff --git a/resources/palettes/map_translucent/palette_map_translucent_bright_green.png b/resources/palettes/map_translucent/palette_map_translucent_bright_green.png
new file mode 100644
index 0000000000..c1c596917d
Binary files /dev/null and b/resources/palettes/map_translucent/palette_map_translucent_bright_green.png differ
diff --git a/resources/palettes/map_translucent/palette_map_translucent_bright_green_highlight.png b/resources/palettes/map_translucent/palette_map_translucent_bright_green_highlight.png
new file mode 100644
index 0000000000..f40062fe2d
Binary files /dev/null and b/resources/palettes/map_translucent/palette_map_translucent_bright_green_highlight.png differ
diff --git a/resources/palettes/map_translucent/palette_map_translucent_bright_green_shadow.png b/resources/palettes/map_translucent/palette_map_translucent_bright_green_shadow.png
new file mode 100644
index 0000000000..2326b1e5cc
Binary files /dev/null and b/resources/palettes/map_translucent/palette_map_translucent_bright_green_shadow.png differ
diff --git a/resources/palettes/map_translucent/palette_map_translucent_bright_pink.png b/resources/palettes/map_translucent/palette_map_translucent_bright_pink.png
new file mode 100644
index 0000000000..cbb39b0387
Binary files /dev/null and b/resources/palettes/map_translucent/palette_map_translucent_bright_pink.png differ
diff --git a/resources/palettes/map_translucent/palette_map_translucent_bright_pink_highlight.png b/resources/palettes/map_translucent/palette_map_translucent_bright_pink_highlight.png
new file mode 100644
index 0000000000..4f312e482a
Binary files /dev/null and b/resources/palettes/map_translucent/palette_map_translucent_bright_pink_highlight.png differ
diff --git a/resources/palettes/map_translucent/palette_map_translucent_bright_pink_shadow.png b/resources/palettes/map_translucent/palette_map_translucent_bright_pink_shadow.png
new file mode 100644
index 0000000000..175fe03dda
Binary files /dev/null and b/resources/palettes/map_translucent/palette_map_translucent_bright_pink_shadow.png differ
diff --git a/resources/palettes/map_translucent/palette_map_translucent_bright_purple.png b/resources/palettes/map_translucent/palette_map_translucent_bright_purple.png
new file mode 100644
index 0000000000..2c07816918
Binary files /dev/null and b/resources/palettes/map_translucent/palette_map_translucent_bright_purple.png differ
diff --git a/resources/palettes/map_translucent/palette_map_translucent_bright_purple_highlight.png b/resources/palettes/map_translucent/palette_map_translucent_bright_purple_highlight.png
new file mode 100644
index 0000000000..a79f3e09b0
Binary files /dev/null and b/resources/palettes/map_translucent/palette_map_translucent_bright_purple_highlight.png differ
diff --git a/resources/palettes/map_translucent/palette_map_translucent_bright_purple_shadow.png b/resources/palettes/map_translucent/palette_map_translucent_bright_purple_shadow.png
new file mode 100644
index 0000000000..fdeea0d03c
Binary files /dev/null and b/resources/palettes/map_translucent/palette_map_translucent_bright_purple_shadow.png differ
diff --git a/resources/palettes/map_translucent/palette_map_translucent_bright_red.png b/resources/palettes/map_translucent/palette_map_translucent_bright_red.png
new file mode 100644
index 0000000000..c050312016
Binary files /dev/null and b/resources/palettes/map_translucent/palette_map_translucent_bright_red.png differ
diff --git a/resources/palettes/map_translucent/palette_map_translucent_bright_red_highlight.png b/resources/palettes/map_translucent/palette_map_translucent_bright_red_highlight.png
new file mode 100644
index 0000000000..42c5fa0441
Binary files /dev/null and b/resources/palettes/map_translucent/palette_map_translucent_bright_red_highlight.png differ
diff --git a/resources/palettes/map_translucent/palette_map_translucent_bright_red_shadow.png b/resources/palettes/map_translucent/palette_map_translucent_bright_red_shadow.png
new file mode 100644
index 0000000000..0197155569
Binary files /dev/null and b/resources/palettes/map_translucent/palette_map_translucent_bright_red_shadow.png differ
diff --git a/resources/palettes/map_translucent/palette_map_translucent_dark_brown.png b/resources/palettes/map_translucent/palette_map_translucent_dark_brown.png
new file mode 100644
index 0000000000..b5cc2cc8cd
Binary files /dev/null and b/resources/palettes/map_translucent/palette_map_translucent_dark_brown.png differ
diff --git a/resources/palettes/map_translucent/palette_map_translucent_dark_brown_highlight.png b/resources/palettes/map_translucent/palette_map_translucent_dark_brown_highlight.png
new file mode 100644
index 0000000000..b713573bac
Binary files /dev/null and b/resources/palettes/map_translucent/palette_map_translucent_dark_brown_highlight.png differ
diff --git a/resources/palettes/map_translucent/palette_map_translucent_dark_brown_shadow.png b/resources/palettes/map_translucent/palette_map_translucent_dark_brown_shadow.png
new file mode 100644
index 0000000000..cd0321bc54
Binary files /dev/null and b/resources/palettes/map_translucent/palette_map_translucent_dark_brown_shadow.png differ
diff --git a/resources/palettes/map_translucent/palette_map_translucent_dark_green.png b/resources/palettes/map_translucent/palette_map_translucent_dark_green.png
new file mode 100644
index 0000000000..0951d15536
Binary files /dev/null and b/resources/palettes/map_translucent/palette_map_translucent_dark_green.png differ
diff --git a/resources/palettes/map_translucent/palette_map_translucent_dark_green_highlight.png b/resources/palettes/map_translucent/palette_map_translucent_dark_green_highlight.png
new file mode 100644
index 0000000000..40b91eb225
Binary files /dev/null and b/resources/palettes/map_translucent/palette_map_translucent_dark_green_highlight.png differ
diff --git a/resources/palettes/map_translucent/palette_map_translucent_dark_green_shadow.png b/resources/palettes/map_translucent/palette_map_translucent_dark_green_shadow.png
new file mode 100644
index 0000000000..7f755c20b7
Binary files /dev/null and b/resources/palettes/map_translucent/palette_map_translucent_dark_green_shadow.png differ
diff --git a/resources/palettes/map_translucent/palette_map_translucent_dark_olive_green.png b/resources/palettes/map_translucent/palette_map_translucent_dark_olive_green.png
new file mode 100644
index 0000000000..9a90361828
Binary files /dev/null and b/resources/palettes/map_translucent/palette_map_translucent_dark_olive_green.png differ
diff --git a/resources/palettes/map_translucent/palette_map_translucent_dark_olive_green_highlight.png b/resources/palettes/map_translucent/palette_map_translucent_dark_olive_green_highlight.png
new file mode 100644
index 0000000000..f805d9642e
Binary files /dev/null and b/resources/palettes/map_translucent/palette_map_translucent_dark_olive_green_highlight.png differ
diff --git a/resources/palettes/map_translucent/palette_map_translucent_dark_olive_green_shadow.png b/resources/palettes/map_translucent/palette_map_translucent_dark_olive_green_shadow.png
new file mode 100644
index 0000000000..3986bf46c7
Binary files /dev/null and b/resources/palettes/map_translucent/palette_map_translucent_dark_olive_green_shadow.png differ
diff --git a/resources/palettes/map_translucent/palette_map_translucent_grey.png b/resources/palettes/map_translucent/palette_map_translucent_grey.png
new file mode 100644
index 0000000000..3a8c71ed22
Binary files /dev/null and b/resources/palettes/map_translucent/palette_map_translucent_grey.png differ
diff --git a/resources/palettes/map_translucent/palette_map_translucent_grey_highlight.png b/resources/palettes/map_translucent/palette_map_translucent_grey_highlight.png
new file mode 100644
index 0000000000..e6d58632ce
Binary files /dev/null and b/resources/palettes/map_translucent/palette_map_translucent_grey_highlight.png differ
diff --git a/resources/palettes/map_translucent/palette_map_translucent_grey_shadow.png b/resources/palettes/map_translucent/palette_map_translucent_grey_shadow.png
new file mode 100644
index 0000000000..4d3ae2f7ee
Binary files /dev/null and b/resources/palettes/map_translucent/palette_map_translucent_grey_shadow.png differ
diff --git a/resources/palettes/map_translucent/palette_map_translucent_light_blue.png b/resources/palettes/map_translucent/palette_map_translucent_light_blue.png
new file mode 100644
index 0000000000..8981bcedd7
Binary files /dev/null and b/resources/palettes/map_translucent/palette_map_translucent_light_blue.png differ
diff --git a/resources/palettes/map_translucent/palette_map_translucent_light_blue_highlight.png b/resources/palettes/map_translucent/palette_map_translucent_light_blue_highlight.png
new file mode 100644
index 0000000000..2583e12b7e
Binary files /dev/null and b/resources/palettes/map_translucent/palette_map_translucent_light_blue_highlight.png differ
diff --git a/resources/palettes/map_translucent/palette_map_translucent_light_blue_shadow.png b/resources/palettes/map_translucent/palette_map_translucent_light_blue_shadow.png
new file mode 100644
index 0000000000..e4f9be6e11
Binary files /dev/null and b/resources/palettes/map_translucent/palette_map_translucent_light_blue_shadow.png differ
diff --git a/resources/palettes/map_translucent/palette_map_translucent_light_brown.png b/resources/palettes/map_translucent/palette_map_translucent_light_brown.png
new file mode 100644
index 0000000000..3e681b0c52
Binary files /dev/null and b/resources/palettes/map_translucent/palette_map_translucent_light_brown.png differ
diff --git a/resources/palettes/map_translucent/palette_map_translucent_light_brown_highlight.png b/resources/palettes/map_translucent/palette_map_translucent_light_brown_highlight.png
new file mode 100644
index 0000000000..d03beadc32
Binary files /dev/null and b/resources/palettes/map_translucent/palette_map_translucent_light_brown_highlight.png differ
diff --git a/resources/palettes/map_translucent/palette_map_translucent_light_brown_shadow.png b/resources/palettes/map_translucent/palette_map_translucent_light_brown_shadow.png
new file mode 100644
index 0000000000..b52f3d832b
Binary files /dev/null and b/resources/palettes/map_translucent/palette_map_translucent_light_brown_shadow.png differ
diff --git a/resources/palettes/map_translucent/palette_map_translucent_light_orange.png b/resources/palettes/map_translucent/palette_map_translucent_light_orange.png
new file mode 100644
index 0000000000..737a1b03e6
Binary files /dev/null and b/resources/palettes/map_translucent/palette_map_translucent_light_orange.png differ
diff --git a/resources/palettes/map_translucent/palette_map_translucent_light_orange_highlight.png b/resources/palettes/map_translucent/palette_map_translucent_light_orange_highlight.png
new file mode 100644
index 0000000000..28fe93c362
Binary files /dev/null and b/resources/palettes/map_translucent/palette_map_translucent_light_orange_highlight.png differ
diff --git a/resources/palettes/map_translucent/palette_map_translucent_light_orange_shadow.png b/resources/palettes/map_translucent/palette_map_translucent_light_orange_shadow.png
new file mode 100644
index 0000000000..f08a1ab416
Binary files /dev/null and b/resources/palettes/map_translucent/palette_map_translucent_light_orange_shadow.png differ
diff --git a/resources/palettes/map_translucent/palette_map_translucent_light_pink.png b/resources/palettes/map_translucent/palette_map_translucent_light_pink.png
new file mode 100644
index 0000000000..aaad8179b7
Binary files /dev/null and b/resources/palettes/map_translucent/palette_map_translucent_light_pink.png differ
diff --git a/resources/palettes/map_translucent/palette_map_translucent_light_pink_highlight.png b/resources/palettes/map_translucent/palette_map_translucent_light_pink_highlight.png
new file mode 100644
index 0000000000..78796737f6
Binary files /dev/null and b/resources/palettes/map_translucent/palette_map_translucent_light_pink_highlight.png differ
diff --git a/resources/palettes/map_translucent/palette_map_translucent_light_pink_shadow.png b/resources/palettes/map_translucent/palette_map_translucent_light_pink_shadow.png
new file mode 100644
index 0000000000..3e7039dee3
Binary files /dev/null and b/resources/palettes/map_translucent/palette_map_translucent_light_pink_shadow.png differ
diff --git a/resources/palettes/map_translucent/palette_map_translucent_light_purple.png b/resources/palettes/map_translucent/palette_map_translucent_light_purple.png
new file mode 100644
index 0000000000..37161c6fe2
Binary files /dev/null and b/resources/palettes/map_translucent/palette_map_translucent_light_purple.png differ
diff --git a/resources/palettes/map_translucent/palette_map_translucent_light_purple_highlight.png b/resources/palettes/map_translucent/palette_map_translucent_light_purple_highlight.png
new file mode 100644
index 0000000000..5ac949dc5b
Binary files /dev/null and b/resources/palettes/map_translucent/palette_map_translucent_light_purple_highlight.png differ
diff --git a/resources/palettes/map_translucent/palette_map_translucent_light_purple_shadow.png b/resources/palettes/map_translucent/palette_map_translucent_light_purple_shadow.png
new file mode 100644
index 0000000000..67515ce01e
Binary files /dev/null and b/resources/palettes/map_translucent/palette_map_translucent_light_purple_shadow.png differ
diff --git a/resources/palettes/map_translucent/palette_map_translucent_moss_green.png b/resources/palettes/map_translucent/palette_map_translucent_moss_green.png
new file mode 100644
index 0000000000..47d268a72a
Binary files /dev/null and b/resources/palettes/map_translucent/palette_map_translucent_moss_green.png differ
diff --git a/resources/palettes/map_translucent/palette_map_translucent_moss_green_highlight.png b/resources/palettes/map_translucent/palette_map_translucent_moss_green_highlight.png
new file mode 100644
index 0000000000..2a6c5aa6f1
Binary files /dev/null and b/resources/palettes/map_translucent/palette_map_translucent_moss_green_highlight.png differ
diff --git a/resources/palettes/map_translucent/palette_map_translucent_moss_green_shadow.png b/resources/palettes/map_translucent/palette_map_translucent_moss_green_shadow.png
new file mode 100644
index 0000000000..902a9405c6
Binary files /dev/null and b/resources/palettes/map_translucent/palette_map_translucent_moss_green_shadow.png differ
diff --git a/resources/palettes/map_translucent/palette_map_translucent_olive_green.png b/resources/palettes/map_translucent/palette_map_translucent_olive_green.png
new file mode 100644
index 0000000000..d570c2ed17
Binary files /dev/null and b/resources/palettes/map_translucent/palette_map_translucent_olive_green.png differ
diff --git a/resources/palettes/map_translucent/palette_map_translucent_olive_green_highlight.png b/resources/palettes/map_translucent/palette_map_translucent_olive_green_highlight.png
new file mode 100644
index 0000000000..a6a141cb15
Binary files /dev/null and b/resources/palettes/map_translucent/palette_map_translucent_olive_green_highlight.png differ
diff --git a/resources/palettes/map_translucent/palette_map_translucent_olive_green_shadow.png b/resources/palettes/map_translucent/palette_map_translucent_olive_green_shadow.png
new file mode 100644
index 0000000000..87bd54e2eb
Binary files /dev/null and b/resources/palettes/map_translucent/palette_map_translucent_olive_green_shadow.png differ
diff --git a/resources/palettes/map_translucent/palette_map_translucent_salmon_pink.png b/resources/palettes/map_translucent/palette_map_translucent_salmon_pink.png
new file mode 100644
index 0000000000..fba6386cb8
Binary files /dev/null and b/resources/palettes/map_translucent/palette_map_translucent_salmon_pink.png differ
diff --git a/resources/palettes/map_translucent/palette_map_translucent_salmon_pink_highlight.png b/resources/palettes/map_translucent/palette_map_translucent_salmon_pink_highlight.png
new file mode 100644
index 0000000000..8feefe5043
Binary files /dev/null and b/resources/palettes/map_translucent/palette_map_translucent_salmon_pink_highlight.png differ
diff --git a/resources/palettes/map_translucent/palette_map_translucent_salmon_pink_shadow.png b/resources/palettes/map_translucent/palette_map_translucent_salmon_pink_shadow.png
new file mode 100644
index 0000000000..a505d81e70
Binary files /dev/null and b/resources/palettes/map_translucent/palette_map_translucent_salmon_pink_shadow.png differ
diff --git a/resources/palettes/map_translucent/palette_map_translucent_teal.png b/resources/palettes/map_translucent/palette_map_translucent_teal.png
new file mode 100644
index 0000000000..05b338dbea
Binary files /dev/null and b/resources/palettes/map_translucent/palette_map_translucent_teal.png differ
diff --git a/resources/palettes/map_translucent/palette_map_translucent_teal_highlight.png b/resources/palettes/map_translucent/palette_map_translucent_teal_highlight.png
new file mode 100644
index 0000000000..427b9d09cd
Binary files /dev/null and b/resources/palettes/map_translucent/palette_map_translucent_teal_highlight.png differ
diff --git a/resources/palettes/map_translucent/palette_map_translucent_teal_shadow.png b/resources/palettes/map_translucent/palette_map_translucent_teal_shadow.png
new file mode 100644
index 0000000000..1ca71dba84
Binary files /dev/null and b/resources/palettes/map_translucent/palette_map_translucent_teal_shadow.png differ
diff --git a/resources/palettes/map_translucent/palette_map_translucent_white.png b/resources/palettes/map_translucent/palette_map_translucent_white.png
new file mode 100644
index 0000000000..c95b68dbc4
Binary files /dev/null and b/resources/palettes/map_translucent/palette_map_translucent_white.png differ
diff --git a/resources/palettes/map_translucent/palette_map_translucent_white_highlight.png b/resources/palettes/map_translucent/palette_map_translucent_white_highlight.png
new file mode 100644
index 0000000000..6037553a70
Binary files /dev/null and b/resources/palettes/map_translucent/palette_map_translucent_white_highlight.png differ
diff --git a/resources/palettes/map_translucent/palette_map_translucent_white_shadow.png b/resources/palettes/map_translucent/palette_map_translucent_white_shadow.png
new file mode 100644
index 0000000000..c2e45b0181
Binary files /dev/null and b/resources/palettes/map_translucent/palette_map_translucent_white_shadow.png differ
diff --git a/resources/palettes/map_translucent/palette_map_translucent_yellow.png b/resources/palettes/map_translucent/palette_map_translucent_yellow.png
new file mode 100644
index 0000000000..801ce602bd
Binary files /dev/null and b/resources/palettes/map_translucent/palette_map_translucent_yellow.png differ
diff --git a/resources/palettes/map_translucent/palette_map_translucent_yellow_highlight.png b/resources/palettes/map_translucent/palette_map_translucent_yellow_highlight.png
new file mode 100644
index 0000000000..79c1d2e018
Binary files /dev/null and b/resources/palettes/map_translucent/palette_map_translucent_yellow_highlight.png differ
diff --git a/resources/palettes/map_translucent/palette_map_translucent_yellow_shadow.png b/resources/palettes/map_translucent/palette_map_translucent_yellow_shadow.png
new file mode 100644
index 0000000000..829e1d3f42
Binary files /dev/null and b/resources/palettes/map_translucent/palette_map_translucent_yellow_shadow.png differ
diff --git a/resources/palettes/marker/palette_land_marker_0.png b/resources/palettes/marker/palette_land_marker_0.png
new file mode 100644
index 0000000000..0d72c1c7c0
Binary files /dev/null and b/resources/palettes/marker/palette_land_marker_0.png differ
diff --git a/resources/palettes/marker/palette_land_marker_1.png b/resources/palettes/marker/palette_land_marker_1.png
new file mode 100644
index 0000000000..b8fc4e29f3
Binary files /dev/null and b/resources/palettes/marker/palette_land_marker_1.png differ
diff --git a/resources/palettes/marker/palette_land_marker_2.png b/resources/palettes/marker/palette_land_marker_2.png
new file mode 100644
index 0000000000..5fe428b17d
Binary files /dev/null and b/resources/palettes/marker/palette_land_marker_2.png differ
diff --git a/resources/palettes/marker/palette_land_marker_3.png b/resources/palettes/marker/palette_land_marker_3.png
new file mode 100644
index 0000000000..dbefa5b715
Binary files /dev/null and b/resources/palettes/marker/palette_land_marker_3.png differ
diff --git a/resources/palettes/marker/palette_quarter_marker_0.png b/resources/palettes/marker/palette_quarter_marker_0.png
new file mode 100644
index 0000000000..30cd13ddbc
Binary files /dev/null and b/resources/palettes/marker/palette_quarter_marker_0.png differ
diff --git a/resources/palettes/marker/palette_quarter_marker_1.png b/resources/palettes/marker/palette_quarter_marker_1.png
new file mode 100644
index 0000000000..88b10018b4
Binary files /dev/null and b/resources/palettes/marker/palette_quarter_marker_1.png differ
diff --git a/resources/palettes/marker/palette_quarter_marker_2.png b/resources/palettes/marker/palette_quarter_marker_2.png
new file mode 100644
index 0000000000..1b11b0b886
Binary files /dev/null and b/resources/palettes/marker/palette_quarter_marker_2.png differ
diff --git a/resources/palettes/marker/palette_quarter_marker_3.png b/resources/palettes/marker/palette_quarter_marker_3.png
new file mode 100644
index 0000000000..752734268c
Binary files /dev/null and b/resources/palettes/marker/palette_quarter_marker_3.png differ
diff --git a/resources/palettes/marker/palette_ride_ground_marker.png b/resources/palettes/marker/palette_ride_ground_marker.png
new file mode 100644
index 0000000000..cf4568e30b
Binary files /dev/null and b/resources/palettes/marker/palette_ride_ground_marker.png differ
diff --git a/resources/palettes/marker/palette_scenery_ground_marker.png b/resources/palettes/marker/palette_scenery_ground_marker.png
new file mode 100644
index 0000000000..9cc67f659a
Binary files /dev/null and b/resources/palettes/marker/palette_scenery_ground_marker.png differ
diff --git a/resources/palettes/marker/palette_water_marker.png b/resources/palettes/marker/palette_water_marker.png
new file mode 100644
index 0000000000..2632b192f0
Binary files /dev/null and b/resources/palettes/marker/palette_water_marker.png differ
diff --git a/resources/palettes/sprites.json b/resources/palettes/sprites.json
new file mode 100644
index 0000000000..a55b506d22
--- /dev/null
+++ b/resources/palettes/sprites.json
@@ -0,0 +1,1347 @@
+[
+ {
+ "index": 10,
+ "colours": [
+ "#172323",
+ "#233333",
+ "#2F4343",
+ "#3F5353",
+ "#4B6363",
+ "#5B7373",
+ "#6F8383",
+ "#839797",
+ "#9FAFAF",
+ "#B7C3C3",
+ "#D3DBDB",
+ "#EFF3F3",
+ "#332F00",
+ "#3F3B00",
+ "#4F4B0B",
+ "#5B5B13",
+ "#6B6B1F",
+ "#777B2F",
+ "#878B3B",
+ "#979B4F",
+ "#A7AF5F",
+ "#BBBF73",
+ "#CBCF8B",
+ "#DFE3A3",
+ "#432B07",
+ "#573B0B",
+ "#6F4B17",
+ "#7F571F",
+ "#8F6327",
+ "#9F7333",
+ "#B38343",
+ "#BF9757",
+ "#CBAF6F",
+ "#DBC787",
+ "#E7DBA3",
+ "#F7EFC3",
+ "#471B00",
+ "#5F2B00",
+ "#773F00",
+ "#8F5307",
+ "#A76F07",
+ "#BF8B0F",
+ "#D7A713",
+ "#F3CB1B",
+ "#FFE72F",
+ "#FFF35F",
+ "#FFFB8F",
+ "#FFFFC3",
+ "#230000",
+ "#4F0000",
+ "#5F0707",
+ "#6F0F0F",
+ "#7F1B1B",
+ "#8F2727",
+ "#A33B3B",
+ "#B34F4F",
+ "#C76767",
+ "#D77F7F",
+ "#EB9F9F",
+ "#FFBFBF",
+ "#1B3313",
+ "#233F17",
+ "#2F4F1F",
+ "#3B5F27",
+ "#476F2B",
+ "#577F33",
+ "#638F3B",
+ "#739B43",
+ "#83AB4B",
+ "#93BB53",
+ "#A3CB5F",
+ "#B7DB67",
+ "#1F371B",
+ "#2F4723",
+ "#3B532B",
+ "#4B6337",
+ "#5B6F43",
+ "#6F874F",
+ "#879F5F",
+ "#9FB76F",
+ "#B7CF7F",
+ "#C3DB93",
+ "#CFE7A7",
+ "#DFF7BF",
+ "#0F3F00",
+ "#135300",
+ "#176700",
+ "#1F7B00",
+ "#278F07",
+ "#379F17",
+ "#47AF27",
+ "#5BBF3F",
+ "#6FCF57",
+ "#8BDF73",
+ "#A3EF8F",
+ "#C3FFB3",
+ "#4F2B13",
+ "#63371B",
+ "#77472B",
+ "#8B573B",
+ "#A76343",
+ "#BB7353",
+ "#CF8363",
+ "#D79773",
+ "#E3AB83",
+ "#EFBF97",
+ "#F7CFAB",
+ "#FFE3C3",
+ "#0F1337",
+ "#272B57",
+ "#333767",
+ "#3F4377",
+ "#53538B",
+ "#63639B",
+ "#7777AF",
+ "#8B8BBF",
+ "#9F9FCF",
+ "#B7B7DF",
+ "#D3D3EF",
+ "#EFEFFF",
+ "#001B6F",
+ "#002797",
+ "#0733A7",
+ "#0F43BB",
+ "#1B53CB",
+ "#2B67DF",
+ "#4387E3",
+ "#5BA3E7",
+ "#77BBEF",
+ "#8FD3F3",
+ "#AFE7FB",
+ "#D7F7FF",
+ "#0B2B0F",
+ "#0F3717",
+ "#17471F",
+ "#23532B",
+ "#2F633B",
+ "#3B734B",
+ "#4F875F",
+ "#639B77",
+ "#7BAF8B",
+ "#93C7A7",
+ "#AFDBC3",
+ "#CFF3DF",
+ "#3F005F",
+ "#4B0773",
+ "#530F7F",
+ "#5F1F8F",
+ "#6B2B9B",
+ "#7B3FAB",
+ "#8753BB",
+ "#9B67C7",
+ "#AB7FD7",
+ "#BF9BE7",
+ "#D7C3F3",
+ "#F3EBFF",
+ "#3F0000",
+ "#570000",
+ "#730000",
+ "#8F0000",
+ "#AB0000",
+ "#C70000",
+ "#E30700",
+ "#FF0700",
+ "#FF4F43",
+ "#FF7B73",
+ "#FFABA3",
+ "#FFDBD7",
+ "#4F2700",
+ "#6F3300",
+ "#933F00",
+ "#B74700",
+ "#DB4F00",
+ "#FF5300",
+ "#FF6F17",
+ "#FF8B33",
+ "#FFA34F",
+ "#FFB76B",
+ "#FFCB87",
+ "#FFDBA3",
+ "#00332F",
+ "#003F37",
+ "#004B43",
+ "#00574F",
+ "#076B63",
+ "#177F77",
+ "#2B938F",
+ "#47A7A3",
+ "#63BBBB",
+ "#83CFCF",
+ "#ABE7E7",
+ "#CFFFFF",
+ "#3F001B",
+ "#670033",
+ "#7B0B3F",
+ "#8F174F",
+ "#A31F5F",
+ "#B7276F",
+ "#DB3B8F",
+ "#EF5BAB",
+ "#F377BB",
+ "#F797CB",
+ "#FBB7DF",
+ "#FFD7EF",
+ "#271300",
+ "#371F07",
+ "#472F0F",
+ "#5B3F1F",
+ "#6B5333",
+ "#7B674B",
+ "#8F7F6B",
+ "#A3937F",
+ "#BBAB93",
+ "#CFC3AB",
+ "#E7DBC3",
+ "#FFF3DF",
+ "#374B4B",
+ "#FFB700",
+ "#FFDB00",
+ "#FFFF00",
+ "#076B63",
+ "#0F776F",
+ "#1B837B",
+ "#278F87",
+ "#379B97",
+ "#379B97",
+ "#53B3AF",
+ "#73CBCB",
+ "#9BE3E3",
+ "#C7FFFF",
+ "#435B5B",
+ "#536B6B",
+ "#637B7B",
+ "#00005F",
+ "#1B2B8B",
+ "#273B97"
+ ]
+ },
+ {
+ "index": 16,
+ "colours": [
+ "#379B97",
+ "#278F87",
+ "#1B837B",
+ "#0F776F",
+ "#076B63",
+ "#076B63",
+ "#076B63",
+ "#076B63",
+ "#076B63",
+ "#076B63",
+ "#076B63",
+ "#076B63",
+ "#0F776F",
+ "#1B837B",
+ "#278F87"
+ ]
+ },
+ {
+ "index": 32,
+ "colours": [
+ "#177F77",
+ "#0F736B",
+ "#076B63",
+ "#005F57",
+ "#00574F",
+ "#00574F",
+ "#00574F",
+ "#00574F",
+ "#00574F",
+ "#00574F",
+ "#00574F",
+ "#00574F",
+ "#005F57",
+ "#07675F",
+ "#0F736B"
+ ]
+ },
+ {
+ "index": 48,
+ "colours": [
+ "#076B63",
+ "#00635B",
+ "#005B53",
+ "#00534B",
+ "#004B43",
+ "#004B43",
+ "#004B43",
+ "#004B43",
+ "#004B43",
+ "#004B43",
+ "#004B43",
+ "#004B43",
+ "#00534B",
+ "#005B53",
+ "#00635B"
+ ]
+ },
+ {
+ "index": 80,
+ "colours": [
+ "#C7FFFF",
+ "#9BE3E3",
+ "#73CBCB",
+ "#53B3AF",
+ "#379B97",
+ "#379B97",
+ "#379B97",
+ "#379B97",
+ "#379B97",
+ "#379B97",
+ "#379B97",
+ "#379B97",
+ "#53B3AF",
+ "#73CBCB",
+ "#9BE3E3"
+ ]
+ },
+ {
+ "index": 96,
+ "colours": [
+ "#ABE7E7",
+ "#7BCBCB",
+ "#53B3AF",
+ "#2F9793",
+ "#177F77",
+ "#177F77",
+ "#177F77",
+ "#177F77",
+ "#177F77",
+ "#177F77",
+ "#177F77",
+ "#177F77",
+ "#2F9793",
+ "#53AFAF",
+ "#7BCBCB"
+ ]
+ },
+ {
+ "index": 112,
+ "colours": [
+ "#83CFCF",
+ "#57B3B3",
+ "#379B97",
+ "#1B837B",
+ "#076B63",
+ "#076B63",
+ "#076B63",
+ "#076B63",
+ "#076B63",
+ "#076B63",
+ "#076B63",
+ "#076B63",
+ "#1B837B",
+ "#339B97",
+ "#57B3B3"
+ ]
+ },
+ {
+ "index": 144,
+ "colours": [
+ "#2F2F2F",
+ "#2F2F2F",
+ "#57472F"
+ ]
+ },
+ {
+ "index": 160,
+ "colours": [
+ "#27272B",
+ "#27272B",
+ "#433723"
+ ]
+ },
+ {
+ "index": 176,
+ "colours": [
+ "#1F2327",
+ "#1F2327",
+ "#3F2F1B"
+ ]
+ },
+ {
+ "path": "map_base/palette_map_black.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_base/palette_map_grey.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_base/palette_map_white.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_base/palette_map_dark_purple.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_base/palette_map_light_purple.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_base/palette_map_bright_purple.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_base/palette_map_dark_blue.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_base/palette_map_light_blue.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_base/palette_map_icy_blue.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_base/palette_map_teal.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_base/palette_map_aquamarine.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_base/palette_map_saturated_green.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_base/palette_map_dark_green.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_base/palette_map_moss_green.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_base/palette_map_bright_green.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_base/palette_map_olive_green.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_base/palette_map_dark_olive_green.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_base/palette_map_bright_yellow.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_base/palette_map_yellow.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_base/palette_map_dark_yellow.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_base/palette_map_light_orange.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_base/palette_map_dark_orange.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_base/palette_map_light_brown.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_base/palette_map_saturated_brown.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_base/palette_map_dark_brown.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_base/palette_map_salmon_pink.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_base/palette_map_bordeaux_red.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_base/palette_map_saturated_red.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_base/palette_map_bright_red.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_base/palette_map_dark_pink.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_base/palette_map_bright_pink.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_base/palette_map_light_pink.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_base/palette_map_dark_olive_dark.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_base/palette_map_dark_olive_light.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_base/palette_map_saturated_brown_light.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_base/palette_map_bordeaux_red_dark.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_base/palette_map_bordeaux_red_light.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_base/palette_map_grass_green_dark.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_base/palette_map_grass_green_light.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_base/palette_map_olive_dark.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_base/palette_map_olive_light.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_base/palette_map_saturated_green_light.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_base/palette_map_tan_dark.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_base/palette_map_tan_light.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_base/palette_map_dull_purple_light.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_base/palette_map_dull_green_dark.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_base/palette_map_dull_green_light.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_base/palette_map_saturated_purple_dark.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_base/palette_map_saturated_purple_light.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_base/palette_map_orange_light.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_base/palette_map_aqua_dark.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_base/palette_map_magenta_light.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_base/palette_map_dull_brown_dark.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_base/palette_map_dull_brown_light.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_base/palette_map_invisible.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_base/palette_map_void.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_base/palette_map_water.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "marker/palette_land_marker_0.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "marker/palette_land_marker_1.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "marker/palette_land_marker_2.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "marker/palette_land_marker_3.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "marker/palette_scenery_ground_marker.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "marker/palette_water_marker.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "marker/palette_quarter_marker_0.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "marker/palette_quarter_marker_1.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "marker/palette_quarter_marker_2.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "marker/palette_quarter_marker_3.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "marker/palette_ride_ground_marker.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "base/palette_ghost.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "base/palette_45.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "base/palette_46.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "base/palette_darken_3.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "base/palette_decreased_contrast.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "base/palette_darken_1.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "base/palette_darken_2.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "base/palette_51.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_translucent/palette_map_translucent_grey.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_translucent/palette_map_translucent_grey_highlight.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_translucent/palette_map_translucent_grey_shadow.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_translucent/palette_map_translucent_light_blue.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_translucent/palette_map_translucent_light_blue_highlight.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_translucent/palette_map_translucent_light_blue_shadow.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_translucent/palette_map_translucent_bordeaux_red.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_translucent/palette_map_translucent_bordeaux_red_highlight.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_translucent/palette_map_translucent_bordeaux_red_shadow.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_translucent/palette_map_translucent_dark_green.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_translucent/palette_map_translucent_dark_green_highlight.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_translucent/palette_map_translucent_dark_green_shadow.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_translucent/palette_map_translucent_light_purple.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_translucent/palette_map_translucent_light_purple_highlight.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_translucent/palette_map_translucent_light_purple_shadow.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_translucent/palette_map_translucent_dark_olive_green.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_translucent/palette_map_translucent_dark_olive_green_highlight.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_translucent/palette_map_translucent_dark_olive_green_shadow.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_translucent/palette_map_translucent_light_brown.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_translucent/palette_map_translucent_light_brown_highlight.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_translucent/palette_map_translucent_light_brown_shadow.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_translucent/palette_map_translucent_yellow.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_translucent/palette_map_translucent_yellow_highlight.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_translucent/palette_map_translucent_yellow_shadow.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_translucent/palette_map_translucent_moss_green.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_translucent/palette_map_translucent_moss_green_highlight.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_translucent/palette_map_translucent_moss_green_shadow.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_translucent/palette_map_translucent_olive_green.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_translucent/palette_map_translucent_olive_green_highlight.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_translucent/palette_map_translucent_olive_green_shadow.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_translucent/palette_map_translucent_bright_green.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_translucent/palette_map_translucent_bright_green_highlight.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_translucent/palette_map_translucent_bright_green_shadow.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_translucent/palette_map_translucent_salmon_pink.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_translucent/palette_map_translucent_salmon_pink_highlight.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_translucent/palette_map_translucent_salmon_pink_shadow.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_translucent/palette_map_translucent_bright_purple.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_translucent/palette_map_translucent_bright_purple_highlight.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_translucent/palette_map_translucent_bright_purple_shadow.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_translucent/palette_map_translucent_bright_red.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_translucent/palette_map_translucent_bright_red_highlight.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_translucent/palette_map_translucent_bright_red_shadow.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_translucent/palette_map_translucent_light_orange.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_translucent/palette_map_translucent_light_orange_highlight.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_translucent/palette_map_translucent_light_orange_shadow.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_translucent/palette_map_translucent_teal.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_translucent/palette_map_translucent_teal_highlight.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_translucent/palette_map_translucent_teal_shadow.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_translucent/palette_map_translucent_bright_pink.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_translucent/palette_map_translucent_bright_pink_highlight.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_translucent/palette_map_translucent_bright_pink_shadow.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_translucent/palette_map_translucent_dark_brown.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_translucent/palette_map_translucent_dark_brown_highlight.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_translucent/palette_map_translucent_dark_brown_shadow.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_translucent/palette_map_translucent_light_pink.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_translucent/palette_map_translucent_light_pink_highlight.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_translucent/palette_map_translucent_light_pink_shadow.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_translucent/palette_map_translucent_white.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_translucent/palette_map_translucent_white_highlight.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_translucent/palette_map_translucent_white_shadow.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_glass/palette_map_glass_black.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_glass/palette_map_glass_grey.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_glass/palette_map_glass_white.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_glass/palette_map_glass_dark_purple.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_glass/palette_map_glass_light_purple.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_glass/palette_map_glass_bright_purple.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_glass/palette_map_glass_dark_blue.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_glass/palette_map_glass_light_blue.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_glass/palette_map_glass_icy_blue.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_glass/palette_map_glass_teal.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_glass/palette_map_glass_aquamarine.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_glass/palette_map_glass_saturated_green.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_glass/palette_map_glass_dark_green.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_glass/palette_map_glass_moss_green.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_glass/palette_map_glass_bright_green.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_glass/palette_map_glass_olive_green.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_glass/palette_map_glass_dark_olive_green.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_glass/palette_map_glass_bright_yellow.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_glass/palette_map_glass_yellow.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_glass/palette_map_glass_dark_yellow.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_glass/palette_map_glass_light_orange.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_glass/palette_map_glass_dark_orange.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_glass/palette_map_glass_light_brown.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_glass/palette_map_glass_saturated_brown.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_glass/palette_map_glass_dark_brown.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_glass/palette_map_glass_salmon_pink.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_glass/palette_map_glass_bordeaux_red.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_glass/palette_map_glass_saturated_red.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_glass/palette_map_glass_bright_red.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_glass/palette_map_glass_dark_pink.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_glass/palette_map_glass_bright_pink.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_glass/palette_map_glass_light_pink.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_glass/palette_map_glass_dark_olive_dark.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_glass/palette_map_glass_dark_olive_light.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_glass/palette_map_glass_saturated_brown_light.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_glass/palette_map_glass_bordeaux_red_dark.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_glass/palette_map_glass_bordeaux_red_light.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_glass/palette_map_glass_grass_green_dark.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_glass/palette_map_glass_grass_green_light.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_glass/palette_map_glass_olive_dark.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_glass/palette_map_glass_olive_light.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_glass/palette_map_glass_saturated_green_light.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_glass/palette_map_glass_tan_dark.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_glass/palette_map_glass_tan_light.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_glass/palette_map_glass_dull_purple_light.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_glass/palette_map_glass_dull_green_dark.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_glass/palette_map_glass_dull_green_light.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_glass/palette_map_glass_saturated_purple_dark.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_glass/palette_map_glass_saturated_purple_light.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_glass/palette_map_glass_orange_light.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_glass/palette_map_glass_aqua_dark.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_glass/palette_map_glass_magenta_light.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_glass/palette_map_glass_dull_brown_dark.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_glass/palette_map_glass_dull_brown_light.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_glass/palette_map_glass_invisible.png",
+ "palette": "keep",
+ "format": "raw"
+ },
+ {
+ "path": "map_glass/palette_map_glass_void.png",
+ "palette": "keep",
+ "format": "raw"
+ }
+]
diff --git a/src/openrct2-ui/CMakeLists.txt b/src/openrct2-ui/CMakeLists.txt
index d46972e059..00a4d0cc33 100644
--- a/src/openrct2-ui/CMakeLists.txt
+++ b/src/openrct2-ui/CMakeLists.txt
@@ -209,6 +209,8 @@ if(MACOS_BUNDLE)
list(APPEND BUNDLE_RESOURCES ${CMAKE_BINARY_DIR}/fonts.dat)
target_sources(openrct2 PUBLIC ${CMAKE_BINARY_DIR}/tracks.dat)
list(APPEND BUNDLE_RESOURCES ${CMAKE_BINARY_DIR}/tracks.dat)
+ target_sources(openrct2 PUBLIC ${CMAKE_BINARY_DIR}/palettes.dat)
+ list(APPEND BUNDLE_RESOURCES ${CMAKE_BINARY_DIR}/palettes.dat)
endif()
diff --git a/src/openrct2/Context.cpp b/src/openrct2/Context.cpp
index 96bec94660..d2f915112b 100644
--- a/src/openrct2/Context.cpp
+++ b/src/openrct2/Context.cpp
@@ -219,7 +219,7 @@ namespace OpenRCT2
GfxObjectCheckAllImagesFreed();
GfxUnloadCsg();
- GfxUnloadG2AndFonts();
+ GfxUnloadG2PalettesFontsTracks();
GfxUnloadG1();
Audio::Close();
@@ -1059,7 +1059,7 @@ namespace OpenRCT2
{
return false;
}
- GfxLoadG2FontsAndTracks();
+ GfxLoadG2PalettesFontsTracks();
GfxLoadCsg();
FontSpriteInitialiseCharacters();
return true;
diff --git a/src/openrct2/SpriteIds.h b/src/openrct2/SpriteIds.h
index a09781e729..6dc84b8833 100644
--- a/src/openrct2/SpriteIds.h
+++ b/src/openrct2/SpriteIds.h
@@ -20,7 +20,17 @@ enum : ImageIndex
// Used for on-demand drawing of dynamic memory
SPR_TEMP = 0x7FFFE,
- SPR_DEFAULT_PALETTE = 1532,
+ // Unused, listed for documentation purposes only
+ SPR_G1_PALETTE_DEFAULT = 1532,
+ SPR_G1_PALETTE_WATER = 1533,
+ SPR_G1_PALETTE_WATER_DARKER_1 = 1534,
+ SPR_G1_PALETTE_WATER_DARKER_2 = 1535,
+ SPR_G1_PALETTE_3 = 1536,
+ SPR_G1_PALETTE_3_DARKER_1 = 1537,
+ SPR_G1_PALETTE_3_DARKER_2 = 1538,
+ SPR_G1_PALETTE_4 = 1539,
+ SPR_G1_PALETTE_4_DARKER_1 = 1540,
+ SPR_G1_PALETTE_4_DARKER_2 = 1541,
SPR_SCROLLING_TEXT_LEGACY_START = 1542,
SPR_SCROLLING_TEXT_LEGACY_END = SPR_SCROLLING_TEXT_LEGACY_START + OpenRCT2::Drawing::ScrollingText::kMaxLegacyEntries,
@@ -38,8 +48,20 @@ enum : ImageIndex
SPR_TERRAIN_SELECTION_SQUARE = 2625, // Used to show land owned by park
SPR_TERRAIN_SELECTION_DOTTED = 2644, // Used to show construction rights owned by park
- SPR_PALETTE_1_START = 3100,
- SPR_PALETTE_1_END = 3110,
+ // Unused, listed for documentation purposes only
+ SPR_G1_PALETTE_1_START = 3100,
+ SPR_G1_PALETTE_LAND_MARKER_0 = SPR_G1_PALETTE_1_START,
+ SPR_G1_PALETTE_LAND_MARKER_1 = 3101,
+ SPR_G1_PALETTE_LAND_MARKER_2 = 3102,
+ SPR_G1_PALETTE_LAND_MARKER_3 = 3103,
+ SPR_G1_PALETTE_SCENERY_GROUND_MARKER = 3104,
+ SPR_G1_PALETTE_RIDE_GROUND_MARKER = 3105,
+ SPR_G1_PALETTE_WATER_MARKER = 3106,
+ SPR_G1_PALETTE_QUARTER_MARKER_0 = 3107,
+ SPR_G1_PALETTE_QUARTER_MARKER_1 = 3108,
+ SPR_G1_PALETTE_QUARTER_MARKER_2 = 3109,
+ SPR_G1_PALETTE_QUARTER_MARKER_3 = 3110,
+ SPR_G1_PALETTE_1_END = SPR_G1_PALETTE_QUARTER_MARKER_3,
PEEP_SPAWN_ARROW_0 = 3111,
PEEP_SPAWN_ARROW_1 = 3112,
@@ -55,9 +77,145 @@ enum : ImageIndex
SPR_CHAR_START = 3861,
SPR_CHAR_END = 4757,
- SPR_TEXT_PALETTE = 4914,
- SPR_PALETTE_2_START = 4915,
- SPR_PALETTE_2_END = 5047,
+ // Unused, listed for documentation purposes only
+ SPR_G1_TEXT_PALETTE = 4914,
+ SPR_G1_PALETTE_2_START = 4915,
+ SPR_G1_PALETTE_BLACK = SPR_G1_PALETTE_2_START,
+ SPR_G1_PALETTE_GREY = 4916,
+ SPR_G1_PALETTE_WHITE = 4917,
+ SPR_G1_PALETTE_DARK_PURPLE = 4918,
+ SPR_G1_PALETTE_LIGHT_PURPLE = 4919,
+ SPR_G1_PALETTE_BRIGHT_PURPLE = 4920,
+ SPR_G1_PALETTE_DARK_BLUE = 4921,
+ SPR_G1_PALETTE_LIGHT_BLUE = 4922,
+ SPR_G1_PALETTE_ICY_BLUE = 4923,
+ SPR_G1_PALETTE_TEAL = 4924,
+ SPR_G1_PALETTE_AQUAMARINE = 4925,
+ SPR_G1_PALETTE_SATURATED_GREEN = 4926,
+ SPR_G1_PALETTE_DARK_GREEN = 4927,
+ SPR_G1_PALETTE_MOSS_GREEN = 4928,
+ SPR_G1_PALETTE_BRIGHT_GREEN = 4929,
+ SPR_G1_PALETTE_OLIVE_GREEN = 4930,
+ SPR_G1_PALETTE_DARK_OLIVE_GREEN = 4931,
+ SPR_G1_PALETTE_BRIGHT_YELLOW = 4932,
+ SPR_G1_PALETTE_YELLOW = 4933,
+ SPR_G1_PALETTE_DARK_YELLOW = 4934,
+ SPR_G1_PALETTE_LIGHT_ORANGE = 4935,
+ SPR_G1_PALETTE_DARK_ORANGE = 4936,
+ SPR_G1_PALETTE_LIGHT_BROWN = 4937,
+ SPR_G1_PALETTE_SATURATED_BROWN = 4938,
+ SPR_G1_PALETTE_DARK_BROWN = 4939,
+ SPR_G1_PALETTE_SALMON_PINK = 4940,
+ SPR_G1_PALETTE_BORDEAUX_RED = 4941,
+ SPR_G1_PALETTE_SATURATED_RED = 4942,
+ SPR_G1_PALETTE_BRIGHT_RED = 4943,
+ SPR_G1_PALETTE_DARK_PINK = 4944,
+ SPR_G1_PALETTE_BRIGHT_PINK = 4945,
+ SPR_G1_PALETTE_LIGHT_PINK = 4946,
+
+ SPR_G1_PALETTE_WATER_MAP = 4947,
+ SPR_G1_PALETTE_GHOST = 4948,
+ SPR_G1_PALETTE_45 = 4949,
+ SPR_G1_PALETTE_46 = 4950,
+ SPR_G1_PALETTE_DARKEN_3 = 4951,
+ SPR_G1_PALETTE_DECREASED_CONTRAST = 4952,
+ SPR_G1_PALETTE_DARKEN_1 = 4953,
+ SPR_G1_PALETTE_DARKEN_2 = 4954,
+ SPR_G1_PALETTE_51 = 4955,
+
+ SPR_G1_PALETTE_TRANSLUCENT_GREY = 4956,
+ SPR_G1_PALETTE_TRANSLUCENT_GREY_HIGHLIGHT = 4957,
+ SPR_G1_PALETTE_TRANSLUCENT_GREY_SHADOW = 4958,
+ SPR_G1_PALETTE_TRANSLUCENT_LIGHT_BLUE = 4959,
+ SPR_G1_PALETTE_TRANSLUCENT_LIGHT_BLUE_HIGHLIGHT = 4960,
+ SPR_G1_PALETTE_TRANSLUCENT_LIGHT_BLUE_SHADOW = 4961,
+ SPR_G1_PALETTE_TRANSLUCENT_BORDEAUX_RED = 4962,
+ SPR_G1_PALETTE_TRANSLUCENT_BORDEAUX_RED_HIGHLIGHT = 4963,
+ SPR_G1_PALETTE_TRANSLUCENT_BORDEAUX_RED_SHADOW = 4964,
+ SPR_G1_PALETTE_TRANSLUCENT_DARK_GREEN = 4965,
+ SPR_G1_PALETTE_TRANSLUCENT_DARK_GREEN_HIGHLIGHT = 4966,
+ SPR_G1_PALETTE_TRANSLUCENT_DARK_GREEN_SHADOW = 4967,
+ SPR_G1_PALETTE_TRANSLUCENT_LIGHT_PURPLE = 4968,
+ SPR_G1_PALETTE_TRANSLUCENT_LIGHT_PURPLE_HIGHLIGHT = 4969,
+ SPR_G1_PALETTE_TRANSLUCENT_LIGHT_PURPLE_SHADOW = 4970,
+ SPR_G1_PALETTE_TRANSLUCENT_DARK_OLIVE_GREEN = 4971,
+ SPR_G1_PALETTE_TRANSLUCENT_DARK_OLIVE_GREEN_HIGHLIGHT = 4972,
+ SPR_G1_PALETTE_TRANSLUCENT_DARK_OLIVE_GREEN_SHADOW = 4973,
+ SPR_G1_PALETTE_TRANSLUCENT_LIGHT_BROWN = 4974,
+ SPR_G1_PALETTE_TRANSLUCENT_LIGHT_BROWN_HIGHLIGHT = 4975,
+ SPR_G1_PALETTE_TRANSLUCENT_LIGHT_BROWN_SHADOW = 4976,
+ SPR_G1_PALETTE_TRANSLUCENT_YELLOW = 4977,
+ SPR_G1_PALETTE_TRANSLUCENT_YELLOW_HIGHLIGHT = 4978,
+ SPR_G1_PALETTE_TRANSLUCENT_YELLOW_SHADOW = 4979,
+ SPR_G1_PALETTE_TRANSLUCENT_MOSS_GREEN = 4980,
+ SPR_G1_PALETTE_TRANSLUCENT_MOSS_GREEN_HIGHLIGHT = 4981,
+ SPR_G1_PALETTE_TRANSLUCENT_MOSS_GREEN_SHADOW = 4982,
+ SPR_G1_PALETTE_TRANSLUCENT_OLIVE_GREEN = 4983,
+ SPR_G1_PALETTE_TRANSLUCENT_OLIVE_GREEN_HIGHLIGHT = 4984,
+ SPR_G1_PALETTE_TRANSLUCENT_OLIVE_GREEN_SHADOW = 4985,
+ SPR_G1_PALETTE_TRANSLUCENT_BRIGHT_GREEN = 4986,
+ SPR_G1_PALETTE_TRANSLUCENT_BRIGHT_GREEN_HIGHLIGHT = 4987,
+ SPR_G1_PALETTE_TRANSLUCENT_BRIGHT_GREEN_SHADOW = 4988,
+ SPR_G1_PALETTE_TRANSLUCENT_SALMON_PINK = 4989,
+ SPR_G1_PALETTE_TRANSLUCENT_SALMON_PINK_HIGHLIGHT = 4990,
+ SPR_G1_PALETTE_TRANSLUCENT_SALMON_PINK_SHADOW = 4991,
+ SPR_G1_PALETTE_TRANSLUCENT_BRIGHT_PURPLE = 4992,
+ SPR_G1_PALETTE_TRANSLUCENT_BRIGHT_PURPLE_HIGHLIGHT = 4993,
+ SPR_G1_PALETTE_TRANSLUCENT_BRIGHT_PURPLE_SHADOW = 4994,
+ SPR_G1_PALETTE_TRANSLUCENT_BRIGHT_RED = 4995,
+ SPR_G1_PALETTE_TRANSLUCENT_BRIGHT_RED_HIGHLIGHT = 4996,
+ SPR_G1_PALETTE_TRANSLUCENT_BRIGHT_RED_SHADOW = 4997,
+ SPR_G1_PALETTE_TRANSLUCENT_LIGHT_ORANGE = 4998,
+ SPR_G1_PALETTE_TRANSLUCENT_LIGHT_ORANGE_HIGHLIGHT = 4999,
+ SPR_G1_PALETTE_TRANSLUCENT_LIGHT_ORANGE_SHADOW = 5000,
+ SPR_G1_PALETTE_TRANSLUCENT_TEAL = 5001,
+ SPR_G1_PALETTE_TRANSLUCENT_TEAL_HIGHLIGHT = 5002,
+ SPR_G1_PALETTE_TRANSLUCENT_TEAL_SHADOW = 5003,
+ SPR_G1_PALETTE_TRANSLUCENT_BRIGHT_PINK = 5004,
+ SPR_G1_PALETTE_TRANSLUCENT_BRIGHT_PINK_HIGHLIGHT = 5005,
+ SPR_G1_PALETTE_TRANSLUCENT_BRIGHT_PINK_SHADOW = 5006,
+ SPR_G1_PALETTE_TRANSLUCENT_DARK_BROWN = 5007,
+ SPR_G1_PALETTE_TRANSLUCENT_DARK_BROWN_HIGHLIGHT = 5008,
+ SPR_G1_PALETTE_TRANSLUCENT_DARK_BROWN_SHADOW = 5009,
+ SPR_G1_PALETTE_TRANSLUCENT_LIGHT_PINK = 5010,
+ SPR_G1_PALETTE_TRANSLUCENT_LIGHT_PINK_HIGHLIGHT = 5011,
+ SPR_G1_PALETTE_TRANSLUCENT_LIGHT_PINK_SHADOW = 5012,
+ SPR_G1_PALETTE_TRANSLUCENT_WHITE = 5013,
+ SPR_G1_PALETTE_TRANSLUCENT_WHITE_HIGHLIGHT = 5014,
+ SPR_G1_PALETTE_TRANSLUCENT_WHITE_SHADOW = 5015,
+ SPR_G1_PALETTE_GLASS_BLACK = 5016,
+ SPR_G1_PALETTE_GLASS_GREY = 5017,
+ SPR_G1_PALETTE_GLASS_WHITE = 5018,
+ SPR_G1_PALETTE_GLASS_DARK_PURPLE = 5019,
+ SPR_G1_PALETTE_GLASS_LIGHT_PURPLE = 5020,
+ SPR_G1_PALETTE_GLASS_BRIGHT_PURPLE = 5021,
+ SPR_G1_PALETTE_GLASS_DARK_BLUE = 5022,
+ SPR_G1_PALETTE_GLASS_LIGHT_BLUE = 5023,
+ SPR_G1_PALETTE_GLASS_ICY_BLUE = 5024,
+ SPR_G1_PALETTE_GLASS_TEAL = 5025,
+ SPR_G1_PALETTE_GLASS_AQUAMARINE = 5026,
+ SPR_G1_PALETTE_GLASS_SATURATED_GREEN = 5027,
+ SPR_G1_PALETTE_GLASS_DARK_GREEN = 5028,
+ SPR_G1_PALETTE_GLASS_MOSS_GREEN = 5029,
+ SPR_G1_PALETTE_GLASS_BRIGHT_GREEN = 5030,
+ SPR_G1_PALETTE_GLASS_OLIVE_GREEN = 5031,
+ SPR_G1_PALETTE_GLASS_DARK_OLIVE_GREEN = 5032,
+ SPR_G1_PALETTE_GLASS_BRIGHT_YELLOW = 5033,
+ SPR_G1_PALETTE_GLASS_YELLOW = 5034,
+ SPR_G1_PALETTE_GLASS_DARK_YELLOW = 5035,
+ SPR_G1_PALETTE_GLASS_LIGHT_ORANGE = 5036,
+ SPR_G1_PALETTE_GLASS_DARK_ORANGE = 5037,
+ SPR_G1_PALETTE_GLASS_LIGHT_BROWN = 5038,
+ SPR_G1_PALETTE_GLASS_SATURATED_BROWN = 5039,
+ SPR_G1_PALETTE_GLASS_DARK_BROWN = 5040,
+ SPR_G1_PALETTE_GLASS_SALMON_PINK = 5041,
+ SPR_G1_PALETTE_GLASS_BORDEAUX_RED = 5042,
+ SPR_G1_PALETTE_GLASS_SATURATED_RED = 5043,
+ SPR_G1_PALETTE_GLASS_BRIGHT_RED = 5044,
+ SPR_G1_PALETTE_GLASS_DARK_PINK = 5045,
+ SPR_G1_PALETTE_GLASS_BRIGHT_PINK = 5046,
+ SPR_G1_PALETTE_GLASS_LIGHT_PINK = 5047,
+ SPR_G1_PALETTE_2_END = SPR_G1_PALETTE_GLASS_LIGHT_PINK,
SPR_RESIZE = 5058,
SPR_PALETTE_BTN = 5059,
@@ -1022,59 +1180,6 @@ enum : ImageIndex
SPR_G2_LOADER_GO_KARTS_TRACK,
SPR_G2_LOADER_GO_KARTS_VEHICLES,
- // G2 Palette maps
-
- SPR_G2_PALETTE_BEGIN,
- SPR_G2_PAL_REMAP_DARK_OLIVE_DARK = SPR_G2_PALETTE_BEGIN,
- SPR_G2_PAL_REMAP_DARK_OLIVE_LIGHT,
- SPR_G2_PAL_REMAP_SATURATED_BROWN_LIGHT,
- SPR_G2_PAL_REMAP_BORDEAUX_RED_DARK,
- SPR_G2_PAL_REMAP_BORDEAUX_RED_LIGHT,
- SPR_G2_PAL_REMAP_GRASS_GREEN_DARK,
- SPR_G2_PAL_REMAP_GRASS_GREEN_LIGHT,
- SPR_G2_PAL_REMAP_OLIVE_DARK,
- SPR_G2_PAL_REMAP_OLIVE_LIGHT,
- SPR_G2_PAL_REMAP_SATURATED_GREEN_LIGHT,
- SPR_G2_PAL_REMAP_TAN_DARK,
- SPR_G2_PAL_REMAP_TAN_LIGHT,
- SPR_G2_PAL_REMAP_DULL_PURPLE_LIGHT,
- SPR_G2_PAL_REMAP_DULL_GREEN_DARK,
- SPR_G2_PAL_REMAP_DULL_GREEN_LIGHT,
- SPR_G2_PAL_REMAP_SATURATED_PURPLE_DARK,
- SPR_G2_PAL_REMAP_SATURATED_PURPLE_LIGHT,
- SPR_G2_PAL_REMAP_ORANGE_LIGHT,
- SPR_G2_PAL_REMAP_AQUA_DARK,
- SPR_G2_PAL_REMAP_MAGENTA_LIGHT,
- SPR_G2_PAL_REMAP_DULL_BROWN_DARK,
- SPR_G2_PAL_REMAP_DULL_BROWN_LIGHT,
- SPR_G2_PAL_REMAP_INVISIBLE,
- SPR_G2_PAL_REMAP_VOID,
- SPR_G2_PAL_GLASS_DARK_OLIVE_DARK,
- SPR_G2_PAL_GLASS_DARK_OLIVE_LIGHT,
- SPR_G2_PAL_GLASS_SATURATED_BROWN_LIGHT,
- SPR_G2_PAL_GLASS_BORDEAUX_RED_DARK,
- SPR_G2_PAL_GLASS_BORDEAUX_RED_LIGHT,
- SPR_G2_PAL_GLASS_GRASS_GREEN_DARK,
- SPR_G2_PAL_GLASS_GRASS_GREEN_LIGHT,
- SPR_G2_PAL_GLASS_OLIVE_DARK,
- SPR_G2_PAL_GLASS_OLIVE_LIGHT,
- SPR_G2_PAL_GLASS_SATURATED_GREEN_LIGHT,
- SPR_G2_PAL_GLASS_TAN_DARK,
- SPR_G2_PAL_GLASS_TAN_LIGHT,
- SPR_G2_PAL_GLASS_DULL_PURPLE_LIGHT,
- SPR_G2_PAL_GLASS_DULL_GREEN_DARK,
- SPR_G2_PAL_GLASS_DULL_GREEN_LIGHT,
- SPR_G2_PAL_GLASS_SATURATED_PURPLE_DARK,
- SPR_G2_PAL_GLASS_SATURATED_PURPLE_LIGHT,
- SPR_G2_PAL_GLASS_ORANGE_LIGHT,
- SPR_G2_PAL_GLASS_AQUA_DARK,
- SPR_G2_PAL_GLASS_MAGENTA_LIGHT,
- SPR_G2_PAL_GLASS_DULL_BROWN_DARK,
- SPR_G2_PAL_GLASS_DULL_BROWN_LIGHT,
- SPR_G2_PAL_GLASS_INVISIBLE,
- SPR_G2_PAL_GLASS_VOID,
- SPR_G2_PALETTE_END = SPR_G2_PAL_GLASS_VOID,
-
// G2 Misc
SPR_G2_SURFACE_GLASSY_RECOLOURABLE,
@@ -1092,8 +1197,228 @@ enum : ImageIndex
SPR_G2_END,
- SPR_FONTS_BEGIN = SPR_G2_END,
+ // Main palettes
+ SPR_PALETTE_START = SPR_G2_END,
+ SPR_GAME_DEFAULT_PALETTE = SPR_PALETTE_START,
+ SPR_GAME_PALETTE_WATER,
+ SPR_GAME_PALETTE_WATER_DARKER_1,
+ SPR_GAME_PALETTE_WATER_DARKER_2,
+ SPR_GAME_PALETTE_3,
+ SPR_GAME_PALETTE_3_DARKER_1,
+ SPR_GAME_PALETTE_3_DARKER_2,
+ SPR_GAME_PALETTE_4,
+ SPR_GAME_PALETTE_4_DARKER_1,
+ SPR_GAME_PALETTE_4_DARKER_2,
+
+ // Remap palettes dumped from G1
+ SPR_PALETTE_2_START,
+ SPR_PALETTE_BLACK = SPR_PALETTE_2_START,
+ SPR_PALETTE_GREY,
+ SPR_PALETTE_WHITE,
+ SPR_PALETTE_DARK_PURPLE,
+ SPR_PALETTE_LIGHT_PURPLE,
+ SPR_PALETTE_BRIGHT_PURPLE,
+ SPR_PALETTE_DARK_BLUE,
+ SPR_PALETTE_LIGHT_BLUE,
+ SPR_PALETTE_ICY_BLUE,
+ SPR_PALETTE_TEAL,
+ SPR_PALETTE_AQUAMARINE,
+ SPR_PALETTE_SATURATED_GREEN,
+ SPR_PALETTE_DARK_GREEN,
+ SPR_PALETTE_MOSS_GREEN,
+ SPR_PALETTE_BRIGHT_GREEN,
+ SPR_PALETTE_OLIVE_GREEN,
+ SPR_PALETTE_DARK_OLIVE_GREEN,
+ SPR_PALETTE_BRIGHT_YELLOW,
+ SPR_PALETTE_YELLOW,
+ SPR_PALETTE_DARK_YELLOW,
+ SPR_PALETTE_LIGHT_ORANGE,
+ SPR_PALETTE_DARK_ORANGE,
+ SPR_PALETTE_LIGHT_BROWN,
+ SPR_PALETTE_SATURATED_BROWN,
+ SPR_PALETTE_DARK_BROWN,
+ SPR_PALETTE_SALMON_PINK,
+ SPR_PALETTE_BORDEAUX_RED,
+ SPR_PALETTE_SATURATED_RED,
+ SPR_PALETTE_BRIGHT_RED,
+ SPR_PALETTE_DARK_PINK,
+ SPR_PALETTE_BRIGHT_PINK,
+ SPR_PALETTE_LIGHT_PINK,
+
+ // Extended remap palettes
+ SPR_PALETTE_DARK_OLIVE_DARK,
+ SPR_PALETTE_DARK_OLIVE_LIGHT,
+ SPR_PALETTE_SATURATED_BROWN_LIGHT,
+ SPR_PALETTE_BORDEAUX_RED_DARK,
+ SPR_PALETTE_BORDEAUX_RED_LIGHT,
+ SPR_PALETTE_GRASS_GREEN_DARK,
+ SPR_PALETTE_GRASS_GREEN_LIGHT,
+ SPR_PALETTE_OLIVE_DARK,
+ SPR_PALETTE_OLIVE_LIGHT,
+ SPR_PALETTE_SATURATED_GREEN_LIGHT,
+ SPR_PALETTE_TAN_DARK,
+ SPR_PALETTE_TAN_LIGHT,
+ SPR_PALETTE_DULL_PURPLE_LIGHT,
+ SPR_PALETTE_DULL_GREEN_DARK,
+ SPR_PALETTE_DULL_GREEN_LIGHT,
+ SPR_PALETTE_SATURATED_PURPLE_DARK,
+ SPR_PALETTE_SATURATED_PURPLE_LIGHT,
+ SPR_PALETTE_ORANGE_LIGHT,
+ SPR_PALETTE_AQUA_DARK,
+ SPR_PALETTE_MAGENTA_LIGHT,
+ SPR_PALETTE_DULL_BROWN_DARK,
+ SPR_PALETTE_DULL_BROWN_LIGHT,
+ SPR_PALETTE_INVISIBLE,
+ SPR_PALETTE_VOID,
+ SPR_PALETTE_2_END,
+
+ // Additional palettes dumped from G1
+ SPR_PALETTE_WATER = SPR_PALETTE_2_END,
+ SPR_PALETTE_LAND_MARKER_0,
+ SPR_PALETTE_LAND_MARKER_1,
+ SPR_PALETTE_LAND_MARKER_2,
+ SPR_PALETTE_LAND_MARKER_3,
+ SPR_PALETTE_SCENERY_GROUND_MARKER,
+ SPR_PALETTE_WATER_MARKER,
+ SPR_PALETTE_QUARTER_MARKER_0,
+ SPR_PALETTE_QUARTER_MARKER_1,
+ SPR_PALETTE_QUARTER_MARKER_2,
+ SPR_PALETTE_QUARTER_MARKER_3,
+ SPR_PALETTE_RIDE_GROUND_MARKER,
+ SPR_PALETTE_GHOST,
+ SPR_PALETTE_45,
+ SPR_PALETTE_46,
+ SPR_PALETTE_DARKEN_3,
+ SPR_PALETTE_DECREASED_CONTRAST,
+ SPR_PALETTE_DARKEN_1,
+ SPR_PALETTE_DARKEN_2,
+ SPR_PALETTE_51,
+
+ // Translucent remap palettes dumped from G1
+ SPR_PALETTE_TRANSLUCENT_GREY,
+ SPR_PALETTE_TRANSLUCENT_GREY_HIGHLIGHT,
+ SPR_PALETTE_TRANSLUCENT_GREY_SHADOW,
+ SPR_PALETTE_TRANSLUCENT_LIGHT_BLUE,
+ SPR_PALETTE_TRANSLUCENT_LIGHT_BLUE_HIGHLIGHT,
+ SPR_PALETTE_TRANSLUCENT_LIGHT_BLUE_SHADOW,
+ SPR_PALETTE_TRANSLUCENT_BORDEAUX_RED,
+ SPR_PALETTE_TRANSLUCENT_BORDEAUX_RED_HIGHLIGHT,
+ SPR_PALETTE_TRANSLUCENT_BORDEAUX_RED_SHADOW,
+ SPR_PALETTE_TRANSLUCENT_DARK_GREEN,
+ SPR_PALETTE_TRANSLUCENT_DARK_GREEN_HIGHLIGHT,
+ SPR_PALETTE_TRANSLUCENT_DARK_GREEN_SHADOW,
+ SPR_PALETTE_TRANSLUCENT_LIGHT_PURPLE,
+ SPR_PALETTE_TRANSLUCENT_LIGHT_PURPLE_HIGHLIGHT,
+ SPR_PALETTE_TRANSLUCENT_LIGHT_PURPLE_SHADOW,
+ SPR_PALETTE_TRANSLUCENT_DARK_OLIVE_GREEN,
+ SPR_PALETTE_TRANSLUCENT_DARK_OLIVE_GREEN_HIGHLIGHT,
+ SPR_PALETTE_TRANSLUCENT_DARK_OLIVE_GREEN_SHADOW,
+ SPR_PALETTE_TRANSLUCENT_LIGHT_BROWN,
+ SPR_PALETTE_TRANSLUCENT_LIGHT_BROWN_HIGHLIGHT,
+ SPR_PALETTE_TRANSLUCENT_LIGHT_BROWN_SHADOW,
+ SPR_PALETTE_TRANSLUCENT_YELLOW,
+ SPR_PALETTE_TRANSLUCENT_YELLOW_HIGHLIGHT,
+ SPR_PALETTE_TRANSLUCENT_YELLOW_SHADOW,
+ SPR_PALETTE_TRANSLUCENT_MOSS_GREEN,
+ SPR_PALETTE_TRANSLUCENT_MOSS_GREEN_HIGHLIGHT,
+ SPR_PALETTE_TRANSLUCENT_MOSS_GREEN_SHADOW,
+ SPR_PALETTE_TRANSLUCENT_OLIVE_GREEN,
+ SPR_PALETTE_TRANSLUCENT_OLIVE_GREEN_HIGHLIGHT,
+ SPR_PALETTE_TRANSLUCENT_OLIVE_GREEN_SHADOW,
+ SPR_PALETTE_TRANSLUCENT_BRIGHT_GREEN,
+ SPR_PALETTE_TRANSLUCENT_BRIGHT_GREEN_HIGHLIGHT,
+ SPR_PALETTE_TRANSLUCENT_BRIGHT_GREEN_SHADOW,
+ SPR_PALETTE_TRANSLUCENT_SALMON_PINK,
+ SPR_PALETTE_TRANSLUCENT_SALMON_PINK_HIGHLIGHT,
+ SPR_PALETTE_TRANSLUCENT_SALMON_PINK_SHADOW,
+ SPR_PALETTE_TRANSLUCENT_BRIGHT_PURPLE,
+ SPR_PALETTE_TRANSLUCENT_BRIGHT_PURPLE_HIGHLIGHT,
+ SPR_PALETTE_TRANSLUCENT_BRIGHT_PURPLE_SHADOW,
+ SPR_PALETTE_TRANSLUCENT_BRIGHT_RED,
+ SPR_PALETTE_TRANSLUCENT_BRIGHT_RED_HIGHLIGHT,
+ SPR_PALETTE_TRANSLUCENT_BRIGHT_RED_SHADOW,
+ SPR_PALETTE_TRANSLUCENT_LIGHT_ORANGE,
+ SPR_PALETTE_TRANSLUCENT_LIGHT_ORANGE_HIGHLIGHT,
+ SPR_PALETTE_TRANSLUCENT_LIGHT_ORANGE_SHADOW,
+ SPR_PALETTE_TRANSLUCENT_TEAL,
+ SPR_PALETTE_TRANSLUCENT_TEAL_HIGHLIGHT,
+ SPR_PALETTE_TRANSLUCENT_TEAL_SHADOW,
+ SPR_PALETTE_TRANSLUCENT_BRIGHT_PINK,
+ SPR_PALETTE_TRANSLUCENT_BRIGHT_PINK_HIGHLIGHT,
+ SPR_PALETTE_TRANSLUCENT_BRIGHT_PINK_SHADOW,
+ SPR_PALETTE_TRANSLUCENT_DARK_BROWN,
+ SPR_PALETTE_TRANSLUCENT_DARK_BROWN_HIGHLIGHT,
+ SPR_PALETTE_TRANSLUCENT_DARK_BROWN_SHADOW,
+ SPR_PALETTE_TRANSLUCENT_LIGHT_PINK,
+ SPR_PALETTE_TRANSLUCENT_LIGHT_PINK_HIGHLIGHT,
+ SPR_PALETTE_TRANSLUCENT_LIGHT_PINK_SHADOW,
+ SPR_PALETTE_TRANSLUCENT_WHITE,
+ SPR_PALETTE_TRANSLUCENT_WHITE_HIGHLIGHT,
+ SPR_PALETTE_TRANSLUCENT_WHITE_SHADOW,
+
+ // Glass remap palettes dumped from G1
+ SPR_PALETTE_GLASS_BLACK,
+ SPR_PALETTE_GLASS_GREY,
+ SPR_PALETTE_GLASS_WHITE,
+ SPR_PALETTE_GLASS_DARK_PURPLE,
+ SPR_PALETTE_GLASS_LIGHT_PURPLE,
+ SPR_PALETTE_GLASS_BRIGHT_PURPLE,
+ SPR_PALETTE_GLASS_DARK_BLUE,
+ SPR_PALETTE_GLASS_LIGHT_BLUE,
+ SPR_PALETTE_GLASS_ICY_BLUE,
+ SPR_PALETTE_GLASS_TEAL,
+ SPR_PALETTE_GLASS_AQUAMARINE,
+ SPR_PALETTE_GLASS_SATURATED_GREEN,
+ SPR_PALETTE_GLASS_DARK_GREEN,
+ SPR_PALETTE_GLASS_MOSS_GREEN,
+ SPR_PALETTE_GLASS_BRIGHT_GREEN,
+ SPR_PALETTE_GLASS_OLIVE_GREEN,
+ SPR_PALETTE_GLASS_DARK_OLIVE_GREEN,
+ SPR_PALETTE_GLASS_BRIGHT_YELLOW,
+ SPR_PALETTE_GLASS_YELLOW,
+ SPR_PALETTE_GLASS_DARK_YELLOW,
+ SPR_PALETTE_GLASS_LIGHT_ORANGE,
+ SPR_PALETTE_GLASS_DARK_ORANGE,
+ SPR_PALETTE_GLASS_LIGHT_BROWN,
+ SPR_PALETTE_GLASS_SATURATED_BROWN,
+ SPR_PALETTE_GLASS_DARK_BROWN,
+ SPR_PALETTE_GLASS_SALMON_PINK,
+ SPR_PALETTE_GLASS_BORDEAUX_RED,
+ SPR_PALETTE_GLASS_SATURATED_RED,
+ SPR_PALETTE_GLASS_BRIGHT_RED,
+ SPR_PALETTE_GLASS_DARK_PINK,
+ SPR_PALETTE_GLASS_BRIGHT_PINK,
+ SPR_PALETTE_GLASS_LIGHT_PINK,
+
+ // Extended glass remap palettes
+ SPR_PALETTE_GLASS_DARK_OLIVE_DARK,
+ SPR_PALETTE_GLASS_DARK_OLIVE_LIGHT,
+ SPR_PALETTE_GLASS_SATURATED_BROWN_LIGHT,
+ SPR_PALETTE_GLASS_BORDEAUX_RED_DARK,
+ SPR_PALETTE_GLASS_BORDEAUX_RED_LIGHT,
+ SPR_PALETTE_GLASS_GRASS_GREEN_DARK,
+ SPR_PALETTE_GLASS_GRASS_GREEN_LIGHT,
+ SPR_PALETTE_GLASS_OLIVE_DARK,
+ SPR_PALETTE_GLASS_OLIVE_LIGHT,
+ SPR_PALETTE_GLASS_SATURATED_GREEN_LIGHT,
+ SPR_PALETTE_GLASS_TAN_DARK,
+ SPR_PALETTE_GLASS_TAN_LIGHT,
+ SPR_PALETTE_GLASS_DULL_PURPLE_LIGHT,
+ SPR_PALETTE_GLASS_DULL_GREEN_DARK,
+ SPR_PALETTE_GLASS_DULL_GREEN_LIGHT,
+ SPR_PALETTE_GLASS_SATURATED_PURPLE_DARK,
+ SPR_PALETTE_GLASS_SATURATED_PURPLE_LIGHT,
+ SPR_PALETTE_GLASS_ORANGE_LIGHT,
+ SPR_PALETTE_GLASS_AQUA_DARK,
+ SPR_PALETTE_GLASS_MAGENTA_LIGHT,
+ SPR_PALETTE_GLASS_DULL_BROWN_DARK,
+ SPR_PALETTE_GLASS_DULL_BROWN_LIGHT,
+ SPR_PALETTE_GLASS_INVISIBLE,
+ SPR_PALETTE_GLASS_VOID,
+ SPR_PALETTE_END,
+
// Sprite font characters
+ SPR_FONTS_BEGIN = SPR_PALETTE_END,
SPR_FONTS_AE_UPPER = SPR_FONTS_BEGIN + 224,
SPR_FONTS_AE_LOWER,
@@ -1815,5 +2140,6 @@ enum : ImageIndex
};
constexpr size_t kG2SpriteCount = SPR_G2_END - SPR_G2_BEGIN;
+constexpr size_t kPalettesDatSpriteCount = SPR_PALETTE_END - SPR_PALETTE_START;
constexpr size_t kFontsDatSpriteCount = SPR_FONTS_END - SPR_FONTS_BEGIN;
constexpr size_t kTracksDatSpriteCount = SPR_TRACKS_END - SPR_TRACKS_BEGIN;
diff --git a/src/openrct2/drawing/ColourMap.cpp b/src/openrct2/drawing/ColourMap.cpp
index a59e5534d6..550956c22c 100644
--- a/src/openrct2/drawing/ColourMap.cpp
+++ b/src/openrct2/drawing/ColourMap.cpp
@@ -34,13 +34,9 @@ namespace OpenRCT2::Drawing
void initColourMaps()
{
- // Get colour maps from g1
for (int32_t i = 0; i < COLOUR_COUNT; i++)
{
- // Get palette index in g1 / g2
- const auto paletteIndex = (i < kColourNumOriginal) ? SPR_PALETTE_2_START
- : SPR_G2_PALETTE_BEGIN - kColourNumOriginal;
- const auto* g1 = GfxGetG1Element(paletteIndex + i);
+ const auto* g1 = GfxGetG1Element(SPR_PALETTE_2_START + i);
if (g1 != nullptr)
{
_colourMap[i].colour0 = static_cast(g1->offset[kIndexColour0]);
diff --git a/src/openrct2/drawing/Drawing.Sprite.cpp b/src/openrct2/drawing/Drawing.Sprite.cpp
index c02eef9913..3206aca73e 100644
--- a/src/openrct2/drawing/Drawing.Sprite.cpp
+++ b/src/openrct2/drawing/Drawing.Sprite.cpp
@@ -438,6 +438,7 @@ static void MaskMagnify(
static Gx _g1 = {};
static Gx _g2 = {};
static Gx _fonts = {};
+static Gx _palettes = {};
static Gx _tracks = {};
static Gx _csg = {};
static G1Element _scrollingText[ScrollingText::kMaxEntries]{};
@@ -511,14 +512,20 @@ void GfxUnloadG1()
_g1.elements.shrink_to_fit();
}
-void GfxUnloadG2AndFonts()
+void GfxUnloadG2PalettesFontsTracks()
{
_g2.data.reset();
_g2.elements.clear();
_g2.elements.shrink_to_fit();
+
+ _palettes.data.reset();
+ _palettes.elements.clear();
+ _palettes.elements.shrink_to_fit();
+
_fonts.data.reset();
_fonts.elements.clear();
_fonts.elements.shrink_to_fit();
+
_tracks.data.reset();
_tracks.elements.clear();
_tracks.elements.shrink_to_fit();
@@ -529,6 +536,7 @@ void GfxUnloadCsg()
_csg.data.reset();
_csg.elements.clear();
_csg.elements.shrink_to_fit();
+ _csgLoaded = false;
}
static bool GfxLoadOpenRCT2Gx(std::string filename, Gx& target, size_t expectedNumItems)
@@ -598,9 +606,10 @@ static bool GfxLoadOpenRCT2Gx(std::string filename, Gx& target, size_t expectedN
return false;
}
-void GfxLoadG2FontsAndTracks()
+void GfxLoadG2PalettesFontsTracks()
{
GfxLoadOpenRCT2Gx("g2.dat", _g2, kG2SpriteCount);
+ GfxLoadOpenRCT2Gx("palettes.dat", _palettes, kPalettesDatSpriteCount);
GfxLoadOpenRCT2Gx("fonts.dat", _fonts, kFontsDatSpriteCount);
GfxLoadOpenRCT2Gx("tracks.dat", _tracks, kTracksDatSpriteCount);
}
@@ -1056,6 +1065,16 @@ const G1Element* GfxGetG1Element(ImageIndex image_id)
LOG_WARNING("Invalid entry in g2.dat requested, idx = %u. You may have to update your g2.dat.", idx);
}
+ else if (offset < SPR_PALETTE_END)
+ {
+ size_t idx = offset - SPR_PALETTE_START;
+ if (idx < _palettes.header.numEntries)
+ {
+ return &_palettes.elements[idx];
+ }
+
+ LOG_WARNING("Invalid entry in palettes.dat requested, idx = %u. You may have to update your palettes.dat.", idx);
+ }
else if (offset < SPR_FONTS_END)
{
size_t idx = offset - SPR_FONTS_BEGIN;
diff --git a/src/openrct2/drawing/Drawing.cpp b/src/openrct2/drawing/Drawing.cpp
index dd655b4bf6..06188a9d60 100644
--- a/src/openrct2/drawing/Drawing.cpp
+++ b/src/openrct2/drawing/Drawing.cpp
@@ -105,205 +105,6 @@ TextColours gTextPalette = {
bool gPaintForceRedraw{ false };
-enum
-{
- SPR_PALETTE_3100 = 3100,
- SPR_PALETTE_3101 = 3101,
- SPR_PALETTE_3102 = 3102,
- SPR_PALETTE_3103 = 3103,
- SPR_PALETTE_3104 = 3104,
- SPR_PALETTE_3105 = 3105,
- SPR_PALETTE_3106 = 3106,
- SPR_PALETTE_3107 = 3107,
- SPR_PALETTE_3108 = 3108,
- SPR_PALETTE_3109 = 3109,
- SPR_PALETTE_3110 = 3110,
-
- SPR_PALETTE_BLACK = 4915,
- SPR_PALETTE_GREY = 4916,
- SPR_PALETTE_WHITE = 4917,
- SPR_PALETTE_DARK_PURPLE = 4918,
- SPR_PALETTE_LIGHT_PURPLE = 4919,
- SPR_PALETTE_BRIGHT_PURPLE = 4920,
- SPR_PALETTE_DARK_BLUE = 4921,
- SPR_PALETTE_LIGHT_BLUE = 4922,
- SPR_PALETTE_ICY_BLUE = 4923,
- SPR_PALETTE_TEAL = 4924,
- SPR_PALETTE_AQUAMARINE = 4925,
- SPR_PALETTE_SATURATED_GREEN = 4926,
- SPR_PALETTE_DARK_GREEN = 4927,
- SPR_PALETTE_MOSS_GREEN = 4928,
- SPR_PALETTE_BRIGHT_GREEN = 4929,
- SPR_PALETTE_OLIVE_GREEN = 4930,
- SPR_PALETTE_DARK_OLIVE_GREEN = 4931,
- SPR_PALETTE_BRIGHT_YELLOW = 4932,
- SPR_PALETTE_YELLOW = 4933,
- SPR_PALETTE_DARK_YELLOW = 4934,
- SPR_PALETTE_LIGHT_ORANGE = 4935,
- SPR_PALETTE_DARK_ORANGE = 4936,
- SPR_PALETTE_LIGHT_BROWN = 4937,
- SPR_PALETTE_SATURATED_BROWN = 4938,
- SPR_PALETTE_DARK_BROWN = 4939,
- SPR_PALETTE_SALMON_PINK = 4940,
- SPR_PALETTE_BORDEAUX_RED = 4941,
- SPR_PALETTE_SATURATED_RED = 4942,
- SPR_PALETTE_BRIGHT_RED = 4943,
- SPR_PALETTE_DARK_PINK = 4944,
- SPR_PALETTE_BRIGHT_PINK = 4945,
- SPR_PALETTE_LIGHT_PINK = 4946,
- SPR_PALETTE_WATER = 4947,
- SPR_PALETTE_4948 = 4948,
- SPR_PALETTE_4949 = 4949,
- SPR_PALETTE_4950 = 4950,
- SPR_PALETTE_DARKEN_3 = 4951,
- SPR_PALETTE_4952 = 4952,
- SPR_PALETTE_DARKEN_1 = 4953,
- SPR_PALETTE_DARKEN_2 = 4954,
- SPR_PALETTE_4955 = 4955,
- SPR_PALETTE_TRANSLUCENT_GREY = 4956,
- SPR_PALETTE_TRANSLUCENT_GREY_HIGHLIGHT = 4957,
- SPR_PALETTE_TRANSLUCENT_GREY_SHADOW = 4958,
- SPR_PALETTE_TRANSLUCENT_LIGHT_BLUE = 4959,
- SPR_PALETTE_TRANSLUCENT_LIGHT_BLUE_HIGHLIGHT = 4960,
- SPR_PALETTE_TRANSLUCENT_LIGHT_BLUE_SHADOW = 4961,
- SPR_PALETTE_TRANSLUCENT_BORDEAUX_RED = 4962,
- SPR_PALETTE_TRANSLUCENT_BORDEAUX_RED_HIGHLIGHT = 4963,
- SPR_PALETTE_TRANSLUCENT_BORDEAUX_RED_SHADOW = 4964,
- SPR_PALETTE_TRANSLUCENT_DARK_GREEN = 4965,
- SPR_PALETTE_TRANSLUCENT_DARK_GREEN_HIGHLIGHT = 4966,
- SPR_PALETTE_TRANSLUCENT_DARK_GREEN_SHADOW = 4967,
- SPR_PALETTE_TRANSLUCENT_LIGHT_PURPLE = 4968,
- SPR_PALETTE_TRANSLUCENT_LIGHT_PURPLE_HIGHLIGHT = 4969,
- SPR_PALETTE_TRANSLUCENT_LIGHT_PURPLE_SHADOW = 4970,
- SPR_PALETTE_TRANSLUCENT_DARK_OLIVE_GREEN = 4971,
- SPR_PALETTE_TRANSLUCENT_DARK_OLIVE_GREEN_HIGHLIGHT = 4972,
- SPR_PALETTE_TRANSLUCENT_DARK_OLIVE_GREEN_SHADOW = 4973,
- SPR_PALETTE_TRANSLUCENT_LIGHT_BROWN = 4974,
- SPR_PALETTE_TRANSLUCENT_LIGHT_BROWN_HIGHLIGHT = 4975,
- SPR_PALETTE_TRANSLUCENT_LIGHT_BROWN_SHADOW = 4976,
- SPR_PALETTE_TRANSLUCENT_YELLOW = 4977,
- SPR_PALETTE_TRANSLUCENT_YELLOW_HIGHLIGHT = 4978,
- SPR_PALETTE_TRANSLUCENT_YELLOW_SHADOW = 4979,
- SPR_PALETTE_TRANSLUCENT_MOSS_GREEN = 4980,
- SPR_PALETTE_TRANSLUCENT_MOSS_GREEN_HIGHLIGHT = 4981,
- SPR_PALETTE_TRANSLUCENT_MOSS_GREEN_SHADOW = 4982,
- SPR_PALETTE_TRANSLUCENT_OLIVE_GREEN = 4983,
- SPR_PALETTE_TRANSLUCENT_OLIVE_GREEN_HIGHLIGHT = 4984,
- SPR_PALETTE_TRANSLUCENT_OLIVE_GREEN_SHADOW = 4985,
- SPR_PALETTE_TRANSLUCENT_BRIGHT_GREEN = 4986,
- SPR_PALETTE_TRANSLUCENT_BRIGHT_GREEN_HIGHLIGHT = 4987,
- SPR_PALETTE_TRANSLUCENT_BRIGHT_GREEN_SHADOW = 4988,
- SPR_PALETTE_TRANSLUCENT_SALMON_PINK = 4989,
- SPR_PALETTE_TRANSLUCENT_SALMON_PINK_HIGHLIGHT = 4990,
- SPR_PALETTE_TRANSLUCENT_SALMON_PINK_SHADOW = 4991,
- SPR_PALETTE_TRANSLUCENT_BRIGHT_PURPLE = 4992,
- SPR_PALETTE_TRANSLUCENT_BRIGHT_PURPLE_HIGHLIGHT = 4993,
- SPR_PALETTE_TRANSLUCENT_BRIGHT_PURPLE_SHADOW = 4994,
- SPR_PALETTE_TRANSLUCENT_BRIGHT_RED = 4995,
- SPR_PALETTE_TRANSLUCENT_BRIGHT_RED_HIGHLIGHT = 4996,
- SPR_PALETTE_TRANSLUCENT_BRIGHT_RED_SHADOW = 4997,
- SPR_PALETTE_TRANSLUCENT_LIGHT_ORANGE = 4998,
- SPR_PALETTE_TRANSLUCENT_LIGHT_ORANGE_HIGHLIGHT = 4999,
- SPR_PALETTE_TRANSLUCENT_LIGHT_ORANGE_SHADOW = 5000,
- SPR_PALETTE_TRANSLUCENT_TEAL = 5001,
- SPR_PALETTE_TRANSLUCENT_TEAL_HIGHLIGHT = 5002,
- SPR_PALETTE_TRANSLUCENT_TEAL_SHADOW = 5003,
- SPR_PALETTE_TRANSLUCENT_BRIGHT_PINK = 5004,
- SPR_PALETTE_TRANSLUCENT_BRIGHT_PINK_HIGHLIGHT = 5005,
- SPR_PALETTE_TRANSLUCENT_BRIGHT_PINK_SHADOW = 5006,
- SPR_PALETTE_TRANSLUCENT_DARK_BROWN = 5007,
- SPR_PALETTE_TRANSLUCENT_DARK_BROWN_HIGHLIGHT = 5008,
- SPR_PALETTE_TRANSLUCENT_DARK_BROWN_SHADOW = 5009,
- SPR_PALETTE_TRANSLUCENT_LIGHT_PINK = 5010,
- SPR_PALETTE_TRANSLUCENT_LIGHT_PINK_HIGHLIGHT = 5011,
- SPR_PALETTE_TRANSLUCENT_LIGHT_PINK_SHADOW = 5012,
- SPR_PALETTE_TRANSLUCENT_WHITE = 5013,
- SPR_PALETTE_TRANSLUCENT_WHITE_HIGHLIGHT = 5014,
- SPR_PALETTE_TRANSLUCENT_WHITE_SHADOW = 5015,
- SPR_PALETTE_GLASS_BLACK = 5016,
- SPR_PALETTE_GLASS_GREY = 5017,
- SPR_PALETTE_GLASS_WHITE = 5018,
- SPR_PALETTE_GLASS_DARK_PURPLE = 5019,
- SPR_PALETTE_GLASS_LIGHT_PURPLE = 5020,
- SPR_PALETTE_GLASS_BRIGHT_PURPLE = 5021,
- SPR_PALETTE_GLASS_DARK_BLUE = 5022,
- SPR_PALETTE_GLASS_LIGHT_BLUE = 5023,
- SPR_PALETTE_GLASS_ICY_BLUE = 5024,
- SPR_PALETTE_GLASS_TEAL = 5025,
- SPR_PALETTE_GLASS_AQUAMARINE = 5026,
- SPR_PALETTE_GLASS_SATURATED_GREEN = 5027,
- SPR_PALETTE_GLASS_DARK_GREEN = 5028,
- SPR_PALETTE_GLASS_MOSS_GREEN = 5029,
- SPR_PALETTE_GLASS_BRIGHT_GREEN = 5030,
- SPR_PALETTE_GLASS_OLIVE_GREEN = 5031,
- SPR_PALETTE_GLASS_DARK_OLIVE_GREEN = 5032,
- SPR_PALETTE_GLASS_BRIGHT_YELLOW = 5033,
- SPR_PALETTE_GLASS_YELLOW = 5034,
- SPR_PALETTE_GLASS_DARK_YELLOW = 5035,
- SPR_PALETTE_GLASS_LIGHT_ORANGE = 5036,
- SPR_PALETTE_GLASS_DARK_ORANGE = 5037,
- SPR_PALETTE_GLASS_LIGHT_BROWN = 5038,
- SPR_PALETTE_GLASS_SATURATED_BROWN = 5039,
- SPR_PALETTE_GLASS_DARK_BROWN = 5040,
- SPR_PALETTE_GLASS_SALMON_PINK = 5041,
- SPR_PALETTE_GLASS_BORDEAUX_RED = 5042,
- SPR_PALETTE_GLASS_SATURATED_RED = 5043,
- SPR_PALETTE_GLASS_BRIGHT_RED = 5044,
- SPR_PALETTE_GLASS_DARK_PINK = 5045,
- SPR_PALETTE_GLASS_BRIGHT_PINK = 5046,
- SPR_PALETTE_GLASS_LIGHT_PINK = 5047,
-
- SPR_PALETTE_DARK_OLIVE_DARK = SPR_G2_PALETTE_BEGIN,
- SPR_PALETTE_DARK_OLIVE_LIGHT,
- SPR_PALETTE_SATURATED_BROWN_LIGHT,
- SPR_PALETTE_BORDEAUX_RED_DARK,
- SPR_PALETTE_BORDEAUX_RED_LIGHT,
- SPR_PALETTE_GRASS_GREEN_DARK,
- SPR_PALETTE_GRASS_GREEN_LIGHT,
- SPR_PALETTE_OLIVE_DARK,
- SPR_PALETTE_OLIVE_LIGHT,
- SPR_PALETTE_SATURATED_GREEN_LIGHT,
- SPR_PALETTE_TAN_DARK,
- SPR_PALETTE_TAN_LIGHT,
- SPR_PALETTE_DULL_PURPLE_LIGHT,
- SPR_PALETTE_DULL_GREEN_DARK,
- SPR_PALETTE_DULL_GREEN_LIGHT,
- SPR_PALETTE_SATURATED_PURPLE_DARK,
- SPR_PALETTE_SATURATED_PURPLE_LIGHT,
- SPR_PALETTE_ORANGE_LIGHT,
- SPR_PALETTE_AQUA_DARK,
- SPR_PALETTE_MAGENTA_LIGHT,
- SPR_PALETTE_DULL_BROWN_DARK,
- SPR_PALETTE_DULL_BROWN_LIGHT,
- SPR_PALETTE_INVISIBLE,
- SPR_PALETTE_VOID,
-
- SPR_PALETTE_GLASS_DARK_OLIVE_DARK,
- SPR_PALETTE_GLASS_DARK_OLIVE_LIGHT,
- SPR_PALETTE_GLASS_SATURATED_BROWN_LIGHT,
- SPR_PALETTE_GLASS_BORDEAUX_RED_DARK,
- SPR_PALETTE_GLASS_BORDEAUX_RED_LIGHT,
- SPR_PALETTE_GLASS_GRASS_GREEN_DARK,
- SPR_PALETTE_GLASS_GRASS_GREEN_LIGHT,
- SPR_PALETTE_GLASS_OLIVE_DARK,
- SPR_PALETTE_GLASS_OLIVE_LIGHT,
- SPR_PALETTE_GLASS_SATURATED_GREEN_LIGHT,
- SPR_PALETTE_GLASS_TAN_DARK,
- SPR_PALETTE_GLASS_TAN_LIGHT,
- SPR_PALETTE_GLASS_DULL_PURPLE_LIGHT,
- SPR_PALETTE_GLASS_DULL_GREEN_DARK,
- SPR_PALETTE_GLASS_DULL_GREEN_LIGHT,
- SPR_PALETTE_GLASS_SATURATED_PURPLE_DARK,
- SPR_PALETTE_GLASS_SATURATED_PURPLE_LIGHT,
- SPR_PALETTE_GLASS_ORANGE_LIGHT,
- SPR_PALETTE_GLASS_AQUA_DARK,
- SPR_PALETTE_GLASS_MAGENTA_LIGHT,
- SPR_PALETTE_GLASS_DULL_BROWN_DARK,
- SPR_PALETTE_GLASS_DULL_BROWN_LIGHT,
- SPR_PALETTE_GLASS_INVISIBLE,
- SPR_PALETTE_GLASS_VOID,
-};
-
static constexpr FilterPaletteID kGlassPaletteIds[COLOUR_COUNT] = {
FilterPaletteID::paletteGlassBlack,
FilterPaletteID::paletteGlassGrey,
@@ -366,6 +167,7 @@ static constexpr FilterPaletteID kGlassPaletteIds[COLOUR_COUNT] = {
// Previously 0x97FCBC use it to get the correct palette from g1_elements
// clang-format off
static constexpr uint16_t kPaletteToG1Offset[kPaletteTotalOffsets] = {
+ // Main remap palettes
SPR_PALETTE_BLACK,
SPR_PALETTE_GREY,
SPR_PALETTE_WHITE,
@@ -398,6 +200,8 @@ static constexpr uint16_t kPaletteToG1Offset[kPaletteTotalOffsets] = {
SPR_PALETTE_DARK_PINK,
SPR_PALETTE_BRIGHT_PINK,
SPR_PALETTE_LIGHT_PINK,
+
+ // Extended remap palettes
SPR_PALETTE_DARK_OLIVE_DARK,
SPR_PALETTE_DARK_OLIVE_LIGHT,
SPR_PALETTE_SATURATED_BROWN_LIGHT,
@@ -423,27 +227,29 @@ static constexpr uint16_t kPaletteToG1Offset[kPaletteTotalOffsets] = {
SPR_PALETTE_INVISIBLE,
SPR_PALETTE_VOID,
- SPR_PALETTE_WATER, // PaletteWater (water)
- SPR_PALETTE_3100,
- SPR_PALETTE_3101, // Palette34
- SPR_PALETTE_3102,
- SPR_PALETTE_3103,
- SPR_PALETTE_3104,
- SPR_PALETTE_3106,
- SPR_PALETTE_3107,
- SPR_PALETTE_3108, // 40
- SPR_PALETTE_3109,
- SPR_PALETTE_3110,
- SPR_PALETTE_3105,
- SPR_PALETTE_4948,
- SPR_PALETTE_4949, // Palette45
- SPR_PALETTE_4950,
- SPR_PALETTE_DARKEN_3, // PaletteDarken3
- SPR_PALETTE_4952, // Decreases contrast
- SPR_PALETTE_DARKEN_1, // PaletteDarken1
- SPR_PALETTE_DARKEN_2, // PaletteDarken2 (construction marker)
- SPR_PALETTE_4955, // Palette51
+ // Additional palettes
+ SPR_PALETTE_WATER,
+ SPR_PALETTE_LAND_MARKER_0,
+ SPR_PALETTE_LAND_MARKER_1,
+ SPR_PALETTE_LAND_MARKER_2,
+ SPR_PALETTE_LAND_MARKER_3,
+ SPR_PALETTE_SCENERY_GROUND_MARKER,
+ SPR_PALETTE_WATER_MARKER,
+ SPR_PALETTE_QUARTER_MARKER_0,
+ SPR_PALETTE_QUARTER_MARKER_1,
+ SPR_PALETTE_QUARTER_MARKER_2,
+ SPR_PALETTE_QUARTER_MARKER_3,
+ SPR_PALETTE_RIDE_GROUND_MARKER,
+ SPR_PALETTE_GHOST,
+ SPR_PALETTE_45,
+ SPR_PALETTE_46,
+ SPR_PALETTE_DARKEN_3,
+ SPR_PALETTE_DECREASED_CONTRAST,
+ SPR_PALETTE_DARKEN_1,
+ SPR_PALETTE_DARKEN_2,
+ SPR_PALETTE_51,
+ // Translucent remap palettes
SPR_PALETTE_TRANSLUCENT_GREY,
SPR_PALETTE_TRANSLUCENT_GREY_HIGHLIGHT,
SPR_PALETTE_TRANSLUCENT_GREY_SHADOW,
@@ -505,6 +311,7 @@ static constexpr uint16_t kPaletteToG1Offset[kPaletteTotalOffsets] = {
SPR_PALETTE_TRANSLUCENT_WHITE_HIGHLIGHT,
SPR_PALETTE_TRANSLUCENT_WHITE_SHADOW,
+ // Main glass remap palettes
SPR_PALETTE_GLASS_BLACK,
SPR_PALETTE_GLASS_GREY,
SPR_PALETTE_GLASS_WHITE,
@@ -537,6 +344,8 @@ static constexpr uint16_t kPaletteToG1Offset[kPaletteTotalOffsets] = {
SPR_PALETTE_GLASS_DARK_PINK,
SPR_PALETTE_GLASS_BRIGHT_PINK,
SPR_PALETTE_GLASS_LIGHT_PINK,
+
+ // Extended glass remap palettes
SPR_PALETTE_GLASS_DARK_OLIVE_DARK,
SPR_PALETTE_GLASS_DARK_OLIVE_LIGHT,
SPR_PALETTE_GLASS_SATURATED_BROWN_LIGHT,
@@ -742,7 +551,7 @@ void LoadPalette()
return;
}
- uint32_t palette = SPR_DEFAULT_PALETTE;
+ uint32_t palette = SPR_GAME_DEFAULT_PALETTE;
auto water_type = OpenRCT2::ObjectManager::GetObjectEntry(0);
if (water_type != nullptr)
@@ -933,20 +742,6 @@ void UpdatePalette(std::span palette, PaletteIndex startIndex,
}
}
-enum
-{
- SPR_GAME_PALETTE_DEFAULT = 1532,
- SPR_GAME_PALETTE_WATER = 1533,
- SPR_GAME_PALETTE_WATER_DARKER_1 = 1534,
- SPR_GAME_PALETTE_WATER_DARKER_2 = 1535,
- SPR_GAME_PALETTE_3 = 1536,
- SPR_GAME_PALETTE_3_DARKER_1 = 1537,
- SPR_GAME_PALETTE_3_DARKER_2 = 1538,
- SPR_GAME_PALETTE_4 = 1539,
- SPR_GAME_PALETTE_4_DARKER_1 = 1540,
- SPR_GAME_PALETTE_4_DARKER_2 = 1541,
-};
-
/**
*
* rct2: 0x006838BD
@@ -958,7 +753,7 @@ void UpdatePaletteEffects()
if (gClimateLightningFlash == 1)
{
// Change palette to lighter colour during lightning
- int32_t palette = SPR_GAME_PALETTE_DEFAULT;
+ int32_t palette = SPR_GAME_DEFAULT_PALETTE;
if (water_type != nullptr)
{
@@ -987,7 +782,7 @@ void UpdatePaletteEffects()
if (gClimateLightningFlash == 2)
{
// Change palette back to normal after lightning
- int32_t palette = SPR_GAME_PALETTE_DEFAULT;
+ int32_t palette = SPR_GAME_DEFAULT_PALETTE;
if (water_type != nullptr)
{
diff --git a/src/openrct2/drawing/Drawing.h b/src/openrct2/drawing/Drawing.h
index c8821c53c1..db35712db4 100644
--- a/src/openrct2/drawing/Drawing.h
+++ b/src/openrct2/drawing/Drawing.h
@@ -262,12 +262,12 @@ void GfxDrawDashedLine(
OpenRCT2::Drawing::RenderTarget& rt, const ScreenLine& screenLine, int32_t dashedLineSegmentLength,
OpenRCT2::Drawing::PaletteIndex colour);
-// sprite
+// sprite catalogues
bool GfxLoadG1(const OpenRCT2::IPlatformEnvironment& env);
-void GfxLoadG2FontsAndTracks();
+void GfxLoadG2PalettesFontsTracks();
bool GfxLoadCsg();
void GfxUnloadG1();
-void GfxUnloadG2AndFonts();
+void GfxUnloadG2PalettesFontsTracks();
void GfxUnloadCsg();
const OpenRCT2::G1Element* GfxGetG1Element(ImageId imageId);
const OpenRCT2::G1Element* GfxGetG1Element(ImageIndex image_id);
@@ -275,6 +275,8 @@ const OpenRCT2::G1Palette* GfxGetG1Palette(ImageIndex imageId);
void GfxSetG1Element(ImageIndex imageId, const OpenRCT2::G1Element* g1);
std::optional GfxLoadGx(const std::vector& buffer);
bool IsCsgLoaded();
+
+// sprite blitting
void FASTCALL GfxSpriteToBuffer(OpenRCT2::Drawing::RenderTarget& rt, const DrawSpriteArgs& args);
void FASTCALL GfxBmpSpriteToBuffer(OpenRCT2::Drawing::RenderTarget& rt, const DrawSpriteArgs& args);
void FASTCALL GfxRleSpriteToBuffer(OpenRCT2::Drawing::RenderTarget& rt, const DrawSpriteArgs& args);
diff --git a/src/openrct2/drawing/FilterPaletteIds.h b/src/openrct2/drawing/FilterPaletteIds.h
index 741ea2e6f0..ec72f0c62c 100644
--- a/src/openrct2/drawing/FilterPaletteIds.h
+++ b/src/openrct2/drawing/FilterPaletteIds.h
@@ -17,8 +17,8 @@ namespace OpenRCT2::Drawing
{
paletteNull = 0,
+ // Additional palettes
paletteWater = COLOUR_COUNT,
-
paletteLandMarker0, // North (corner/edge)
paletteLandMarker1, // East (corner/edge)
paletteLandMarker2, // South (corner/edge)
@@ -33,12 +33,12 @@ namespace OpenRCT2::Drawing
paletteGhost, // Construction marker
palette45, // Decolourise + lighten
palette46,
-
paletteDarken3,
-
paletteDarken1 = paletteDarken3 + 2,
paletteDarken2,
palette51, // Decolourise + darken
+
+ // Translucent remap palettes
paletteTranslucentGrey,
paletteTranslucentGreyHighlight,
paletteTranslucentGreyShadow,
@@ -99,6 +99,8 @@ namespace OpenRCT2::Drawing
paletteTranslucentWhite,
paletteTranslucentWhiteHighlight,
paletteTranslucentWhiteShadow,
+
+ // Main glass remap palettes
paletteGlass,
paletteGlassBlack = paletteGlass + COLOUR_BLACK,
paletteGlassGrey = paletteGlass + COLOUR_GREY,
@@ -139,6 +141,8 @@ namespace OpenRCT2::Drawing
paletteGlassBordeauxRedLight = paletteGlass + COLOUR_BORDEAUX_RED_LIGHT,
paletteGlassGrassGreenDark = paletteGlass + COLOUR_GRASS_GREEN_DARK,
paletteGlassGrassGreenLight = paletteGlass + COLOUR_GRASS_GREEN_LIGHT,
+
+ // Extended glass remap palettes
paletteGlassOliveDark = paletteGlass + COLOUR_OLIVE_DARK,
paletteGlassOliveLight = paletteGlass + COLOUR_OLIVE_LIGHT,
paletteGlassSaturatedGreenLight = paletteGlass + COLOUR_SATURATED_GREEN_LIGHT,