Added a new set of colors: "light" (brightness turned up to 150% over the
full/base colors - no low-saturation versions here). Re-generated all of the dyes using my gentextures.sh script, to keep them consistent. Re-added the gentextures script to this mod, it's too useful not to include it.
20
README
@ -66,23 +66,30 @@ Titanium Dioxide. Finally, craft one portion of that with a bucket of water
|
|||||||
and one piece of jungle grass. Yields one bucket of white paint.
|
and one piece of jungle grass. Yields one bucket of white paint.
|
||||||
|
|
||||||
|
|
||||||
Darker colors
|
Darker/lighter shades
|
||||||
-------------
|
---------------------
|
||||||
|
|
||||||
|
To obtain a dark (33% relative to the 'full' version) version of a given color,
|
||||||
|
use two portions of black dye along with the base color, which yields three
|
||||||
|
portions of the final color.
|
||||||
|
|
||||||
To obtain a medium-brightness (66%) version of a given color, mix the desired
|
To obtain a medium-brightness (66%) version of a given color, mix the desired
|
||||||
base color from the list above with one portion of black dye (for example,
|
base color from the list above with one portion of black dye (for example,
|
||||||
medium lime = lime + black). All such mixtures yield two portions of the final
|
medium lime = lime + black). All such mixtures yield two portions of the final
|
||||||
color.
|
color.
|
||||||
|
|
||||||
To obtain a dark (33%) version of a given color, use two portions of black dye
|
To obtain the light (150%) version of a color, mix one portion of the
|
||||||
along with the base color, which yields three portions of the final color.
|
desired base color with one portion of white paint, which yields two portions of
|
||||||
|
the final color.
|
||||||
|
|
||||||
|
|
||||||
Low-saturation colors
|
Low-saturation colors
|
||||||
---------------------
|
---------------------
|
||||||
|
|
||||||
To get the low saturation (50%) version of one of the base colors, mix one or
|
Except for the "light" colors and the greys, all colors are available in a
|
||||||
more of white, black, or a shade of grey with the desired base color:
|
reduced-saturation version To get the low saturation (50%) version of one of
|
||||||
|
the base colors, mix one or more of white, black, or a shade of grey with the
|
||||||
|
desired base color:
|
||||||
|
|
||||||
Dark, low saturation: dark grey paint + color (yields 2), or two blacks + 1
|
Dark, low saturation: dark grey paint + color (yields 2), or two blacks + 1
|
||||||
white + color (yields 4). For example, dark, low-saturation red = red + dark
|
white + color (yields 4). For example, dark, low-saturation red = red + dark
|
||||||
@ -205,3 +212,4 @@ All of the output files will be placed in a new folder, generated-textures/
|
|||||||
|
|
||||||
Use your favorite image browser or file manager to review the results, and if
|
Use your favorite image browser or file manager to review the results, and if
|
||||||
they're right, copy them over to the textures/ folder in your mod.
|
they're right, copy them over to the textures/ folder in your mod.
|
||||||
|
|
||||||
|
BIN
bottle_overlay.png
Normal file
After Width: | Height: | Size: 165 B |
118
gentextures.sh
Executable file
@ -0,0 +1,118 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
TEXTURE=$1
|
||||||
|
COMPOSITE=$2
|
||||||
|
|
||||||
|
base_texture="red_base_"$TEXTURE".png"
|
||||||
|
|
||||||
|
if [ -z $TEXTURE ] || [ $TEXTURE == "--help" ] || [ $TEXTURE == "-h" ] ; then {
|
||||||
|
|
||||||
|
echo -e "\nUsage:"
|
||||||
|
echo -e "\ngentextures.sh basename [overlay filename]"
|
||||||
|
echo -e "\nThis script requires one or two parameters which supply the"
|
||||||
|
echo -e "base filename of the textures, and an optional overlay. The"
|
||||||
|
echo -e "<basename> is the first part of the filename that your textures"
|
||||||
|
echo -e "will use when your mod is done. For example, if you supply the"
|
||||||
|
echo -e "word 'cotton', this script will produce filenames like cotton_red.png"
|
||||||
|
echo -e "or 'cotton_dark_blue_s50.png'. The texture that this script will"
|
||||||
|
echo -e "read and recolor is derived from this parameter, and will be of"
|
||||||
|
echo -e "the form 'red_base_xxxxx.png', where 'xxxx' is the basename."
|
||||||
|
echo -e "\nYou can also supply an optional overlay image filename."
|
||||||
|
echo -e "This image will be composited onto the output files after they"
|
||||||
|
echo -e "have been colorized, but without being modified. This is useful"
|
||||||
|
echo -e "when you have some part of your base image that will either get"
|
||||||
|
echo -e "changed unpredictably or undesirably. Simply draw two images -"
|
||||||
|
echo -e "one containing the whole image to be colored, and one containing"
|
||||||
|
echo -e "the parts that should not be changed, with transparency where the"
|
||||||
|
echo -e "base image should show through.\n"
|
||||||
|
exit 1
|
||||||
|
} fi
|
||||||
|
|
||||||
|
|
||||||
|
if [[ ! -z $TEXTURE && ! -e $base_texture ]]; then {
|
||||||
|
echo -e "\nThe basename 'red_base_"$TEXTURE".png' was not found."
|
||||||
|
echo -e "\nAborting.\n"
|
||||||
|
exit 1
|
||||||
|
} fi
|
||||||
|
|
||||||
|
if [[ ! -z $COMPOSITE && ! -e $COMPOSITE ]]; then {
|
||||||
|
echo -e "\nThe requested composite file '"$COMPOSITE"' was not found."
|
||||||
|
echo -e "\nAborting.\n"
|
||||||
|
exit 1
|
||||||
|
} fi
|
||||||
|
|
||||||
|
|
||||||
|
convert $base_texture -modulate 1,2,3 tempfile.png 1>/dev/null 2>/dev/null
|
||||||
|
|
||||||
|
if (( $? )) ; then {
|
||||||
|
echo -e "\nImagemagick failed while testing the base texture file."
|
||||||
|
echo -e "\nEither the base file 'red_base_"$TEXTURE".png isn't an image,"
|
||||||
|
echo "or it is broken, or Imagemagick itself just didn't work."
|
||||||
|
echo -e "\nPlease check and correct your base image and try again."
|
||||||
|
echo -e "\nAborting.\n"
|
||||||
|
exit 1
|
||||||
|
} fi
|
||||||
|
|
||||||
|
composite_file=""
|
||||||
|
|
||||||
|
if [ ! -z $COMPOSITE ] ; then {
|
||||||
|
convert $base_texture -modulate 1,2,3 $COMPOSITE -composite tempfile.png 1>/dev/null 2>/dev/null
|
||||||
|
|
||||||
|
if (( $? )) ; then {
|
||||||
|
echo -e "\nImagemagick failed while testing the composite file."
|
||||||
|
echo -e "\nEither the composite file '"$COMPOSITE"' isn't an image"
|
||||||
|
echo "or it is broken, or Imagemagick itself just didn't work."
|
||||||
|
echo -e "\nPlease check and correct your composite image and try again."
|
||||||
|
echo -e "\nAborting.\n"
|
||||||
|
exit 1
|
||||||
|
} fi
|
||||||
|
|
||||||
|
composite_file=$COMPOSITE" -composite"
|
||||||
|
} fi
|
||||||
|
|
||||||
|
rm tempfile.png
|
||||||
|
|
||||||
|
base_colors="red orange yellow lime green aqua cyan skyblue blue violet magenta redviolet"
|
||||||
|
|
||||||
|
echo -e -n "\nGenerating filenames based on "$base_texture
|
||||||
|
if [ ! -z $COMPOSITE ] ; then {
|
||||||
|
echo ","
|
||||||
|
echo -n "using "$COMPOSITE" as an overlay"
|
||||||
|
} fi
|
||||||
|
echo -e "...\n"
|
||||||
|
|
||||||
|
rm -rf generated-textures
|
||||||
|
mkdir generated-textures
|
||||||
|
|
||||||
|
hue=0
|
||||||
|
for name in $base_colors ; do
|
||||||
|
hue2=`echo "scale=10; ("$hue"*200/360)+100" |bc`
|
||||||
|
echo $name "("$hue" degrees)"
|
||||||
|
echo " dark"
|
||||||
|
convert $base_texture -modulate 33,100,$hue2 $composite_file "generated-textures/"$TEXTURE"_dark_"$name".png"
|
||||||
|
echo " medium"
|
||||||
|
convert $base_texture -modulate 66,100,$hue2 $composite_file "generated-textures/"$TEXTURE"_medium_"$name".png"
|
||||||
|
echo " full"
|
||||||
|
convert $base_texture -modulate 100,100,$hue2 $composite_file "generated-textures/"$TEXTURE"_"$name".png"
|
||||||
|
echo " light"
|
||||||
|
convert $base_texture -modulate 150,100,$hue2 $composite_file "generated-textures/"$TEXTURE"_light_"$name".png"
|
||||||
|
echo " dark, 50% saturation"
|
||||||
|
convert $base_texture -modulate 33,50,$hue2 $composite_file "generated-textures/"$TEXTURE"_dark_"$name"_s50.png"
|
||||||
|
echo " medium, 50% saturation"
|
||||||
|
convert $base_texture -modulate 66,50,$hue2 $composite_file "generated-textures/"$TEXTURE"_medium_"$name"_s50.png"
|
||||||
|
echo " full, 50% saturation"
|
||||||
|
convert $base_texture -modulate 100,50,$hue2 $composite_file "generated-textures/"$TEXTURE"_"$name"_s50.png"
|
||||||
|
hue=$((hue+30))
|
||||||
|
done
|
||||||
|
|
||||||
|
echo "greyscales"
|
||||||
|
echo " black"
|
||||||
|
convert $base_texture -modulate 15,0,0 $composite_file "generated-textures/"$TEXTURE"_black.png"
|
||||||
|
echo " dark grey"
|
||||||
|
convert $base_texture -modulate 50,0,0 $composite_file "generated-textures/"$TEXTURE"_darkgrey.png"
|
||||||
|
echo " medium grey"
|
||||||
|
convert $base_texture -modulate 100,0,0 $composite_file "generated-textures/"$TEXTURE"_mediumgrey.png"
|
||||||
|
echo " light grey"
|
||||||
|
convert $base_texture -modulate 150,0,0 $composite_file "generated-textures/"$TEXTURE"_lightgrey.png"
|
||||||
|
echo " white"
|
||||||
|
convert $base_texture -modulate 190,0,0 $composite_file "generated-textures/"$TEXTURE"_white.png"
|
23
init.lua
@ -286,8 +286,8 @@ minetest.register_craftitem("unifieddyes:black", {
|
|||||||
-- brightness from the above 12 base colors.
|
-- brightness from the above 12 base colors.
|
||||||
|
|
||||||
-- "s50" in a file/item name means "saturation: 50%".
|
-- "s50" in a file/item name means "saturation: 50%".
|
||||||
-- Brightness levels in the textures are 100%, 66%
|
-- Brightness levels in the textures are 33% ("dark"), 66% ("medium"),
|
||||||
-- ("medium"), and 33% ("dark").
|
-- 100% ("full" but not so-named), and 150% ("light").
|
||||||
|
|
||||||
HUES = {
|
HUES = {
|
||||||
"red",
|
"red",
|
||||||
@ -386,6 +386,15 @@ for i = 1, 12 do
|
|||||||
},
|
},
|
||||||
})
|
})
|
||||||
|
|
||||||
|
minetest.register_craft( {
|
||||||
|
type = "shapeless",
|
||||||
|
output = "unifieddyes:light_" .. hue .. " 2",
|
||||||
|
recipe = {
|
||||||
|
"unifieddyes:" .. hue,
|
||||||
|
"unifieddyes:white_paint",
|
||||||
|
},
|
||||||
|
})
|
||||||
|
|
||||||
minetest.register_craftitem("unifieddyes:dark_" .. hue .. "_s50", {
|
minetest.register_craftitem("unifieddyes:dark_" .. hue .. "_s50", {
|
||||||
description = "Dark " .. hue .. " (low saturation)",
|
description = "Dark " .. hue .. " (low saturation)",
|
||||||
inventory_image = "unifieddyes_dark_" .. hue .. "_s50.png",
|
inventory_image = "unifieddyes_dark_" .. hue .. "_s50.png",
|
||||||
@ -411,17 +420,23 @@ for i = 1, 12 do
|
|||||||
})
|
})
|
||||||
|
|
||||||
minetest.register_craftitem("unifieddyes:" .. hue .. "_s50", {
|
minetest.register_craftitem("unifieddyes:" .. hue .. "_s50", {
|
||||||
description = "Bright " .. hue .. " (low saturation)",
|
description = "Full " .. hue .. " (low saturation)",
|
||||||
inventory_image = "unifieddyes_" .. hue .. "_s50.png",
|
inventory_image = "unifieddyes_" .. hue .. "_s50.png",
|
||||||
groups = {dye=1},
|
groups = {dye=1},
|
||||||
})
|
})
|
||||||
|
|
||||||
minetest.register_craftitem("unifieddyes:" .. hue, {
|
minetest.register_craftitem("unifieddyes:" .. hue, {
|
||||||
description = "Bright " .. hue,
|
description = "Full " .. hue,
|
||||||
inventory_image = "unifieddyes_" .. hue .. ".png",
|
inventory_image = "unifieddyes_" .. hue .. ".png",
|
||||||
groups = {dye=1},
|
groups = {dye=1},
|
||||||
})
|
})
|
||||||
|
|
||||||
|
minetest.register_craftitem("unifieddyes:light_" .. hue, {
|
||||||
|
description = "Light " .. hue,
|
||||||
|
inventory_image = "unifieddyes_light_" .. hue .. ".png",
|
||||||
|
groups = {dye=1},
|
||||||
|
})
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
|
BIN
red_base_unifieddyes.png
Normal file
After Width: | Height: | Size: 188 B |
Before Width: | Height: | Size: 225 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 217 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 224 B After Width: | Height: | Size: 260 B |
Before Width: | Height: | Size: 209 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 217 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 211 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 217 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 234 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 241 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 223 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 235 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 230 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 237 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 223 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 235 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 234 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 241 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 230 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 237 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 234 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 241 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 223 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 235 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 234 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 241 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 234 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 241 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 235 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 241 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 229 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 237 B After Width: | Height: | Size: 275 B |
BIN
textures/unifieddyes_darkgrey.png
Normal file
After Width: | Height: | Size: 260 B |
Before Width: | Height: | Size: 210 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 217 B After Width: | Height: | Size: 275 B |
BIN
textures/unifieddyes_light_aqua.png
Normal file
After Width: | Height: | Size: 271 B |
BIN
textures/unifieddyes_light_blue.png
Normal file
After Width: | Height: | Size: 271 B |
BIN
textures/unifieddyes_light_cyan.png
Normal file
After Width: | Height: | Size: 271 B |
BIN
textures/unifieddyes_light_green.png
Normal file
After Width: | Height: | Size: 271 B |
BIN
textures/unifieddyes_light_lime.png
Normal file
After Width: | Height: | Size: 271 B |
BIN
textures/unifieddyes_light_magenta.png
Normal file
After Width: | Height: | Size: 271 B |
BIN
textures/unifieddyes_light_orange.png
Normal file
After Width: | Height: | Size: 271 B |
BIN
textures/unifieddyes_light_red.png
Normal file
After Width: | Height: | Size: 271 B |
BIN
textures/unifieddyes_light_redviolet.png
Normal file
After Width: | Height: | Size: 271 B |
BIN
textures/unifieddyes_light_skyblue.png
Normal file
After Width: | Height: | Size: 271 B |
BIN
textures/unifieddyes_light_violet.png
Normal file
After Width: | Height: | Size: 271 B |
BIN
textures/unifieddyes_light_yellow.png
Normal file
After Width: | Height: | Size: 271 B |
BIN
textures/unifieddyes_lightgrey.png
Normal file
After Width: | Height: | Size: 259 B |
Before Width: | Height: | Size: 225 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 217 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 212 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 217 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 236 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 246 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 231 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 239 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 234 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 242 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 230 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 239 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 236 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 246 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 234 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 241 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 235 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 245 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 222 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 238 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 235 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 245 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 237 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 239 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 237 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 239 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 235 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 241 B After Width: | Height: | Size: 275 B |
BIN
textures/unifieddyes_mediumgrey.png
Normal file
After Width: | Height: | Size: 260 B |
Before Width: | Height: | Size: 223 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 217 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 202 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 221 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 223 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 217 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 223 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 217 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 224 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 217 B After Width: | Height: | Size: 275 B |
BIN
textures/unifieddyes_white.png
Normal file
After Width: | Height: | Size: 259 B |
Before Width: | Height: | Size: 214 B After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 217 B After Width: | Height: | Size: 275 B |