{"assets":[{"original":"http:\/\/www.ludumdare.com\/compo\/wp-content\/uploads\/2013\/08\/bombsquad06-300x184.png","local":"\/data\/posts\/2013\/08\/f99f0828ce8475cf4cc7a5d149cd0782.png"}],"author_link":"author\/gatechgrad\/","author_name":"GaTechGrad","cat":"LD #27","categories":["LD #27"],"comments":[],"epoch":1377874320,"event":"LD27","likes":5,"metadata":{"p_key":"81231","p_author":"GaTechGrad","p_authorkey":"0","p_urlkey":"290348","p_title":"Bomb Squad Post Mortem Kombat","p_cat":"LD #27","p_event":"LD27","p_time":"1377874320","p_likes":"5","p_comments":"0","p_status":"WAYBACK","us_key":null,"us_name":null,"us_username":null,"event_start":"1377216000","event_key":"18","event_name":"LD27"},"source_url":"2013\/08\/30\/bomb-squad-post-mortem-kombat\/","text":"<h3>A Culmination of Learning Experiences<\/h3>\n<p><a href=\"http:\/\/www.ludumdare.com\/compo\/ludum-dare-27\/?action=preview&amp;uid=19778\">Play my Ludum Dare 27 entry Bomb Squad <\/a><\/p>\n<p>This is my second time participating in the official Ludum Dare competition.\u00a0 Overall, I feel like my skills with Unity have significantly increased since the last competition, when I submitted Amish Brothers.\u00a0 Since the last competition, I have submitted a game to each mini-LD, and each game developed taught me something new about Unity.<\/p>\n<p><iframe allowfullscreen=\"\" frameborder=\"0\" height=\"375\" src=\"http:\/\/www.youtube.com\/embed\/I80GQoIyRa8?feature=oembed\" width=\"500\"><\/iframe><\/p>\n<p><em>Bomb Squad Timelapse video<\/em><\/p>\n<p>This time around, the theme was \u201c10 seconds\u201d.\u00a0 My idea was a game where you play as a bomb squad technician, where you have 10 seconds to disable each bomb.\u00a0 If the bomb explodes, the objects around it will be propelled away and add to the property damage value.\u00a0 The objective is to keep the property damage as low as possible, while avoiding bomb blasts which damage your suit.\u00a0 If your suit reaches zero percent, then the game is over.\u00a0 Additionally, you must \u201ccut the wire\u201d that matches the color of the bomb, otherwise the bomb will explode and you will take damage.\u00a0 For more details on my design decisions, see my <a href=\"http:\/\/www.ludumdare.com\/compo\/2013\/08\/24\/bomb-squad\/\">Bomb Squad Day One<\/a> entry.<\/p>\n<p>\u00a0<\/p>\n<div class=\"wp-caption aligncenter\" id=\"attachment_293367\" style=\"width: 310px\"><a href=\"http:\/\/www.ludumdare.com\/compo\/wp-content\/uploads\/2013\/08\/bombsquad06.png\"><img alt=\"bombsquad06\" class=\"size-medium wp-image-293367\" height=\"184\" src=\"\/data\/posts\/2013\/08\/f99f0828ce8475cf4cc7a5d149cd0782.png\" width=\"300\"\/><\/a><p class=\"wp-caption-text\">Bomb exploding next to a wall<\/p><\/div>\n<p>\u00a0<\/p>\n<p>For this game, I knew I wanted to use Unity\u2019s physics engine for handling the explosions.\u00a0 I first started learning about Unity\u2019s physics engine when I developed <a href=\"http:\/\/www.ludumdare.com\/compo\/minild-42\/?action=preview&amp;uid=19778\">Earthball<\/a> for the mini-LD42.\u00a0 When the bomb explodes, it applies an explosive force to all of the objects in the game, including the player.\u00a0 I found that this starting causing problems when there were over about 600 objects in the scene.\u00a0 When the objects were exploded and scattered everywhere, the slowdown didn\u2019t occur.\u00a0 It was only when the objects were stacked, which I believe is because when the objects are stacked, they are continually colliding with each other, which requires a significant amount of processing power.\u00a0 The player is also affected by bomb blasts, but I feel that if I learned how to use the \u201cragdoll\u201d physics in Unity, the effect would have been much more impressive.\u00a0 Currently, the player just has a cube bounding box, so the player looks very stiff when thrown by an explosion.<\/p>\n<p>The ground is just a terrain object (like I used in the test <a href=\"http:\/\/www.levidsmith.com\/gigaguy\/\">Giga Guy<\/a> game that I developed), but I always have issues with my models falling over when going up the terrain, therefore I just left the game area flat.\u00a0 However, I was able to use the blended terrain textures to make the ground look much more pleasing.<\/p>\n<p>I used Blender again for rendering my models.\u00a0 There were really only two models that are in this game, which are the player and the bombs.\u00a0 From my LD27-warmup game <a href=\"http:\/\/www.ludumdare.com\/compo\/ludum-dare-27-warmup\/?action=preview&amp;uid=19778\">North Avenue Adventure<\/a>, I learned how to properly project my mesh to a 2D layout, and how to modify the unwrapped vertex \u201cislands\u201d properly to generate an image layout to be textured in Gimp.\u00a0 I am happy with the model that I created, but I would like to go back and add more details later.\u00a0 However, I found that it can be difficult to modify a model in Blender once all the modifiers (mirror, subdivision surface) have been applied and the armature added.\u00a0 I also think I could have done a much better job on the bomb model, since it is just a stack of cylinders.\u00a0 A spark particle system on the bomb would also be a nice touch.<\/p>\n<p>My mini-LD43 game, <a href=\"http:\/\/www.ludumdare.com\/compo\/minild-43\/?action=preview&amp;uid=19778\">Marching Band Simulator 2013<\/a> taught me more about composing music in games.\u00a0 However, for Bomb Squad I decided to go with Garage Band on my Mac laptop for composing the music.\u00a0 In my previous entries, I have used PxTone Collage which is a great tool, but the blips and bloops it uses cannot compare to the music that can be created with Garage Band.\u00a0 For the complete soundtrack, please visit my <a href=\"https:\/\/soundcloud.com\/gatechgrad\/sets\/bomb-squad\">Sound Cloud page<\/a>.\u00a0 The only problem with Garage Band is that I had to export my songs to iTunes to get the audio file, and then copy it over to my development system.\u00a0 It is a bit of a hassle, but I think it is worth the extra effort.<\/p>\n<p>Another game I created in Unity for #1GAM was called <a href=\"http:\/\/gamejolt.com\/games\/puzzle\/genetic-disorder\/14739\/\">Genetic Disorder<\/a>, which is where I learned how to make the text meshes for the title screen using Blender.\u00a0 It\u2019s a fairly simplistic process, but the number of vertices must be reduced otherwise the model file size will end up being huge.<\/p>\n<div class=\"wp-caption aligncenter\" id=\"attachment_279198\" style=\"width: 310px\"><a href=\"http:\/\/www.ludumdare.com\/compo\/wp-content\/uploads\/2013\/08\/bombsquad02.png\"><img alt=\"bombsquad02\" class=\"size-medium wp-image-279198\" height=\"186\" src=\"http:\/\/www.ludumdare.com\/compo\/wp-content\/uploads\/2013\/08\/bombsquad02-300x186.png\" width=\"300\"\/><\/a><p class=\"wp-caption-text\">Text mesh zooming in on title screen<\/p><\/div>\n<p style=\"text-align: left\">For the 7dRTS challenge, I created a game called <a href=\"http:\/\/www.ludumdare.com\/compo\/minild-44\/?action=preview&amp;uid=19778\">Ninja Squad Commander<\/a>, where I learned many more Unity tricks.\u00a0 First of all, it taught me how to center a text object over a model, and how to make the 3D text sharp (by default the 3D text will be blurry).\u00a0 This was used in Bomb Squad to display the number of seconds until explosion over each bomb.\u00a0 In that game, I also learned how to make detailed particle systems, like the fire effects, using Gimp to create the fire texture using a gradient and IWarp filters.\u00a0 The game also taught me how to attach lights to particle systems at runtime, to give the fire a glowing effect which can be seen on objects around it.\u00a0 Both of these effects were used in Bomb Squad at the location of an exploded bomb.\u00a0 When I was developing the RTS, I also learned how to determine the distance between two objects in 3D space, since using multiple physics colliders for different events can cause problems.\u00a0 The 3D distance calculation was essential to determine how much damage the player would take from a blast, and how much property damage is received by an object.\u00a0 The distance calculation is also used to determine if a bomb is selected to be disabled.\u00a0 My 7dRTS game also taught me how to make a shadowed font from a text object, which made the static text in the game look much better.<\/p>\n<p style=\"text-align: left\">The one new feature that I added that I hadn\u2019t implemented in a previous game is the mini-map.\u00a0 I felt that it was needed, since the player can\u2019t always see the entire game area, so there would be bombs hidden to the player.\u00a0 That problem could be helped by adding code to fix the camera behind the player, so that is something I will look into for a future release.\u00a0 I think the mini-map would still be beneficial, but some players noted that it makes the game a little too easy, so I may eventually take away the bomb color on the mini-map.<\/p>\n<p style=\"text-align: left\">Honestly, I can say Bomb Squad wouldn\u2019t have turned out as good as it did if I hadn\u2019t created all of those other smaller games after LD26.\u00a0 One important factor in being successful in Ludum Dare is knowing your tools and all the tricks before the competition starts.\u00a0 Trying to learn new technologies during the competition is a recipe for failure.<\/p>\n<p style=\"text-align: left\">Follow me on Twitter at <a href=\"http:\/\/twitter.com\/GaTechGrad\">@GaTechGrad<\/a> and visit my website at <a href=\"http:\/\/www.levidsmith.com\">www.levidsmith.com<\/a><\/p>\n<p>Tags: <a href=\"http:\/\/ludumdare.com\/compo\/tag\/post-mortem\/\" rel=\"tag\">post-mortem<\/a>, <a href=\"http:\/\/ludumdare.com\/compo\/tag\/postmortem\/\" rel=\"tag\">postmortem<\/a>, <a href=\"http:\/\/ludumdare.com\/compo\/tag\/timelapse\/\" rel=\"tag\">timelapse<\/a><\/p>","time":"August 30th, 2013 2:52 pm","title":"Bomb Squad Post Mortem Kombat","title_was_empty":false}