diff --git a/mod-list.html b/mod-list.html
index 60397d73..c8e47173 100644
--- a/mod-list.html
+++ b/mod-list.html
@@ -379,6 +379,7 @@
| invisible_wall.js | Element like Wall that takes the color of the background | Alice |
| lightmap.js | Light sources glow | RedBirdly |
| liquid_mixing.js | Liquids can mix colors dynamically | Nekonico |
+| manyMoreThemes.js | Adds additional themes | Jayd |
| moreViews.js | Many new rendering modes | ggod |
| nicer_flame.js | Fire is visually pleasing | RedBirdly |
| occlusion.js | Realistic shadows, similar to Terraria's lighting | RedBirdly |
diff --git a/mods/3pms_mod.js b/mods/3pms_mod.js
new file mode 100644
index 00000000..4e39d814
--- /dev/null
+++ b/mods/3pms_mod.js
@@ -0,0 +1,133 @@
+// mod moment
+// also made by 3pm
+
+// starting the initiation
+version = "0.0.1"
+subversion = "0.0.12"
+versionname = "Gullible On The Ceilling"
+
+console.log("3pms_mod.js " + version + " \"" + versionname + "\"")
+console.log("3pms_mod.js | Initiating...")
+
+// bypassing the tps limit
+// nvm this is useless
+// whatever im keeping it
+
+setTimeout(() => {
+ const tpsbutton = document.getElementById("tpsButton");
+ tpsbutton.onclick = () => {
+ var tpsprompt = prompt(
+ "Enter the new simulation Ticks Per Second (TPS). This is how many updates per second the simulation will run.\n\n" +
+ "The default is 30.\n\nThe current TPS is " + tps + ".\n\nNOTE: 3pms_mod.js removes the TPS limit.\n" +
+ "Any TPS higher than 1000 isn\'t recommended.\n\n"
+ );
+
+ var newtps = parseInt(tpsprompt);
+ if (tpsprompt !== null) {
+ if (isNaN(newtps) || newtps == "") {
+ alert("You did not enter a valid TPS.");
+ } else {
+ tps = parseInt(newtps);
+ if (isNaN(tps) || tps <= 0) {
+ alert("You did not enter a valid TPS.");
+ tps = 30;
+ }
+ }
+ resetInterval(tps);
+ }
+ focusGame();
+ };
+}, 1000);
+
+// more settings
+
+function showMoreSettings() {
+ showingMenu="moresettings"
+ console.log("3pms_mod.js | Opening More Settings....")
+ var moresettingsParent = document.getElementById("moresettingsParent");
+ moresettingsParent.style.display = "block";
+}
+
+setTimeout(() => {
+ const gamediv = document.getElementById("gameDiv")
+ gamediv.insertAdjacentHTML("beforeend", `
+ `);
+ const menuText = document.getElementsByClassName("menuText")[6]
+ const newButton = document.createElement("button")
+ newButton.innerText = "More Settings"
+ newButton.className = "settingsButton"
+ newButton.onclick = () => {
+ closeMenu();
+ showMoreSettings()
+ }
+ menuText.appendChild(newButton)
+}, 1000);
+
+// elements
+
+elements.calcium_oxide = { // most of this is taken off calcium
+ color: ["#544E45","#6A635E","#6E6A61","#756F62","#918A7B"],
+ tick: function(pixel) {
+ behaviors.POWDER(pixel);
+ for (var i = 0; i < adjacentCoords.length; i++) {
+ var x = pixel.x+adjacentCoords[i][0];
+ var y = pixel.y+adjacentCoords[i][1];} },
+ tempHigh: 842,
+ reactions: {
+ water: {elem1:"calcium_oxide", elem2:"steam"},
+ salt_water: {elem1:"calcium_oxide", elem2:"steam"},
+ sugar_water: {elem1:"calcium_oxide", elem2:"steam"},
+ dirty_water: {elem1:"calcium_oxide", elem2:"steam"}
+ },
+ category: "powders",
+ state: "solid",
+ density: 1550,
+ conduct: 0.40,
+ hardness: 0.2,
+ fireColor: "#ff6b21"
+}
+
+elements.eeraser = { // finally integrating it after over a year
+ color: "#FFFF00",
+ behavior: behaviors.WALL,
+ behaviorON: [
+ "DL|DL|DL",
+ "DL|DL|DL",
+ "DL|DL|DL",
+ ],
+ category: "machines",
+ insulate: elements.wire.insulate,
+ conduct: elements.wire.conduct,
+ noMix: elements.wire.noMix
+};
+
+// stopping the initiation
+
+setTimeout(() => {
+ console.log("3pms_mod.js | Initiated. Thank you.")
+}, 1000);
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+const thing=document.createElement("p");thing.innerText="MY NAME ๐ IS DAVID ๐จโ๐ค DAD ๐จโ๐ฉโ๐งโ๐ฆ๐จโ๐ฉโ๐งโ๐ง I โน๏ธ WANT SOME ICE ๐ง๐ฆ๐ถ CREAM ๐งด๐งด DAVID ๐จโ๐ค THAT IS MY NAME ๐ DAVID ๐จโ๐ค๐จโ๐ค I โน๏ธ WANT ANOTHER WHERE โโ IS MY BALL ๐๐ IโM RUNNING ๐โโ๏ธ๐โโ๏ธ OUT ON ๐ THE ROAD ๐ง THERE IS A ๐
ฐ๏ธ CAR ๐๐ AND IT IS GOING TO HIT ๐ ME ๐๐โโ๏ธ HEEEEEEEEELP HELP ๐ MEEEEEEE HEEEEEEEEEEEEEEEEELP\n\nthanks for using 3pms_mod.js :3";document.body.appendChild(thing)
\ No newline at end of file
diff --git a/mods/CandyCanes.js b/mods/CandyCanes.js
new file mode 100644
index 00000000..0fd982f3
--- /dev/null
+++ b/mods/CandyCanes.js
@@ -0,0 +1,15 @@
+elements.candy.colorPattern = [
+ "WWRRRWWRRR",
+ "WWRRWWWRRW",
+ "WRRRWWRRRW",
+ "WRRWWWRRWW",
+ "RRRWWRRRWW",
+ "RRWWWRRWWW",
+ "RRWWRRRWWR",
+ "RWWWRRWWWR",
+ "RWWRRRWWRR",
+ "WWWRRWWWRR",
+ ]
+ elements.candy.colorKey = {"R":"#c92626", "W":"#e3e3e3"}
+ elements.candy.color = ["#c92626","#e3e3e3","#c92626","#e3e3e3","#c92626"]
+ elements.candy.breakIntoColor = ["#c92626","#e3e3e3"]
\ No newline at end of file
diff --git a/mods/CandyCorn.js b/mods/CandyCorn.js
new file mode 100644
index 00000000..93ca5ce9
--- /dev/null
+++ b/mods/CandyCorn.js
@@ -0,0 +1,8 @@
+elements.candy.colorPattern = [
+ "W","W","W","W","W",
+ "O","O","O","O","O",
+ "Y","Y","Y","Y","Y",
+ ]
+ elements.candy.colorKey = {"W":"#ffffff", "Y":"#ffcd55", "O":"#ff9933"}
+ elements.candy.color = ["#ffffff","#ffffff","#ff9933","#ff9933","#ffcd55","#ffcd55"]
+ elements.candy.breakIntoColor = ["#ffffff","#ffcd55","#ff9933"]
\ No newline at end of file
diff --git a/mods/EasterEggs.js b/mods/EasterEggs.js
new file mode 100644
index 00000000..5ec3707f
--- /dev/null
+++ b/mods/EasterEggs.js
@@ -0,0 +1 @@
+elements.egg.color = elements.bead.color
\ No newline at end of file
diff --git a/mods/manyMoreThemes.js b/mods/manyMoreThemes.js
new file mode 100644
index 00000000..bed56cf0
--- /dev/null
+++ b/mods/manyMoreThemes.js
@@ -0,0 +1,67 @@
+if (!enabledMods.includes("mods/betterSettings.js")) { enabledMods.unshift("mods/betterSettings.js"); localStorage.setItem("enabledMods", JSON.stringify(enabledMods)); window.location.reload(); };
+let setting = null
+
+dependOn("betterSettings.js", () => {
+ const tabMMT = new SettingsTab("Many More Themes");
+ setting = new SelectSetting("Themes", "Themes", [[0, "disabled"],[1, "Stardust"], [2, "Aqautic(coming soon!)"], [3, "Supernova(coming soon!)"], [4, "Sunrise(coming soon!)"]]);
+
+ tabMMT.registerSetting(setting);
+ settingsManager.registerTab(tabMMT);
+
+
+
+ if (setting.value == 1){
+ const link = document.createElement("link");
+ link.rel = "stylesheet";
+ link.type = "text/css";
+ link.href = "https://jayd-rubies.github.io/assets/css/stardust.css";
+ document.head.appendChild(link);
+ document.body.style.backgroundImage = 'url("https://jayd-rubies.github.io/assets/image/2025_05_16_0x5_Kleki.png")';
+ document.body.style.backgroundSize = 'cover';
+ window.addEventListener("load",function(){;
+ document.querySelectorAll(".categoryButton").forEach(e => {
+ e.style.backgroundColor = "#5c008440";
+ e.style.borderColor = "#5c0084";
+ })
+ });
+
+ }
+}, true,);
+
+settings.bg = "transparernt";
+// setting.onUpdate((setting) => {
+// if (setting == 1) {
+// function drawCursor() {
+// var layerCtx = canvasLayers.gui.getContext('2d');
+// var mouseOffset = Math.trunc(mouseSize/2);
+// var topLeft = [mousePos.x-mouseOffset,mousePos.y-mouseOffset];
+// var bottomRight = [mousePos.x+mouseOffset,mousePos.y+mouseOffset];
+// // Draw a square around the mouse
+// layerCtx.strokeStyle = "#5c0084";
+// layerCtx.fillStyle = "#5c008440";
+// layerCtx.strokeRect(topLeft[0]*pixelSize,topLeft[1]*pixelSize,(bottomRight[0]-topLeft[0]+1)*pixelSize,(bottomRight[1]-topLeft[1]+1)*pixelSize);
+// layerCtx.beginPath();
+// layerCtx.lineWidth = 3;
+// layerCtx.stroke();
+// layerCtx.fillRect(topLeft[0]*pixelSize,topLeft[1]*pixelSize,(bottomRight[0]-topLeft[0]+1)*pixelSize,(bottomRight[1]-topLeft[1]+1)*pixelSize);
+// layerCtx.fill();
+// // draw one transparent pixel in the center
+// if (settings.precision) {
+// layerCtx.fillStyle = "#5c008480";
+// layerCtx.fillRect(mousePos.x*pixelSize,mousePos.y*pixelSize,pixelSize,pixelSize);
+// }
+// if (shaping) {
+// if (shaping === 1) { // Draw a white line from shapeStart.x to shapeStart.y
+// layerCtx.beginPath();
+// layerCtx.strokeStyle = "#5c0084";
+// layerCtx.lineWidth = 3;
+// layerCtx.moveTo(shapeStart.x*pixelSize+pixelSizeHalf, shapeStart.y*pixelSize+pixelSizeHalf);
+// layerCtx.lineTo(mousePos.x*pixelSize+pixelSizeHalf, mousePos.y*pixelSize+pixelSizeHalf);
+// layerCtx.stroke()
+// }
+// }
+// }
+// drawCursor()
+// }
+// }) ยฏ\_(ใ)_/ยฏ
+// i'll figure it out later
diff --git a/mods/oxide.theme.js b/mods/oxide.theme.js
new file mode 100644
index 00000000..2d1f5133
--- /dev/null
+++ b/mods/oxide.theme.js
@@ -0,0 +1,43 @@
+// Oxide.theme.js
+
+runAfterReset(function applyTheme() {
+ // Only run once
+ const index = runAfterResetList.findIndex(fn => fn.name === "applyTheme");
+ if (index !== -1) runAfterResetList.splice(index, 1);
+
+ const css = `
+ :root {
+ --theme: #66AC92;
+ --theme-dark: #015C53;
+ --theme-darker: #015C53;
+ --theme-darker-opac85: #015C5377;
+ --theme-darkest: #0B1E1A;
+ --theme-darkest2: #0B1E1A;
+ --theme-opac85: #66AC9279;
+ --theme-opac75: #66AC92BF;
+ --theme-opac50: #00000080;
+ --theme-opac25: #66AC9240;
+ --theme-opac10: #66AC921A;
+ }
+
+ a {
+ color: var(--theme);
+ text-decoration: underline;
+ }
+ `;
+
+ let styleTag = document.getElementById("themeStyle");
+ if (!styleTag) {
+ styleTag = document.createElement("style");
+ styleTag.id = "themeStyle";
+ document.body.appendChild(styleTag);
+ }
+
+ styleTag.textContent = css;
+
+ document
+ .getElementById('extraInfo')
+ .querySelectorAll('*')
+ .forEach(el => {el.style.color = '#66AC92'; el.style.backgrounda = 'none';});
+
+});
diff --git a/mods/saturnsstuff.js b/mods/saturnsstuff.js
new file mode 100644
index 00000000..5efc427d
--- /dev/null
+++ b/mods/saturnsstuff.js
@@ -0,0 +1,729 @@
+elements.sand = {
+ color: "#e6d577",
+ behavior: behaviors.POWDER,
+ reactions: {
+ "water":{elem1:"wet_sand",elem2:null},
+ "salt_water":{elem1:"wet_sand",elem2:"foam"},
+ "sugar_water":{elem1:"wet_sand",elem2:null},
+ "seltzer":{elem1:"wet_sand",elem2:null},
+ "dirty_water":{elem1:"wet_sand",elem2:null},
+ "pool_water":{elem1:"wet_sand",elem2:null},
+ "slush":{elem1:"wet_sand",elem2:null},
+ "soda":{elem1:"wet_sand",elem2:null},
+ "juice":{elem1:"wet_sand",elem2:null},
+ "milk":{elem1:"wet_sand",elem2:null},
+ "chocolate_milk":{elem1:"wet_sand",elem2:null},
+ "fruit_milk":{elem1:"wet_sand",elem2:null},
+ "pilk":{elem1:"wet_sand",elem2:null},
+ "eggnog":{elem1:"wet_sand",elem2:null},
+ "nut_milk":{elem1:"wet_sand",elem2:null},
+ "cream":{elem1:"wet_sand",elem2:null},
+ "vinegar":{elem1:"wet_sand",elem2:null},
+ "blood":{elem1:"wet_sand",elem2:null},
+ "vaccine":{elem1:"wet_sand",elem2:null},
+ "antibody":{elem1:"wet_sand",elem2:null},
+ "infection":{elem1:"wet_sand",elem2:null},
+ "poison":{elem1:"wet_sand",elem2:null},
+ "antidote":{elem1:"wet_sand",elem2:null},
+ "tornado":{elem1:"sandstorm", oneway:true},
+ "charcoal":{elem1:"filter_powder", elem2: null}
+ },
+ tempHigh: 1700,
+ stateHigh: "molten_glass",
+ category: "land",
+ state: "solid",
+ density: 1602
+}
+
+elements.water = {
+ color: "#2167ff",
+ behavior: behaviors.LIQUID,
+ tempHigh: 100,
+ stateHigh: "steam",
+ tempLow: 0,
+ stateLow: "ice",
+ category: "liquids",
+ heatCapacity: 4.184,
+ reactions: {
+ "salt": { elem1: "salt_water", elem2: null, temp1:-20 },
+ "sugar": { elem1: "sugar_water", elem2: null },
+ "honey": { elem1: "sugar_water" },
+ "caramel": { elem1: "sugar_water", elem2: null },
+ "molasses": { elem1: "sugar_water", chance:0.05 },
+ "candy": { elem1: "sugar_water", elem2:"foam", chance:0.005 },
+ "dust": { elem1: "dirty_water", elem2: null },
+ "ash": { elem1: "dirty_water", elem2: null },
+ "cyanide": { elem1: "dirty_water", elem2: null },
+ "cyanide_gas": { elem1: "dirty_water", elem2: null },
+ "carbon_dioxide": { elem1: "seltzer", elem2: null, oneway:true },
+ "sulfur": { elem1: "dirty_water", elem2: null },
+ "rat": { elem1: "dirty_water", chance:0.005 },
+ "infection": { elem1: "dirty_water", elem2: null },
+ "plague": { elem1: "dirty_water", elem2: null },
+ "rust": { elem1: "dirty_water", chance:0.005 },
+ "lead": { elem1: "dirty_water", chance:0.005 },
+ "solder": { elem1: "dirty_water", chance:0.005 },
+ "fallout": { elem1: "dirty_water", chance:0.25 },
+ "radiation": { elem1: "dirty_water", chance:0.25 },
+ "uranium": { elem1: "dirty_water", chance:0.25 },
+ "rad_steam": { elem1: "dirty_water", chance:0.02 },
+ "rad_glass": { elem1: "dirty_water", chance:0.005 },
+ "rad_shard": { elem1: "dirty_water", chance:0.01 },
+ "rotten_meat": { elem1: "dirty_water", chance:0.25 },
+ "rotten_cheese": { elem1: "dirty_water", chance:0.25 },
+ "cancer": { elem1: "dirty_water", chance:0.25 },
+ "oil": { elem1: "dirty_water", chance:0.005 },
+ "dioxin": { elem1: "dirty_water", chance:0.1 },
+ "neutron": { elem1: ["dirty_water","dirty_water","dirty_water","rad_steam"], elem2:null, chance:0.1 },
+ "rock": { elem2: "wet_sand", chance: 0.00035 },
+ "limestone": { elem2: "wet_sand", chance: 0.00035 },
+ "tuff": { elem2: "wet_sand", color2:"#7a6b5c", chance: 0.00035 },
+ "ruins": { elem2: "rock", chance: 0.00035 },
+ "mudstone": { elem2: "mud", chance: 0.00035 },
+ "methane": { elem1:"primordial_soup", elem2:"primordial_soup", tempMin:60, charged:true },
+ "ammonia": { elem1:"primordial_soup", elem2:"primordial_soup", tempMin:60, charged:true },
+ "fly": { elem2:"dead_bug", chance:0.1, oneway:true },
+ "firefly": { elem2:"dead_bug", chance:0.1, oneway:true },
+ "bee": { elem2:"dead_bug", chance:0.05, oneway:true },
+ "stink_bug": { elem2:"dead_bug", chance:0.1, oneway:true },
+ "cured_meat": { elem1:"salt_water", elem2:"meat" },
+ "water": { elem2:"bubble", attr2:{"clone":"water"}, chance:0.001, tempMin:85 },
+ // electrolysis:
+ "aluminum": { elem1:["hydrogen","hydrogen","oxygen"], charged:true, chance:0.0025 },
+ "zinc": { elem1:["hydrogen","hydrogen","oxygen"], charged:true, chance:0.015 },
+ "steel": { elem1:["hydrogen","hydrogen","oxygen"], charged:true, chance:0.0125 },
+ "iron": { elem1:["hydrogen","hydrogen","oxygen"], charged:true, chance:0.0125 },
+ "tin": { elem1:["hydrogen","hydrogen","oxygen"], charged:true, chance:0.01 },
+ "brass": { elem1:["hydrogen","hydrogen","oxygen"], charged:true, chance:0.001 },
+ "bronze": { elem1:["hydrogen","hydrogen","oxygen"], charged:true, chance:0.001 },
+ "copper": { elem1:["hydrogen","hydrogen","oxygen"], charged:true, chance:0.0075 },
+ "silver": { elem1:["hydrogen","hydrogen","oxygen"], charged:true, chance:0.0075 },
+ "gold": { elem1:["hydrogen","hydrogen","oxygen"], charged:true, chance:0.0075 },
+ "glycol":{elem1:"coolant",elem2:"coolant"},
+ "filter_powder":{elem1:"filtered_water",elem2: null}
+ },
+ state: "liquid",
+ density: 997,
+ conduct: 0.02,
+ stain: -0.5,
+ extinguish: true
+}
+
+elements.glycol = {
+ color: "#ededed",
+ behavior: behaviors.LIQUID,
+ tempHigh: 121,
+ stateHigh: "acid",
+ tempLow: -12,
+ stateLow: "glycol_ice",
+ category: "saturns",
+ state: "liquid",
+ density: 1115,
+ alias: "ethylene glycol"
+}
+
+elements.glycol_ice = {
+ color: "#dedede",
+ behavior: behaviors.WALL,
+ tempHigh: -11,
+ stateHigh: "glycol",
+ category: "saturns",
+ state: "solid",
+ density: 1115,
+ alias: "ethylene glycol in ice form"
+}
+
+elements.coolant_ice = {
+ color: "#beddf7",
+ behavior: behaviors.WALL,
+ category: "saturns",
+ state: "solid",
+ density: 997,
+ tempHigh: -37,
+ stateHigh: "coolant",
+ temp: -200,
+ reactions: {
+ "cooler": { elem1: "supercoolant_ice" },
+ "supercooler": { elem1: "supercoolant_ice" }
+ },
+ breakInto: "coolant"
+}
+
+elements.coolant = {
+ color: "#77b9f2",
+ behavior: behaviors.LIQUID,
+ category: "saturns",
+ state: "liquid",
+ density: 997,
+ tempLow: -200,
+ stateLow: "coolant_ice",
+ tempHigh: 111,
+ stateHigh: "fire",
+ temp: -100,
+ reactions: {
+ "cooler": { elem1: "supercoolant" },
+ "supercooler": { elem1: "supercoolant" }
+ },
+ extinguish: true
+}
+
+elements.supercoolant_ice = {
+ color: "#7db9fa",
+ behavior: behaviors.WALL,
+ category: "saturns",
+ state: "solid",
+ density: 997,
+ tempHigh: 0,
+ stateHigh: "supercoolant",
+ temp: -273,
+ reactions: {
+ "heater": { elem1: "coolant_ice" },
+ "superheater": { elem1: "coolant_ice" }
+ },
+ breakInto: "supercoolant"
+}
+
+elements.supercoolant = {
+ color: "#3695f5",
+ behavior: behaviors.LIQUID,
+ category: "saturns",
+ state: "liquid",
+ density: 997,
+ tempLow: -273,
+ stateLow: "supercoolant_ice",
+ tempHigh: 222,
+ stateHigh: "steam",
+ temp: -200,
+ reactions: {
+ "heater": { elem1: "coolant" },
+ "superheater": { elem1: "coolant" }
+ },
+ extinguish: true
+}
+
+elements.exploder_question_mark = {
+ color: "#ff0548",
+ tool: function(pixel) {
+ if (pixel.element == "sand")
+ pixel.element = "snad"
+ },
+ category: "saturns",
+}
+
+elements.exploder = {
+ color: "#ff0548",
+ tool: function(pixel) {
+ pixel.element = "explosion"
+ },
+ category: "saturns",
+}
+
+elements.n_exploder = {
+ color: "#09ff05",
+ tool: function(pixel) {
+ pixel.element = "n_explosion"
+ },
+ category: "saturns",
+}
+
+elements.wet_snad = {
+ color: "#ada67b",
+ behavior: behaviors.LIQUID,
+ reactions: {
+ "snad":{elem1:"snad"}
+ },
+ tempHigh: 100,
+ stateHigh: "snad",
+ category: "saturns",
+ state: "liquid",
+ density: 1603
+}
+elements.snad = {
+ color: "#968b4d",
+ behavior: behaviors.SUPPORT,
+ reactions: {
+ "water":{elem1:"wet_snad",elem2:null},
+ "salt_water":{elem1:"wet_snad",elem2:"salt"},
+ "sugar_water":{elem1:"wet_snad",elem2:null},
+ "seltzer":{elem1:"wet_snad",elem2:null},
+ "dirty_water":{elem1:"wet_snad",elem2:null},
+ "pool_water":{elem1:"wet_snad",elem2:null},
+ "slush":{elem1:"wet_snad",elem2:null},
+ "soda":{elem1:"wet_snad",elem2:null},
+ "juice":{elem1:"wet_snad",elem2:null},
+ "milk":{elem1:"wet_snad",elem2:null},
+ "chocolate_milk":{elem1:"wet_snad",elem2:null},
+ "fruit_milk":{elem1:"wet_snad",elem2:null},
+ "pilk":{elem1:"wet_snad",elem2:null},
+ "eggnog":{elem1:"wet_snad",elem2:null},
+ "nut_milk":{elem1:"wet_snad",elem2:null},
+ "cream":{elem1:"wet_snad",elem2:null},
+ "vinegar":{elem1:"wet_snad",elem2:null},
+ "blood":{elem1:"wet_snad",elem2:null},
+ "vaccine":{elem1:"wet_snad",elem2:null},
+ "antibody":{elem1:"wet_snad",elem2:null},
+ "infection":{elem1:"wet_snad",elem2:null},
+ "poison":{elem1:"wet_snad",elem2:null},
+ "antidote":{elem1:"wet_snad",elem2:null},
+ "tornado":{elem1:"sad_storm", oneway:true},
+ },
+ tempHigh: 1700,
+ stateHigh: "molten_glass",
+ category: "saturns",
+ state: "solid",
+ density: 1602
+}
+
+elements.sad_storm = {
+ color: "#a0d4e8",
+ behavior: behaviors.SUPERFLUID,
+ tempHigh: 1700,
+ stateHigh: "sandstorm",
+ category: "saturns",
+ state: "liquid",
+ density: 20000000,
+ desc: "it's so sad..."
+}
+
+elements.extinguish = {
+ color: "#19f7ff",
+ behavior: [
+ "CO:2|CO:2|CO:2",
+ "CO:2|CO:2|CO:2",
+ "CO:2|CO:2|CO:2",
+ ],
+ tool: function(pixel) {
+ if (shiftDown) {pixel.temp += elements.cool.temp+(Math.random()*elements.cool.temp*200000)*20;}
+ else {pixel.temp += elements.cool.temp+(Math.random()*elements.cool.temp*200000);}
+ pixelTempCheck(pixel);
+ },
+ temp: -2,
+ insulate:true,
+ canPlace: false,
+ category: "saturns"
+}
+
+elements.temp_neutralizer = {
+ color: "#b4f092",
+ behavior: [
+ "CO:2|CO:2|CO:2",
+ "CO:2|CO:2|CO:2",
+ "CO:2|CO:2|CO:2",
+ ],
+ tool: function(pixel) {
+ pixel.temp = 0
+ pixelTempCheck(pixel)
+ },
+ temp: -2,
+ insulate:true,
+ canPlace: false,
+ category: "saturns"
+}
+
+elements.icicle = {
+ color: "#81ccd4",
+ behavior: [
+ "XX|SA|XX",
+ "XX|XX|XX",
+ "M2|M1|M2"
+ ],
+ reactions: {
+ "snow":{elem2: "icicle"},
+ "ice":{elem2: "icicle"},
+ "slush":{elem2: "icicle"},
+ "water":{elem2: "icicle"}
+ },
+ category: "saturns",
+ temp: -5,
+ tempHigh: 1,
+ stateHigh: "water",
+ state: "solid",
+ breakInto: "snow"
+}
+
+elements.digger = {
+ color: "#7affc1",
+ behavior: [
+ "XX|XX|XX",
+ "XX|DL|XX",
+ "CH:digger_wall|M1 AND CH:digger AND CR:digger|CH:digger_wall"
+ ],
+ category: "saturns",
+ density: 100000,
+ state: "solid"
+}
+
+elements.digger_plane = {
+ color: "#6fad90",
+ behavior: [
+ "XX|XX|XX",
+ "M1|XX|M1",
+ "XX|CR:digger%25|XX"
+ ],
+ category: "saturns",
+ density: 1000000,
+ state: "solid"
+}
+
+elements.digger_wall = {
+ color: "#1d6e45",
+ behavior: behaviors.WALL,
+ category: "saturns",
+ state: "solid",
+ hardness: 0.5,
+ noMix: true
+}
+
+elements.assimilator = {
+ color: "#d52feb",
+ behavior: [
+ "XX|CH:assimilator%25|XX",
+ "CH:assimilator%25|XX|CH:assimilator%25",
+ "XX|CH:assimilator%25|XX"
+ ],
+ category: "saturns",
+ state: "solid",
+ hardness: 0.9,
+ noMix: true,
+ breakInto: ["virus", "lattice"],
+ excludeRandom: true
+}
+
+elements.true_assimilator = {
+ color: "#e52feb",
+ behavior: [
+ "XX|CH:true_assimilator|XX",
+ "CH:true_assimilator|XX|CH:true_assimilator",
+ "XX|CH:true_assimilator|XX"
+ ],
+ category: "saturns",
+ state: "solid",
+ hardness: 0.9,
+ noMix: true,
+ breakInto: ["virus", "filler"],
+ excludeRandom: true
+}
+
+elements.consumer = {
+ color: "#eb2fd5",
+ behavior: [
+ "XX|CR:consumer%25|XX",
+ "CR:consumer%25|XX|CR:consumer%25",
+ "XX|CR:consumer%25|XX"
+ ],
+ category: "saturns",
+ state: "solid",
+ hardness: 0.9,
+ noMix: true,
+ breakInto: ["assimilator", "lattice"],
+ excludeRandom: true
+}
+
+elements.true_consumer = {
+ color: "#fb2fd5",
+ behavior: [
+ "XX|CR:true_consumer|XX",
+ "CR:true_consumer|XX|CR:true_consumer",
+ "XX|CR:true_consumer|XX"
+ ],
+ category: "saturns",
+ state: "solid",
+ hardness: 0.9,
+ noMix: true,
+ breakInto: ["assimilator", "filler"],
+ excludeRandom: true
+}
+
+elements.integrator = {
+ color: "#eb2f7d",
+ behavior: [
+ "XX|CR:integrator%25 AND CH:integrator%25|XX",
+ "CR:integrator%25 AND CH:integrator%25|XX|CR:integrator%25 AND CH:integrator%25",
+ "XX|CR:integrator%25 AND CH:integrator%25|XX"
+ ],
+ category: "saturns",
+ state: "solid",
+ hardness: 0.9,
+ noMix: true,
+ breakInto: ["consumer", "assimilator"],
+ reactions: {
+ "strange_matter":{elem1: "eternial",elem2: "eternial"},
+ },
+ excludeRandom: true
+}
+
+elements.true_integrator = {
+ color: "#fb2f7d",
+ behavior: [
+ "XX|CR:true_integrator AND CH:true_integrator|XX",
+ "CR:true_integrator AND CH:true_integrator|XX|CR:true_integrator AND CH:true_integrator",
+ "XX|CR:true_integrator AND CH:true_integrator|XX"
+ ],
+ category: "saturns",
+ state: "solid",
+ hardness: 0.9,
+ noMix: true,
+ breakInto: ["true_consumer", "true_assimilator"],
+ reactions: {
+ "strange_matter":{elem1: "absoluterial",elem2: "absoluterial"},
+ },
+ excludeRandom: true
+}
+
+elements.eternial = {
+ color: "#eb2f4e",
+ behavior: [
+ "CR:eternial%25 AND CH:eternial%25|CR:eternial%25 AND CH:eternial%25|CR:eternial%25 AND CH:eternial%25",
+ "CR:eternial%25 AND CH:eternial%25|XX|CR:eternial%25 AND CH:eternial%25",
+ "CR:eternial%25 AND CH:eternial%25|CR:eternial%25 AND CH:eternial%25|CR:eternial%25 AND CH:eternial%25"
+ ],
+ category: "saturns",
+ state: "solid",
+ hardness: 0.9,
+ noMix: true,
+ breakInto: ["integrator", "strange_matter"],
+ alias: "eternal material",
+ reactions: {
+ "strange_matter":{elem2: null}
+ },
+ excludeRandom: true
+}
+
+elements.absoluterial = {
+ color: "#fb2f4e",
+ behavior: [
+ "CR:absoluterial AND CH:absoluterial|CR:absoluterial AND CH:absoluterial|CR:absoluterial AND CH:absoluterial",
+ "CR:absoluterial AND CH:absoluterial|XX|CR:absoluterial AND CH:absoluterial",
+ "CR:absoluterial AND CH:absoluterial|CR:absoluterial AND CH:absoluterial|CR:absoluterial AND CH:absoluterial"
+ ],
+ category: "saturns",
+ state: "solid",
+ hardness: 0.9,
+ noMix: true,
+ breakInto: ["true_integrator", "strange_matter"],
+ alias: "absolute material",
+ reactions: {
+ "strange_matter":{elem2: null}
+ },
+ excludeRandom: true
+}
+
+elements.void_jelly = {
+ color: "#1d052b",
+ behavior: [
+ "XX|DL AND M2%25|XX",
+ "DL AND M2%10|XX|DL AND M2%10",
+ "XX|DL AND M1|XX"
+ ],
+ category: "saturns",
+ hardness: 1,
+ state: "solid",
+ reactions: {
+ "void":{elem2:"void_jelly"},
+ "strange_matter":{elem2:"explosion"}
+ },
+ excludeRandom: true
+}
+
+elements.glitch = {
+ color: "#000000",
+ behavior: [
+ "XX|CH:random AND M2|XX",
+ "CH:random AND M2|XX|CH:random AND M2",
+ "XX|CH:random AND M1|XX"
+ ],
+ category: "saturns",
+ hardness: 1,
+ tick: function(pixel) {
+ var randomColor = "#" + Math.floor(Math.random()*16777215).toString(16);
+ pixel.color = randomColor;
+
+ var randomTemp = Math.random() * 1000 - 273;
+ pixel.temperature = randomTemp;
+ },
+ reactions: {
+ "malware":{elem2:"glitch", chance:0.1},
+ "virus":{elem2:"glitch", chance:0.1},
+ "filler":{elem2:"lattice", chance:0.25},
+ "lattice":{elem2:"filler", chance:0.25},
+ "void":{elem2:"warp", chance:0.25},
+ "warp":{elem2:"void", chance:0.25},
+ "snake":{elem2:"loopy", chance:0.25},
+ "loopy":{elem2:["snake","ball"], chance:0.25},
+ "ball":{elem2:"loopy", chance:0.25},
+ "border":{elem2:["wall","null"], chance:0.25},
+ "wall":{elem2:["border","null"], chance:0.25},
+ "rainbow":{elem2:"static", chance:0.5},
+ "static":{elem2:"rainbow", chance:0.5}
+ }
+}
+
+elements.filtered_water = {
+ color: "#578cff",
+ behavior: behaviors.LIQUID,
+ tempHigh: 100,
+ stateHigh: "nice_steam",
+ tempLow: 0,
+ stateLow: "nice_ice",
+ category: "saturns",
+ heatCapacity: 4.184,
+ reactions: {
+ "salt": { elem1: "salt_water", elem2: null, temp1:-20 },
+ "sugar": { elem1: "sugar_water", elem2: null },
+ "honey": { elem1: "sugar_water" },
+ "caramel": { elem1: "sugar_water", elem2: null },
+ "molasses": { elem1: "sugar_water", chance:0.05 },
+ "candy": { elem1: "sugar_water", elem2:"foam", chance:0.005 },
+ "carbon_dioxide": { elem1: "seltzer", elem2: null, oneway:true },
+ "rock": { elem2: "wet_sand", chance: 0.00035 },
+ "limestone": { elem2: "wet_sand", chance: 0.00035 },
+ "tuff": { elem2: "wet_sand", color2:"#7a6b5c", chance: 0.00035 },
+ "ruins": { elem2: "rock", chance: 0.00035 },
+ "mudstone": { elem2: "mud", chance: 0.00035 },
+ "methane": { elem1:"primordial_soup", elem2:"primordial_soup", tempMin:60, charged:true },
+ "ammonia": { elem1:"primordial_soup", elem2:"primordial_soup", tempMin:60, charged:true },
+ "cured_meat": { elem1:"salt_water", elem2:"meat" },
+ "water": { elem2:"bubble", attr2:{"clone":"water"}, chance:0.001, tempMin:85 },
+ "filtered_water": { elem2:"bubble", attr2:{"clone":"filtered_water"}, chance:0.001, tempMin:85 },
+ // electrolysis:
+ "aluminum": { elem1:["hydrogen","hydrogen","oxygen"], charged:true, chance:0.0025 },
+ "zinc": { elem1:["hydrogen","hydrogen","oxygen"], charged:true, chance:0.015 },
+ "steel": { elem1:["hydrogen","hydrogen","oxygen"], charged:true, chance:0.0125 },
+ "iron": { elem1:["hydrogen","hydrogen","oxygen"], charged:true, chance:0.0125 },
+ "tin": { elem1:["hydrogen","hydrogen","oxygen"], charged:true, chance:0.01 },
+ "brass": { elem1:["hydrogen","hydrogen","oxygen"], charged:true, chance:0.001 },
+ "bronze": { elem1:["hydrogen","hydrogen","oxygen"], charged:true, chance:0.001 },
+ "copper": { elem1:["hydrogen","hydrogen","oxygen"], charged:true, chance:0.0075 },
+ "silver": { elem1:["hydrogen","hydrogen","oxygen"], charged:true, chance:0.0075 },
+ "gold": { elem1:["hydrogen","hydrogen","oxygen"], charged:true, chance:0.0075 },
+ "glycol":{elem1:"coolant",elem2:"coolant"},
+ }
+}
+elements.nice_steam = {
+ color: "#abd6ff",
+ behavior: behaviors.GAS,
+ tick: function(pixel) {
+ if (pixel.temp > 3000 && Math.random() < 0.01) {
+ changePixel(pixel,Math.random() < 0.5 ? "hydrogen" : "oxygen");
+ }
+ },
+ reactions: {
+ "nice_steam": { elem1: "cloud", elem2: "cloud", chance:0.05, "y":[0,15], "setting":"clouds" },
+ "rain_cloud": { elem1: "rain_cloud", chance:0.4, "y":[0,12], "setting":"clouds" },
+ "cloud": { elem1: "cloud", chance:0.4, "y":[0,12], "setting":"clouds" },
+ "snow_cloud": { elem1: "rain_cloud", chance:0.4, "y":[0,12], "setting":"clouds" },
+ "hail_cloud": { elem1: "rain_cloud", chance:0.4, "y":[0,12], "setting":"clouds" },
+ "thunder_cloud": { elem1: "rain_cloud", chance:0.4, "y":[0,12], "setting":"clouds" },
+ "pyrocumulus": { elem1: "cloud", chance:0.4, "y":[0,12], "setting":"clouds" },
+ "fire_cloud": { elem1: "cloud", elem2: "cloud", chance:0.4, "y":[0,12], "setting":"clouds" },
+ "smoke": { elem2: null, chance:0.001 },
+ "carbon_dioxide": { elem2: null, chance:0.001 },
+ "plasma": { elem1:"ozone", tempMin:500, charged:true },
+ "copper": { elem1:"oxygen", chance:0.01 },
+ "bronze": { elem1:"oxygen", chance:0.005 },
+ "iron": { elem1:"oxygen", chance:0.005 },
+ "steel": { elem1:"oxygen", chance:0.004 },
+ "tornado":{elem1:"cloud"},
+ "melted_wax": { elem1:"explosion" }
+ },
+ temp: 150,
+ tempLow: 95,
+ extraTempLow: {
+ 0: "rime"
+ },
+ stateLow: "filtered_water",
+ category: "saturns",
+ state: "gas",
+ density: 0.3,
+ conduct: 0.001,
+ stain: -0.025,
+ alias: "water vapor but nice",
+ extinguish: true
+}
+
+elements.nice_ice = {
+ color: "#b2daeb",
+ behavior: behaviors.WALL,
+ temp: -5,
+ tempHigh: 5,
+ stateHigh: "filtered_water",
+ category: "saturns",
+ state: "solid",
+ density: 908,
+ breakInto: "snow"
+}
+
+elements.filter_powder = {
+ color: "#7a7862",
+ behavior: behaviors.POWDER,
+ tempHigh: 100,
+ stateHigh: "charcoal",
+ category: "saturns",
+ state: "solid",
+ density: 1080,
+ breakInto: "sand",
+ reactions: {
+ "water": {elem1: null, elem2: "filtered_water"},
+ "dirty_water": {elem1: null, elem2: "water"},
+ "salt_water": {elem1: "salt", elem2: "filtered_water"},
+ "sugar_water": {elem1: "sugar", elem2: "filtered_water"},
+ "rock": {elem1: "stable_filter_powder", elem2: null}
+ }
+}
+
+elements.stable_filter_powder = {
+ color: "#7d7c72",
+ behavior: behaviors.POWDER,
+ tempHigh: 100,
+ stateHigh: "charcoal",
+ category: "saturns",
+ state: "solid",
+ density: 1080,
+ breakInto: "sand",
+ reactions: {
+ "water": {elem2: "filtered_water"},
+ "dirty_water": {elem2: "water"},
+ "salt_water": {elem2: "filtered_water"},
+ "sugar_water": {elem2: "filtered_water"}
+ }
+}
+
+elements.petulantia_ferrobacteria = {
+ color: ["#ee3400","ee8300","#eed600"],
+ behavior: [
+ "XX|M2%10|XX",
+ "M1%50|XX|M1%50",
+ "XX|M1|XX"
+ ],
+ reactions: {
+ "infection": { elem2:"dna", chance:0.015 },
+ "antibody": { elem2:"cell", chance:0.01 },
+ "cell": { elem2:"dna", chance:0.03 },
+ "sugar_water": { elem2:"cell", chance:0.04 },
+ "alcohol": { elem2:[null,"dna"], chance:0.02 },
+ "poison": { elem1:null, chance:0.02 },
+ "plague": { elem2:"infection", chance:0.02 },
+ "mercury": { elem1:null, chance:0.02 },
+ "chlorine": { elem1:null, chance:0.02 },
+ "cyanide": { elem1:null, chance:0.02 },
+ "soap": { elem1:null, elem2: null, chance:0.15},
+ "oxygen": { elem2:"carbon_dioxide", chance:0.05 },
+ "ammonia": { elem2:"nitrogen", chance:0.05 },
+ "oil": { elem2:"methane", chance:0.001 },
+ "milk": { elem2:"yogurt", chance:0.01 },
+ "chocolate_milk": { elem2:"yogurt", chance:0.01, color2:"#4c392c" },
+ "fruit_milk": { elem2:"yogurt", chance:0.01, color2:"#977871" },
+ "pilk": { elem2:"yogurt", chance:0.01, color2:"#bba789" },
+ "eggnog": { elem2:"yogurt", chance:0.01, color2:"#ae9a7e" },
+ "dna": { elem2:"petulantia_ferrobacteria", chance:0.5}
+ },
+ tempHigh: 102,
+ stateHigh: ["steam","steam","steam","sugar"],
+ tempLow: -2,
+ stateLow: ["ice","ice","ice","sugar_ice"],
+ state: "solid",
+ density: 1000.1,
+ category: "saturns",
+ breakInto: ["water","dna","dna","dna"],
+ alias: "iron-stabber"
+}