053 - More Client Side Refactoring
February 9, 2020
For the last two weeks I was in Nigeria on vacation - I got back to Manhattan on Friday around 6pm.
I haven't gotten a lot done over the last two weeks - but I'm back in gear and it should be full steam ahead again.
I'm still working on moving the client side of the game into specs
and refactoring / TDDing as I go. I expect it this to take 2-3 more weeks before I'm done and ready to get back to working on gameplay.
Even though 2-3 weeks feels realistic - in my head I'm targeting one week. If I can hit that I'll be thrilled.
It will come down to how many focused hours of progress I can make per day. I'm anticipating ending this large refactor with a lot of learning around how to stay at peak productivity for longer amounts of time during a large refactoring - although hopefully there aren't too many more of these in my future as I progressively eliminate the old, untested parts of the codebase.
Input Event Processor System
So far I've made a lot of progress on the InputEventProcessorSystem
.
This system reads raw input (from an Arc<Mutex<Vec<InputEvent>>>
that the client populates) and translates them into NormalizedEvent
s.
So if the client pushes an InputEvent::TouchMove(..)
the InputEventProcessorSystem
might translate that into a NormalizedEvent
that moves the camera or that zooms the camera, depending
on other state in our World such as how many fingers are currently touching the screen.
In this way all of our different target platform clients will only need to feed in raw events and they'll be handled accordingly by the core game-app
crate where our entity component system lives.
Financials
Our financials for January 2020 were:
item | cost / earning |
---|---|
revenue | + $4.99 |
aws | - $113.44 |
adobe substance | - $19.90 |
GitHub LFS data pack | - $5.00 |
photoshop | - $10.65 |
ngrok | - $10.00 |
chinedun@akigi.com Google email | - $12.00 |
--- | --- |
total | - $166.00 |
I still need to cancel ngrok, the Google email account and maybe photoshop since I haven't used that for months.
Next Week
I'm fully focused on finishing the refactoring of the web-client
and game-app
crates and adding tests as I go.
That's all I'll be working on this week. I can't see the light at the end of the tunnel yet but I can already feel how much easier it is going to be to add new gameplay after this is all done.
Cya next time!
- CFN