- Author:
- Codegolf Team
- Twitter:
- @
- GitHub:
- codegolf
- Facebook:
- Google+:
- +
- Reddit:
- /r/
- Pouet:
- Website:
- Compo:
- pure
- Demo link:
- https://js1k.com/2015-hypetrain/demo/2113
- Shortlink:
- https://js1k.com/2113
- Blog post:
- please update here!
- Bytes:
- 1023
- Chars:
- 1023
- Submission
for(_='%4Ofor(NNi=})(","="h+<tonbuttD%2*2width00--1)height.join(AAABAA=functi(keyupB[);){&&( >MiniC.style.5em",.innerHTML=setTimeout(AMath.random()border< click=F((Fdb"<ft face=arial><center><p><bGames Collecti #2<p>0)Sim2048</> <a href=/21 target=_blank>#1</a><div id=C>";0==d (hg=f.push(new DateOj=i;a,cZ=["FFF0F080"];~a new Audio((Bdata:audio/wav;base64,UklGRl9vT19XQVZFZm10IBAAEAQB8AAEAfgAZGF0YU")+Array(Z[(3+a)O]=333)B.slice(60+2*a)))).play(,250,-Color#"+Z"#"c a^f[j]?alert(g):++j^g||h())},5*i,f[i])f=[]),A(event.keyCode-37,},background#0",Radius55em solid"if(1==dvar caif(a)return(1<D?4-a:a-<<|i-iO>>;H|*H;i%H];i%H]=2<<+.1},eaH=16;i;G|=p>>1p=m=c(j=iO+],j E=n=c(j)]) p-E||(h=a?0:p?S+=m]*=2:i++,m]=E,n]=void 0))};(aD=a?a.which-37:B=[];D>>2||e()|c(a?h:c()ND=h=4;D;)e(1Nh=S+"<table >";H;Ch =50 =50>"+[H]])HO?0:r>"S=G=0)}2)';g=/[-NO]/.exec(_);)with(_.split(g))_=join(shift());eval(_)
- Description
- Two mini JS games: Simon and 2048!
Authors and contributors: Xem (@MaximeEuziere), Veu, @subzey, @p01, @aemkei, @mathias
MINISIMON
a Simon game with sound in ~ 499b
Inspired by: https://gist.github.com/veu/603535c10c8516de15cb
Rules:
- Remember the sound & light sequence played by the game
- Reproduce this sequence using the arrow keys of your keyboard
- The sequence gets longer and longer
- You lose if you make a mistake
- Tweet your high score! #MiniSimon
- Pro-tip: you can continue playing after a mistake
MINI2048
A 2048 clone in ~ 491b
Inspired by https://gist.github.com/veu/603535c10c8516de15cb
(original version keeps high scores in LocalStorage. We removed this feature to fit js1k15 rules)
Rules:
- Use your arrow keys to gather the bumbers on one side of the board and gather the numbers that are equal
- You win if you manage to reach the number 2048
- You lose if the grid is full and you can't do any move
- Tweet your high score! #Mini2048
Golfed by hand and with love
Packed with RegPack
Cheers,
The Codegolf Team
- Base64 encoded
Zm9yKF89JyU0T2ZvcihOTmk9H30pKB4iLCIdPSIcaCscPHQbb24aYnV0dBoZRCUyKjIYd2lkdGgXMDAWLS0VMSkUaGVpZ2h0Ey5qb2luKBJBQUFCQUERPWZ1bmN0aRooEBprZXl1cBAPQlsOKTsMKXsLJiYoCT5NaW5pCEMuc3R5bGUuBzVlbSIsBwYuaW5uZXJIVE1MPQVzZXRUaW1lb3V0KEEETWF0aC5yYW5kb20oKQNib3JkZXICPBkgGmNsaWNrPUYoAShGEGQLYgUiPGYadCBmYWNlPWFyaWFsPjxjZW50ZXI+PHA+PGIIR2FtZXMgQ29sbGVjdGkaICMyPHA+ATApCFNpbRoBFAgyMDQ4PC8ZPiA8YSBocmVmPS8yMRYgdGFyZ2V0PV9ibGFuaz4jMTwvYT48ZGl2IGlkPUM+IjswPT1kCShoEAsfZz1mLnB1c2gobmV3IERhdGVPDGo9aTsEEGEsYwtaPVsiFkYdRkYwHUYWHTA4MCJdO35hCW5ldyBBdWRpbygoQhxkYXRhOmF1ZGlvL3dhdjtiYXNlNjQsVWtsR1JsOXZUMTlYUVZaRlptMTBJQkFBEUVBUUI4QUFFQWYRZ0FaR0YwWVUiKStBcnJheShaWygzK2EpT109MzMzKRJCLnNsaWNlKDYwKzIqYSkpKSkucGxheSgELDI1MCwtFAwHAkNvbG9yHCMiK1oSIiMiDGMJYV5mW2pdP2FsZXJ0KGcpOisral5nfHxoKCkpfSw1FippFSxmW2ldKQweZj1bXSksDwtBKGV2ZW50LmtleUNvZGUtMzcsFH0sB2JhY2tncm91bmQcIxYwIiwHFxwGExwGAlJhZGl1cxw1BgIcNWVtIHNvbGlkIgxpZigxPT1kC3ZhciBjEGELaWYoYSlyZXR1cm4oMTxEPzQtYTphLRQ8PBh8aS1pTz4+GDsfSHwDKkg7DhVpJUhdOwwOaSVIXT0yPDwDKy4xfSxlEGELH0g9MTY7aRU7R3w9cD4+MRRwPQ5tPWMoaj1pTysUXSwVaglFPQ5uPWMoaildKQlwLUV8fChoPWE/MDoOcD9TKz0ObV0qPTI6DmkrKyxtXT1FLG5dPXZvaWQgMCkpfTsoD2ELRD1hP2Eud2hpY2gtMzc6Qj1bXTtEPj4yfHxlKCl8YyhhP2g6YygpDE5EPWg9NDtEFTspZSgxDE5oPVMrIjx0YWJsZSACPiI7SDtDBRtoIBc9NTAgEz01MD4iK1sOSF1dKUgVTz8wOhtyPiIeUz1HPTApfR4yKSc7Zz0vWwEtH05PXS8uZXhlYyhfKTspd2l0aChfLnNwbGl0KGcpKV89am9pbihzaGlmdCgpKTtldmFsKF8p
- Original source
(z=function(a){
// UI
b.innerHTML = "<font face=arial><center><p><b>MiniGames Collection #2<p><button onclick=z(0)>MiniSimon<button onclick=z(1)>Mini2048</button> <a href=/2100 target=_blank>#1</a><div id=P>";
// Simon
if(a==0){
(h=function(){for(i=g=f.push(new Date%4);j=i;setTimeout(A=function(k,q){Z=["00F","FF0","F00","080"];~k&&new Audio((B="data:audio/wav;base64,UklGRl9vT19XQVZFZm10IBAAAAABAAEAQB8AAEAfAAABAAgAZGF0YU")+Array(Z[(3+k)%4]=333).join(B.slice(60+k*2))).play(setTimeout(A,250,-1));P.style.borderColor="#"+Z.join("#");if(q)k^f[j]?alert(g):++j^g||h()},500*i--,f[i]));})(f=[]);
onkeyup=function(){A(event.keyCode-37,1)}
P.style.background="#000";
P.style.width="5em";
P.style.height="5em";
P.style.borderRadius="55em";
P.style.border="5em solid";
}
// 2048
if(a==1){
function M(c,d){for(i=H=16;i--;G|=p>>11)for(p=B[m=V(j=i%4+1)];--j?(q=B[n=V(j)])?p-q?0:h=c?0:B[p?S+=B[m]*=2:B[i++,m]=q,n]=d:0:0;);}
function V(x){if(x)return(D>1?4-x:x-1)<<D%2*2|i-i%4>>D%2*2;for(i=H|Math.random()*H;B[--i%H];);B[i%H]=2<<Math.random()+.1}
(onkeyup=function(e){D=e?e.which-37:B=[];D>>2||M()|V(e?h:V());for(D=h=4;D--;)M(1);for(h=(G|h?S:S)+"<table border>";H;P.innerHTML=h+="<th width=50 height=50>"+[B[H]])H--%4?0:h+="<tr>"})(S=G=0)
}
})(2)