05/09/2021 Sunday (Happy Mother's Day!)
Thought I missed the deadline for this week's release, but I have another week! This is awesome and helps me knock out a few more bug fixes, including chapter 3. I was able to play through Chapter 3 twice. It is the most challenging level yet. Developed some new tools to make grouping asteroids and including them in waves a lot easier.
Looking forward to next weekend! Thanks.
I got a little overzealous with this release, and I thought I could tackle chapter 3 and some other tickets (13). Well, thirteen turned to like twenty-four. So had to double back and take care of additional issues before moving to chapter 3. I just wanted to keep working on the game and moving the ball forward.
I hope people find the game fun. I get a lot of joy working on it, learning, and putting genuine passion into something I've always wanted to do.
There are some caching issues with some JSON files. So players may need to clear their cache before playing. For keyboard players, you should be able to hold down the space bar for continuous fire.
I broke some stuff. I tweaked some things and that broke a bunch of other stuff. So need to circle back and take care of that. I made some improvements that I wanted to share, but I think it was a mistake to try and do bugs and chapter 3 at the same time. That was just biting off more than I chew. So I'll try and finish the sprint early this week and get my bug fixes and other improvements out before hitting chapter 3.
Chapter Two! Finally! I feel pretty good getting to this point where I can introduce new content into the game and not just hunt down bugs. A couple of times, this felt like "work," and I hated that feeling. I do this to be creative, to share a passion of mine, to do something I always wanted to do. So to have that feel like work, contaminates something I want to keep pure.
One of the best parts of programming, for me, is when pieces of code become like their own entity. Like a ship, an asteroid, or anything else and it becomes kind of self-contained in that space. Then it can interact with other objects and do something else. When they are all nested together and working. It's pretty cool. Like I created a little world, and they exist, however trivially, inside it.
I can't believe the first quarter is almost done. I hope to add more levels soon and finish the game. So I can maybe switch to a story I want to write, Dungeons and Dragons with my younger son, or start fleshing out part 2 of Project Valkyrie. Might do the novel; I miss writing pretty bad. The times I got to work on the chapter intros and other writing for Project Valkyrie kind of tickled the muse.
This sprint, a two to a four-week time period where I cherry-pick what I want to work on, included experimental design and code for touch screens. It doesn't work well because Project Valkyrie doesn't scale to different resolutions, be it on the PC or other devices. Also added thumbstick support so players can use that instead of the D-pad. D-pad and keyboard are what I grew up with, but I think the sensitivity of the thumbstick adds to the game.
Had some annoying problems with Project Valkyrie's introduction scene. It was causing errors from time to time, probably not done loading the music. Another host of issues was displaying the credits scene and going between the main menu and that. After two years, I've learned better ways to do things, which sometimes causes conflicts with what's already there. Sometimes I just want to hunt down the old code and improve it, but if it works, why fix it? I try and stay focused on making the foundation concrete.
The rest of the improvements just solved some stability problems after restarting. Handling restarting has been the single most extensive pain in the ass so far. The intro problem was a pretty close second.
My wife and older son ask what kind of traffic is my game getting. I haven't looked yet. Haven't had the time or desire to look. I know it's a basic game, and it hasn't changed much since I launched it with a lot of problems, and only a handful of people know about my company yet alone my game. But I wouldn't change what I did. I'm glad I released it and planted a flag. I've always wanted to develop games, and I look forward to doing more and expanding my company. It is one of the most pervasive dreams/goals I've kept since I was a kid. It is so easy to get off track with life and wind up someplace else.
A good friend of mine asked me over the weekend, "So you made a game?" I've been getting that question quiet a bit lately. I find it kind of funny, I've spent the last two years making a game. I didn't really broadcast it to all my friends and stuff until I released it. I wasn't being overly secretive or anything like that. I just wanted to keep the end goal in mind and not get side tracked by thinking I accomplished something, when I didn't. Guilty of having those kind of fantasy accomplishments. I wanted to hit life and make a dent. However small.
Version 0.6.4 shows some love to the right handed keyboard players out there and added supply pods, which help refuel the Valkyrie faster than trying to circle the Earth trying to find the station. Restarting the game still has a couple of issues, but it's not as terrible as it was. From now until March going to focus on adding some mobile controls. Probably going to involve some learning, so might take four weeks instead of two.
Kind of felt like work this week. Took like nine hours to debug the restart functions. Between things being duplicated, not triggering, and a host of other issues. It took some time to go through test and replicate things. Each test lead to other tests, which lead to other ideas to test. Think I got most of the problematic ones. Been wanting to expand the game, but also want to secure the foundation a bit more.
Still doesn't feel like work. I wake up eager to get started in the morning, and time flies by. Sometimes work can feel like that too, but it is not as consistent as Project Valkyrie. I think the incremental approach isn't wrong, especially for a one-man shop. Yes, it would have been nice to have a complete game out, but I felt a severe need to get it out the door. After a pretty hard year, 2020, it was nice to have something positive to focus on and attack. It was an excellent way to start '21 also. I think we all need something positive to focus on and work toward.
Just released, 0.6.2, it took a long time to recalibrate resource requirements and write the technology descriptions for each level. Hopefully, it still makes sense in a science fiction Universe. I had a problem with research time; I wanted to make it hours, but that didn't coincide with actually playing the game. Obviously, a 1:1 time ratio would be impossible. So that's going to remain unanswered for now. Hours sounds right.
Going to review the game for the next sprint and tighten up some dialog and work on the next couple of levels. Would like to get some server-side PHP going and get EQP's SSL certificate back to help save the player's progress and settings.
Lessons learned. I announced my game a little early on Discord and Facebook and some people reported problems with the game. Should have done more testing before launching things. I changed a couple of things with the game. The splash screens and main menu are now part of the game code, so everything is one place. Also added a new game state that just waits until the main game scene has been loaded and started. Sorry got a little too eager.
"A good plan violently executed now is better than a perfect plan executed next week."
George S. Patton
I don't even think I had a good plan, but it was certainly violently executed. After two years of development, I had one goal to release something by 12/31/20! I pushed just about everything out of the way to hit the goal two weeks before New Year's Eve. I was off work, but it still felt like I wasn't. The scope of the release kept getting smaller and smaller. It was released on 1/2/2021 with some sorry looking HTML, a few serious bugs, and no documentation. I just told close family and friends about it just to see if they can get it working.
This week has been mostly getting my vagrant environment working, developing some basic web pages, taking care of some bugs, and working with grunt.js to make life easier.
This is my first game in a very long time. Hell this might be my first complete game! I used to make very basic games on my Commoodore Vic-20 and 64 with BASIC and Garry Kitchen's Game Maker. I later moved on to Turbo C++ on the PC, but a lot of the things were still very basic. I tried Direct X with Visual Basic, but nothing clicked. Then took another long break. Got married, family, working full-time, part-time business. Really narrow bandwidth, but the desire to make games still remained. I tried a couple of game engines like pyGame and Phaser. I did a couple of Zenva tutorials and I fell in love with Phaser. I just started playing with a little keyboard controlled ship demo. Then made my own with the Valkyrie ship object moving around in the same way. The ideas started flowing and eventually cobbled this game that you're about to play or hopefully play again.
I used to love Asteroids and had a bit of love/hate relationship with Sinistar. It freaked me out when that flying base roared and came out on the screen and I wasn't ready. Instead of just blowing up asteroids I wanted to develop a story, add some tower defense elements to it, and really push myself.
Thanks for your time