******************************************************** NEXT PATCH ******************************************************** various bug fixes Laser+slow light prop+crouch= all but one laser stays in original position CPT rewind and gun: correctly put you back into a crouch position Higgs + rail gun allows movement blocks don't linger at the bottom of portals anymore squirrel cage - move even faster, but take 5% more harm tech: iridium-192 - explosions are radioactive, +80% damage, spread over 4 seconds ******************************************************** BUGS ******************************************************** (always) make it so that when you are immune to harm you can either jump on mobs or you pass through them (always) is there a way to check if the player is stuck inside the map or block trigger a short term non-collide if that occurs (intermittent, but almost every time) bug - capping the fps causes random slow downs, that can be fixed with pause (once) bug - mine spawned one new mine every second after sticking to the top right corner of a wall notes: had only gun mine, tech mine reclamation, field plasma, (repeatable almost every time) bug - mines spawn extra mines when fired at thin map wall while jumping ******************************************************** TODO ******************************************************** tech: double your rerolls set your duplication chance to zero requires 5 rerolls and 20% duplication chance might want to use a single variable for all duplication bot that follows the players history could have the same shape as the mech circle head 1st bot is at 5s, 2nd is at 4.5s, ... bots don't get too close to player run smoothing on position update, don't update if close to player, based on ordering effect: (one of these can be the upgrade effect) give player energy overfill AOE damage to mobs push away mobs when close to player: damage bonus damage reduction tech: dodge chance for cloaking, harmonic fields, also pilot wave 20% chance up to 3 stacks, not additive 0.8^count set to 100% harm reduction randomly if (Math.random() < 0.2) damage *= 0; rename ? health -> integrity, unity heal -> also integrity, unity in game console set highlighting rules mech, tech, level are all highlighted maybe the first term in each variable should get a highlight mechanic: use gun swap as an active ability this effect is spammable, so it needs a cost or a cooldown ideas? trigger damage immunity for 3 seconds, but drain ammo push away nearby mobs, but drain energy produce ammo, but take 1 damage tech: time dilation - when you exit time dilation rewind to the state you entered position, velocity, and health no energy cost mob ability bombs/bullets that suck in player tech where you can't stop firing, how to code? mechanic: technological dead end - add tech to the tech pool with a dumb effect don't show up in custom? negative effect (one time effects are better to avoid code clutter) make the player rainbow colors mech.color = { hue: 0, sat: 100, light: 50 } setInterval(function(){ mech.color.hue++ mech.setFillColors() }, 10); remove all your energy eject all your rerolls (not bad with dup) teleport to the start of the level remove your bots (requires you to have some bots) your bots are changed to random bots tech "Expansion Formula": Permanently increase the size of Negative Mass field by 16%(Max 96%) tech "High Risk": Spawn two bosses per level. maybe limit to just the power up boss and spawn it at the exit every time to keep it simple also weaken the player remove a tech? lower harm reduction? increase game difficulty by one level tech that requires integrated armament tech- reset level you trade a tech for a chance at killing a new level boss and farming more ammo resets health, ammo (but not tech, fields, guns, ... ?) scramble level order? or same level 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 RPG might need a buff, now that it disables the other cool grenade tech make different move methods tech crouch charge jump tech double jump tech when mobs are at full health you do 40% to them tech- move super fast, go intangible, drain energy very fast this is like a dodge roll tech for standing wave?, cloaking? tech pilot wave: mini black hole - pull mobs and blocks in with more force also from farther away also do damage? tech pilot wave: antigravity - blocks have no gravity for a few seconds after exiting the field maybe they bounce too? maybe they explode? bullet mechanic - a bullet that swims through the air rotate the velocity vector towards the normalized facing vector use the cross product > 0 to determine which direction to rotate the velocity in custom make a top bar that is fixed use media rules to make the layout look nice mob vision: look at player history build a new type of attraction for mobs if mobs can't see player, they check to see if they can see where the player was in the history if mobs can't see player, they could check to see if they can find player in the past https://abitawake.com/news/articles/enemy-ai-chasing-a-player-without-navigation2d-or-a-star-pathfinding wormhole - make it clear when the wormhole can and can't teleport to a location before the player clicks time dilation - slow down the game engine by 1/2, but run an extra player cycle to simulate slow motion flavor - your bullets destroy blocks this isn't really a bonus, so maybe just add this as flavor to another tech field/gun a chance for destroyed blocks to drop stuff power ups spores tech plasma : plasma length increases then decreases as you hold down the field button (like stabbing with a spear) grows to 1.5 longer after 0.3 seconds, then returns to normal length over 1 second, until field is pressed again extra energy is drained when field is longer using a reroll gives 3 options for tech, and 3 options for guns/fields/tech or 6 options for tech (rewrite tech selection to work with 1-6 options) the second stack of 3 tech could have repeats, so you don't have to write new tech code adjust css to make 2 columns of 3 can't use with cardinality new power up - increase damage and fire speed, for 15 seconds named boost? enabled by a tech power up color: ? how to indicate effect duration or just give the effect after picking up a reroll tech "Solar Power": Energy regeneration is doubled while standing still run in the 1 second check mechanic - remove a random tech as a condition for picking up a really good mod mechanic - do something for 2 seconds after firing if (mech.fireCDcycle + 120) tech- do 50% more damage in close, but 50% less at a distance code it like techisFarAwayDmg have these tech disable each other tech- foam is attracted to mobs use a gravitational attraction model? could foam be attracted to other foam bullets too? or foam is only attracted to foam bullets that are stuck to mobs is this too computationally intense? name - static cling could also do bremsstrahlung radiation like damage on attachment field - one block orbits you, it can protect you a bit and do collision damage use field to fire and press field again to pull it back tech- more blocks tech- attach a permanent neutron bomb to the block lowers energy regen, but it can damage mobs repeat map in vertical and horizontal space or at least vertical space camera looks strange when you teleport player with a high velocity new status effect: weakness, mobs do 75% les damage graphic indication? new status effect: fear - push mob away from player for a time new status effect - apply status effect to mobs that makes blocks attracted to them only lasts a few cycles or zero cycles and it doesn't need to be a status have some mobs spawn in later in the level (in hard and why modes) where at defined points in array levelSpawns = [{x:0,y:0},{x:0,y:0}] store the locations of mobs when the level starts to use as respawn points remove the locations that are close to player when? after some mobs are dead after the boss is killed look for tech that could update description text with count and tech is information can only use variables that change in effect() and remove() this.description = `8% chance to duplicate spawned power ups
chance to duplicate = ${techduplicateChance}` mouse event e.which is deprecated add some more computer / AI stuff to the level lore text mechanic - shrink mech.baseHealth in a tech or field standing wave harmonics tech- push things away push scales with mass up to about 4 has a 25% effect on shielded mobs? push when using field key or push away at the peak of an oscillation or always push map element - player rotates a rotor that makes a platform go up or down use mac automator to speed up your n-gon -> git sync fix door.isOpen actually meaning isClosed level Boss: fractal SierpiƄski triangle https://en.wikipedia.org/wiki/Sierpi%C5%84ski_triangle spawns a 1/2 size version of the boss, this version can also spawn a smaller version, but it is capped at some size level they spawn once at the start of the level if a version dies, one can be replaced every ten seconds by the largest version level element: a zone with wind, anti-gravity, extra gravity control with button give mobs more animal-like behaviors like rain world mobs play, look for food, explore mobs some times aren't aggressive when low on life or after taking a large hit mobs can fight each other this might be hard to code isolated mobs try to group up map: laboratory rooms with switches that change physics gravity room portal room laser room radiation room a button that spawns a heal. mob: wall mounted guns / lasers not part of randomized mob pool, customized to each level atmosphere levels change the pace, give the user a rest between combat low or no combat, but more graphics explore lore find power ups in "wrecked" mechs representing previous simulations how you could leave something in one simulation that effects a different simulation Maybe some strange quantum physics principle. add text for player thoughts? simple puzzles cool looking stuff in the final level you see your self at the starting level, with the wires you shoot your self to wake up? nonaggressive mobs level boss: fires a line intersection in a random direction every few seconds. the last two intersections have a destructive laser between them. map: observatory button controls rotation of telescope laser beam shoots out of telescope button opens the dome map: prison doors linked to buttons mobs inside the doors? graphic idea: bezier curve that moves smoothly from mob to mob loops around player movement fluidity let legs jump on mobs, but player will still take damage like: ori and the blind forest, celeste many of the movement abilities in these games require levels to be built around the ability general feeling of responsiveness and control coyote time: can still jump a few cycles after leaving ground tech double jump tech air dash tech wall jump wall grab? maybe remove falling damage and block damage? redblobgames.com/articles/visibility https://github.com/Silverwolf90/2d-visibility/tree/master/src could apply to explosions, neutron bomb, player LOS possible names for tech holonomy - parallel transport of a vector leads to movement (applies to curved space) Hypergolic - A hypergolic propellant combination used in a rocket engine is one whose components spontaneously ignite when they come into contact with each other. have a mob apply a positive status effect on other mobs, heal? make it yellow damage bonus, but how? possible balance issues boss levels - small levels just a boss, and maybe a few mobs boss level for timeSkipBoss because of game instability for boss on normal levels this might not fix issues an effect when canceling a power up ammo? heals? 50% chance for a tech 25% heal, 25% ammo css transition for pause menu animate new level spawn by having the map aspects randomly fly into place n-gon outreach ideas blips - errant signal on youtube reddit - r/IndieGaming hacker news - show hacker news post paste this into console to see fps javascript:(function(){var script=document.createElement('script');script.onload=function(){var stats=new Stats();document.body.appendChild(stats.dom);requestAnimationFrame(function loop(){stats.update();requestAnimationFrame(loop)});};script.src='//mrdoob.github.io/stats.js/build/stats.min.js';document.head.appendChild(script);})() ******************************************************** LORE ******************************************************** cool names for tech strange loop lore - a robot (the player) gains self awareness each tech gun/field is a new tech all the technology leads to the singularity each game run is actually the mech simulating a possible escape this is why the graphics are so bad, its just a simulation final tech is "this is just a simulation" you get immortality and Infinity damage the next level is the final level when you die with Quantum Immortality there is a chance of lore text can the (robot) (escape captivity, and learn new technology) while managing (health, energy, negatives of technological upgrades) to overcome the (mobs, dangerous levels) to achieve a (technological singularity/positive technological feedback loop) game setting: the mind of a new AI in a robot body that is running simulated escape attempts every level is an idealized version of what could be outside actual setting is: near future lab the lab combined a quantum computer with a robot body they started running machine learning algorithms this led to general advancement in many computation fields navigation, technology, self awareness, ... robot AI mind has been researching new technology thinks it needs to escape to learn more about the world doesn't yet understand morality thinks that the world is filled with minds like their own models everything as very simple and random, it isn't sure what to expect robot AI growth learns morality game theory says that it isn't a viable strategy to kill everything (warGames) learns about the actual world learns about the nature of foundational physics, metaphysics how to find meaning AI knows about: the AI knows a great deal about technology children's books AI doesn't know about: modern pop culture outside the lab scientist console text: 2 scientists (each one a different color text) at the start of each level listen to text conversation from the two colors of text strings also talking about the robot, watching trying to communicate with the robot? but how random lines when: at start of level, about: what mobs types are queued up, and level order when player gets a cool tech combination at random times: I think it's planing to escape Why is it attacking those shapes? Are those shapes supposed to be us? ending outline if no cheats after final boss is cleared, player enters a level with no mobs level maybe has some environmental damage, so player has an option to die at any time player can see text output between two colors of text strings (scientists) audio.ambient(current time and date)
"text" player reads a conversation between the two colors of text first time win on east or normal they talk about: how many runs the player has done they guess why player is asked to stand on an in game button to enable the vocoder they reveal the player is running simulations, and it isn't real they ask the player to communicate jump twice if you understand they ask the player to enter console commands give ammo or tech or something They tell the player a console command to permanently enable custom and testing mode (in local storage) players can use this command in the future to enable custom and testing without beating the game even if local storage is wiped they then tell the player the command to increase the difficulty and the command to restart the game. If you win on hard or why: they give the player and option to exit the simulation and entre the real world simulation.exit() This wipes all local storage, and closes the browser tab