more wording

updated pause menu and fields descriptions to new wording style
This commit is contained in:
landgreen
2022-06-15 07:10:01 -07:00
parent e3d6ffce43
commit e68ed81ba1
11 changed files with 69 additions and 99 deletions

BIN
.DS_Store vendored

Binary file not shown.

View File

@@ -284,7 +284,7 @@
} }
</style> </style>
<svg id='splash' class="intro ui" viewBox="0 0 800 800" onclick="simulation.startGame()"> <svg id='splash' class="intro ui" viewBox="0 0 800 800" onclick="simulation.startGame()">
<g class="fade-in" transform="translate(100,210) scale(34)" fill='#bbb' stroke='none'> <g class="fade-in" transform="translate(100,210) scale(34)" fill='#afafaf' stroke='none'>
<path d="M0 0 h1 v0.2 h1.7 l0.3 0.3 v2.6 h-1 v-1.7 h-1 v1.7 h-1 z" /> <path d="M0 0 h1 v0.2 h1.7 l0.3 0.3 v2.6 h-1 v-1.7 h-1 v1.7 h-1 z" />
<rect x="4" y="1.25" width="1" height="0.5" rx='0.03' /> <rect x="4" y="1.25" width="1" height="0.5" rx='0.03' />
<path transform="translate(6.9,0) scale(1.25)" d="M0 0 h1 l 0.7 0.7 v2.3 l-0.2 0.2 h-1.8 v-0.5 h1.4 L 1.1 2.4 h-1.1 l -0.7 -0.7 v-1 l 0.7 -0.7 Z" /> <path transform="translate(6.9,0) scale(1.25)" d="M0 0 h1 l 0.7 0.7 v2.3 l-0.2 0.2 h-1.8 v-0.5 h1.4 L 1.1 2.4 h-1.1 l -0.7 -0.7 v-1 l 0.7 -0.7 Z" />

View File

@@ -3829,6 +3829,9 @@ const b = {
if (tech.isNailCrit && !who.shield && Vector.dot(Vector.normalise(Vector.sub(who.position, this.position)), Vector.normalise(this.velocity)) > 0.94) { if (tech.isNailCrit && !who.shield && Vector.dot(Vector.normalise(Vector.sub(who.position, this.position)), Vector.normalise(this.velocity)) > 0.94) {
b.explosion(this.position, 150 + 30 * Math.random()); //makes bullet do explosive damage at end b.explosion(this.position, 150 + 30 * Math.random()); //makes bullet do explosive damage at end
} }
if (true && !who.shield && Vector.dot(Vector.normalise(Vector.sub(who.position, this.position)), Vector.normalise(this.velocity)) > 0.94) {
b.targetedNail(this.position, 1, 39 + 6 * Math.random())
}
}; };
bullet[me].do = function() {}; bullet[me].do = function() {};
}, },

View File

@@ -258,7 +258,7 @@ function collisionChecks(event) {
Events.on(engine, "collisionStart", function(event) { Events.on(engine, "collisionStart", function(event) {
playerOnGroundCheck(event); playerOnGroundCheck(event);
// playerHeadCheck(event); // playerHeadCheck(event);
if (m.alive) collisionChecks(event); collisionChecks(event);
}); });
Events.on(engine, "collisionActive", function(event) { Events.on(engine, "collisionActive", function(event) {
playerOnGroundCheck(event); playerOnGroundCheck(event);

View File

@@ -241,24 +241,20 @@ const build = {
<g stroke='none' fill='#333' stroke-width="2" font-size="14px" font-family="Ariel, sans-serif"> <text x="5" y="15">copy build url</text></g> <g stroke='none' fill='#333' stroke-width="2" font-size="14px" font-family="Ariel, sans-serif"> <text x="5" y="15">copy build url</text></g>
</svg><br>` </svg><br>`
text += ` text += `
<br><strong class='color-d'>damage</strong>: ${((tech.damageFromTech())).toPrecision(3)} <br><strong class='color-d'>damage</strong>: ${((tech.damageFromTech())).toPrecision(3)} &nbsp; &nbsp; difficulty: ${((m.dmgScale)).toPrecision(3)}
<br>difficulty: ${((m.dmgScale)).toPrecision(3)} <br><strong class='color-defense'>defense</strong>: ${(1-m.harmReduction()).toPrecision(3)} &nbsp; &nbsp; difficulty: ${(simulation.dmgScale).toPrecision(3)}
<br> <br><strong><em>fire rate</em></strong>: ${((1-b.fireCDscale)*100).toFixed(b.fireCDscale < 0.1 ? 2 : 0)}%
<br>+<strong class='color-defense'>defense</strong>: ${(1-m.harmReduction()).toPrecision(3)} <br><strong class='color-dup'>duplication</strong>: ${(tech.duplicationChance()*100).toFixed(0)}%
<br>difficulty: ${(simulation.dmgScale).toPrecision(3)}
<br>
${botText} ${botText}
<br><strong class='color-h'>health</strong>: (${(m.health*100).toFixed(0)} / ${(m.maxHealth*100).toFixed(0)}) &nbsp; <strong class='color-f'>energy</strong>: (${(m.energy*100).toFixed(0)} / ${(m.maxEnergy*100).toFixed(0)}) <br><br><strong class='color-h'>health</strong>: (${(m.health*100).toFixed(0)} / ${(m.maxHealth*100).toFixed(0)}) &nbsp; <strong class='color-f'>energy</strong>: (${(m.energy*100).toFixed(0)} / ${(m.maxEnergy*100).toFixed(0)})
<br><strong class='color-g'>gun</strong>: ${b.activeGun === null || b.activeGun === undefined ? "undefined":b.guns[b.activeGun].name} &nbsp; <strong class='color-g'>ammo</strong>: ${b.activeGun === null || b.activeGun === undefined ? "0":b.guns[b.activeGun].ammo} <br><strong class='color-g'>gun</strong>: ${b.activeGun === null || b.activeGun === undefined ? "undefined":b.guns[b.activeGun].name} &nbsp; <strong class='color-g'>ammo</strong>: ${b.activeGun === null || b.activeGun === undefined ? "0":b.guns[b.activeGun].ammo}
<br><strong><em>fire delay</em></strong> decrease: ${((1-b.fireCDscale)*100).toFixed(b.fireCDscale < 0.1 ? 2 : 0)}% <br><strong class='color-m'>tech</strong>: ${tech.totalCount} &nbsp; <strong class='color-r'>research</strong>: ${powerUps.research.count}
<br><strong class='color-dup'>duplication</strong> chance: ${(tech.duplicationChance()*100).toFixed(0)}%
<br><br><strong class='color-m'>tech</strong>: ${tech.totalCount} &nbsp; <strong class='color-r'>research</strong>: ${powerUps.research.count}
<br>position: (${player.position.x.toFixed(1)}, ${player.position.y.toFixed(1)}) &nbsp; velocity: (${player.velocity.x.toFixed(1)}, ${player.velocity.y.toFixed(1)})
<br>mouse: (${simulation.mouseInGame.x.toFixed(1)}, ${simulation.mouseInGame.y.toFixed(1)}) &nbsp; mass: ${player.mass.toFixed(1)}
<br> <br>
<br>seed: ${Math.initialSeed} <br>seed: ${Math.initialSeed}
<br>level: ${level.levels[level.onLevel]} (${level.difficultyText()}) &nbsp; ${m.cycle} cycles <br>level: ${level.levels[level.onLevel]} (${level.difficultyText()}) &nbsp; ${m.cycle} cycles
<br>${mob.length} mobs, &nbsp; ${body.length} blocks, &nbsp; ${bullet.length} bullets, &nbsp; ${powerUp.length} power ups <br>${mob.length} mobs, &nbsp; ${body.length} blocks, &nbsp; ${bullet.length} bullets, &nbsp; ${powerUp.length} power ups
<br>position: (${player.position.x.toFixed(1)}, ${player.position.y.toFixed(1)}) &nbsp; velocity: (${player.velocity.x.toFixed(1)}, ${player.velocity.y.toFixed(1)})
<br>mouse: (${simulation.mouseInGame.x.toFixed(1)}, ${simulation.mouseInGame.y.toFixed(1)}) &nbsp; mass: ${player.mass.toFixed(1)}
${simulation.isCheating ? "<br><br><em>lore disabled</em>": ""} ${simulation.isCheating ? "<br><br><em>lore disabled</em>": ""}
</div>`; </div>`;
for (let i = 0, len = b.inventory.length; i < len; i++) { for (let i = 0, len = b.inventory.length; i < len; i++) {

View File

@@ -18,10 +18,11 @@ const level = {
// simulation.isHorizontalFlipped = true // simulation.isHorizontalFlipped = true
// m.addHealth(Infinity) // m.addHealth(Infinity)
// m.setField("time dilation") // m.setField("time dilation")
// b.giveGuns("shotgun") // b.giveGuns("nail gun")
// tech.giveTech("ice-shot") // b.giveGuns("mine")
// tech.giveTech("MACHO") // tech.giveTech("laser-mines")
// tech.giveTech("clock gating") // tech.giveTech("free-electron laser")
// tech.giveTech("energy conservation")
// tech.giveTech("6s half-life") // tech.giveTech("6s half-life")
// for (let i = 0; i < 10; i++) tech.giveTech("replication") // for (let i = 0; i < 10; i++) tech.giveTech("replication")
// tech.giveTech("eternalism") // tech.giveTech("eternalism")
@@ -37,10 +38,10 @@ const level = {
// m.immuneCycle = Infinity //you can't take damage // m.immuneCycle = Infinity //you can't take damage
// level.difficultyIncrease(30) //30 is near max on hard //60 is near max on why // level.difficultyIncrease(30) //30 is near max on hard //60 is near max on why
// simulation.enableConstructMode() //used to build maps in testing mode // simulation.enableConstructMode() //used to build maps in testing mode
// level.reservoir(); // level.perplex();
// spawn.cellBossCulture(1900, -500) // spawn.cellBossCulture(1900, -500)
// spawn.snakeBoss(1900, -500)
// level.testing(); //not in rotation, used for testing // level.testing(); //not in rotation, used for testing
// spawn.starter(1900, -500)
if (simulation.isTraining) { level.walk(); } else { level.intro(); } //normal starting level ************************************************ if (simulation.isTraining) { level.walk(); } else { level.intro(); } //normal starting level ************************************************
// powerUps.research.changeRerolls(3000) // powerUps.research.changeRerolls(3000)
@@ -7147,7 +7148,7 @@ const level = {
spawn.mapRect(-1450, -2700, 900, 50); //5-1 ceiling spawn.mapRect(-1450, -2700, 900, 50); //5-1 ceiling
spawn.mapRect(-925, -2300, 325, 50); //5-1 right floor spawn.mapRect(-925, -2300, 325, 50); //5-1 right floor
spawn.mapRect(-1900, -3000, 450, 50); //stair cover spawn.mapRect(-1900, -3000, 450, 50); //stair cover
spawn.bodyRect(-1150, -2950, 200, 250); //5-2 block spawn.bodyRect(-1150, -2950, 150, 250); //5-2 block
//top left corner stuff //top left corner stuff
spawn.mapRect(-1900, -2450, 250, 450); // spawn.mapRect(-1900, -2450, 250, 450); //

View File

@@ -1172,17 +1172,7 @@ const mobs = {
} }
if (tech.isBotSpawnerReset) { if (tech.isBotSpawnerReset) {
for (let i = 0, len = bullet.length; i < len; i++) { for (let i = 0, len = bullet.length; i < len; i++) {
if (bullet[i].botType && bullet[i].endCycle !== Infinity) { if (bullet[i].botType && bullet[i].endCycle !== Infinity) bullet[i].endCycle = simulation.cycle + 840 //14 seconds
bullet[i].endCycle = simulation.cycle + 840 //14 seconds
// //draw a flash on top of bot
// ctx.beginPath();
// const v = bullet[i].vertices;
// ctx.moveTo(v[0].x, v[0].y);
// for (let i = 1; i < v.length; ++i) ctx.lineTo(v[i].x, v[i].y);
// ctx.lineTo(v[0].x, v[0].y);
// ctx.fillStyle = "#fff"
// ctx.fill();
}
} }
} }
if (Math.random() < tech.botSpawner) { if (Math.random() < tech.botSpawner) {
@@ -1273,10 +1263,8 @@ const mobs = {
removeConsBB() { removeConsBB() {
for (let i = 0, len = consBB.length; i < len; ++i) { for (let i = 0, len = consBB.length; i < len; ++i) {
if (consBB[i].bodyA === this) { if (consBB[i].bodyA === this) {
if (consBB[i].bodyB.shield) { if (consBB[i].bodyB.shield) { //&& !this.shield
consBB[i].bodyB.do = function() { consBB[i].bodyB.do = function() { this.death() }
this.death();
};
} }
consBB[i].bodyA = consBB[i].bodyB; consBB[i].bodyA = consBB[i].bodyB;
consBB.splice(i, 1); consBB.splice(i, 1);
@@ -1284,9 +1272,7 @@ const mobs = {
break; break;
} else if (consBB[i].bodyB === this) { } else if (consBB[i].bodyB === this) {
if (consBB[i].bodyA.shield) { if (consBB[i].bodyA.shield) {
consBB[i].bodyA.do = function() { consBB[i].bodyA.do = function() { this.death() }
this.death();
};
} }
consBB[i].bodyB = consBB[i].bodyA; consBB[i].bodyB = consBB[i].bodyA;
consBB.splice(i, 1); consBB.splice(i, 1);

View File

@@ -1381,7 +1381,7 @@ const m = {
y: player.velocity.y - (15 * unit.y) / massRoot y: player.velocity.y - (15 * unit.y) / massRoot
}); });
if (who.isUnstable) { if (who.isUnstable) {
if (m.fieldCDcycle < m.cycle + 30) m.fieldCDcycle = m.cycle + 30 if (m.fieldCDcycle < m.cycle + 30) m.fieldCDcycle = m.cycle + 10
who.death(); who.death();
} }
@@ -1767,7 +1767,7 @@ const m = {
y: player.velocity.y - (30 * unit.y) / massRoot y: player.velocity.y - (30 * unit.y) / massRoot
}); });
if (mob[i].isUnstable) { if (mob[i].isUnstable) {
if (m.fieldCDcycle < m.cycle + 10) m.fieldCDcycle = m.cycle + 10 if (m.fieldCDcycle < m.cycle + 10) m.fieldCDcycle = m.cycle + 6
mob[i].death(); mob[i].death();
} }
if (!isFree) { //player knock backs if (!isFree) { //player knock backs
@@ -1864,7 +1864,7 @@ const m = {
{ {
name: "negative mass", name: "negative mass",
//<br>hold <strong class='color-block'>blocks</strong> as if they have a lower <strong>mass</strong> //<br>hold <strong class='color-block'>blocks</strong> as if they have a lower <strong>mass</strong>
description: "use <strong class='color-f'>energy</strong> to nullify &nbsp;<strong style='letter-spacing: 7px;'>gravity</strong><br>reduce <strong class='color-defense'>harm</strong> by <strong>55%</strong><br>generate <strong>6</strong> <strong class='color-f'>energy</strong> per second", description: "use <strong class='color-f'>energy</strong> to nullify &nbsp;<strong style='letter-spacing: 7px;'>gravity</strong><br><strong>+55%</strong> <strong class='color-defense'>defense</strong><br>generate <strong>6</strong> <strong class='color-f'>energy</strong> per second",
fieldDrawRadius: 0, fieldDrawRadius: 0,
effect: () => { effect: () => {
m.fieldFire = true; m.fieldFire = true;
@@ -2525,7 +2525,7 @@ const m = {
{ {
name: "time dilation", name: "time dilation",
// description: "use <strong class='color-f'>energy</strong> to <strong style='letter-spacing: 1px;'>stop time</strong><br>while time is stopped you can <strong>move</strong> and <strong>fire</strong><br>and <strong>collisions</strong> do <strong>50%</strong> less <strong class='color-defense'>harm</strong>", // description: "use <strong class='color-f'>energy</strong> to <strong style='letter-spacing: 1px;'>stop time</strong><br>while time is stopped you can <strong>move</strong> and <strong>fire</strong><br>and <strong>collisions</strong> do <strong>50%</strong> less <strong class='color-defense'>harm</strong>",
description: "use <strong class='color-f'>energy</strong> to <strong style='letter-spacing: 2px;'>stop time</strong><br>move, jump, and fire <strong>25%</strong> faster<br>generate <strong>18</strong> <strong class='color-f'>energy</strong> per second", description: "use <strong class='color-f'>energy</strong> to <strong style='letter-spacing: 2px;'>stop time</strong><br><strong>+25%</strong> movement, jumping, and <strong><em>fire rate</em></strong><br>generate <strong>18</strong> <strong class='color-f'>energy</strong> per second",
set() { set() {
m.fieldFireRate = 0.75 m.fieldFireRate = 0.75
b.setFireCD(); b.setFireCD();
@@ -3180,7 +3180,7 @@ const m = {
{ {
name: "wormhole", name: "wormhole",
//<strong class='color-worm'>wormholes</strong> attract <strong class='color-block'>blocks</strong> and power ups<br> //<strong class='color-worm'>wormholes</strong> attract <strong class='color-block'>blocks</strong> and power ups<br>
description: "use <strong class='color-f'>energy</strong> to <strong>tunnel</strong> through a <strong class='color-worm'>wormhole</strong><br><strong>4%</strong> chance to <strong class='color-dup'>duplicate</strong> spawned <strong>power ups</strong><br>generate <strong>6</strong> <strong class='color-f'>energy</strong> per second", //<br>bullets may also traverse <strong class='color-worm'>wormholes</strong> description: "use <strong class='color-f'>energy</strong> to <strong>tunnel</strong> through a <strong class='color-worm'>wormhole</strong><br><strong>+4%</strong> chance to <strong class='color-dup'>duplicate</strong> spawned <strong>power ups</strong><br>generate <strong>6</strong> <strong class='color-f'>energy</strong> per second", //<br>bullets may also traverse <strong class='color-worm'>wormholes</strong>
drain: 0, drain: 0,
effect: function() { effect: function() {
m.duplicateChance = 0.04 m.duplicateChance = 0.04

View File

@@ -670,7 +670,7 @@ const tech = {
}, },
{ {
name: "Higgs mechanism", name: "Higgs mechanism",
description: "if <strong>firing</strong><br><strong>+50%</strong> <strong><em>fire rate</em></strong> and your <strong>position</strong> is locked", description: "<strong>+50%</strong> <strong><em>fire rate</em></strong><br>while <strong>firing</strong> your <strong>position</strong> is fixed",
maxCount: 1, maxCount: 1,
count: 0, count: 0,
frequency: 1, frequency: 1,
@@ -940,7 +940,7 @@ const tech = {
}, },
{ {
name: "reaction inhibitor", name: "reaction inhibitor",
description: "mobs spawn with <strong>13%</strong> <strong>health</strong>", description: "after mobs <strong>spawn</strong><br>remove <strong>+13%</strong> of their <strong>durability</strong>", //<strong class='color-h'>health</strong>
maxCount: 3, maxCount: 3,
count: 0, count: 0,
frequency: 1, frequency: 1,
@@ -1890,7 +1890,7 @@ const tech = {
}, },
{ {
name: "freezer burn", name: "freezer burn",
description: "mobs <strong class='color-s'>frozen</strong> while below <strong>33%</strong> health <strong>die</strong>", description: "mobs <strong class='color-s'>frozen</strong> while below <strong>33%</strong> durability <strong>die</strong>",
maxCount: 1, maxCount: 1,
count: 0, count: 0,
frequency: 2, frequency: 2,
@@ -1908,7 +1908,7 @@ const tech = {
}, },
{ {
name: "flash freeze", name: "flash freeze",
description: "mobs <strong class='color-s'>frozen</strong> while above <strong>66%</strong> health<br>have their health reduced to <strong>66%</strong>", description: "mobs <strong class='color-s'>frozen</strong> while above <strong>66%</strong> durability<br>have their durability reduced to <strong>66%</strong>",
maxCount: 1, maxCount: 1,
count: 0, count: 0,
frequency: 2, frequency: 2,
@@ -1980,7 +1980,7 @@ const tech = {
}, },
{ {
name: "liquid cooling", name: "liquid cooling",
description: `after losing <strong>health</strong><br><strong class='color-s'>freeze</strong> all mobs for <strong>7</strong> seconds`, description: `after losing <strong class='color-h'>health</strong><br><strong class='color-s'>freeze</strong> all mobs for <strong>7</strong> seconds`,
maxCount: 1, maxCount: 1,
count: 0, count: 0,
frequency: 2, frequency: 2,
@@ -1998,7 +1998,7 @@ const tech = {
}, },
{ {
name: "clock gating", name: "clock gating",
description: `after losing <strong>health</strong> <strong>slow</strong> <strong>time</strong> by <strong>50%</strong><br><strong>+20%</strong> <strong class='color-defense'>defense</strong>`, description: `after losing <strong class='color-h'>health</strong> <strong>slow</strong> <strong>time</strong> by <strong>50%</strong><br><strong>+20%</strong> <strong class='color-defense'>defense</strong>`,
maxCount: 1, maxCount: 1,
count: 0, count: 0,
frequency: 1, frequency: 1,
@@ -2057,7 +2057,7 @@ const tech = {
}, },
{ {
name: "ablative drones", name: "ablative drones",
description: "after losing <strong>health</strong> there is a chance<br>to rebuild your broken parts as <strong>drones</strong>", description: "after losing <strong class='color-h'>health</strong> there is a chance<br>to rebuild your broken parts as <strong>drones</strong>",
maxCount: 1, maxCount: 1,
count: 0, count: 0,
frequency: 1, frequency: 1,
@@ -2114,7 +2114,7 @@ const tech = {
{ {
name: "CPT symmetry", name: "CPT symmetry",
// description: "<strong>charge</strong>, <strong>parity</strong>, and <strong>time</strong> invert to undo <strong class='color-defense'>defense</strong><br><strong class='color-rewind'>rewind</strong> <strong>(1.5—5)</strong> seconds for <strong>(66—220)</strong> <strong class='color-f'>energy</strong>", // description: "<strong>charge</strong>, <strong>parity</strong>, and <strong>time</strong> invert to undo <strong class='color-defense'>defense</strong><br><strong class='color-rewind'>rewind</strong> <strong>(1.5—5)</strong> seconds for <strong>(66—220)</strong> <strong class='color-f'>energy</strong>",
description: "if you have <strong>66</strong> <strong class='color-f'>energy</strong> after losing <strong>health</strong><br><strong>rewind</strong> time for <strong>44</strong> <strong class='color-f'>energy</strong> per second", description: "if you have <strong>66</strong> <strong class='color-f'>energy</strong> after losing <strong class='color-h'>health</strong><br><strong>rewind</strong> time for <strong>44</strong> <strong class='color-f'>energy</strong> per second",
maxCount: 1, maxCount: 1,
count: 0, count: 0,
frequency: 1, frequency: 1,
@@ -2654,7 +2654,7 @@ const tech = {
}, },
{ {
name: "negative entropy", name: "negative entropy",
description: `at the start of each <strong>level</strong><br>for every <strong>26</strong> missing health spawn ${powerUps.orb.heal()}`, description: `at the start of each <strong>level</strong><br>for every <strong>26</strong> missing <strong class='color-h'>health</strong> spawn ${powerUps.orb.heal()}`,
maxCount: 1, maxCount: 1,
count: 0, count: 0,
frequency: 1, frequency: 1,
@@ -3504,7 +3504,7 @@ const tech = {
}, },
{ {
name: "apomixis", name: "apomixis",
description: `when you reach <strong>111%</strong> <strong class='color-dup'>duplication</strong><br>spawn <strong>11 bosses</strong> with <strong>111%</strong> more <strong>health</strong>`, description: `when you reach <strong>111%</strong> <strong class='color-dup'>duplication</strong><br>spawn <strong>11 bosses</strong> with <strong>111%</strong> more <strong>durability</strong>`,
maxCount: 1, maxCount: 1,
count: 0, count: 0,
frequency: 6, frequency: 6,
@@ -4667,7 +4667,7 @@ const tech = {
}, },
{ {
name: "acetone peroxide", name: "acetone peroxide",
description: "<strong>+70%</strong> <strong class='color-e'>explosive</strong> <strong>radius</strong><br><strong>+50%</strong> <strong class='color-e'>explosive</strong> self damage", description: "<strong>+70%</strong> <strong class='color-e'>explosive</strong> <strong>radius</strong><br><strong>50%</strong> <strong class='color-e'>explosive</strong> <strong class='color-defense'>defense</strong>",
isGunTech: true, isGunTech: true,
maxCount: 1, maxCount: 1,
count: 0, count: 0,
@@ -4706,7 +4706,7 @@ const tech = {
}, },
{ {
name: "controlled explosion", name: "controlled explosion",
description: `use ${powerUps.orb.research(4)} to dynamically <strong>reduce</strong><br>all <strong class='color-e'>explosive</strong> radius to prevent self damage`, description: `use ${powerUps.orb.research(4)} to dynamically <strong>reduce</strong><br>all <strong class='color-e'>explosive</strong> radius to prevent <strong class='color-h'>health</strong> loss`,
isGunTech: true, isGunTech: true,
maxCount: 1, maxCount: 1,
count: 0, count: 0,
@@ -4730,7 +4730,7 @@ const tech = {
{ {
name: "electric armor", name: "electric armor",
// description: "<strong class='color-e'>explosions</strong> do no <strong class='color-defense'>defense</strong><br> while your <strong class='color-f'>energy</strong> is above <strong>98%</strong>", // description: "<strong class='color-e'>explosions</strong> do no <strong class='color-defense'>defense</strong><br> while your <strong class='color-f'>energy</strong> is above <strong>98%</strong>",
description: "instead of causing self damage <strong class='color-e'>explosions</strong><br>drain <strong>12</strong> <strong class='color-f'>energy</strong> and have more knockback", description: "instead of causing <strong class='color-h'>health</strong> loss, <strong class='color-e'>explosions</strong><br>drain <strong>12</strong> <strong class='color-f'>energy</strong> and have more knockback",
isGunTech: true, isGunTech: true,
maxCount: 1, maxCount: 1,
count: 0, count: 0,
@@ -4749,7 +4749,7 @@ const tech = {
}, },
{ {
name: "MIRV", name: "MIRV",
description: "fire <strong>+1</strong> <strong>missile</strong> and <strong>grenade</strong> per shot<br><strong>12%</strong> <strong class='color-e'>explosion</strong> <strong class='color-d'>damage</strong> and <strong>radius</strong>", description: "fire <strong>+1</strong> <strong>missile</strong> or <strong>grenade</strong> per shot<br><strong>12%</strong> <strong class='color-e'>explosion</strong> <strong class='color-d'>damage</strong> and <strong>radius</strong>",
isGunTech: true, isGunTech: true,
maxCount: 9, maxCount: 9,
count: 0, count: 0,
@@ -5050,7 +5050,7 @@ const tech = {
{ {
name: "mycelial fragmentation", name: "mycelial fragmentation",
link: `<a target="_blank" href='https://en.wikipedia.org/wiki/Fungus' class="link">mycelial fragmentation</a>`, link: `<a target="_blank" href='https://en.wikipedia.org/wiki/Fungus' class="link">mycelial fragmentation</a>`,
description: "<strong class='color-p' style='letter-spacing: 2px;'>sporangium</strong> release <strong>6</strong> more <strong class='color-p' style='letter-spacing: 2px;'>spores</strong><br>during their <strong>growth</strong> phase", description: "during their <strong>growth</strong> phase<br><strong class='color-p' style='letter-spacing: 2px;'>sporangium</strong> release <strong>+6</strong> <strong class='color-p' style='letter-spacing: 2px;'>spores</strong>",
isGunTech: true, isGunTech: true,
maxCount: 1, maxCount: 1,
count: 0, count: 0,
@@ -5070,7 +5070,7 @@ const tech = {
{ {
name: "tinsellated flagella", name: "tinsellated flagella",
link: `<a target="_blank" href='https://en.wikipedia.org/wiki/Zoospore#Flagella_types' class="link">tinsellated flagella</a>`, link: `<a target="_blank" href='https://en.wikipedia.org/wiki/Zoospore#Flagella_types' class="link">tinsellated flagella</a>`,
description: "<strong class='color-p' style='letter-spacing: 2px;'>sporangium</strong> release <strong>2</strong> more <strong class='color-p' style='letter-spacing: 2px;'>spores</strong><br><strong class='color-p' style='letter-spacing: 2px;'>spores</strong> accelerate <strong>50% faster</strong>", description: "<strong class='color-p' style='letter-spacing: 2px;'>sporangium</strong> release <strong>+2</strong> <strong class='color-p' style='letter-spacing: 2px;'>spores</strong><br><strong class='color-p' style='letter-spacing: 2px;'>spores</strong> accelerate <strong>50% faster</strong>",
isGunTech: true, isGunTech: true,
maxCount: 1, maxCount: 1,
count: 0, count: 0,
@@ -5109,7 +5109,7 @@ const tech = {
}, },
{ {
name: "diplochory", name: "diplochory",
description: "<strong class='color-p' style='letter-spacing: 2px;'>spores</strong> use you for <strong>dispersal</strong><br>until they <strong>locate</strong> a viable host", description: "if <strong class='color-p' style='letter-spacing: 2px;'>spores</strong> can't <strong>locate</strong> a viable host<br>they use you for <strong>dispersal</strong>",
isGunTech: true, isGunTech: true,
maxCount: 1, maxCount: 1,
count: 0, count: 0,
@@ -5128,7 +5128,7 @@ const tech = {
}, },
{ {
name: "mutualism", name: "mutualism",
description: "<strong>+150%</strong> <strong class='color-p' style='letter-spacing: 2px;'>spore</strong> <strong class='color-d'>damage</strong><br><strong class='color-p' style='letter-spacing: 2px;'>spores</strong> borrow <strong>0.5</strong> <strong>health</strong> until they <strong>die</strong>", description: "<strong>+150%</strong> <strong class='color-p' style='letter-spacing: 2px;'>spore</strong> <strong class='color-d'>damage</strong><br><strong class='color-p' style='letter-spacing: 2px;'>spores</strong> borrow <strong>0.5</strong> <strong class='color-h'>health</strong> until they <strong>die</strong>",
isGunTech: true, isGunTech: true,
maxCount: 1, maxCount: 1,
count: 0, count: 0,
@@ -5245,7 +5245,7 @@ const tech = {
{ {
name: "reduced tolerances", name: "reduced tolerances",
link: `<a target="_blank" href='https://en.wikipedia.org/wiki/Engineering_tolerance' class="link">reduced tolerances</a>`, link: `<a target="_blank" href='https://en.wikipedia.org/wiki/Engineering_tolerance' class="link">reduced tolerances</a>`,
description: `<strong>+66%</strong> <strong>drones</strong> per ${powerUps.orb.ammo()} and <strong class='color-f'>energy</strong><br><strong>40%</strong> drone <strong>durability</strong>`, description: `<strong>+66%</strong> <strong>drones</strong> per ${powerUps.orb.ammo()} and <strong class='color-f'>energy</strong><br><strong>40%</strong> drone <strong>duration</strong>`,
isGunTech: true, isGunTech: true,
maxCount: 3, maxCount: 3,
count: 0, count: 0,
@@ -5334,7 +5334,7 @@ const tech = {
}, },
{ {
name: "axial flux motor", name: "axial flux motor",
description: "<strong>drones</strong> can <strong>rush</strong> <strong>66%</strong> more often<br><strong>+44%</strong> <strong>drone</strong> collision <strong class='color-d'>damage</strong>", description: "<strong>+66%</strong> <strong>drones</strong> <strong>rush</strong> frequency<br><strong>+44%</strong> <strong>drone</strong> collision <strong class='color-d'>damage</strong>",
isGunTech: true, isGunTech: true,
maxCount: 1, maxCount: 1,
count: 0, count: 0,
@@ -5428,7 +5428,7 @@ const tech = {
}, },
{ {
name: "fault tolerance", name: "fault tolerance",
description: "spawn <strong>6</strong> <strong>drones</strong> that last <strong>forever</strong><br>remove your <strong>drone gun</strong>", description: "remove your <strong>drone gun</strong><br>spawn <strong>6</strong> <strong>drones</strong> that last <strong>forever</strong>",
isGunTech: true, isGunTech: true,
isRemoveGun: true, isRemoveGun: true,
maxCount: 1, maxCount: 1,
@@ -5593,7 +5593,7 @@ const tech = {
}, },
{ {
name: "foam fractionation", name: "foam fractionation",
description: "if you have below <strong>300</strong> <strong class='color-ammo'>ammo</strong><br><strong>+100%</strong> <strong>foam</strong> gun bubble size", description: "if you have below <strong>300</strong> <strong class='color-ammo'>ammo</strong><br><strong>+100%</strong> <strong>foam</strong> gun bubble <strong>size</strong>",
isGunTech: true, isGunTech: true,
maxCount: 1, maxCount: 1,
count: 0, count: 0,
@@ -5639,7 +5639,7 @@ const tech = {
}, },
{ {
name: "pressure vessel", name: "pressure vessel",
description: "build up <strong>charge</strong> while firing <strong>foam</strong> gun<br>after firing automatically <strong>discharge</strong> <strong>foam</strong> bubbles", description: "build up <strong>charge</strong> while firing <strong>foam</strong> gun<br>after firing <strong>discharge</strong> <strong>foam</strong> bubbles",
isGunTech: true, isGunTech: true,
maxCount: 1, maxCount: 1,
count: 0, count: 0,
@@ -5776,7 +5776,7 @@ const tech = {
}, },
{ {
name: "alternator", name: "alternator",
description: "<strong>60%</strong> <strong>harpoon</strong> <strong class='color-f'>energy</strong> drain", description: "<strong>+60%</strong> <strong>harpoon</strong> <strong class='color-f'>energy</strong> efficiency",
isGunTech: true, isGunTech: true,
maxCount: 1, maxCount: 1,
count: 0, count: 0,
@@ -5981,7 +5981,7 @@ const tech = {
}, },
{ {
name: "laser diode", name: "laser diode",
description: "<strong>30%</strong> <strong class='color-laser'>lasers</strong> <strong class='color-f'>energy</strong> drain<br><em>affects laser-gun, laser-bot, laser-mines, pulse</em>", description: "<strong>+30%</strong> <strong class='color-laser'>laser</strong> <strong class='color-f'>energy</strong> efficiency<br><em>affects laser-gun, laser-bot, laser-mines, pulse</em>",
isGunTech: true, isGunTech: true,
maxCount: 1, maxCount: 1,
count: 0, count: 0,
@@ -6004,7 +6004,7 @@ const tech = {
}, },
{ {
name: "free-electron laser", name: "free-electron laser",
description: "<strong>+200%</strong> <strong class='color-laser'>laser</strong> <strong class='color-d'>damage</strong> <br><strong >+250%</strong> <strong class='color-laser'>laser</strong> <strong class='color-f'>energy</strong> drain", description: "<strong>+200%</strong> <strong class='color-laser'>laser</strong> <strong class='color-d'>damage</strong> <br><strong>250%</strong> <strong class='color-laser'>laser</strong> <strong class='color-f'>energy</strong> efficiency",
isGunTech: true, isGunTech: true,
maxCount: 1, maxCount: 1,
count: 0, count: 0,
@@ -6095,12 +6095,12 @@ const tech = {
{ {
name: "diffuse beam", name: "diffuse beam",
link: `<a target="_blank" href='https://en.wikipedia.org/wiki/Diffuser_(optics)' class="link">diffuse beam</a>`, link: `<a target="_blank" href='https://en.wikipedia.org/wiki/Diffuser_(optics)' class="link">diffuse beam</a>`,
description: "<strong class='color-laser'>laser</strong> beam is <strong>wider</strong> and doesn't <strong>reflect</strong><br><strong>220%</strong> <strong class='color-laser'>laser</strong> <strong class='color-d'>damage</strong>", description: "<strong class='color-laser'>laser</strong> beam is <strong>wider</strong> and doesn't <strong>reflect</strong><br><strong>+220%</strong> <strong class='color-laser'>laser</strong> <strong class='color-d'>damage</strong>",
isGunTech: true, isGunTech: true,
maxCount: 1, maxCount: 1,
count: 0, count: 0,
frequency: 2, frequency: 3,
frequencyDefault: 2, frequencyDefault: 3,
allowed() { allowed() {
return tech.haveGunCheck("laser") && tech.laserReflections < 3 && !tech.beamSplitter && !tech.isPulseLaser && !tech.historyLaser return tech.haveGunCheck("laser") && tech.laserReflections < 3 && !tech.beamSplitter && !tech.isPulseLaser && !tech.historyLaser
}, },
@@ -6124,7 +6124,7 @@ const tech = {
}, },
{ {
name: "output coupler", name: "output coupler",
description: "<strong>+30%</strong> <strong class='color-laser'>laser</strong> beam <strong>width</strong><br><strong>30%</strong> <strong class='color-laser'>laser</strong> <strong class='color-d'>damage</strong>", description: "<strong>+30%</strong> <strong class='color-laser'>laser</strong> beam <strong>width</strong><br><strong>+30%</strong> <strong class='color-laser'>laser</strong> <strong class='color-d'>damage</strong>",
isGunTech: true, isGunTech: true,
maxCount: 9, maxCount: 9,
count: 0, count: 0,
@@ -6441,7 +6441,7 @@ const tech = {
}, },
{ {
name: "radiative equilibrium", name: "radiative equilibrium",
description: "after losing <strong>health</strong><br><strong>+200%</strong> <strong class='color-d'>damage</strong> for <strong>10</strong> seconds", description: "after losing <strong class='color-h'>health</strong><br><strong>+200%</strong> <strong class='color-d'>damage</strong> for <strong>10</strong> seconds",
isFieldTech: true, isFieldTech: true,
maxCount: 1, maxCount: 1,
count: 0, count: 0,

View File

@@ -296,7 +296,7 @@ summary {
line-height: 170%; line-height: 170%;
/* border-radius: 6px; */ /* border-radius: 6px; */
border: 1px #17263b solid; border: 1px #17263b solid;
background-color: #fff; background-color: #fafcfd;
line-height: 170%; line-height: 170%;
font-size: 0.65em; font-size: 0.65em;
@@ -454,12 +454,13 @@ summary {
} }
} }
/* background on title page */
#fade-out { #fade-out {
position: absolute; position: absolute;
z-index: 2; z-index: 2;
width: 100%; width: 100%;
height: 100%; height: 100%;
background-color: #e8edf0; background-color: #e2e9ec;
opacity: 1; opacity: 1;
transition: opacity 3s; transition: opacity 3s;
pointer-events: none; pointer-events: none;

View File

@@ -1,30 +1,15 @@
******************************************************** NEXT PATCH ************************************************** ******************************************************** NEXT PATCH **************************************************
tech: freezer burn - if a mob is frozen while below 33% health, it dies
tech: flash freeze - if a mob is above 66% health it's health is set to 66%
snakeBoss 1st tail mob is larger and farther from boss updated pause menu and fields descriptions to new wording style
parthenogenesis your duplication effects extend to duplicate mobs and bosses
WIMPs do 33% less harm (because they are hard to deal with on reactor)
MACHO 66->60% defense
axion 75%-> 100% of defense added to damage
full tech wording rewrite (I probably made a few typos)
increase damage by 10% -> +10% damage
20% fire delay reduction -> +20% fire rate
taking harm -> losing health
50% harm reduction -> +50% defense
new defense text effect
extra long minus sign - ->
bug fixes
*********************************************************** TODO ***************************************************** *********************************************************** TODO *****************************************************
scrap bots can't move? scrap bots can't move?
only works for nail, foam, laser
might be tricky code?
make a new bot type called scrap bot?
if a nail critical hits, fire a nail at the nearest mob
similar to mob death targeted nail code
nail gun needs a small damage buff nail gun needs a small damage buff
JUNK tech: Pacifism JUNK tech: Pacifism
@@ -40,12 +25,10 @@ mob mechanic: beacon
at random at random
if velocity not facing player? if velocity not facing player?
super balls do damage after bouncing? super balls do more damage after bouncing?
how to check for bounce? how to check for bounce?
maybe just increases damage after hitting a mob maybe just increases damage after hitting a mob
put a shield on a shield on a shield ...
dark mode: dark mode:
look at Tinyfolks, 20 minutes till dawn look at Tinyfolks, 20 minutes till dawn