Skip to main content

Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines
(1 edit)

thanks man I tried to make the control as close to other RTS to make them as intuitive as possible, though the concept was a bit to ambitious for a week, while I got all the main featured I had no time left to polish and a lot of art were missing resulting in having only one critter being modulated to get the other, in the end I worked on the game to the last minute and even the day after the deadline to crush the bugs I added at crunch time (where I added different species, all the traps the ennemy and ressource spawning and the health and happiness bar)

overly most of the issues I had was from the art side of things, unlike my previous project I wasn't doing any of the arts,
having all my art made by friends over discord which made communication hard on small details and added a lot of delay before I could work on the game, in the end I only worked on the game during the last 5 days of the jam, most of the code before that didn't make the cut as the control system got more direct (at the start the idea was that you would control critters by dropping foods) and the whole priority system was rewrote 3 times (though it was mostly because of a lack of experience being my third game and having pickup real programming 2-3 months ago)

I would think that RTS isn't that hard to make in godot,
in the end I had a script for the mouse that kept track of all units and drops in arrays and
on the left click if it wasn't holding a drop it would start  drawing a selection (which was just 2 vector2 ) and on the left click release if the selection start and end are close the mouse will pickup or select 1 unit which is overlapping and if they are far away, it will run a for loop for the position of all units

on the right click all runs on the just_pressed, where if no item were grabbed, it will check what is mouse overred,
if it is the core it will check if the core has lost life and you don't have all your units selected
if it is a critter it will check if both can bread (using a dictionnary specific to each species)
if it is an enemy it will just append it to the array orders which is on all critter
else, it will create a small flag which has an array which is a copy of all selected units

on the flag there is a function which is called when a unit gets to the flag or cancel it order to get there, and when its array is empty : queue_free()

in the end the most annoying part is the pathfinding which is kinda limited, has I could have the critter avoid one an other requiring the removal of collision between critters and the addition of a script so that if critters overlap something they pick a random spot around them to move to, this way units don't stack on one an other (which was an issues when multiple units walked toward a flag from the same direction)


though trying out making an RTS made me realize how simple it is to make a game with a rimworld/OxygenNotIncluded priority system where you place orders an units fulfill, so you place order instead of manually selecting units and directly telling them what to do
( about a few days before the deadline critter would breed automatically deciding between eating and breeding depending on their hunger, this was dropped out since it reduced the interaction the players as with the breeding mechanic has a whole) 

Wow, thanks for sharing the details! You clearly know what you do, it seems your main problem was overscoping, and it's a classic one for game jams ;) I hope to see what you'll do next time!

well now that I know how to make an RTS I could get to what I was during the last in only a day (since all I did before that was the whole order system)