[{"data":1,"prerenderedAt":256},["ShallowReactive",2],{"/projects/shooting-gallery-for-playdate":3},{"id":4,"title":5,"additionalTags":6,"body":7,"description":229,"excerpt":230,"extension":231,"featured":232,"meta":233,"name":234,"navigation":232,"openSource":235,"path":236,"projectDate":237,"seo":238,"sitemap":239,"status":243,"stem":244,"subtitle":245,"tags":246,"thumbnail":254,"__hash__":255},"projects/projects/3.shooting-gallery-for-playdate.md","Shooting Gallery For Playdate",[],{"type":8,"value":9,"toc":220},"minimark",[10,14,19,23,29,33,44,53,76,81,85,93,109,116,125,130,138,147,152,161,170,174,177,188,195,199,209],[11,12],"stats-table",{":stats":13},"[{\"label\": \"release date\", \"value\": \"2023\"}, {\"label\": \"rating\", \"stars\":5 }, {\"label\": \"downloads\", \"value\": \"390+\"}, {\"label\": \"URL\", \"value\": \"itch.io\", \"url\": \"https://limitlis.itch.io/shooting-gallery\"}]",[15,16,18],"h3",{"id":17},"step-right-up","Step right up!",[20,21,22],"p",{},"Aim for the middle and test your mettle against a volley of tricky targets, diabolical ducks, and bewitched bombs as they float tauntingly across your playdate. Use PowerUps to your advantage to reach the top of the high score leaderboard.\nSet a high score and then hand the playdate to a friend to see if they can beat it.",[24,25,26],"blockquote",{},[20,27,28],{},"\"incredibly high polish on the concept\" - LedBetter Games",[15,30,32],{"id":31},"inspiration","Inspiration",[20,34,35,36,43],{},"From the day it was first announced I knew I wanted to make a game for the yellow ",[37,38,42],"a",{"href":39,"rel":40},"https://play.date/",[41],"nofollow","Playdate"," console and immediately pre-ordered one.",[20,45,46,47,52],{},"Having never written a single line of Lua, I went from designing and building to self-publishing and releasing my first indie game on ",[37,48,51],{"href":49,"rel":50},"https://limitlis.itch.io/shooting-gallery",[41],"itch.io",".",[54,55,60],"div",{"className":56},[57,58,59],"h-auto","w-auto","aspect-3-2",[20,61,62],{},[63,64],"img",{"alt":65,"className":66,"src":74,"width":75},"Gameplay",[67,68,69,70,71,72,59,73],"not-prose","rounded","h-48","w-full","md:h-full","md:h-48","object-contain","/projects/playdate/gameplay.gif",400,[24,77,78],{},[20,79,80],{},"\"I like the duck game\" – My kids",[15,82,84],{"id":83},"gameplay-mechanics","Gameplay Mechanics",[20,86,87],{},[37,88,92],{"href":89,"className":90},"",[91],"text-lg","PowerUps",[20,94,95,106],{},[63,96],{"alt":97,"className":98,"src":103,"width":104,"style":105},"Time Bonus",[99,100,101,102],"inline-flex","p-1","object-cover","pointer-none","/projects/playdate/time-bonus.gif",30,"margin: 0; margin-right: 10px; zoom: 1.5; background-color: #b1aea7; aspect-ratio: 1; width: 40px;",[107,108,97],"strong",{},[110,111,112],"ul",{},[113,114,115],"li",{},"Adds seconds to the clock to extend your current game.",[20,117,118,122],{},[63,119],{"alt":97,"className":120,"src":121,"width":104,"style":105},[99,100,101,102],"/projects/playdate/phantom-ammo.gif",[107,123,124],{},"Phantom Ammo",[110,126,127],{},[113,128,129],{},"Shoot to stop at a random number and that amount of phantom ammo will be added without a reloading or resetting your hit streak.",[24,131,132],{},[20,133,134],{},[135,136,137],"em",{},"Reloading will be prevented until all phantom rounds are spent.",[20,139,140,144],{},[63,141],{"alt":97,"className":142,"src":143,"width":104,"style":105},[99,100,101,102],"/projects/playdate/point-bomb.png",[107,145,146],{},"Point Bombs",[110,148,149],{},[113,150,151],{},"Shoot one and a bomb card will appear in your hit streak. Clear the card before the reload counter reaches 0 and receive the points.\nOtherwise those points will be removed from your current score.",[20,153,154,159],{},[63,155],{"alt":156,"className":157,"src":158,"width":104,"style":105},"Shiny Targets",[99,100,101,102],"/projects/playdate/shiny-target.webp",[107,160,156],{},[110,162,163],{},[113,164,165,166,169],{},"Shiny targets will ",[107,167,168],{},"2X"," the score for the first three hits, being worth 2, 4, 6, 8 or 10 depending on your accuracy.",[15,171,173],{"id":172},"development-challenges","Development Challenges",[20,175,176],{},"Getting the duck's movement just right was pretty challenging early on while I was still figuring out the SDK. I had a general idea of how I wanted the movement to be\nbut most importantly it had to feel mechanical — as if driven by gears. The SDK has built in support for making arcs but getting the random\nmovement took some math to get just right.",[20,178,179,180,183,184,187],{},"Here's a small diagram I made to help me figure out where to place the next arc based on a random ",[107,181,182],{},"radius","\nand the duck's current ",[107,185,186],{},"X"," position.",[20,189,190],{},[63,191],{"alt":192,"className":193,"src":194,"width":75},"Arc Math",[70],"/projects/playdate/arcmath.webp",[15,196,198],{"id":197},"nerdy-stats","Nerdy Stats",[20,200,201,202,208],{},"For source control I set up a local ",[37,203,207],{"href":204,"rel":205,"target":206},"https://about.gitea.com/",[41],"_blank","Gittea"," instance on my home Network Attached Storage (NAS).",[210,211,212],"client-only",{},[213,214,219],"iframe",{"frameBorder":215,"src":216,"width":217,"height":218},"0","https://itch.io/embed/1837225?border_width=2&bg_color=18181c&fg_color=a3a5aa&link_color=1fcd9f&border_color=26262f",554,169,"\u003Ca href=\"https://limitlis.itch.io/shooting-gallery\">SHOOTING GALLERY for Playdate by limitlis\u003C/a>",{"title":89,"searchDepth":221,"depth":221,"links":222},2,[223,225,226,227,228],{"id":17,"depth":224,"text":18},3,{"id":31,"depth":224,"text":32},{"id":83,"depth":224,"text":84},{"id":172,"depth":224,"text":173},{"id":197,"depth":224,"text":198},"A carnival inspired game for the Playdate console.",null,"md",true,{"url":49},"Shooting Gallery",false,"/projects/shooting-gallery-for-playdate","2023-10-01T00:00:00.000Z",{"description":229},{"loc":236,"lastmod":240,"changefreq":241,"priority":242},"2026-02-22","monthly",0.8,"published","projects/3.shooting-gallery-for-playdate","Game Design & Development",[247,248,249,250,251,252,253],"Lua","Playdate SDK","Graphic Design","SFX","Game design","Game Development","Git","/projects/playdate/thumb.webp","VNfjA2HH2oLPUMOgxzNMTUpy8Ekr-nOl_rU5F6jh6Ug",1778072417581]