ScrappyMan25 [Lexaloffle Blog Feed]https://www.lexaloffle.com/bbs/?uid=42251 Space Raider! My First PICO 8 Game! (My first game really?) <p> <table><tr><td> <a href="/bbs/?pid=72327#p"> <img src="/bbs/thumbs/pico8_fabatuzsi-5.png" style="height:256px"></a> </td><td width=10></td><td valign=top> <a href="/bbs/?pid=72327#p"> fabatuzsi</a><br><br> by <a href="/bbs/?uid=42251"> ScrappyMan25</a> <br><br><br> <a href="/bbs/?pid=72327#p"> [Click to Play]</a> </td></tr></table> </p> <h1>SPACE RAIDER!!!!</h1> <h2>My first PICO-8/ Any game project!!</h2> <p>Heyo!! I would like to start by saying Im BRAND NEW HERE! So. Apologies if this is horrible :O </p> <p>Firstly: credit where credit is due: Thank you user Gruber for letting the community use his music in our experiments! </p> <ul> <li>Pico 8 Page: <a href="https://www.lexaloffle.com/bbs/?uid=11292">https://www.lexaloffle.com/bbs/?uid=11292</a></li> <li>Twitter: <a href="https://twitter.com/gruber_music">https://twitter.com/gruber_music</a><br /> (hes super cool - 100% check him out!)</li> </ul> <p>I had fun making it and found that you could publish it and I thought that'd make it easier to have my friends give it a try and provide feedback while having the community chime in as well.</p> <p>Im pretty awkward with the whole publishing thing - so be nice? :P </p> <p> <table><tr><td width=0> <img src="https://www.lexaloffle.com/bbs/gfxc/42251_0.png" width=0 height=0> </td> <td valign=bottom> <a style="cursor:pointer;font-size:8pt" onclick=' var el = document.getElementById("gfxcode_42251_0"); if (el.style.display == "none") el.style.display = ""; else el.style.display = "none"; microAjax("https://www.lexaloffle.com/bbs/gfxc/42251_0.txt", function (retdata){ var el = document.getElementById("gfxcode_42251_0"); el.innerHTML = retdata; el.focus(); el.select(); } ); '> [0x0]</a> </td></tr> <tr><td colspan=2> <textarea rows=3 class=lexinput id="gfxcode_42251_0" style="width:640px;background-color:#fed;display:none;overflow:hidden; font-size:6pt;"></textarea> </td> </tr> </table> </p> <p>I tried to acquaint myself in using objects and properties and tried my best to structure the code well!!<br /> I'm open to any criticism and any recommendations or suggestions!!</p> <p>I'm still hoping to incorporate more features like-</p> <ul> <li>Timers for the spl. effects</li> <li>Enemy AI ships</li> </ul> <h2>Controls:</h2> <h3>Movement : Arrow Keys</h3> <h3>Shoot: Z</h3> <h2>Mechanics:</h2> <ul> <li>You spawn with 3 hearts.</li> <li>Asteroids have a health of 3 so they take 3 hits to get destroyed!</li> <li>The asteroid Spawnrate is a function of the Score so the game gets... harder?</li> <li>You can pick up certain orbs to enhance the ship</li> <li>Pink / Yellow - 20% Spawn rate allowing you to 1 Hit the asteroids <table><tr><td width=0> <img src="https://www.lexaloffle.com/bbs/gfxc/42251_1.png" width=0 height=0> </td> <td valign=bottom> <a style="cursor:pointer;font-size:8pt" onclick=' var el = document.getElementById("gfxcode_42251_1"); if (el.style.display == "none") el.style.display = ""; else el.style.display = "none"; microAjax("https://www.lexaloffle.com/bbs/gfxc/42251_1.txt", function (retdata){ var el = document.getElementById("gfxcode_42251_1"); el.innerHTML = retdata; el.focus(); el.select(); } ); '> [0x0]</a> </td></tr> <tr><td colspan=2> <textarea rows=3 class=lexinput id="gfxcode_42251_1" style="width:640px;background-color:#fed;display:none;overflow:hidden; font-size:6pt;"></textarea> </td> </tr> </table> <table><tr><td width=0> <img src="https://www.lexaloffle.com/bbs/gfxc/42251_6.png" width=0 height=0> </td> <td valign=bottom> <a style="cursor:pointer;font-size:8pt" onclick=' var el = document.getElementById("gfxcode_42251_6"); if (el.style.display == "none") el.style.display = ""; else el.style.display = "none"; microAjax("https://www.lexaloffle.com/bbs/gfxc/42251_6.txt", function (retdata){ var el = document.getElementById("gfxcode_42251_6"); el.innerHTML = retdata; el.focus(); el.select(); } ); '> [0x0]</a> </td></tr> <tr><td colspan=2> <textarea rows=3 class=lexinput id="gfxcode_42251_6" style="width:640px;background-color:#fed;display:none;overflow:hidden; font-size:6pt;"></textarea> </td> </tr> </table> </li> <li>Blue - Enables player with a shield. <table><tr><td width=0> <img src="https://www.lexaloffle.com/bbs/gfxc/42251_3.png" width=0 height=0> </td> <td valign=bottom> <a style="cursor:pointer;font-size:8pt" onclick=' var el = document.getElementById("gfxcode_42251_3"); if (el.style.display == "none") el.style.display = ""; else el.style.display = "none"; microAjax("https://www.lexaloffle.com/bbs/gfxc/42251_3.txt", function (retdata){ var el = document.getElementById("gfxcode_42251_3"); el.innerHTML = retdata; el.focus(); el.select(); } ); '> [0x0]</a> </td></tr> <tr><td colspan=2> <textarea rows=3 class=lexinput id="gfxcode_42251_3" style="width:640px;background-color:#fed;display:none;overflow:hidden; font-size:6pt;"></textarea> </td> </tr> </table> <table><tr><td width=0> <img src="https://www.lexaloffle.com/bbs/gfxc/42251_4.png" width=0 height=0> </td> <td valign=bottom> <a style="cursor:pointer;font-size:8pt" onclick=' var el = document.getElementById("gfxcode_42251_4"); if (el.style.display == "none") el.style.display = ""; else el.style.display = "none"; microAjax("https://www.lexaloffle.com/bbs/gfxc/42251_4.txt", function (retdata){ var el = document.getElementById("gfxcode_42251_4"); el.innerHTML = retdata; el.focus(); el.select(); } ); '> [0x0]</a> </td></tr> <tr><td colspan=2> <textarea rows=3 class=lexinput id="gfxcode_42251_4" style="width:640px;background-color:#fed;display:none;overflow:hidden; font-size:6pt;"></textarea> </td> </tr> </table> </li> <li>Heart - Adds a Heart! <table><tr><td width=0> <img src="https://www.lexaloffle.com/bbs/gfxc/42251_5.png" width=0 height=0> </td> <td valign=bottom> <a style="cursor:pointer;font-size:8pt" onclick=' var el = document.getElementById("gfxcode_42251_5"); if (el.style.display == "none") el.style.display = ""; else el.style.display = "none"; microAjax("https://www.lexaloffle.com/bbs/gfxc/42251_5.txt", function (retdata){ var el = document.getElementById("gfxcode_42251_5"); el.innerHTML = retdata; el.focus(); el.select(); } ); '> [0x0]</a> </td></tr> <tr><td colspan=2> <textarea rows=3 class=lexinput id="gfxcode_42251_5" style="width:640px;background-color:#fed;display:none;overflow:hidden; font-size:6pt;"></textarea> </td> </tr> </table> </li> </ul> <h2>Update Mechanics -</h2> <ul> <li>The shield and bullet upgrades now have a decay with a visual timer!</li> <li>The enemy ships have a basic AI - they move from end to end on their axis and shoot whenyoure at a range of their line of sight</li> <li>The enemy ships also spawn one every 30 seconds with -<br /> 1) random health so it can take anywhere from 3-10 normal bullets to destroy.<br /> 2) random speeds</li> </ul> <h2>Updates : 1.0</h2> <p>1) Fixed an underlying bug that wouldn't randomise the speed and inclination of the asteroids per asteroid.<br /> 2) Added a Decay to the special shield and bullet effects.<br /> 3) Added Music IN GAME.<br /> 4) Changed the effects of the shield to now have INVULNERABILITY! rather than to tank 1 hit (which is what the heart does anyway :P)<br /> 5) I forgot to give credit earlier so this post and the game will now include Credits to the person who was amazing enough to have developers use their music!</p> <h2>Updates : 2.0</h2> <p>1) Added in the enemy space ships and the accompanieng simple AI to shoot in Line of sight and move along their axis.<br /> 2) Cleaned up code and weeded out tiny errors.<br /> 3) some new sound effects.<br /> 4) Slightly redid the point system.</p> <p>Have fun! </p> <p>P.S - I enjoyed working with and learning to use PICO-8 and/or LUA? :P </p> https://www.lexaloffle.com/bbs/?tid=36628 https://www.lexaloffle.com/bbs/?tid=36628 Tue, 28 Jan 2020 04:54:47 UTC