feat: update waves, enemies

This commit is contained in:
2026-06-25 09:05:44 +05:00
parent 89d39452ed
commit 5489c0f8d5
6 changed files with 518 additions and 124 deletions
+245 -48
View File
@@ -15,22 +15,27 @@ const CONFIG = {
startLives: 10,
startWave: 1,
startScore: 0,
spawnIntervalBase: 240,
spawnIntervalMin: 60,
spawnIntervalDecayPerWave: 12,
enemiesPerWaveBase: 5,
enemiesPerWaveInc: 1,
waveInterval: 900,
heavyEnemyChanceBase: 0.25,
heavyEnemyChancePerWave: 0.02,
scoreSimple: 10,
scoreHeavy: 50,
scoreBoss: 200,
bossEveryNthWave: 10,
bossLayers: 3,
bossWordsPerLayer: 3,
gameOverDelay: 10000,
},
speed: {
simpleEnemyCrossTime: 60,
simpleEnemyCrossTimeRand: 120,
simpleEnemyCrossTimeDecay: 4000,
heavyEnemyCrossTime: 120,
heavyEnemyCrossTimeRand: 240,
slowEnemyCrossTimeStart: 120,
slowEnemyCrossTimeCap: 20,
slowEnemyCrossTimeCapWave: 50,
fastEnemyCrossTimeStart: 60,
fastEnemyCrossTimeCap: 10,
fastEnemyCrossTimeCapWave: 50,
bossCrossTime: 60,
projectileCrossTime: 1.3,
gridSpeed: 0.5,
},
@@ -114,6 +119,8 @@ const CONFIG = {
primaryGrid: "rgba(0,255,65,0.08)",
heavy: "#ffaa00",
heavyDim: "#cc8800",
boss: "#ff4444",
bossDim: "#cc2222",
miss: "#ff0044",
white: "#ffffff",
red: "#ff0000",
@@ -151,48 +158,238 @@ const CONFIG = {
const WordGenerator = {
simpleWords: [
"hack", "code", "data", "node", "link", "byte", "bit", "net", "web", "sys",
"run", "log", "bug", "fix", "api", "cpu", "ram", "ssd", "gpu", "dns",
"ip", "url", "tag", "css", "js", "sql", "git", "cli", "env", "dev",
"app", "bot", "ai", "io", "os", "ui", "ux", "vm", "vpn", "lan",
"wan", "ftp", "ssh", "http", "json", "xml", "yaml", "md", "py", "go",
"rust", "java", "php", "cpp", "ts", "rb", "kt", "swift", "dart", "lua",
"perl", "bash", "zsh", "fish", "vim", "nano", "emacs", "sed", "awk", "grep",
"find", "cat", "ls", "cd", "mv", "cp", "rm", "mkdir", "chmod", "chown",
"ping", "curl", "wget", "nc", "nmap", "tcp", "udp", "ip4", "ip6", "mac",
"hex", "bin", "dec", "oct", "xor", "and", "or", "not", "shl", "shr",
"key", "lock", "door", "gate", "wall", "fire", "ice", "wind", "storm", "rain",
"sun", "moon", "star", "void", "null", "zero", "one", "two", "ten", "max",
"hack",
"code",
"data",
"node",
"link",
"byte",
"bit",
"net",
"web",
"sys",
"run",
"log",
"bug",
"fix",
"api",
"cpu",
"ram",
"ssd",
"gpu",
"dns",
"ip",
"url",
"tag",
"css",
"js",
"sql",
"git",
"cli",
"env",
"dev",
"app",
"bot",
"ai",
"io",
"os",
"ui",
"ux",
"vm",
"vpn",
"lan",
"wan",
"ftp",
"ssh",
"http",
"json",
"xml",
"yaml",
"md",
"py",
"go",
"rust",
"java",
"php",
"cpp",
"ts",
"rb",
"kt",
"swift",
"dart",
"lua",
"perl",
"bash",
"zsh",
"fish",
"vim",
"nano",
"emacs",
"sed",
"awk",
"grep",
"find",
"cat",
"ls",
"cd",
"mv",
"cp",
"rm",
"mkdir",
"chmod",
"chown",
"ping",
"curl",
"wget",
"nc",
"nmap",
"tcp",
"udp",
"ip4",
"ip6",
"mac",
"hex",
"bin",
"dec",
"oct",
"xor",
"and",
"or",
"not",
"shl",
"shr",
"key",
"lock",
"door",
"gate",
"wall",
"fire",
"ice",
"wind",
"storm",
"rain",
"sun",
"moon",
"star",
"void",
"null",
"zero",
"one",
"two",
"ten",
"max",
],
heavyWords: [
["root", "access"], ["data", "breach"], ["fire", "wall"], ["deep", "web"],
["dark", "net"], ["cloud", "base"], ["neural", "net"], ["quantum", "bit"],
["block", "chain"], ["smart", "contract"], ["machine", "learn"], ["deep", "fake"],
["zero", "day"], ["back", "door"], ["side", "channel"], ["man", "middle"],
["denial", "service"], ["brute", "force"], ["social", "engineer"], ["phishing", "attack"],
["sql", "inject"], ["cross", "site"], ["buffer", "over"], ["heap", "spray"],
["stack", "pivot"], ["return", "orient"], ["format", "string"], ["race", "condition"],
["time", "check"], ["use", "after"], ["double", "free"], ["null", "pointer"],
["integer", "over"], ["type", "confus"], ["memory", "leak"], ["dead", "lock"],
["live", "lock"], ["starvation", "mode"], ["priority", "invert"], ["cache", "miss"],
["branch", "mispred"], ["speculative", "exec"], ["meltdown", "flaw"], ["spectre", "bug"],
["row", "hammer"], ["cold", "boot"], ["evil", "maid"], ["supply", "chain"],
["hardware", "troj"], ["firmware", "root"], ["bios", "implant"], ["uefi", "shell"],
["smm", "exploit"], ["ring", "zero"], ["kernel", "panic"], ["blue", "screen"],
["kernel", "oops"], ["seg", "fault"], ["bus", "error"], ["illegal", "op"],
["trap", "divide"], ["trap", "debug"], ["trap", "nmi"], ["trap", "break"],
["trap", "overflow"], ["trap", "bound"], ["trap", "invalid"], ["trap", "device"],
["trap", "double"], ["trap", "copro"], ["trap", "tss"], ["trap", "segment"],
["trap", "stack"], ["trap", "general"], ["trap", "page"], ["trap", "x87"],
["trap", "align"], ["trap", "machine"], ["trap", "simd"], ["trap", "virtual"],
["security", "check"], ["stack", "cookie"], ["aslr", "bypass"], ["dep", "bypass"],
["cfg", "bypass"], ["cet", "bypass"], ["shadow", "stack"], ["control", "flow"],
["indirect", "call"], ["jump", "oriented"], ["call", "oriented"], ["data", "oriented"],
["counterfeit", "obj"], ["use", "after"], ["heap", "feng"], ["house", "spirit"],
["house", "lore"], ["house", "force"], ["fast", "bin"], ["tcache", "poison"],
["unsorted", "bin"], ["large", "bin"], ["small", "bin"], ["mmap", "chunk"],
["top", "chunk"], ["wilderness", "area"], ["arena", "corrupt"], ["thread", "cache"],
["per", "thread"], ["main", "arena"],
["root", "access"],
["data", "breach"],
["fire", "wall"],
["deep", "web"],
["dark", "net"],
["cloud", "base"],
["neural", "net"],
["quantum", "bit"],
["block", "chain"],
["smart", "contract"],
["machine", "learn"],
["deep", "fake"],
["zero", "day"],
["back", "door"],
["side", "channel"],
["man", "middle"],
["denial", "service"],
["brute", "force"],
["social", "engineer"],
["phishing", "attack"],
["sql", "inject"],
["cross", "site"],
["buffer", "over"],
["heap", "spray"],
["stack", "pivot"],
["return", "orient"],
["format", "string"],
["race", "condition"],
["time", "check"],
["use", "after"],
["double", "free"],
["null", "pointer"],
["integer", "over"],
["type", "confus"],
["memory", "leak"],
["dead", "lock"],
["live", "lock"],
["starvation", "mode"],
["priority", "invert"],
["cache", "miss"],
["branch", "mispred"],
["speculative", "exec"],
["meltdown", "flaw"],
["spectre", "bug"],
["row", "hammer"],
["cold", "boot"],
["evil", "maid"],
["supply", "chain"],
["hardware", "troj"],
["firmware", "root"],
["bios", "implant"],
["uefi", "shell"],
["smm", "exploit"],
["ring", "zero"],
["kernel", "panic"],
["blue", "screen"],
["kernel", "oops"],
["seg", "fault"],
["bus", "error"],
["illegal", "op"],
["trap", "divide"],
["trap", "debug"],
["trap", "nmi"],
["trap", "break"],
["trap", "overflow"],
["trap", "bound"],
["trap", "invalid"],
["trap", "device"],
["trap", "double"],
["trap", "copro"],
["trap", "tss"],
["trap", "segment"],
["trap", "stack"],
["trap", "general"],
["trap", "page"],
["trap", "x87"],
["trap", "align"],
["trap", "machine"],
["trap", "simd"],
["trap", "virtual"],
["security", "check"],
["stack", "cookie"],
["aslr", "bypass"],
["dep", "bypass"],
["cfg", "bypass"],
["cet", "bypass"],
["shadow", "stack"],
["control", "flow"],
["indirect", "call"],
["jump", "oriented"],
["call", "oriented"],
["data", "oriented"],
["counterfeit", "obj"],
["use", "after"],
["heap", "feng"],
["house", "spirit"],
["house", "lore"],
["house", "force"],
["fast", "bin"],
["tcache", "poison"],
["unsorted", "bin"],
["large", "bin"],
["small", "bin"],
["mmap", "chunk"],
["top", "chunk"],
["wilderness", "area"],
["arena", "corrupt"],
["thread", "cache"],
["per", "thread"],
["main", "arena"],
],
generateWord(isHeavy) {