Game dev brainstorming - Nexus wars style project

Godot Version

4.2

Question

Hey Godot folks!

I’m working on a strategy 2D game and wanted to put some thoughts out into the world. The game is kinda like a tower defence game or Nexus wars (SC2) where you and an opponent have a castle, construct buildings that produce units every X turns that walk down a lane towards the enemy without player input. Eventually one side wins through superior strategy and unit comp. Unit stat lines are different depending on the building, like a knight having more hp than speed, or cavalry having higher speed than hp, or an archer attacking at range instead of melee like both units mentioned above.

I made a prototype with playing cards and had some fun but one major issue I found was that even with random card draws for deciding what buildings/units were coming out, the game was consistently a stalemate from start to finish.

After I finished the test match I took a bunch of notes to try and figure out a solution but I wanted to try brainstorming with some folks on the forum. Some ideas I have are:

  1. introduce effect cards that would change the sway of battle. Things like spawn extra units, destroy X enemies, buff units.
  2. During my play you spawn as many units as you have buildings. You play 1 card and build a building each turn but maybe the more buildings you have of that type, requires more of the card(resource) to make.
  3. I’m kinda thinking in game that the castle will produce units and depending on which buildings you invest in, you’ll influence what units it produces. Like having a barracks and stable built would produce cavalry, where as having an archery range and stable would produce mounted archers instead.

Anyways thanks for Reading, once I have something worth sharing I’ll be sure to post it on here.

Cheers :slight_smile:

Hey golks,

I wanted to share how I currently have my unit spawning setup and see if there’s are different methods or approaches I should try or know about before going forward.

Currently I have a building class node that spawns a unit class. Units will be a resource but for testing it’s just a scene with stat variables. I have an upgrade system that increases a variable on the building that’s then added to the unit when it’s instantiated.

Code looks like:

Unit.attack_stat = unit.attack_stat + building.attack_upgrade_stat

Is it okay to continue using building upgrade stats and adding that variable to the units or should I try and seperates it into a separate object or node?