thykka [Lexaloffle Blog Feed]https://www.lexaloffle.com/bbs/?uid=48049 Nerdfield <p>Nerdfield is a short demo for Creative Nerd 2023 demo competition.</p> <p>Download standalone versions for Windows, Mac and Linux: <a href="https://mega.nz/file/8MsjULSL#M98AHSurG2yhlWZR0Aya_NsEkk_1_JRNnIqhfSqENqs">https://mega.nz/file/8MsjULSL#M98AHSurG2yhlWZR0Aya_NsEkk_1_JRNnIqhfSqENqs</a></p> <p> <table><tr><td> <a href="/bbs/?pid=135849#p"> <img src="/bbs/thumbs/pico8_nerdfield_0-3.png" style="height:256px"></a> </td><td width=10></td><td valign=top> <a href="/bbs/?pid=135849#p"> Nerdfield</a><br><br> by <a href="/bbs/?uid=48049"> thykka</a> <br><br><br> <a href="/bbs/?pid=135849#p"> [Click to Play]</a> </td></tr></table> </p> https://www.lexaloffle.com/bbs/?tid=54570 https://www.lexaloffle.com/bbs/?tid=54570 Fri, 13 Oct 2023 17:11:19 UTC Optimistic Nihilism - Delay Llama's PICO-8 Remix <p>Took a shot at arranging a beautiful song into a chiptune version.</p> <p>Does it work?</p> <p>Should I finish it?</p> <p> <table><tr><td> <a href="/bbs/?pid=133372#p"> <img src="/bbs/thumbs/pico8_optimistic_1-0.png" style="height:256px"></a> </td><td width=10></td><td valign=top> <a href="/bbs/?pid=133372#p"> Optimistic Nihilism - Delay Llama's PICO-8 Remix</a><br><br> by <a href="/bbs/?uid=48049"> thykka</a> <br><br><br> <a href="/bbs/?pid=133372#p"> [Click to Play]</a> </td></tr></table> </p> <p>Original song: <a href="https://www.youtube.com/watch?v=Bw6KsPiYuO8">Epic Mountain - Optimistic Nihilism</a></p> https://www.lexaloffle.com/bbs/?tid=53839 https://www.lexaloffle.com/bbs/?tid=53839 Tue, 22 Aug 2023 03:10:51 UTC Vector Font <p>Ever wanted to animate text smoothly? Or maybe just scale a text up by some non-integer value? With vectors you can!</p> <p> <table><tr><td> <a href="/bbs/?pid=129366#p"> <img src="/bbs/thumbs/pico8_vectorfont-0.png" style="height:256px"></a> </td><td width=10></td><td valign=top> <a href="/bbs/?pid=129366#p"> vectorfont</a><br><br> by <a href="/bbs/?uid=48049"> thykka</a> <br><br><br> <a href="/bbs/?pid=129366#p"> [Click to Play]</a> </td></tr></table> </p> <p>Example usage:</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>printl( text, x, y, color, font_size, char_spacing, line_spacing, wrap_width )</pre></div></td> <td background=/gfx/code_bg1.png width=16><div style="width:16px;display:block"></div></td> </tr></table></div></div> https://www.lexaloffle.com/bbs/?tid=52623 https://www.lexaloffle.com/bbs/?tid=52623 Thu, 04 May 2023 07:23:41 UTC PePuSweeper <h2>Controls</h2> <ul> <li>Mobile: D-pad and <code>X</code> preferred (touch controls not optimized)</li> <li>Desktop: arrow keys and <code>X</code> or mouse</li> </ul> <p> <table><tr><td> <a href="/bbs/?pid=125244#p"> <img src="/bbs/thumbs/pico8_pepusweepr-5.png" style="height:256px"></a> </td><td width=10></td><td valign=top> <a href="/bbs/?pid=125244#p"> pepusweeper</a><br><br> by <a href="/bbs/?uid=48049"> thykka</a> <br><br><br> <a href="/bbs/?pid=125244#p"> [Click to Play]</a> </td></tr></table> </p> <h2>version history</h2> <ul> <li>5: Public release</li> </ul> https://www.lexaloffle.com/bbs/?tid=51463 https://www.lexaloffle.com/bbs/?tid=51463 Fri, 03 Feb 2023 20:14:17 UTC MRTR555 <h1>Instructions</h1> <p>Shoot the targets to get more ammo.</p> <p><del>Game ends when ammo runs out.</del></p> <p>Use arrows to aim, Z to shoot.</p> <p> <table><tr><td> <a href="/bbs/?pid=125170#p"> <img src="/bbs/thumbs/pico8_mrtr555-0.png" style="height:256px"></a> </td><td width=10></td><td valign=top> <a href="/bbs/?pid=125170#p"> mrtr555</a><br><br> by <a href="/bbs/?uid=48049"> thykka</a> <br><br><br> <a href="/bbs/?pid=125170#p"> [Click to Play]</a> </td></tr></table> </p> <p>(press the ▶ button to start)</p> <h1>Source code</h1> <p>555 characters</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>srand(555)a,b,c,d,x,m,n=btnp,127,0,8,64,3,-12::r::c+=1p,l,e=64,{},c/2%16+1for i=0,b do p=i&gt;56and i&lt;72and p or p+rnd(e)-e/2add(l,p)end y,o=l[x],rnd(48)\1+1if rnd()&gt;0.5then o=b-o end q=l[o]::s::k=a()m,n=mid(m+(k&gt;&gt;1&amp;1)-(k&amp;1),-16,16),mid(n+(k&gt;&gt;3&amp;1)-(k&gt;&gt;2&amp;1),-16)if a(4)then d=max(d-1)f,g,h,j=x,y,m/4,n/4end cls(c%3+1)?'★',x-3,y-3,7 for v,p in ipairs(l)do line(v-1,p+1,v-1,b,0)end?'웃',o-3,q-2,c%3+8 circ(x+m,y+n,1,6)if j then j+=1/8f+=h g+=j pset(f,g,9)if f&lt;1or f&gt;b or g&gt;l[f\1]then h,j=f,nil if abs(h-o)&lt;2.5then d+=3goto r end end end?'🅾️'..d,4,119 flip()goto s</pre></div></td> <td background=/gfx/code_bg1.png width=16><div style="width:16px;display:block"></div></td> </tr></table></div></div> https://www.lexaloffle.com/bbs/?tid=51452 https://www.lexaloffle.com/bbs/?tid=51452 Thu, 02 Feb 2023 13:56:24 UTC Fruit Salad 64 <h1>Fruit Salad 64</h1> <p>Make a bowl of fruit salad by squashing matching fruits together. Can you finish all 3 levels? Fruit are worth more in the beginning, be fast to get a good hi-score!</p> <p>C&amp;C welcome</p> <h2>Controls</h2> <ul> <li> <p><code>&larr;</code> <code>&rarr;</code> <code>&uarr;</code> <code>&darr;</code> &ndash; Move the selection</p> </li> <li> <p><code>X</code>/<code>Z</code> &ndash; Pick and place items</p> </li> <li><code>Enter</code> &ndash; Pause/Settings</li> </ul> <p> <table><tr><td> <a href="/bbs/?pid=121948#p"> <img src="/bbs/thumbs/pico8_fruit_salad_1-8.png" style="height:256px"></a> </td><td width=10></td><td valign=top> <a href="/bbs/?pid=121948#p"> fruitsalad64</a><br><br> by <a href="/bbs/?uid=48049"> thykka</a> <br><br><br> <a href="/bbs/?pid=121948#p"> [Click to Play]</a> </td></tr></table> </p> <h2>Update notes</h2> <ul> <li> <p>2022-12-07</p> <ul> <li>Updated cart image</li> </ul> </li> <li>2023-01-01 <ul> <li>Game session is now remembered across restarts (reset saved game from pause menu)</li> <li>Items can be picked up, even if there are no matching items on the board</li> <li>Items can be swapped if they don't match</li> <li>Added more levels</li> <li>Score can now reach hundreds of millions before overflowing</li> </ul></li> </ul> https://www.lexaloffle.com/bbs/?tid=50524 https://www.lexaloffle.com/bbs/?tid=50524 Tue, 06 Dec 2022 21:04:08 UTC All Must Fall <p>You are the last survivor of a zombie apocalypse</p> <p>Time is running out...</p> <p> <table><tr><td> <a href="/bbs/?pid=113627#p"> <img src="/bbs/thumbs/pico8_amf_01-0.png" style="height:256px"></a> </td><td width=10></td><td valign=top> <a href="/bbs/?pid=113627#p"> amf_01</a><br><br> by <a href="/bbs/?uid=48049"> thykka</a> <br><br><br> <a href="/bbs/?pid=113627#p"> [Click to Play]</a> </td></tr></table> </p> <h2>controls</h2> <ul> <li>Hold arrows to move</li> <li>Press Z to fire</li> </ul> https://www.lexaloffle.com/bbs/?tid=48301 https://www.lexaloffle.com/bbs/?tid=48301 Sat, 25 Jun 2022 15:15:14 UTC polyfireplace <p>for <a href="https://itch.io/jam/pico-8-tiny-cart-chaos-">Pico-8 tiny cart jam #1</a></p> <p>Turn down the volume for optimal experience! (unless you're running this within PICO-8, in which case it should sound all chill)</p> <p>Big thanks to <a href="https://pancelor.itch.io/">pancelor</a> for squeezing this down from 323 to 251 characters, and for teaching me some wizard-level golfing tricks!</p> <p> <table><tr><td> <a href="/bbs/?pid=105481#p"> <img src="/bbs/thumbs/pico8_polyfireplace0_2-0.png" style="height:256px"></a> </td><td width=10></td><td valign=top> <a href="/bbs/?pid=105481#p"> polyfireplace0_2</a><br><br> by <a href="/bbs/?uid=48049"> thykka</a> <br><br><br> <a href="/bbs/?pid=105481#p"> [Click to Play]</a> </td></tr></table> <br /> (press ▶ to view)</p> https://www.lexaloffle.com/bbs/?tid=46260 https://www.lexaloffle.com/bbs/?tid=46260 Fri, 21 Jan 2022 21:14:14 UTC RainyWoog <p>Use arrows to control ambience</p> <p>Headphones recommended</p> <p> <table><tr><td> <a href="/bbs/?pid=96149#p"> <img src="/bbs/thumbs/pico8_rainywoog-1.png" style="height:256px"></a> </td><td width=10></td><td valign=top> <a href="/bbs/?pid=96149#p"> rainywoog</a><br><br> by <a href="/bbs/?uid=48049"> thykka</a> <br><br><br> <a href="/bbs/?pid=96149#p"> [Click to Play]</a> </td></tr></table> </p> <p>Changelog</p> <ul> <li> <p>2021-08-18</p> <ul> <li>Add keys to toggle drone</li> <li>Add logo &amp; animation</li> </ul> </li> </ul> https://www.lexaloffle.com/bbs/?tid=44285 https://www.lexaloffle.com/bbs/?tid=44285 Tue, 17 Aug 2021 18:51:57 UTC Planetary physics <p>Newtonian gravity simulation</p> <p>It's a bit unstable. Vector math and fixed point numbers don't mix too well, although I'm sure this could be modified to better utilize the available digit range..</p> <p>Press Z to pause and adjust the velocities.<br /> Press Ctrl+R to reset the simulation.</p> <p> <table><tr><td> <a href="/bbs/?pid=93346#p"> <img src="/bbs/thumbs/pico8_newtgrav-0.png" style="height:256px"></a> </td><td width=10></td><td valign=top> <a href="/bbs/?pid=93346#p"> newtgrav</a><br><br> by <a href="/bbs/?uid=48049"> thykka</a> <br><br><br> <a href="/bbs/?pid=93346#p"> [Click to Play]</a> </td></tr></table> </p> https://www.lexaloffle.com/bbs/?tid=43296 https://www.lexaloffle.com/bbs/?tid=43296 Fri, 11 Jun 2021 09:12:15 UTC Sierpinski Attractor <p>It does <a href="https://www.youtube.com/watch?v=kbKtFN71Lfs&amp;amp;t=5s">this</a>.</p> <p> <table><tr><td> <a href="/bbs/?pid=93317#p"> <img src="/bbs/thumbs/pico8_sirpinski2-0.png" style="height:256px"></a> </td><td width=10></td><td valign=top> <a href="/bbs/?pid=93317#p"> sirpinski2</a><br><br> by <a href="/bbs/?uid=48049"> thykka</a> <br><br><br> <a href="/bbs/?pid=93317#p"> [Click to Play]</a> </td></tr></table> </p> <p>Move the mouse to restart</p> <p>Old version: <div><div><input type="button" value=" Show " onClick="if (this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display != '') { this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display = ''; this.innerText = ''; this.value = ' Hide '; } else { this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display = 'none'; this.innerText = ''; this.value = ' Show '; }"></div><div><div style="display: none;"> <table><tr><td> <a href="/bbs/?pid=93317#p"> <img src="/bbs/thumbs/pico8_sirpinski-0.png" style="height:256px"></a> </td><td width=10></td><td valign=top> <a href="/bbs/?pid=93317#p"> sirpinski</a><br><br> by <a href="/bbs/?uid=48049"> thykka</a> <br><br><br> <a href="/bbs/?pid=93317#p"> [Click to Play]</a> </td></tr></table> </div></div></div></p> https://www.lexaloffle.com/bbs/?tid=43293 https://www.lexaloffle.com/bbs/?tid=43293 Thu, 10 Jun 2021 19:57:52 UTC Barnsley fern explorer <p> <table><tr><td> <a href="/bbs/?pid=92823#p"> <img src="/bbs/thumbs/pico8_bons8-0.png" style="height:256px"></a> </td><td width=10></td><td valign=top> <a href="/bbs/?pid=92823#p"> bons8</a><br><br> by <a href="/bbs/?uid=48049"> thykka</a> <br><br><br> <a href="/bbs/?pid=92823#p"> [Click to Play]</a> </td></tr></table> </p> https://www.lexaloffle.com/bbs/?tid=43127 https://www.lexaloffle.com/bbs/?tid=43127 Sun, 30 May 2021 22:53:45 UTC PePu invite 19/2021 <p> <table><tr><td> <a href="/bbs/?pid=92129#p"> <img src="/bbs/thumbs/pico8_pepu_invite_19_2021-0.png" style="height:256px"></a> </td><td width=10></td><td valign=top> <a href="/bbs/?pid=92129#p"> pepu_invite_19_2021</a><br><br> by <a href="/bbs/?uid=48049"> thykka</a> <br><br><br> <a href="/bbs/?pid=92129#p"> [Click to Play]</a> </td></tr></table> </p> https://www.lexaloffle.com/bbs/?tid=42933 https://www.lexaloffle.com/bbs/?tid=42933 Tue, 18 May 2021 13:26:13 UTC Animation/tweening library [WIP] <p>I'm working on this small animation library. It adds a straightforward way to animate an object's state. </p> <h3>Usage example:</h3> <p>Let's say there's a game object called &quot;progress&quot;, representing a progress bar we want to animate:</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>progress={value=0}</pre></div></td> <td background=/gfx/code_bg1.png width=16><div style="width:16px;display:block"></div></td> </tr></table></div></div> <p>we could animate the value rising from 0 to 100 by adding this to something that triggers the progress to start:</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>tween(progress,{value=100})</pre></div></td> <td background=/gfx/code_bg1.png width=16><div style="width:16px;display:block"></div></td> </tr></table></div></div> <p>and in _update() we want to call the animate() function to keep updating the value, until it's duration has elapsed:</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>if has_animations(progress) then animate(progress) end</pre></div></td> <td background=/gfx/code_bg1.png width=16><div style="width:16px;display:block"></div></td> </tr></table></div></div> <h3>Demo</h3> <p> <table><tr><td> <a href="/bbs/?pid=87978#p"> <img src="/bbs/thumbs/pico8_tweendemo-2.png" style="height:256px"></a> </td><td width=10></td><td valign=top> <a href="/bbs/?pid=87978#p"> tweendemo</a><br><br> by <a href="/bbs/?uid=48049"> thykka</a> <br><br><br> <a href="/bbs/?pid=87978#p"> [Click to Play]</a> </td></tr></table> </p> <h3>Configuration</h3> <p>There are some global variables you can override:</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>animate_default_duration=0.4 animate_default_easing=ease_quad_out animate_key=&quot;__a&quot; --which key should contain the tweening animation state</pre></div></td> <td background=/gfx/code_bg1.png width=16><div style="width:16px;display:block"></div></td> </tr></table></div></div> <p>You can also add your own easing functions:</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>function my_easing(t) return t*t*t end add(animate_easings,my_easing) ease_my_easing=#animate_easings</pre></div></td> <td background=/gfx/code_bg1.png width=16><div style="width:16px;display:block"></div></td> </tr></table></div></div> <h3>Arguments</h3> <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>tween(node,target,options)</pre></div></td> <td background=/gfx/code_bg1.png width=16><div style="width:16px;display:block"></div></td> </tr></table></div></div> <ul> <li><em>node</em> - table that contains the value that should be animated</li> <li><em>target</em> - table of the values that should be tweened</li> <li>[<em>options.duration</em>] - how long the tween should play</li> <li>[<em>options.easing</em>] - easing function (included easings: linear, quad_in, quad_out and quad_in_out)</li> <li>[<em>options.custom_time</em>] - custom starting time</li> </ul> <p>Tweens are removed automatically once the animation completes. Starting a new animation for a key with an active animation will overwrite the previous one, continuing animating from it's current value.</p> <h3>Download</h3> <p>The most recent version is available at <a href="https://github.com/thykka/pico-8-libs/blob/main/animate.lua">https://github.com/thykka/pico-8-libs/blob/main/animate.lua</a></p> <h3>Changelog</h3> <ul> <li>v3 <ul> <li>refactored &amp; parametrized almost everything</li> <li>animate_key() replaced by tween()</li> <li>can now tween multiple values with one tween() call</li> </ul></li> </ul> https://www.lexaloffle.com/bbs/?tid=41697 https://www.lexaloffle.com/bbs/?tid=41697 Sun, 21 Feb 2021 18:35:05 UTC BoozeSnek <h1>BoozeSnek</h1> <p>Official port of <a href="https://script-8.github.io/?id=d6813988ba7a22c2d9cfc6fdef4a5dad">PePuSnek for SCRIPT-8</a>, improved.</p> <h2>WARNING: Contains flashing lights!</h2> <p> <table><tr><td> <a href="/bbs/?pid=84020#p"> <img src="/bbs/thumbs/pico8_snek8-5.png" style="height:256px"></a> </td><td width=10></td><td valign=top> <a href="/bbs/?pid=84020#p"> BoozeSnek</a><br><br> by <a href="/bbs/?uid=48049"> thykka</a> <br><br><br> <a href="/bbs/?pid=84020#p"> [Click to Play]</a> </td></tr></table> </p> <h3>Changelog</h3> <ul> <li>14-11-2020 <ul> <li>Changed scoring rules; points are now accumulated, instead of calculated when the game ends</li> <li>Added persistent HiScores</li> <li>Music on/off setting is now persistent</li> </ul></li> </ul> https://www.lexaloffle.com/bbs/?tid=40306 https://www.lexaloffle.com/bbs/?tid=40306 Sat, 14 Nov 2020 19:05:34 UTC Screen fill benchmark <p>Checking out a couple of different methods to fill the screen.</p> <p>cls seem slightly faster than memset. I wonder if the difference is due to the multiplication op, or if there's something else going on...</p> <p> <table><tr><td> <a href="/bbs/?pid=83719#p"> <img src="/bbs/thumbs/pico8_scrnfllbnchmrk-1.png" style="height:256px"></a> </td><td width=10></td><td valign=top> <a href="/bbs/?pid=83719#p"> Screen fill benchmark 0.1</a><br><br> by <a href="/bbs/?uid=48049"> thykka</a> <br><br><br> <a href="/bbs/?pid=83719#p"> [Click to Play]</a> </td></tr></table> </p> <p>Left/Right switches modes</p> https://www.lexaloffle.com/bbs/?tid=40141 https://www.lexaloffle.com/bbs/?tid=40141 Wed, 04 Nov 2020 23:12:34 UTC cfds_intro_1 <h2>Hello, World!</h2> <p> <table><tr><td> <a href="/bbs/?pid=83631#p"> <img src="/bbs/thumbs/pico8_cfds_intro_1-0.png" style="height:256px"></a> </td><td width=10></td><td valign=top> <a href="/bbs/?pid=83631#p"> cfds_intro_1</a><br><br> by <a href="/bbs/?uid=48049"> thykka</a> <br><br><br> <a href="/bbs/?pid=83631#p"> [Click to Play]</a> </td></tr></table> </p> <p>It's not a lot,<br /> but it's honest glitch.</p> https://www.lexaloffle.com/bbs/?tid=40121 https://www.lexaloffle.com/bbs/?tid=40121 Mon, 02 Nov 2020 22:05:14 UTC