Nightcycle Studios 12/7/2020 "Weekly" Update

Heya everyone! For once the “weekly” is because it’s technically been only 5 days since the last one. The reason why is because as of today I have a schedule set for the future of SHL4 development.

To those unaware, recently we released the game to early testers. It still has very little in it gameplay wise, operating more as a tech demo at this point. So the question is - what’s next? We have an avatar, we have a map - when do we get the actual game?

What Next?
So, here’s the plan as of this post:

  • 0.1.0: Avatar tech demo = released
  • 0.2.0: Character customization = February 2021
  • 0.3.0: Combat = April 2021
  • 0.4.0: Roleplay mechanics = May 2021

That means within the next 2 months we’ll complete the character editor! Now, under normal circumstances this would actually be coming out late January 2021, however this is holiday season and I will be taking approximately 12 working days off, or around 2 weeks. This pushes stuff to February.

Unlike before, I won’t be releasing the 0.2.0 update in one piece. I’ll be breaking it down into larger milestones. Each new milestone will be shown by an increase in the last version number. We’re currently at milestone 10 for 0.1.0, with previous ten released being mostly day-of-release bug fixes, plus a more substantive update today to address some playtesting feedback on the controls. That brings us to 0.1.10 - so what milestones are next?

  • 0.1.11: Backend restructuring = the LP3 functions, but it’s a bit disorganized behind the scenes due to a few mid-production shifts in design philosophy. I’ll be taking about a week or two to fix this. It won’t effect anything on the front-end, but it will make future updates faster.
  • 0.1.12: Map and Avatar Improvements = originally this category was bigger as you could hypothetically polish each infinitely, but I narrowed it down to fixing some more basic stuff like fixing z-fighting and a wall gaps in the map, as well as improving the hair and cape physics among other things. This should reduce instances of clipping and hopefully lead to a superior overall experience.
  • 0.1.13 Avatar scaling = currently every avatar has the same proportions and is the same size. This update will allow the LP3 to handle larger and smaller avatars (likely limited to 3 to between 12ish feet for now), possibly allowing for some ability to make skinnier or heavier avatars. We also hope to change the proportions of torso and face joints to allow for players to more meaningfully express their gender - currently stuff is default generic male, and we want to fix that ASAP. We want SHL4 to be a place where people of all genders can express themselves fully.
  • 0.1.14 Multiplayer = at the moment the SHL4 tech demo is single player as it uses custom characters without baked in networking. We plan to change that through writing our own multiplayer system. I don’t expect it to be perfect at this stage (a lot of finer polish will likely come with the combat stuff in 0.3.0) but it should be workable and allow players to interact with eachother in the game, opening the door for some of the first roleplays!
  • 0.1.15 Character saving = this is being added before the editor as we want players to be able to save their custom character work the second they finish it. At this stage players will only be able to save the randomly generated characters though. So on the bright side if they find one they like that’s great, but it certainly is no substitute for a character generator.
  • 0.1.16 Simple editor = we realized with SHL3 that some people just want a way to quickly make a cool characters, while others want something more complex. For that reason we’re making two editors - one for very high level non-specific changes, and one for more intricate edits. At this stage the simple editor will be released, allowing people for a summarized SHL1 level experience. Eventually we hope to augment this with machine learning, but that’s certainly a post-private testing feature.
  • 0.1.17 Detailed Editor = the most dedicated members of the SHL community put hours of work into their characters, pushing the fairly constrained tool to its limits. With the detailed editor we hope to give them more control than they’ve ever had before. It will include part specific editing, facial feature adjustments, a custom hairstyle creator, a detailed bio page, and some crisp UI to go along with it. This will be a massive improvement over the previous games, but won’t be everything we have planned.

So yeah, that’s the schedule. We hope to have all this done be February!

image

Here’s a pie chart showing how much each milestone composes the final 0.2.0 chapter of SHL4 development. They’re pretty evenly split, which is good as it means you can expect an update every 1-2 weeks, gone are the days of months of waiting for a release.

Is this a trustworthy timeline estimate?
So to those familiar with my estimates for the previous update, it moved a ton. In the past I used a fairly simple formula that added up the numbers of hours, then divided it by 8 hours of work a day.

Unfortunately, this was a fairly erroneous way of calculating the expected release timeline. My first public estimated release was around October 18th, where I said to expect a release around November 5th. The test actually released on December 2nd, which means my original estimate error was around 200%. This is inconceivably bad.

So, after I finished the last version I reflected upon where it went wrong.

Post-Mortem on my Work Timeline Estimates
So, the inaccuracy boiled down to two areas, underestimating how much work I got done a day, and underestimating how long certain tasks would take.

In the chart above you can see how my estimate changed over time. Obviously as the release grew nearer I got closer to the correct date, however what’s more interesting is that my estimate was pretty consistently 40-50% what it needed to be. So, it appears tasks were taking me twice as long as I expected - why is that?

So, at first I assumed that I had just goofed on estimating the amount of hours needed to finish, but according to my work logs (I use a software called ManicTime to record what I’m doing while I work to gather statistics afterwards) the total amount of work needed was only on average 8% higher than what I predicted. So how could I be estimating the tasks correct, but dramatically underestimate how much work I did a day?

To those wondering - no, it’s not because I was lazy. Each day had a recorded average of around 7.5 hours of logged screen time. When you account for a 30 minute lunch + working 6 days a week, I was consistently hitting around 45 hours in front of my computer, Why didn’t my numbers reflect that?

Well, I was only actually working for 5 out of the 7.5 hours - kind of.

How much work do I get done a day?

image

According to manic time, 2.5 out of the 7.5 hours of my average day were spent doing non-work related things. It is important though to understand how it gathered this number, the program considers every millisecond you in a program. That means if you google something that’s 15 seconds of usage for Google. If you read an email that’s 1 minute of email. If you change to a different playlist on Spotify that’s another 30 seconds. There are also instances where you may be googling a solution to a technical problem - unless I’ve specifically set it to tag a certain site as work it won’t, so that period of actual work won’t be tracked, and instead fall into this category.

And of course, if you get distracted it will reflect that. I remember there was one day where I spent 30 minutes reading up on the French Revolution because a Youtube video mentioned something about it. This wasn’t too common of an occurrence though. I have mentioned I have been diagnosed and medicated for ADD, so getting distracted at some level is to be expected, but it is rarely for 30 minutes at a time - more a minute or two. Apparently though, those minutes add up.

In all honesty, while that ratio is frustrating, and I do hope to improve it - I can work with it. My goal here is not to reach peak efficiency, but to be able to estimate my trajectory on a project. The amount of time lost to these unlogged hours was fairly consistent across weeks, which is good because it means I can plan with it. But there’s one last thing I need to consider when making my predictions - how much of my work time is actually SHL4 work.

image

So, I’m a fully time developer, but I am not a fully time SHL4 developer. I have duties I need to perform related to managing business expenses, interacting with the community, taking on smaller jobs with various people, as well as writing about my work for both my audience and other developers. This does mean though that of the work I do complete, only around 70% of it is directly related to SHL4.

Now here’s the interesting part, if I multiply 70% by 0.6%, I end up with 42% of my screen time being dedicated to SHL4. Why is that interesting? I was underperforming by 40-50% in my predictions. With this new understanding of my work habits I may have cracked the case as to why my predictions were so off before.

Creating a Better Formula
Now that I have a better understanding of my actual work habits I have a major advantage - but why stop just there? Sure, I could multiply my 40-45 hours of work a week by 0.42 and walk away, but I can do better than that.

Introducing, the official CJ work timeline calculator!

The way it works is that I can change the yellow boxes as I like, such as how much extra screentime I put in a day, how much extra breathing room I’d like, as well as whether I work weekends. The excel sheet supplies the blue and blue boxes from other sheets in the project. The gray boxes are then calculated from those variables to determine how much progress I will make each week, as well as how many weeks it will take to complete it, ending with converting that week figure into actual workdays.

Once it has that, it simulates the timeline in the boxes to the left! It determines if I work each day (including checking against a list of days off such as holidays, my birthday, planned vacations, etc), and if so it then reduces a day from the total workdays remaining. I also included a column showing hours worked at each day to allow me to do sub-predictions for milestones.

Conclusion
So yeah! I have completely re-done how I estimate release dates to be much more reliable. Obviously it will is still an estimate, and the numbers recalculate every day so expect estimates to wander a few days - but hopefully we won’t have a situation like last time where it took an entire extra month.

This has already helped me a ton, because originally the 0.2.0 update was too big. I wanted to do so many things it wouldn’t actually be completed until April, and while those things would have helped with polish, I don’t think they were worth pushing the release another 2 months. Thanks to this much more precise estimate I was able to trim less important features until it was within a reasonable distance.

My goal is to release the game for paid access by the summer - at latest maybe June. This is because I’m moving to New York for a bit, and that will be more expensive. Because of that I will want as much extra savings / income as I can get. That means I can’t just drag the project on forever, and I will have to be more proactive to hit deadlines. The last 5 months of just working at my own pace has been fun, but it’s irresponsible. If I had held this mental attitude when I first started, SHL4’s testing could have probably begun 1-2 months earlier. It would lack some of the extra polish, but in all honesty the experience would be mostly the same - especially for users on weaker devices which may have to disable the extra polish for performance.

So, 2 months - fingers crossed I do better this time around!

11 Likes