GuildMestar Developer Insights #9 - Implementation Complexity vs Time


Hello GuildMestars,

In this edition of Developer Insights I'd like to touch on a recently relevant topic: The Non-Relation of Implementation Complexity vs Time.

Now while that may sound like a lofty topic the reality of it is simple, the time something takes to complete is not directly related to its perceived level of challenge. The direct example of which I will be referring to today is update 0.1.4.0's enemy AI overhaul and how characters now use their walking animations during expeditions.

Anyone's initial impression of the two aforementioned topics would rightly assume that designing and implementing new and more intelligent behaviors should easily take more time and effort than adding already existing animations to the same character at another point in time. Previously I would be right there alongside them without a second thought, one is clearly more complex than the other. However over last update's roughly five week development time only one of those weeks went to the entire advanced behavior system (testing included) whereas just over two weeks went toward adding animations to expeditions.

"How can that be?" you may ask, "They must really suck at game development, I could do that in less than a day!" you may also state, aggressively asserting your vast prowess. And while I could attempt to refute these statements I'd rather talk about the real reason for this seemingly illogical fallacy. The real reason does not lie in the task's complexity but rather its scope, and not just the task's scope but the scope of its impact as well.

You see while advanced combat behavior sounds intimidating its overall impact is actually quite small. Only expedition options whose outcomes lead to combat are effected. Meaning that while the task itself does require a fair few lines of code the testing is extremely easy to iterate over and the impact of the change is contained. On the other hand allowing characters who are moving in any phase of an expedition to find and use their existing (or otherwise yet to be created) animations has a wide blast radius. This then leads to a wider variety of odd use cases: interesting iterations for characters preforming a multitude of actions, exploration action speed changing mid action, sudden resolution changes shifting world space locations while their screen spaces are retained, the list goes on.

These test cases then shift development away from the initial task and into revision tasks. What I mean by this is that every task has a multitude of decisions to be made on how to best approach your desired solution. A quick fix seems nice but often lead to additional "quick fixes" down the line and a more robust fix can be overkill taking far more resources than needed. Going through each possible solution takes time and can stagnate development until a resolution is reached. Even then this fix could have unforeseen underlying impacts causing additional required testing.

Ultimately while a change may seem easy on the surface the overall impact a simple idea can have is staggering.

I want to thank you all for joining us for this Developer Insight and until next time I leave you with this serene sight that will absolutely not have any relevance in the near future...


Signed,

StrangerTod - OffPath

Get GuildMestar

Buy Now$9.99 USD or more

Leave a comment

Log in with itch.io to leave a comment.