Ronin [Lexaloffle Blog Feed]https://www.lexaloffle.com/bbs/?uid=13739 Kishotenketsu <p> <table><tr><td> <a href="/bbs/?pid=49905#p"> <img src="/bbs/thumbs/pico49978.png" style="height:256px"></a> </td><td width=10></td><td valign=top> <a href="/bbs/?pid=49905#p"> Kishotenketsu</a><br><br> by <a href="/bbs/?uid=13739"> Ronin</a> <br><br><br> <a href="/bbs/?pid=49905#p"> [Click to Play]</a> </td></tr></table> </p> <p>A small, experimental game I've been working on. Throwing it up for playtesting!</p> <p>Update: 18/03/05<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;"><br /> Added Game Over to Stage 5 when out of fuel<br /> </div></div></div></p> https://www.lexaloffle.com/bbs/?tid=30885 https://www.lexaloffle.com/bbs/?tid=30885 Sat, 03 Mar 2018 18:39:55 UTC Autorunner Prototype <p> <table><tr><td> <a href="/bbs/?pid=36782#p"> <img src="/bbs/thumbs/pico36781.png" style="height:256px"></a> </td><td width=10></td><td valign=top> <a href="/bbs/?pid=36782#p"> Autorunner Prototype Alpha 2.2</a><br><br> by <a href="/bbs/?uid=13739"> Ronin</a> <br><br><br> <a href="/bbs/?pid=36782#p"> [Click to Play]</a> </td></tr></table> </p> <p>Been working on this prototype and need some fresh eyes to see how it's coming along. This is a very bare-bones prototype, mostly a test to see how well the core mechanics work and feel. </p> <p>Controls:<br /> <img style="margin-bottom:16px" border=0 src="https://www.lexaloffle.com/bbs/files/13739/b1-right.png" width=21 height=15 alt="" /> Start Moving<br /> <img style="margin-bottom:16px" border=0 src="https://www.lexaloffle.com/bbs/files/13739/b5-x.png" width=21 height=15 alt="" /> On Ground:Jump/Mid-air:Freeze&amp;Aim/Frozen:Airdash<br /> <img style="margin-bottom:16px" border=0 src="https://www.lexaloffle.com/bbs/files/13739/b4-o.png" width=21 height=15 alt="" /> Shoot<br /> <img style="margin-bottom:16px" border=0 src="https://www.lexaloffle.com/bbs/files/13739/b3-down.png" width=21 height=15 alt="" /> Pass through blue platforms/Frozen:Unfreeze and Fall</p> <p>All assets are simple placeholders and the levels are me working at making some tutorial stages. Please leave comments or fill out my <a href="https://goo.gl/forms/tK8LJwHEXWpFrztS2">feedback questionnaire</a>. Any feedback would be greatly appreciated!</p> <p>Thanks for playing!</p> https://www.lexaloffle.com/bbs/?tid=28741 https://www.lexaloffle.com/bbs/?tid=28741 Fri, 27 Jan 2017 14:37:08 UTC Queues and Stacks <p>I created an implementation of a queue for the game I'm working on, and thought that it could be of use to someone else. And while I was at it, programmed a stack and double-ended queue implementations as well.</p> <p>To make a queue, stack, or double-ended queue, call makequeue(), makestack(), or makedqueue() respectfully. These functions return the empty queue or stack and are ready to use.</p> <p>For basic queues and stacks, any attempt to add a value to the table places it at the end of the table, no matter the key you assign to it. Doesn't matter if you use t[1]=val, t.key=val, or add(t,val), it all works the same. Use t.pop to get and remove the lead value; first inserted for queue, last inserted for stack. And t.peek lets you look at the next value without removing it. t[k] will allow you to look at the value at that position, but that's mostly there so foreach and count will work.</p> <p>Double-ended queues work a bit differently. Adding a value will normally add to the end table as usual, but you can also add a value to the front by using t.push_front=val or t[0]=val. Access is handled with t.pop_front and t.pop_back, which pops from first-in and last-in respectfully, and use t.front and t.back to peek similarly.</p> <p>Don't know if there's a more efficient way to code this, but this is what I've come up with.</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> queue={__index=function(t,k) &nbsp; if k==&quot;pop&quot; and #t.tbl&gt;0 then &nbsp;&nbsp;&nbsp;local pop=t.tbl[1] &nbsp;&nbsp;&nbsp;del(t.tbl,t.tbl[1]) &nbsp;&nbsp;&nbsp;return pop &nbsp;&nbsp;&nbsp;elseif k==&quot;peek&quot; then &nbsp;&nbsp;&nbsp;return t.tbl[1] &nbsp;&nbsp;else &nbsp;&nbsp;&nbsp;return t.tbl[k] &nbsp;&nbsp;end &nbsp;end, &nbsp;__newindex=function(t,k,v) &nbsp;&nbsp; t.tbl[#t.tbl+1]=v &nbsp;end, &nbsp;__len=function(t) &nbsp;&nbsp; return #t.tbl &nbsp;end} function makequeue() &nbsp;local q={tbl={}} &nbsp;setmetatable(q,queue) &nbsp;return q end stack={__index=function(t,k) &nbsp;&nbsp;if k==&quot;pop&quot; and #t.tbl&gt;0 then &nbsp;&nbsp;&nbsp;local pop=t.tbl[#t.tbl] &nbsp;&nbsp;&nbsp;del(t.tbl,t.tbl[#t.tbl]) &nbsp;&nbsp;&nbsp;return pop &nbsp;&nbsp;elseif k==&quot;peek&quot; then &nbsp;&nbsp;&nbsp;return t.tbl[#t.tbl] &nbsp;&nbsp;else &nbsp;&nbsp;&nbsp;return t.tbl[#t.tbl-k+1] &nbsp;&nbsp;end &nbsp;end, &nbsp;__newindex=function(t,k,v) &nbsp;&nbsp;t.tbl[#t.tbl+1]=v &nbsp;end, &nbsp;__len=function(t) &nbsp;&nbsp;return #t.tbl &nbsp;end} function makestack() &nbsp;local s={tbl={}} &nbsp;setmetatable(s,stack) &nbsp;return s end dqueue={__index=function(t,k) &nbsp;&nbsp;if k==&quot;pop_front&quot; and #t.tbl&gt;0 then &nbsp;&nbsp;&nbsp;local pop=t.tbl[1] &nbsp;&nbsp;&nbsp;del(t.tbl,t.tbl[1]) &nbsp;&nbsp;&nbsp;return pop &nbsp;&nbsp;elseif k==&quot;pop_back&quot; and #t.tbl&gt;0 then &nbsp;&nbsp;&nbsp;local pop=t.tbl[#t.tbl] &nbsp;&nbsp;&nbsp;del(t.tbl,t.tbl[#t.tbl]) &nbsp;&nbsp;&nbsp;return pop &nbsp;&nbsp;elseif k==&quot;back&quot; then &nbsp;&nbsp;&nbsp;return t.tbl[#t.tbl] &nbsp;&nbsp;elseif k==&quot;front&quot; then &nbsp;&nbsp;&nbsp;return t.tbl[1] &nbsp;&nbsp;else &nbsp;&nbsp;&nbsp;return t.tbl[k] &nbsp;&nbsp;end &nbsp;end, &nbsp;__newindex=function(t,k,v) &nbsp;&nbsp;if k==&quot;push_front&quot; or k==0 then &nbsp;&nbsp;&nbsp;local ntbl={v} &nbsp;&nbsp;&nbsp;foreach(t.tbl,function(nv) &nbsp;&nbsp;&nbsp;&nbsp;add(ntbl,nv) &nbsp;&nbsp;&nbsp;end) &nbsp;&nbsp;&nbsp;t.tbl=ntbl &nbsp;&nbsp;else &nbsp;&nbsp;&nbsp;t.tbl[#t.tbl+1]=v &nbsp;&nbsp;end &nbsp;end, &nbsp;__len=function(t) &nbsp;&nbsp;return #t.tbl &nbsp;end} function makedqueue() &nbsp;local dq={tbl={}} &nbsp;setmetatable(dq,dqueue) &nbsp;return dq end </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=28543 https://www.lexaloffle.com/bbs/?tid=28543 Thu, 12 Jan 2017 16:42:19 UTC Swamp Trek <p> <table><tr><td> <a href="/bbs/?pid=33592#p"> <img src="/bbs/thumbs/pico33616.png" style="height:256px"></a> </td><td width=10></td><td valign=top> <a href="/bbs/?pid=33592#p"> Swamp Trek</a><br><br> by <a href="/bbs/?uid=13739"> Ronin</a> <br><br><br> <a href="/bbs/?pid=33592#p"> [Click to Play]</a> </td></tr></table> </p> <p>Aggressive creatures have been wondering into your village. You volunteered to venture out to find where they're coming from. After a few days search you find yourself at the swamp that old legends warn of entering. With no other choice, you prepare to search the treacherous swamp. </p> <p>First game I've publicly released, so probably isn't great but am still proud of it and was a great leaning experience! Am looking forward to creating more games in the future.</p> <p>Don't read this unless you're having difficulty in battle. Did something kind of different and tried to made the first encounter a decent learning experience.<br /> <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;"><br /> You use directional key and x to choose 3 actions per turn, player and enemy actions are simultaneous. You get a short message describing the action the enemy is doing to help decide the best actions.<br /> There are 4 actions;<br /> <img style="margin-bottom:16px" border=0 src="https://www.lexaloffle.com/bbs/files/13739/advance.png" width=32 height=32 alt="" /> is advance, next attack does more damage up to a cap.<br /> <img style="margin-bottom:16px" border=0 src="https://www.lexaloffle.com/bbs/files/13739/circle.png" width=32 height=32 alt="" /> is circle, resets enemy advance bonuses.<br /> <img style="margin-bottom:16px" border=0 src="https://www.lexaloffle.com/bbs/files/13739/defend.png" width=32 height=32 alt="" /> is defend, reduces damage taken. Enemy defense counter attacks if no damage is done<br /> <img style="margin-bottom:16px" border=0 src="https://www.lexaloffle.com/bbs/files/13739/attack.png" width=32 height=32 alt="" /> is attack.</p> <p>These actions are kind of a rock-paper-scissors, <img style="margin-bottom:16px" border=0 src="https://www.lexaloffle.com/bbs/files/13739/attack.png" width=32 height=32 alt="" />&gt;<img style="margin-bottom:16px" border=0 src="https://www.lexaloffle.com/bbs/files/13739/circle.png" width=32 height=32 alt="" />&gt;<img style="margin-bottom:16px" border=0 src="https://www.lexaloffle.com/bbs/files/13739/advance.png" width=32 height=32 alt="" />&gt;<img style="margin-bottom:16px" border=0 src="https://www.lexaloffle.com/bbs/files/13739/defend.png" width=32 height=32 alt="" />&gt;<img style="margin-bottom:16px" border=0 src="https://www.lexaloffle.com/bbs/files/13739/attack.png" width=32 height=32 alt="" /><br /> But an attack with advance bonus will break though defense.</p> <p>Some enemies have unique actions which have an unique counter.<br /> </div></div></div></p> <p>Please give feedback, will help me with learning game design!<br /> Updates:<br /> <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;"><br /> First update:<br /> &nbsp; Fixed interact message<br /> &nbsp; Battle UI tweaks<br /> &nbsp; First enemy does and takes less damage to allow for more playing with fight mechanics<br /> Second update:<br /> &nbsp; More changes to first fight<br /> </div></div></div><br /> Sprites either taken from or edited from sheets made by Dan Norder, Spider Dave, and Denzi<br /> Credit to Neale Davidson for title font.</p> https://www.lexaloffle.com/bbs/?tid=28231 https://www.lexaloffle.com/bbs/?tid=28231 Fri, 16 Dec 2016 20:21:40 UTC