{"id":1029,"date":"2025-07-22T07:59:33","date_gmt":"2025-07-22T11:59:33","guid":{"rendered":"https:\/\/willkolb.com\/?p=1029"},"modified":"2025-07-22T07:59:33","modified_gmt":"2025-07-22T11:59:33","slug":"gameplay-gameplan-from-a-gamefan-during-a-self-made-gamejam","status":"publish","type":"post","link":"https:\/\/willkolb.com\/?p=1029","title":{"rendered":"Gameplay Gameplan (From a Gamefan during a self-made gamejam)"},"content":{"rendered":"\n<p>So I was looking back at the last thing that I made for planning<br><br><img loading=\"lazy\" decoding=\"async\" width=\"600\" height=\"324\" class=\"wp-image-1011\" style=\"width: 600px;\" src=\"https:\/\/willkolb.com\/wp-content\/uploads\/2025\/05\/image-35.png\" alt=\"\" srcset=\"https:\/\/willkolb.com\/wp-content\/uploads\/2025\/05\/image-35.png 1359w, https:\/\/willkolb.com\/wp-content\/uploads\/2025\/05\/image-35-300x162.png 300w, https:\/\/willkolb.com\/wp-content\/uploads\/2025\/05\/image-35-1024x553.png 1024w, https:\/\/willkolb.com\/wp-content\/uploads\/2025\/05\/image-35-768x415.png 768w, https:\/\/willkolb.com\/wp-content\/uploads\/2025\/05\/image-35-500x270.png 500w\" sizes=\"auto, (max-width: 600px) 100vw, 600px\" \/><br><br>and I already see the inherent problem is that I never made a &#8220;Game&#8221; sequence in addition to the boss building. In that vein what I was thinking is:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>OnStart\n<ul class=\"wp-block-list\">\n<li>Spawn Player (give only the pistol)<\/li>\n\n\n\n<li>Spawn &#8220;Protection&#8221; bots (i.e. a number of bots around each assembler)<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Every X Seconds\n<ul class=\"wp-block-list\">\n<li>Spawn a bot (after checking if we have too many bots) and set the patrol location to the last known player location<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>On Destroying An Assembler\n<ul class=\"wp-block-list\">\n<li>Give the player a new weapon<\/li>\n\n\n\n<li>Increase the difficulty of the other assemblers<\/li>\n\n\n\n<li>Alert the Other Patrol Bots to your location from all assemblers (minus the patrol bots)<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n\n\n\n<p>This seems simple enough but there&#8217;s a few mechanics I do not have written yet. <\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Bot Patrol locations\/target locations<\/li>\n\n\n\n<li>Player Pickups\n<ul class=\"wp-block-list\">\n<li>Both Health and Weapons (Weapons can be magically granted I figure)<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Patrol bot synchronization for alerts etc. <\/li>\n<\/ol>\n\n\n\n<h2 class=\"wp-block-heading\">Bot Patrol Locations<\/h2>\n\n\n\n<p>This was pretty easy, I just updated the EQS query to be set around a specific location rather than the location of the bot. This changes the scores so the bots wander around a fixed point and don&#8217;t leave its radius until its engaged.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"549\" src=\"https:\/\/willkolb.com\/wp-content\/uploads\/2025\/07\/image-2-1024x549.png\" alt=\"\" class=\"wp-image-1032\" srcset=\"https:\/\/willkolb.com\/wp-content\/uploads\/2025\/07\/image-2-1024x549.png 1024w, https:\/\/willkolb.com\/wp-content\/uploads\/2025\/07\/image-2-300x161.png 300w, https:\/\/willkolb.com\/wp-content\/uploads\/2025\/07\/image-2-768x412.png 768w, https:\/\/willkolb.com\/wp-content\/uploads\/2025\/07\/image-2-500x268.png 500w, https:\/\/willkolb.com\/wp-content\/uploads\/2025\/07\/image-2.png 1035w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>I also had to update the Blackboard to hold this value, so I can swap it on the fly<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"545\" src=\"https:\/\/willkolb.com\/wp-content\/uploads\/2025\/07\/image-3-1024x545.png\" alt=\"\" class=\"wp-image-1033\" srcset=\"https:\/\/willkolb.com\/wp-content\/uploads\/2025\/07\/image-3-1024x545.png 1024w, https:\/\/willkolb.com\/wp-content\/uploads\/2025\/07\/image-3-300x160.png 300w, https:\/\/willkolb.com\/wp-content\/uploads\/2025\/07\/image-3-768x409.png 768w, https:\/\/willkolb.com\/wp-content\/uploads\/2025\/07\/image-3-500x266.png 500w, https:\/\/willkolb.com\/wp-content\/uploads\/2025\/07\/image-3.png 1165w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Now to update the guard point for a non-deployed bot I just set the &#8220;IsGuarding&#8221; flag to true and the &#8220;GuardPoint&#8221; to wherever.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Player Pickups<\/h2>\n\n\n\n<p>I think I want the health system to be a set of stims rather than recovering health or anything else. So I started modeling up a health station in blender<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"744\" height=\"781\" src=\"https:\/\/willkolb.com\/wp-content\/uploads\/2025\/07\/image-4.png\" alt=\"\" class=\"wp-image-1034\" srcset=\"https:\/\/willkolb.com\/wp-content\/uploads\/2025\/07\/image-4.png 744w, https:\/\/willkolb.com\/wp-content\/uploads\/2025\/07\/image-4-286x300.png 286w\" sizes=\"auto, (max-width: 744px) 100vw, 744px\" \/><\/figure>\n\n\n\n<p>and syrettes\/injectors\/needles\/syringes are kinda easy (I did this in 5ish minutes, still need a touch up).<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"721\" height=\"748\" src=\"https:\/\/willkolb.com\/wp-content\/uploads\/2025\/07\/image-5.png\" alt=\"\" class=\"wp-image-1035\" srcset=\"https:\/\/willkolb.com\/wp-content\/uploads\/2025\/07\/image-5.png 721w, https:\/\/willkolb.com\/wp-content\/uploads\/2025\/07\/image-5-289x300.png 289w\" sizes=\"auto, (max-width: 721px) 100vw, 721px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"262\" src=\"https:\/\/willkolb.com\/wp-content\/uploads\/2025\/07\/image-7-1024x262.png\" alt=\"\" class=\"wp-image-1037\" srcset=\"https:\/\/willkolb.com\/wp-content\/uploads\/2025\/07\/image-7-1024x262.png 1024w, https:\/\/willkolb.com\/wp-content\/uploads\/2025\/07\/image-7-300x77.png 300w, https:\/\/willkolb.com\/wp-content\/uploads\/2025\/07\/image-7-768x196.png 768w, https:\/\/willkolb.com\/wp-content\/uploads\/2025\/07\/image-7-500x128.png 500w, https:\/\/willkolb.com\/wp-content\/uploads\/2025\/07\/image-7.png 1111w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>My hope is to play an animation before giving health, essentially I want the player to show the syrette then pull below the frame and inject. This should save me animation work (hopefully).<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Game Mode Work<\/h2>\n\n\n\n<p>I got the initial game mode made and the spawn but I also made a data table which holds difficulty settings<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"292\" src=\"https:\/\/willkolb.com\/wp-content\/uploads\/2025\/07\/image-6-1024x292.png\" alt=\"\" class=\"wp-image-1036\" srcset=\"https:\/\/willkolb.com\/wp-content\/uploads\/2025\/07\/image-6-1024x292.png 1024w, https:\/\/willkolb.com\/wp-content\/uploads\/2025\/07\/image-6-300x85.png 300w, https:\/\/willkolb.com\/wp-content\/uploads\/2025\/07\/image-6-768x219.png 768w, https:\/\/willkolb.com\/wp-content\/uploads\/2025\/07\/image-6-500x142.png 500w, https:\/\/willkolb.com\/wp-content\/uploads\/2025\/07\/image-6.png 1387w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>The idea is that each assembler will have a number of randomly generated guard bots which will patrol around the assembler and a set list of &#8220;wandering&#8221; bots that will be assembled and run towards the last place the player has been seen. <\/p>\n\n\n\n<p>Right now I have the gamemode start working I just need to get the player alerts working. Which In my head I think I want each assembler to control their fleet of bots so the chain will be:<br>A bot sees the player and alerts their assembler with a location > The Assembler Then alerts the game mode > The game mode gets the new position and sends it to the other assemblers.<\/p>\n\n\n\n<p>This way I can also setup alert radius&#8217;s, a limit of reporting etc. <\/p>\n","protected":false},"excerpt":{"rendered":"<p>So I was looking back at the last thing that I made for planning and I already see the inherent problem is that I never made a &#8220;Game&#8221; sequence in addition to the boss building. In that vein what I was thinking is: This seems simple enough but there&#8217;s a few mechanics I do not [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":1037,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[8,7,9],"tags":[],"class_list":["post-1029","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-blender","category-gamedev","category-unreal"],"_links":{"self":[{"href":"https:\/\/willkolb.com\/index.php?rest_route=\/wp\/v2\/posts\/1029","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/willkolb.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/willkolb.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/willkolb.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/willkolb.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1029"}],"version-history":[{"count":3,"href":"https:\/\/willkolb.com\/index.php?rest_route=\/wp\/v2\/posts\/1029\/revisions"}],"predecessor-version":[{"id":1038,"href":"https:\/\/willkolb.com\/index.php?rest_route=\/wp\/v2\/posts\/1029\/revisions\/1038"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/willkolb.com\/index.php?rest_route=\/wp\/v2\/media\/1037"}],"wp:attachment":[{"href":"https:\/\/willkolb.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1029"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/willkolb.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1029"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/willkolb.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1029"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}