TopPhysicist [Lexaloffle Blog Feed] BIRDSTAR <p> <table><tr><td> <a href="/bbs/?pid=38410#p"> <img src="/bbs/thumbs/pico38409.png" style="height:256px"></a> </td><td width=10></td><td valign=top> <a href="/bbs/?pid=38410#p"> BIRDSTAR v1.0</a><br><br> by <a href="/bbs/?uid=16532"> TopPhysicist</a> <br><br><br> <a href="/bbs/?pid=38410#p"> [Click to Play]</a> </td></tr></table> </p> <p>BIRDSTAR</p> <p>A pico-8 commentary on climate change, futility and memory manipulation for the Linux Game Jam '17.</p> <p>You can play it on <a href=""> here</a>, or on <a href="">github here</a> with a plainer background. The source is freely available from <a href="">github</a>.</p> <p>This cart was mostly just the result of me learning how to mess around with memcpy() -- it turns out that you can do some pretty fun stuff this way. The reflection at the bottom of the screen is created by grabbing part of the screen from memory and overwriting later addresses, in reverse row order. The 'ripple' is done by literally writing to addresses which are further ahead or slightly behind of the normal translation.</p> <p>I wrapped this up as a very simple game, because I couldn't find an actual working example of a technique like this around the pico 8 community (though I found a couple of .gifs of other peoples' projects, so I knew it could be done). In the end I got a code snippet from the lexaloffle forums that I hacked a bit to do my thing:</p> <div> <div class=scrollable_with_touch style="width:100%; max-width:800px; overflow:auto; margin-bottom:12px"> <table style="width:100%" cellspacing=0 cellpadding=0> <tr><td background=/gfx/code_bg1.png width=16><div style="width:16px;display:block"></div></td> <td background=/gfx/code_bg0.png> <div style="font-family : courier; color: #000000; display:absolute; padding-left:10px; padding-top:4px; padding-bottom:4px; "> <pre> mirrorcpy(0,128-32*2+1.5*sin(tick/60),0,128-32+1.5*sin(tick/60),128,128-32+1.5*sin(tick/60)) [...] function mirrorcpy(sx,sy,dx,dy,w,h) if (sx+w&gt;128) w=128-sx if (dx+w&gt;128) w=128-dx if (sy+h&gt;128) h=128-sy if (dy+h&gt;128) h=128-dy w = w/2 sad = 0x6000+flr(sy)*64+sx/2 dad = 0x6000+127*64+dx/2 -- reflect for y=1,h do memcpy(dad,sad,w) sad+=64 dad-=64-sin((y)/8)*cos(tick/64) end end </pre></div></td> <td background=/gfx/code_bg1.png width=16><div style="width:16px;display:block"></div></td> </tr></table></div></div> <p>I hope someone else finds this working example helpful!</p> <p>This snippet was submitted to the Linux Game Jam 2017, mostly because it was totally made within the scope of the jam and I wanted to post it somewhere. Pico 8 is cross-platform and playable in several different ways, so maybe it will inspire some linux users to check out the other projects people have been making with it.</p> <p>&#127867; !</p> Sun, 19 Mar 2017 13:38:21 UTC STARRND <p> <table><tr><td> <a href="/bbs/?pid=32544#p"> <img src="/bbs/thumbs/pico32543.png" style="height:256px"></a> </td><td width=10></td><td valign=top> <a href="/bbs/?pid=32544#p"> STARRND 1.0</a><br><br> by <a href="/bbs/?uid=16532"> TopPhysicist</a> <br><br><br> <a href="/bbs/?pid=32544#p"> [Click to Play]</a> </td></tr></table> </p> <p>This is the procedural constellation generator from WIZRND, amped up a bit. It's a little fun to flip through some of them, so I've released this standalone as a bonus for #PROCJAM for people who aren't good at being a slippery wizard. ;)</p> <p>More of a curiosity than a game.</p> <p>You can play this here: <a href=""></a></p> <p>You can play WIZRND here: <a href=""></a></p> <p>Source code is here: <a href=""></a></p> <p>Cheers!</p> Wed, 16 Nov 2016 02:39:19 UTC WIZRND <p> <table><tr><td> <a href="/bbs/?pid=32463#p"> <img src="/bbs/thumbs/pico32461.png" style="height:256px"></a> </td><td width=10></td><td valign=top> <a href="/bbs/?pid=32463#p"> WIZRND 1.0</a><br><br> by <a href="/bbs/?uid=16532"> TopPhysicist</a> <br><br><br> <a href="/bbs/?pid=32463#p"> [Click to Play]</a> </td></tr></table> </p> <p>WIZRND, a pico-8 contribution to #ProcJam 2016 (<a href=""></a>).</p> <p>arrow keys to move</p> <p>up to jump</p> <p>down while standing to channel a shield</p> <p>z to shoot lightning, x to shoot a magic missle</p> <p>You can play it on here: <a href=""></a><br /> ... or on github here: <a href=""></a></p> <p>The main idea behind this project was to learn about developing for the PICO-8 platform -- although I have some programming experience, I've never made a game before. My goals were to simply make anything that was remotely playable, which actually didn't take that long.</p> <p>Since I'm interested in procedural generation anyway and didn't have a lot of spare time to make a game in, contributing to #ProcJam was the perfect excuse for me to actually learn how PICO-8 works. Turns out, it's super fun and very straightforward.</p> <p>The source code is freely available here: <a href=""></a></p> Mon, 14 Nov 2016 09:10:48 UTC