{"id":3959,"date":"2026-01-11T13:12:29","date_gmt":"2026-01-11T13:12:29","guid":{"rendered":"https:\/\/sites.wsagames.com\/gp2n23-yr3\/?p=3959"},"modified":"2026-01-12T12:46:54","modified_gmt":"2026-01-12T12:46:54","slug":"project-structure-and-components","status":"publish","type":"post","link":"https:\/\/sites.wsagames.com\/gp2n23-yr3\/2026\/01\/11\/project-structure-and-components\/","title":{"rendered":"Project Structure and Components"},"content":{"rendered":"\n<p>As a solo developer, summary checklist:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Gameplay Programming:<\/strong> C# systems for gameplay and interface.<\/li>\n\n\n\n<li><strong>Art Direction:<\/strong> Pixel art, Retro Neo aesthetics, environmental art.<\/li>\n\n\n\n<li><strong>Level Designer: <\/strong>Building all the obstacles and limitation the player would have, building the gate which would open at the end of each round where the player could interact and place the defending creatures and the repeated wave system. <\/li>\n\n\n\n<li><strong>Sound Design:<\/strong> Producing an original synth-driven soundtrack and diegetic SFX.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Content: Components (Deliverables)<\/h3>\n\n\n\n<p>According to the time it took other competitors to make an entire ~20 hours worth of content gameplay in Undertale with a time of <a href=\"https:\/\/en.wikipedia.org\/wiki\/Undertale#:~:text=true%20pacifist%20ending.-,Development,webcomic%20Homestuck%2C%20starting%20in%202010.\" data-type=\"link\" data-id=\"https:\/\/en.wikipedia.org\/wiki\/Undertale#:~:text=true%20pacifist%20ending.-,Development,webcomic%20Homestuck%2C%20starting%20in%202010.\">32 months<\/a> worth of production time from Toby Fox, with mine only being about ~20 minutes of planned gameplay, should average of about 30 minutes per month&#8217;s work. <\/p>\n\n\n\n<ol start=\"1\" class=\"wp-block-list\">\n<li><strong>Playable:<\/strong> ~13 waves of balanced tower defence gameplay at the Town Gate. The player movement and throwing boulder ability.<\/li>\n\n\n\n<li><strong>Visual Asset Library:<\/strong> Animated pixel-art sprites, (the defences, the player model, the Cultists). The environmental art and animations <\/li>\n\n\n\n<li><strong>Original Soundtrack:<\/strong> A EP playlist produced in Ableton, slasher horror and indie influences.<\/li>\n\n\n\n<li><strong>Dev-Log Documentation:<\/strong> Screencasts detailing the 2.5D shader and controller integration.<\/li>\n<\/ol>\n\n\n\n<h3 class=\"wp-block-heading\">Functional Specs<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Software:<\/strong> Unity (URP), Aseprite, Ableton Live.<\/li>\n\n\n\n<li><strong>Hardware:<\/strong> PC keyboard with PS5 Controller support.<\/li>\n\n\n\n<li><strong>Distribution:<\/strong> Portfolio\/Itch.io and steam if I choose to continue working on it after university<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Project Structure<\/strong><\/h3>\n\n\n\n<p>Considering if I should do the <a href=\"https:\/\/www.atlassian.com\/agile\/kanban\/kanban-vs-scrum\" data-type=\"link\" data-id=\"https:\/\/www.atlassian.com\/agile\/kanban\/kanban-vs-scrum\">Kanban or Scrum<\/a> Agile.<\/p>\n\n\n\n<p>Kanban framework focuses on continuous flow, flexible in its tasks as long as their is workflow.<\/p>\n\n\n\n<p>On the other hand Scrum is more planned out with weekly \/ monthly sprints with more persist tasks and timing you should take and when to avoid spending too much time on a singular thing.<\/p>\n\n\n\n<p>Roadmap: (Stages of production)<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Gameplay mechanics (7-11 weeks) overall completion time<\/h3>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><td>Task Needed<\/td><td>Estimated Time<\/td><\/tr><tr><td>1. Save a new Unity file with the prototype base and edit it the level needs to be expanded and create boundaries around the map edges, a flat floor. Zoom out the camera, place the player character on one end of the map. Create the movement of the character and the placing down of cubes, Create the spawn point of the player.<\/td><td>~1 week<\/td><\/tr><tr><td>2. Create a spawn point of where the enemies spawn in and in the first round a max of 12 each spawning randomly, in groups between 1-4. Make the cubes damage the enemies at close range proximity, one tapping a single enemy every ~3 seconds. Create a block that would act as the early version of the gate leaving a big space and make it passable by the player.<\/td><td>1-3 weeks<\/td><\/tr><tr><td>3. Make the enemies drawn to the defence cube which would attract their attention when in radius, on default they would run towards the gate at randomised different speeds. Give the defences, the gate and enemies a health bar and cause the enemies to deal damage to the gate and defences.<\/td><td>~2 weeks<\/td><\/tr><tr><td>4.Now make the player able to place different block of defences. <em>Range <\/em>shoots from afar and human shield has the biggest in size and the most health (meaning biggest attraction radius).<\/td><td>~2 weeks<\/td><\/tr><tr><td>5.  Make them all deal damage to the enemies if you want make a temporary health bar but the enemies are meant to die really quickly. Make sure it all works the enemies sprint towards the gate, should take them about <strong>~10 seconds<\/strong> to make it across (In classic Plants Vs Zombies, basic <a href=\"https:\/\/plantsvszombies.fandom.com\/wiki\/Zombies_(PvZ2)#Speed_Rates\" data-type=\"link\" data-id=\"https:\/\/plantsvszombies.fandom.com\/wiki\/Zombies_(PvZ2)#Speed_Rates\">Zombie takes 45 seconds<\/a> to make it across.) to the gate with no defences, when near the gate they decelerate to not seem like they can sudden stop.<\/td><td>~1 week<\/td><\/tr><tr><td>6.Defences should all attract the enemies when in radius, which then would lead to the enemies to decelerate when they are in close enough to the thing they are attracted to, go to a walking speed. Once the defence is dead they go back to accelerating again to gain speed to the gate.<\/td><td>~1 week<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Stage number 2 Creating the Waves and Rounds (8-10 weeks)<\/h3>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><td>Task Needed<\/td><td>Estimated Time<\/td><\/tr><tr><td>7. Create a gate and a UI that when the 12 enemies die the gate opens and allows the player to place the defences down. The Ranger can be placed even when the waves start, as they would be able to shoot above the gate. <\/td><td>~2 weeks<\/td><\/tr><tr><td>8. Enemies enter every 4-10 seconds in the first round the number increases each round by one, 2-6 and every 6-12 seconds.<\/td><td>~1 week<\/td><\/tr><tr><td>9. Create a rest period between waves that the player has to pull down the level to start the next round. No enemies come during this period and the gate health remains the same while the defences can still die.<\/td><td>~2-3 weeks<\/td><\/tr><tr><td>10. All defences loose health on their own so needing to make the player think fast to get the most out of them, the gate open and closes when the player walks to a level by the gate the round starts again. The player should not be able to place units outside the gate during the wave and can only place at the end of the wave. Different enemy types is not essential.<\/td><td>~2-3 weeks<\/td><\/tr><tr><td>11. Make 13 rounds with each round increasing enemy count and make sure everything works. Make the cooldowns, resources needed picking up blood from fallen enemies.<\/td><td>~1 week<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Art Direction<\/h3>\n\n\n\n<p>12. Start creating Aseprite&#8217;s of the character, map, enemies, defences slimes different types, animations, blood drop resources. (~2 week)<\/p>\n\n\n\n<p>13. UI of the amount of resources need to build the different defences and the start Game Menu UI (~1 week)<\/p>\n\n\n\n<p>Deadline June where a maximum of <strong>24 weeks<\/strong> for my project which could be halfway through June.<\/p>\n\n\n\n<p>Kanban framework would fit me more for this game because I believe during the production stage much would change and pre-determining exactly what to prioritise now is difficult and would not be accurate when I start producing the game, as many elements would have to be modified to be completed and work before the end of my studies.<\/p>\n\n\n\n<div class=\"wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex\">\n<div class=\"wp-block-button\"><a class=\"wp-block-button__link wp-element-button\" href=\"https:\/\/sites.wsagames.com\/gp2n23-yr3\/2025\/12\/25\/project-proposal\/\">project proposal<\/a><\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>As a solo developer, summary checklist: Content: Components (Deliverables) According to the time it took other competitors to make an entire ~20 hours worth of content gameplay in Undertale with a time of 32 months worth of production time from Toby Fox, with mine only being about ~20 minutes of planned gameplay, should average of [&hellip;]<\/p>\n","protected":false},"author":21,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-3959","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/sites.wsagames.com\/gp2n23-yr3\/wp-json\/wp\/v2\/posts\/3959","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/sites.wsagames.com\/gp2n23-yr3\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/sites.wsagames.com\/gp2n23-yr3\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/sites.wsagames.com\/gp2n23-yr3\/wp-json\/wp\/v2\/users\/21"}],"replies":[{"embeddable":true,"href":"https:\/\/sites.wsagames.com\/gp2n23-yr3\/wp-json\/wp\/v2\/comments?post=3959"}],"version-history":[{"count":91,"href":"https:\/\/sites.wsagames.com\/gp2n23-yr3\/wp-json\/wp\/v2\/posts\/3959\/revisions"}],"predecessor-version":[{"id":4487,"href":"https:\/\/sites.wsagames.com\/gp2n23-yr3\/wp-json\/wp\/v2\/posts\/3959\/revisions\/4487"}],"wp:attachment":[{"href":"https:\/\/sites.wsagames.com\/gp2n23-yr3\/wp-json\/wp\/v2\/media?parent=3959"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/sites.wsagames.com\/gp2n23-yr3\/wp-json\/wp\/v2\/categories?post=3959"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/sites.wsagames.com\/gp2n23-yr3\/wp-json\/wp\/v2\/tags?post=3959"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}