{"author_link":"\/users\/neeck-kola","author_name":"Neeck Kola","author_uid":"neeck-kola","comments":[],"epoch":1744568409,"event":"LD57","format":"md","ldjam_node_id":414877,"likes":5,"metadata":{"p_key":"211357","p_author":"Neeck Kola","p_authorkey":"1409057","p_urlkey":"451162","p_title":"What was planned \/vs\/ what was maded","p_cat":"LDJam ","p_event":"LD57","p_time":"1744568409","p_likes":"5","p_comments":"0","p_status":"WAYBACK","us_key":"1409057","us_name":"Neeck Kola","us_username":"neeck-kola","event_start":"1743811200","event_key":"111","event_name":"Ludum Dare 57"},"node":{"_collation":{"body_sanitizer":"TextUtils::SanitizeHTML via existing importer","event":"LD57","removed_author":false},"_superparent":406845,"_trust":1,"author":409057,"body":"\u26a0\ufe0fLots of text\u26a0\ufe0f\n\n** Introduction:** This is my first jam, i programmed all in blueprints\n\n**Day before the jam**:\n\n- I was super nervous about what theme would be chosen, so I stocked up on energy drinks and Snickers to avoid wasting time on food.\n- The jam in my country started at 4 a.m., so I decided to go to sleep. Because of the nerves, I had to do sleep exercises, but in the end, I managed to fall asleep properly.\n\n**For beginning**:\nDecided to prioritize sleep for mental clarity during the jam. Subtracted sleep hours: 6+8+8 = 22. Total time: 72-22 = **50 hours** for game development.\n\n**Jam:**\n\n- Woke up at 10 AM, 6 hours after the jam began. Theme: **\"Depths\"**\n\n- Sat down to brainstorm ideas\n\nOn English ![\u0418\u0434\u0435\u0438_\u043d\u0430\u0410\u043d\u0433\u043b.jpg](\/\/\/raw\/1ed\/36\/z\/6c24e.jpg)\n\nOn Russian ![\u0418\u0434\u0435\u0438.png](\/\/\/raw\/1ed\/36\/z\/6c24d.png) \n\n- At first, I thought of making a puzzle game, something about opening the right doors and closing the wrong ones to descend deeper into a dungeon. Then I accidentally saw a YouTube thumbnail about Gravity Falls and immediately remembered the episode with the endless pit \n![\u0413\u0440\u0430\u0432\u0438\u0442\u0438 \u0424\u043e\u043b\u0437 \u0411\u0435\u0437\u0434\u043d\u0430!.png](\/\/\/raw\/1ed\/36\/z\/6c251.png)\n\n- Came up with the idea of **throwing objects into an abyss for rewards**. Added mechanics: heavy objects require strength upgrades to lift.\n\nWrapped it into a concept: *\"A game about feeding Cthulhu various foods\"*.\n\nFinalized concept:\n### \"A slave forced to feed Cthulhu for life, aiming to escape alive.\"\n\n**Development plan**:\n\n1. Implement basic physics-based object grabbing \ud83d\udd90\n\n2. Create a system for rapid item\/upgrade creation with custom stats \u2699\ufe0f\n\n3. Make object size affect weight (controlled via DataTable).\n\n4. Build a \"Cthulhu satisfaction\" system fueled by feeding \n\n5. Design a shop to buy upgrades using satisfaction points.\n\n6. Create diverse food types and upgrades \ud83c\udf56\ud83e\udd69\ud83e\udd53\ud83c\udf73\n\n\n### ***Development process***:\n\n---\n\n#### **Physics-based object grabbing:**\n\n- **I spent 6-8 hours deciding**: Unreal has a built-in method for grabbing objects \u2014 the **PhysicsHandle** method, but I wanted items to be able to pull the character down if the player wasn't strong enough to lift them. From a previous project, I decided to rewrite the object grabbing tech, but I overlooked a few things:\n\n> - As I understood, this can\u2019t be done with **PhysicsHandle** due to how it works; it\u2019s only achievable through multiple **physics constraint** components\n\n> - But then another problem arises: I\u2019d need to make the player\u2019s **CapsuleComponent** physical, and I didn\u2019t solve that in the last project. When the capsule is physical, standard movement via **AddMovementInput** doesn\u2019t work; I\u2019d have to physically \u201cpush\u201d the player in the desired direction, and the player would have inertia, making it hard to stop.\n\n- ** Decision**: Sticked with PhysicsHandle for simplicity, though Constraint had more chaotic potential.\n\n---\n\n#### **Rapid item\/upgrade creation:**\n\n- **No issues here at all**, since I had already built a weapon system using a DataTable. The structure was roughly:\n> 1. Create a general **DataTable** with pre-planned items, assign their stats\n> 2. Create a parent class where, in the **construction script**, you assign variables from the **DataTable** to the object itself\n> 3. Create a **child class**, assign the row name from the **DataTable**, and place it in the world\n> 4. Done\n\n**Make a quick way to create upgrades:**\n> - The system is exactly **the same as with food**\n> - All upgrade effects are **described inside** their respective upgrade classes\n> - The only thing: I didn\u2019t think to make an integrated strength upgrade system, so I ended up with **4 different classes **`\u00af\\_(\u30c4)_\/\u00af`, each just describing a different player strength multiplier\n\n---\n\n\n#### Size-based weight system\n\n- Hit a snag: object mass couldn\u2019t be set in **Construction Script**.\n- I spent **3\u20134 hours** stuck on this, until I decided to set the mass in BeginPlay\n\n![System.png](\/\/\/raw\/1ed\/36\/z\/6c259.png)\n![begin play.png](\/\/\/raw\/1ed\/36\/z\/6c257.png)\n\n\n---\n\n#### Cthulhu satisfaction system\n\nThis wasn\u2019t hard either:\n\n- 100 = victory\n\n- 0 = death\n\n- To reach 100, you need to feed him a ***special delicacy*** \u2014 I decided it would be **dinosaur steak**\n\n- Every 0.5 seconds, a fixed amount of satisfaction **is subtracted**\n\n- If satisfaction hits 15%, you can\u2019t trade with Cthulhu and **he screams**, calling on the player to feed him faster\n\n\n---\n\n\n#### Create a shop where upgrades are bought for Cthulhu\u2019s satisfaction\n\n- **Everything went wrong** here, and I had to abandon most of the new features\n- **The idea was:** player walks to the edge, presses a button or says a spell; if satisfaction is high enough, a shop appears with three items. The player picks one, the shop disappears. When the player returns, the two unchosen items remain, and a new one replaces the chosen.\n\n**Problems:**\n1. Very little time left\n2. I couldn\u2019t figure out the logic to replace the chosen upgrade with a new one\n3. I decided there would only be one upgrade to choose from, and they wouldn\u2019t cost satisfaction anymore \u2014 they\u2019d just be awarded for reaching certain score thresholds\n---\n\n\n#### Create different types of food and upgrades\n\n- This happened throughout the whole jam. 3D models were **constantly** made in Blender.\n- I exported about **40 models** during the jam, didn\u2019t count how many were left unfinished in Blender.\n- I really wanted to add a SkeletalMesh **cow** into Lisiy. I even gave her a name \u2014 in English, just for simplicity, I call her **telec**. But when spawned, her jumps endlessly. I **couldn\u2019t** fix it or even figure out the reason. If **anyone** knows what might be wrong, I\u2019d appreciate any advice. Anyway, rest in peace, telec.\n![\u041d\u043e\u0432\u044b\u0439 \u043f\u0440\u043e\u0435\u043a\u0442 (5).png](\/\/\/raw\/1ed\/36\/z\/6c26d.png)\n\n---\n\n\n**Final stretch**:\n\n- I had **almost given up**. It was midnight, the jam ends at 4 a.m., with one extra hour for uploading.\n- At that point I was still finishing the shop and deciding on upgrades. \n- I finished everything at 3 a.m., but the **compiler let me down**, and I ended up with a compiled build only around **5:40 a.m.** \n- Full of nerves due to unknown consequences of violation of deadlines, uploaded to itch.io\n\n**Aftermath**:\n\n- Qualified for nominations\ud83c\udf89\ud83c\udf89\n-  For my first jam, I consider this an absolute **success**. At one point I seriously thought about quitting entirely.\n\n## Thanks to everyone who played Lisiy! [Check it](https:\/\/neeck-kola.itch.io\/lisiy) out if you haven\u2019t. Good luck to all developers!","comments":0,"created":"2025-04-13T16:40:13Z","files":[],"files-timestamp":0,"id":414877,"love":5,"love-timestamp":"2025-04-13T19:06:48Z","meta":[],"modified":"2025-04-13T19:06:48Z","name":"What was planned \/vs\/ what was maded","node-timestamp":"2025-04-13T18:20:09Z","parent":409059,"parents":[1,5,9,406845,409059],"path":"\/events\/ludum-dare\/57\/lisiy\/what-was-planned-vs-what-was-maded","published":"2025-04-13T18:20:09Z","scope":"public","slug":"what-was-planned-vs-what-was-maded","subsubtype":"","subtype":"","type":"post","version":1310054},"node_metadata":{"n_key":"414877","n_urlkey":"451162","n_parent":"409059","n_path":"\/events\/ludum-dare\/57\/lisiy\/what-was-planned-vs-what-was-maded","n_slug":"what-was-planned-vs-what-was-mad","n_type":"post","n_subtype":"","n_subsubtype":"","n_author":"409057","n_created":"1744562413","n_modified":"1744571208","n_version":"1310054","n_status":"WAYBACK"},"source_url":"https:\/\/ldjam.com\/events\/ludum-dare\/57\/lisiy\/what-was-planned-vs-what-was-maded","text":"\u26a0\ufe0fLots of text\u26a0\ufe0f\n\n** Introduction:** This is my first jam, i programmed all in blueprints\n\n**Day before the jam**:\n\n- I was super nervous about what theme would be chosen, so I stocked up on energy drinks and Snickers to avoid wasting time on food.\n- The jam in my country started at 4 a.m., so I decided to go to sleep. Because of the nerves, I had to do sleep exercises, but in the end, I managed to fall asleep properly.\n\n**For beginning**:\nDecided to prioritize sleep for mental clarity during the jam. Subtracted sleep hours: 6+8+8 = 22. Total time: 72-22 = **50 hours** for game development.\n\n**Jam:**\n\n- Woke up at 10 AM, 6 hours after the jam began. Theme: **\"Depths\"**\n\n- Sat down to brainstorm ideas\n\nOn English ![\u0418\u0434\u0435\u0438_\u043d\u0430\u0410\u043d\u0433\u043b.jpg](\/\/\/raw\/1ed\/36\/z\/6c24e.jpg)\n\nOn Russian ![\u0418\u0434\u0435\u0438.png](\/\/\/raw\/1ed\/36\/z\/6c24d.png) \n\n- At first, I thought of making a puzzle game, something about opening the right doors and closing the wrong ones to descend deeper into a dungeon. Then I accidentally saw a YouTube thumbnail about Gravity Falls and immediately remembered the episode with the endless pit \n![\u0413\u0440\u0430\u0432\u0438\u0442\u0438 \u0424\u043e\u043b\u0437 \u0411\u0435\u0437\u0434\u043d\u0430!.png](\/\/\/raw\/1ed\/36\/z\/6c251.png)\n\n- Came up with the idea of **throwing objects into an abyss for rewards**. Added mechanics: heavy objects require strength upgrades to lift.\n\nWrapped it into a concept: *\"A game about feeding Cthulhu various foods\"*.\n\nFinalized concept:\n### \"A slave forced to feed Cthulhu for life, aiming to escape alive.\"\n\n**Development plan**:\n\n1. Implement basic physics-based object grabbing \ud83d\udd90\n\n2. Create a system for rapid item\/upgrade creation with custom stats \u2699\ufe0f\n\n3. Make object size affect weight (controlled via DataTable).\n\n4. Build a \"Cthulhu satisfaction\" system fueled by feeding \n\n5. Design a shop to buy upgrades using satisfaction points.\n\n6. Create diverse food types and upgrades \ud83c\udf56\ud83e\udd69\ud83e\udd53\ud83c\udf73\n\n\n### ***Development process***:\n\n---\n\n#### **Physics-based object grabbing:**\n\n- **I spent 6-8 hours deciding**: Unreal has a built-in method for grabbing objects \u2014 the **PhysicsHandle** method, but I wanted items to be able to pull the character down if the player wasn't strong enough to lift them. From a previous project, I decided to rewrite the object grabbing tech, but I overlooked a few things:\n\n> - As I understood, this can\u2019t be done with **PhysicsHandle** due to how it works; it\u2019s only achievable through multiple **physics constraint** components\n\n> - But then another problem arises: I\u2019d need to make the player\u2019s **CapsuleComponent** physical, and I didn\u2019t solve that in the last project. When the capsule is physical, standard movement via **AddMovementInput** doesn\u2019t work; I\u2019d have to physically \u201cpush\u201d the player in the desired direction, and the player would have inertia, making it hard to stop.\n\n- ** Decision**: Sticked with PhysicsHandle for simplicity, though Constraint had more chaotic potential.\n\n---\n\n#### **Rapid item\/upgrade creation:**\n\n- **No issues here at all**, since I had already built a weapon system using a DataTable. The structure was roughly:\n> 1. Create a general **DataTable** with pre-planned items, assign their stats\n> 2. Create a parent class where, in the **construction script**, you assign variables from the **DataTable** to the object itself\n> 3. Create a **child class**, assign the row name from the **DataTable**, and place it in the world\n> 4. Done\n\n**Make a quick way to create upgrades:**\n> - The system is exactly **the same as with food**\n> - All upgrade effects are **described inside** their respective upgrade classes\n> - The only thing: I didn\u2019t think to make an integrated strength upgrade system, so I ended up with **4 different classes **`\u00af\\_(\u30c4)_\/\u00af`, each just describing a different player strength multiplier\n\n---\n\n\n#### Size-based weight system\n\n- Hit a snag: object mass couldn\u2019t be set in **Construction Script**.\n- I spent **3\u20134 hours** stuck on this, until I decided to set the mass in BeginPlay\n\n![System.png](\/\/\/raw\/1ed\/36\/z\/6c259.png)\n![begin play.png](\/\/\/raw\/1ed\/36\/z\/6c257.png)\n\n\n---\n\n#### Cthulhu satisfaction system\n\nThis wasn\u2019t hard either:\n\n- 100 = victory\n\n- 0 = death\n\n- To reach 100, you need to feed him a ***special delicacy*** \u2014 I decided it would be **dinosaur steak**\n\n- Every 0.5 seconds, a fixed amount of satisfaction **is subtracted**\n\n- If satisfaction hits 15%, you can\u2019t trade with Cthulhu and **he screams**, calling on the player to feed him faster\n\n\n---\n\n\n#### Create a shop where upgrades are bought for Cthulhu\u2019s satisfaction\n\n- **Everything went wrong** here, and I had to abandon most of the new features\n- **The idea was:** player walks to the edge, presses a button or says a spell; if satisfaction is high enough, a shop appears with three items. The player picks one, the shop disappears. When the player returns, the two unchosen items remain, and a new one replaces the chosen.\n\n**Problems:**\n1. Very little time left\n2. I couldn\u2019t figure out the logic to replace the chosen upgrade with a new one\n3. I decided there would only be one upgrade to choose from, and they wouldn\u2019t cost satisfaction anymore \u2014 they\u2019d just be awarded for reaching certain score thresholds\n---\n\n\n#### Create different types of food and upgrades\n\n- This happened throughout the whole jam. 3D models were **constantly** made in Blender.\n- I exported about **40 models** during the jam, didn\u2019t count how many were left unfinished in Blender.\n- I really wanted to add a SkeletalMesh **cow** into Lisiy. I even gave her a name \u2014 in English, just for simplicity, I call her **telec**. But when spawned, her jumps endlessly. I **couldn\u2019t** fix it or even figure out the reason. If **anyone** knows what might be wrong, I\u2019d appreciate any advice. Anyway, rest in peace, telec.\n![\u041d\u043e\u0432\u044b\u0439 \u043f\u0440\u043e\u0435\u043a\u0442 (5).png](\/\/\/raw\/1ed\/36\/z\/6c26d.png)\n\n---\n\n\n**Final stretch**:\n\n- I had **almost given up**. It was midnight, the jam ends at 4 a.m., with one extra hour for uploading.\n- At that point I was still finishing the shop and deciding on upgrades. \n- I finished everything at 3 a.m., but the **compiler let me down**, and I ended up with a compiled build only around **5:40 a.m.** \n- Full of nerves due to unknown consequences of violation of deadlines, uploaded to itch.io\n\n**Aftermath**:\n\n- Qualified for nominations\ud83c\udf89\ud83c\udf89\n-  For my first jam, I consider this an absolute **success**. At one point I seriously thought about quitting entirely.\n\n## Thanks to everyone who played Lisiy! [Check it](https:\/\/neeck-kola.itch.io\/lisiy) out if you haven\u2019t. Good luck to all developers!","title":"What was planned \/vs\/ what was maded","wayback_source":[]}