{"author_name":"sudojess","cat":"LD #37","comments":[{"author_name":"perfectfitz","time":"December 13, 2016 3:28 am","epoch":1481617680,"text":"I&#8217;m about to test it live on Twitch.","spam":"N"}],"epoch":1481617260,"likes":1,"metadata":{"p_key":"1149","p_author":"sudojess","p_authorkey":"0","p_urlkey":"35991","p_title":"Velocity Glyph \u2013 5 years and Post Mortem","p_cat":"LD #37","p_event":"LD37","p_time":"1481617260","p_likes":"1","p_comments":"1","p_status":"UPD5","us_key":null,"us_name":null,"us_username":null,"event_start":"1481241600","event_key":"81","event_name":"Ludum Dare 37"},"text":"<p>Original post  here: https:\/\/sudojess.tumblr.com\/post\/154413889334\/velocity-glyph-5-years-and-a-ludum-dare-37-post<\/p>\n <p><a href=\"http:\/\/ludumdare.com\/compo\/2016\/12\/13\/velocity-glyph-5-years-and-post-mortem\/after-6\/\" rel=\"attachment wp-att-598448\"><img src=\"http:\/\/ludumdare.com\/compo\/wp-content\/uploads\/2016\/12\/after-300x188.png\" alt=\"after\" width=\"300\" height=\"188\" class=\"alignnone size-medium wp-image-598448\" srcset=\"http:\/\/ludumdare.com\/compo\/wp-content\/uploads\/2016\/12\/after-300x188.png 300w, http:\/\/ludumdare.com\/compo\/wp-content\/uploads\/2016\/12\/after-768x480.png 768w, http:\/\/ludumdare.com\/compo\/wp-content\/uploads\/2016\/12\/after-550x344.png 550w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n <p>This weekend (and Monday), I participated in Ludum Dare 37.<\/p>\n <p>5 years ago, I also participated in Ludum Dare, for the first time.<\/p>\n <p>A lot has changed in those 5 years, as it would. 5 years is a long time. I went from making games as a hobby, to actually managing a games studio, as well as working on them as a hobby. I get paid every day to make games and that\u2019s incredible. For many people, it\u2019s a dream. It was damn hard work getting here, and it\u2019s even more difficult now than ever, of course I\u2019m better prepared for that now.<br \/>\n I\u2019m happy with where I am, I\u2019m lucky to be here, and I\u2019m really excited for what the next 5 years brings.<\/p>\n <p>This time, I created an arcade racer, kinda Wipeout\/Re-Volt inspired. a miniature hover racing game. I\u2019m pretty impressed with the result.<\/p>\n <p>You can vote on it here:<\/p>\n <blockquote data-secret=\"zhSFANcrmX\" class=\"wp-embedded-content\"><p><a href=\"http:\/\/ludumdare.com\/compo\/ludum-dare-37\/\">Ludum Dare 37<\/a><\/p><\/blockquote>\n <p><iframe class=\"wp-embedded-content\" sandbox=\"allow-scripts\" security=\"restricted\" style=\"display:none;\" src=\"http:\/\/ludumdare.com\/compo\/ludum-dare-37\/embed\/#?secret=zhSFANcrmX\" data-secret=\"zhSFANcrmX\" width=\"500\" height=\"282\" title=\"Embedded WordPress Post\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\"><\/iframe><\/p>\n <p>And you can download and play it for free here:<br \/>\n https:\/\/sudojess.itch.io\/velocity-glyph<\/p>\n <p>It\u2019s funny to see how far I\u2019ve come from my first LD, a pretty terrible platformer with awful graphics and controls. Performance was probably worse than Velocity Glyph too.<\/p>\n <p>I created a few interesting systems for the game, and here\u2019s some details on how they work<\/p>\n <p>Hovering:<br \/>\n <a href=\"http:\/\/ludumdare.com\/compo\/2016\/12\/13\/velocity-glyph-5-years-and-post-mortem\/h0vering\/\" rel=\"attachment wp-att-598449\"><img src=\"http:\/\/ludumdare.com\/compo\/wp-content\/uploads\/2016\/12\/h0vering-300x129.png\" alt=\"h0vering\" width=\"300\" height=\"129\" class=\"alignnone size-medium wp-image-598449\" srcset=\"http:\/\/ludumdare.com\/compo\/wp-content\/uploads\/2016\/12\/h0vering-300x129.png 300w, http:\/\/ludumdare.com\/compo\/wp-content\/uploads\/2016\/12\/h0vering.png 500w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n <p>There are two components to hovering.<br \/>\n Firstly, \u2018sticking\u2019<\/p>\n <p>Physical gravity is actually turned off for the project, each Racer gets its own version of local \u2018gravity\u2019, and every FixedUpdate, applies a downwards force to itself, \u2018down\u2019 being whatever it decides.<br \/>\n The racer is constantly casting a ray from each of its hover pads in the direction they\u2019re facing. It averages down the normal of each ray hit and uses that as its definition of what down is.<\/p>\n <p>I had a big problem at the start of being able to trick it into thinking \u2018down\u2019 was on the walls, if you rubbed against them hard enough, so I made gravity firstly Lerp between its current and desired definition of down, and secondly I don\u2019t allow any drastic changes in gravity, as the tracks tend to curve smoothly anyway. It doesn\u2019t work perfectly, but it\u2019s a lot better than it was.<\/p>\n <p>Secondly, the racers do actually hover above the ground, there\u2019s no weird collision box magic going on, as well as applying a gravity force, they\u2019re also applying an inverse force, allowing for a little over\/undershooting of their desired distance, creating that distinctive bobbing effect. These values are slightly different for each kind of racer to make them feel a little different.<\/p>\n <p>The same function that checks gravity also feeds the respawn system. If it can\u2019t find any ground for 5 seconds, it respawns you at the last checkpoint. This was because the AI occasionally gets confused and thinks it can take shortcuts via the side of the track, and promptly falls to its death.<\/p>\n <p>AI:<\/p>\n <p><a href=\"http:\/\/ludumdare.com\/compo\/2016\/12\/13\/velocity-glyph-5-years-and-post-mortem\/ai-6\/\" rel=\"attachment wp-att-598450\"><img src=\"http:\/\/ludumdare.com\/compo\/wp-content\/uploads\/2016\/12\/AI-300x161.png\" alt=\"AI\" width=\"300\" height=\"161\" class=\"alignnone size-medium wp-image-598450\" srcset=\"http:\/\/ludumdare.com\/compo\/wp-content\/uploads\/2016\/12\/AI-300x161.png 300w, http:\/\/ludumdare.com\/compo\/wp-content\/uploads\/2016\/12\/AI-768x411.png 768w, http:\/\/ludumdare.com\/compo\/wp-content\/uploads\/2016\/12\/AI.png 1115w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><br \/>\n The AI is pretty basic, but it does the job for the most part. I\u2019m actually impressed with how well it works given the simplicity of it.<\/p>\n <p>Basically, as you can see on the above screenshot, the AI casts a few rays, if one hits, it figures out a value between 0.2 and 1 for how far away it is, based on a curve, rather than a linear value, that way it turns harder a bit sooner than if it was right next to the wall.<\/p>\n <p>If it detects walls in both directions, it figures out which way it should turn, and turns a reduced amount in that direction.<\/p>\n <p>It tries to point vaguely in the direction of the next waypoint, but it takes a low priority, as the track curves around a bit, so pointing directly to it isn\u2019t a great idea.<\/p>\n <p>If it detects it\u2019s facing a wall directly, it will slam in reverse to try to get away from the wall. It doesn\u2019t always work, but it does solve a few issues. The AI makes it round the course 99% of the time now, in a competitive time. I have trouble winning against the AI sometimes, which is impressive for just 2 hours coding on the AI. There is no rubber banding or different values for the AI, it and the playercontroller send exactly the same info to the racer controller.<\/p>\n <p>Game Feel:<br \/>\n <a href=\"http:\/\/ludumdare.com\/compo\/2016\/12\/13\/velocity-glyph-5-years-and-post-mortem\/feel-3\/\" rel=\"attachment wp-att-598452\"><img src=\"http:\/\/ludumdare.com\/compo\/wp-content\/uploads\/2016\/12\/feel-300x153.png\" alt=\"feel\" width=\"300\" height=\"153\" class=\"alignnone size-medium wp-image-598452\" srcset=\"http:\/\/ludumdare.com\/compo\/wp-content\/uploads\/2016\/12\/feel-300x153.png 300w, http:\/\/ludumdare.com\/compo\/wp-content\/uploads\/2016\/12\/feel-768x392.png 768w, http:\/\/ludumdare.com\/compo\/wp-content\/uploads\/2016\/12\/feel-550x281.png 550w, http:\/\/ludumdare.com\/compo\/wp-content\/uploads\/2016\/12\/feel.png 953w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n <p>One of my goals right from the start was to make each racer feel different, while keeping a balance there. I think I\u2019ve achieved that, and I\u2019m quite happy with the result.<\/p>\n <p>Each racer has slightly different thrust values, but nothing game breaking, the main key is the engine location. It actually applies thrust where the engines are, which makes the London, with its one powerful engine, feel a big more \u2018slidy\u2019 than say, the Moscow, with its 4 \u2018push forward\u2019 engines, that make acceleration feel a bit more punchy. <\/p>\n <p>Turning doesn\u2019t just happen on a dime either, it lerps to the turn value, by a different amount, and each racer corrects itself slightly different.<\/p>\n <p>Racers also have unique hover force values, so some feel bouncier than others.<\/p>\n <p>Finally, particles and Audio play a big part in game feel. I had some sounds lying around on a hard drive that I modified and cut together to create unique sounds for the London and Washington. Sadly I ran out of time so the Moscow uses the same sounds as the Washington.<\/p>\n <p>There are engine startup noises, idle noises and \u2018rev\u2019 noises. The rev noises fade in and also increase in pitch as you get faster, making it feel like you\u2019re really pushing the engines. There\u2019s a slight delay on the noises too, which I found just felt a bit better, though I can\u2019t explain why.<\/p>\n <p>Conclusion:<\/p>\n <p><a href=\"http:\/\/ludumdare.com\/compo\/2016\/12\/13\/velocity-glyph-5-years-and-post-mortem\/capture-2016-12-13_01-59-17\/\" rel=\"attachment wp-att-598453\"><img src=\"http:\/\/ludumdare.com\/compo\/wp-content\/uploads\/2016\/12\/Capture-2016-12-13_01-59-17-300x188.png\" alt=\"Capture-2016-12-13_01-59-17\" width=\"300\" height=\"188\" class=\"alignnone size-medium wp-image-598453\" srcset=\"http:\/\/ludumdare.com\/compo\/wp-content\/uploads\/2016\/12\/Capture-2016-12-13_01-59-17-300x188.png 300w, http:\/\/ludumdare.com\/compo\/wp-content\/uploads\/2016\/12\/Capture-2016-12-13_01-59-17-768x480.png 768w, http:\/\/ludumdare.com\/compo\/wp-content\/uploads\/2016\/12\/Capture-2016-12-13_01-59-17-550x344.png 550w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><br \/>\n There\u2019s so much I could say about this game, that I created in the 72 hours I spent on it, but I\u2019ll leave it here. I had a lot of fun creating it, and I\u2019d love to take it further in the future<\/p>\n <p>I\u2019d like to give a big shoutout to http:\/\/twitter.com\/toastedkp who nearly killed himself getting these incredible models to me. I look forward to seeing everyone elses entries over the next few weeks of voting!<\/p>","time":"December 13th, 2016 3:21 am","title":"Velocity Glyph \u2013 5 years and Post Mortem"}