Hello GameDev
In this blog I'll be covering
- development life-cycle thus far
- provide an update on dynamic structures
- introduce scripted events.
Development life-cycle
I think the time has come at last. What time is that exactly? Well let me explain...
A couple months back I was thumbing through my blog series and I was startled. I noticed that it appeared as though I have been repeating myself for the better part of 4 years, coming up on 5 now. I wondered if maybe I was stuck in some sort of mental recursive loop or something, forever redoing, rebuilding, remaking.
Quickly though I realised I was reading the situation incorrectly. Even though it may seem I've been talking about the same stuff for this long I've come to realise there have been 3 distinct phases this project has gone through and they are:
Experimentation
At the very beginning when I first started using THREE.js and node.js I played around with them and worked out a rough idea of how to get certain things to work a certain way. I made different colored boxes to represent different players. Each client could move one box and node.js would coordinate the movement. I had also written my first dynamic-wall functions. I remember they were atrociously slow and the boxes could not move around them. I learned what ideas were worth perusing and which needed to be scraped.
Integration
Eventually a time came when I felt comfortable enough with my abilities in javascript that I decided I needed start combining many of the different features I had made. I had boxes that could move around, walls that could be built and eventually I wrote my first function to merge the two, getting the boxes to move around walls that is. That too was extremely slow. Integrating these separate elements gave me a greater appreciation for logic that can be utilised across different applications, if that makes any sense .
Stability
Then in 2016 I decided it was time to kick things up a notch. I didn't know it at the time, but my first attempt at creating a robust function was probably the best thing to happen for this project. At the time I just wanted to finally make a function that wasn't going to break on me. I remember spending weeks tackling all the errors wondering does it ever end? But after I had that function executing like clock work it dawned on me just how important stable functions are. Especially if I want a framework for a game that is to be dependable. So there you have it Stable Integrated Code.
Now of course there has always been a gradual transition from one phase to the next. And even today I find myself experimenting, after all experimenting can breath fresh life into a project.
Dynamic Structures
I'm incredibly proud to show off my first polished video showing the latest and greatest dynamic structure tool. In the video, if you're interested, I build a structure from scratch so you can see how user friendly I tried to make it
Scripted Events
I would also like to share with you a video that showcases the my first attempt at a scripted event. Now the video is the one I currently use on my project page updated earlier this month. If you haven't checked it out please do so. You can skip the first 25 seconds or so..
It's an idea I came up with a few months back for promoting the project. I've been getting to thinking that since these simulin live in a simulated world that I really want to play on that idea. So this is just one example of a scripted event. But there is no reason why the player can't also be informed the simulated nature of the world. For instance, the world is much to small come game time for there to be tons for wildlife roaming around, But I could have intermittent scripted events where wildlife materialise and stampede across a plain only to de-materialise once again. And I have many more ideas for scripted events.
Conclusion
I feel confident enough now and think it's time to move one full foot to game development. I've talked about transitioning in the past but I think enough is enough with the framework. I will still work on it until it has fully incorporated all the features I want. But lately I've been getting more and more excited to just get on with the game.
Parting thought, If I didn't have somebody somewhere to share all this with I would never would have come this far. Thank you all for being a supportive and curious bunch!
I really enjoy seeing the progression on this. Good work!