Heracleum [Lexaloffle Blog Feed]https://www.lexaloffle.com/bbs/?uid=66501 Dinky Kong <img style="margin-bottom:16px" border=0 src="/media/66501/dkbanner_6x.jpg" alt="" /> <h2></h2> <p> <table><tr><td> <a href="/bbs/?pid=126683#p"> <img src="/bbs/thumbs/pico8_dinkykong-0.png" style="height:256px"></a> </td><td width=10></td><td valign=top> <a href="/bbs/?pid=126683#p"> Dinky Kong</a><br><br> by <a href="/bbs/?uid=66501"> Heracleum</a> <br><br><br> <a href="/bbs/?pid=126683#p"> [Click to Play]</a> </td></tr></table> </p> <h2></h2> <p>Welcome to the Pico-verse - a pixelated land of tiny horizons and even tinier characters. In the Little Apple, a bustling town on the seaside, something terrible has happened! An oversized simian sprite has escaped and taken a citizen in its cruel clutches! Making its way through town, it has climbed up the construction site of the town&rsquo;s tallest building. But one brave soul stands forth, determined to rescue their fellow citizen from the dreaded&hellip; Dinky Kong!</p> <h2>How to Play</h2> <p>Select your hero - choose from Minio or Smalline.<br /> Press ⭕️ to start.<br /> Move with ⬆️⬇️⬅️➡️<br /> Jump with ⭕️.<br /> If you reach the top, Dinky Kong takes the Captive higher up and structure changes shape.<br /> When certain structures are cleared, you save the Captive.</p> <h2>Scoring</h2> <p>Jump over barrels and enemies for points<br /> Get the hammer to destroy barrels and fiery enemies<br /> Collect the pick-ups for extra points<br /> Bonus points awarded based on time remaining<br /> Extra life at 7000 points</p> <h3>Gameplay preview</h3> <p><img style="margin-bottom:16px" border=0 src="/media/66501/dkd_13_tunes_2.gif" alt="" /> <img style="margin-bottom:16px" border=0 src="/media/66501/dkd_14_rls1_2.gif" alt="" /> <img style="margin-bottom:16px" border=0 src="/media/66501/dkd_14_rls1_3.gif" alt="" /> <img style="margin-bottom:16px" border=0 src="/media/66501/dkd_12_howhi_4.gif" alt="" /></p> <h2>On the Demake:</h2> <p>A group effort, the demake began as a simple reimagining of the original done as a series of Pico-8-sized pixel drawings and quickly grew into a full-fledged game. Read all about it <a href="https://www.lexaloffle.com/bbs/?tid=51775">here in the February edition of Pico View</a>. The creators make no claim over the original game nor it&rsquo;s characters - we simply sought to use our skills to humbly follow in the footsteps of true giants. No profit is made off of this game - it is quite simply a Pico-8 hobby project. We sincerely hope you enjoy playing it and, if you like it, we highly encourage you to purchase the original game or one of its many official ports - there&rsquo;s nothing quite like the original Donkey Kong!</p> <h2>On Minio:</h2> <p>Well, he&rsquo;s a courageous bundle of pixels with a knack for jumping. Seize a nearby hammer and he&rsquo;ll pummel flaming enemies and barrels alike. It&rsquo;s kinda difficult to get 64 colored squares to look like anything much less a whole person, but we&rsquo;ve managed to squeeze as much character as possible into this tiny hero. It was delightful to see him first come to life inside Pico-8 and we hope you enjoy playing him (or rescuing him)!</p> <h2>On Smalline:</h2> <p>In researching the game, we read on an Atari modders forum about a dad who had introduced his little daughter to one of his favorite games as a kid - Donkey Kong on the Atari 2600. She loved the game but after playing it she innocently asked her dad if she could pick the Pauline character instead. She could not, and seemed dejected at discovering this. Wishing only to keep the love of playing the game in her heart, her father carefully modded the game to make her wish come true. Inspired by this, other modders followed suit, creating versions of their own. We are proud to follow in their footsteps with our own tiny version - Smalline! </p> <h2>On Dinky Kong:</h2> <p>Well, if our heroes are miniscule, then our &ldquo;huge&rdquo; villain, Dinky Kong, is merely small. Playing on this idea, the sprite in the menu depicts Dinky Kong wearing a tiny fez. A cap similar to ones worn by small monkeys rattling tin cups with coins in them next to a man playing a hurdy gurdy as seen in old cartoons. Maybe our &ldquo;big&rdquo; threat is simply an under-sized street performer loose in a strange tiny world!</p> <h2>Pro Tricks</h2> <p>If you're a DK Pro gamer, a few of the original arcade tricks have been implemented (like wall jump escape and points gained by jump proximity), other tricks like barrel-steering are not (yet?) in this remake, some other mechanisms have been simplified and other dirty tricks and exploits (like jumping next to Kong on Rivets stage) have been purposely removed or fixed.</p> <h2>Credits</h2> <p>Programmed by <a href="https://www.lexaloffle.com/bbs/?uid=66501"> @Heracleum</a><br /> Graphics &amp; sound effects by <a href="https://www.lexaloffle.com/bbs/?uid=58302"> @Trog</a><br /> Music &amp; sound effects by Trog's son</p> https://www.lexaloffle.com/bbs/?tid=51877 https://www.lexaloffle.com/bbs/?tid=51877 Tue, 07 Mar 2023 01:11:36 UTC TrippyWarp <p> <table><tr><td> <a href="/bbs/?pid=124752#p"> <img src="/bbs/thumbs/pico8_trippywarp-0.png" style="height:256px"></a> </td><td width=10></td><td valign=top> <a href="/bbs/?pid=124752#p"> trippywarp</a><br><br> by <a href="/bbs/?uid=66501"> Heracleum</a> <br><br><br> <a href="/bbs/?pid=124752#p"> [Click to Play]</a> </td></tr></table> </p> <p>A very silly and cheap trippy effect using poke 0x5f54 (mapping spritesheet to screen).</p> <img style="margin-bottom:16px" border=0 src="/media/66501/trippywarp_1.gif" alt="" /> https://www.lexaloffle.com/bbs/?tid=51329 https://www.lexaloffle.com/bbs/?tid=51329 Tue, 24 Jan 2023 01:58:52 UTC Jungle Ping <p> <table><tr><td> <a href="/bbs/?pid=123441#p"> <img src="/bbs/thumbs/pico8_jungleping-1.png" style="height:256px"></a> </td><td width=10></td><td valign=top> <a href="/bbs/?pid=123441#p"> Jungle Ping</a><br><br> by <a href="/bbs/?uid=66501"> Heracleum</a> <br><br><br> <a href="/bbs/?pid=123441#p"> [Click to Play]</a> </td></tr></table> </p> <p>Pico-8 demake of the classic arcade game <strong>Jungle King</strong> (by Taito 1982, shortly after renamed as <strong>Jungle Hunt</strong>, Tarzan replaced by an explorer)</p> <h2>Controls</h2> <ul> <li>🅾️ [Z] Action (Jump or Stab while underwater)</li> <li>⬅️⬆️➡️⬇️ Movement, depending on stage: <ul> <li>Stage 1: none, just jump from vine to vine</li> <li>Stage 2: swim in all directions while underwater</li> <li>Stage 3: ⬅️ run faster, ➡️ slow down (they can be used during jump) and ⬇️ to duck</li> <li>Stage 4: ⬅️ walk left, ➡️ walk right (no influence on jump)</li> </ul></li> </ul> <h2>The Game</h2> <p>It is divided into four different stages: </p> <ul> <li>jungle and swinging vines (with monkeys on harder levels)</li> <li>swimming in a crocodiles/alligators-infested river</li> <li>running uphill with falling rocks and boulders</li> <li>a camp with cannibals where our hero's girlfriend dangles above a boiling cauldron (an extra native will throw his spear from the tree on harder levels).</li> </ul> <p>Keep an eye on the TIMER: it starts at 5000, quite generous but it speeds up in the last stage and if it reaches zero it's an instant game over, it means your girl ended up in the cauldron.</p> <h3>Completion bonus and Extra lives</h3> <p>So yes, your objective is obviously to save the girl. In the congrats screen you will also see (an addition to the original game) time bonus points are accumulated until you reach 1000, this will give an <strong>Extra life</strong>! Time bonus is remaining timer / 4. In the original Jungle King you will get 1000 pts regardless of timer which is a shame.<br /> You also gain an Extra life every 30000 points.</p> <h3>Stage 1 - Swinging</h3> <p><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;">Timing is crucial while jumping from vine to vine, try to focus on the speed and oscillation phases of the two. For instance jumping while the next vine is near might not be the best idea especially if it's faster, use some anticipation. After a while it will become the easiest of the stages, even when monkeys will show up (they could look cute but no, not your friends).</div></div></div></p> <h3>Stage 2 - Underwater</h3> <p><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;">Use action button 🅾️/Z to stab the crocs but stay away when their mouth is fully opened! A minimum of 100pts + extra 100pts if the mouth is half open and stabbing them while deeper will gain extra 100pts.<br /> Air bubbles will drag you and push to the surface (you can't move but can still stab at a slower pace).<br /> Important: as obvious as it could sound, you need to breathe! When the 'diving' indicator is low a warning sound will signal it's time to come up to the surface and breathe some air.</div></div></div></p> <h3>Stage 3 - Boulders</h3> <p><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;">What can I say? Just survive, avoid the falling rocks. You can jump (200pts) or duck (100pts), in some case you could even just run below the boulders (50pts). On higher difficulty you will face more rocks at the same time as some will come down faster and even bouncing differently.</div></div></div></p> <h3>Stage 4 - Cannibals</h3> <p><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;">It is actually the easiest stage when you find the right time to jump both and save the girl... but it will be probably cause troubles at first (in order to be prepared for this last stage, you might want to practice a little maybe? by selecting stage 4 in the main screen). At higher levels remember a third native will show up on the tree and throw his spear.</div></div></div></p> <h2>Main differences from Jungle King</h2> <p>In the original game everything was predetermined, making longplays safer for those who memorized everything and virtually go on forever since difficulty stopped growing after the 4th iteration (=each time you save the girl).<br /> This version is more randomized/unpredictable and the difficulty constantly grows at every level.<br /> In this version you can start directly from a specific level of difficulty and stage. Good for training and figuring out how to play on a specific point of the game (without wasting time to redo everything from the beginning). Of course you need a regular start (st1-lv1) for a better high-score.</p> <h3>Other differences from the original</h3> <ul> <li>Title screen graphics (reason: too plain, since they also had stages demo);</li> <li>Stage1: monkeys will just climb up the vine but watch as they keep moving up even when you're in the same vine;</li> <li>Stage2: the bigger croc doesn't follow you but it's harder to predict when they will open the mouth (they are worth 50pts more than other two kinds) and they have a good chance to move faster;</li> <li>Stage3: not having a predetermined behaviour/layout the growing difficulty is mainly rendered by speed/pace (notice how smaller rocks gradually become the real challenge at higher levels);</li> <li>Stage4: the delicate timing between girl and natives has been carefully preserved close to the original while the spear-throwing one has its own gradually fast timing (currently no animation/sfx after his success/failure on throwing);</li> <li>Congrats screen music (reason: not rewarding).</li> </ul> <h2>Features</h2> <ul> <li>60fps flickering tricks for: <ul> <li>alpha channel antialias (font)</li> <li>transparency in general</li> <li>colour blending</li> <li>a few subpixel experiments (e.g. the girl in the title screen, in between it creates some blur and it's ok since she's in the distance)</li> <li>(in case you can disable flicker in Pause-MENU P/Enter)</li> </ul></li> <li>P8scii for extra gfx (see post: <a href="https://www.lexaloffle.com/bbs/?tid=49901">One-Off GFX</a>)</li> <li>PCM audio to replicate the (notoriously distorted) Tarzan yell</li> <li>Hi-score is saved</li> </ul> <h3>Credits</h3> <p>Code,sfx,music,gfx by <a href="https://www.lexaloffle.com/bbs/?uid=66501"> @Heracleum</a><br /> Many Thanks to:<br /> <a href="https://www.lexaloffle.com/bbs/?uid=58302"> @Trog</a> for betatesting and precious first-impression detailed notes<br /> <em>(...your name here...)</em></p> <h2>Feedback</h2> <p>Please leave a comment and let me know.<br /> For instance I have currently in the todo list:</p> <ul> <li>Menu option to mute the main theme during action?</li> <li>Compose some new music for the title screen?</li> </ul> https://www.lexaloffle.com/bbs/?tid=50941 https://www.lexaloffle.com/bbs/?tid=50941 Sun, 01 Jan 2023 20:39:16 UTC Two methods for BIG titles <p>A couple options (totally different methods) to display big titles, e.g. a 'game over' screen or 'the end' in the style of silent movies.</p> <h2>Method 1 - Map and sprite tiles</h2> <p>You draw a few sprite tiles with corners and reusable portions to form your title.<br /> Pros: all the advantages of Pico-8's maps and easy to edit your title<br /> Cons: you need some free area in your Map and you spend tiles of your spritesheet</p> <h2>Method 2 - P8scii One-Off characters</h2> <p>You can use this <a href="https://www.lexaloffle.com/bbs/?tid=49901">spritesheet to P8scii string converter here</a> to obtain a printable string that will display the title (or logo etc..).<br /> Pros: no map, no spritesheet, just a big string<br /> Cons: pick your image carefully, avoid one with many stray pixels (read hints in the linked One-off page) or it will eat compressed characters space.</p> <h3>Press:</h3> <ul> <li>Z to restart the animation.</li> <li>X to swap the method (One-off gfx / map)</li> </ul> <p> <table><tr><td> <a href="/bbs/?pid=120294#p"> <img src="/bbs/thumbs/pico8_oldtimeytitle-0.png" style="height:256px"></a> </td><td width=10></td><td valign=top> <a href="/bbs/?pid=120294#p"> oldtimeytitle</a><br><br> by <a href="/bbs/?uid=66501"> Heracleum</a> <br><br><br> <a href="/bbs/?pid=120294#p"> [Click to Play]</a> </td></tr></table> </p> <img style="margin-bottom:16px" border=0 src="/media/66501/oldtimeytitle_0.gif" alt="" /> https://www.lexaloffle.com/bbs/?tid=50105 https://www.lexaloffle.com/bbs/?tid=50105 Tue, 08 Nov 2022 01:04:30 UTC Legend of Kuna <p> <table><tr><td> <a href="/bbs/?pid=120167#p"> <img src="/bbs/thumbs/pico8_legend_of_kuna-3.png" style="height:256px"></a> </td><td width=10></td><td valign=top> <a href="/bbs/?pid=120167#p"> Legend of Kuna</a><br><br> by <a href="/bbs/?uid=66501"> Heracleum</a> <br><br><br> <a href="/bbs/?pid=120167#p"> [Click to Play]</a> </td></tr></table> </p> <h2>Controls</h2> <ul> <li>⬆️ Walk</li> <li>⬅️➡️ Turn left/right</li> <li>⬇️ Toggle basic HUD</li> <li>❎ [X] Hold for full HUD and ⬅️⬆️➡️⬇️ to inspect the surroundings</li> <li>ⓩ [Z] Open Inventory/Actions menu</li> </ul> <h2>How to play</h2> <p>You initially can't do much -except gathering fruits- more items and actions will be unlocked as you progress in the game.<br /> So just explore the islands and:</p> <ul> <li>talk to the stone statue/head</li> <li>walk under palm-trees to gather a couple fruits if any</li> </ul> <h3>Here be Dragons</h3> <p>The writing &quot;Here be Dragons&quot; at the edge of the map means you can't walk farther at that moment:<br /> the game map is initially just a small portion of the full map, next areas will be unlocked by defeating the enemy creatures, just report your success to the statue (Kahuna).</p> <h3>Leader of the Pack</h3> <p>As soon as picking up starfish is unlocked ensure you're the leader (check the colour of the <code>⭐ leader</code> on top-left, if white it's you). If one of the other members of the pack becomes the leader you will often lose the control and your instincts will guide you to join your leader. You can still use left/right to avoid troubles or pick up stuff.</p> <h3>Papa, the Cloud, Beasts, Hints &amp; Unexplained Secrets</h3> <p><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;"></p> <ul> <li><strong>Papa</strong>: is Mother Earth (Papahānaumoku) and make your plants grow but multiplying Krystals (if placed on soil) drains more power. While holding ❎ her power is shown in the green bar at top-right (plant icon);</li> <li><strong>Cloud</strong>: it's goddess Hina's servant cloud (Ao-Opua). Its power is shown at top-right as a pink bar just below Papa's. It will perform way better at multiplying Krystals but of course you need to unlock the 'call cloud' action: spending only 1 Krystals could not be enough if it's far away, maybe spend a couple and it will circle around you (you can imagine how crucial is to place Krystals and plants for better results). Before calling it ensure its power is enough.</li> <li><strong>Fighting Beasts</strong>: against the first creatures you have no other option than physical attacks (yes you just walk/bump into them, you'll hear a sound), let you pack help you: you can &quot;use&quot; and control them as a weapon knowing they will circle around you briefly (you must be the leader). You later unlock more items to throw at them, each with its own damage; well you can't expect much throwing seeds at them but the rest of the pack would throw anything on hand (grab something you need if they miss);</li> <li><strong>Beasts spawning</strong>: they will appear from the west edge of the map, random location; also kahunas turn their head in the direction of the beast to show you the way.</li> <li><strong>Temple Bonuses</strong>: the quests to unlock the Mana Krystals explain the basics, but for clarity, when they say &quot;Carry -50% weight&quot; it's just that item you placed on that square in the center. Also if someone else steal from there the bonus will persist until you add other items there.</li> <li><strong>Field of Wonders</strong>: (?) I'll keep the mystery for you to solve but those fields will help with limited resources on the islands.</li> <li><strong>Patch with tall plants</strong>: you could find extra seeds while searching around, they will not produce fruits though.</li> <li><em>adding more...</em><br /> </div></div></div></li> </ul> <h2>Credits</h2> <p>Code,sfx,music,gfx by <a href="https://www.lexaloffle.com/bbs/?uid=66501"> @Heracleum</a><br /> Thanks to:</p> <ul> <li><a href="https://www.lexaloffle.com/bbs/?uid=71437"> @SmartAlloc</a> for proofreading and correcting the dialogues script!</li> <li><a href="https://www.lexaloffle.com/bbs/?uid=25532"> <a href="https://www.lexaloffle.com/bbs/?uid=25532"> @freds72</a></a> <a href="https://www.lexaloffle.com/bbs/?uid=44112"> @shy</a> and others in Discord for the precious help with tricks and optimisation secrets.</li> <li><a href="https://www.lexaloffle.com/bbs/?uid=29645"> @thisismypassword</a> for creating <a href="https://github.com/thisismypassport/shrinko8">shrinko8</a> and its prodigious minifying powers!</li> <li><a href="https://soundcloud.com/c_hrissy/magic-cat-academy-soundtrack-main">c_hrissy on SoundCloud</a> for inspiration on the theme, brilliant chord progression!</li> <li>The actual Hawaiian Legend of Kuna the dragon, in short: <a href="https://www.hilohattie.com/blogs/news/the-legend-of-kuna-the-dragon">https://www.hilohattie.com/blogs/news/the-legend-of-kuna-the-dragon</a></li> <li>Bugs reported: <a href="https://www.lexaloffle.com/bbs/?uid=49909"> @Wolfe3D</a> <a href="https://www.lexaloffle.com/bbs/?uid=68442"> @ericb</a> <a href="https://www.lexaloffle.com/bbs/?uid=25532"> <a href="https://www.lexaloffle.com/bbs/?uid=25532"> @freds72</a></a></li> </ul> <h2>Version history:</h2> <ul> <li>3 Fixed bugs: two nasty bugs with dialogue selection/confirm (ericb, freds72)</li> <li>2 Fixed bug: mashing both buttons crash (Wolfe3D)</li> </ul> <h2>One Cart</h2> <p>This is my first Pico-8 full game. As a personal challenge I tried to squeeze everything in one cart including the start screen gfx and game data. So I basically have no tokens nor compressed character space left to add a line. Yes, this strongly limited the dialogues and room for taking full advantage of the isometric engine, pseudo-voxels and adding more features/stuff.<br /> I hope you enjoy it anyway.<br /> Thanks for playing!</p> https://www.lexaloffle.com/bbs/?tid=50063 https://www.lexaloffle.com/bbs/?tid=50063 Sun, 06 Nov 2022 03:09:52 UTC Comic 128x384px <h1>Comic 128x384px example using P8scii One-off chars</h1> <p>A vertical comic strip three fullscreens tall<br /> An example for the gfx method and spritesheet-to-p8scii string converter described here:<br /> <a href="https://www.lexaloffle.com/bbs/?tid=49901">https://www.lexaloffle.com/bbs/?tid=49901</a></p> <p> <table><tr><td> <a href="/bbs/?pid=119571#p"> <img src="/bbs/thumbs/pico8_comic1offx3-0.png" style="height:256px"></a> </td><td width=10></td><td valign=top> <a href="/bbs/?pid=119571#p"> comic1offx3</a><br><br> by <a href="/bbs/?uid=66501"> Heracleum</a> <br><br><br> <a href="/bbs/?pid=119571#p"> [Click to Play]</a> </td></tr></table> </p> <p>Please note, in this example the 3 screens are gradually less optimised for this method:</p> <ul> <li>screen 1 at the top has been cleaned up of most stray pixels and recoloured manually in some parts;</li> <li>screen 2 in the middle has a few minimal edits;</li> <li>screen 3 raw image, not optimised, a few colours but stray pixels increase the char count.</li> </ul> https://www.lexaloffle.com/bbs/?tid=49917 https://www.lexaloffle.com/bbs/?tid=49917 Wed, 26 Oct 2022 00:06:01 UTC One-Off GFX <h1>One-Off GFX</h1> <h3>To display fullscreen images with a PRINT command. It doesn't take any space in your spritesheet, it uses p8scii one-off characters all in one string (~3000chars if used properly).</h3> <p>This is an old school method widely used in the 80s (e.g. on ZX Spectrum): each 8x8 block had a foreground (ink) and background (paper) colour, monochrome but using the colours well would deliver excellent pictures for title screens.<br /> Now, One-Off GFX is based on that method but could also have more than two colours in a single block (at the expense of extra chars).<br /> So -differently from other image compression methods- it doesn't really matter:</p> <ul> <li>how complex the pixel patterns are in the gfx (dithered or plain)</li> <li>how many colours are present overall on the screen</li> </ul> <p>It just depends on how many colours are present in each 8x8 block; better keep it less than 4 and possibly just 2 in most of the blocks choosing wisely while drawing or editing the pic. A good drawing tool to improve monochrome skills is <a href="http://multipaint.kameli.net/">Multipaint</a> (choose c64 hires mode)</p> <p>Ok we have an optimised gfx, save it as .PNG, what now?</p> <h2>Spritesheet to P8scii string converter cart</h2> <p>Download this cart and use it as converter tool:<br /> <table><tr><td> <a href="/bbs/?pid=119527#p"> <img src="/bbs/thumbs/pico8_one_off_gfx-0.png" style="height:256px"></a> </td><td width=10></td><td valign=top> <a href="/bbs/?pid=119527#p"> one_off_gfx</a><br><br> by <a href="/bbs/?uid=66501"> Heracleum</a> <br><br><br> <a href="/bbs/?pid=119527#p"> [Click to Play]</a> </td></tr></table> </p> <p>How to use:</p> <ul> <li>(optional) edit the code and choose your transparent color (default 0);</li> <li>go to GFX editor, select the first tile marked with 'x'</li> <li>drag and drop your PNG file;</li> <li>you should see your image in the spritesheet;</li> <li>RUN the cart</li> <li>you see your image and how many CHARS the string will be long (if higher than 10k better optimise it further, e.g. kill stray pixels);</li> <li>if the char count satisfies your expectations, press Ctrl+C to copy the image data (a string) in the clipboard;</li> </ul> <p>Use it in your project/game cart:</p> <ul> <li>use Ctrl+P to enter Puny font mode (to respect pasted binary data)</li> <li>just paste the copied string in your code like <code>scr=&quot;(paste here)&quot;</code></li> <li>and print your string on screen: <code>?scr,0,0</code></li> <li>(you may need to use a <code>cls(n)</code> with the same colour code as the transparent one declared when converting)</li> </ul> <h3>Comic example (3 full screens)</h3> <p>A -not so well optimised- example of a comic:</p> <img style="margin-bottom:16px" border=0 src="/media/66501/monoscr_test02_1.gif" alt="" /> <p>The <a href="https://www.lexaloffle.com/bbs/?tid=49917">comic example cart is here</a></p> <h3>Taking advantage of P8scii</h3> <p>Wide,Tall, Striped and Pinball modes<br /> <a href="https://www.lexaloffle.com/bbs/?pid=119563#p">See comment below</a></p> <p>(More to mention... using smaller blocks as sprites, transparency, etc...)</p> https://www.lexaloffle.com/bbs/?tid=49901 https://www.lexaloffle.com/bbs/?tid=49901 Tue, 25 Oct 2022 00:57:17 UTC Dynamic SFX Demo <p> <table><tr><td> <a href="/bbs/?pid=113089#p"> <img src="/bbs/thumbs/pico8_dynasfx-0.png" style="height:256px"></a> </td><td width=10></td><td valign=top> <a href="/bbs/?pid=113089#p"> Dynamic SFX Demo</a><br><br> by <a href="/bbs/?uid=66501"> Heracleum</a> <br><br><br> <a href="/bbs/?pid=113089#p"> [Click to Play]</a> </td></tr></table> </p> <h2>Description</h2> <p>The demo shows how your PICO-8 games could add dynamicity to sound effects depending on what happens and the action involving your sprites, depending on their position, speed etc... not just use a few prefab sfx or playing several different sounds to give the impression they react to the action (e.g. a vehicle acceleration, spaceship thrust).</p> <h2>Presets</h2> <p>There are 8 examples (presets, select them with 🅾️ and ❎) of sounds and each shows a simple preview of some game action. To interact with preset previews you basically change the Pitch with ⬆️ and ⬇️ keys.</p> <h2>The Note</h2> <p>At the top you see the two bytes representing the note, their address in memory (it's sfx 1), the values in binary (help you understand how 'components' such as Pitch, WaveForm, Volume, Effect are stored in the bytes) and their corresponding decimal values.<br /> You can use ⬅️➡️ to select a different component and edit its value.</p> <p>At the moment it's 'just a demo' (although it took me more than 2 weeks, longer than a single game dev) and it still doesn't offer some basic functions to copy into your game to implement dynamic sounds. I'll update it as soon as I test more myself on an actual game.</p> https://www.lexaloffle.com/bbs/?tid=48146 https://www.lexaloffle.com/bbs/?tid=48146 Mon, 13 Jun 2022 02:24:38 UTC Web Player's Pause overrides btn(6) and poke(0x5f30,1) <h3>TL;DR</h3> <p>the methods to detect or inhibit Pause button apparently do not work using the Web Player Pause button.</p> <h2>More Details:</h2> <p>In my game Amidus I needed to <strong>hide the stage during Pause to avoid cheating</strong> as it's based on a short time to realise what's the correct path to take.<br /> So I implemented a few methods like checking for btn(6) and even inhibit pause during that short phase with the timer running using poke(0x5f30,1) as you can see in the code (carts below).</p> <p>As both methods work beautifully using the internal Pause P/Enter, <strong>both failed to work using the Web Player Pause button that apparently overrides both checks</strong>.</p> <p>I tried to ask in the Discord #help and they suggested to report the bug here as it's an unexpected behaviour.</p> <p>On this version you can test the &quot;inhibited Pause&quot; poke(0x5f30,1) method:<br /> <table><tr><td> <a href="/bbs/?pid=112596#p"> <img src="/bbs/thumbs/pico8_amidus-4.png" style="height:256px"></a> </td><td width=10></td><td valign=top> <a href="/bbs/?pid=112596#p"> Amidus 3.2</a><br><br> by <a href="/bbs/?uid=66501"> Heracleum</a> <br><br><br> <a href="/bbs/?pid=112596#p"> [Click to Play]</a> </td></tr></table> </p> <p>On this version you can test the &quot;Hide stage on Pause&quot; checking for btn(6) during _draw() method:<br /> <table><tr><td> <a href="/bbs/?pid=112596#p"> <img src="/bbs/thumbs/pico8_amidus-3.png" style="height:256px"></a> </td><td width=10></td><td valign=top> <a href="/bbs/?pid=112596#p"> Amidus 3.2</a><br><br> by <a href="/bbs/?uid=66501"> Heracleum</a> <br><br><br> <a href="/bbs/?pid=112596#p"> [Click to Play]</a> </td></tr></table> </p> https://www.lexaloffle.com/bbs/?tid=48016 https://www.lexaloffle.com/bbs/?tid=48016 Fri, 03 Jun 2022 13:34:59 UTC Amidus <p> <table><tr><td> <a href="/bbs/?pid=112596#p"> <img src="/bbs/thumbs/pico8_amidus-4.png" style="height:256px"></a> </td><td width=10></td><td valign=top> <a href="/bbs/?pid=112596#p"> Amidus 3.2</a><br><br> by <a href="/bbs/?uid=66501"> Heracleum</a> <br><br><br> <a href="/bbs/?pid=112596#p"> [Click to Play]</a> </td></tr></table> </p> <h2>Controls</h2> <p>Any key to start/skip waiting screens.<br /> ➡️ Right Arrow to Speed up the loop while choosing the path.<br /> ➡️ During the waiting screen at the end of every success or fail, use Right Arrow to -recklessly- advance Level (added for testing purposes but you could use that to test your skills at advanced difficulty, no actual benefit to score obviously, you simply skip easier levels) </p> <h2>Game Description</h2> <p>The 80's arcade game Amidar had a bonus stage every two levels, this pico-8 game helps in training your skills for that stage until extreme levels. The difficulty and complexity of random stages gradually increases at every level.</p> <p><strong>For those unfamiliar with Amidar</strong>: at first it might seem &quot;based on luck&quot; but it's definitely not:<br /> you should choose the correct path to the prize by following an ideal path starting from the bottom where the banana is and then follow the path upwards to know the correct one to choose (read below).</p> <h2>Path algorithm</h2> <p>The movement on path is based on &quot;<a href="https://en.wikipedia.org/wiki/Ghost_Leg">Amidakuji (Wikipedia)</a>&quot; method of lottery, basically move vertically up/down, follow the first horizontal line you encounter and so on.</p> <h2>Development</h2> <p>It took me a week of development: 3-4 for the actual game, the remaining 3 for music and sound</p> https://www.lexaloffle.com/bbs/?tid=47998 https://www.lexaloffle.com/bbs/?tid=47998 Thu, 02 Jun 2022 02:22:56 UTC