Difference between revisions of "Parts"

From Grassy Landscape Wiki
Jump to navigation Jump to search
 
(9 intermediate revisions by 2 users not shown)
Line 1: Line 1:
''Parts'' are Roblox parts that spawn throughout the map. They can be [[Grabbing|picked up]], [[Welding|welded]], and [[Cutting|cut]] by players. Parts come in a variety of colors, shapes and sizes. They are one of the core building materials of the game, the other being [[Items|items]].
+
''Parts'' are Roblox parts in [[Grassy Landscape]] that spawn throughout the [[Map]]. They can be [[Grabbing|picked up]], [[Welding|welded]], and [[Cutting|cut]] by players. Parts come in a variety of colors, shapes and sizes. They are one of the core building materials of the game, the other being [[Items|items]].
  
 
== Spawning ==
 
== Spawning ==
Upon server start, 4,800 parts are spawned around the map. Each part has a random position, size, material, shape and color. For positioning, the [[Map|map]] has designated ''spawn areas'' for parts and items. An algorithm picks between these areas, giving each one a probability equal to its volume, then calculates a random position and rotation within the area. For shape, each part has a ~60% chance of being a block and a ~40% chance of being a cylinder.
+
Upon server start, 4,800 parts are spawned around the map. Each part has a random position, size, material, shape and color. For positioning, the map has designated ''spawn areas'' for parts and items. An algorithm picks between these areas, giving each one a probability equal to its volume, then calculates a random position and rotation within the area. For shape, each part has a ~60% chance of being a block and a ~40% chance of being a cylinder.
  
 
=== Materials ===
 
=== Materials ===
Line 82: Line 82:
  
 
=== BrickColors found in-game ===
 
=== BrickColors found in-game ===
{| class="wikitable"
+
This table was generated by [[TerrodactyI]] using a special script that collects data from ''100 million'' color generations. It is more accurate than any measurement taken in-game, and it took about 7 minutes to generate.
! Color Name
+
 
! Spawnrate
+
{| class="wikitable sortable"
!Rgb
+
!class="unsortable"| Visual
 +
! Name
 +
! RGB
 +
! Percentage
 +
! Rarity
 
|-
 
|-
| Black
+
|style="background-color:#ded9e0"|
| Very High
+
| Quill grey
| *
+
| 222.42, 217.38, 224.41
 +
|   7.223713%
 +
| One in 13
 
|-
 
|-
| Insitutional white
+
|style="background-color:#cfc4c6"|
| Very High
+
| Mid gray
| *
+
| 207.46, 196.67, 198.20
 +
|   7.049205%
 +
| One in 14
 
|-
 
|-
| Mid grey
+
|style="background-color:#f8f6f6"|
| Very High
+
| Institutional white
| *
+
| 248.08, 246.33, 246.36
 +
|   6.291832%
 +
| One in 15
 
|-
 
|-
| Cloudy grey
+
|style="background-color:#f6f5f4"|
| High
+
| White
| *
+
| 246.56, 245.87, 244.47
 +
|   4.385896%
 +
| One in 22
 
|-
 
|-
 +
|style="background-color:#68826b"|
 
| Dark grey
 
| Dark grey
| High
+
| 104.81, 130.25, 107.48
| *
+
|   4.328141%
 +
| One in 23
 
|-
 
|-
| Dark taupe
+
|style="background-color:#31323c"|
| High
+
| Black
| *
+
| 49.21,  50.07,  60.15
|-
+
|   4.203303%
| Dirt brown
+
| One in 23
| High
 
| *
 
|-
 
| Earth green
 
| High
 
| *
 
|-
 
| Fossil
 
| High
 
| *
 
 
|-
 
|-
 +
|style="background-color:#c5c9d2"|
 
| Ghost grey
 
| Ghost grey
| High
+
| 197.10, 201.13, 210.98
| *
+
|   3.632279%
 +
| One in 27
 
|-
 
|-
| Grey
+
|style="background-color:#bbc8ca"|
| High
+
| Sage green
| *
+
| 187.03, 200.07, 202.54
 +
|   3.464172%
 +
| One in 28
 
|-
 
|-
| Hurricane grey
+
|style="background-color:#433c49"|
| High
+
| Dirt brown
| *
+
|  67.21,  60.48,  73.94
 +
|   3.265487%
 +
| One in 30
 
|-
 
|-
| Pearl
+
|style="background-color:#b8b5a8"|
| High
+
| Oyster
| *
+
| 184.43, 181.80, 168.48
 +
|   3.241747%
 +
| One in 30
 
|-
 
|-
 +
|style="background-color:#c0cbc1"|
 
| Light grey
 
| Light grey
| High
+
| 192.01, 203.65, 193.66
| *
+
|   3.165536%
 +
| One in 31
 
|-
 
|-
 +
|style="background-color:#e3e8e4"|
 
| Light stone grey
 
| Light stone grey
| High
+
| 227.34, 232.61, 228.96
| *
+
|   3.108890%
 +
| One in 32
 +
|-
 +
|style="background-color:#3c3731"|
 +
| Earth green
 +
|  60.52,  55.20,  49.04
 +
|  3.054798%
 +
| One in 32
 
|-
 
|-
| Quill grey
+
|style="background-color:#3b523d"|
| High
+
| Dark taupe
| *
+
|  59.21,  82.77,  61.96
 +
|   2.788590%
 +
| One in 35
 
|-
 
|-
| Sand green
+
|style="background-color:#afa696"|
| High
+
| Cloudy grey
| *
+
| 175.59, 166.23, 150.75
 +
|   2.762956%
 +
| One in 36
 
|-
 
|-
| Sand red
+
|style="background-color:#5d6375"|
| High
+
| Smoky grey
| *
+
|  93.81,  99.67, 117.08
 +
|   2.683132%
 +
| One in 37
 
|-
 
|-
 +
|style="background-color:#7f708a"|
 
| Sand violet
 
| Sand violet
| High
+
| 127.55, 112.30, 138.65
| *
+
|   2.599409%
 +
| One in 38
 +
|-
 +
|style="background-color:#6e8086"|
 +
| Sand green
 +
| 110.27, 128.67, 134.78
 +
|  2.155449%
 +
| One in 46
 
|-
 
|-
| Sage green
+
|style="background-color:#9e7f8d"|
| High
+
| Hurricane grey
| *
+
| 158.85, 127.42, 141.52
 +
|   2.110820%
 +
| One in 47
 
|-
 
|-
| Smoky grey
+
|style="background-color:#e9e8ec"|
| High
+
| Pearl
| *
+
| 233.03, 232.73, 236.96
 +
|   1.993587%
 +
| One in 50
 
|-
 
|-
| White
+
|style="background-color:#526456"|
| High
+
| Slime green
| *
+
|  82.22, 100.51,  86.53
 +
|   1.877974%
 +
| One in 53
 
|-
 
|-
| Artichoke
+
|style="background-color:#9fa893"|
| Medium
+
| Grey
| *
+
| 159.25, 168.81, 147.58
 +
|   1.866112%
 +
| One in 53
 
|-
 
|-
| Cadet blue
+
|style="background-color:#8e757d"|
| Medium
+
| Sand red
| *
+
| 142.43, 117.19, 125.14
 +
|   1.644322%
 +
| One in 60
 
|-
 
|-
| Dark stone grey
+
|style="background-color:#92a694"|
| Medium
+
| Artichoke
| *
+
| 146.18, 166.15, 148.55
 +
|   1.599249%
 +
| One in 62
 
|-
 
|-
| Earth blue
+
|style="background-color:#8eabad"|
| Medium
+
| Silver
| *
+
| 142.24, 171.54, 173.07
 +
|   1.556062%
 +
| One in 64
 
|-
 
|-
| Faded green
+
|style="background-color:#a4a3b4"|
| Medium
+
| Fossil
| *
+
| 164.30, 163.29, 180.67
 +
|   1.508439%
 +
| One in 66
 
|-
 
|-
 +
|style="background-color:#6c6958"|
 
| Flint
 
| Flint
| Medium
+
| 108.72, 105.82,  88.74
| *
+
|   1.382108%
|-
+
| One in 72
| Grime
 
| Medium
 
| *
 
 
|-
 
|-
 +
|style="background-color:#ece8e9"|
 
| Lily white
 
| Lily white
| Medium
+
| 236.43, 232.08, 233.81
| *
+
|   1.252599%
 +
| One in 79
 
|-
 
|-
| Linen
+
|style="background-color:#8c937a"|
| Medium
+
| Sand yellow
| *
+
| 140.09, 147.14, 122.94
 +
|   1.183323%
 +
| One in 84
 
|-
 
|-
| Medium stone grey
+
|style="background-color:#393b4c"|
| Medium
+
| Earth blue
| *
+
|  57.66,  59.99,  76.36
 +
|   1.156545%
 +
| One in 86
 
|-
 
|-
| Oyster
+
|style="background-color:#646076"|
| Medium
+
| Dark stone grey
| *
+
| 100.67,  96.66, 118.32
 +
|   1.134502%
 +
| One in 88
 
|-
 
|-
| Pine Cone
+
|style="background-color:#759072"|
| Medium
+
| Faded green
| *
+
| 117.11, 144.92, 114.84
 +
|   1.084275%
 +
| One in 92
 
|-
 
|-
| Really Black
+
|style="background-color:#96b4b2"|
| Medium
+
| Cadet blue
| *
+
| 150.84, 180.06, 178.37
 +
|   0.925500%
 +
| One in 108
 
|-
 
|-
| Sand blue
+
|style="background-color:#6d575a"|
| Medium
+
| Pine Cone
| *
+
| 109.43,  87.19,  90.92
 +
|   0.882928%
 +
| One in 113
 
|-
 
|-
| Sand yellow
+
|style="background-color:#b09ba3"|
| Medium
+
| Medium stone grey
| *
+
| 176.01, 155.93, 163.93
 +
|  0.880791%
 +
| One in 113
 
|-
 
|-
| Silver
+
|style="background-color:#a98080"|
| Medium
+
| Linen
| *
+
| 169.19, 128.39, 128.82
 +
|   0.873657%
 +
| One in 114
 
|-
 
|-
| Slime green
+
|style="background-color:#85879b"|
| Medium
+
| Sand blue
| *
+
| 133.48, 135.50, 155.76
 +
|   0.828806%
 +
| One in 120
 
|-
 
|-
| Brown
+
|style="background-color:#7a856a"|
| Low
+
| Grime
| *
+
| 122.78, 133.37, 106.70
 +
|   0.778585%
 +
| One in 128
 
|-
 
|-
| Cocoa
+
|style="background-color:#72658d"|
| Low
+
| Lilac
| *
+
| 114.10, 101.28, 141.03
 +
|   0.472943%
 +
| One in 211
 
|-
 
|-
| Copper
+
|style="background-color:#d3d3dc"|
| Low
+
| Fog
| *
+
| 211.94, 211.77, 220.71
 +
|   0.445895%
 +
| One in 224
 
|-
 
|-
 +
|style="background-color:#5c5f4b"|
 
| Earth yellow
 
| Earth yellow
| Low
+
| 92.66,  95.98,  75.12
| *
+
|   0.421937%
 +
| One in 237
 
|-
 
|-
| Fog
+
|style="background-color:#7d709e"|
| Low
+
| Reddish lilac
| *
+
| 125.09, 112.82, 158.77
 +
|   0.344553%
 +
| One in 290
 
|-
 
|-
| Moss
+
|style="background-color:#1e1918"|
| Low
+
| Really black
| *
+
|  30.59,  25.20,  24.99
 +
|   0.332505%
 +
| One in 300
 
|-
 
|-
| Mulberry
+
|style="background-color:#aabea6"|
| Low
+
| Laurel green
| *
+
| 170.00, 190.34, 166.89
 +
|   0.306585%
 +
| One in 326
 
|-
 
|-
| Laurel green
+
|style="background-color:#935e77"|
| Low
+
| Copper
| *
+
| 147.30,  94.66, 119.44
 +
|   0.293565%
 +
| One in 340
 
|-
 
|-
| Reddish lilac
+
|style="background-color:#423827"|
| Low
+
| Cocoa
| *
+
|  66.63,  56.73,  39.95
 +
|   0.279018%
 +
| One in 358
 
|-
 
|-
| Bright bluish violet
+
|style="background-color:#4d3652"|
| Very Low
+
| Mulberry
| *
+
|  77.42,  54.86,  82.81
 +
|   0.188278%
 +
| One in 531
 
|-
 
|-
| Bright reddish lilac
+
|style="background-color:#879f78"|
| Very Low
+
| Moss
| *
+
| 135.40, 159.49, 120.47
 +
|   0.164397%
 +
| One in 608
 
|-
 
|-
| Bright violet
+
|style="background-color:#e1dadb"|
| Very Low
+
| Seashell
| *
+
| 225.46, 218.67, 219.33
 +
|   0.114083%
 +
| One in 876
 
|-
 
|-
| Bronze
+
|style="background-color:#7f5d57"|
| Very Low
+
| Brown
| *
+
| 127.30,  93.03,  87.55
 +
|   0.100533%
 +
| One in 994
 
|-
 
|-
 +
|style="background-color:#906191"|
 
| Lavender
 
| Lavender
| Very Low
+
| 144.25,  97.38, 145.49
| *
+
|   0.094846%
 +
| One in 1054
 
|-
 
|-
| Lilac
+
|style="background-color:#6b557f"|
| Very Low
+
| Bright violet
| *
+
| 107.88,  85.60, 127.71
 +
|   0.071935%
 +
| One in 1390
 
|-
 
|-
 +
|style="background-color:#64728e"|
 
| Medium bluish violet
 
| Medium bluish violet
| Very Low
+
| 100.11, 114.93, 142.56
| *
+
|   0.049258%
 +
| One in 2030
 
|-
 
|-
| Medium lilac
+
|style="background-color:#8b5a7f"|
| Very Low
+
| Bright reddish lilac
| *
+
| 139.02,  90.10, 127.41
 +
|  0.044880%
 +
| One in 2228
 
|-
 
|-
 +
|style="background-color:#7b547a"|
 
| Plum
 
| Plum
| Very Low
+
| 123.45,  84.02, 122.30
| *
+
|   0.038177%
|-
+
| One in 2619
| Seashell
 
| Very Low
 
| *
 
|-
 
| Steel blue
 
| Very Low
 
| *
 
 
|-
 
|-
| Storm blue
+
|style="background-color:#5c8560"|
| Very Low
+
| Shamrock
| *
+
|  92.10, 133.15,  96.47
 +
|   0.037096%
 +
| One in 2695
 
|-
 
|-
 +
|style="background-color:#81535a"|
 
| Tawny
 
| Tawny
| Very Low
+
| 129.88,  83.54,  90.03
| *
+
|   0.034197%
 +
| One in 2924
 
|-
 
|-
| Beige
+
|style="background-color:#706c41"|
| Extremely Low
+
| Bronze
| *
+
| 112.06, 108.75,  65.78
 +
|   0.031130%
 +
| One in 3212
 
|-
 
|-
| Bright green
+
|style="background-color:#65513a"|
| Extremely Low
+
| Earth orange
| *
+
| 101.10,  81.99,  58.87
 +
|   0.030521%
 +
| One in 3276
 
|-
 
|-
| Bright reddish violet
+
|style="background-color:#517c7a"|
| Extremely low
+
| Steel blue
| *
+
|  81.43, 124.99, 122.72
 +
|   0.027276%
 +
| One in 3666
 
|-
 
|-
| Burlap
+
|style="background-color:#5d5588"|
| Extremely Low
+
| Bright bluish violet
| *
+
|  93.23,  85.81, 136.81
 +
|   0.026786%
 +
| One in 3733
 
|-
 
|-
| Burgundy
+
|style="background-color:#46406a"|
| Extremely Low
+
| Medium lilac
| *
+
|  70.67,  64.04, 106.63
 +
|   0.026098%
 +
| One in 3831
 
|-
 
|-
| Dark green
+
|style="background-color:#a2b293"|
| Extremely Low
+
| Medium green
| *
+
| 162.58, 178.80, 147.38
 +
|  0.017836%
 +
| One in 5606
 
|-
 
|-
| Earth orange
+
|style="background-color:#40546e"|
| Extremely Low
+
| Storm blue
| *
+
|  64.91,  84.86, 110.26
 +
|   0.017640%
 +
| One in 5668
 
|-
 
|-
| Fawn brown
+
|style="background-color:#39633e"|
| Extremely Low
+
| Parsley green
| *
+
|  57.54,  99.29,  62.56
 +
|   0.012026%
 +
| One in 8315
 
|-
 
|-
| Light bluish green
+
|style="background-color:#b9bba1"|
| Extremely Low
+
| Beige
| *
+
| 185.85, 187.57, 161.56
 +
|   0.010828%
 +
| One in 9235
 
|-
 
|-
 +
|style="background-color:#b4b2c6"|
 
| Light lilac
 
| Light lilac
| Extremely Low
+
| 180.31, 178.43, 198.11
| *
+
|   0.009875%
 +
| One in 10126
 +
|-
 +
|style="background-color:#835375"|
 +
| Bright reddish violet
 +
| 131.67,  83.60, 117.52
 +
|  0.008236%
 +
| One in 12141
 
|-
 
|-
| Med. reddish violet
+
|style="background-color:#365d46"|
| Extremely Low
+
| Dark green
| *
+
|  54.16,  93.97,  70.12
 +
|   0.006221%
 +
| One in 16074
 
|-
 
|-
| Medium green
+
|style="background-color:#b9c9cb"|
| Extremely Low
+
| Light bluish green
| *
+
| 185.58, 201.04, 203.88
 +
|  0.005138%
 +
| One in 19462
 
|-
 
|-
| Olivine
+
|style="background-color:#7ea8a6"|
| Extremely Low
+
| Turquoise
| *
+
| 126.90, 168.57, 166.88
 +
|   0.003795%
 +
| One in 26350
 
|-
 
|-
| Parsley Green
+
|style="background-color:#4d6a80"|
| Extremely Low
+
| Royal blue
| *
+
|  77.54, 106.69, 128.04
 +
|   0.003074%
 +
| One in 32530
 
|-
 
|-
 +
|style="background-color:#6d4042"|
 
| Reddish brown
 
| Reddish brown
| Extremely Low
+
| 109.40,  64.78,  66.17
| *
+
|   0.002577%
 +
| One in 38804
 
|-
 
|-
| Daisy orange
+
|style="background-color:#355e41"|
| Almost impossible
+
| Sea green
| *
+
|  53.40,  94.31,  65.33
 +
|   0.001122%
 +
| One in 89126
 
|-
 
|-
| Royal Blue
+
|style="background-color:#704144"|
| Almost impossible
+
| Burgundy
| *
+
| 112.06,  65.22,  68.99
 +
|   0.000217%
 +
| One in 460829
 
|-
 
|-
| Turquoise
+
|style="background-color:#55895c"|
| Almost impossible
+
| Bright green
| *
+
|  85.13, 137.56,  92.63
 +
|   0.000204%
 +
| One in 490196
 
|}
 
|}
  
 
==== Debug Colors ====
 
==== Debug Colors ====
 +
[[File:Debug_part.png|200px|thumb|A debug part, with the BrickColor "Deep orange".]]
 +
 
Older versions of Grassy Landscape spawned random BrickColors instead of using a color spectrum. Colors outside the spawnable spectrum are referred to as "debug colors", since they used an unfinished algorithm for debugging purposes (i.e. to get the rest of the game working first). Since there is currently no save system, and all debug colors have been removed from the game, it is no longer possible to encounter a part color outside of the spectrum.
 
Older versions of Grassy Landscape spawned random BrickColors instead of using a color spectrum. Colors outside the spawnable spectrum are referred to as "debug colors", since they used an unfinished algorithm for debugging purposes (i.e. to get the rest of the game working first). Since there is currently no save system, and all debug colors have been removed from the game, it is no longer possible to encounter a part color outside of the spectrum.
  
Line 410: Line 556:
 
When generating colors, the game will refuse to generate any color that happens to be a "rare BrickColor". The list of rare BrickColors is below:
 
When generating colors, the game will refuse to generate any color that happens to be a "rare BrickColor". The list of rare BrickColors is below:
  
{| class="wikitable"
+
{| class="wikitable sortable"
 +
!class="unsortable"| Visual
 
! Name
 
! Name
 
! Reason
 
! Reason
 
|-
 
|-
 +
|style="background-color:#f3cf9b"|
 
| Lig. Yellowich orange
 
| Lig. Yellowich orange
 
| Typo
 
| Typo
 
|-
 
|-
| Light green (mint)
+
|style="background-color:#c2dab8"|
 +
| Light green (Mint)
 
| Parenthesis
 
| Parenthesis
 
|-
 
|-
 +
|style="background-color:#ece8de"|
 
| Phosph. White
 
| Phosph. White
 
| Cool name
 
| Cool name
 
|-
 
|-
 +
|style="background-color:#ececec"|
 
| Transparent
 
| Transparent
 
| Transparent
 
| Transparent
 
|-
 
|-
 +
|style="background-color:#cd544b"|
 
| Tr. Red
 
| Tr. Red
 
| Transparent
 
| Transparent
 
|-
 
|-
 +
|style="background-color:#c1dff0"|
 
| Tr. Lg blue
 
| Tr. Lg blue
 
| Transparent
 
| Transparent
 
|-
 
|-
 +
|style="background-color:#7bb6e8"|
 
| Tr. Blue
 
| Tr. Blue
 
| Transparent
 
| Transparent
 
|-
 
|-
 +
|style="background-color:#f7f18d"|
 
| Tr. Yellow
 
| Tr. Yellow
 
| Transparent
 
| Transparent
 
|-
 
|-
 +
|style="background-color:#d9856c"|
 
| Tr. Flu. Reddish orange
 
| Tr. Flu. Reddish orange
 
| Transparent
 
| Transparent
 
|-
 
|-
 +
|style="background-color:#84b68d"|
 
| Tr. Green
 
| Tr. Green
 
| Transparent
 
| Transparent
 
|-
 
|-
 +
|style="background-color:#f8f184"|
 
| Tr. Flu. Green
 
| Tr. Flu. Green
 
| Transparent
 
| Transparent
 
|-
 
|-
 +
|style="background-color:#bfb7b1"|
 
| Tr. Brown
 
| Tr. Brown
 
| Transparent
 
| Transparent
 
|-
 
|-
 +
|style="background-color:#e5adc8"|
 
| Tr. Medi. reddish violet
 
| Tr. Medi. reddish violet
 
| Transparent
 
| Transparent
 
|-
 
|-
 +
|style="background-color:#a5a5cb"|
 
| Tr. Bright bluish violet
 
| Tr. Bright bluish violet
 
| Transparent
 
| Transparent
 
|-
 
|-
 +
|style="background-color:#cfe2f7"|
 
| Tr. Flu. Blue
 
| Tr. Flu. Blue
 
| Transparent
 
| Transparent
 
|-
 
|-
 +
|style="background-color:#fff67b"|
 
| Tr. Flu. Yellow
 
| Tr. Flu. Yellow
 
| Transparent
 
| Transparent
 
|-
 
|-
 +
|style="background-color:#e1a4c2"|
 
| Tr. Flu. Red
 
| Tr. Flu. Red
 
| Transparent
 
| Transparent
 
|-
 
|-
 +
|style="background-color:#97695b"|
 
| Red flip/flop
 
| Red flip/flop
 
| Flip/flop
 
| Flip/flop
 
|-
 
|-
 +
|style="background-color:#b48455"|
 
| Yellow flip/flop
 
| Yellow flip/flop
 
| Flip/flop
 
| Flip/flop
 
|-
 
|-
 +
|style="background-color:#898788"|
 
| Silver flip/flop
 
| Silver flip/flop
 
| Flip/flop
 
| Flip/flop
 
|-
 
|-
 +
|style="background-color:#7988a1"|
 
| Sand blue metallic
 
| Sand blue metallic
 
| Metallic
 
| Metallic
 
|-
 
|-
 +
|style="background-color:#958ea3"|
 
| Sand violet metallic
 
| Sand violet metallic
 
| Metallic
 
| Metallic
 
|-
 
|-
 +
|style="background-color:#938767"|
 
| Sand yellow metallic
 
| Sand yellow metallic
 
| Metallic
 
| Metallic
 
|-
 
|-
 +
|style="background-color:#575857"|
 
| Dark grey metallic
 
| Dark grey metallic
 
| Metallic
 
| Metallic
 
|-
 
|-
 +
|style="background-color:#161d32"|
 
| Black metallic
 
| Black metallic
 
| Metallic
 
| Metallic
 
|-
 
|-
 +
|style="background-color:#abadac"|
 
| Light grey metallic
 
| Light grey metallic
 
| Metallic
 
| Metallic
 
|-
 
|-
 +
|style="background-color:#756c62"|
 
| Gun metallic
 
| Gun metallic
 
| Metallic
 
| Metallic
 
|-
 
|-
 +
|style="background-color:#828a5d"|
 
| Lemon metalic
 
| Lemon metalic
 
| Bkerr's favorite color
 
| Bkerr's favorite color

Latest revision as of 04:39, 22 May 2021

Parts are Roblox parts in Grassy Landscape that spawn throughout the Map. They can be picked up, welded, and cut by players. Parts come in a variety of colors, shapes and sizes. They are one of the core building materials of the game, the other being items.

Spawning

Upon server start, 4,800 parts are spawned around the map. Each part has a random position, size, material, shape and color. For positioning, the map has designated spawn areas for parts and items. An algorithm picks between these areas, giving each one a probability equal to its volume, then calculates a random position and rotation within the area. For shape, each part has a ~60% chance of being a block and a ~40% chance of being a cylinder.

Materials

For material, one is picked according to the probability table below.

Material Chance Value
CorrodedMetal 30.6% 0.8
Metal 19.6% 1
SmoothPlastic 19.6% 1
DiamondPlate 13.6% 1.2
Glass 13.6% 1.2
Foil 3.1% 2.5

Below is the code used to calculate that table, which can be run by any injector such as Synapse or Script-Ware. The reason for the (1 / v) ^ 2 formula is that the part spawning script uses that formula when choosing which material to pick. (confirmed by the developer)

local valuebook = require(game.ReplicatedStorage.ValueBook)

local total = 0
for _, v in pairs(valuebook.MaterialValues) do
	total += (1 / v) ^ 2
end

for _, v in pairs(valuebook.Materials) do
	local value = (1 / valuebook.MaterialValues[v])^2
	print(v, tostring((value / total) * 100) .. '%', value)
end

Sizing

For size, the value of the picked material is used as a bias. The bias skews the random distribution such that higher bias values cause lower random numbers to be more common. In practice this means that parts with rarer materials tend to spawn smaller, but all sizes are still possible. Then, the Y and Z values are randomly generated. Each component is calculated as math.random()^bias * 9 + 1, which means a random number from 1 to 10, skewed by the bias. Again, higher biases (such as foil's bias of 2.5) mean that the size will tend towards the 1, while lower biases (such as in the case of corroded metal) tend to skew towards 10.

The maximum value for the X component will be a value N such that Y * Z * N == 125. In order words the maximum volume of the part will be 125 studs squared. The minimum value of the X component is always 0.2. Then a random number is generated between those two values, skewed by the bias once again.

The full function is thusly:

function Part:RandomSize(bias)
	local y = math.random()^bias * 9 + 1
	local z = math.random()^bias * 9 + 1
	local x = math.min(math.random()^bias * (125 / (y * z) - 0.2) + 0.2, 10)
	
	return Vector3.new(x, y, z)
end

Colors

Parts mainly spawn in dull and muted tones, with some greys and whites mixed in. Rather than a list of BrickColors, part colors are generated as Color3 values, so there is an entire spectrum of possible colors. Nonetheless, the spectrum is limited and is only a small fraction of the color space. Here is a graph showing the entire part color spectrum (click on it for a larger version):

GLS color spectrum.png

On the left is the hue and lightness spectrum, and on the right is the saturation spectrum. The range of saturation values for a color depends on its lightness, which is why there is a separate saturation graph next to the main one. To pick a color from the spectrum, first the game chooses the hue and lightness from the graph on the left, and then it chooses a saturation from the graph on the right. As you can see, brighter colors have a smaller saturation range.

The color generation code is as follows:

local hue = math.random()
local lightness = rand(0.1, 1, 0.75)
local saturation = rand(0.1, 0.5 - (lightness^0.5 * 0.4), 5)

rand(min, max, bias) generates a random number between its two first arguments, biased by the third argument. Notice that lightnesses below 0.1 are impossible to spawn and so are saturations below 0.1, which are both reflected in the graph.

BrickColors found in-game

This table was generated by TerrodactyI using a special script that collects data from 100 million color generations. It is more accurate than any measurement taken in-game, and it took about 7 minutes to generate.

Visual Name RGB Percentage Rarity
Quill grey 222.42, 217.38, 224.41 7.223713% One in 13
Mid gray 207.46, 196.67, 198.20 7.049205% One in 14
Institutional white 248.08, 246.33, 246.36 6.291832% One in 15
White 246.56, 245.87, 244.47 4.385896% One in 22
Dark grey 104.81, 130.25, 107.48 4.328141% One in 23
Black 49.21, 50.07, 60.15 4.203303% One in 23
Ghost grey 197.10, 201.13, 210.98 3.632279% One in 27
Sage green 187.03, 200.07, 202.54 3.464172% One in 28
Dirt brown 67.21, 60.48, 73.94 3.265487% One in 30
Oyster 184.43, 181.80, 168.48 3.241747% One in 30
Light grey 192.01, 203.65, 193.66 3.165536% One in 31
Light stone grey 227.34, 232.61, 228.96 3.108890% One in 32
Earth green 60.52, 55.20, 49.04 3.054798% One in 32
Dark taupe 59.21, 82.77, 61.96 2.788590% One in 35
Cloudy grey 175.59, 166.23, 150.75 2.762956% One in 36
Smoky grey 93.81, 99.67, 117.08 2.683132% One in 37
Sand violet 127.55, 112.30, 138.65 2.599409% One in 38
Sand green 110.27, 128.67, 134.78 2.155449% One in 46
Hurricane grey 158.85, 127.42, 141.52 2.110820% One in 47
Pearl 233.03, 232.73, 236.96 1.993587% One in 50
Slime green 82.22, 100.51, 86.53 1.877974% One in 53
Grey 159.25, 168.81, 147.58 1.866112% One in 53
Sand red 142.43, 117.19, 125.14 1.644322% One in 60
Artichoke 146.18, 166.15, 148.55 1.599249% One in 62
Silver 142.24, 171.54, 173.07 1.556062% One in 64
Fossil 164.30, 163.29, 180.67 1.508439% One in 66
Flint 108.72, 105.82, 88.74 1.382108% One in 72
Lily white 236.43, 232.08, 233.81 1.252599% One in 79
Sand yellow 140.09, 147.14, 122.94 1.183323% One in 84
Earth blue 57.66, 59.99, 76.36 1.156545% One in 86
Dark stone grey 100.67, 96.66, 118.32 1.134502% One in 88
Faded green 117.11, 144.92, 114.84 1.084275% One in 92
Cadet blue 150.84, 180.06, 178.37 0.925500% One in 108
Pine Cone 109.43, 87.19, 90.92 0.882928% One in 113
Medium stone grey 176.01, 155.93, 163.93 0.880791% One in 113
Linen 169.19, 128.39, 128.82 0.873657% One in 114
Sand blue 133.48, 135.50, 155.76 0.828806% One in 120
Grime 122.78, 133.37, 106.70 0.778585% One in 128
Lilac 114.10, 101.28, 141.03 0.472943% One in 211
Fog 211.94, 211.77, 220.71 0.445895% One in 224
Earth yellow 92.66, 95.98, 75.12 0.421937% One in 237
Reddish lilac 125.09, 112.82, 158.77 0.344553% One in 290
Really black 30.59, 25.20, 24.99 0.332505% One in 300
Laurel green 170.00, 190.34, 166.89 0.306585% One in 326
Copper 147.30, 94.66, 119.44 0.293565% One in 340
Cocoa 66.63, 56.73, 39.95 0.279018% One in 358
Mulberry 77.42, 54.86, 82.81 0.188278% One in 531
Moss 135.40, 159.49, 120.47 0.164397% One in 608
Seashell 225.46, 218.67, 219.33 0.114083% One in 876
Brown 127.30, 93.03, 87.55 0.100533% One in 994
Lavender 144.25, 97.38, 145.49 0.094846% One in 1054
Bright violet 107.88, 85.60, 127.71 0.071935% One in 1390
Medium bluish violet 100.11, 114.93, 142.56 0.049258% One in 2030
Bright reddish lilac 139.02, 90.10, 127.41 0.044880% One in 2228
Plum 123.45, 84.02, 122.30 0.038177% One in 2619
Shamrock 92.10, 133.15, 96.47 0.037096% One in 2695
Tawny 129.88, 83.54, 90.03 0.034197% One in 2924
Bronze 112.06, 108.75, 65.78 0.031130% One in 3212
Earth orange 101.10, 81.99, 58.87 0.030521% One in 3276
Steel blue 81.43, 124.99, 122.72 0.027276% One in 3666
Bright bluish violet 93.23, 85.81, 136.81 0.026786% One in 3733
Medium lilac 70.67, 64.04, 106.63 0.026098% One in 3831
Medium green 162.58, 178.80, 147.38 0.017836% One in 5606
Storm blue 64.91, 84.86, 110.26 0.017640% One in 5668
Parsley green 57.54, 99.29, 62.56 0.012026% One in 8315
Beige 185.85, 187.57, 161.56 0.010828% One in 9235
Light lilac 180.31, 178.43, 198.11 0.009875% One in 10126
Bright reddish violet 131.67, 83.60, 117.52 0.008236% One in 12141
Dark green 54.16, 93.97, 70.12 0.006221% One in 16074
Light bluish green 185.58, 201.04, 203.88 0.005138% One in 19462
Turquoise 126.90, 168.57, 166.88 0.003795% One in 26350
Royal blue 77.54, 106.69, 128.04 0.003074% One in 32530
Reddish brown 109.40, 64.78, 66.17 0.002577% One in 38804
Sea green 53.40, 94.31, 65.33 0.001122% One in 89126
Burgundy 112.06, 65.22, 68.99 0.000217% One in 460829
Bright green 85.13, 137.56, 92.63 0.000204% One in 490196

Debug Colors

A debug part, with the BrickColor "Deep orange".

Older versions of Grassy Landscape spawned random BrickColors instead of using a color spectrum. Colors outside the spawnable spectrum are referred to as "debug colors", since they used an unfinished algorithm for debugging purposes (i.e. to get the rest of the game working first). Since there is currently no save system, and all debug colors have been removed from the game, it is no longer possible to encounter a part color outside of the spectrum.

"Rare BrickColors"

When generating colors, the game will refuse to generate any color that happens to be a "rare BrickColor". The list of rare BrickColors is below:

Visual Name Reason
Lig. Yellowich orange Typo
Light green (Mint) Parenthesis
Phosph. White Cool name
Transparent Transparent
Tr. Red Transparent
Tr. Lg blue Transparent
Tr. Blue Transparent
Tr. Yellow Transparent
Tr. Flu. Reddish orange Transparent
Tr. Green Transparent
Tr. Flu. Green Transparent
Tr. Brown Transparent
Tr. Medi. reddish violet Transparent
Tr. Bright bluish violet Transparent
Tr. Flu. Blue Transparent
Tr. Flu. Yellow Transparent
Tr. Flu. Red Transparent
Red flip/flop Flip/flop
Yellow flip/flop Flip/flop
Silver flip/flop Flip/flop
Sand blue metallic Metallic
Sand violet metallic Metallic
Sand yellow metallic Metallic
Dark grey metallic Metallic
Black metallic Metallic
Light grey metallic Metallic
Gun metallic Metallic
Lemon metalic Bkerr's favorite color

If the algorithm generates a color that is "rare", it will simply re-roll until it lands on one that isn't. Most likely, if someone has a part with one of these colors, it was obtained from an event or someone with the debug GUI.