From 6cd2502fb54c80fca007953a599a7e3739cf3a3f Mon Sep 17 00:00:00 2001 From: landgreen Date: Tue, 4 Jul 2023 08:14:43 -0700 Subject: [PATCH] sound-bot new community level: dojo by weird_pusheen sound-bot: makes phonon waves updated tech drone repair -> von Neumann probe - if a drones ends near a block it will use that block to repair quantum eraser -> metamaterial absorber: for each mob left alive after you exit a level there is a 17% chance to spawn a power up uncertainty principle: extended to super balls aperture: camera zooms in and out along with the skin animation balanced tech: cordyceps: zombies are much smarter, faster, do more damage, and last longer negative entropy -> self-assembly: 1 heal per 33->25% missing health on each new level renormalization: 44 -> 46% and +3% JUNK tech to pool parasitism: 60 -> 83% damage non-renewables: 67 -> 78% damage ground state: 200 -> 266 max energy dark patterns: 17 -> 22% damage and JUNK eternalism: 30 -> 24% damage stimulated emission 15 -> 17% duplication nitinol 30 -> 22% defense bug fixes --- img/Higgs mechanism.webp | Bin 30490 -> 34960 bytes img/dead reckoning.webp | Bin 14030 -> 46800 bytes ...eraser.webp => metamaterial absorber.webp} | Bin img/negative entropy.webp | Bin 58028 -> 0 bytes img/self-assembly.webp | Bin 0 -> 62788 bytes img/sound-bot upgrade.webp | Bin 0 -> 54826 bytes img/sound-bot.webp | Bin 0 -> 53756 bytes img/von Neumann probe.webp | Bin 0 -> 38870 bytes js/bullet.js | 699 ++++++++++++------ js/index.js | 1 + js/level.js | 509 ++++++++++++- js/mob.js | 6 +- js/player.js | 14 +- js/powerup.js | 4 +- js/simulation.js | 54 +- js/spawn.js | 120 +-- js/tech.js | 190 +++-- todo.txt | 215 ++---- 18 files changed, 1208 insertions(+), 604 deletions(-) rename img/{quantum eraser.webp => metamaterial absorber.webp} (100%) delete mode 100644 img/negative entropy.webp create mode 100644 img/self-assembly.webp create mode 100644 img/sound-bot upgrade.webp create mode 100644 img/sound-bot.webp create mode 100644 img/von Neumann probe.webp diff --git a/img/Higgs mechanism.webp b/img/Higgs mechanism.webp index 4d7c71ff6e98beae0100c55c9d50f4781df9c7ca..26ede450cd791a9a2fbb6cc48d7ebdcbc226a974 100644 GIT binary patch literal 34960 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

RVOuE}b~6Q(*@n%443 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 literal 30490 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 diff --git a/img/dead reckoning.webp b/img/dead reckoning.webp index aca40a0180d3da3f1fb32ad95017868e81a76878..05e9abff1a0ef5daca0aeffbe245a10b64f63302 100644 GIT binary patch literal 46800 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 L4y{)t0KoqMHafz( diff --git a/img/quantum eraser.webp b/img/metamaterial absorber.webp similarity index 100% rename from img/quantum eraser.webp rename to img/metamaterial absorber.webp diff --git a/img/negative entropy.webp b/img/negative entropy.webp deleted file mode 100644 index a64846be1465401cd5219661229b644414d56bc8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 58028 zcmV(rK<>X%Nk&Gb;s5|wMM6+kP&go%;s5|JJOP~nDu4k10X_r)asU7bmd4&D|4+8H ziI4zlk@+<*DV-aCZM%aruacOup8ZyzugCs0e&&Cf`6uB%Y5PO>Kk;AHf3SbG|4;GP z{x5@E(fkIrB6|HJ zf4cwg^gsPq{Kx(8^dISe{r|Z83I1{Yll~v=7yj?{|NsC0{s4c?|KaQb{{#QWx!>>) z-p(Gr6n?||U+kxt|B8Hn^l$C|tN+|T=zo>?to}Fi55(`P{{8+R@;mp7ic`oF9X zo&SURci^wO|CRqc{$JP^)-RfWZvNr^BmBSizy4q9ewzMs{DD`tKpXv;T|#iT-={5B$&A5Apx!Ki_}5f0+Ll{rmqH z`ai~R=Kt9Lm;X2Z+x#d0pZEU_e@Oo4{%ib)`XBb+;D7%A!~FvOG5oLlH}=o*zvln9 z|M>rH_fzx#_owzh{r~27(J$%W-EZ&z{DqzyeNBkQ{XToh<-4=kEq9F`%WN2WR!eVh zao!|8$ly;!ODJMY4@MJYMtCcP&8U@Xs`)8EPJL3G@%Q!Uh!FL(N@+&rsKc%=c`IUm zS4kW|g^ye@e3{R&r1@*Y6R*Y-O9S=<^GrAG-b?k6j9Kr==-PC|i&}2B$_ITw`U!vT zwfD5vgK(ub-igc;0dWro3^V6dY#G`@`iL$-C;0^Ee#yzuo`n8C^yxc~dYW*9UK~5o zf8O6*xNHnO{)^vAz2o$6`Ixj{AD9ZH4zv;p^A~uHhrrO`<^+{n=CCuQyFagn| z_AJXW!aR;q&vgG}W9PL%1dNwRIgx`j+I8dj`S>w6$-kb3B>@G-a?2sMxU4A&P}y3K zrgCpWN|4c#(RXKy?|!7d!-ORYwd`en*jM)Lj2G9ltA#8F?RnE3>tOmcfet zu5OO*YD)0HoA`B>J`eU*S+mM&AYu!rF zuZA{g0@o(DI95IKg@sFKc9qr>$b-bU`%2&PU=JSus9^<@4=Nb>JtejscMaeOBL7?@ zo-d%FG^<5niB!DxiSHlI$>`?(BNKL#o#v?|JFkRak#dSmNl#)P zw7ux+|A8Fh+cPz$pHNX`*+Ms?l*&1HIx8}jp0Xz>RW%Qu37T0JXHRCNIY^NkZUvHX zmcIfHYjrSj)_%KClKBs0hY)?3xPQlq1@6_^w{iHW952uUw^-lib7!@yeUQ1!&B_;E zb(-9h{^1_r`KInoy=R4=e1=+I3J=3+(#P-wb@xzL>Oj;qQUq$_#pU)9W{XD{g0?zy zlfQ%WW0ex9l91dBo-;Hf@YH2 z|E!Svin=gjlE;F#ygjaG=N0AQ#3TSjhC?*%6x6elIb>PiK5^@m<-a6gK8a2@0)5i$ zVI!i8^CiBe*9-9rkh45l@_I;&m~v->VHD0&*(%?4pRJ?6Wu>mie-4P-H^Txv+fN+x zZ5_t>Kiej`)QPl#2RfM%^Id0d3-oF6ec*2tIZD%a2I_+*ASWIk>i&|O>Ael?VKlne zM0g(;?-7a)pjE;5=K5b#HyI5*1>Ell%k0J&1Kl3UB7cK*0^zm<^zbk8_H>3&!i z2@upQiUB&=O5dtkGs8j=Cg%-sdJ8dzr@}H!B8CSrZZ(Q{(N?IzWhApi@|N`Crxtl_ zd5$Kcltoo%x zVU8SN?PwtVtn1!D{FbM;4x)bl4{sQ=;W;|zIvhZem#^7-$I@$qff~h6r{j~;?*JeA zZt8fGt>#bU$)(;xGp2H-3~2ci&~8Q=#<5C#bCcPHuUJQbC&;Iqp$#uDwgDx|91 z+h_d_7l=#3RbY@8<}U)9Vyv0`51LkE)rd*J(-De+;x4qYFjhdJkzTU(i`gFL9jOwB{_}1RXu9d(1GL9hd(8!&aw z%(@9r*kmh&;>PI;gEv1IC0VcjWQj2Y)g`Jo!#P3dQj;NwV02|t;;oj~njoKYH$i9m zbrf+eVI*>THEP7eoYO(t$!Y1(Pn2`!sNfR+jtEg;NR60eu$9-7oJnvrO65EB$_SkB z?CGMS(kvA3qG-EsVfiijBY{%}5|O1D>16sWtDU=T4i>S1bBo0l4jiI#Nt5xAlmTr+-m>(Yr|c z6N{M^5m>3@P;-^2GK=(#0092~|1pfq=kk0l%QHm5!nJD(JOrD&Z9=UFm;)bKOvJ?C z5Fb`C_X%I;+>cf~9wVmBr%J_cP47xTH!~&avcdy(VPAG6CFz%N1^}KFOmm})8U)o+ zjc}?8F;SwaCIB~A@p|#g91&9U*KY1+gyMMqczF#$rp`ss?yJc4qJ1kiIkj=sOa4|5ED5!++{afT3 zpOM4&u}bj+^plHu(l|8cfXHR>jm*_cbtkBG=gW zMDQ-GV5Dm~`o-;s?#TwBQP7)=wW1vjnmL*sBZ*;kqnVym1y)4Wc{8c-zwC+9X@33v z1FCWv+yYqjn51D2XlTw9rqkWzKri7xu0w{ceMps1B}ge5?t|Ox4o2glfg|^^h>`Mt zDUGMTm^KIoSM;5#HAk%N_PVb#tgWcpugh~k#G-05pPhrYCw!S%onwSINlRrQEFAgI zc&fqfHZVoaE$<@|+%HM~jrN_~@n$f7y-*eDi0re8poeT@kUcDB@xBF|(3QDd_ z(Fyx+x~}p9#x$IdX@0v}0wF;?Lg*0;HlWC=QS>5PIGnZbAK%ri$eSa@n*iis%pp~~ zG|8zVSPcCmzKLdkR@X;j%}rg|trQ_#F#0a@-#_Id?$&q*i7zzDdS|{;0$Sf-H8M&5 z)^`10dCz*nXxO5Y=QBrupmGUtmHdYzF4k)-5H^A<4%ct~T3!2KmL%zdnX|Q)19P97 zZ4v(1PA9L4IgbYr2i)8!zwpV%AH8_J#Hqw=+_n+G_cXz|02y| zoOlqDD-Ba&7xVj1X9%ziwNx#Y`J1ZJseywJfKjphuq3xHgQrn~Lp!w;;KF<_P@a}r z%JR!d13)fhBrqP43hgsbNl0b9Ywgk{^jdoy?2!B-Ck%4`zjbAG2W9VNMwt+Rfq4Wp z1FbBJ+wwSahBFNwDj!Xh^74|GgGWEd1pA8W1@gW)`3Aw|G)nVkBkNuKrXksQog*q7 z6twz#7`=y$httV{N0^TddrLGpW}X9gt8b_4nYoBbUiI5rCV#rF5V^GTwv1bszP=AW zm^QKr{%;=5H}Av-ChvDtjgX`JEQe9bxidNe_{x)f^lB9fdGM$vAIvB zVkbv5{X6fDU`ZB~#IwG5L-_l?Ghzs63ZKL5kU_5AF^OKIzs6hX$n3ApOG)+^fRVv1 zFQ~qTQq}wbK4;MIJ2Pa#iN>?3@3n#R7|QdRfR2>_A&bnwpjgv{kAc>Iobhj{S{M&C z!?xA#A@UydidQ54Mv3GiON93x5eZ%u>&zAT!}E`yZojH!F-%epfE2R*<%O=pHcBPq z4(8T3VlHuGGiqr3_i0$!KILB;LJ(#BM?9UIX`o7oFI*rubsp;`pEX8hXCSN)VjTbN z8PEPgCb-AKb`56G(+sM%G6YLdjnnh00E^PI$=2I1AvFD8 zq6$ls~27Dyk0L)55KA^(fV z&;Gk1xuig=bUxSenw9^d7jK;QkJL!b2+StBn z%GFF`pin7@|6Q~|?w=8V34K*p3eRcSzMG(dxD#7MeOve}^V2bO&!Q$I!`k;s{WkgV4uF zg)X3E#wm4UVjH=(d6U<>X=I53$24k#cQUbG^yQga-Yrczew|L=JFC_!g$lMaUs|3o zt3fc8snZ+-8Eb+q^loMegZvKWm{|gR&nQb`!=XzdolL?9W&x{u%tEV_VV4JzoqI*- zCRfCj5{-3t>;*jG+Iq`gy)Ao#IM@opv2-A)H(+bl6c;SFJ3&Hv$xsfEb{{%geRfb@C98AK;GXAzT@02fs#qvPL29kXmWPRzwzC zoeyc?8s`E^V8Wr6NAW(0!1Y*0riw*@jT|MmusQg$yc76<=o}~OQOZ+jEapHj;2={2 z@=C#hY_Z;0I#at4%%1{zJR-U@kX>ApT-0gNZav>7*|#ZzKm4=_Z%5dY(1Km;Y;XJj z_sneFc@kn6y?7il@P77x^C^I#m6V329jAkjM8))_uHu(L0^?A<&7tnB8znTW%LuQu zyIZ*=H(bfA*id{iu+tx!+}#p?re5v%#^yVJvjQj15mslXc* zgVN^1iU(Lc0)$Vrn3w(q0}pm3p`HHo#{sM4XFj16AAV~XiX~hb*b7!cewbtLx_ zW=%_Kr9%{E2ZXKoYdDK_^~WUULcX}B{W#`b?$9)Ru7drYhYja*@ zFUVH#CgJ{=FFP;{3Cj{{A>R@8#MRjcqPfjBl=Qh*_r08osg#?E;Ckgk5Bgs>>7n&4 zMabh3MPuk4jl=l@@1K+oAssC@a~$nXcyEoaCZ;=xiPCJRc3GhP^H|bGaLmxgMGYiC zL^X!M8`CbQLfWXlRjG#c?ix`0#%;Xv%OR_vBjCwD#D355(fq#3mB!pYriuvHZiWAj zRXv&GKcpnPD($_n9Gil*L)gwuPWz0b7l8K1<}=flqtY+$lj0NlnqUDLypvmuq4&sQ zbV1@IqwKMZZ{xQ2y)k_PA2y1|=)(kJX;bWO=qZsu9toHu3SK!V*vb+2mLi-A^OpE% zO>jH`XVi8YCqti&BfE|(3E%hLWXm-aA_!r21gmDBK`JkoA6>u#J{vZxY%F{HaTbJU!)X_o zJzqFk?6Y9;^^)pKzb9BVyA75y&+v|*t($$!T~pnUcjgeGR9%FjH;m@XYm5R2x;!^G zAn{a(fJ71xvXq)3WqrfGNRC1~^1m%>jddH>)8>526h6?k%NOUFj`Na>xzyfK76KGL z*-olC8=j0LiU-f+t%j5EZ#fvg5FxG7gc0~M$1O|M(1^vu#5ed1t}@tcPiql+X=`-N z3j|Z_)>S>G3Q1_0|HW4ulhJ$+KgB8~MekR}aANij&{?D5Imuy zyw*RzqB^hsZ>juK<@op-FZTW1Lmm69@i$K*;PS(8yy-=qykB)CEE}8 zwb=P4NF^4OvGo#vH9k57wbrOD z`IaE(WR8tqlr_|KZ7?lb z2MYH%!j(&4e>f3Qdv-j4@?sunK6i@o(H=`mqgC@)Oy4&DTp#=Os9FaPd}1Op&~8WF zk_A6GFsoTW_%@m6Y~M6T{}7ljG4xB4M2C%b@ZGhBq7>1XU}BTTV&a}w79e0W_YT%k zcoCP=J2P)Aj5faMnkJk=YG#tnGC^u?W>!ToLry0NwA7CgzB1D_2Y5Q>uUYx+Jz{Qi z%1LJv(>-Rb@M2GmulY$6i}T?`8HIU6IoXr3hZ^EsK&hYxeGP9U;q&X#u7 zM32vbF3)v2l5VCDv-bltHA5)P{}AGq{XE~Yw(ul1*&1iF#eN`DjOA$>>s=qfrCgCt z0Aki7c~;<0wW+DmSL-N57_%X%K`>cBth+v@O=Od3tal=Tb2vEX2c(85phMn2HJ6z# z%-=Mjc{L-Q1KCz~*r`a8CNY2+Vg+cE*(|l47%^flCmWMu!c1v3DMgZqkPAZE<5pv2 zVPUuCTgu*xcj(Tp83FYnM}CwKL7>Xw;V2&E-E(yS^1X07#nbW8W9JEiRpLrt+!Vn6 zYM&?D9LW*DBhY0=WG(@DkCm`N1W!lTG%4Kvj)>&X#19KC5wNcEX=Tg1}kt2D%XY|%^Xsiu?}YVQhmEdLI&KGBd8e(_IxqiY3bg@ zlS@-K0q<#^fT_x0XRH!95Q4mM<#^|ge9!t3b;9l#VO;1<=Lo)& zAe5N6SRIb%)!R;08-L7K!YkS24=`H8IJ|5E&dQxFUZKTr`85Z zzg=JcXQI5D3}Yx|uWY!QtPxR-x0=`wKS?Q1J_p9*7(U#G3rvE`XpUMNT*8Li-jY=%@-M=Ee;541f%< zZ&&Wmp~=?IgLKr%I8V8v>PTNDOk&ZgqD%8cRWoXCaKe_kHj_{a`5kghZL{hVvj}!A z_s?@BJEN{eGS%nu?Jyk^)Oq@XbVt6Hl&Y-=IkO$RC{p$z0MDK)@FzlDrp`pJCL?-r z&=~0ps_OaTgKiMU%Z5$j7$SW*S?K3NFL8XY<+KPMo3!7=RzancA^Fy{X*v%t96JeFi(2YxL&Fr3Qw(L4jK+x= zR@NvFbkL3Mf$u-&SO*I?m5t-ItpBhkPA0Aanp?3o#sUelh;88TdeVB|P3p}-E1RSw zhLas0h7y{6uy3IhO#%6w{-ma(;vn%RDr1@aIyY=$16**^vx)L@hKo#=nV4AR`_!bU zJfQ9A95)JPc^xMs&6`cD71Bo~zPAj#L-h}V&x40nv>h9Rt817-lka>fW>SHl;^z0t z3f7K2sF1Vp1@f5+lI;#)nE&P6HngV#&=U;rB|V`~K))rs?J}H8skOR^bB2z^CJ8aK z*Rn%fge-DQDQZCv&1RIFYyl< zq~oq?J{`uEV4#7NjP7#}5*$RVFg@TAZl7ahvKI9>DaHE23WC-Eqihp^bj$RvhokLM zOSG2RU|DRL69lOh($Bj}PKfw!WQ&*1`&3CgxCK~J#Bq{ZhLLYp(QQgtv*8_+(7Y>q zGm%+^vA-ZSgR`rOyk4-|X*q5WR+R~BW78eIY1OzT#g6V9yQ4M@Pgu>9lJ zL5`GMzH{79vJ&=7!10P~iZsCl@b7cER<^4dC@4vk?R^59pGSiy|jZAH-XwT?#RG*sqc@X z>z+JB?X3X}fy5e-eIaIFu4iXM5;GgMI^OH>T~ES?%Q4e?)uqwEd44Q-c>#h^R{Us@ z*8Zs56YB@KctW@)a}&->lof36V0l0OiTTacn_}rkzFlBsPV5qIGzV+jn+Gi1wM;S# z6q@B1ajd!dXC#c1rS+cE_IH-&eg&_bQEib1ZU*9pEG*6;AaXyVNZR|@eSOWC@^9=u zVx~+jN|f1uk^dWIM;>UMKOF0~D8*E)&wl__B6bx(Nwc^9EztzCUgG$5fY?q$3;nt@ z`A*g&H~*L7nqN|FFA$Yhq{VNqs%P;D15HK^eLoo-?IN6eUVe>9EEyVik)^E* z?boyFV$uh{%+CX5nG^X4)XvaS7OQ{<3ZOpSjDA? zyzH5J@-?q>)(3wX|DF_jBt@*e(8f68nz<_Wwxe{n=}NT(_WtlBpqv9)H>FpMuR}0o z>|&)d@xx$HvlOVt0#w}A@Hg+JgB`7%_ZT$KxMyU zI&1Kjq+HQ-bzWRwU?|(4kF_VAxaV-FnxQXK7cWCaU_V7Q=@gRPcJtd0Cx34zeR|Zd zM-jk+mbx`9^KSIm-p+}yzL?WbmUOp{`CwKY3#&PV`^B0-c{uUS;oXeR=ZnxCak8h$ z7E=dXIHTrRfvc1#3_pGd4MW$UpAny8MvsOqe<$j$`H4Itb0+d2D2fP?p^~Eu&SDc{ zhhY#@6HZ_cSUHnmmQ&nN$z6F9RKkRu{bLcBI@;*q!#{5Wktj)_(=aP*_xvYK{C0)~ z1g*&B3}=8|vL(f#90^G@Da^pv9gFM3%t5UVO8rqt^0XvYZ;+?#@c#~}IJ9@sz1sa! z;Y(E+WBvu<+1Zt zCkE>cch1R7%YWr7zrFO%7GS3$XYkNs$FT8p1h19dmRn)sYYED2CB-T4kg!9LPE*S% zD-A_B%OK|EE*75NXo&>f9DR_7l3D$pKgH=VM_n4|2wsN`5k8(Z2~KDnZKR5C#L&Px z?YyJVJ*aB+gaK!;wOdi&xZ8J>9AH4BSbD_%wA&w3?Q8?{X%k7bR5pDoX3$QeN06O7 zT81_AN{X)C7BYz~k&sT7r_Eh|B=9=K(zzA+6K_=O1uXztF}n>5q&SybzZe0S zxeN{$OZb)cLg=1eWs5R7$L!mkjv~jzw;-~cPb~@KMsl)Qsl?N^atuRP6Qo>Izoe$S zP{cP+n>4zLlY3#{NM?<=+co;Jp&G`St~Tsbw8bBTXH?UrcX=Y8X}gCE{>^37R-QjB zgQn?6YTRVJ9sc4hs`^=AdL#hEm4FQ)Bx3R|?Lc7LgyMwC6VQHIAPq9HI>`HHe&9k~ zKjAdv-yAVZ!5oleikFIAi-_~**2=R)=zxxxJzug+CuDjPKkj*(qW08 zNq>~NpVIh75gw-J2vCJs`3*Mf%7B@A{w&7JnWaw9V=FSp+c;;Bu8OR>W$*Sd%s?U1 z*lmsA@=(|wkziFhDIfm>n0s!9w@O9TkKuvFrhq{I7pdC%G}l|`ZxtmN0R)A+oLw4y z_62QK?SbC7k&N7cGdRCLu+^zV()3Kqpw7bS?Jt2tK8Es_&K}wHxv&Gn3)m4vJ*{=k z39T+MaL8bNsP)WGwI}0NQf~_1^e05EWAIZonKmkNPS5sS70n<&f%1Go(o7^(rtO7O z!%o)ccAVL0Ev3cDz_h{30RroBo1UxpVGcX0v>{-kIP=UkI|C;?Od+Pxb7G~1#HJ1- zOrL^9Z6g9L16GP_JQ@rrX!^U81(Rh=LVG8-o-=CQ`m<>tr-P!iBAQV4G*PJKs5$Iv z{QhvInc2TpSx z^107kjK4(pE6zGB_TLcBeKFU->pyuh{{J4dRuLM7@VD#KTP7)&b4l5eLbKf=)oYN* z(%>ZHbUbWwK-8mF|7hN6YhY!Hi<&3T=lG1NbV{9YAz$X=j?<(w7A2;2eq1wJ(_G=P zEIUzDNe?v_8*XO=AypuSroW%v>3m9UKTga3Wc|{ZpWrXKh)<53 zo#P5oweX!z+VMum6%c6J0A^E^9$QTKjYkOUB?tK6bCdzM}kVS}ZD(E0LIE(4&d%T++7LS&cMzINnC98yv}(vdp>Kr4!pjtKefT|m0tXI+1T#* zHP&8J8Z~j$w(Pb6WcK=qO|z(6)n`R(@#Gv492IJ(62vGv%@!eOOez;me8vk=8rx-f z*k&W*BH4>6zOz0rbM~)#zK#=nx%q!l_Vjs_*!CSmh9|yOW&pTHR35WTX@c%+=V{gw zi}2E!_O1b72^nB5UPRg3g~L6;!Ln7q0zw1zcylE0^Le(c!pWjtdeyUsummJ;XJd-* z^*Iy1hmQD;ICml)SuCNJBYJ8*`8@>Yu@>4wUTbknMm~B1*=X!)aoP`b(}2qOs^gzHFw( zw$qksO`^GDiA_U3N0iSkbp=A2AT2S3lmw_E3Wh3y`(xPylL)L>i^g1xZ^+(u#={9?!y?_+re5p()hjq;No*oc^S;Epso^ zBi9J3QFVKs0sG6omdKHS#G1MXw|TvfLjXL{T&(C%r$^*tM{0gcO-|H6C@kkBIhDUn zIl{@&``kRSd&JeiVAdIB8~>tb*nCSh5;Fab$OzXPzHzG%pB5e0D7zJihiht`CwU|E zj8eeVAcu$IR)U)pu2%$dD`U?r=w2eJuYV|uZ($t-F~<}A1m)>`RA+?+3|{hrYFkaY zg$@KQ@E`4EhCb@Qj*V!sDn_V}l{IS6B$9KF3N|UZ zUv+MPEd&hyq(%coczh+uJr{@Eu73dT<^=;<>k&gPCjw)rtRGonIG>7iyUmZqU*a>v z5cVA{Mu?skq_3tvF7lqmV9+v_TU_{J@|l=CftgY6&`Mc4$QB}^86wVqc~W^S)=1MO zg-$Kggm3Eb4h8m=PI(5}McVLDQE|6s zKP^*duGmzp>=-lY~t9;T;|sa<}Uf1l%7tg&Q{lRT6>2j2s{V?>RRXbk^4-Q1D`B zfao-p;qh^Qv4ifVtu(gi<7$(C-)5)PI%@VNui!$VsPvMPO`<^4{jCH{R`grva0->m z<*#8G&dNMMq6TpeL5ef-t2Rr7wx#1yq^bdq#8r_Bd)k6`vjE=Kd=D{{&ZC+xz9aDD zJ^uic=m~!ljFx8_G+0$`>~9Ww-Jl;q_402M*CYEL^SIwm7f1a52X6pV9R{MgUt$;C z3JQzgMk&%Be2i1~8(Dhfk%QFCP4TgAzE-qXTla3Wl|YbqQ{6mogmQ7Mu{+J2;dB+v zCmr@LUnp0U1gboxAiog`n$D*gr-J43z08~Ef2;eP8(o-HeRX+IEP$*D%Jq>5@Cw$q zR20YdTmUT3Nh?KhSm-?ai~Oh$IPM2G5RYLaj~$_YQfisJoWl5Fv{bwM0K`8ygA8uB zkyhL%Gf}%KFv8*&7}O$&N~I6my)7?;y&ykhYA(A6x_67)&7(g`Tj)|8gMJmz*^F%WB#Gx>Vu{>STUF9f(H63y)Gd7&=SPcHk#zMKBln4iDTwq zj{jD`tjY>_N>8>P4;dIWr6CWW#)P)~w~mD7nNbk=zrOQAd5@#CVcFxtF`jC}K8*xx*T|1ZLfgx{ zIv09+&yqR<`7pflOr3<8-CRL%f{;y%kW-l}{a$mfE3@rrWg1Z0iV$c;MZKIhH&ryg zIGW6~WXU+?Y^_(SS@;0GOU(1_0MlR}9MYVp3XAqy$y?2uE#t@Lqa!lodJxS~POffs z@I`W0Rz=DyJc}YG^NNxUK9YQq$Dl^$zdF&CM|vk{ET8uSx(1)JPArRJmIyyNnkQy@ z+-aJT@Ogzs!tW=DgWdbV@i;8*EmfeCDMX_y%l%{y-1c~VLN$MJO1wjuWtJT*S0NTi z4XHpGmLmJB*aKq+&G>F*5znZy;>hJJeA1BZBvJmdG7)ixizff;fSK^&nB7Ic;-ifd z!{p$BF@D4#@d8(=0gGZ_`H6GGf(nJf(#}9ABh_W}`~M1bLx^fc`QVCS-k~rZw0vxF z!Kty9@nmbvP?(PuiLJhlm2Hf{ECgIygL)eh$Y$q1cg8o#<-5V@ak8&m=y9SI@+h&y z#S-id7*Gx7WhWJZY@$oj+RM)6@zrtyy4~B`(+9sI#}Cb*8D1ximtnCgamd7ab}<5n zA@wdbyB5Ac`P{`X>y{^b!w>RegG6urvi$_P5&1xfPS>PU)c+P;o|A^T{L-1I%+Z$- zJ?o}S^oAU|=l<~WQA$sF5C3=zC!h?q6CN67k(CzdZxcS1c|b z1JFFP_hRO<9HI51uGd{g008(T6syZ8tB0y5Rf$Na{D;W~j&sol1Yq#DC4xb-uRer1mT{Fx4)`#8GwdoaqPfaDc~#e?LkYagxyi(Q2KjiWyW=9Jgq_UsqCsS!S|M)` z_~6P3Mz{gg(Y&Tp1C~cBQ<_GH#p63Z3E6}#edS-@rX*;X+2w%U6Y*pj^i4P)?gLG; zY{%I6vgRAIzVqb`OW{<(^MEc%cB1oeau?5q%^8M`No@Uhj9hHZ>D03`0YfXJtO2UN zA>x<{+lx=TY@OEBTg6&W$MZk!-HDOJxx8Hm8)jV-62&!p1!%!nuVf685|)r(sfmcr7CL!KLVEfxMOn%eo$#wX4r@axf=4VRQqMcc zp8X}(IP#)M5GKV1M!`QpeUANR%Mw&xhQtJ`(@1b`9Ke+eqXWGht)Sk|NuC7BuaCTH zpc3p;qY)EywG~HL&9h6>)=5TP8gadmIev8;>Knm-9no(6y?7m=T75dAh*-LbSKv$% z%D;h#4kiWPUp}xHDk>T<$^deM$opI|R|p`cg+!Zz{9yYcYZT=7l5+^4&myB@$viDG zVx^LtD23?~qMnPa%cV11Y+;&Srg``qSbxE_5Q@_C+604qQ5Uh6R1oO z;#l5}rG?JpBg#I?YnSmopwj<+4H+rnVWzh@btodd2Podrmlrbspj$y_qAu3$4pEAL z2$J3msL9QH5-4BM zz5G`~AJC}}wj+;?5-Zol`O6FfS@{+Czr%VV4`k|oKka#AxmxXEoTBz%-D=wYFDLRM zy0v}UWa73VVSJcUFv`ELdat;1#zH&S7q~nIC{RUPS%frq;Qc7XtlKPO!**XRqjY^K zrsjc>HC%~3voUUjr-AuI1|z*}dAf6vg$n_0Mr{|PKEN4I30+d;6X812bKP+a_A@)= zq3SRBe0tqkPkmM&`lj9CW!2oHDxhlFphl4X>?!~zRuqs67R@SP3x$Kny`1h`R^uD6 zK~OR=#W-sY={fuyihre!M7u;0YhM_dj9?^iJ_r7ON;LNq;B^;omG>DWo~=GPSlN&5 zU*V_E=NQ}1LYFvh@!r49zqEIn;+A>%*s_;u!uaRIFThtjEUpRm`sd`p@~?aI%>HPz zDDKEP#-%wD%R_<7CItOhAJD*7yG8yV*t|fD9VQ98Udy!;rih^%f%hLkj*AcBM z?$>NcKI85XLKmpxOXh!Ofj0vx+@ShX*JFo8)AnDkD{l1f$srR zpbS>T^;?rrQ+k{ZOzQaH3+8d*35VLEo9OSU_R&{)!IIyCIqAH-jKWzW*{KN;RBO*1 z&jMDFd(YyDZI3)Lfmidf_Iq?}_y8V(6#DAGYoTGpp;JIfs;CYuup{X`EkfZUvkcp! zD4nw|`X^AH=Z4oXG5!lt10Mfq`MPTa$V#0WkiPjtmpRDvIRWNj+_p>;PK}!BJqNv` zymlxYur=6w@t`bOH_)2EPd4*>#KS0xR8W)X|4>1#pn_*f6_wknisTZ;BLub(C6L)L z{PBhF2})O5mAJQ}dMyp;8%1>zda#}Ks(J9zLfnECwxD4VDh@tqhtz`(+C(o~H<$W9 zvJ{)=MSCD2QeF&27B>NvWIS5Cb zA8}C})SFxYE*m~%+VVyZxGwMq_epy&$r@S^P7&oG|4;Xws7>ppEt+DQDxD*eKiSd< z_u=9p!ZN2w#x22C>BKPEC8cu-%=@h|`v`D0Y71D~HZ-3>7_QOO?8Dr97vjqFYC&p? zk%@>z(+U9D2L0{|VGudw>x{HZ3$+h0HmJfoue&Us?>g?H1@chnzaqK}^;_K0q(r`p z&LIXvMk)3%9e(rNMbS8{aXNVb&{5}o;t{P>Pv>sDy3Y4^I>SehnGcZE<-e?4#Nl7W z8;NHuacfE+wG*ZA6GUJ!6X4t;)0o(|syE+$hjyt>Q7lKqrzVKcJHh#aR^ee`{SSh; z_M7e7BB8lQqp&Uf1&4jUFH93al`iz7$@JjDLo-3*mex49(l!}`S1SJ%KAx3G%K8rN z(AC996fFInvZdZV7~}e|L2?|^uQv8Yl;8^;hs+ynqH67ERi)bmr@(5U$BbEvV|~}V zf(`65H<6b4PWUz`*<#M-Fc7Px*Y_Un8x=p$v*B;z;cyHXmfy-CS*~W9ojDE!Pat0g zQZiwqkfW5lhb@s-{mv{0bN8o;NI73Z9IiK>f=GL1!(gxi;kKir?$GJ<>cQgI;GQm^ zhx9g+wPyVPi1^{&re(C()dx$(4Riq)X2g-763E90O~z9c!0#+gAav_*XHW``q-#t& zThN|OGv_iBV=nl`&`z!&jfn!L`!mLZYDf@BX|RACcA;dxo?(RP$L ze&`qR8enNiK?MbB&qYPrCHsfn?{7wU7`xzxJp<@ReIW}q-ANe)BG(Ef;t`xWQABpB z*S*~s>j{Aq12+};NjbhQNWy{9r@h-%_AYn_5#C}vy#xpUnJ3mZap}v@af49TWD#gc zyHr0fyF8jUn^&s-H40OX9MRP}Pt7_|<0d^}6%T4Ak3g_D1FD>cB-GELJ#rLKP0BYP ze+%%p4If+Sl{|Y?cX}B>55f{I1)#$!a*2OBkk88K>Oyx`7A_~~(gV056yvMVe{B97x=UNO6Iu9?7_;l^lAUxWAN^eQ zg9XVAogSla1UyhrG(6pd*yLV^0cWyJhzZ9PzIT!&Jt;<+c{EfEUCE?kGgzyW+`bB( zIedrCm3wm5hkm?mfs|;*>}XT+AQB`ps2XHfFqjX_-D!nMRG29}31=F~^7Cs6+A19n z@qaj0^F`85hTpy$Ft$2-Uw)dXS;B&UEGw2gLgvg-(iNf4b{P|}%2bMg1a8es`+UCQ zHMqI0)c1E`H-0~_bMHC4LyLQ!Q5g`&P}!T+{6PD5Mk5|vDs!h89ODfIqCzx40*$ek zmOV@ydve#ePF82o;{75~5igisH|s9747J%7Z?`R1vuL5yBpdpvF+E08#v(y_v{X($ zggbR=f;5L^23CrjmrF7AY7Q{&nRQ6y4L^&sdwdp8bLpjKM^^51tC1}TRIsbnKRG5{ zx7Dq5yOD$-mmEZ(K`wt#%!48I>r{rkBhb$sZUIx c46z_hJ^kTnIKZWA1T&|S5` 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·GyOe<#Nk+U;}>-x;2@yiez2&H=o5UI%` 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 literal 0 HcmV?d00001 diff --git a/img/sound-bot upgrade.webp b/img/sound-bot upgrade.webp new file mode 100644 index 0000000000000000000000000000000000000000..119cbfa123d473ee2524154998353b574c1dc866 GIT binary patch literal 54826 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 reld+$$Hk?N92SbBQOBICGIAHgAoMQ*` literal 0 HcmV?d00001 diff --git a/img/sound-bot.webp b/img/sound-bot.webp new file mode 100644 index 0000000000000000000000000000000000000000..85b39b8a97dfc4923a9fb2bd1a252194fb3ec445 GIT binary patch literal 53756 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 NoKk4^@T7GzfB-|#8TbGI literal 0 HcmV?d00001 diff --git a/img/von Neumann probe.webp b/img/von Neumann probe.webp new file mode 100644 index 0000000000000000000000000000000000000000..7addbb363c5015b76fe24d10f0abc9ac5bf77ac6 GIT binary patch literal 38870 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 u?%}gDanc(mK;&;S5#Z{Jw} literal 0 HcmV?d00001 diff --git a/js/bullet.js b/js/bullet.js index cdf687d..ef2a272 100644 --- a/js/bullet.js +++ b/js/bullet.js @@ -3648,6 +3648,31 @@ const b = { bullet[bullet.length - 1].isMutualismActive = true } }, + delayDrones(where, droneCount = 1) { + let respawnDrones = () => { + if (droneCount > 0) { + requestAnimationFrame(respawnDrones); + if (!simulation.paused && !simulation.isChoosing && m.alive) { + droneCount-- + if (tech.isDroneRadioactive) { + b.droneRadioactive({ x: where.x + 50 * (Math.random() - 0.5), y: where.y + 50 * (Math.random() - 0.5) }, 0) + } else { + b.drone({ x: where.x + 50 * (Math.random() - 0.5), y: where.y + 50 * (Math.random() - 0.5) }, 0) + if (tech.isDroneGrab && deliveryCount > 0) { + const who = bullet[bullet.length - 1] + who.isImproved = true; + const SCALE = 2.25 + Matter.Body.scale(who, SCALE, SCALE); + who.lookFrequency = 30 + Math.floor(11 * Math.random()); + who.endCycle += 3000 * tech.droneCycleReduction * tech.isBulletsLastLonger + deliveryCount-- + } + } + } + } + } + requestAnimationFrame(respawnDrones); + }, drone(where = { x: m.pos.x + 30 * Math.cos(m.angle) + 20 * (Math.random() - 0.5), y: m.pos.y + 30 * Math.sin(m.angle) + 20 * (Math.random() - 0.5) @@ -3693,10 +3718,7 @@ const b = { } else { //move away from target after hitting const unit = Vector.mult(Vector.normalise(Vector.sub(this.position, who.position)), -20) - Matter.Body.setVelocity(this, { - x: unit.x, - y: unit.y - }); + Matter.Body.setVelocity(this, { x: unit.x, y: unit.y }); this.lockedOn = null if (this.endCycle > simulation.cycle + this.deathCycles) { this.endCycle -= 60 @@ -3705,68 +3727,164 @@ const b = { } }, onEnd() { - if (tech.isDroneRespawn && b.inventory.length && b.activeGun === 7 && b.guns[b.activeGun].ammo > 0 && mob.length) { - b.drone({ - x: this.position.x, - y: this.position.y - }, 0) - if (Math.random() < 0.2) { - b.guns[b.activeGun].ammo--; - simulation.updateGunHUD(); + if (tech.isDroneRespawn) { + //are there any nearby bodies nearby that aren't blocked by map? + const canSee = body.filter(a => Matter.Query.ray(map, this.position, a.position).length === 0 && !a.isNotHoldable && Vector.magnitude(Vector.sub(this.position, a.position)) < 70 + 30 * a.mass) + if (canSee.length) { + //find the closest body to the drone from the canSee array + const found = canSee.reduce((a, b) => { + const distA = Vector.magnitude(Vector.sub(this.position, a.position)) + const distB = Vector.magnitude(Vector.sub(this.position, b.position)) + return distA < distB ? a : b + }) + if (found && m.energy > 0.05) { + m.energy -= 0.05 + //remove the body and spawn a new drone + Composite.remove(engine.world, found) + body.splice(body.indexOf(found), 1) + b.delayDrones(found.position, 0.7 * Math.sqrt(found.mass)) + //draw a line from the drone to the body on the canvas + ctx.beginPath(); + ctx.moveTo(this.position.x, this.position.y); + ctx.lineTo(found.position.x, found.position.y); + ctx.strokeStyle = "#000"; + ctx.lineWidth = 2; + ctx.stroke(); + + //animate the block fading away + simulation.ephemera.push({ + name: "droneRespawn", + count: 60, //cycles before it self removes + do() { + this.count-- + if (this.count < 0) simulation.removeEphemera(this.name) + ctx.beginPath(); + let vertices = found.vertices; + ctx.moveTo(vertices[0].x, vertices[0].y); + for (let j = 1; j < vertices.length; j++) { + ctx.lineTo(vertices[j].x, vertices[j].y); + } + ctx.lineTo(vertices[0].x, vertices[0].y); + ctx.lineWidth = 2; + ctx.strokeStyle = `rgba(0,0,0,${this.count / 60})` + ctx.stroke(); + }, + }) + } } } }, - do() { - if (simulation.cycle + this.deathCycles > this.endCycle) { //fall shrink and die - this.force.y += this.mass * 0.0012; - this.restitution = 0.2; - const scale = 0.995; - Matter.Body.scale(this, scale, scale); + doRespawning() { //fall shrink and die + const scale = 0.995; + Matter.Body.scale(this, scale, scale); + if (this.bodyTarget) { + this.force = Vector.mult(Vector.normalise(Vector.sub(this.position, this.bodyTarget.position)), -this.mass * THRUST) } else { - this.force.y += this.mass * 0.0002; - if (!(simulation.cycle % this.lookFrequency)) { - //find mob targets - this.lockedOn = null; - let closeDist = Infinity; - for (let i = 0, len = mob.length; i < len; ++i) { - if ( - !mob[i].isBadTarget && - Matter.Query.ray(map, this.position, mob[i].position).length === 0 && - Matter.Query.ray(body, this.position, mob[i].position).length === 0 && - !mob[i].isInvulnerable - ) { - const TARGET_VECTOR = Vector.sub(this.position, mob[i].position) - const DIST = Vector.magnitude(TARGET_VECTOR); - if (DIST < closeDist) { - closeDist = DIST; - this.lockedOn = mob[i] - } + this.force.y += this.mass * 0.0012; + } + }, + doDieing() { //fall shrink and die + this.force.y += this.mass * 0.0012; + const scale = 0.995; + Matter.Body.scale(this, scale, scale); + }, + do() { + if (simulation.cycle + this.deathCycles > this.endCycle) { + this.restitution = 0.2; + if (tech.isDroneRespawn) { + this.do = this.doRespawning + //make a list of all elements of array body that a ray can be drawn to from the drone + const canSee = body.filter(a => Matter.Query.ray(map, this.position, a.position).length === 0 && !a.isNotHoldable) + if (canSee.length) { + //find the closest body to the drone from the canSee array + const found = canSee.reduce((a, b) => { + const distA = Vector.magnitude(Vector.sub(this.position, a.position)) + const distB = Vector.magnitude(Vector.sub(this.position, b.position)) + return distA < distB ? a : b + }) + if (found) this.bodyTarget = found + } + } else { + this.do = this.doDieing + } + } + + this.force.y += this.mass * 0.0002; + if (!(simulation.cycle % this.lookFrequency)) { + //find mob targets + this.lockedOn = null; + let closeDist = Infinity; + for (let i = 0, len = mob.length; i < len; ++i) { + if ( + !mob[i].isBadTarget && + Matter.Query.ray(map, this.position, mob[i].position).length === 0 && + Matter.Query.ray(body, this.position, mob[i].position).length === 0 && + !mob[i].isInvulnerable + ) { + const TARGET_VECTOR = Vector.sub(this.position, mob[i].position) + const DIST = Vector.magnitude(TARGET_VECTOR); + if (DIST < closeDist) { + closeDist = DIST; + this.lockedOn = mob[i] } } - //blink towards mobs - if (tech.isDroneTeleport && this.lockedOn) { - const sub = Vector.sub(this.lockedOn.position, this.position); - const distMag = Vector.magnitude(sub); - const unit = Vector.normalise(sub) - Matter.Body.setVelocity(this, Vector.mult(unit, Math.max(20, this.speed * 1.5))); - ctx.beginPath(); - ctx.moveTo(this.position.x, this.position.y); - Matter.Body.translate(this, Vector.mult(unit, Math.min(350, distMag - this.lockedOn.radius + 10))); - ctx.lineTo(this.position.x, this.position.y); - ctx.lineWidth = RADIUS * 2; - ctx.strokeStyle = "rgba(0,0,0,0.5)"; - ctx.stroke(); - } - //power ups - if (!this.isImproved && !simulation.isChoosing) { - if (this.lockedOn) { - for (let i = 0, len = powerUp.length; i < len; ++i) { //grab, but don't lock onto nearby power up - if ( - Vector.magnitudeSquared(Vector.sub(this.position, powerUp[i].position)) < 20000 && - (powerUp[i].name !== "heal" || m.health < 0.93 * m.maxHealth || tech.isDroneGrab) && - (powerUp[i].name !== "field" || !tech.isSuperDeterminism) - // &&(b.inventory.length > 1 || powerUp[i].name !== "ammo" || b.guns[b.activeGun].ammo !== Infinity || tech.isDroneGrab) - ) { + } + //blink towards mobs + if (tech.isDroneTeleport && this.lockedOn) { + const sub = Vector.sub(this.lockedOn.position, this.position); + const distMag = Vector.magnitude(sub); + const unit = Vector.normalise(sub) + Matter.Body.setVelocity(this, Vector.mult(unit, Math.max(20, this.speed * 1.5))); + ctx.beginPath(); + ctx.moveTo(this.position.x, this.position.y); + Matter.Body.translate(this, Vector.mult(unit, Math.min(350, distMag - this.lockedOn.radius + 10))); + ctx.lineTo(this.position.x, this.position.y); + ctx.lineWidth = RADIUS * 2; + ctx.strokeStyle = "rgba(0,0,0,0.5)"; + ctx.stroke(); + } + //power ups + if (!this.isImproved && !simulation.isChoosing) { + if (this.lockedOn) { + for (let i = 0, len = powerUp.length; i < len; ++i) { //grab, but don't lock onto nearby power up + if ( + Vector.magnitudeSquared(Vector.sub(this.position, powerUp[i].position)) < 20000 && + (powerUp[i].name !== "heal" || m.health < 0.93 * m.maxHealth || tech.isDroneGrab) && + (powerUp[i].name !== "field" || !tech.isSuperDeterminism) + // &&(b.inventory.length > 1 || powerUp[i].name !== "ammo" || b.guns[b.activeGun].ammo !== Infinity || tech.isDroneGrab) + ) { + //draw pickup for a single cycle + ctx.beginPath(); + ctx.moveTo(this.position.x, this.position.y); + ctx.lineTo(powerUp[i].position.x, powerUp[i].position.y); + ctx.strokeStyle = "#000" + ctx.lineWidth = 4 + ctx.stroke(); + //pick up nearby power ups + powerUps.onPickUp(powerUp[i]); + powerUp[i].effect(); + Matter.Composite.remove(engine.world, powerUp[i]); + powerUp.splice(i, 1); + if (tech.isDroneGrab) { + this.isImproved = true; + const SCALE = 2.25 + Matter.Body.scale(this, SCALE, SCALE); + this.lookFrequency = 30 + Math.floor(11 * Math.random()); + this.endCycle += 3000 * tech.droneCycleReduction * tech.isBulletsLastLonger + } + break; + } + } + } else { + //look for power ups to lock onto + let closeDist = Infinity; + for (let i = 0, len = powerUp.length; i < len; ++i) { + if ( + (powerUp[i].name !== "heal" || m.health < 0.93 * m.maxHealth || tech.isDroneGrab) && + (powerUp[i].name !== "field" || !tech.isSuperDeterminism) + // &&(b.inventory.length > 1 || powerUp[i].name !== "ammo" || b.guns[b.activeGun].ammo !== Infinity || tech.isDroneGrab) + ) { + if (Vector.magnitudeSquared(Vector.sub(this.position, powerUp[i].position)) < 20000 && !simulation.isChoosing) { //draw pickup for a single cycle ctx.beginPath(); ctx.moveTo(this.position.x, this.position.y); @@ -3785,71 +3903,38 @@ const b = { Matter.Body.scale(this, SCALE, SCALE); this.lookFrequency = 30 + Math.floor(11 * Math.random()); this.endCycle += 3000 * tech.droneCycleReduction * tech.isBulletsLastLonger + // this.frictionAir = 0 } break; } - } - } else { - //look for power ups to lock onto - let closeDist = Infinity; - for (let i = 0, len = powerUp.length; i < len; ++i) { + //look for power ups to lock onto if ( - (powerUp[i].name !== "heal" || m.health < 0.93 * m.maxHealth || tech.isDroneGrab) && - (powerUp[i].name !== "field" || !tech.isSuperDeterminism) - // &&(b.inventory.length > 1 || powerUp[i].name !== "ammo" || b.guns[b.activeGun].ammo !== Infinity || tech.isDroneGrab) + Matter.Query.ray(map, this.position, powerUp[i].position).length === 0 && + Matter.Query.ray(body, this.position, powerUp[i].position).length === 0 ) { - if (Vector.magnitudeSquared(Vector.sub(this.position, powerUp[i].position)) < 20000 && !simulation.isChoosing) { - //draw pickup for a single cycle - ctx.beginPath(); - ctx.moveTo(this.position.x, this.position.y); - ctx.lineTo(powerUp[i].position.x, powerUp[i].position.y); - ctx.strokeStyle = "#000" - ctx.lineWidth = 4 - ctx.stroke(); - //pick up nearby power ups - powerUps.onPickUp(powerUp[i]); - powerUp[i].effect(); - Matter.Composite.remove(engine.world, powerUp[i]); - powerUp.splice(i, 1); - if (tech.isDroneGrab) { - this.isImproved = true; - const SCALE = 2.25 - Matter.Body.scale(this, SCALE, SCALE); - this.lookFrequency = 30 + Math.floor(11 * Math.random()); - this.endCycle += 3000 * tech.droneCycleReduction * tech.isBulletsLastLonger - // this.frictionAir = 0 - } - break; - } - //look for power ups to lock onto - if ( - Matter.Query.ray(map, this.position, powerUp[i].position).length === 0 && - Matter.Query.ray(body, this.position, powerUp[i].position).length === 0 - ) { - const TARGET_VECTOR = Vector.sub(this.position, powerUp[i].position) - const DIST = Vector.magnitude(TARGET_VECTOR); - if (DIST < closeDist) { - closeDist = DIST; - this.lockedOn = powerUp[i] - } + const TARGET_VECTOR = Vector.sub(this.position, powerUp[i].position) + const DIST = Vector.magnitude(TARGET_VECTOR); + if (DIST < closeDist) { + closeDist = DIST; + this.lockedOn = powerUp[i] } } } } } } - if (this.lockedOn) { //accelerate towards mobs - this.force = Vector.mult(Vector.normalise(Vector.sub(this.position, this.lockedOn.position)), -this.mass * THRUST) - } else { //accelerate towards mouse - this.force = Vector.mult(Vector.normalise(Vector.sub(this.position, simulation.mouseInGame)), -this.mass * THRUST) - } - // speed cap instead of friction to give more agility - if (this.speed > 6) { - Matter.Body.setVelocity(this, { - x: this.velocity.x * 0.97, - y: this.velocity.y * 0.97 - }); - } + } + if (this.lockedOn) { //accelerate towards mobs + this.force = Vector.mult(Vector.normalise(Vector.sub(this.position, this.lockedOn.position)), -this.mass * THRUST) + } else { //accelerate towards mouse + this.force = Vector.mult(Vector.normalise(Vector.sub(this.position, simulation.mouseInGame)), -this.mass * THRUST) + } + // speed cap instead of friction to give more agility + if (this.speed > 6) { + Matter.Body.setVelocity(this, { + x: this.velocity.x * 0.97, + y: this.velocity.y * 0.97 + }); } } }) @@ -3891,14 +3976,50 @@ const b = { maxRadioRadius: 270 + Math.floor(90 * Math.random()), beforeDmg() { }, onEnd() { - if (tech.isDroneRespawn && b.inventory.length && b.activeGun === 7 && b.guns[b.activeGun].ammo > 0 && mob.length) { - b.droneRadioactive({ - x: this.position.x, - y: this.position.y - }, 0) - if (Math.random() < 0.2) { - b.guns[b.activeGun].ammo--; - simulation.updateGunHUD(); + if (tech.isDroneRespawn) { + //are there any nearby bodies nearby that aren't blocked by map? + const canSee = body.filter(a => Matter.Query.ray(map, this.position, a.position).length === 0 && !a.isNotHoldable && Vector.magnitude(Vector.sub(this.position, a.position)) < 70 + 30 * a.mass) + if (canSee.length) { + //find the closest body to the drone from the canSee array + const found = canSee.reduce((a, b) => { + const distA = Vector.magnitude(Vector.sub(this.position, a.position)) + const distB = Vector.magnitude(Vector.sub(this.position, b.position)) + return distA < distB ? a : b + }) + if (found && m.energy > 0.05) { + m.energy -= 0.1 + //remove the body and spawn a new drone + Composite.remove(engine.world, found) + body.splice(body.indexOf(found), 1) + b.delayDrones(found.position, 0.35 * Math.sqrt(found.mass)) + //draw a line from the drone to the body on the canvas + ctx.beginPath(); + ctx.moveTo(this.position.x, this.position.y); + ctx.lineTo(found.position.x, found.position.y); + ctx.strokeStyle = "#000"; + ctx.lineWidth = 2; + ctx.stroke(); + + //animate the block fading away + simulation.ephemera.push({ + name: "droneRespawn", + count: 60, //cycles before it self removes + do() { + this.count-- + if (this.count < 0) simulation.removeEphemera(this.name) + ctx.beginPath(); + let vertices = found.vertices; + ctx.moveTo(vertices[0].x, vertices[0].y); + for (let j = 1; j < vertices.length; j++) { + ctx.lineTo(vertices[j].x, vertices[j].y); + } + ctx.lineTo(vertices[0].x, vertices[0].y); + ctx.lineWidth = 2; + ctx.strokeStyle = `rgba(0,0,0,${this.count / 60})` + ctx.stroke(); + }, + }) + } } } }, @@ -4074,7 +4195,8 @@ const b = { bullet[me] = Bodies.polygon(where.x, where.y, 12, radius, b.fireAttributes(dir, false)); Composite.add(engine.world, bullet[me]); //add bullet to world Matter.Body.setVelocity(bullet[me], velocity); - Matter.Body.setDensity(bullet[me], 0.0007 + 0.00055 * tech.isSuperHarm); + bullet[me].calcDensity = () => 0.0007 + 0.00055 * tech.isSuperHarm + 0.0004 * tech.isBulletTeleport + Matter.Body.setDensity(bullet[me], bullet[me].calcDensity()); bullet[me].endCycle = simulation.cycle + Math.floor(270 + 90 * Math.random()); bullet[me].minDmgSpeed = 0; bullet[me].restitution = 1; @@ -4086,18 +4208,7 @@ const b = { this.force.y += this.mass * 0.001; if (Matter.Query.collides(this, [player]).length) { this.endCycle = 0 - // let dmg = 0.015 * this.mass * tech.isSuperHarm - // m.damage(dmg); - const drain = m.energy * 0.25 - m.energy -= drain - - // simulation.drawList.push({ //add dmg to draw queue - // x: this.position.x, - // y: this.position.y, - // radius: radius * 3, - // color: "hsla(194, 100%, 43%,0.2)", - // time: 7 - // }); + m.energy -= m.energy * 0.25 simulation.drawList.push({ //add dmg to draw queue x: this.position.x, y: this.position.y, @@ -4113,6 +4224,18 @@ const b = { if (this.cycle > 2) this.do = this.collidePlayerDo this.force.y += this.mass * 0.001; }; + } else if (tech.isBulletTeleport) { + bullet[me].portFrequency = 25 + Math.floor(10 * Math.random()) + bullet[me].nextPortCycle = simulation.cycle + bullet[me].portFrequency + bullet[me].do = function () { + this.force.y += this.mass * 0.001; + if (this.nextPortCycle < simulation.cycle) { //teleport around if you have tech.isBulletTeleport + this.nextPortCycle = simulation.cycle + this.portFrequency + const range = 33 * Math.sqrt(radius) * Math.random() + Matter.Body.setPosition(this, Vector.add(this.position, Vector.rotate({ x: range, y: 0 }, 2 * Math.PI * Math.random()))) + Matter.Body.setVelocity(this, Vector.rotate(this.velocity, 2 * (Math.random() * Math.random() - 0.25))) + } + }; } else { bullet[me].do = function () { this.force.y += this.mass * 0.001; @@ -4133,7 +4256,7 @@ const b = { this.endCycle = 0 } else if (tech.isSuperBounce) { const cycle = () => { - Matter.Body.setDensity(this, (0.0008 + 0.0009 * tech.isSuperHarm) * 1.33); //50% more density and damage + Matter.Body.setDensity(bullet[me], bullet[me].calcDensity() * 1.33);//33% more density and damage this.endCycle = simulation.cycle + Math.floor(300 + 90 * Math.random()); //reset to full duration of time Matter.Body.setVelocity(this, Vector.mult(Vector.normalise(this.velocity), 60)); //reset to high velocity @@ -4848,7 +4971,7 @@ const b = { // ************************************************************************************************** // ************************************************************************************************** totalBots() { - return tech.dynamoBotCount + tech.foamBotCount + tech.nailBotCount + tech.laserBotCount + tech.boomBotCount + tech.orbitBotCount + tech.plasmaBotCount + tech.missileBotCount + return tech.dynamoBotCount + tech.foamBotCount + tech.soundBotCount + tech.nailBotCount + tech.laserBotCount + tech.boomBotCount + tech.orbitBotCount + tech.plasmaBotCount + tech.missileBotCount }, hasBotUpgrade() { return tech.isNailBotUpgrade + tech.isFoamBotUpgrade + tech.isBoomBotUpgrade + tech.isLaserBotUpgrade + tech.isOrbitBotUpgrade + tech.isDynamoBotUpgrade @@ -4898,6 +5021,10 @@ const b = { tech.foamBotCount-- return } + if (tech.soundBotCount > 1) { + tech.soundBotCount-- + return + } if (tech.boomBotCount > 1) { tech.boomBotCount-- return @@ -4924,6 +5051,7 @@ const b = { tech.laserBotCount = 0 tech.nailBotCount = 0 tech.foamBotCount = 0 + tech.soundBotCount = 0 tech.boomBotCount = 0 tech.orbitBotCount = 0 tech.missileBotCount = 0 @@ -4945,6 +5073,10 @@ const b = { x: player.position.x + 50 * (Math.random() - 0.5), y: player.position.y + 50 * (Math.random() - 0.5) }, false) + for (let i = 0; i < tech.soundBotCount; i++) b.soundBot({ + x: player.position.x + 50 * (Math.random() - 0.5), + y: player.position.y + 50 * (Math.random() - 0.5) + }, false) for (let i = 0; i < tech.boomBotCount; i++) b.boomBot({ x: player.position.x + 50 * (Math.random() - 0.5), y: player.position.y + 50 * (Math.random() - 0.5) @@ -4968,13 +5100,16 @@ const b = { } }, randomBot(where = player.position, isKeep = true, isLaser = true) { - if (Math.random() < 0.5) { //chance to match scrap bot to your upgrade + if (Math.random() < 0.5) { //chance to match bot to your upgrade if (tech.isNailBotUpgrade) { //check for upgrades first b.nailBot(where, isKeep) if (isKeep) tech.nailBotCount++; } else if (tech.isFoamBotUpgrade) { b.foamBot(where, isKeep) if (isKeep) tech.foamBotCount++; + } else if (tech.isSoundBotUpgrade) { + b.soundBot(where, isKeep) + if (isKeep) tech.soundBotCount++; } else if (tech.isBoomBotUpgrade) { b.boomBot(where, isKeep) if (isKeep) tech.boomBotCount++; @@ -4987,7 +5122,10 @@ const b = { } else if (tech.isDynamoBotUpgrade) { b.dynamoBot(where, isKeep) if (isKeep) tech.dynamoBotCount++; - } else if (Math.random() < 0.166 && isLaser) { //random + } else if (Math.random() < 0.143) { //random + b.soundBot(where, isKeep) + if (isKeep) tech.soundBotCount++; + } else if (Math.random() < 0.166 && isLaser) { b.laserBot(where, isKeep) if (isKeep) tech.laserBotCount++; } else if (Math.random() < 0.2) { @@ -5006,8 +5144,11 @@ const b = { b.boomBot(where, isKeep) if (isKeep) tech.boomBotCount++; } - } else { //else don't match scrap bot to upgrade - if (Math.random() < 0.166 && isLaser) { //random + } else { //else don't match bot to upgrade + if (Math.random() < 0.143) { //random + b.soundBot(where, isKeep) + if (isKeep) tech.soundBotCount++; + } else if (Math.random() < 0.166 && isLaser) { //random b.laserBot(where, isKeep) if (isKeep) tech.laserBotCount++; } else if (Math.random() < 0.2) { @@ -5084,7 +5225,7 @@ const b = { if (Vector.magnitude(Vector.sub(this.position, player.position)) < 250 && m.immuneCycle < m.cycle) { //give energy Matter.Body.setAngularVelocity(this, this.spin) if (this.isUpgraded) { - m.energy += 0.115 + m.energy += 0.12 simulation.drawList.push({ //add dmg to draw queue x: this.position.x, y: this.position.y, @@ -5093,7 +5234,7 @@ const b = { time: simulation.drawTime }); } else { - m.energy += 0.035 + m.energy += 0.04 simulation.drawList.push({ //add dmg to draw queue x: this.position.x, y: this.position.y, @@ -5148,10 +5289,7 @@ const b = { Composite.add(engine.world, bullet[me]); //add bullet to world b.setDynamoBotDelay() }, - nailBot(position = { - x: player.position.x + 50 * (Math.random() - 0.5), - y: player.position.y + 50 * (Math.random() - 0.5) - }, isConsole = true) { + nailBot(position = { x: player.position.x + 50 * (Math.random() - 0.5), y: player.position.y + 50 * (Math.random() - 0.5) }, isConsole = true) { if (isConsole) simulation.makeTextLog(`b.nailBot()`); const me = bullet.length; const dir = m.angle; @@ -5168,7 +5306,7 @@ const b = { minDmgSpeed: 2, // lookFrequency: 56 + Math.floor(17 * Math.random()) - isUpgraded * 20, lastLookCycle: simulation.cycle + 60 * Math.random(), - delay: Math.floor((tech.isNailBotUpgrade ? 20 : 100) * b.fireCDscale), + delay: Math.floor((tech.isNailBotUpgrade ? 18 : 85) * b.fireCDscale), acceleration: 0.005 * (1 + 0.5 * Math.random()), range: 60 * (1 + 0.3 * Math.random()) + 3 * b.totalBots(), endCycle: Infinity, @@ -5199,13 +5337,13 @@ const b = { ) { const unit = Vector.normalise(Vector.sub(Vector.add(mob[i].position, Vector.mult(mob[i].velocity, Math.sqrt(dist) / 60)), this.position)) if (this.isUpgraded) { - const SPEED = 55 + const SPEED = 60 b.nail(this.position, Vector.mult(unit, SPEED)) - this.force = Vector.mult(unit, -0.018 * this.mass) + this.force = Vector.mult(unit, -0.02 * this.mass) } else { - const SPEED = 40 + const SPEED = 45 b.nail(this.position, Vector.mult(unit, SPEED)) - this.force = Vector.mult(unit, -0.01 * this.mass) + this.force = Vector.mult(unit, -0.012 * this.mass) } break; } @@ -5354,7 +5492,7 @@ const b = { if (this.cd < simulation.cycle && !m.isCloak && !(simulation.cycle % this.lookFrequency)) { for (let i = 0, len = mob.length; i < len; i++) { const dist2 = Vector.magnitudeSquared(Vector.sub(this.position, mob[i].position)); - if (dist2 < 1700000 && !mob[i].isBadTarget && Matter.Query.ray(map, this.position, mob[i].position).length === 0 && !mob[i].isInvulnerable) { + if (dist2 < 1600000 && !mob[i].isBadTarget && Matter.Query.ray(map, this.position, mob[i].position).length === 0 && !mob[i].isInvulnerable) { this.fireTarget = Vector.add(mob[i].position, Vector.mult(mob[i].velocity, Math.sqrt(dist2) / 60)) //set target to where the mob will be in 1 second this.fire() break; @@ -5414,6 +5552,172 @@ const b = { }) Composite.add(engine.world, bullet[me]); //add bullet to world }, + soundBot(position = { x: player.position.x + 50 * (Math.random() - 0.5), y: player.position.y + 50 * (Math.random() - 0.5) }, isConsole = true) { + if (isConsole) simulation.makeTextLog(`b.soundBot()`); + const me = bullet.length; + const dir = m.angle; + bullet[me] = Bodies.rectangle(position.x, position.y, 12, 30, { + isUpgraded: tech.isSoundBotUpgrade, + botType: "sound", + angle: dir, + friction: 0, + frictionStatic: 0, + frictionAir: 0.05, + restitution: 0.6 * (1 + 0.5 * Math.random()), + dmg: 0, // 0.14 //damage done in addition to the damage from momentum + minDmgSpeed: 2, + lookFrequency: 17 + Math.floor(7 * Math.random()) - 10 * tech.isSoundBotUpgrade, + cd: 0, + fireCount: 0, + fireLimit: 5 + 3 * tech.isSoundBotUpgrade, + delay: Math.floor((90 + (tech.isSoundBotUpgrade ? 0 : 90)) * b.fireCDscale),// + 30 - 20 * tech.isFoamBotUpgrade,//20 + Math.floor(85 * b.fireCDscale) - 20 * tech.isFoamBotUpgrade, + acceleration: 0.005 * (1 + 0.5 * Math.random()), + range: 60 * (1 + 0.3 * Math.random()) + 3 * b.totalBots(), //how far from the player the bot will move + endCycle: Infinity, + classType: "bullet", + collisionFilter: { + category: cat.bullet, + mask: b.totalBots() < 50 ? cat.map | cat.body | cat.bullet | cat.mob | cat.mobBullet | cat.mobShield : cat.map | cat.body | cat.mob | cat.mobBullet | cat.mobShield //if over 50 bots, they no longer collide with each other + }, + beforeDmg() { }, + onEnd() { }, + fireTarget: { x: 0, y: 0 }, + waves: [], + phononWaveCD: 0, + addWave(where, angle) { + const halfArc = 0.2 * (tech.isBulletTeleport ? 0.66 + (Math.random() - 0.5) : 1) + 0.05 * tech.isSoundBotUpgrade //6.28 is a full circle, but these arcs needs to stay small because we are using small angle linear approximation, for collisions + this.waves.push({ + position: where, + angle: angle - halfArc, //used in drawing ctx.arc + unit1: { x: Math.cos(angle - halfArc), y: Math.sin(angle - halfArc) }, //used for collision + unit2: { x: Math.cos(angle + halfArc), y: Math.sin(angle + halfArc) }, //used for collision + arc: halfArc * 2, + radius: 25, + resonanceCount: 0, + dmg: (tech.isUpgraded ? 3 : 1.5) * m.dmgScale * tech.wavePacketDamage * tech.waveBeamDamage * (tech.isBulletTeleport ? 1.5 : 1), + }) + }, + fire() { + if (!(simulation.cycle % (6 - 2 * tech.isSoundBotUpgrade))) { + this.fireCount++ + if (this.fireCount > this.fireLimit) { + this.fireCount = 0 + this.cd = simulation.cycle + this.delay; + } + this.addWave({ x: this.position.x, y: this.position.y }, Math.atan2(this.fireTarget.y - this.position.y, this.fireTarget.x - this.position.x) + tech.isBulletTeleport * 0.3 * (Math.random() - 0.5)) //add wave to waves array + //face target + Matter.Body.setAngle(this, Vector.angle(this.position, this.fireTarget)); + } + }, + do() { + if (this.fireCount === 0) { //passive mode: look for targets and following player + const distanceToPlayer = Vector.magnitude(Vector.sub(this.position, m.pos)) + if (distanceToPlayer > this.range) { //if far away move towards player + this.force = Vector.mult(Vector.normalise(Vector.sub(m.pos, this.position)), this.mass * this.acceleration) + } else { //close to player + Matter.Body.setVelocity(this, Vector.add(Vector.mult(this.velocity, 0.90), Vector.mult(player.velocity, 0.17))); //add player's velocity + } + if (this.cd < simulation.cycle && !m.isCloak && !(simulation.cycle % this.lookFrequency)) { + for (let i = 0, len = mob.length; i < len; i++) { + const dist2 = Vector.magnitudeSquared(Vector.sub(this.position, mob[i].position)); + if (dist2 < 1300000 && !mob[i].isBadTarget && (Matter.Query.ray(map, this.position, mob[i].position).length === 0 || dist2 < 300000) && !mob[i].isInvulnerable) { + this.fireTarget = Vector.add(mob[i].position, Vector.mult(mob[i].velocity, Math.sqrt(dist2) / 60)) //set target to where the mob will be in 1 second + this.fire() + break; + } + } + } + } else { //fire mode: quickly fire at targets and doesn't follow player + this.fire() + } + if (!m.isBodiesAsleep) { //update current waves + ctx.strokeStyle = "rgba(0,0,0,0.6)" //"000"; + ctx.lineWidth = 2 * tech.wavePacketDamage + ctx.beginPath(); + const end = 1200 * tech.isBulletsLastLonger + //this does less damage than the player phonon waves 2.3 -> 2 + for (let i = this.waves.length - 1; i > -1; i--) { + const v1 = Vector.add(this.waves[i].position, Vector.mult(this.waves[i].unit1, this.waves[i].radius)) + const v2 = Vector.add(this.waves[i].position, Vector.mult(this.waves[i].unit2, this.waves[i].radius)) + //draw wave + ctx.moveTo(v1.x, v1.y) + ctx.arc(this.waves[i].position.x, this.waves[i].position.y, this.waves[i].radius, this.waves[i].angle, this.waves[i].angle + this.waves[i].arc); + //using small angle linear approximation of circle arc, this will not work if the arc gets large // https://stackoverflow.com/questions/13652518/efficiently-find-points-inside-a-circle-sector + let hits = Matter.Query.ray(mob, v1, v2, 50) + for (let j = 0; j < hits.length; j++) { + const who = hits[j].body + if (!who.isShielded) { + who.force.x += 0.01 * (Math.random() - 0.5) * who.mass + who.force.y += 0.01 * (Math.random() - 0.5) * who.mass + Matter.Body.setVelocity(who, { x: who.velocity.x * 0.95, y: who.velocity.y * 0.95 }); + let vertices = who.vertices; + const vibe = 50 + who.radius * 0.15 + ctx.moveTo(vertices[0].x + vibe * (Math.random() - 0.5), vertices[0].y + vibe * (Math.random() - 0.5)); + for (let j = 1; j < vertices.length; j++) ctx.lineTo(vertices[j].x + vibe * (Math.random() - 0.5), vertices[j].y + vibe * (Math.random() - 0.5)); + ctx.lineTo(vertices[0].x + vibe * (Math.random() - 0.5), vertices[0].y + vibe * (Math.random() - 0.5)); + who.locatePlayer(); + who.damage(this.waves[i].dmg / Math.pow(who.radius, 0.33)); + + + if (tech.isPhononWave && this.phononWaveCD < m.cycle) { + this.phononWaveCD = m.cycle + 10 * (1 + this.waves[i].resonanceCount) + let closestMob, dist + let range = end - 30 * this.waves[i].resonanceCount + for (let i = 0, len = mob.length; i < len; i++) { + if (who !== mob[i] && !mob[i].isBadTarget && !mob[i].isInvulnerable) { + dist = Vector.magnitude(Vector.sub(who.position, mob[i].position)); + if (dist < range) { + closestMob = mob[i] + range = dist + } + } + } + if (closestMob) { //add wave to waves array + this.addWave(who.position, Math.atan2(closestMob.position.y - who.position.y, closestMob.position.x - who.position.x) + tech.isBulletTeleport * 0.3 * (Math.random() - 0.5)) + } else { + this.addWave(who.position, Math.random() * Math.PI) + } + this.waves[this.waves.length - 1].resonanceCount = this.waves[i].resonanceCount + 1 + break + } + } + } + + hits = Matter.Query.ray(body, v1, v2, 50) //Matter.Query.ray(bodies, startPoint, endPoint, [rayWidth]) + for (let j = 0, len = Math.min(30, hits.length); j < len; j++) { + const who = hits[j].body + //make them shake around + who.force.x += 0.01 * (Math.random() - 0.5) * who.mass + who.force.y += (0.01 * (Math.random() - 0.5) - simulation.g * 0.25) * who.mass //remove force of gravity + let vertices = who.vertices; + const vibe = 25 + ctx.moveTo(vertices[0].x + vibe * (Math.random() - 0.5), vertices[0].y + vibe * (Math.random() - 0.5)); + for (let j = 1; j < vertices.length; j++) { + ctx.lineTo(vertices[j].x + vibe * (Math.random() - 0.5), vertices[j].y + vibe * (Math.random() - 0.5)); + } + ctx.lineTo(vertices[0].x + vibe * (Math.random() - 0.5), vertices[0].y + vibe * (Math.random() - 0.5)); + + if (tech.isPhononBlock && !who.isNotHoldable && who.speed < 5 && who.angularSpeed < 0.1) { + if (Math.random() < 0.5) b.targetedBlock(who, 50 - Math.min(25, who.mass * 3)) // targetedBlock(who, speed = 50 - Math.min(20, who.mass * 2), range = 1600) { + // Matter.Body.setAngularVelocity(who, (0.25 + 0.12 * Math.random()) * (Math.random() < 0.5 ? -1 : 1)); + who.torque += who.inertia * 0.001 * (Math.random() - 0.5) + } + } + + this.waves[i].radius += tech.waveBeamSpeed * 2 + if (this.waves[i].radius > end - 30 * this.waves[i].resonanceCount) { + this.waves.splice(i, 1) //end + } + } + ctx.stroke(); + } + + + + } + }) + Composite.add(engine.world, bullet[me]); //add bullet to world + }, laserBot(position = { x: player.position.x + 50 * (Math.random() - 0.5), y: player.position.y + 50 * (Math.random() - 0.5) @@ -5823,15 +6127,7 @@ const b = { //calculate laser collision let best; let range = tech.isPlasmaRange * (120 + 300 * Math.sqrt(Math.random())) - const path = [{ - x: this.position.x, - y: this.position.y - }, - { - x: this.position.x + range * unit.x, - y: this.position.y + range * unit.y - } - ]; + const path = [{ x: this.position.x, y: this.position.y }, { x: this.position.x + range * unit.x, y: this.position.y + range * unit.y }]; const vertexCollision = function (v1, v1End, domain) { for (let i = 0; i < domain.length; ++i) { let vertices = domain[i].vertices; @@ -5890,7 +6186,7 @@ const b = { y: best.y }; if (best.who.alive) { - const dmg = 0.75 * m.dmgScale; //********** SCALE DAMAGE HERE ********************* + const dmg = 0.9 * m.dmgScale; //********** SCALE DAMAGE HERE ********************* best.who.damage(dmg); best.who.locatePlayer(); //push mobs away @@ -6747,7 +7043,6 @@ const b = { have: false, wavePacketCycle: 0, delay: 40, - propagationRate: 20, phononWaveCD: 0, waves: [], //used in longitudinal mode chooseFireMethod() { //set in simulation.startGame @@ -6771,7 +7066,7 @@ const b = { ctx.strokeStyle = "rgba(0,0,0,0.6)" //"000"; ctx.lineWidth = 2 * tech.wavePacketDamage ctx.beginPath(); - const end = 700 * Math.sqrt(tech.isBulletsLastLonger) * Math.pow(0.93, tech.waveReflections) // / Math.sqrt(tech.waveReflections * 0.5) //should equal about 1060 + const end = 700 * Math.sqrt(tech.isBulletsLastLonger) const damage = 2.3 * m.dmgScale * tech.wavePacketDamage * tech.waveBeamDamage * (tech.isBulletTeleport ? 1.43 : 1) * (tech.isInfiniteWaveAmmo ? 0.75 : 1) //damage is lower for large radius mobs, since they feel the waves longer for (let i = this.waves.length - 1; i > -1; i--) { @@ -6815,8 +7110,6 @@ const b = { this.waves.push({ position: mob[j].position, radius: 25, - reflection: 1, - expanding: true, resonanceCount: this.waves[i].resonanceCount + 1, }) } @@ -6848,16 +7141,10 @@ const b = { } } } - this.waves[i].radius += 0.9 * tech.waveBeamSpeed * this.waves[i].expanding //expand / move + this.waves[i].radius += 0.9 * tech.waveBeamSpeed //expand / move // if (this.waves[i].radius > end) this.waves.splice(i, 1) //end if (this.waves[i].radius > end - 30 * this.waves[i].resonanceCount) { //* Math.pow(0.9, this.waves[i].resonanceCount) - this.waves[i].expanding = -1 - this.waves[i].reflection-- - if (this.waves[i].reflection < 1) this.waves.splice(i, 1) //end - } else if (this.waves[i].radius < 25) { - this.waves[i].expanding = 1 - this.waves[i].reflection-- - if (this.waves[i].reflection < 1) this.waves.splice(i, 1) //end + this.waves.splice(i, 1) //end } } ctx.stroke(); @@ -6866,13 +7153,8 @@ const b = { fire360Longitudinal() { m.fireCDcycle = m.cycle + Math.floor((m.crouch ? 4 : 8) * b.fireCDscale); // cool down this.waves.push({ - position: { - x: m.pos.x, - y: m.pos.y, - }, + position: { x: m.pos.x, y: m.pos.y, }, radius: 25, - reflection: tech.waveReflections, - expanding: true, resonanceCount: 0 //used with tech.isPhononWave }) }, @@ -6881,8 +7163,7 @@ const b = { ctx.strokeStyle = "rgba(0,0,0,0.6)" //"000"; ctx.lineWidth = 2 * tech.wavePacketDamage ctx.beginPath(); - // const end = 1100 * tech.isBulletsLastLonger / Math.sqrt(tech.waveReflections * 0.5) //should equal about 1767 - const end = 1100 * tech.isBulletsLastLonger * Math.pow(0.93, tech.waveReflections) //should equal about 1767 + const end = 1100 * tech.isBulletsLastLonger const damage = 2.3 * m.dmgScale * tech.wavePacketDamage * tech.waveBeamDamage * (tech.isBulletTeleport ? 1.4 : 1) * (tech.isInfiniteWaveAmmo ? 0.75 : 1) //damage is lower for large radius mobs, since they feel the waves longer for (let i = this.waves.length - 1; i > -1; i--) { const v1 = Vector.add(this.waves[i].position, Vector.mult(this.waves[i].unit1, this.waves[i].radius)) @@ -6897,10 +7178,7 @@ const b = { if (!who.isShielded) { who.force.x += 0.01 * (Math.random() - 0.5) * who.mass who.force.y += 0.01 * (Math.random() - 0.5) * who.mass - Matter.Body.setVelocity(who, { //friction - x: who.velocity.x * 0.95, - y: who.velocity.y * 0.95 - }); + Matter.Body.setVelocity(who, { x: who.velocity.x * 0.95, y: who.velocity.y * 0.95 }); let vertices = who.vertices; const vibe = 50 + who.radius * 0.15 ctx.moveTo(vertices[0].x + vibe * (Math.random() - 0.5), vertices[0].y + vibe * (Math.random() - 0.5)); @@ -6909,7 +7187,6 @@ const b = { who.locatePlayer(); who.damage(damage / Math.sqrt(who.radius)); - // if (tech.isPhononWave && (!who.alive || this.waves.length < 30 + 30 * Math.random()) && m.fireCDcycle < m.cycle) { // if (tech.isPhononWave && this.phononWaveCD < m.cycle) { this.phononWaveCD = m.cycle + 8 * (1 + this.waves[i].resonanceCount) const halfArc = 0.27 //6.28 is a full circle, but these arcs needs to stay small because we are using small angle linear approximation, for collisions @@ -6933,18 +7210,10 @@ const b = { this.waves.push({ position: who.position, angle: angle - halfArc, //used in drawing ctx.arc - unit1: { - x: Math.cos(angle - halfArc), - y: Math.sin(angle - halfArc) - }, //used for collision - unit2: { - x: Math.cos(angle + halfArc), - y: Math.sin(angle + halfArc) - }, //used for collision + unit1: { x: Math.cos(angle - halfArc), y: Math.sin(angle - halfArc) }, //used for collision + unit2: { x: Math.cos(angle + halfArc), y: Math.sin(angle + halfArc) }, //used for collision arc: halfArc * 2, radius: 25, - reflection: 1, - expanding: 1, resonanceCount: this.waves[i].resonanceCount + 1 }) } @@ -6952,13 +7221,11 @@ const b = { } hits = Matter.Query.ray(body, v1, v2, 50) //Matter.Query.ray(bodies, startPoint, endPoint, [rayWidth]) - // for (let j = 0; j < hits.length; j++) { for (let j = 0, len = Math.min(30, hits.length); j < len; j++) { const who = hits[j].body //make them shake around who.force.x += 0.01 * (Math.random() - 0.5) * who.mass who.force.y += (0.01 * (Math.random() - 0.5) - simulation.g * 0.25) * who.mass //remove force of gravity - let vertices = who.vertices; const vibe = 25 ctx.moveTo(vertices[0].x + vibe * (Math.random() - 0.5), vertices[0].y + vibe * (Math.random() - 0.5)); @@ -6973,17 +7240,10 @@ const b = { who.torque += who.inertia * 0.001 * (Math.random() - 0.5) } } - // ctx.stroke(); //draw vibes - this.waves[i].radius += tech.waveBeamSpeed * 1.8 * this.waves[i].expanding //expand / move + this.waves[i].radius += tech.waveBeamSpeed * 1.8 //expand / move if (this.waves[i].radius > end - 30 * this.waves[i].resonanceCount) { - this.waves[i].expanding = -1 - this.waves[i].reflection-- - if (this.waves[i].reflection < 1) this.waves.splice(i, 1) //end - } else if (this.waves[i].radius < 25) { - this.waves[i].expanding = 1 - this.waves[i].reflection-- - if (this.waves[i].reflection < 1) this.waves.splice(i, 1) //end + this.waves.splice(i, 1) //end } } ctx.stroke(); @@ -6992,29 +7252,14 @@ const b = { fireLongitudinal() { m.fireCDcycle = m.cycle + Math.floor((m.crouch ? 4 : 8) * b.fireCDscale); // cool down const halfArc = (m.crouch ? 0.0785 : 0.275) * (tech.isBulletTeleport ? 0.66 + (Math.random() - 0.5) : 1) //6.28 is a full circle, but these arcs needs to stay small because we are using small angle linear approximation, for collisions - // if (tech.isBulletTeleport && Math.random() < 0.04) { - // const scale = 400 * Math.random() - // this.waves[i].position = Vector.add(this.waves[i].position, { x: scale * (Math.random() - 0.5), y: scale * (Math.random() - 0.5) }) - // } const angle = m.angle + tech.isBulletTeleport * 0.3 * (Math.random() - 0.5) this.waves.push({ - position: { - x: m.pos.x + 25 * Math.cos(m.angle), - y: m.pos.y + 25 * Math.sin(m.angle), - }, + position: { x: m.pos.x + 25 * Math.cos(m.angle), y: m.pos.y + 25 * Math.sin(m.angle), }, angle: angle - halfArc, //used in drawing ctx.arc - unit1: { - x: Math.cos(angle - halfArc), - y: Math.sin(angle - halfArc) - }, //used for collision - unit2: { - x: Math.cos(angle + halfArc), - y: Math.sin(angle + halfArc) - }, //used for collision + unit1: { x: Math.cos(angle - halfArc), y: Math.sin(angle - halfArc) }, //used for collision + unit2: { x: Math.cos(angle + halfArc), y: Math.sin(angle + halfArc) }, //used for collision arc: halfArc * 2, radius: 25, - reflection: tech.waveReflections, - expanding: 1, resonanceCount: 0 }) }, diff --git a/js/index.js b/js/index.js index f8467de..05b0913 100644 --- a/js/index.js +++ b/js/index.js @@ -373,6 +373,7 @@ const build = { if (tech.boomBotCount) botText += `
boom-bots: ${tech.boomBotCount}` if (tech.laserBotCount) botText += `
laser-bots: ${tech.laserBotCount}` if (tech.foamBotCount) botText += `
foam-bots: ${tech.foamBotCount}` + if (tech.soundBotCount) botText += `
sound-bots: ${tech.soundBotCount}` if (tech.dynamoBotCount) botText += `
dynamo-bots: ${tech.dynamoBotCount}` if (tech.plasmaBotCount) botText += `
plasma-bots: ${tech.plasmaBotCount}` if (tech.missileBotCount) botText += `
missile-bots: ${tech.missileBotCount}` diff --git a/js/level.js b/js/level.js index e08f8ae..85cc774 100644 --- a/js/level.js +++ b/js/level.js @@ -10,7 +10,7 @@ const level = { // playableLevels: ["pavilion", "pavilion", "pavilion", "pavilion", "pavilion", "pavilion", "pavilion", "pavilion", "pavilion", "pavilion", "pavilion"], //see level.populateLevels: (intro, ... , reservoir or factory, reactor, ... , gauntlet, final) added later playableLevels: ["labs", "rooftops", "skyscrapers", "warehouse", "highrise", "office", "aerie", "satellite", "sewers", "testChamber", "pavilion", "lock"], - communityLevels: ["gauntlet", "stronghold", "basement", "crossfire", "vats", "run", "ngon", "house", "perplex", "coliseum", "tunnel", "islands", "temple", "dripp", "biohazard", "stereoMadness", "yingYang", "staircase", "fortress", "commandeer", "clock", "buttonbutton", "downpour", "superNgonBros", "underpass", "cantilever"], + communityLevels: ["gauntlet", "stronghold", "basement", "crossfire", "vats", "run", "ngon", "house", "perplex", "coliseum", "tunnel", "islands", "temple", "dripp", "biohazard", "stereoMadness", "yingYang", "staircase", "fortress", "commandeer", "clock", "buttonbutton", "downpour", "superNgonBros", "underpass", "cantilever", "dojo"], trainingLevels: ["walk", "crouch", "jump", "hold", "throw", "throwAt", "deflect", "heal", "fire", "nailGun", "shotGun", "superBall", "matterWave", "missile", "stack", "mine", "grenades", "harpoon"], levels: [], start() { @@ -18,7 +18,7 @@ const level = { // simulation.enableConstructMode() //tech.giveTech('motion sickness') //used to build maps in testing mode // simulation.isHorizontalFlipped = true // tech.giveTech("performance") - // level.difficultyIncrease(8 * 4) //30 is near max on hard //60 is near max on why + // level.difficultyIncrease(2 * 4) //30 is near max on hard //60 is near max on why // spawn.setSpawnList(); // spawn.setSpawnList(); // m.maxHealth = m.health = 100 @@ -31,26 +31,30 @@ const level = { // m.energy = 0 // simulation.molecularMode = 2 // m.damage(0.1); - // b.giveGuns("nail gun") //0 nail gun 1 shotgun 2 super balls 3 wave 4 missiles 5 grenades 6 spores 7 drones 8 foam 9 harpoon 10 mine 11 laser - // b.giveGuns("shotgun") //0 nail gun 1 shotgun 2 super balls 3 wave 4 missiles 5 grenades 6 spores 7 drones 8 foam 9 harpoon 10 mine 11 laser + // b.giveGuns("super balls") //0 nail gun 1 shotgun 2 super balls 3 wave 4 missiles 5 grenades 6 spores 7 drones 8 foam 9 harpoon 10 mine 11 laser + // b.giveGuns("drones") //0 nail gun 1 shotgun 2 super balls 3 wave 4 missiles 5 grenades 6 spores 7 drones 8 foam 9 harpoon 10 mine 11 laser // b.guns[3].ammo = 100000000 - // tech.giveTech("iridescence") - // tech.giveTech("cherenkov radiation") - // tech.giveTech("irradiated nails") - // for (let i = 0; i < 6; ++i) tech.giveTech("Lorentz transformation") - // for (let i = 0; i < 1; ++i) tech.giveTech("rivet gun") + // tech.giveTech("von Neumann probe") + // tech.giveTech("path integration") + // tech.giveTech("cordyceps") + // for (let i = 0; i < 1; ++i) tech.giveTech("sympathetic resonance") + // for (let i = 0; i < 1; ++i) tech.giveTech("sound-bot") + // for (let i = 0; i < 1; ++i) tech.giveTech("foam-bot") + // for (let i = 0; i < 1; ++i) tech.giveTech("nail-bot") + // for (let i = 0; i < 1; ++i) tech.giveTech("sound-bot upgrade") + // for (let i = 0; i < 1; ++i) tech.giveTech("nail-bot upgrade") // requestAnimationFrame(() => { for (let i = 0; i < 30; i++) tech.giveTech("laser-bot") }); // for (let i = 0; i < 1; i++) tech.giveTech("laser-bot upgrade") - // for (let i = 0; i < 1; ++i) tech.giveTech("ternary") - // for (let i = 0; i < 3; ++i) tech.giveTech("mechatronics") + // for (let i = 0; i < 1; ++i) tech.giveTech("uncertainty principle") + // for (let i = 0; i < 1; ++i) tech.giveTech("mechanical resonance") // for (let i = 0; i < 3; i++) powerUps.directSpawn(450, -50, "tech"); // for (let i = 0; i < 10; i++) powerUps.directSpawn(1750, -500, "research"); // for (let i = 0; i < 10; i++) powerUps.directSpawn(1750, -500, "coupling"); - // level.subway(); + // level.testing(); // for (let i = 0; i < 2; ++i) spawn.starter(1900, -500, 50) // spawn.sneaker(1900, -500, 25) // spawn.sniper(2000, -450) - // spawn.zombie(1000 + 1000 * Math.random(), -500 + 300 * Math.random(), 30, 5, "white") // zombie(x, y, radius, sides, color) + // spawn.zombie(-3000, -500 + 300 * Math.random(), 30, 5, "white") // zombie(x, y, radius, sides, color) // for (let i = 0; i < 20; ++i) spawn.starter(1000 + 1000 * Math.random(), -500 + 300 * Math.random()) // tech.addJunkTechToPool(2) // tech.tech[322].frequency = 100 @@ -81,8 +85,6 @@ const level = { // for (let i = 0; i < 13; i++) level.nextLevel(); //jump to final boss // lore.unlockTesting(); // tech.giveTech("tinker"); //show junk tech in experiment mode - // simulation.isCheating = false - // m.storeTech() // powerUps.spawn(m.pos.x, m.pos.y, "entanglement", false); } else { @@ -103,7 +105,6 @@ const level = { simulation.draw.setPaths(); b.respawnBots(); m.resetHistory(); - spawn.quantumEraserCheck(); //remove mobs from tech: quantum eraser if (tech.isForeverDrones) { if (tech.isDroneRadioactive) { @@ -160,9 +161,9 @@ const level = { } if (tech.isHealLowHealth) { if (tech.isEnergyHealth) { - var len = 3 * (1 - m.energy / m.maxEnergy) //as a percent + var len = 4 * (1 - m.energy / m.maxEnergy) //as a percent } else { - var len = 3 * (1 - m.health / m.maxHealth) //as a percent + var len = 4 * (1 - m.health / m.maxHealth) //as a percent } for (let i = 0; i < len; i++) powerUps.spawn(player.position.x + 90 * (Math.random() - 0.5), player.position.y + 90 * (Math.random() - 0.5), "heal", false); } @@ -1279,7 +1280,10 @@ const level = { y: this.position.y + speed } Matter.Body.setPosition(this, position) - if (isSetPaths) simulation.draw.setPaths() + if (isSetPaths) { + simulation.draw.setPaths() + simulation.draw.lineOfSightPrecalculation() //required precalculation for line of sight + } } } } else { @@ -1289,7 +1293,10 @@ const level = { y: this.position.y - speed } Matter.Body.setPosition(this, position) - if (isSetPaths) simulation.draw.setPaths() + if (isSetPaths) { + simulation.draw.setPaths() + simulation.draw.lineOfSightPrecalculation() //required precalculation for line of sight + } } } } @@ -1991,6 +1998,7 @@ const level = { // m.addHealth(Infinity) spawn.starter(1900, -500, 200) //big boy + // spawn.starter(1900, -500, 100) //big boy // for (let i = 0; i < 10; ++i) spawn.launcher(1900, -500) // spawn.suckerBoss(1900, -500) // spawn.launcherBoss(3200, -500) @@ -2584,10 +2592,6 @@ const level = { // simulation.enableConstructMode() //tech.giveTech('motion sickness') //used to build maps in testing mode // level.difficultyIncrease(10 * 4); // m.maxHealth = m.health = 100 - - level.isProcedural = true //used in generating text for the level builder - simulation.draw.drawMapPath = simulation.draw.drawMapSight - // color.map = "#333" //custom map color document.body.style.backgroundColor = "#e3e3e3"//"#e3e3e3"//color.map//"#333"//"#000" level.defaultZoom = 1400 @@ -2654,8 +2658,10 @@ const level = { gateButton.query(); if (!gateButton.isUp) { if (stationNumber > 0) { + if (!isExitOpen && gatesOpenRight < stationNumber) level.newLevelOrPhase() //run some new level tech effects gatesOpenRight = stationNumber } else if (stationNumber < 0) { + if (!isExitOpen && gatesOpenLeft > stationNumber) level.newLevelOrPhase() //run some new level tech effects gatesOpenLeft = stationNumber } else { //starting station both doors open gatesOpenLeft = stationNumber @@ -3384,6 +3390,8 @@ const level = { Composite.add(engine.world, map[i]); //add to world } simulation.draw.setPaths() + simulation.draw.lineOfSightPrecalculation() //required precalculation for line of sight + //shift trains left/right, as you move left or right a train will jump over and become the train needed at the next station let repositionTrain @@ -3437,6 +3445,9 @@ const level = { for (let i = 0; i < train.length; i++) train[i].draw() stationCustomTopLayer() }; + level.isProcedural = true //only used in generating text for the level builder + simulation.draw.lineOfSightPrecalculation() //required precalculation for line of sight + simulation.draw.drawMapPath = simulation.draw.drawMapSight }, reservoir() { level.exit.x = 1700; @@ -25591,6 +25602,456 @@ const level = { }; powerUps.addResearchToLevel(); //needs to run after mobs are spawned }, + dojo() { // By + simulation.makeTextLog(`underpass by weird_pusheen`); + + const vanishes = []; + const smoofes = []; + const leftRotor = level.rotor(-550, 900, 950, 25); + leftRotor.frictionAir = 0.01; + var leftSchwoof = level.boost(-20, -60, -2000); + var rightSchwoof = level.button(2550, -50); + var rightSchwoofState = false; + var rightSchwoofLive = true; + spawn.mapRect(2513, -39, 200, 100); + var pathPoints = [ + [0, 0], // Index 0 is owned by M and is set to M's position during play + // this means that occasionally the boss will bonk M on the way to somewhere else, which gives it a chance to hurt M and gives the player a chance to hurt it + [250, -750], /* Left bases */ + [250, -2500], + [350, -1500], // Left doorway + [1150, -1500], // Home base + [1150, -2750], // Upper base + [1950, -1500], // Right doorway + [2050, -750], /* Right bases */ + [2050, -2500], + [-150, -250], // Left porthole + ]; + function isntIn(point, array) { + for (var x = 0; x < array.length; x++) { + if (point[0] == array[x][0] && point[1] == array[x][1]) { + return false; + } + } + return true; + } + function isObstructed(v1, v2) { + var ret = Matter.Query.ray(map, + { + x: v1[0], + y: v1[1], + }, + { + x: v2[0], + y: v2[1] + }).length != 0; + return ret; // Kinda-ish stolen from mob.js + } + function pythag(p1, p2) { + var dx = p1[0] - p2[0]; + var dy = p1[1] - p2[1]; + return Math.sqrt(dx * dx + dy * dy); + } + var path = undefined; // This is a stupid way to go about pathfinding code. I might even clean it up! + function pathFind(goalPoint, startPoint, curPath = []) { + var myPoint = startPoint; + if (curPath.length) { + myPoint = curPath[curPath.length - 1]; + } + if (path && (curPath.length >= path.length)) { // If we've already found a shorter or equal path, no reason to continue and waste CPU time + return; // Minimizes for HOP COUNT, not PATH LENGTH - path length was buggy + } + if (!isObstructed(myPoint, goalPoint)) { // If the line to the goal point ain't blocked by a map object, we've arrived! + path = [...curPath]; + path.push(goalPoint); + return; + } + pathPoints.forEach(testPoint => { + if (isntIn(testPoint, curPath)) { // If it's reusing points, there's clearly something wrong + if (!isObstructed(myPoint, testPoint)) { // If the line to the test point ain't blocked by a map object + var thing = [...curPath]; + thing.push(testPoint); + pathFind(goalPoint, startPoint, thing); // Branch to a valid test point + } + } + }); + } + level.setPosToSpawn(1200, 500); + level.exit.x = 51500; + level.exit.y = -1875; + spawn.mapRect(level.enter.x, level.enter.y + 20, 100, 20); + level.defaultZoom = 1500; + simulation.zoomTransition(level.defaultZoom) + document.body.style.backgroundColor = "#d8dadf"; + + spawn.mapRect(-500, 0, 3300, 300); // Floor + spawn.mapRect(-100, -3000, 2500, 100); // Ceiling + spawn.mapRect(-200, -3000, 100, 2600); // Left wall + spawn.mapRect(2400, -3000, 100, 3000); // Right wall + + spawn.mapRect(500, -1000, 100, 500); /* obstruction blocks */ + smoofes.push(map[map.length - 1]); + spawn.mapRect(500, -2500, 100, 500); + smoofes.push(map[map.length - 1]); + spawn.mapRect(1700, -1000, 100, 500); + smoofes.push(map[map.length - 1]); + spawn.mapRect(1700, -2500, 100, 500); + smoofes.push(map[map.length - 1]); + + spawn.mapRect(-1000, 550, 200, 50); // Left chonky stepppp low + spawn.mapRect(-800, 300, 200, 50); // Left chonky stepppp high + spawn.mapVertex(-1000, 1200, "0 0 100 0 700 500 700 700 0 700"); // Left chonky + spawn.mapRect(3100, 550, 200, 50); // Right chonky stepppp low + spawn.mapRect(2900, 300, 200, 50); // Right chonky stepppp high + spawn.mapVertex(3300, 1200, "0 0 -100 0 -700 500 -700 700 0 700"); // Right chonky + const leftElevator = level.elevator(-1400 - 300, 1450, 300, 100, 500); + const rightElevator = level.elevator(-1400 + 5100, 1450, 300, 100, 500); + + spawn.mapRect(-150, -1700, 200, 50); + spawn.mapRect(400, -2050, 200, 50); + spawn.mapRect(1600, -1000, 200, 50); + + spawn.randomMob(1200, 700); + spawn.randomMob(600, 1000); + spawn.randomMob(1800, 1000); + spawn.randomMob(3200, 400); + spawn.randomMob(3000, 200); + spawn.randomMob(-900, 400); + spawn.randomMob(-700, 200); + spawn.randomMob(1200, 1000); + for (var i = 0; i < 4; i++) { + spawn.randomSmallMob(Math.random() * 600 - 600, Math.random() * 3000 - 400); + } + spawn.grenadier(-300, -1000); + spawn.grenadier(2600, -1000); + + spawn.mapRect(-1400, 1450, 5100, 100); // The True Floor + + const slime = level.hazard(-1250, 1400, 4800, 50); + slime.maxHeight = 600; + simulation.draw.body = function () { + ctx.beginPath(); + for (let i = 0, len = body.length; i < len; ++i) { + if (!body[i].hidden) { + let vertices = body[i].vertices; + ctx.moveTo(vertices[0].x, vertices[0].y); + for (let j = 1; j < vertices.length; j++) { + ctx.lineTo(vertices[j].x, vertices[j].y); + } + ctx.lineTo(vertices[0].x, vertices[0].y); + } + } + ctx.lineWidth = 2; + ctx.fillStyle = color.block; + ctx.fill(); + ctx.strokeStyle = color.blockS; + ctx.stroke(); + } // Override the old draw code to allow intelligent hiding of blocks - preferably this becomes official code because it's just a single added if statement and makes a lot of things cleaner and more intelligent + + const vanish = function (x, y, width, height) { // normal vanishes don't work well on my map for some reason, so I rewrote + x += width / 2; + y += height / 2; + const getVertices = function (bX, bY, bW, bH) { return [{ x: bX, y: bY, index: 0, isInternal: false }, { x: bX + bW, y: bY, index: 1, isInternal: false }, { x: bX + bW, y: bY + bH, index: 4, isInternal: false }, { x: bX, y: bY + bH, index: 3, isInternal: false }] }; + const cMask = cat.player | cat.body | cat.bullet | cat.powerUp | cat.mob | cat.mobBullet; + const vertices = getVertices(x, y, width, height); + const block = body[body.length] = Bodies.fromVertices(x, y, vertices, { + collisionFilter: { + category: cat.map, + mask: cMask + }, + isNoSetCollision: true, + inertia: Infinity, //prevents rotation + isNotHoldable: true, + isNonStick: true, //this keep sporangium from sticking + isTouched: false, + cWidth: width, + hiddenCycle: 0, + isStatic: true, + query() { + if (this.cWidth <= 0) { + if (this.cWidth > -100) { + this.cWidth = -100; + Matter.Body.setVertices(this, vertices); + } + this.isTouched = false; + this.collisionFilter.mask = undefined; + this.hidden = true; + this.hiddenCycle++; + if (this.hiddenCycle > 100) { + if (Matter.Query.collides(this, [player]).length) { + this.hiddenCycle = 50; + } + else { + this.hiddenCycle = 0; + this.cWidth = width; + this.collisionFilter.mask = cMask; + this.hidden = false; + } + } + } + else if (this.isTouched) { + Matter.Body.setVertices(this, getVertices(x, y, this.cWidth, height * (this.cWidth / width))); + this.cWidth -= 3; + } + else if (Matter.Query.collides(this, [player]).length) { // Elseif short circuit avoids expensive collision detection + this.isTouched = true; + } + } + }); + return block; + }; + + vanishes.push(vanish(800, 800, 800, 50)); + vanishes.push(vanish(400, 1100, 400, 50)); + vanishes.push(vanish(1600, 1100, 400, 50)); + spawn.bodyRect(1700, 812, 300, 25, 1, { + collisionFilter: { + category: cat.body, + mask: cat.player | cat.body | cat.bullet | cat.powerUp | cat.mob | cat.mobBullet | cat.map + }, + isNoSetCollision: true, + isNotHoldable: true, + isNonStick: true, //this keep sporangium from sticking + restitution: 1, + friction: 0, + frictionAir: 0, + frictionStatic: 0, + query() { + Matter.Body.setAngularVelocity(this, 0); + Matter.Body.applyForce(this, this.position, { + x: 0, + y: -(this.position.y - 812) * 0.002 + }); + } + }); + const zigzag = body[body.length - 1]; + Matter.Body.applyForce(zigzag, zigzag.position, { + x: 0.1, + y: 0 + }); + var buttonWasDown = false; + level.customTopLayer = () => { + + } + level.custom = () => { + rightSchwoof.isUp = false; + level.exit.drawAndCheck(); + leftSchwoof.query(); + level.enter.draw(); + pathPoints[0][0] = m.pos.x; + pathPoints[0][1] = m.pos.y; + leftElevator.move(); + rightElevator.move(); + slime.query(); + zigzag.query(); + slime.levelRise(0.2); + for (var i = 0; i < vanishes.length; i++) { + vanishes[i].query(); + } + if (!rightSchwoofState) { + var math = m.pos.y < leftRotor.position.y; + Matter.Body.setAngularVelocity(leftRotor, (math ? 1 : -1) * Math.PI / 45); + } + if (rightSchwoofLive) { + rightSchwoof.query(); + rightSchwoof.draw(); + if (rightSchwoofState) { + ctx.fillStyle = "lightgreen"; + } + else { + ctx.fillStyle = "red"; + } + ctx.beginPath(); + ctx.arc(2615, -220, 40, 0, Math.PI * 2); + ctx.fill(); + } + if (rightSchwoof.isUp) { + buttonWasDown = true; + } + else if (buttonWasDown) { + buttonWasDown = false; + rightSchwoofState = !rightSchwoofState; + } + if (Matter.Query.collides(player, smoofes).length) { + Matter.Body.applyForce(player, player.position, { + x: 0, + y: -0.015 + }); + } + }; + + mobs.spawn(500, -500, 10, 100, "yellow"); /* TacticalBoss + Modes: + Spawn: + Pathfinds to a point above M and starts dropping mobs. Learns which mobs to drop to cause the most damage, of course. + Occasionally strikes at M. + Hide: + Pathfinds to the point furthest from M + Strike: + Pathfind really, really fast to M + Recharge: + Stop moving for a bit to "recharge" (this is so the player has a chance to hit it) + + It must always Hide or Recharge after Spawning or Striking. Which one it does is based on some factor I'll figure out. + Pathfinding is a hypersimplified algorithm with hard-coded "points" that it can travel between. M is one of these. + */ + var boss = mob[mob.length - 1]; + boss.isBoss = true; + boss.damageReduction = 0.2 / (tech.isScaleMobsWithDuplication ? 1 + tech.duplicationChance() : 1) + boss.onDeath = function () { + powerUps.spawnBossPowerUp(this.position.x, this.position.y); + level.exit.x = 2560; + level.exit.y = -90; + rightSchwoofLive = false; + }; + var spawnables = {}; + ["hopper", "stabber", "springer", "striker", "sneaker", "grower"].forEach((m) => { /* Used to be spawn.fullPickList, but some of those mobs don't do collision-only damage and would thus never be properly selected for */ + if (spawn[m]) { + spawnables[m] = { + fun: spawn[m], + name: m, + weight: 1 + } + } + }); + boss.stabCycle = 0; + boss.spawnCycle = 0; + function spawny() { + var totalWeight = 0; + Object.keys(spawnables).forEach(key => { + totalWeight += spawnables[key].weight; + }); + var cursorWeight = 0; + var choice = Math.random(); + var mC = undefined; + Object.values(spawnables).forEach((thing) => { + var lower = cursorWeight / totalWeight; + cursorWeight += thing.weight; + var upper = cursorWeight / totalWeight; + if ((choice > lower && choice <= upper) || !mC) { + mC = thing; + } + }); + mC.fun(boss.position.x, boss.position.y); + var sp = mob[mob.length - 1]; + sp.typeName = mC.name; + sp.onHit = () => { + spawnables[sp.typeName].weight += 1; + }; + var oldFun = sp.onDeath; + sp.onDeath = () => { /* Mobs that die are worth less */ + oldFun.call(sp); + spawnables[sp.typeName].weight -= 0.3; /* But not too much less */ + }; + } + boss.spawnDelay = 40; + boss.mode = "hide"; + boss.modeSwitch = -1; // Randomize mode immediately + boss.damageReduction = 0.1; + var oldOnHit = boss.onHit; + boss.onHit = () => { + boss.modeSwitch = -1; // After striking the player, always switch modes + oldOnHit.call(boss); + }; + boss.do = () => { + path = undefined; + var pfGoal = [0, 0]; + boss.modeSwitch--; + if (boss.modeSwitch < 0) { + if (!boss.isShielded) { + spawn.shield(boss, boss.position.x, boss.position.y, 0.75); // Every time the mode switches, have a 75% chance to gain a new shield + } + if (boss.mode == "hide" || boss.mode == "recharge") { + if (Math.random() > 0.5) { + boss.mode = "spawn"; + } + else { + boss.mode = "strike"; + } + boss.modeSwitch = 600; + } + else { + if (boss.mode == "strike") { + boss.mode = "hide"; // Always hides after striking + } + else { + if (Math.random() > 0.5) { + boss.mode = "hide"; + } + else { + boss.mode = "recharge"; // same when it goes into recharge mode + spawn.shield(boss, boss.position.x, boss.position.y, 1); + } + } + boss.modeSwitch = 200; + } + } + if (boss.mode == "hide") { /* Find the furthest point from M and get to it */ + var longest = 0; + pathPoints.forEach(item => { + if (item[0] == 1150) { + return; + } + var iL = pythag(item, [m.pos.x, m.pos.y]); + if (iL > longest) { + longest = iL; + pfGoal = item; + } + }); + } + else if (boss.mode == "strike") { + pfGoal = pathPoints[0]; // Target M + } + else if (boss.mode == "spawn") { + pfGoal = pathPoints[4]; // Go to Home Base to spawn + } + if (boss.mode != "recharge") { + if (m.pos.x > 2350 || m.pos.x < -150 || m.pos.y > 50) { + boss.mode = "hide"; + } + pathFind(pfGoal, [boss.position.x, boss.position.y]); + if (!path) { + return; // If it couldn't pathfind, just drift + } + var goalX = path[0][0]; + var goalY = path[0][1]; + + var dX = goalX - boss.position.x; + var dY = goalY - boss.position.y; + var hyp = Math.sqrt(dX * dX + dY * dY); + Matter.Body.applyForce(boss, { + x: goalX, + y: goalY + }, { + x: dX / hyp * 0.04 * (boss.mode == "strike" ? 2 : 1), + y: dY / hyp * 0.04 * (boss.mode == "strike" ? 2 : 1)// - 0.005 + }); + } + if (boss.mode == "spawn") { + boss.stabCycle++; + if (boss.stabCycle > 25) { + if (Math.abs(dX) < 200 && dY > 0) { + Matter.Body.applyForce(boss, { + x: player.position.x, + y: player.position.y + }, { + x: 0, + y: 5 + }); + } + boss.stabCycle = 0; + } + boss.spawnCycle++; + if (boss.spawnCycle > boss.spawnDelay) { + spawny(); + boss.spawnDelay += 4; + boss.spawnCycle = 0; + } + } + }; + boss.showHealthBar = true; + powerUps.addResearchToLevel() //needs to run after mobs are spawned + }, // ******************************************************************************************************** // ******************************************************************************************************** // ***************************************** training levels ********************************************** diff --git a/js/mob.js b/js/mob.js index 090b17a..76ba90a 100644 --- a/js/mob.js +++ b/js/mob.js @@ -189,7 +189,6 @@ const mobs = { effect() { if ((simulation.cycle - this.startCycle) % 30 === 0) { let dmg = m.dmgScale * tech.radioactiveDamage * this.dmg - console.log(dmg) who.damage(dmg); if (who.damageReduction) { simulation.drawList.push({ //add dmg to draw queue @@ -409,10 +408,7 @@ const mobs = { isLookingAtPlayer(threshold) { const diff = Vector.normalise(Vector.sub(player.position, this.position)); //make a vector for the mob's direction of length 1 - const dir = { - x: Math.cos(this.angle), - y: Math.sin(this.angle) - }; + const dir = { x: Math.cos(this.angle), y: Math.sin(this.angle) }; //the dot product of diff and dir will return how much over lap between the vectors const dot = Vector.dot(dir, diff); // console.log(Math.cos(dot)*180/Math.PI) diff --git a/js/player.js b/js/player.js index 21540ea..14d49d3 100644 --- a/js/player.js +++ b/js/player.js @@ -551,7 +551,7 @@ const m = { if (m.fieldMode === 0 || m.fieldMode === 3) dmg *= 0.973 ** m.coupling if (tech.isLowHealthDefense) dmg *= 1 - Math.max(0, 1 - m.health) * 0.8 if (tech.isHarmReduceNoKill && m.lastKillCycle + 300 < m.cycle) dmg *= 0.33 - if (tech.squirrelFx !== 1) dmg *= Math.pow(0.7, (tech.squirrelFx - 1) / 0.4) //cause more damage + if (tech.squirrelFx !== 1) dmg *= 0.78//Math.pow(0.78, (tech.squirrelFx - 1) / 0.4) if (tech.isAddBlockMass && m.isHolding) dmg *= 0.15 if (tech.isSpeedHarm && player.speed > 0.1) dmg *= 1 - Math.min(player.speed * 0.0165, 0.66) if (tech.isHarmReduce && input.field && m.fieldCDcycle < m.cycle) dmg *= 0.25 @@ -845,6 +845,7 @@ const m = { draw() { }, isAltSkin: false, resetSkin() { + simulation.isAutoZoom = true; m.yOffWhen.jump = 70 m.yOffWhen.stand = 49 m.yOffWhen.crouch = 22 @@ -1352,6 +1353,7 @@ const m = { }, dilate() { m.isAltSkin = true + simulation.isAutoZoom = false; m.draw = function () { const amplitude = 8 + 4 * Math.sin(m.cycle * 0.0075) ctx.fillStyle = m.fillColor; @@ -1380,6 +1382,13 @@ const m = { ctx.restore(); m.yOff = m.yOff * 0.85 + m.yOffGoal * 0.15; //smoothly move leg height towards height goal powerUps.boost.draw() + + //zoom camera in and out + + // console.log(simulation.zoomScale) + simulation.setZoom(1800 + 400 * Math.sin(m.cycle * 0.0075)) + + } }, dilate2() { @@ -1415,6 +1424,7 @@ const m = { ctx.restore(); m.yOff = m.yOff * 0.85 + m.yOffGoal * 0.15; //smoothly move leg height towards height goal powerUps.boost.draw() + simulation.setZoom(1800 + 400 * Math.sin(m.cycle * 0.0075)) } m.drawLeg = function (stroke) { // if (simulation.mouseInGame.x > m.pos.x) { @@ -1903,7 +1913,7 @@ const m = { } }, setMaxEnergy(isMessage = true) { - m.maxEnergy = (tech.isMaxEnergyTech ? 0.5 : 1) + tech.bonusEnergy + tech.healMaxEnergyBonus + tech.harmonicEnergy + 2 * tech.isGroundState + 3 * tech.isRelay * tech.isFlipFlopOn * tech.isRelayEnergy + 1.5 * (m.fieldMode === 1) + (m.fieldMode === 0 || m.fieldMode === 1) * 0.05 * m.coupling + 0.4 * tech.isStandingWaveExpand + m.maxEnergy = (tech.isMaxEnergyTech ? 0.5 : 1) + tech.bonusEnergy + tech.healMaxEnergyBonus + tech.harmonicEnergy + 2.66 * tech.isGroundState + 3 * tech.isRelay * tech.isFlipFlopOn * tech.isRelayEnergy + 1.5 * (m.fieldMode === 1) + (m.fieldMode === 0 || m.fieldMode === 1) * 0.05 * m.coupling + 0.4 * tech.isStandingWaveExpand if (isMessage) simulation.makeTextLog(`m.maxEnergy = ${(m.maxEnergy.toFixed(2))}`) }, fieldMeterColor: "#0cf", diff --git a/js/powerup.js b/js/powerup.js index faa2d90..87b8a1e 100644 --- a/js/powerup.js +++ b/js/powerup.js @@ -452,7 +452,7 @@ const powerUps = { b.randomBot() if (tech.renormalization) { for (let i = 0; i < cost; i++) { - if (Math.random() < 0.44) { + if (Math.random() < 0.46) { m.fieldCDcycle = m.cycle + 20; powerUps.spawn(m.pos.x + 100 * (Math.random() - 0.5), m.pos.y + 100 * (Math.random() - 0.5), "research"); } @@ -465,7 +465,7 @@ const powerUps = { if (tech.isDeathAvoid && document.getElementById("tech-anthropic")) { document.getElementById("tech-anthropic").innerHTML = `-${powerUps.research.count}` } - if (tech.renormalization && Math.random() < 0.44 && amount < 0) { + if (tech.renormalization && Math.random() < 0.46 && amount < 0) { for (let i = 0, len = -amount; i < len; i++) powerUps.spawn(m.pos.x, m.pos.y, "research"); } if (tech.isRerollHaste) { diff --git a/js/simulation.js b/js/simulation.js index c694597..a89422e 100644 --- a/js/simulation.js +++ b/js/simulation.js @@ -766,6 +766,7 @@ const simulation = { tech.laserBotCount = 0; tech.orbitBotCount = 0; tech.foamBotCount = 0; + tech.soundBotCount = 0; tech.boomBotCount = 0; tech.plasmaBotCount = 0; tech.missileBotCount = 0; @@ -1014,6 +1015,7 @@ const simulation = { }, clearNow: false, clearMap() { + level.isProcedural = false; ctx.setTransform(1, 0, 0, 1, 0, 0); if (m.alive) { if (tech.isLongitudinal) b.guns[3].waves = []; //empty array of wave bullets @@ -1103,7 +1105,6 @@ const simulation = { } requestAnimationFrame(respawnHeal); } - if (tech.isDronesTravel && m.alive) { //count drones let droneCount = 0 @@ -1125,39 +1126,7 @@ const simulation = { } //respawn drones in animation frame - let respawnDrones = () => { - if (droneCount > 0) { - requestAnimationFrame(respawnDrones); - if (!simulation.paused && !simulation.isChoosing && m.alive) { - const where = { - x: level.enter.x + 50, - y: level.enter.y - 60 - } - droneCount-- - if (tech.isDroneRadioactive) { - b.droneRadioactive({ - x: where.x + 100 * (Math.random() - 0.5), - y: where.y + 100 * (Math.random() - 0.5) - }, 0) - } else { - b.drone({ - x: where.x + 100 * (Math.random() - 0.5), - y: where.y + 120 * (Math.random() - 0.5) - }, 0) - if (tech.isDroneGrab && deliveryCount > 0) { - const who = bullet[bullet.length - 1] - who.isImproved = true; - const SCALE = 2.25 - Matter.Body.scale(who, SCALE, SCALE); - who.lookFrequency = 30 + Math.floor(11 * Math.random()); - who.endCycle += 3000 * tech.droneCycleReduction * tech.isBulletsLastLonger - deliveryCount-- - } - } - } - } - } - requestAnimationFrame(respawnDrones); + requestAnimationFrame(() => { b.delayDrones({ x: level.enter.x + 50, y: level.enter.y - 60 }, droneCount) }); //respawn spores in animation frame let respawnSpores = () => { @@ -1221,11 +1190,17 @@ const simulation = { } requestAnimationFrame(respawnFleas); } - if (tech.isQuantumEraser) { + let count = 0 for (let i = 0, len = mob.length; i < len; i++) { - if (mob[i].isDropPowerUp && mob[i].alive) tech.quantumEraserCount++ + if (mob[i].isDropPowerUp && mob[i].alive) count++ } + count *= 0.17 //to fake the chance, this makes it not random, and maybe less confusing + let cycle = () => { //run after waiting a cycle for the map to be cleared + const types = ["heal", "ammo", "heal", "ammo", "research", "coupling", "boost", "tech", "gun", "field"] + for (let i = 0; i < count; i++) powerUps.spawnDelay(types[Math.floor(Math.random() * types.length)], 1) + } + requestAnimationFrame(cycle); } function removeAll(array) { @@ -1305,7 +1280,7 @@ const simulation = { }, sight: { //credit to Cornbread for adding this algorithm to n-gon // square: 0, - intersectMap: [], //this is precalculated in simulation.draw.setPaths() when the map changes + intersectMap: [], //this is precalculated in simulation.draw.lineOfSightPrecalculation() getIntersection(v1, v1End, domain) { const intersections = simulation.sight.getIntersections(v1, v1End, domain); var best = { x: v1End.x, y: v1End.y, dist: (v1End.x - v1.x) ** 2 + (v1End.y - v1.y) ** 2 } @@ -1596,9 +1571,8 @@ const simulation = { } simulation.draw.mapPath.lineTo(vertices[0].x, vertices[0].y); } - - - //store data for line of sight precalculation + }, + lineOfSightPrecalculation() { simulation.sight.intersectMap = []; for (var i = 0; i < map.length; i++) { const obj = map[i]; diff --git a/js/spawn.js b/js/spawn.js index 5601b1c..742454d 100644 --- a/js/spawn.js +++ b/js/spawn.js @@ -17,7 +17,6 @@ const spawn = { } else { spawn[options[Math.floor(Math.random() * options.length)]](x, y) } - spawn.quantumEraserCheck(); //remove mobs from tech: quantum eraser }, pickList: ["starter", "starter"], fullPickList: [ @@ -49,93 +48,6 @@ const spawn = { spawnChance(chance) { return Math.random() < chance + 0.07 * simulation.difficulty && mob.length < -1 + 16 * Math.log10(simulation.difficulty + 1) }, - quantumEraserCheck() { //remove mobs from tech: quantum eraser - if (tech.isQuantumEraser && tech.quantumEraserCount > 0) { - - //start at a random location in array - const randomMiddle = Math.floor(mob.length * Math.random()) - let i = randomMiddle - for (let j = 0; j < mob.length; j++) { - i++ - if (i > mob.length - 1) i = 0 - if (mob[i].isDropPowerUp && mob[i].alive) { //&& !mob[i].isBoss - if (mob[i].isFinalBoss) { - tech.quantumEraserCount = 0; - return - } else { - tech.isQuantumEraserDuplication = true - mob[i].death() - tech.isQuantumEraserDuplication = false - } - //graphics - const color = 'rgba(255,255,255, 0.8)' - simulation.drawList.push({ - x: mob[i].position.x, - y: mob[i].position.y, - radius: mob[i].radius * 2, - color: color, //"rgba(0,0,0,0.6)", - time: 60 - }); - simulation.drawList.push({ - x: mob[i].position.x, - y: mob[i].position.y, - radius: mob[i].radius * 1, - color: color, //"rgba(0,0,0,0.85)", - time: 90 - }); - simulation.drawList.push({ - x: mob[i].position.x, - y: mob[i].position.y, - radius: mob[i].radius * 0.5, - color: color, //"rgb(0,0,0)", - time: 120 - }); - tech.quantumEraserCount-- - simulation.makeTextLog(`tech.quantumEraserCount = ${tech.quantumEraserCount}`) - if (tech.quantumEraserCount < 1) break - } - } - - // for (let i = 0, len = mob.length; i < len; i++) { - // if (mob[i].isDropPowerUp && mob[i].alive) { //&& !mob[i].isBoss - // if (mob[i].isFinalBoss) { - // tech.quantumEraserCount = 0; - // return - // } else { - // tech.isQuantumEraserDuplication = true - // mob[i].death() - // tech.isQuantumEraserDuplication = false - // } - // //graphics - // const color = 'rgba(255,255,255, 0.8)' - // simulation.drawList.push({ - // x: mob[i].position.x, - // y: mob[i].position.y, - // radius: mob[i].radius * 2, - // color: color, //"rgba(0,0,0,0.6)", - // time: 60 - // }); - // simulation.drawList.push({ - // x: mob[i].position.x, - // y: mob[i].position.y, - // radius: mob[i].radius * 1, - // color: color, //"rgba(0,0,0,0.85)", - // time: 90 - // }); - // simulation.drawList.push({ - // x: mob[i].position.x, - // y: mob[i].position.y, - // radius: mob[i].radius * 0.5, - // color: color, //"rgb(0,0,0)", - // time: 120 - // }); - // tech.quantumEraserCount-- - // simulation.makeTextLog(`tech.quantumEraserCount = ${tech.quantumEraserCount}`) - // if (tech.quantumEraserCount < 1) break - // } - // } - } - }, randomMob(x, y, chance = 1) { if (spawn.spawnChance(chance) || chance === Infinity) { const pick = spawn.pickList[Math.floor(Math.random() * spawn.pickList.length)]; @@ -145,7 +57,6 @@ const spawn = { const pick = spawn.pickList[Math.floor(Math.random() * spawn.pickList.length)]; spawn[pick](x, y); } - spawn.quantumEraserCheck(); //remove mobs from tech: quantum eraser }, randomSmallMob(x, y, num = Math.max(Math.min(Math.round(Math.random() * simulation.difficulty * 0.2), 4), 0), @@ -163,7 +74,6 @@ const spawn = { spawn[pick](x + Math.round((Math.random() - 0.5) * 20) + i * size * 2.5, y + Math.round((Math.random() - 0.5) * 20), size); } } - spawn.quantumEraserCheck(); //remove mobs from tech: quantum eraser }, randomGroup(x, y, chance = 1) { if (spawn.spawnChance(chance) && simulation.difficulty > 2 || chance === Infinity) { @@ -198,7 +108,6 @@ const spawn = { } } } - spawn.quantumEraserCheck(); //remove mobs from tech: quantum eraser } }, secondaryBossChance(x, y) { @@ -588,7 +497,7 @@ const spawn = { ctx.beginPath(); if (this.fadeCycle < 120) { //damage scales up over 2 seconds to give player time to move as it fades in const scale = this.fadeCycle / 120 - const dmg = this.fadeCycle < 60 ? 0 : 0.13 * simulation.dmgScale * scale + const dmg = this.fadeCycle < 60 ? 0 : 0.1 * simulation.dmgScale * scale me.lasers(me.vertices[0], me.angle + Math.PI / 6, dmg); me.lasers(me.vertices[1], me.angle + 3 * Math.PI / 6, dmg); me.lasers(me.vertices[2], me.angle + 5 * Math.PI / 6, dmg); @@ -1548,7 +1457,7 @@ const spawn = { me.isDropPowerUp = false; me.showHealthBar = false; me.stroke = "#83a" - me.accelMag = 0.001 + me.accelMag = 0.003 me.frictionAir = 0.005 me.collisionFilter.mask = cat.player | cat.map | cat.body | cat.mob me.seeAtDistance2 = 1000000 //1000 vision range @@ -1583,6 +1492,7 @@ const spawn = { if ( !mob[i].isZombie && !mob[i].isUnblockable && + !mob[i].isMobBullet && Matter.Query.ray(map, this.position, mob[i].position).length === 0 && Matter.Query.ray(body, this.position, mob[i].position).length === 0 // !mob[i].isBadTarget && @@ -1605,7 +1515,7 @@ const spawn = { } } me.zombieHealthBar = function () { - this.health -= 0.0004 //decay + this.health -= 0.0003 //decay if ((this.health < 0.01 || isNaN(this.health)) && this.alive) this.death(); const h = this.radius * 0.3; const w = this.radius * 2; @@ -1623,15 +1533,16 @@ const spawn = { this.force = Vector.mult(Vector.normalise(Vector.sub(this.target.position, this.position)), this.accelMag * this.mass) } else { //wonder around this.torque += 0.0000003 * this.inertia; - const mag = 0.00015 * this.mass + const mag = 0.0003 * this.mass this.force.x += mag * Math.cos(this.angle) this.force.y += mag * Math.sin(this.angle) } - if (this.speed > 6) { // speed cap instead of friction to give more agility - Matter.Body.setVelocity(this, { - x: this.velocity.x * 0.93, - y: this.velocity.y * 0.93 - }); + if (this.speed > 15) { // speed cap instead of friction to give more agility + Matter.Body.setVelocity(this, { x: this.velocity.x * 0.96, y: this.velocity.y * 0.96 }); + } else if (this.speed < 10) { + Matter.Body.setVelocity(this, { x: this.velocity.x * 0.98, y: this.velocity.y * 0.98 }); + } else if (this.speed < 8) { + Matter.Body.setVelocity(this, { x: this.velocity.x * 0.99, y: this.velocity.y * 0.99 }); } const hit = (who) => { if (!who.isZombie && who.damageReduction) { @@ -1642,9 +1553,14 @@ const spawn = { this.force.y -= force.y; this.target = null //look for a new target - const dmg = 1.3 * m.dmgScale - who.damage(dmg); + // who.damage(dmg); + //by pass normal damage method + const dmg = 1.5 * who.damageReduction / Math.sqrt(who.mass) + who.health -= dmg + who.onDamage(dmg); //custom damage effects who.locatePlayer(); + if ((who.health < 0.01 || isNaN(who.health)) && who.alive) who.death(); + simulation.drawList.push({ x: this.position.x, y: this.position.y, diff --git a/js/tech.js b/js/tech.js index 141d7e4..a148f69 100644 --- a/js/tech.js +++ b/js/tech.js @@ -252,7 +252,7 @@ const tech = { if (tech.isDamageFromBulletCount) dmg *= 1 + bullet.length * 0.007 if (tech.isNoFireDamage && m.cycle > m.fireCDcycle + 120) dmg *= 2 if (tech.isSpeedDamage) dmg *= 1 + Math.min(0.66, player.speed * 0.0165) - if (tech.isDamageAfterKillNoRegen && m.lastKillCycle + 300 > m.cycle) dmg *= 1.6 + if (tech.isDamageAfterKillNoRegen && m.lastKillCycle + 300 > m.cycle) dmg *= 1.83 if (tech.isAxion && tech.isHarmMACHO) dmg *= 2 - m.defense() if (tech.isHarmDamage && m.lastHarmCycle + 480 > m.cycle) dmg *= 3; if (tech.lastHitDamage && m.lastHit) dmg *= 1 + tech.lastHitDamage * m.lastHit * (2 - m.defense()) // if (!simulation.paused) m.lastHit = 0 @@ -260,7 +260,7 @@ const tech = { return dmg }, duplicationChance() { - return Math.min(1, Math.max(0, (tech.isPowerUpsVanish ? 0.13 : 0) + (tech.isStimulatedEmission ? 0.15 : 0) + tech.duplication + tech.duplicateChance + 0.05 * tech.isExtraGunField + m.duplicateChance + tech.fieldDuplicate + tech.cloakDuplication + (tech.isAnthropicTech && tech.isDeathAvoidedThisLevel ? 0.5 : 0) + tech.isQuantumEraserDuplication * (1 - 0.016 * (simulation.difficultyMode ** 2)))) + return Math.min(1, Math.max(0, (tech.isPowerUpsVanish ? 0.13 : 0) + (tech.isStimulatedEmission ? 0.17 : 0) + tech.duplication + tech.duplicateChance + 0.05 * tech.isExtraGunField + m.duplicateChance + tech.fieldDuplicate + tech.cloakDuplication + (tech.isAnthropicTech && tech.isDeathAvoidedThisLevel ? 0.5 : 0))) }, isScaleMobsWithDuplication: false, maxDuplicationEvent() { @@ -337,8 +337,8 @@ const tech = { }, { name: "nitinol", - description: "+33% movement and jumping
+30% defense", - maxCount: 3, + description: "+33% movement and jumping
+22% defense", + maxCount: 1, count: 0, frequency: 1, frequencyDefault: 1, @@ -454,8 +454,8 @@ const tech = { }, maxCount: 1, count: 0, - frequency: 3, - frequencyDefault: 3, + frequency: 4, + frequencyDefault: 4, allowed() { return tech.isEnergyHealth }, @@ -854,7 +854,7 @@ const tech = { }, { name: "non-renewables", - description: `+67% damage
${powerUps.orb.ammo()} can't spawn`, + description: `+78% damage
${powerUps.orb.ammo()} can't spawn`, maxCount: 1, count: 0, frequency: 1, @@ -863,7 +863,7 @@ const tech = { return !tech.isAmmoFromHealth && !tech.isBoostReplaceAmmo }, requires: "not catabolism, quasiparticles", - damage: 1.67, + damage: 1.78, effect() { tech.damage *= this.damage tech.isEnergyNoAmmo = true; @@ -1139,7 +1139,7 @@ const tech = { }, { name: "heuristics", - description: "+25% fire rate
spawn a gun", + description: "+22% fire rate
spawn a gun", maxCount: 9, count: 0, frequency: 1, @@ -1149,7 +1149,7 @@ const tech = { }, requires: "", effect() { - tech.fireRate *= 0.75 + tech.fireRate *= 0.78 b.setFireCD(); powerUps.spawn(m.pos.x, m.pos.y, "gun"); }, @@ -1161,7 +1161,7 @@ const tech = { { name: "anti-shear topology", link: `
anti-shear topology`, - description: "+30% projectile duration", //
drone spore worm flea missile foam wave neutron ice", + description: "your bullets last +30% longer", //
drone spore worm flea missile foam wave neutron ice", maxCount: 3, count: 0, frequency: 1, @@ -1195,7 +1195,7 @@ const tech = { }, { name: "shear stress", - description: "after mobs die
they release a nail that targets nearby mobs", + description: "after mobs die
they fire a nail at nearby mobs", maxCount: 9, count: 0, frequency: 1, @@ -1493,6 +1493,62 @@ const tech = { tech.isFoamBotUpgrade = false } }, + { + name: "sound-bot", + link: `sound-bot`, + description: "a bot emits expanding arcs
aimed towards nearby mobs", + maxCount: 9, + count: 0, + frequency: 1, + frequencyDefault: 1, + isBot: true, + isBotTech: true, + allowed() { return true }, + requires: "", + effect() { + tech.soundBotCount++; + b.soundBot(); + }, + remove() { + if (this.count) { + tech.soundBotCount -= this.count; + b.clearPermanentBots(); + b.respawnBots(); + } + } + }, + { + name: "sound-bot upgrade", + link: `sound-bot upgrade`, + description: "convert your bots to sound-bots
+200% wave fire rate and +100% damage", + maxCount: 1, + count: 0, + frequency: 3, + frequencyDefault: 3, + isBotTech: true, + allowed() { + return tech.soundBotCount > 1 && !b.hasBotUpgrade() + }, + requires: "2 or more sound bots and no other bot upgrade", + effect() { + tech.isSoundBotUpgrade = true + b.convertBotsTo("sound-bot") + for (let i = 0; i < bullet.length; i++) { + if (bullet[i].botType === 'sound') bullet[i].isUpgraded = true + } + tech.setBotTechFrequency() + tech.setTechFrequency("sound-bot", 5) + }, + remove() { + if (this.count) { + for (let i = 0; i < bullet.length; i++) { + if (bullet[i].botType === 'sound') bullet[i].isUpgraded = false + } + tech.setBotTechFrequency(1) + } + tech.isSoundBotUpgrade = false + } + }, { name: "boom-bot", link: `boom-bot`, @@ -1679,7 +1735,7 @@ const tech = { { name: "dynamo-bot", link: `dynamo-bot`, - description: "a bot damages mobs while it traces your path
when it's near generate +7 energy per second", + description: "a bot damages mobs while it traces your path
when it's near generate +8 energy per second", maxCount: 9, count: 0, frequency: 1, @@ -1705,7 +1761,7 @@ const tech = { { name: "dynamo-bot upgrade", link: `dynamo-bot upgrade`, - description: "convert your bots to dynamo-bots
when it's near generate +23 energy per second", + description: "convert your bots to dynamo-bots
when it's near generate +24 energy per second", maxCount: 1, count: 0, frequency: 3, @@ -1831,6 +1887,8 @@ const tech = { tech.orbitBotCount *= 2 for (let i = 0; i < tech.dynamoBotCount; i++) b.dynamoBot(); tech.dynamoBotCount *= 2 + for (let i = 0; i < tech.soundBotCount; i++) b.soundBot(); + tech.soundBotCount *= 2 for (let i = 0; i < tech.plasmaBotCount; i++) b.plasmaBot(); tech.plasmaBotCount *= 2 for (let i = 0; i < tech.missileBotCount; i++) b.missileBot(); @@ -1846,6 +1904,7 @@ const tech = { tech.nailBotCount = Math.round(tech.nailBotCount / 2) tech.laserBotCount = Math.round(tech.laserBotCount / 2) tech.foamBotCount = Math.round(tech.foamBotCount / 2) + tech.soundBotCount = Math.round(tech.soundBotCount / 2) tech.boomBotCount = Math.round(tech.boomBotCount / 2) tech.orbitBotCount = Math.round(tech.orbitBotCount / 2) tech.dynamoBotCount = Math.round(tech.dynamoBotCount / 2) @@ -2503,7 +2562,9 @@ const tech = { }, { name: "refrigerant", - description: `after losing at least 5% health
freeze all mobs for 7 seconds`, + descriptionFunction() { + return `after losing at least 5% ${tech.isEnergyHealth ? "energy" : "health"}
freeze all mobs for 7 seconds` + }, maxCount: 1, count: 0, frequency: 1, @@ -2559,7 +2620,7 @@ const tech = { }, { name: "ground state", - description: "+200 maximum energy
–33% passive energy generation", + description: "+266 maximum energy
–33% passive energy generation", // description: "reduce defense by 66%
you no longer passively regenerate energy", maxCount: 1, count: 0, @@ -2731,7 +2792,7 @@ const tech = { }, { name: "parasitism", - description: "if a mob has died in the last 5 seconds
+60% damage, inhibit energy generation", + description: "if a mob has died in the last 5 seconds
+83% damage, inhibit energy generation", maxCount: 1, count: 0, frequency: 1, @@ -2952,7 +3013,7 @@ const tech = { }, { name: "induction brake", - description: `after using ${powerUps.orb.heal()} slow nearby mobs for 15 seconds
spawn ${powerUps.orb.heal(3)}`, + description: `after using ${powerUps.orb.heal()} slow nearby mobs for 15 seconds
spawn ${powerUps.orb.heal(4)}`, maxCount: 1, count: 0, frequency: 1, @@ -2963,7 +3024,7 @@ const tech = { requires: "not eddy current brake", effect() { tech.isHealBrake = true; - for (let i = 0; i < 3; i++) powerUps.spawn(m.pos.x + 100 * (Math.random() - 0.5), m.pos.y + 100 * (Math.random() - 0.5), "heal"); + for (let i = 0; i < 4; i++) powerUps.spawn(m.pos.x + 100 * (Math.random() - 0.5), m.pos.y + 100 * (Math.random() - 0.5), "heal"); }, remove() { tech.isHealBrake = false; @@ -2972,7 +3033,7 @@ const tech = { { name: "adiabatic healing", descriptionFunction() { - return `${powerUps.orb.heal()} have +100% effect
+5% JUNK to tech pool` + return `${powerUps.orb.heal()} have +100% effect
+4% JUNK to tech pool` }, maxCount: 3, count: 0, @@ -2993,7 +3054,7 @@ const tech = { Matter.Body.scale(powerUp[i], scale, scale); //grow } } - this.refundAmount += tech.addJunkTechToPool(0.05) + this.refundAmount += tech.addJunkTechToPool(0.04) }, refundAmount: 0, remove() { @@ -3055,11 +3116,10 @@ const tech = { powerUps.setPowerUpMode(); }, }, - { - name: "negative entropy", + name: "self-assembly", descriptionFunction() { - return `at the start of each level
for every 33% missing ${tech.isEnergyHealth ? "energy" : "health"} spawn ${powerUps.orb.heal()}` + return `at the start of each level
for every 25% missing ${tech.isEnergyHealth ? "energy" : "health"} spawn ${powerUps.orb.heal()}` }, maxCount: 1, count: 0, @@ -3303,7 +3363,7 @@ const tech = { }, { name: "renormalization", - description: `44% chance to spawn ${powerUps.orb.research(1)}
after consuming ${powerUps.orb.research(1)}`, + description: `46% chance to spawn ${powerUps.orb.research(1)} after consuming ${powerUps.orb.research(1)}
+3% JUNK to tech pool`, maxCount: 1, count: 0, frequency: 2, @@ -3314,9 +3374,16 @@ const tech = { requires: "at least 4 research, not superdeterminism", effect() { tech.renormalization = true; + this.refundAmount += tech.addJunkTechToPool(0.03) + }, + refundAmount: 0, remove() { tech.renormalization = false; + if (this.count > 0 && this.refundAmount > 0) { + tech.removeJunkTechFromPool(this.refundAmount) + this.refundAmount = 0 + } } }, { @@ -3601,7 +3668,7 @@ const tech = { }, { name: "dark patterns", - description: "+17% damage
+17% JUNK to tech pool", + description: "+22% damage
+22% JUNK to tech pool", maxCount: 9, count: 0, frequency: 1, @@ -3610,10 +3677,10 @@ const tech = { return true }, requires: "", - damage: 1.17, + damage: 1.22, effect() { tech.damage *= this.damage - this.refundAmount += tech.addJunkTechToPool(0.17) + this.refundAmount += tech.addJunkTechToPool(0.22) }, refundAmount: 0, remove() { @@ -3665,7 +3732,7 @@ const tech = { }, { name: "eternalism", - description: "+30% damage
time can't be paused (time can be dilated)", + description: "+24% damage
time can't be paused (time can be dilated)", maxCount: 1, count: 0, frequency: 1, @@ -3674,7 +3741,7 @@ const tech = { return !tech.isPauseSwitchField && !tech.isPauseEjectTech && !tech.isWormHolePause }, requires: "not unified field theory, paradigm shift, invariant", - damage: 1.3, + damage: 1.24, effect() { tech.damage *= this.damage tech.isNoDraftPause = true @@ -3969,7 +4036,7 @@ const tech = { }, { name: "stimulated emission", - description: "+15% chance to duplicate spawned power ups,
but after a collision eject 1 tech", + description: "+17% chance to duplicate spawned power ups,
but after a collision eject 1 tech", maxCount: 1, count: 0, frequency: 1, @@ -4938,9 +5005,9 @@ const tech = { frequency: 2, frequencyDefault: 2, allowed() { - return (tech.haveGunCheck("super balls") || tech.isSuperMine) && !tech.isIncendiary + return (tech.haveGunCheck("super balls") || tech.isSuperMine) && !tech.isIncendiary && !tech.isBulletTeleport }, - requires: "super balls not incendiary ammunition", + requires: "super balls not incendiary ammunition, uncertainty principle", effect() { tech.isSuperHarm = true }, @@ -5068,7 +5135,7 @@ const tech = { frequency: 2, frequencyDefault: 2, allowed() { - return tech.haveGunCheck("wave") + return tech.haveGunCheck("wave") || tech.isSoundBotUpgrade }, requires: "wave", effect() { @@ -5089,7 +5156,7 @@ const tech = { frequency: 2, frequencyDefault: 2, allowed() { - return tech.haveGunCheck("wave") + return tech.haveGunCheck("wave") || tech.isSoundBotUpgrade }, requires: "wave", effect() { @@ -5110,9 +5177,9 @@ const tech = { frequency: 2, frequencyDefault: 2, allowed() { - return tech.haveGunCheck("wave") + return tech.haveGunCheck("wave") && !tech.isLongitudinal }, - requires: "wave", + requires: "wave, not phonon", effect() { tech.waveReflections += 2 }, @@ -5155,9 +5222,9 @@ const tech = { frequency: 3, frequencyDefault: 3, allowed() { - return tech.haveGunCheck("wave") && !tech.isPhaseVelocity + return tech.haveGunCheck("wave") && !tech.isPhaseVelocity && tech.waveReflections === 1 }, - requires: "wave, not phase velocity", + requires: "wave, not phase velocity, bound state", ammoScale: 6, effect() { tech.isLongitudinal = true; @@ -5215,7 +5282,7 @@ const tech = { frequency: 2, frequencyDefault: 2, allowed() { - return tech.isLongitudinal && tech.haveGunCheck("wave") + return (tech.isLongitudinal && tech.haveGunCheck("wave")) || tech.isSoundBotUpgrade }, requires: "wave, phonon", effect() { @@ -5234,7 +5301,7 @@ const tech = { frequency: 2, frequencyDefault: 2, allowed() { - return tech.isLongitudinal && tech.haveGunCheck("wave") + return (tech.isLongitudinal && tech.haveGunCheck("wave")) || tech.isSoundBotUpgrade }, requires: "wave, phonon", effect() { @@ -6231,9 +6298,8 @@ const tech = { } }, { - name: "drone repair", - link: `drone repair`, - description: "after a drone expires it redeploys
for a 20% chance to use 1 drone ammo", + name: "von Neumann probe", //"drone repair", + description: "after a drone expires
it will harvest a nearby block to replicate itself", // description: "broken drones repair if the drone gun is active
repairing has a 25% chance to use 1 drone", isGunTech: true, maxCount: 1, @@ -6467,16 +6533,16 @@ const tech = { }, { name: "uncertainty principle", - description: "foam and wave positions are erratic
+53% foam and wave damage", + description: "foam, wave, and super ball positions are erratic
+53% foam, wave, and super ball damage", isGunTech: true, maxCount: 1, count: 0, frequency: 1, frequencyDefault: 1, allowed() { - return (!tech.isFoamAttract && (tech.haveGunCheck("foam") || tech.isFoamBotUpgrade || tech.isFoamShot || tech.isFoamBall || tech.isFoamMine)) || (tech.haveGunCheck("wave") && !tech.is360Longitudinal) + return (!tech.isFoamAttract && (tech.haveGunCheck("foam") || tech.isFoamBotUpgrade || tech.isFoamShot || tech.isFoamBall || tech.isFoamMine)) || (tech.haveGunCheck("wave") && !tech.is360Longitudinal) || (tech.haveGunCheck("super balls") && !tech.isSuperHarm) || tech.isSoundBotUpgrade }, - requires: "foam, wave, not isotropic, electrostatic induction", + requires: "foam, wave, super balls, not isotropic, electrostatic induction, Zectron", effect() { tech.isBulletTeleport = true }, @@ -7715,6 +7781,14 @@ const tech = { } simulation.makeTextLog(`tech.isFoamBotUpgrade = true`) }) + notUpgradedBots.push(() => { + tech.giveTech("sound-bot upgrade") + for (let i = 0; i < num; i++) { + b.soundBot() + tech.soundBotCount++; + } + simulation.makeTextLog(`tech.isSoundBotUpgrade = true`) + }) notUpgradedBots.push(() => { tech.giveTech("boom-bot upgrade") for (let i = 0; i < num; i++) { @@ -8192,9 +8266,9 @@ const tech = { frequency: 2, frequencyDefault: 2, allowed() { - return (m.fieldMode === 6 || m.fieldMode === 7) && !tech.isQuantumEraser + return (m.fieldMode === 6 || m.fieldMode === 7) }, - requires: "cloaking, time dilation, not quantum eraser", + requires: "cloaking, time dilation", effect() { tech.cloakDuplication = 0.45 powerUps.setPowerUpMode(); //needed after adjusting duplication chance @@ -8206,9 +8280,9 @@ const tech = { } }, { - name: "quantum eraser", + name: "metamaterial absorber", //quantum eraser descriptionFunction() { - return `for each mob left alive after you exit a level
kill a mob as they spawn at +${(100 - 1.1 * simulation.difficultyMode ** 2).toFixed(0)}% duplication
` + return `for each mob left alive after you exit a level
there is a 17% chance to spawn a random power up` }, // descriptionFunction() { // return `for each mob left alive after you exit a level
` @@ -8223,13 +8297,9 @@ const tech = { }, requires: "cloaking", effect() { - tech.quantumEraserCount = 0 - tech.isQuantumEraserDuplication = 0 tech.isQuantumEraser = true }, remove() { - tech.quantumEraserCount = 0 - tech.isQuantumEraserDuplication = 0 tech.isQuantumEraser = false } }, @@ -10672,6 +10742,7 @@ const tech = { tech.laserBotCount = 0; tech.orbitBotCount = 0; tech.foamBotCount = 0; + tech.soundBotCount = 0; tech.boomBotCount = 0; tech.plasmaBotCount = 0; tech.missileBotCount = 0; @@ -10688,6 +10759,10 @@ const tech = { b.foamBot(); tech.foamBotCount++; }, + () => { + b.soundBot(); + tech.soundBotCount++; + }, () => { b.boomBot(); tech.boomBotCount++; @@ -11288,6 +11363,7 @@ const tech = { dynamoBotCount: null, nailBotCount: null, foamBotCount: null, + soundBotCount: null, boomBotCount: null, plasmaBotCount: null, missileBotCount: null, @@ -11358,6 +11434,7 @@ const tech = { isRerollBots: null, isNailBotUpgrade: null, isFoamBotUpgrade: null, + isSoundBotUpgrade: null, isLaserBotUpgrade: null, isBoomBotUpgrade: null, isOrbitBotUpgrade: null, @@ -11568,11 +11645,8 @@ const tech = { isIceKill: null, isCritKill: null, isQuantumEraser: null, - isQuantumEraserDuplication: null, - quantumEraserCount: null, isPhononBlock: null, isPhononWave: null, - // isMicroTransactions: null, isLaserLens: null, laserCrit: null, isSporeColony: null, diff --git a/todo.txt b/todo.txt index 0c693f0..67fd3ac 100644 --- a/todo.txt +++ b/todo.txt @@ -1,33 +1,77 @@ ******************************************************** NEXT PATCH ************************************************** -subway - start in an empty station - station exits are blocked by a gate that opens when you press a button - level exit spawns after you clear 4 stations - added 2 new stations (7 possible stations) +new community level: dojo by weird_pusheen -laser-bots lasers wiggle as it aims at the target - this is a nerf to iridescence and it looks cool +sound-bot: makes phonon waves + + updated tech +drone repair -> von Neumann probe - if a drones ends near a block it will use that block to repair +quantum eraser -> metamaterial absorber: for each mob left alive after you exit a level there is a 17% chance to spawn a power up +uncertainty principle: extended to super balls +aperture: camera zooms in and out along with the skin animation + + balanced tech: +cordyceps: zombies are much smarter, faster, do more damage, and last longer +negative entropy -> self-assembly: 1 heal per 33->25% missing health on each new level +renormalization: 44 -> 46% and +3% JUNK tech to pool +parasitism: 60 -> 83% damage +non-renewables: 67 -> 78% damage +ground state: 200 -> 266 max energy +dark patterns: 17 -> 22% damage and JUNK +eternalism: 30 -> 24% damage +stimulated emission 15 -> 17% duplication +nitinol 30 -> 22% defense bug fixes *********************************************************** TODO ***************************************************** -only calculate setPaths on subway level? - does this mess with flatland, no +make a mob similar to slasher + because it's just a very well made mob. + +sound-bot: makes phonon waves + works with + other bot tech - done? + phonon - no + frequency - no + bound state - no + phase velocity - no + isotropic - no + maybe, but reduce fire rate? + + uncertainty principle - done + propagation - done + amplitude - done + sympathetic resonance - done + mechanical resonance - done + +remove reflection from phonon? + but return it with isotropic? + +super-bot: fires super balls + +tech - only allow 1,2 turrets at time. spawning a new mine removes the oldest mine + turrets never run out of ammo + or turrets automatically use one of your mine ammos when they run out? + good with multi gun builds + conflict with booby trap? + +tech: after a needle hits a mobs + the needle splits into 3 needles? + reset your fire CD? + 2x damage for each consecutive mob hit? + +tech: mass production - add a few selection options to all tech, gun, fields to do something: + this would work similar to the tech that adds a bot themed tech to every tech choice + options + spawn: ammo, heals, research, coupling? + random amounts? + make each option a full tech with images? + + improve flatland performance? -get rid of the word permanent in bot tech - ersatz bots, perimeter defense, network effect - -maybe reduce the fps on the line of sight graphics to make it look more like a sensor? -make a bot the follows the player the pov for line of sight levels, not the player - also need to make the vision a slice of a circle, not a full circle - -aperture also increases and decreases vision range - I think messing with vision range causes problems with the start of level vision code - mob non-combat behaviors, like Rain World gathering blocks @@ -47,31 +91,6 @@ consider increasing the base player horizontal movement maybe only increase ground movement, air control seems fine would this unbalance any maps? -level: subway - a map that uses the train level element and line of sight graphics - stations - station theme ideas: - portals - teleport to far away rooms - map elements that alternate between positions - buttons and doors - maybe add mob mobs to each station? this makes it faster to clear the level - boss - spawn at the exit station? or at a random station? or at the station before the exit? - spawn on the station after enough mobs have been killed? - type of boss? - might need to make a new boss designed for this map: los and stations - small, quick, sneaky - do random bosses work? - I think - looks good with line of sight - background lighting for each room drawn in level.custom - no outdoors, no fall off the edge - slime - no small bumps - starting in a small room with a hole to the right with a short drop, like highrise or aerie - floating hexagons, like in reservoir, labs - ramping walls to jump over, like satellite - tech stubs should be a tech unlocked by skins nitinol, tungsten? maybe give another benefit? @@ -82,18 +101,7 @@ make a lemming that walks until it hits a wall and then turns around robotically body or mob? can't be killed? - -Also another thing I made that could fit in-game: https://kgurchiek.github.io/universal-n-gon-loader/ -by default it just plays a random version of n-gon downloaded from past github commits -maybe the "snapshots" could work like this rather than downloading 8 versions of the game? -also you can play any version with https://kgurchiek.github.io/universal-n-gon-loader/?commitIndex=NUM -where setting "NUM" to 0 is the very first commit -here's the code if you want to check it out: https://github.com/kgurchiek/universal-n-gon-loader/blob/main/script.js - -missile bot and plasma bot don't get converted by bot upgrade tech? - is this more confusing because it contradicts text? - -use ephemera to replace things +use ephemera to replace some bad code JUNK? request animation stuff simulation checks @@ -111,8 +119,6 @@ mobs attack mines mines periodically set all mobs to have player location to be the mine is this going to work with all mob vision types? -rework quantum eraser - tech circular polarization - wave gun bullets move in a circle tech: choose next map by name after exiting current map @@ -124,8 +130,6 @@ Tech: relativity Simulation speed scales with movement speed. When still, time moves at 0.4 speed, at full walking speed it’s 1. (So if you’re falling or something and you move faster the simulation will be faster than usual) Also a damage and/or defense boost to make it worth using -Tech: Turbine - Energy generation is proportional to your speed up to +X% energy generation at 40 speed - wormhole tech - teleport away mobs with mass below 3 when they get too near the player short CD, small energy cost, only mobs below a mass @@ -133,75 +137,12 @@ extend brainstorming animation timers to fps cap? will it be smoother or choppier? anything else needs to hit limited fps on a high fps monitor? -level element - mover, transport - test effect of changing m.Vx on things like: shooting bullets? - extend the recentered friction zero to other things - like blocks the player stands on? - maybe zero on the horizontal velocity of whatever the player is standing on - -extend uncertainty to superballs - maybe make aiming them more random? - perfect diamagnatism could bounce on mobs, or even map elements? could work like a rocket jump? -Tech: Von Neuman probes - Drones will consume blocks to replicate themselves - it's a little too similar to the drone repair tech, but I kinda like it better. drones that eat blocks and spit out more drones is cool - -tech: parry - immune to harm for 0.25-0.5 seconds after pressing field button - needs a 5 second CD? - -tech: if a needle hits 2 mobs reset your fire CD - maybe to 2x damage for each consecutive mob hit? - maybe after a needle hits a mob the needle splits into 3 needles - -tech for lens - you can only fire through the lens and some buff? damage or energy? - this was in todo.txt on GitHub. I think it should be 'laser never drains energy, but you can only fire through lens and +90° lens arc, +100% damage (also you can not gain compound lens with this upgrade) - -new boss level like reactor with a very very big boss - mechanics around a very big boss? - maybe the boss moves into rooms so you have to do platforming to clear the room before the boss enters the room - boss can destroy blocks and smaller map elements - -tech - after standing wave runs out of energy from blocking, gain a buff - buff: defense, damage? - aoe damage like railgun - push mobs away - -level: lock - should there be something in the top part of the map? - add alt versions of left and right sides - make flipped L/R version (after everything else is done) - -tech: add an selection option to all tech, gun, fields to do something - set all mobs to 30% health, and stun all mobs - 50% chance to convert all power ups into research - heal to full - -tech: if you die inside MACHO, heal to full and delete the MACHO for the rest of the Level - MACHO gives less defense - -tech: after bosses die
they spawn a research - -tech: +8% damage each time you kill a boss - -tech: sticky grenades - needs another effect to be good enough - stick to mobs? - -make a mob similar to slasher - because it's just a very well made mob. - -tech - only allow 1,2 turrets at time? - turrets never run out of ammo - or turrets automatically use one of your mine ammos when they run out? - good with multi gun builds - conflict with booby trap? tech: Bose Einstein condensate - freezes enemies in pilot wave, and drains some energy? -super-bot - make super balls with Zectron deflectable with field but is there a simple way to do this? @@ -234,28 +175,13 @@ tech: sporangium that grow little trees the trees have an area of effect damage for about 6-10 seconds maybe something similar to radioactive drones, but maybe a few smaller shapes -new bot type that makes phonon waves - name: phono-bot? - each bot has to generate it themselves, can't run code in gun.do - synergy with 2 resonance tech - not isotropic? I think no - synergy with bound? phase velocity, amplitude, propagation - harpoon tech that makes auto aim work much better -tech - super balls gain 20 seconds of time and are reset to original launch speed after hitting a mob - -railgun - magnetic pinch: harpoon does damage to nearby mobs - draw charge graphic on harpoon - use same code as the damage when fire effect - hookBoss fires a hook that pulls player towards it hook does a bit of damage player targeted unless cloaking also add effect to finalBoss - finalBoss add synergies between modes: new modes: @@ -1219,7 +1145,7 @@ possible names for tech hypergraph SQUID (for superconducting quantum interference device) is a very sensitive magnetometer used to measure extremely subtle magnetic fields, based on superconducting loops containing Josephson junctions. nuclear pasta - hard matter in neutron star - nonlocal + nonlocal: maybe use for pilot wave fine-tuned universe nonperturbative D-branes @@ -1241,6 +1167,9 @@ possible names for tech https://en.wikipedia.org/wiki/Cosmic_censorship_hypothesis - black holes can't leak Alcubierre warp drive (FTL with negative mass) Spherules - A spherule is a small sphere or spherical body. It can also refer to a thick-walled spherical structure that contains endospores and occurs in the parasitic form of fungi + negative entropy + memetics + magnetorquers - produce spin by pushing on earth's magnetic field ******************************************************** CARS IMAGES ******************************************************** @@ -1264,8 +1193,7 @@ if pause is pressed while selecting power ups, display pause menu on top of sele laser supercritical fission ***past style themes*** - field emitter - bipedal white robot spherical gun turret on bird legs - damaged dirty white robot spherical gun turret on bird legs in the style of Solarpunk + base prompt for player on 5.2: clean white robot spherical turret on bird legs test chamber standing wave - a 3-D cyan transparent nested concentric aligned centered sphere with rings by Philippe Starck perfect diamagnetism - physics magnetic field chalk diagram @@ -1276,13 +1204,13 @@ if pause is pressed while selecting power ups, display pause menu on top of sele metamaterial cloaking - Scientific photography by Miki Asai, by Bruce Munro molecular assembler - by Laurie Greasley 16-bit Isometric wormhole - by Tim White - pilot wave - + pilot wave - none nail gun - Screenprint shotgun - blueprint by Dan McPharlin grenades, missiles, explosions - vibrant fireball explosion sonic shockwave ring art by Victo Ngai --ar 3:2 --v 5 --s 750 spores - turquoise black spores on a white background full color scientific anatomy by Ernst Haeckel - drones - tilt-shift photography + drones - insect quadcopter tilt-shift photography super balls - By Akari Toriyama wave - sound wave oscilloscope by Paul Catherall, concentric circles by Paul Catherall Barbara Takenaga's painting depicting a clean sound wave on aoscilloscope device --ar 3:2 --v 5 @@ -1306,7 +1234,6 @@ if pause is pressed while selecting power ups, display pause menu on top of sele invulnerable - by Nick Veasey (photos that look like x-rays) alternate reality - Fractal art tech choice - mandala tile Mosaic - tech that spawns heal power ups - green Quilling time, CPT, pause - by Lee Bontecou boost, coupling power ups tech - cyan electron orbiting a black nucleus electric field as bas-relief //(by Kazumasa Nagai) radioactive - volumetric atomic nucleus diagram by Paul Catherall