{"id":2849,"date":"2018-03-12T12:04:01","date_gmt":"2018-03-12T04:04:01","guid":{"rendered":"http:\/\/www.gridsagegames.com\/blog\/?p=2849"},"modified":"2018-03-29T16:22:11","modified_gmt":"2018-03-29T08:22:11","slug":"polybot-7-2018-7drl","status":"publish","type":"post","link":"https:\/\/www.gridsagegames.com\/blog\/2018\/03\/polybot-7-2018-7drl\/","title":{"rendered":"POLYBOT-7, a 2018 7DRL"},"content":{"rendered":"<p>Back in 2012 I made a 7DRL by stripping down <a title=\"X@COM\" href=\"http:\/\/xcomrl.blogspot.com\">X@COM<\/a> to create the original <a title=\"Cogmind 7DRL\" href=\"http:\/\/cogmindrl.blogspot.com\">Cogmind prototype<\/a>. Now, <em>six years<\/em> later, I&#8217;ve ripped Cogmind apart and put it back together as something else for yet another 7DRL :)<\/p>\n<p>I&#8217;ve always wanted to build more roguelikes, and the annual <a title=\"Rogue Basin: Seven-day Roguelike Challenge\" href=\"http:\/\/www.roguebasin.com\/index.php?title=Seven_Day_Roguelike_Challenge\">7DRL challenge<\/a> is a great opportunity to do just that, but in the years after 2012 the torturous hours I put myself through that week to make Cogmind a reality were still too fresh in mind. While that feeling faded as the years went by and I became eager to participate again, then I got way too busy with work and had to repeatedly pass, despite several false starts that died in the design doc phase. This year the stars aligned and it was about time to finally revisit the event that drove me to create a game which has since become my full-time job and taken over my life :P<\/p>\n<p>Today, following a week of blood, sweat, and ASCII, I present POLYBOT-7!<\/p>\n<p style=\"text-align: center;\"><a href=\"https:\/\/www.gridsagegames.com\/blog\/gsg-content\/uploads\/2018\/03\/polybot_box_cover.png\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-2857 aligncenter\" title=\"7DRL 2018 POLYBOT-7 Cover Image\" alt=\"polybot_box_cover\" src=\"https:\/\/www.gridsagegames.com\/blog\/gsg-content\/uploads\/2018\/03\/polybot_box_cover.png\" width=\"630\" height=\"500\" \/><\/a><\/p>\n<p>POLYBOT-7 is purely about scrapping together a robot on the fly to take on other robots. And while that sounds sorta like Cogmind, this 7DRL is instead hyperfocused on tactical combat in a coffee break package. To create it, Cogmind&#8217;s hacking, intel, allies, factions, ecosystems, NPCs, events, lore, expansive world and much more, <em>are all gone<\/em>, as are the many UI elements required to support them. There is only<\/p>\n<p>Destroy. Rebuild. Adapt. The world is your inventory.<\/p>\n<p>All the core <em>combat<\/em> mechanics are inherited from Cogmind (as of the latest version, <a title=\"Cogmind Beta 5: Release Notes and Changelog\" href=\"http:\/\/steamcommunity.com\/games\/722730\/announcements\/detail\/1651001473410060642\">Beta 5+<\/a>), but the surrounding systems, and therefore much of the gameplay, have changed significantly&#8230;<\/p>\n<ul>\n<li>You now<strong> automatically attract nearby parts <\/strong>and attach them when you have empty slots<\/li>\n<li>Builds are even more free-form, since there are <strong>no type restrictions on slots<\/strong>!<\/li>\n<li>Redesigned movement mechanics mean you can now <strong>combine multiple forms of propulsion<\/strong>, though flight was removed as part of the purge of non-combat options<\/li>\n<li>Part management is greatly simplified, since there is <strong>no inventory at all<\/strong> and you not only don&#8217;t have to but\u00a0<strong>can&#8217;t remove individual parts<\/strong><\/li>\n<li>All salvage (and other free items once you&#8217;ve neared them) <strong>destroy themselves<\/strong> after a period of time<\/li>\n<li>You <strong>start more powerful<\/strong>, with 11 slots<\/li>\n<li>The world is smaller, <strong>only 5 floors<\/strong> (although maps are still quite large, and if you win there is New Game+!)<\/li>\n<li>There is <strong>no slot evolution<\/strong> between floors--you can skip to the next floor whenever you find an exit, but you can only gain extra slots by finding items on the current floor, so skipping ahead will leave you weaker later!<\/li>\n<li>You also find <strong>permanent upgrades<\/strong> by destroying Dispatchers, machines that are activated and spit out robots as you near them<\/li>\n<li><strong>All robots are hostile<\/strong>--if it moves, you probably want to either shoot it, reposition, or run<\/li>\n<li>There are <strong>fewer robot and item types<\/strong> than found in Cogmind (though also many new ones)<\/li>\n<li>Weapon <strong>ranges<\/strong>, sight ranges, speeds, etc. were all <strong>reduced to fit the new UI<\/strong> dimensions, making it possible to still see everything that&#8217;s going on, though maps might feel a bit more &#8220;cramped&#8221; as a result<\/li>\n<\/ul>\n<p style=\"text-align: center;\"><a href=\"https:\/\/www.gridsagegames.com\/blog\/gsg-content\/uploads\/2018\/03\/polybot7_7DRL_screenshot_tiles.png\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-2860 aligncenter\" title=\"2018 7DRL POLYBOT-7 Screenshot (Tiles)\" alt=\"polybot7_7DRL_screenshot_tiles\" src=\"https:\/\/www.gridsagegames.com\/blog\/gsg-content\/uploads\/2018\/03\/polybot7_7DRL_screenshot_tiles.png\" width=\"1908\" height=\"1080\" \/><\/a><\/p>\n<p>As you can tell in screenshots, the UI is also fairly different, condensed into a much smaller grid to allow for double-sized fonts. The visual style is also different overall, because it&#8217;s nice to make clear that POLYBOT-7 is a distinct game and to experiment with other looks! Walls are now line-based (even in the tiles version), and I used Cogmind&#8217;s new and improved render filter system to create the low-contrast aesthetic.<\/p>\n<h2>Design<\/h1>\n<p>Although probably not entirely necessary after a rundown like that, I want to emphasize that POLYBOT-7 is definitely <em>not<\/em> a true Cogmind demo. It does, however, showcase a lot of the same particle effects and SFX, as well as UI features and general style.<\/p>\n<p>Features that <em>were<\/em> inherited from Cogmind:<\/p>\n<ul>\n<li>Combat mechanics<\/li>\n<li>Numerous items and their effects<\/li>\n<li>Soundscape\/SFX<\/li>\n<li>Map generation (same algorithms with different parameters)<\/li>\n<li>Some convenient UI features, wherever I could keep or redesign them since they add significant QoL<\/li>\n<li>Many of the same customization options are still available, but because I removed the options menu (no time for that!) you have to make changes direct to the config files. Certainly not all of them are applicable anymore, but a lot are.<\/li>\n<\/ul>\n<p style=\"text-align: center;\"><a href=\"https:\/\/www.gridsagegames.com\/blog\/gsg-content\/uploads\/2018\/03\/polybot7_7DRL_parts_manipulation.gif\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-2861 aligncenter\" title=\"2018 7DRL POLYBOT-7 UI Animation (Inventory Manipulation)\" alt=\"polybot7_7DRL_parts_manipulation\" src=\"https:\/\/www.gridsagegames.com\/blog\/gsg-content\/uploads\/2018\/03\/polybot7_7DRL_parts_manipulation.gif\" width=\"798\" height=\"798\" \/><\/a><\/p>\n<p>Still, for a long while Cogmind has been on rails with such a long semi-predetermined TODO list that just executing it is only half the fun of development, whereas hacking away at a 7DRL was a really refreshing opportunity to work with new concepts and a much cleaner slate. Naturally I got really excited at this chance to experiment with mechanics and create a new experience in an otherwise seemingly familiar world--in that way it&#8217;s kinda like one of the Cogmind Challenge Modes on steroids. In fact, the idea that ultimately won out as The Core Mechanic for POLYBOT-7 came precisely from a planned Challenge Mode, the idea of attracting parts which automatically attach to you and cannot be removed as normal.<\/p>\n<p>Everything else was designed around that.<\/p>\n<p>Early on it became apparent that simply shooting stuff and attaching nearby parts automatically, maybe while toggling them to optimize the build as necessary, wasn&#8217;t quite enough of a fun challenge. There were too few player choices involved, so to keep it interesting I added a heavy emphasis on a redesigned version of Cogmind&#8217;s &#8220;go naked&#8221; command, the one that strips you of all your parts in a single action. (It became so important that its hotkey went from Shift-Alt-p to just &#8216;p&#8217; :)) But in the case of POLYBOT-7, a so-called &#8220;Purge&#8221; destroys only <em>half<\/em> your parts, scattering the other half on the ground around you. This means it&#8217;s kind of like a randomized &#8220;shuffle&#8221; for your build, allowing you to regain some parts while making room for others you&#8217;ve come across, or simply trying to rid yourself of too many broken parts or a highly imbalanced build to start fresh.<\/p>\n<p>The Purge system requires 100 turns to charge before it can be used again, however, making it vital to do this at only the best opportunities, while also preventing players from gaming the system to repeatedly purge and quickly destroy specific parts.<\/p>\n<p>In terms of balance, while the player will have easy access to spare parts by strolling through the remains of any given battle, these parts are often garbage and not that suited to fighting hordes of enemy robots. On the other hand, there are caches of nice parts to be found&#8230; When and where to Purge will be key to survival!<\/p>\n<p>Of course there are plenty of other features that didn&#8217;t survive the chopping block, but such are 7DRLs! Maybe one day? :)<\/p>\n<h2>Interlude<\/h1>\n<p>Earlier I said blood, sweat, and <em>ASCII<\/em>, but while there is definitely a full-ASCII mode, POLYBOT-7 defaults to tiles created by the wonderful\u00a0<a title=\"@ThKasparrr\" href=\"https:\/\/twitter.com\/ThKasparrr\">Kacper Wo\u017aniak<\/a>. He really knows how to maximize the potential of those few pixels I give him :P. So while I was coding up a storm, Kacper was pixeling our new robots and items (when not at work fretting for lack of time :P). Thanks for the help, man!<\/p>\n<p style=\"text-align: center;\"><a href=\"https:\/\/www.gridsagegames.com\/blog\/gsg-content\/uploads\/2018\/03\/polybot7_tile_sample.png\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-2858 aligncenter\" title=\"2018 7DRL POLYBOT-7 Tileset Sample\" alt=\"polybot7_tile_sample\" src=\"https:\/\/www.gridsagegames.com\/blog\/gsg-content\/uploads\/2018\/03\/polybot7_tile_sample.png\" width=\"628\" height=\"56\" \/><\/a><\/p>\n<h2>Impetus<\/h1>\n<p>I would&#8217;ve preferred doing something <em>completely<\/em> different for what is only my second 7DRL (POLYBOT-7 is pretty radical, though not as radical as say something built from scratch :P), but there are a lot of reasons I ended up choosing this particular game:<\/p>\n<ul>\n<li>First and foremost, this is something I can point people to when they like the theme or basic idea of Cogmind but don&#8217;t have a large enough display to enjoy it on. For them I wanted to test how much of the main UI I could cram into only half the space, while also adjusting the content to suit a smaller map area. In fact, the original code name I used in my first design docs was &#8220;Bigmind&#8221; :P. In the earliest design iterations it was going to be just a stripped-down version of Cogmind, but I felt that wasn&#8217;t worthy of a 7DRL--it really needed to be something even more unique, so as those changes made their way into the design I later decided the name shouldn&#8217;t be that close to its progenitor, either.<\/li>\n<li>That first reason also made it easier to justify taking the required time out of my work on Cogmind (technically my job now!) to join 7DRL. I know POLYBOT-7 is something that existing Cogmind fans can enjoy as well, win-win!<\/li>\n<li>POLYBOT-7 allowed me to explore a bit of what Cogmind would be like if I had gone the other route back in 2012: no slot types. Design-wise I&#8217;ve been very glad I did go the type-restricted route, but it&#8217;ll be interesting to see what comes of completely free-form builds, even if there isn&#8217;t as much control over them.<\/li>\n<li>I really like the idea of using 7DRL to force completion of quick and focused prototypes, exploring game ideas that might be extendable or polishable into something better later on. I&#8217;ve been thinking about that especially often as we get into late Cogmind dev, since I may need a quicker commerical project or two to be able to reliably fund future development.<\/li>\n<\/ul>\n<h2>Download<\/h1>\n<p>This year&#8217;s 7DRL is the first to be hosted at itch.io, so rather than providing the download myself, <a title=\"POLYBOT-7 on itch.io\" href=\"https:\/\/kyzrati.itch.io\/polybot-7\">you&#8217;ll find it over there<\/a>, along with additional information. If I end up providing future updates, they&#8217;ll also be made available there. Here on the blog I&#8217;ll also be writing a portmortem covering at least some of the design and technical processes that went into creating POLYBOT-7. I certainly didn&#8217;t have enough time to share much of anything during the week!<\/p>\n<p style=\"text-align: center;\"><a href=\"https:\/\/www.gridsagegames.com\/blog\/gsg-content\/uploads\/2018\/03\/polybot7_7DRL_various_combat.gif\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-2862 aligncenter\" title=\"2018 7DRL POLYBOT-7 Combat Sample\" alt=\"polybot7_7DRL_various_combat\" src=\"https:\/\/www.gridsagegames.com\/blog\/gsg-content\/uploads\/2018\/03\/polybot7_7DRL_various_combat.gif\" width=\"774\" height=\"615\" \/><\/a><\/p>\n<p>Oh, and it probably goes without saying there is an ASCII version ;) (F3!)<\/p>\n<p style=\"text-align: center;\"><a href=\"https:\/\/www.gridsagegames.com\/blog\/gsg-content\/uploads\/2018\/03\/polybot7_7DRL_screenshot_ascii.png\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-2863 aligncenter\" title=\"2018 7DRL POLYBOT-7 ASCII Sample\" alt=\"polybot7_7DRL_screenshot_ascii\" src=\"https:\/\/www.gridsagegames.com\/blog\/gsg-content\/uploads\/2018\/03\/polybot7_7DRL_screenshot_ascii.png\" width=\"1908\" height=\"1080\" \/><\/a><\/p>\n<p>Have fun :D<\/p>\n<p><em>Update 180329: I&#8217;ve published a four-part postmortem about this 7DRL&#8217;s development process and many of the design decisions made along the way, starting <a title=\"2018 7DRL Postmortem, Part 1: Preparation\" href=\"http:\/\/www.gridsagegames.com\/blog\/2018\/03\/7drl-postmortem-part-1-preparation\/\">here<\/a>.<\/em><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Back in 2012 I made a 7DRL by stripping down X@COM to create the original Cogmind prototype. Now, six years later, I&#8217;ve ripped Cogmind apart and put it back together as something else for yet another 7DRL :) I&#8217;ve always wanted to build more roguelikes, and the annual 7DRL challenge is a great opportunity to [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":2857,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[108],"tags":[11,141,173,46,13],"class_list":["post-2849","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-release","tag-7drl","tag-polybot-7","tag-release","tag-roguelikes","tag-ui"],"_links":{"self":[{"href":"https:\/\/www.gridsagegames.com\/blog\/wp-json\/wp\/v2\/posts\/2849","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.gridsagegames.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.gridsagegames.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.gridsagegames.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.gridsagegames.com\/blog\/wp-json\/wp\/v2\/comments?post=2849"}],"version-history":[{"count":11,"href":"https:\/\/www.gridsagegames.com\/blog\/wp-json\/wp\/v2\/posts\/2849\/revisions"}],"predecessor-version":[{"id":2976,"href":"https:\/\/www.gridsagegames.com\/blog\/wp-json\/wp\/v2\/posts\/2849\/revisions\/2976"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.gridsagegames.com\/blog\/wp-json\/wp\/v2\/media\/2857"}],"wp:attachment":[{"href":"https:\/\/www.gridsagegames.com\/blog\/wp-json\/wp\/v2\/media?parent=2849"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.gridsagegames.com\/blog\/wp-json\/wp\/v2\/categories?post=2849"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.gridsagegames.com\/blog\/wp-json\/wp\/v2\/tags?post=2849"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}