{"id":344,"date":"2018-08-27T22:04:02","date_gmt":"2018-08-28T03:04:02","guid":{"rendered":"http:\/\/www.chroniclesoftright.com\/blog\/?p=344"},"modified":"2018-08-27T22:04:02","modified_gmt":"2018-08-28T03:04:02","slug":"starting-again","status":"publish","type":"post","link":"https:\/\/www.chroniclesoftright.com\/blog\/2018\/08\/27\/starting-again\/","title":{"rendered":"Starting again"},"content":{"rendered":"<p>I&#8217;ve been away from the game for a few weeks due to my personal life being really busy lately but I&#8217;ve been thinking about the game and now it&#8217;s time to pick back up on development.\u00a0 Here&#8217;s some things I&#8217;ve been pondering, in no particular order.<\/p>\n<ol>\n<li>I need to rebuild my world editor.\u00a0 The world editor mostly works right now but it&#8217;s gotten big enough that it&#8217;s difficult to maintain because I didn&#8217;t really plan it out from the start.\u00a0 THREE.js actually has a somewhat nifty editor already built so I will probably take that editor and start adding in feature I specifically need to create zones for Lyridia.<\/li>\n<li>The game engine needs its own project.\u00a0 I&#8217;ve been making the game engine alongside the game and so far that&#8217;s worked but over the last few months it&#8217;s gotten unwieldy.\u00a0 It&#8217;s just hard to organize well when you don&#8217;t have a clear separation of &#8220;engine&#8221; from &#8220;game created with engine.&#8221;\u00a0 I have also created a very basic workflow that might make professional software engineers cringe, but the gist of it is that I have a file that lists every file in the engine project.\u00a0 A Node script copies all of those files into a single file, then another node script minifies the whole thing.\u00a0 This gives me a single Javascript file to load and also reduces the file size pretty drastically.\u00a0 I realize there are more robust ways of accomplishing this but this way works for me and doesn&#8217;t require me to rewrite the whole code base to work properly with Node.\u00a0 For now I&#8217;m calling the game engine &#8220;OK.&#8221;\u00a0 Because, let&#8217;s face it, it&#8217;s not great but it&#8217;s OK.<\/li>\n<li>I&#8217;ve been thinking about character classes for the game.\u00a0 For a long time I&#8217;ve had this idea that character classes should progress as a character gains more experience.\u00a0 For instance, a fighter type may start off as a general tough guy at level 1, but by the time a character is at end game he should be something more specific and impressive like a gladiator or a commando.\u00a0 It has never made sense to me for a level 1 character to be the same class as a level 100 character.\u00a0 A level 100 character shouldn&#8217;t be just a &#8220;fighter&#8221; and a level 1 character shouldn&#8217;t be a &#8220;death knight.&#8221;\u00a0 So my thought is that set points in a character&#8217;s development the player should choose how to progress.\u00a0 For instance, for Warrior types every character starts at level 1 as a &#8220;Tough.&#8221;\u00a0 This is just a basic low-level fighter.\u00a0 But at level 10 the player would choose whether to focus more on attack or defense and become either a &#8220;Fighter&#8221; or a &#8220;Defender.&#8221;\u00a0 Then at level 20 you can become a &#8220;Warrior,&#8221; a &#8220;Brawler,&#8221; or a &#8220;Guardian.&#8221;\u00a0 This carries on until level cap.\u00a0 The only refinement I might make to this is to give every archetype it&#8217;s own progression chart.\u00a0 So instead of a Warrior type choosing between DPS and tanking, I might make Warriors choose between targeted DPS and AoE DPS, then have a progression chart for Tanks where characters can be more agile or withstand more damage.\u00a0 In any case, I like the idea of being able to play multiple different classes during the life of a character, and even getting to plan out skills and playstyle based on the path a character takes through the progression chart.<\/li>\n<\/ol>\n<p>That&#8217;s enough planning and thinking for now.\u00a0 I need to go actually do some work on the game.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>I&#8217;ve been away from the game for a few weeks due to my personal life being really busy lately but I&#8217;ve been thinking about the game and now it&#8217;s time to pick back up on development.\u00a0 Here&#8217;s some things I&#8217;ve been pondering, in no particular order. I need to rebuild my world editor.\u00a0 The world&hellip;<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3],"tags":[],"class_list":["post-344","post","type-post","status-publish","format-standard","hentry","category-planning-and-development"],"_links":{"self":[{"href":"https:\/\/www.chroniclesoftright.com\/blog\/wp-json\/wp\/v2\/posts\/344","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.chroniclesoftright.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.chroniclesoftright.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.chroniclesoftright.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.chroniclesoftright.com\/blog\/wp-json\/wp\/v2\/comments?post=344"}],"version-history":[{"count":1,"href":"https:\/\/www.chroniclesoftright.com\/blog\/wp-json\/wp\/v2\/posts\/344\/revisions"}],"predecessor-version":[{"id":345,"href":"https:\/\/www.chroniclesoftright.com\/blog\/wp-json\/wp\/v2\/posts\/344\/revisions\/345"}],"wp:attachment":[{"href":"https:\/\/www.chroniclesoftright.com\/blog\/wp-json\/wp\/v2\/media?parent=344"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.chroniclesoftright.com\/blog\/wp-json\/wp\/v2\/categories?post=344"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.chroniclesoftright.com\/blog\/wp-json\/wp\/v2\/tags?post=344"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}