LittleGiant Thread - Smxham - Armory Game Comp May

Hello everyone,

This is the thread for my submission to the game competition outlined here: [Armory Digest] - May 2020

My concept: RTS, hex tile. Set in space, you are a planet. The goal is to grow mass. Mass is grown by gaining influence of tiles. Visual size gets greater with mass. The win condition is to become a black hole, and thus become a little giant.
To gain influence of a tile, it will require you to spend x amount of mass, but with the tile under your influence, it will contribute to your mass x per minute.
To add stakes to the game, you will be facing an NPC who is also trying to become a black hole; if you are fighting for the same tile it will be your mass vs theirs.
Game to be fast-paced with the game lasting no more than 5 minutes.

This game is open for you to look at and use.
To see the progress and try it out my github is here:
Note: All audio and textures at this point are gitignore.



Day 1 Update.
Total Commits to Github = 12
Framework: transitioning states from Initialise - Main Menu - Generating the map - playing the game
Initialises with a dictionary, sets world irradiance
Main Menu: Basic UI, play game and difficulty setting.
Map Generator: Inputs time and # of ticks to process. Generates grid with a given radius. In the first half of process time spawns hex’s second half (not done) will spawn objects populating hexs. It spaces the spawning evenly, so regardless of how many hex’s it needs to load it will take the same amount of time.
The main Game: Basic camera controller (Arrows to move, scroll wheel to zoom).

To do for tomorrow: Hex picking - colour changing. Spawn objects in hex.

Grid generating with radius 10:


Day 2 Update
Total Commits = 18
Difficulty now directly effects generated map radius
A visual representation for what hex the mouse is currently over
Tile ‘types’ added. Sequence is Dust > Gas Cloud> Rock > Asteroid > Small Planet > Large Planet > Red Dwarf > Super Giant > Neutron > Black Hole. Player starts as a Gas Cloud.
Visual representation for types added (Currently very ugly but functional)
Type objects added during map generation phase.
UI elements added for showing value of tile hovered over and its neighbours.
At the end of generation phase, all tiles neighbours are calculated and stored within that hex’s data set. This will save calculations during runtime. This will allow for a later algorithm to draw paths across hex map.
Object data now stored with the main data set and not separate. (hexTilesObjects now within hexTilesData, hexTilesObjects will be made obsolete in a later update.)

To do for tomorrow: I got to work on other things but will hopefully have the time to finish hex value display when mouse over - with screen positions updating with camera movement. Make players home tile visually represented (maybe a gold hex). Start with click interactions (Click and drag from one tile to next to direct mass flow).

For this gif I greatly exagerated generated mass over distance to show types. For the end product I imagine every tile on the game more or less starting as a gas cloud.


Day 3 update
Total Commits = 24
I have never made a game with hex grids before and I am having so much fun doing this! I’ve been procrastinating my real at-home quarantine work as a result. But here is todays progress.

Home tile now random, doesn’t have to be center tile. Camera at start zooms to this tile.
Home tile now represented as gold
Overall hex lines made thinner
UI now displays mass of the hex mouse is currently over and all neighbouring hexs. Including edges and corners only displaying applicable values.
UI changes position with camera for hex mass value.
Left mouse button nows initiates a mass direct command, while holding left mouse if you drag to neighbouring hex an arrow will display visualising flow. Releasing applies this.

Next up: (Unlikely to work on this tomorrow) Finish click-drag. Have the action actually have implications.
Create conditions for directing mass flow. Tiles flowing into home tile getting a color representation.

Gif shows a smaller grid generating and todays changes.


Day 7
Total commits = 30
Mass now updates. Amount determined by difficulty.
Hex’s can now only output to one other hex, but can have multiple inputs.
Can no longer do bi-directional transfer between 2 hexs.
Can no longer output from home tile.
Boundries on camera movement.
Hexs directly contributing to home hex now highlighted in blue. This is WIP, still working on disabling the blue hexs when disconnected from the home tile.

To do for tomorrow: Finish the hex highlighting, rework the code - it is very messy, unreadable and spread out atm.
Visual change when mass meets the threshold.