So today was a bit of a waste. It was a hectic day filled with fun activities. The only bit I’ve actually managed to do was to start on some possible art to use in the game and by that I mean I downloaded and installed Gimp.
The day was not a complete waste as I’ve been toying with the idea of how to move my game state into a central domain within the Unity scripting system. I’ve had the opportunity to work with some very strong developers that have the know how of how to apply Domain Driven Design. They’ll likely tell you they don’t know enough yet, but what I’ve seen was enough to inspire me to learn more and try to apply it myself.
I use the word try as I don’t know all the things and I need to put in the hours to get to grips with the concepts. Knowing how we approach enterprise software I’ve found myself really struggling to get into a position where I can divorce a lot of my game state and logic from the scripts you’d attach to your game objects. My biggest gripe with putting state in these script objects is that you end up exposing a lot of inner workings and even sometimes end up being exposed as well as having a whole spaghetti mess of scripts with dependencies on each other.
The problem of divorcing game state and logic and moving it away from these scripts are that a lot of the time I end up having to require the use of certain Unity object types. It’s not going to be easy, but through some clever composition and interfaces I might just be able to pull it off.
Knowing all this I might still not be able to get to it as it’s way more important to get the game into a playable state right now. A month is not a lot of time so I’ll have to hustle to get things done. I’ll admit writing about my plans and what I’ve actually done is very tiring, but it’s what is motivating me right now so I’ll keep on doing it for the duration of this month. That’s it for today!