024 - Feb 3, 2019

Lately I've felt like I've been at peek focus and the progress has been compounding.

Sure, there's still plenty of room for me to get better at prioritizing what I work on and just generally working smarter not harder, but that aside I'm really enjoying feeling more and more on track to turning Akigi into an awesome game.

I feel as if I'm beginning to see the light at the end of the tunnel in terms of being able to release an early version of the game and have people play it while I improve it over time.

Which is strange because if you were to pull up the game right now you wouldn't see much. Just some placeholder graphics that are hard to even make sense of.

Game WIP The current state of the game client.

But behind this embarrassing simplicity is years of iterating on the code and tools that make it easier for me to add gameplay, and they're finally converging to a place where I can see the power.

That isn't to say that I'm not just going to magically have a great game. I still need to do a good job of executing on game design and the feeling of the world and gameplay.

Plus, even today I have more places to enhance, improve and simplify my codebase and tooling than I can reasonably prioritize any time soon.

No, I think that this great feeling is just coming from working on gameplay feeling easier and less painful than times past.

Since Rust makes it so easy to refactor I'm finding that over time my codebase is getting easier to work in and I'm getting faster.

Instead of being slowed down by the technical debt that can accrue as you build your own game engine, I'm empowered to address it when the burden grows to great without worrying about accidentally breaking things.

Terraform

Since my last journal entry I've gotten the terraform config working and am using it in production.

My EC2 instance, subnets, VPCs, Route53 DNS records and a few other resources are all specified in my .tf files and it's a breathe of fresh air.

I was able to delete quite a bit of documentation on setting up servers for the game in favor of configuration files and scripts.

As with everything there's more room to automate my dev-ops and deploy processes over time, but getting my infrastructure into terraform config files was one great step forwards.

Equipment

One of the next big things that I want to add into the game client is a frontend into the equipment system.

I've had the backend in place for a couple of weeks now but haven't spent as much time on the frontend as I need to.

I've started using Figma to design the front-end interface.

The code for rendering interactive interfaces in my engine is still a bit young so the next few interfaces are going to take a little longer than they should going forwards.

Even so, I'm still excited to make these enhancements and start making some progress on the interface front.

Game Figma Using Figma to design the game interface and figure out how to lay things out.

Financials

Our financials for January 2019 were:

Item Cost / Earning
Revenue +$0
AWS -$30.55
Photoshop -$10.65
New Laptop -$4990.83
--- ---
Total -$5032.83

The big expense from January was purchasing a new laptop. I bought one because:

  1. My old one didn't have enough disk space so I was frequently deleting things to make space. Mainly my target directories across a few of my Rust projects. (I didn't want to deal with an external hard drive.)

  2. I wanted compiling Rust / my IDE experience to be faster.

Both problems are now solved. The speed is great for maintaining focus and just generally feeling less bogged down while I work.

A big expense though.. I'll need to come back to this when filing my taxes....

Next Week

A few months ago I re-factored the networking protocol for the game and that led to needing pretty much the entire codebase to change since it was previously coupled to protocol buffers (which I no longer use).

At the time I fixed almost everything, but there's still a little bit of code that I haven't fixed from that refactor.

One being the code for conversations and the integration test for the first quest in the game.

So for next week I'm going to have that quest working and add as many graphics as I can to the game in support of that quest.

If all things go smoothly you should see some graphical enhancements to the game client throughout the week and especially by next week.

I'll also continue to work on the design for the equipment frontend so that I can focus in on building that next week.

In general I'm turning a lot of attention towards the game client. My goal is to release a playable version of the game on March 10th and then start iterating in public.


See ya next time!

- CFN