{"author_link":"\/users\/jaonewguy","author_name":"jaonewguy","author_uid":1316876,"comments":[{"id":899098,"author_name":"LDJam user 315277","author_uid":"315277","epoch":1673267256,"text":"Got drown in the hearts :-(","format":"md","likes":1,"spam":"N"},{"id":899125,"author_name":"Linus Lindberg","author_uid":"linus-lindberg","epoch":1673268018,"text":"Very impressive for a first game! It felt a little clunky to control and I wish it was easier to aim the hearts. ","format":"md","likes":1,"spam":"N"},{"id":900759,"author_name":"Fromage","author_uid":"fromage","epoch":1673295431,"text":"Love the pun in the name, heh. \n\nHad some issues with the controls at first but then it started working so not sure if it was just me or what, couldn't replicate it.\n\nText for the lose condition was a bit smooshed, was hard to say if it was 10 or 100.","format":"md","likes":1,"spam":"N"},{"id":900925,"author_name":"Lukas Boersma","author_uid":"lukas-boersma","epoch":1673296555,"text":"This must be one of the simples games I've seen in this game jam, but also one of the games that I have played the longest :D amazing how much fun this simple hitting mechanic is","format":"md","likes":1,"spam":"N"},{"id":900927,"author_name":"jaonewguy","author_uid":"jaonewguy","epoch":1673296572,"text":"@kossnocorp thanks for playing :laughing: \n\n@linus-lindberg thanks for the feedback! What would have made it less clunky? Movement speed was at a constant rate without running, perhaps a small lead-up acceleration?\n\n@Fromage thanks for the feedback! The lose condition smoosh is unfortunate, probably sleep-deprived and didn't notice it, but I swear it wasn't smooshed while testing...","format":"md","likes":0,"spam":"N"},{"id":900933,"author_name":"matimat","author_uid":"matimat","epoch":1673296596,"text":"Fun !","format":"md","likes":1,"spam":"N"},{"id":900942,"author_name":"jaonewguy","author_uid":"jaonewguy","epoch":1673296654,"text":"@lukas-boersma @matimat thanks, glad you enjoyed it :laughing: ","format":"md","likes":0,"spam":"N"},{"id":904012,"author_name":"Enad96","author_uid":"enad96","epoch":1673319411,"text":"This felt refreshing. Nice game name too","format":"md","likes":1,"spam":"N"},{"id":904024,"author_name":"Fuzzy Lobster","author_uid":"fuzzy-lobster","epoch":1673319578,"text":">please tell me why the RigidBody2D Heart sometimes go through a Tilemap wall\/floor.\n\nQuantum tunnelling","format":"md","likes":1,"spam":"N"},{"id":904049,"author_name":"Pennycook","author_uid":"pennycook","epoch":1673319903,"text":"Congratulations on your first game!  It's very responsive and very fun to play; the sound effects and music are well chosen, and I enjoyed that the music accelerated alongside the ever-accumulating hearts.\n\nAs for the RigidBody2D issue... Godot's Debug menu has a \"Visible Collision Shapes\" option that has saved me a few times.  It might be that the collision shape isn't quite aligned the way that you think.  If it's not that, my money would be on the heart's velocity being too high -- if an object is moving too fast, it might move far enough in a single frame to jump \"through\" the object that it was supposed to collide with.  I think the technical term for this is \"tunneling\".","format":"md","likes":2,"spam":"N"},{"id":904112,"author_name":"Joe Eric","author_uid":"joe-eric","epoch":1673320678,"text":"This is a fun game! I love the background music and every time the game goes faster the music as well. The game is like being covered in soft hugs! Love it! Good job!","format":"md","likes":1,"spam":"N"},{"id":905880,"author_name":"xfinktion","author_uid":"xfinktion","epoch":1673347369,"text":"Nice job! Audibly was saying \"Nooooo\" when I got the \"We goin faster\"s. Music does it's job and makes me anxious as it speeds up. very fun to whack hearts around. The art style is beautiful! Exactly the kind of look I imagine when someone mentions pixel art. Impressive first game.\n\nAs @pennycook mentioned, the collision problem is likely due to how fast the hearts are moving. Here's a more detailed explanation based on my memory, if you're interested:\n\nIn Unity (and maybe Godot has this option too), this can be mitigated by using a more costly collision detection (Continuous) vs the one that Godot is likely using (Discrete).  I'm not sure if these are Unity specific terms but the gist of it is: Discrete collision detection is only run after a physics frame has done is calculations. This means if an object moves past the collision area of another before the frame finishes its calc, it will not collide with the other object. Continuous and other types of collision detection algorithms can mitigate this issue, but they can be less performant. I don't exactly remember how they work, though. Just know that, with a lot of objects, you may see some performance degradation because of them.\n\nEDIT: Found the youtube video that I was remembering this from https:\/\/youtu.be\/6h5FoPi3SY0\n\nBut I will be honest and say that the \"tunneling\" was actually kinda nice when I was buried in hearts :D","format":"md","likes":1,"spam":"N"},{"id":908250,"author_name":"syudzius","author_uid":"syudzius","epoch":1673375507,"text":"Good entry! Simple and fun :) \nKeep up the good work! ","format":"md","likes":1,"spam":"N"},{"id":909217,"author_name":"IanLux","author_uid":"ianlux","epoch":1673384123,"text":"Funny and fun! xD","format":"md","likes":1,"spam":"N"},{"id":909265,"author_name":"cottonfloweryellow","author_uid":"cottonfloweryellow","epoch":1673384618,"text":"Not bad! Very easy to understand.","format":"md","likes":1,"spam":"N"},{"id":910598,"author_name":"jackypark9852","author_uid":"jackypark9852","epoch":1673402986,"text":"Love the chaotic energy in this game. Speeding up the music was a nice touch. It was funny to see the character get overwhelmed by the hearts. ","format":"md","likes":1,"spam":"N"},{"id":911714,"author_name":"elFlashor","author_uid":"elflashor","epoch":1673428445,"text":"Chaotic and messy! Interesting but quite repetitive until it gets overwhelming... Congrats :)","format":"md","likes":1,"spam":"N"},{"id":912566,"author_name":"LDJam user 262142","author_uid":"262142","epoch":1673448700,"text":"solid gameplay it feels really nice to swing the hearts around and out and even though the hearts technically clip through the walls sometimes, it's kinda fun because it lets you build up more hearts and REALLY get avalanched by them. congrats on your game! ","format":"md","likes":1,"spam":"N"},{"id":913188,"author_name":"LDJam user 317480","author_uid":"317480","epoch":1673460857,"text":"Had a good laugh!\nLovely quirky little game, slowly getting overwhelmed by the more and more ridiculous heart spawn rate.\nLove the main character animations and how the attack sound changes which speaker it plays from depending on where you stand.\n\nI think it might be fun to have a second spawn on the right side appear later on in the game to drive home frantic feeling of hurrying left and right to get rid of the hearts.\n\nGood job!","format":"md","likes":1,"spam":"N"},{"id":928009,"author_name":"ZacharyPinkham","author_uid":"zacharypinkham","epoch":1674501608,"text":"This was a fun time! I liked how the music got more discordant and wacky as things got out of control. The controls were super tight and comfortable. Good work!","format":"md","likes":1,"spam":"N"},{"id":929337,"author_name":"Fuzzyat","author_uid":"fuzzyat","epoch":1674759386,"text":"Fun game!\nEverything looks nice, the music accentuates the rising difficulty and the physics and collisions seem to work as they should.\nIs there ever a reason why should not hold Shift to sprint 100% of the time though?","format":"md","likes":1,"spam":"N"},{"id":929338,"author_name":"HayriCakir","author_uid":"hayricakir","epoch":1674759559,"text":"Sooo fun to play, nice visuals and it is very satisfying to music get faster in time. It was so much fun to play and game feel was great, so satisfying to kick hearts :D Good job! Also if you would like to shred some zombies while drifting with your tractor, be sure to check out my entry, I would love to hear your feedbacks!","format":"md","likes":1,"spam":"N"}],"format":"md","images":["ld52\/wayback-placeholder.png"],"links":[{"url":"https:\/\/github.com\/jaonewguy\/ludum-dare-52","text":"Github"},{"url":"https:\/\/jaonewguy.itch.io\/heartvest","text":"itch.io"}],"metadata":{"g_key":"86615","g_author":"1316876","g_event":"LD52","g_eventkey":"116","g_subevent":"JAM","g_urlkey":"398304","g_title":"Heartvest","g_status":"WAYBACK","g_place":"534","g_commentcount":"22","g_site2_node_id":"316877","g_hide":"N","g_has_icon":"Y","g_rqueue":"0","g_random":"0"},"nds":{"n_key":"316877","n_urlkey":"398304","n_parent":"313060","n_path":"\/events\/ludum-dare\/52\/heartvest","n_slug":"heartvest","n_type":"item","n_subtype":"game","n_subsubtype":"jam","n_author":"316876","n_created":"1672973019","n_modified":"1777279043","n_version":"992167","n_status":"WAYBACK"},"node":{"_collation":{"body_sanitizer":"TextUtils::SanitizeHTML via existing importer","event":"LD52","removed_author":false},"_superparent":9,"_trust":1,"author":316876,"body":"# Heartvest - ludum-dare-52 jam\n\n![heartvest_gif1.gif](\/\/\/raw\/cc5\/d4\/z\/54c8d.gif)\n\n## How to play\nButtons:\n\n- A or l.arrow to move left\n\n- D or r.arrow move right\n\n- F or mouse left to attack\n\n- L Shift to run\n\n**Goal**: Knock out as many hearts as you can.\n\n**Lose**: When your score is 100 less than number of hearts spawned\n\n## Background\nI shamelessly entered LD52 without any prior game dev experience, and so here we are -- my first game, **Heartvest**.\n\nOnly had a few small goals:\n1. Get used to Godot over a weekend\n2. Use one common game design pattern\n3. Submit something finished \"enough\"\n\nAlmost gave up on goal 3, but the hours flew by. Had a lot fun and learned a lot :)\n\n*Open to all criticism -- please tell me why the RigidBody2D Heart sometimes go through a Tilemap wall\/floor.\n\n## Credits - free resources used (hopefully didn't forget any)\n- Music - https:\/\/s0lar15.itch.io\/manufactory\n- SoundFX - Hit#11 from https:\/\/opengameart.org\/content\/37-hitspunches\n- Art \n  - https:\/\/kidscancode.org\/godot_recipes\/3.x\/physics\/conveyor_belt\/\n  - https:\/\/rvros.itch.io\/animated-pixel-hero\n  - https:\/\/kenney.nl\/assets\/pixel-platformer\n- Font\n    - Godot font pack https:\/\/godotengine.org\/asset-library\/asset\/316\n","comments":22,"comments-timestamp":"2023-01-26T18:59:19Z","created":"2023-01-06T02:43:39Z","files":[{"author":316876,"id":9493,"name":"$$embed-9493.zip","node":316877,"size":7214388,"status":73,"tag":0,"timestamp":"2023-01-09T10:42:35Z"},{"author":316876,"id":9499,"name":"$$embed-9499.zip","node":316877,"size":7215928,"status":73,"tag":0,"timestamp":"2023-01-09T11:04:01Z"}],"files-timestamp":"2023-01-09T11:04:01Z","grade":{"grade-01":30,"grade-02":30,"grade-03":30,"grade-04":28,"grade-07":28,"grade-08":27},"id":316877,"love":0,"magic":{"cool":112.81521496355,"feedback":34,"given":26.25,"grade":28.833333333333,"grade-01-average":3.304,"grade-01-result":534,"grade-02-average":3.464,"grade-02-result":349,"grade-03-average":3.196,"grade-03-result":466,"grade-04-average":2.846,"grade-04-result":751,"grade-07-average":3.365,"grade-07-result":222,"grade-08-average":2.92,"grade-08-result":689,"smart":4.4465935734187},"meta":{"allow-anonymous-comments":"1","author":[316876],"cover":"\/\/\/content\/cc5\/d4\/z\/54c67.png","grade-05-out":"1","grade-06-out":"1","link-01":"https:\/\/github.com\/jaonewguy\/ludum-dare-52","link-01-name":"Github","link-01-tag":[42332],"link-02":"https:\/\/jaonewguy.itch.io\/heartvest","link-02-name":"itch.io","link-02-tag":[42336]},"meta-timestamp":"2026-04-27T08:37:23Z","modified":"2026-04-27T08:37:23Z","name":"Heartvest","node-timestamp":"2023-01-09T11:25:09Z","parent":313060,"parents":[1,5,9,313060],"path":"\/events\/ludum-dare\/52\/heartvest","published":"2023-01-09T11:04:28Z","scope":"public","slug":"heartvest","subsubtype":"jam","subtype":"game","type":"item","version":992167},"text":"# Heartvest - ludum-dare-52 jam\n\n![heartvest_gif1.gif](\/\/\/raw\/cc5\/d4\/z\/54c8d.gif)\n\n## How to play\nButtons:\n\n- A or l.arrow to move left\n\n- D or r.arrow move right\n\n- F or mouse left to attack\n\n- L Shift to run\n\n**Goal**: Knock out as many hearts as you can.\n\n**Lose**: When your score is 100 less than number of hearts spawned\n\n## Background\nI shamelessly entered LD52 without any prior game dev experience, and so here we are -- my first game, **Heartvest**.\n\nOnly had a few small goals:\n1. Get used to Godot over a weekend\n2. Use one common game design pattern\n3. Submit something finished \"enough\"\n\nAlmost gave up on goal 3, but the hours flew by. Had a lot fun and learned a lot :)\n\n*Open to all criticism -- please tell me why the RigidBody2D Heart sometimes go through a Tilemap wall\/floor.\n\n## Credits - free resources used (hopefully didn't forget any)\n- Music - https:\/\/s0lar15.itch.io\/manufactory\n- SoundFX - Hit#11 from https:\/\/opengameart.org\/content\/37-hitspunches\n- Art \n  - https:\/\/kidscancode.org\/godot_recipes\/3.x\/physics\/conveyor_belt\/\n  - https:\/\/rvros.itch.io\/animated-pixel-hero\n  - https:\/\/kenney.nl\/assets\/pixel-platformer\n- Font\n    - Godot font pack https:\/\/godotengine.org\/asset-library\/asset\/316\n","title":"Heartvest","wayback_recovered":true,"wayback_source":{"capture":{"original":"https:\/\/api-jam.ludumdare.com\/vx\/node2\/get\/316501+316502+316503+316504+316505+316506+316507+316508+316509+316510+316511+316512+316513+316514+316515+316516+316517+316518+316519+316520+316521+316522+316523+316524+316525+316526+316527+316528+316529+316530+316531+316532+316533+316534+316535+316536+316537+316538+316539+316540+316541+316542+316543+316544+316545+316546+316547+316548+316549+316550+316551+316552+316553+316554+316555+316556+316557+316558+316559+316560+316561+316562+316563+316564+316565+316566+316567+316568+316569+316570+316571+316572+316573+316574+316575+316576+316577+316578+316579+316580+316581+316582+316583+316584+316585+316586+316587+316588+316589+316590+316591+316592+316593+316594+316595+316596+316597+316598+316599+316600+316601+316602+316603+316604+316605+316606+316607+316608+316609+316610+316611+316612+316613+316614+316615+316616+316617+316618+316619+316620+316621+316622+316623+316624+316625+316626+316627+316628+316629+316630+316631+316632+316633+316634+316635+316636+316637+316638+316639+316640+316641+316642+316643+316644+316645+316646+316647+316648+316649+316650+316651+316652+316653+316654+316655+316656+316657+316658+316659+316660+316661+316662+316663+316664+316665+316666+316667+316668+316669+316670+316671+316672+316673+316674+316675+316676+316677+316678+316679+316680+316681+316682+316683+316684+316685+316686+316687+316688+316689+316690+316691+316692+316693+316694+316695+316696+316697+316698+316699+316700+316701+316702+316703+316704+316705+316706+316707+316708+316709+316710+316711+316712+316713+316714+316715+316716+316717+316718+316719+316720+316721+316722+316723+316724+316725+316726+316727+316728+316729+316730+316731+316732+316733+316734+316735+316736+316737+316738+316739+316740+316741+316742+316743+316744+316745+316746+316747+316748+316749+316750+316751+316752+316753+316754+316755+316756+316757+316758+316759+316760+316761+316762+316763+316764+316765+316766+316767+316768+316769+316770+316771+316772+316773+316774+316775+316776+316777+316778+316779+316780+316781+316782+316783+316784+316785+316786+316787+316788+316789+316790+316791+316792+316793+316794+316795+316796+316797+316798+316799+316800+316801+316802+316803+316804+316805+316806+316807+316808+316809+316810+316811+316812+316813+316814+316815+316816+316817+316818+316819+316820+316821+316822+316823+316824+316825+316826+316827+316828+316829+316830+316831+316832+316833+316834+316835+316836+316837+316838+316839+316840+316841+316842+316843+316844+316845+316846+316847+316848+316849+316850+316851+316852+316853+316854+316855+316856+316857+316858+316859+316860+316861+316862+316863+316864+316865+316866+316867+316868+316869+316870+316871+316872+316873+316874+316875+316876+316877+316878+316879+316880+316881+316882+316883+316884+316885+316886+316887+316888+316889+316890+316891+316892+316893+316894+316895+316896+316897+316898+316899+316900+316901+316902+316903+316904+316905+316906+316907+316908+316909+316910+316911+316912+316913+316914+316915+316916+316917+316918+316919+316920+316921+316922+316923+316924+316925+316926+316927+316928+316929+316930+316931+316932+316933+316934+316935+316936+316937+316938+316939+316940+316941+316942+316943+316944+316945+316946+316947+316948+316949+316950+316951+316952+316953+316954+316955+316956+316957+316958+316959+316960+316961+316962+316963+316964+316965+316966+316967+316968+316969+316970+316971+316972+316973+316974+316975+316976+316977+316978+316979+316980+316981+316982+316983+316984+316985+316986+316987+316988+316989+316990+316991+316992+316993+316994+316995+316996+316997+316998+316999+317000?authors&parents&superparent"},"object":"objects\/sha256\/76\/76384bbad141aecb8cb835a867e9a37bd03693e7b99a8cf3c4dcfac95accdf60","record":"shard-3\/json-live-urgent-v3\/records\/814683700e9699d73b1b35e286256553d2ce369f2516d2fec20ff8be65e91192.json","sha256":"76384bbad141aecb8cb835a867e9a37bd03693e7b99a8cf3c4dcfac95accdf60","source":"https","stored_at":1784022417}}