Files
n-gon-improved/todo.txt
landgreen 732b13d8a4 inductive coupling
your build url can now be copied in the pause screen

mod: inductive coupling - 4 max health per power up, but limited to 44 max health per level (replaces crystalized armor)
mod: transceiver chip - use all the power ups left over at the end of a level
mod: catabolism - does a flat 5 damage to your health for 3 ammo  (was 2% of max health for 1 ammo)
2020-12-16 09:55:07 -08:00

398 lines
15 KiB
Plaintext

******************************************************** NEXT PATCH ********************************************************
your build url can now be copied in the pause screen
mod: inductive coupling - 4 max health per power up, but limited to 44 max health per level (replaces crystalized armor)
mod: transceiver chip - use all the power ups left over at the end of a level
mod: catabolism - does a flat 5 damage to your health for 3 ammo (was 2% of max health for 1 ammo)
******************************************************** BUGS ********************************************************
give worm hole pair production?
2nd mod for crystalized armor
no cap for health power ups?
(not able to reproduce, might be fixed) possible bug with neutron rewind
status doesn't apply correctly for spawned neutron bombs that are stuck to a shield
also saw neutron bombs bounce off shield, for normal bullets
test this more
mod and mob are too similar
(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
(12+ reports) bug - crouch and worm hole? -> crouch locked in
doesn't occur on my computer?
you can spoof it with mech.crouch = true in console
players have extra gravity
might be from the short jump code
add in a check every 7 seconds to try and fix it
this fix was added and it is working for some cases
maybe move the fix to once a second?
(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, mod mine reclamation, field plasma,
(repeatable almost every time) bug - mines spawn extra mines when fired at thin map wall while jumping
******************************************************** TODO ********************************************************
make a reset hit box function as a way to fix crouch bug
mod that requires integrated armament
mod - reset level
you trade a mod for a chance at killing a new level boss and farming more ammo
resets health, ammo (but not mods, 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 mods you pick up in game
disable the in custom setting flag
mod: 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 mods
make different move methods
mod: crouch charge jump
mod: double jump
mod: when mobs are at full health you do 40% to them
mechanic: failed technology - add mods to the mod pool with a dumb effect
don't show up in custom?
negative effect (one time effects are better to avoid code clutter)
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
mod - move super fast, go intangible, drain energy very fast
this is like a dodge roll
mod for standing wave?, cloaking?
mod pilot wave: mini black hole - pull mobs and blocks in with more force
also from farther away
also do damage?
mod 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
bot that follows the players history
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:
give player energy overfill
damage mobs on contact
damage bonus damage reduction push away mobs
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 mod/field/gun
a chance for destroyed blocks to drop stuff
power ups
spores
mod 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 mods, and 3 options for guns/fields/mods
or 6 options for mods (rewrite mod selection to work with 1-6 options)
the second stack of 3 mods could have repeats, so you don't have to write new mod 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 mod?
power up color: ?
how to indicate effect duration
or just give the effect after picking up a reroll
Mod: "Solar Power": Energy regeneration is doubled while standing still
run in the 1 second check
mechanic - remove a random mod as a condition for picking up a really good mod
mechanic - do something for 2 seconds after firing
if (mech.fireCDcycle + 120)
mod - do 50% more damage in close, but 50% less at a distance
code it like mod.isFarAwayDmg
have these mods disable each other
mod - 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
mod - more blocks
mod - 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: 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 mods that could update description text with count and mod.is information
can only use variables that change in effect() and remove()
this.description = `<strong>8%</strong> chance to <strong>duplicate</strong> spawned <strong>power ups</strong><br><em>chance to duplicate = ${mod.duplicateChance}</em>`
mouse event e.which is deprecated
add some more computer / AI stuff to the level lore text
mechanic - shrink mech.baseHealth in a mod or field
standing wave harmonics mod - 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
mod: double jump
mod: air dash
mod: 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 mods
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 mod, 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 ********************************************************
lore - a robot (the player) gains self awareness
each mod/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 mod 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
robot AI communication
output to
bottom left message
tab title?
style
make it look like a computer terminal
mono space font
square edges
in baby talk?
with random ASCII gibberish letters
end each message with a hexadecimal encryption code/hash
message after selecting each new (mod / gun / field)
put messages in (mod / gun / field) method
at start of run
write custom dialogue for field / guns / mods used in last game
you'd have to store an array of guns/fields/mod used last game
n-gon escape simulation ${random seed}
say something about what mobs types are queued up, and level order
add an ending to the game
maybe the game ending should ask you to open the console and type in some commands like in the end of doki doki
mirror ending (if no cheats)
level after final boss battle is the intro level, but flipped left right, with a fake player
damage the fake player to end the game
message about go outside
no ending (if cheats)
game goes on forever
also game goes on if player attacks, the fake player
game never ends if you have used cheats