1.19 Better mountains/elevation interactions (#9400)

* address bluffs-mountains transitions

* revise visual indicator of flood-filled elevation regions in editor

* small border versions of dry and basic mountain

* fix some frozen/elevated transitions

* address mini-map concerns in #8924
This commit is contained in:
doofus-01 2024-10-06 17:51:54 -07:00 committed by GitHub
parent 9ca1c53b22
commit 78c8ed24fb
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
11 changed files with 50 additions and 20 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

View file

@ -63,10 +63,10 @@ Iwr,Ior,Icn#enddef # wmllint: noconvert
{NEW:FLOODFILL_BORDER_FILL *^Qhu* flood_low }
{NEW:FLOODFILL_BORDER_FILL *^Qhu* flood_low_alt }
#ifdef EDITOR
{NEW:FLOODFILL_VISUAL darken IPF="~CS(10,40,140)~O(0.5)"}
{NEW:FLOODFILL_VISUAL darken IPF="~CS(-80,0,220)~O(0.65)" FLAG=flood_low_alt}
{NEW:FLOODFILL_VISUAL darken IPF="~CS(140,190,240)~O(0.55)" FLAG=flood_high}
{NEW:FLOODFILL_VISUAL darken IPF="~CS(180,240,240)~O(0.65)" FLAG=flood_high_alt}
{NEW:FLOODFILL_VISUAL darken IPF="~BLEND(250,250,0,0.8)"}
{NEW:FLOODFILL_VISUAL darken IPF="~BLEND(250,0,90,1.0)" FLAG=flood_low_alt}
{NEW:FLOODFILL_VISUAL darken IPF="~BLEND(0,250,110,0.9)" FLAG=flood_high}
{NEW:FLOODFILL_VISUAL darken IPF="~BLEND(0,140,250,1.0)" FLAG=flood_high_alt}
# uncomment this to see where the floodfill has gone, if your graphics aren't behaving as expected
# {NEW:FLOODFILL_VISUAL darken IPF="~CS(250,0,0)" FLAG=elevated}
#endif
@ -255,6 +255,11 @@ C*,K*,X*,Q*,W*,Ai,M*,*^Qh*,*^V*,*^B*,_off^_usr#enddef
# Mountains
{NEW:MOUNTAIN_RESTRICTED Mm (!,Xv,!,C*,K*,X*,Ql,Qx*) mountains/basic-castle FLAG=base2 }
# for bluffs/mountains interaction, may need more review
{NEW:MOUNTAIN_RESTRICTED Mm (*^Qhh*) mountains/basic-castle FLAG=base2 }
{NEW:MOUNTAIN_RESTRICTED Mm^Qhu* (!,*^Qhu*) mountains/basic-castle FLAG=base2 }
{NEW:MOUNTAIN_RESTRICTED Mm^Qhh* (!,M*^Qhh*) mountains/basic-castle FLAG=base2 }
{NEW:MOUNTAIN_SMALL Mm^Qh* (!,M*^Qh*) mountains/basic-castle-n FLAG=base2 }
{NEW:MOUNTAINS_2x4_NW_SE Mm mountains/basic_range3 FLAG=base,base2 PROB=18}
{NEW:MOUNTAINS_2x4_SW_NE Mm mountains/basic_range4 FLAG=base,base2 PROB=26}
@ -272,6 +277,11 @@ C*,K*,X*,Q*,W*,Ai,M*,*^Qh*,*^V*,*^B*,_off^_usr#enddef
# Dry Mountains
{NEW:MOUNTAIN_RESTRICTED Md (!,Xv,!,C*,K*,X*,Ql,Qx*) mountains/dry-castle FLAG=base2 }
# for bluffs/mountains interaction, may need more review
{NEW:MOUNTAIN_RESTRICTED Md (*^Qhh*) mountains/dry-castle FLAG=base2 }
{NEW:MOUNTAIN_RESTRICTED Md^Qhu* (!,*^Qhu*) mountains/dry-castle FLAG=base2 }
{NEW:MOUNTAIN_RESTRICTED Md^Qhh* (!,M*^Qhh*) mountains/dry-castle FLAG=base2 }
{NEW:MOUNTAIN_SMALL Md^Qh* (!,M*^Qh*) mountains/dry-castle-n FLAG=base2 }
{NEW:MOUNTAINS_2x4_NW_SE Md mountains/dry_range3 FLAG=base,base2 PROB=18}
{NEW:MOUNTAINS_2x4_SW_NE Md mountains/dry_range4 FLAG=base,base2 PROB=26}
@ -287,7 +297,12 @@ C*,K*,X*,Q*,W*,Ai,M*,*^Qh*,*^V*,*^B*,_off^_usr#enddef
{NEW:MOUNTAIN_SINGLE Md mountains/dry FLAG=base,base2 }
# Snow mountains (uncomment rules as the corresponding tiles are added)
#{NEW:MOUNTAIN_RESTRICTED Ms (!,Xv,!,C*,K*,X*,Ql,Qx*) mountains/snow-castle FLAG=base2 }
{NEW:MOUNTAIN_RESTRICTED Ms (!,Xv,!,C*,K*,X*,Ql,Qx*) mountains/snow-castle FLAG=base2 }
# for bluffs/mountains interaction, may need more review
{NEW:MOUNTAIN_RESTRICTED Ms (*^Qhh*) mountains/snow-castle FLAG=base2 }
{NEW:MOUNTAIN_RESTRICTED Ms^Qhu* (!,*^Qhu*) mountains/snow-castle FLAG=base2 }
{NEW:MOUNTAIN_RESTRICTED Ms^Qhh* (!,M*^Qhh*) mountains/snow-castle FLAG=base2 }
{NEW:MOUNTAIN_SMALL Ms^Qh* (!,M*^Qh*) mountains/snow-castle-n FLAG=base2 }
#{NEW:MOUNTAINS_2x4_NW_SE Ms mountains/snow_range3 FLAG=base,base2 PROB=18}
#{NEW:MOUNTAINS_2x4_SW_NE Ms mountains/snow_range4 FLAG=base,base2 PROB=26}
@ -303,6 +318,7 @@ C*,K*,X*,Q*,W*,Ai,M*,*^Qh*,*^V*,*^B*,_off^_usr#enddef
{NEW:MOUNTAIN_SINGLE Ms mountains/snow FLAG=base,base2 }
#This one is to fill any "gaps" there might be when next to castles or walls
# this leaves ugly sharp edges, we need to include the same transition rules as hills
{NEW:BASE Mm hills/regular}
{NEW:BASE Md hills/dry}
{NEW:BASE Ms hills/snow}
@ -1118,17 +1134,23 @@ C*,K*,X*,Q*,W*,Ai,M*,*^Qh*,*^V*,*^B*,_off^_usr#enddef
{NEW:WALL_TRANSITION (!,*^Qh*) Isa^Qh* elevation/ancient-stone/stone LAYER=-90 FLAG=ground}
{NEW:WALL_TRANSITION (!,*^Qh*) I*^Qh* elevation/stone/stone LAYER=-90 FLAG=ground}
{NEW:WALL_TRANSITION (!,*^Qhh*) W*^Qhh* elevation/water/water LAYER=-90 FLAG=ground}
{NEW:WALL_TRANSITION (!,*^Qhh*) A*^Qhh*,Ha*^Qhh*,Ms*^Qhh*,Rra^Qhh* elevation/frozen/snow LAYER=-90 FLAG=ground}
{NEW:WALL_TRANSITION (!,*^Qhh*) Ms*^Qhh* elevation/frozen/snow LAYER=0 FLAG=ground}
{NEW:WALL_TRANSITION (!,*^Qhh*) A*^Qhh*,Ha*^Qhh*,Rra^Qhh*,Ms*^Qhh* elevation/frozen/snow LAYER=-90 FLAG=ground}
{NEW:WALL_TRANSITION (!,*^Qhh*) M*^Qhh* elevation/default/regular LAYER=0 FLAG=ground}
{NEW:WALL_TRANSITION (M*^Qhu*) (!,*^Qhu*,!,A*,Ha*,Rra,Ms*) elevation/frozen/snow LAYER=0 FLAG=ground}
{NEW:WALL_TRANSITION (M*^Qhu*) (!,*^Qhu*) elevation/default/regular LAYER=0 FLAG=ground}
{NEW:WALL_TRANSITION (!,*^Qhh*,Qx*,Xv,_off^_usr) *^Qhh* elevation/default/regular LAYER=-190 FLAG=ground}
{NEW:WALL_TRANSITION *^Qh* (!,*^Qh*,!,Iw*^*) elevation/wood/wood LAYER=-90 FLAG=ground}
{NEW:WALL_TRANSITION *^Qh* (!,*^Qh*,!,Isa) elevation/ancient-stone/stone LAYER=-90 FLAG=ground}
{NEW:WALL_TRANSITION *^Qh* (!,*^Qh*,!,I*) elevation/stone/stone LAYER=-90 FLAG=ground}
{NEW:WALL_TRANSITION *^Qh* (!,*^Qh*,!,W*) elevation/water/water LAYER=-90 FLAG=ground}
{NEW:WALL_TRANSITION *^Qh* (!,*^Qh*,!,A*,Ha*,Ms*,Rra) elevation/frozen/snow LAYER=-90 FLAG=ground}
{NEW:WALL_TRANSITION *^Qh* (!,*^Qh*,!,A*,Ha*,Rra) elevation/frozen/snow LAYER=-90 FLAG=ground}
{NEW:WALL_TRANSITION *^Qh* (!,*^Qh*,!,Ms*) elevation/frozen/snow LAYER=0 FLAG=ground}
{NEW:WALL_TRANSITION *^Qhh* (!,*^Qh*,!,M*) elevation/default/regular LAYER=0 FLAG=ground}
{NEW:WALL_TRANSITION *^Qh* (!,*^Qh*,Qx*,Xv,_off^_usr) elevation/default/regular LAYER=-190 FLAG=ground}
{NEW:TRANSITION *^Qhux *^Qhu -87 elevation/chasm-overlay FLAG=transition8}
{NEW:TRANSITION *^Qhux (!,*^Qhux) -87 elevation/chasm-overlay FLAG=transition8}
{NEW:WALL_TRANSITION Qx* (!,Qx*,Xv,_off^_usr) chasm/regular LAYER=-290 FLAG=ground}
{NEW:TRANSITION_INTRA (Xo*) -289 chasm/regular-castle FLAG=transition2 ADJACENT="Qx*"}
@ -1152,10 +1174,11 @@ C*,K*,X*,Q*,W*,Ai,M*,*^Qh*,*^V*,*^B*,_off^_usr#enddef
{NEW:TRANSITION (Md,Mv) (!,Md,Hhd,Mv,W*,S*) -166 mountains/dry}
# Special mountain to dry/desert terrain trans
{NEW:TRANSITION (Hd,Hhd,Rb,Re,Rd,Rrd,D*,Gd,Ha,A*,U*,Ql*,Exos) Mm 0 mountains/blend-from-dry FLAG=inside}
{NEW:TRANSITION (Hd,Hhd,Rb,Re,Rd,Rrd,D*,Gd,U*,Ql*,Exos) Ms 0 mountains/blend-from-dry FLAG=inside}
{NEW:TRANSITION (Mm) (Hd,Hhd,Rb,Re,Rd,D*,Gd,Ha,A*,U*,Ql*,Exos) -166 hills/dry}
{NEW:TRANSITION (Ms) (Hd,Hhd,Rb,Re,Rd,D*,Gd,U*,Ql*,Exos) -166 hills/dry}
# did something change (in/before 1.19)? These seem to be hurting, what was the purpose? Leave them commented out for now, as a clue in case something is now broken
#{NEW:TRANSITION (Hd,Hhd,Rb,Re,Rd,Rrd,D*,Gd,Ha,A*,U*,Ql*,Exos) Mm 0 mountains/blend-from-dry FLAG=inside}
#{NEW:TRANSITION (Hd,Hhd,Rb,Re,Rd,Rrd,D*,Gd,U*,Ql*,Exos) Ms 0 mountains/blend-from-dry FLAG=inside}
#{NEW:TRANSITION (Mm) (Hd,Hhd,Rb,Re,Rd,D*,Gd,Ha,A*,U*,Ql*,Exos) -166 hills/dry}
#{NEW:TRANSITION (Ms) (Hd,Hhd,Rb,Re,Rd,D*,Gd,U*,Ql*,Exos) -166 hills/dry}
{NEW:TRANSITION (Ms) (Mm,Md) -170 hills/snow-to-hills FILTER_FLAG=mountain-small-3}
{NEW:TRANSITION (Ms,Ha) Hh* -170 hills/snow-to-hills}
@ -1262,14 +1285,18 @@ C*,K*,X*,Q*,W*,Ai,M*,*^Qh*,*^V*,*^B*,_off^_usr#enddef
# {NEW:TRANSITION Aa,Ha,Ms,Ai,Rra (W*,S*) -505 frozen/ice-to-water FLAG=submerged}
# But there are ledges, so we need more rules
# This might be made more concise, but the idea is to filter out ledges
# The third/sixth rules have that extra filter to allow ice transitions where there are no ledges because everything is 'elevated'
# The 4th/8th and 5th/9th rules have that extra filter to allow ice transitions where there are no ledges because everything is 'elevated'
{NEW:TRANSITION (!,*^Qh*,!,Aa,Ha,Ms,Ai,Rra) (!,*^Qh*,!,W*,S*) -485 frozen/ice FLAG=non_submerged}
{NEW:TRANSITION Aa^Qhh*,Ha^Qhh*,Ms^Qhh*,Ai^Qhh*,Rra^Qhh* (W*^Qhh*,S*^Qhh*) -485 frozen/ice FLAG=non_submerged}
{NEW:TRANSITION (!,*^Qh*,!,Aa,Ha,Ms,Ai,Rra) (W*^Qhu*,S*^Qhu*) -485 frozen/ice FLAG=non_submerged FILTER_PRIMARY_FLAG=has_flag=elevated}
{NEW:TRANSITION Aa^Qhu*,Ha^Qhu*,Ms^Qhu*,Ai^Qhu*,Rra^Qhu* (W*^Qhu*,S*^Qhu*) -485 frozen/ice FLAG=non_submerged}
{NEW:TRANSITION (!,*^Qh*,!,Aa,Ha,Ms,Ai,Rra) (W*^Qh*,S*^Qh*) -485 frozen/ice FLAG=non_submerged FILTER_PRIMARY_FLAG=has_flag=elevated}
{NEW:TRANSITION (Aa^Qh*,Ha^Qh*,Ms^Qh*,Ai^Qh*,Rra^Qh*) (!,*^Qh*,!,W*,S*) -485 frozen/ice FLAG=non_submerged FILTER_FLAG=elevated}
# ---
{NEW:TRANSITION (!,*^Qh*,!,Aa,Ha,Ms,Ai,Rra) (!,*^Qh*,!,W*,S*) -505 frozen/ice-to-water FLAG=submerged}
{NEW:TRANSITION Aa^Qhh*,Ha^Qhh*,Ms^Qhh*,Ai^Qhh*,Rra^Qhh* (W*^Qhh*,S*^Qhh*) -505 frozen/ice-to-water FLAG=submerged}
{NEW:TRANSITION (!,*^Qh*,!,Aa,Ha,Ms,Ai,Rra) (W*^Qhu*,S*^Qhu*) -505 frozen/ice-to-water FLAG=submerged FILTER_PRIMARY_FLAG=has_flag=elevated}
{NEW:TRANSITION Aa^Qhu*,Ha^Qhu*,Ms^Qhu*,Ai^Qhu*,Rra^Qhu* (W*^Qhu*,S*^Qhu*) -505 frozen/ice-to-water FLAG=submerged}
{NEW:TRANSITION (!,*^Qh*,!,Aa,Ha,Ms,Ai,Rra) (W*^Qh*,S*^Qh*) -505 frozen/ice-to-water FLAG=submerged FILTER_PRIMARY_FLAG=has_flag=elevated}
{NEW:TRANSITION (Aa^Qh*,Ha^Qh*,Ms^Qh*,Ai^Qh*,Rra^Qh*) (!,*^Qh*,!,W*,S*) -505 frozen/ice-to-water FLAG=submerged FILTER_FLAG=elevated}
# we just draw this again (invisible below the base layer) to set the transition flags
{NEW:TRANSITION Aa,Ha,Ms,Ai (W*,Ss) -1001 frozen/ice-to-water}

View file

@ -204,7 +204,8 @@ flood_low#endarg
type=*
has_flag={FLAG}
[image]
name={IMAGESTEM}.png{IPF}
name={IMAGESTEM}.png{IPF}:7000,{IMAGESTEM}.png{IPF}~O(0.5):120,{IMAGESTEM}.png~O(0.0):8000,{IMAGESTEM}.png{IPF}~O(0.5):120
random_start=no
[/image]
[/tile]

View file

@ -1209,7 +1209,7 @@ Occasionally caves are <italic>text='illuminated'</italic>."
# ## visual overlay - higher ##
[terrain_type]
symbol_image=elevation/bluffs-tile
editor_image=elevation/bluffs-tile
id=high_border
editor_name= _ "Bluff"
string=^Qhh
@ -1219,7 +1219,7 @@ Occasionally caves are <italic>text='illuminated'</italic>."
# ## visual overlay - lower ##
[terrain_type]
symbol_image=elevation/regular-tile
editor_image=elevation/regular-tile
id=high_canyon
editor_name= _ "Gulch"
string=^Qhu
@ -1243,7 +1243,8 @@ Occasionally caves are <italic>text='illuminated'</italic>."
# There are probably other overlay terrains that
# could use a similar treatment
[terrain_type]
symbol_image=elevation/bluff-forest-tile
symbol_image=forest/pine-tile
editor_image=elevation/bluff-forest-tile
id=high_border_woods
editor_name= _ "Wooded Bluffs"
string=^Qhhf
@ -1252,7 +1253,8 @@ Occasionally caves are <italic>text='illuminated'</italic>."
editor_group=forest, elevation
[/terrain_type]
[terrain_type]
symbol_image=elevation/gulch-forest-tile
symbol_image=forest/pine-tile
editor_image=elevation/gulch-forest-tile
id=high_canyon_woods
editor_name= _ "Wooded Gulch"
string=^Qhuf