Developer Blog

10/24/2021 Behavior Tree Improvements

I posted a couple of screenshots to our Facebook group. Basically a trail of steering triangles, joked I was going to make some fractal designs using them. Using the triangles as a steering behavior, based on the idea from Open Steer project, to avoid targets. It needs some work for sure, but it works.

Playing with Behavior Trees over the past few months has been a lot of fun. I always struggled a lot with AI and to make a dent is pretty cool. I want to get another level out for the three year anniversary of coding Project Valkyrie on November 10th, 2021, but we'll see.

10/03/2021 Almost Got It!

I kept things pretty light during this sprint and didn't take on too many cards outside of behavior trees. I wanted to focus all my time on it, and I made pretty good progress. The scout does a decently good job hunting the Valkyrie and can even avoid crashing into it. I'm still a newbie at behavior trees, but already it's changed how I approach AI. I was trying to boil things down to one action/function, and I could have done better. I needed some things to be run/referenced together and then make a decision.

Would love to DevLog or whatever on them. I loved the reference from GAME AI PRO. I wanted something in JSON that I could build on and play with. I know there's probably a lot of already made libraries out there I could have used. Still, I enjoy learning new things, and AI has always interested me.

As always, thanks for reading and playing my game.

09/10/2021 Playing with Behavior Trees

I could have sworn I had some content after 7/25/21. Anyway, I was on vacation for about half of August, so I kind of got off schedule. Been having some fun with Behavior Trees, I read pretty good starter kit, drew out some ideas, and some old fashioned flowcharts. I kind of followed the same idea I used for end of level conditions and using JSON to manage things and the trees. I'm still very new to it and I don't want to gut all the code that I already have. So trying to add something basic for now and get it stable for the next release.

07/31/2021 The Wall.

I've been there a couple of times in my life and I wish I could say I took the right action and busted through or went around, but I haven't. I wanted to stay a couple of steps removed here and not get all personal, but sometimes it is necessary.

There's other aspects of this project that need development, soft skills, that I'm pretty bad at. So I need to practice other skills and not just game development or having some simple post on Facebook about the next chapter. Need to share my excitement and passion for the game. Off to play some outdoor racquetball, which I haven't played in a long time. It's a nice day and I hope to get a court. Later.

07/09/2021 PayPal Added

It's my dream to do this full-time, and I can't do that without making some money. I wanted to release Project Valkyrie early this year because I wanted to give my maximum effort to something. Maximum effort is finite without a steady stream of fuel (money) coming in. There is a balancing act between business and passion, and I can't follow one without the other. Check out the main page if you want to support the project.

07/05/2021 Chapter 4 Out!

During my final testing I had some serious trouble completing chapter 3. It's a tough level and doesn't forgive mistakes. Chapter 4 has a surprise and I may need to work the dialog a bit to change things. I'm not sure. It's been a crazy few days trying to get things done and celebrating Independence Day. Still some issues with saving and loading the game after hitting continue. Also supply boxes (hint hint) don't respawn after continuing either.

I renewed EQP's SSL certificate, so we're more secure and opens up new improvements for the project. Thanks for you support and for playing.

06/27/2021 Chapter 4: Needs a Level

All the coding changes in this sprint are done, maybe some final testing. I had to add some new code for handling end-level conditions since they are becoming more complex. So this new way of handling levels had to be retroactive and affected all the other chapters. It is cleaner, much more flexible, and should work for the rest of the game development.

Sorry for not releasing today, but these new developments for the game were important and kind of occurred mid-sprint. It's been working that way. One sprint for development and one for Story. Both at the same time never works out. Targeting a week for chapter 4!

06/06/2021 Chapter 4 New Coding Challenges

One of the problems and rewards of programming is that we get better. We learn more tools, methods and get better ideas on how to do things. That's also a curse since old code doesn't age well. I think that's happening now with Project Valkyrie. I started work on some concepts a while ago, but now as they are coming up, they aren't working as I want them to. So my original estimates on Chapter 4 shipping are probably going to be off. Still will work on whatever improvements I can to make the game better and learn more about artificial intelligence. Another reward of programming is there's always something new to learn.

05/16/2021 Reflections On Chapter 3

Developing Chapter 3, the Asteroid Boss Level, was a cool experience. Because I was able to focus mostly on developing the level within the game and not an excessive amount of coding other things. It's not easy waking up at 5 AM and putting in about one or two hours of work every day. I know there might only be a few people playing the game...if any. Still my goal is learn and enjoy the process. To finally put a 100% effort into something that I enjoy and put it out there.

I think being able to combine programming and writing into a game has been awesome. I think it something I can enjoy doing for life. Thanks for taking the time to read and for playing my game.

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.

04/24/2021 Saturday

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.

04/18/2021 Sunday

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.

03/31/2021 Wednesday

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.

03/01/2021 Monday

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.

02/15/2021 Monday

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.

02/07/2021 Sunday

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.

01/29/2021 Friday

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.

01/18/2021 Monday

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.

01/10/2021 Sunday

"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
Joe Delgado