{"id":35,"date":"2011-08-14T14:01:51","date_gmt":"2011-08-14T14:01:51","guid":{"rendered":"http:\/\/lofigames.com\/?p=35"},"modified":"2014-09-03T09:57:13","modified_gmt":"2014-09-03T09:57:13","slug":"soonish","status":"publish","type":"post","link":"https:\/\/lofigames.com\/ja\/soonish\/","title":{"rendered":"Soonish"},"content":{"rendered":"<p>I have 2 major problems with the game at the moment, and I&#8217;m going to have to leave them in for the first release.<\/p>\n<div id=\"articlecontent\">\n<p>Firstly, performance is very bad when there are more than about 70 characters in the area.\u00a0 Which is almost always.\u00a0 For a start I have temporarily taken out all civilian NPCs from the game, and NPC numbers in general will be kept small.<br \/>\nThis however is a temporary measure, my solution to this is to split the game code in half and run most of the code on a background thread, while the main thread will be used for rendering and physics, nothing else.\u00a0 What this means in laymans terms, is the frame rate will be blazing fast even if there are 100&#8217;s of NPCs around, but its a major job for me and I estimate will take me a month or two.\u00a0 So I&#8217;ll leave it for later, until then bear with the lousy frame rate.<\/p>\n<div><a title=\"Trading post - Indie DB\" href=\"http:\/\/www.indiedb.com\/games\/kenshi\/images\/trading-post\" target=\"_blank\" rel=\"nofollow noopener\"><img decoding=\"async\" class=\"aligncenter\" src=\"http:\/\/media.indiedb.com\/cache\/images\/games\/1\/15\/14814\/thumb_620x2000\/screenshot_1102.jpg\" alt=\"Trading post\" width=\"560\" border=\"0\" \/><\/a><\/div>\n<div style=\"text-align: center;\">Some guy with a backpack going into a trading post<\/div>\n<p>Secondly is that loading times as you move about the map are ridiculously long, especially when a town is loaded.\u00a0 For now I&#8217;ve fixed it up a little so Its not so bad when you go back to a place you&#8217;ve been before, because some data is kept in memory.\u00a0 Its still bad though, and the main cause of it all is the pathfinding system analysing the map.<br \/>\nSo the solution for this I have decided is to switch to a new pathfinder library (called\u00a0<a href=\"http:\/\/code.google.com\/p\/recastnavigation\/\" rel=\"nofollow noopener\" target=\"_blank\">recast<\/a>).\u00a0 This will not only fix the loading times, but will fix the buggy pathfinding system currently in place (which is another problem).\u00a0 Again this is a big job that will take a month or two, and I really don&#8217;t want to do it, so my plan is to wait until Kenshi is making enough sales and I&#8217;ll hire another programmer to do it for me.<\/p>\n<div><a title=\"Interior of a trading post - Indie DB\" href=\"http:\/\/www.indiedb.com\/games\/kenshi\/images\/interior-of-a-trading-post\" target=\"_blank\" rel=\"nofollow noopener\"><img decoding=\"async\" class=\"aligncenter\" src=\"http:\/\/media.indiedb.com\/cache\/images\/games\/1\/15\/14814\/thumb_620x2000\/screenshot_1103.1.jpg\" alt=\"Interior of a trading post\" width=\"560\" border=\"0\" \/><\/a><\/div>\n<div style=\"text-align: center;\">Interior of the trading post<\/div>\n<p>So I&#8217;m leaving these problems in for now; low framerate, long loading times, buggy pathfinding.\u00a0 Apologies for this, but it would delay the game at least another 4-6 months and if I can release the game sooner, the sooner I can make enough money to pump back into the game and speed up development.<\/p>\n<p>Now I can keep moving on, I&#8217;m going to implement game saving\/loading, then I&#8217;m going to actually start playing the game a little so I can start balancing gameplay a bit.<\/p>\n<\/div>","protected":false},"excerpt":{"rendered":"<p>I have 2 major problems with the game at the moment, and I&#8217;m going to have to leave them in for the first release. Firstly, performance is very bad when there are more than about 70 characters in the area.\u00a0 Which is almost always.\u00a0 For a start I have temporarily taken out all civilian NPCs from the game, and NPC numbers in general will be kept small. This however is a temporary measure, my solution to this is to split the game code in half and run most of the code on a background thread, while the main thread will be used for rendering and physics, nothing else.\u00a0 What this [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":37,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4],"tags":[18,10],"class_list":["post-35","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-progress-announcements","tag-bugs","tag-dev-blog","has_thumb"],"_links":{"self":[{"href":"https:\/\/lofigames.com\/ja\/wp-json\/wp\/v2\/posts\/35","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/lofigames.com\/ja\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/lofigames.com\/ja\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/lofigames.com\/ja\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/lofigames.com\/ja\/wp-json\/wp\/v2\/comments?post=35"}],"version-history":[{"count":0,"href":"https:\/\/lofigames.com\/ja\/wp-json\/wp\/v2\/posts\/35\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/lofigames.com\/ja\/wp-json\/wp\/v2\/media\/37"}],"wp:attachment":[{"href":"https:\/\/lofigames.com\/ja\/wp-json\/wp\/v2\/media?parent=35"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/lofigames.com\/ja\/wp-json\/wp\/v2\/categories?post=35"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/lofigames.com\/ja\/wp-json\/wp\/v2\/tags?post=35"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}