This commit is contained in:
JustAGenericUsername 2025-05-23 12:47:05 -04:00
commit 883f99fe94
8 changed files with 997 additions and 0 deletions

View File

@ -379,6 +379,7 @@
<tr><td>invisible_wall.js</td><td>Element like Wall that takes the color of the background</td><td>Alice</td></tr>
<tr><td>lightmap.js</td><td>Light sources glow</td><td>RedBirdly</td></tr>
<tr><td>liquid_mixing.js</td><td>Liquids can mix colors dynamically</td><td>Nekonico</td></tr>
<tr><td>manyMoreThemes.js</td><td>Adds additional themes</td><td>Jayd</td></tr>
<tr><td>moreViews.js</td><td>Many new rendering modes</td><td>ggod</td></tr>
<tr><td>nicer_flame.js</td><td>Fire is visually pleasing</td><td>RedBirdly</td></tr>
<tr><td>occlusion.js</td><td>Realistic shadows, similar to Terraria's lighting</td><td>RedBirdly</td></tr>

133
mods/3pms_mod.js Normal file
View File

@ -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", `
<div id="moresettingsParent" style="display: none" class="menuParent">
<div id="moresettingsMenu">
<button class="XButton" onclick="closeMenu();showSettings();">-</button>
<span class="menuTitle">More Settings</span>
<div class="menuText" style="padding-top:1em">
<p>Nothing to see here ;3</p>
</div>
</div>
</div>`);
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 🏈🏈 IM 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)

15
mods/CandyCanes.js Normal file
View File

@ -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"]

8
mods/CandyCorn.js Normal file
View File

@ -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"]

1
mods/EasterEggs.js Normal file
View File

@ -0,0 +1 @@
elements.egg.color = elements.bead.color

67
mods/manyMoreThemes.js Normal file
View File

@ -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

43
mods/oxide.theme.js Normal file
View File

@ -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';});
});

729
mods/saturnsstuff.js Normal file
View File

@ -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"
}