Files
n-gon-improved/todo.txt
landgreen dd43d9413b perpetual mods
4 new mods: perpetual ammo/rerolls/heals - get that power up at the start of each level
            also perpetual stun: stuns all mobs for 8 seconds at the start
2020-11-27 17:20:15 -08:00

319 lines
12 KiB
Plaintext

*********** NEXT PATCH ***********
4 new mods: perpetual ammo/rerolls/heals - get that power up at the start of each level
also perpetual stun: stuns all mobs for 8 seconds at the start
************** BUGS **************
(always) make it so that when you are immune to harm you can either jump on mobs or you pass through them
(4+ reports before potential fix) bug - crouch and worm hole? -> crouch locked in
players have extra gravity
might be from the short jump code
add in a check every 5 seconds to try and fix it
(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 **************
bot that follows the players history
1st bot is at 5s, 2nd is at 4.5s, ...
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
mod negative mass field - mobs caught in the field take damage that increases with the relative velocity between the player and mob
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 ammo?
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
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
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