tungsten carbide

removed tech: supersaturation - 50 max health
tech: tungsten carbide - gain 100 max health, but take falling damage

supercapacitor renamed Maxwell's demon
  energy above your max decays 92% slower. add 16 junk tech
  (was 70% with no junk tech)

mine synthesis renamed booby trap
  spawns a mine when ever you pick up a power up, add 9 junk tech
This commit is contained in:
landgreen
2021-06-04 06:38:17 -07:00
parent 005436a177
commit b307a50a72
6 changed files with 60 additions and 75 deletions

BIN
.DS_Store vendored

Binary file not shown.

View File

@@ -40,6 +40,11 @@ function playerOnGroundCheck(event) {
m.doCrouch();
m.yOff = m.yOffWhen.jump;
m.hardLandCD = m.cycle + Math.min(momentum / 6.5 - 6, 40)
//falling damage
if (tech.isFallingDamage) {
m.damage(Math.min(Math.sqrt(momentum - 125) * 0.01, 0.25));
m.immuneCycle = m.cycle + tech.collisionImmuneCycles; //player is immune to damage for 30 cycles
}
} else {
m.yOffGoal = m.yOffWhen.stand;
}

View File

@@ -6396,7 +6396,7 @@ const level = {
ctx.fillText("Entity name: m", 1560, -3830);
ctx.fillStyle = (tech.totalCount < 25 ? (tech.totalCount < 10 ? "#ffff44" : "#22ff22") : "#ff6644") + Math.floor((secretAnimTrans2 - 40) * 12.75).toString(16);
ctx.fillText("Threat level: " + (tech.totalCount < 25 ? (tech.totalCount < 10 ? "Low" : "Medium") : "HIGH"), 1560, -3790);
if (tech.totalCount >= 15) ctx.fillText("PROCEDURE ACTIVATED", 1560, -3750);
if (tech.totalCount >= 10) ctx.fillText("PROCEDURE ACTIVATED", 1560, -3750);
ctx.strokeStyle = "#00ff00" + Math.floor((secretAnimTrans2 - 40) * 6).toString(16);
ctx.beginPath();
ctx.arc(1950, -3730, 60, 0, 2 * Math.PI);

View File

@@ -207,27 +207,11 @@ const m = {
m.crouch = true;
m.yOffGoal = m.yOffWhen.crouch;
if ((playerHead.position.y - player.position.y) < 0) {
Matter.Body.setPosition(playerHead, {
x: player.position.x,
y: player.position.y + 9.1740767
})
// Matter.Body.translate(playerHead, {
// x: 0,
// y: 40
// });
}
// playerHead.collisionFilter.group = -1
// playerHead.collisionFilter.category = 0
// playerHead.collisionFilter.mask = -1
// playerHead.isSensor = true; //works, but has a 2 second lag...
// collisionFilter: {
// group: 0,
// category: cat.player,
// mask: cat.body | cat.map | cat.mob | cat.mobBullet | cat.mobShield
// },
}
},
undoCrouch() {
@@ -502,7 +486,7 @@ const m = {
},
baseHealth: 1,
setMaxHealth() {
m.maxHealth = m.baseHealth + tech.bonusHealth + tech.armorFromPowerUps
m.maxHealth = m.baseHealth + tech.armorFromPowerUps + tech.isFallingDamage //+ tech.bonusHealth
document.getElementById("health-bg").style.width = `${Math.floor(300*m.maxHealth)}px`
simulation.makeTextLog(`<span class='color-var'>m</span>.<span class='color-h'>maxHealth</span> <span class='color-symbol'>=</span> ${m.maxHealth.toFixed(2)}`)
if (m.health > m.maxHealth) m.health = m.maxHealth;

View File

@@ -2203,20 +2203,22 @@
}
},
{
name: "supercapacitor",
description: "<strong class='color-f'>energy</strong> above your max decays <strong>60%</strong> slower",
name: "Maxwell's demon",
description: "<strong class='color-f'>energy</strong> above your max decays <strong>92%</strong> slower<br>add <strong>17</strong> <strong class='color-j'>JUNK</strong> <strong class='color-m'>tech</strong> to the potential pool",
maxCount: 1,
count: 0,
frequency: 2,
allowed() {
return tech.isEnergyRecovery || tech.isPiezo || tech.energySiphon > 0 || tech.isRailEnergyGain || tech.isWormholeEnergy || tech.iceEnergy > 0
return tech.isEnergyRecovery || tech.isPiezo || tech.energySiphon > 0 || tech.isRailEnergyGain || tech.isWormholeEnergy || tech.iceEnergy > 0 || tech.isMassEnergy
},
requires: "a source of overfilled energy",
effect() {
tech.overfillDrain = 0.85
tech.overfillDrain = 0.87 //70% = 1-(1-0.75)/(1-0.15) //92% = 1-(1-0.75)/(1-0.87)
tech.addJunkTechToPool(17)
},
remove() {
tech.overfillDrain = 0.75
if (this.count > 0) tech.removeJunkTechFromPool(17)
}
},
{
@@ -2377,10 +2379,31 @@
tech.isAcidDmg = false;
}
},
// {
// name: "supersaturation",
// description: "increase your <strong>maximum</strong> <strong class='color-h'>health</strong> by <strong>50</strong>",
// maxCount: 9,
// count: 0,
// frequency: 1,
// frequencyDefault: 1,
// allowed() {
// return !tech.isEnergyHealth && !tech.isNoHeals
// },
// requires: "not mass-energy equivalence, ergodicity",
// effect() {
// tech.bonusHealth += 0.5
// m.setMaxHealth();
// m.addHealth(0.50)
// },
// remove() {
// tech.bonusHealth = 0
// m.setMaxHealth();
// }
// },
{
name: "supersaturation",
description: "increase your <strong>maximum</strong> <strong class='color-h'>health</strong> by <strong>50</strong>",
maxCount: 9,
name: "tungsten carbide",
description: "increase your <strong>maximum</strong> <strong class='color-h'>health</strong> by <strong>100</strong><br><strong>landings</strong> that force you to crouch cause <strong class='color-harm'>harm</strong>",
maxCount: 1,
count: 0,
frequency: 1,
frequencyDefault: 1,
@@ -2389,14 +2412,13 @@
},
requires: "not mass-energy equivalence, ergodicity",
effect() {
tech.bonusHealth += 0.5
m.addHealth(0.50)
tech.isFallingDamage = true;
m.setMaxHealth();
m.addHealth(1)
},
remove() {
tech.bonusHealth = 0
tech.isFallingDamage = false;
m.setMaxHealth();
}
},
{
@@ -3042,8 +3064,8 @@
remove() {}
},
{
name: "mine synthesis",
description: "drop a <strong>mine</strong> after picking up a <strong>power up</strong>",
name: "booby trap",
description: "drop a <strong>mine</strong> after picking up a <strong>power up</strong><br>add <strong>9</strong> <strong class='color-j'>JUNK</strong> <strong class='color-m'>tech</strong> to the potential pool",
maxCount: 1,
count: 0,
frequency: 1,
@@ -3055,9 +3077,11 @@
effect() {
tech.isMineDrop = true;
if (tech.isMineDrop) b.mine(m.pos, { x: 0, y: 0 }, 0, tech.isMineAmmoBack)
tech.addJunkTechToPool(13)
},
remove() {
tech.isMineDrop = false;
if (this.count > 0) tech.removeJunkTechFromPool(13)
}
},
{
@@ -6724,7 +6748,7 @@
isSmallExplosion: null,
isExplosionHarm: null,
armorFromPowerUps: null,
bonusHealth: null,
// bonusHealth: null,
isIntangible: null,
isCloakStun: null,
bonusEnergy: null,
@@ -6828,5 +6852,6 @@
isAddBlockMass: null,
isMACHO: null,
isHarmMACHO: null,
isSneakAttack: null
isSneakAttack: null,
isFallingDamage: null
}

View File

@@ -26,11 +26,21 @@ is there a way to check if the player is stuck inside the map or block
******************************************************** TODO ********************************************************
tech: picking up heal power ups when at full health does harm equal to the heal values
benefit on pick up: get 1% damage
draw a rotating ring, like a 3-D spinning ring effect
an ellipse the has sine function on one of it's parameters
buttons can now on/off boosts
Weak Anthropic Principle: you get a second chance at life, but now the game has falling damage!
tech: supersaturation is buffed but add falling damage
tech: increase health and remove air control
energy conservation 6% damage recovered as energy
add a negative effect:
junk tech
Weak Anthropic Principle: you get a second chance at life, but ....
negative effect: remove air control
mob: molecule shapes - 2 separate mobs joined by a bond
use constraints: just spawn 2x or 3x groupings
@@ -48,13 +58,6 @@ tech: wormhole through walls?
pause should show the last in game console message
tech: picking up heal power ups when at full health does harm equal to the heal values
benefit on pick up:
get ammo
get 1% duplication
get 1% damage permanent
turned into drones
nail-gun, or ....
1s after being fired your bullets turn:
towards the nearest mob
@@ -124,18 +127,6 @@ mobile requirements:
tap screen regions to move (WASD)
reduce font size
decrease healing effects by 50%
decrease level scaling healing reduction
net effect: healing at difficulty 40 (level 10 hard) should be 25% higher then current levels
bosses should have 2x health, but only do about 50 health damage
options:
cap all damage at 50 health
this makes high health/energy/harm reduction build much better
make boss flag cut damage done to player by 10x
boss flag cut damage done to boss by 20x <----
make bosses not have extra density
lore: a tutorial / lore intro
needs to be optional so it doesn't slow experienced players
put something on the intro map
@@ -147,42 +138,22 @@ add back in gamepad support
rename intro level to something lore related
give undefined tech different effects at different localSettings.loreCount values
or just random effects
1. 10/10: send more tech into the pool
2. 3/3: lose 3 tech each time, and send more tech into the pool
2. 3/3: increase game difficulty, and send more tech into the pool
3. 1/1: reduce max energy and take more harm
4. 1/1: add 5? more levels
rename ?
health -> integrity, unity
heal -> also integrity, unity
bot: ice blast, long CD AOE freeze
RPG default or tech: grenades detonate on your cursor / where your cursor was when they were fired
in game console
set highlighting rules
m, tech, level are all highlighted
maybe the first term in each variable should get a highlight
tech: time dilation - when you exit time dilation rewind to the state you entered
position, velocity, and health
no energy cost
mechanic - Your energy regen is only active when field and gun have not been used for 5 seconds.
be able to open up custom mode in the normal game
might need to be rebuilt from scratch
while in through testing mode?
have a way to make limited changes as allowed by tech you pick up in game
disable the in custom setting flag
tech power up magnetism - power ups drift towards player
where would this code go?
super balls start at 3, not 4
have to balance damage