Sequel to Squirrel Launcher?? - Strategy Game Devlog #1


This devlog will be on Squirrel Launcher's page until I get along to creating the next game's page.

Nothing in this devlog is final. This is very early. I wrote this document weeks ago, so my opinions on things may have changed.

-----

With Squirrel Launcher about to launch on Steam in 5 days (at least at the time I’m writing this) and me just waiting until then. I’ve decided to start thinking about my next game idea. I have had this idea for years and I mean years. I’ve wanted to make some sort of game involving tanks since I made the original Squirrel Launcher on Scratch in 2016. In fact, it is supposed to be kind of a sequel to Squirrel Launcher set in the same universe. There has also been a version of the tank game on my Scratch account since 2016. I have developed Squirrel Launcher with this sequel idea in mind and have introduced characters that will be returning in this game.

Alright so here’s the game:

 

Strategy Game

 

What it isn’t

I’ve thought of making the game real time (like in RTS) having you manage resources and build units and so on. I’ve thought of making the game an action game where you listen to Commander Chubby’s direct orders and carry them out. I’ve even had the game set in an open world. All those ideas sucked and failed so I’m going to go with a turn-based strategy game.

Strategy games are my second favorite genre of game, so it should be easier to come up with ideas.

 

What it is

The game will be based on a grid for ease of design. I can use tile maps again like in Procedural Dungeons. This time, I will make the tiles look much better though. At the start of every level, you get a number of units at your disposal, but you probably won’t be able to create new units mid-battle. There will also be an objective that you need to complete.

Examples:

  • Destroy enemy forces
  • Capture and hold enemy bases
  • Hold allied bases
  • Destroy a specific enemy

 

I will be working on more specific gameplay explanations in the future.

 

Required Planning

This game is going to require a massive amount of planning. I can’t design levels until I have a good idea of what’s going to be in this game.

I have failed making the tank game like 4 times, but I didn’t plan very well for those. And I always thought I could do better (because I was still learning). And I redesigned everything like eight times. So, I am going to be doing a lot of work in advance this time before I even make the project in Unity. Plus, I have an additional 3 years of experience that I didn’t have when I gave up the previous project.

 

This game is probably going to take longer than Squirrel Launcher to design. I built most of the internal functionality of Squirrel Launcher within the first 2 weeks of the project.

 

Level Editor

The level editor may or may not be available to the public. I am going to make all the levels in-game. This will make it easier to develop my own tools to make level design faster.

Levels will utilize the XML document type and will probably not be built inside the game. This would make them visible XML files but I don’t really want to have to rebuild the game every time I make a change to a level. Dialogue within levels will be stored these XML files. Cutscenes won’t because they are very integrated in the engine.

 

Version Control

I will be using version control from the beginning or at least very early development to prevent me from needing to manually revert changes when something inevitably goes wrong. I’m going to use Plastic. Plus, it’s kind of interesting to see all the changes you make to a game over time.

 

Systems Planning

Here are some of the systems I need to implement

  • Save file system
    • Redesign
    • One file contains the information of each save file (XML)
    • Will probably do the standard of three different files to choose from
  • Dialogue System
    • Complete carry over from Squirrel Launcher
    • Will support integration with level editing and XML documents
      • Keep everything in one file
    • I promise to not put all dialogue in one tutorials folder even though most of it was tutorials
  • Level engine
    • Loads levels from XML files
    • Plays the levels and all their associated level logic
    • Doesn’t control enemy behavior
    • Separate from Game Control (I promise I won’t just put everything in game control)
  • Game Control
    • Manages entering / exiting battles, getting rewards from them
    • Not UI
  • In-Battle Interface Controller
    • Controls display of all information from the level engine
    • Allows control from the player
    • DO NOT JUST PUT EVERYTHING IN LEVEL ENGINE OR GAMECONTROL
    • (as you can tell, Squirrel Launcher got some code spaghetti)
  • Level designer
    • Allows rapid iteration on levels.
    • Add
      • Enemies
      • Music
      • Dialogue
      • Terrain
      • Level logic (completion requirements and such)
    • Allows playback skipping any part of a level
  • Enemy engine
    • Controls strategic choices from AI
    • Will require a lot of work
  • Unit Control
    • Like AI core in Procedural Dungeons
    • Controls aspects like statistics and capabilities of each unit
  • Master Control and Master Object
    • Carry over from Squirrel Launcher
    • Manages scene changes, settings, platform integration, etc.
  • Unit Customizer
    • basically, the nest in Squirrel Launcher

 

I will go into more detail on many of these later. I’m sure this isn’t a complete list, and I got some things wrong.

 

Multithreading

If I can figure it out (which I probably will), I will be implementing multithreading or at least async tasks from the beginning on things like the enemy engine. Otherwise, the game will freeze up every time the AI has to make a decision.

 

 

Development Stages for version 0.1

Estimated time for completion – 1 - 3 months

 

This will be a very important part of development. It is the foundation of the game and any mistakes I make in design now I’ll have to fix later or have an inferior game.

 

  1. Initial Planning
  2. Project beginning
    1. Creating the Unity Project and organizing old systems into something usable for development
  3. Creating the battle scene
    1. Creating basic versions of
      • i.      Level engine
      • ii.      Game Control
      • iii.      In-Battle Interface Controller
    2. Adding a base unit for testing
      • i.      Unit control
  4. Creating the level designer
    1. Creating the XML document and all its associated features
    2. Organizing how these files are loaded and organized
    3. Adding the ability to place terrain and units
    4. Making a test level

Get Squirrel Launcher

Leave a comment

Log in with itch.io to leave a comment.