3,355 Commits over 972 Days - 0.14cph!
Map editor fix for checkign existing filenames when creating new ones
remade DM3
remade DM2 map with new map DB settings
AI now prefers to advance units furthest at the back when default moving
Squad.GenerateRandom() now takes a board parameter and uses the spawn locations from it to randomise the unit positions as well now.
AI squads now use random positioning too.
Grabber anim setup so it plays shoot anim properly
Disabled shadow casters on grabber line renderers
Command queue now stores outgoing client input history
added initial Replay.proto definition
Added BuffString() which returns Min-Max buff range as a formatted string and can be referenced from descriptions with %b.
Updated healer attack description.
scene change for last commit
hotkey do toggle UI (fps test
Added vsync and shadow opions to video section
Attacks now have a BuffMin/BuffMax which can be used for positive attack effect ranges.
Healer now does 1-2 unblockable damage to enemies or 5health to a friendly.
Reworked healer again to be a single target, higher range, 5 health heal.
Healers limited to 1 per squad.
Rebuilt default squads to only have 1 healer.
Biter health 6->10, attack 6->3
Added UnitCategory to UnitDefinitionSO, categorised units.
Hacky fix for selected units blowing themselves up leaving them selected (need to move SetNextState stuff from command to commandblock soon instead)
Fix for burner self targetting sometimes (?)
AI move-attack now correctly checks if units can move
Burner damage range is now 3-4 up from 2-4
Launcher attack no longer LOS checks units
reworked local games to use Invoke for turn timer instead of system timer, to fix local games breaking on timeout (threading issue)
Don't send tile hover mouse events to the server when playing the AI
Can now play more than one AI game in a row without it breaking.
Fixed multiplayer mode not working properly.
Version++
AI now prefers to hit multiple units or kills, not so keen on injuring or killing it's own dudes
AI best dmg scoring stuff (wip)
reworking some combat code stuff
some quick AI optim, wip AI damage stuff
Deleted the commented out, old hit % code, as it's now always 100%
Unit range/damage finding functions can now specify if they should include friendly damage or not, to be used by AI
AI now creates a random squad each match (currently copies the spawn positions from the player's squad though)
Random squad generation wip
UnitDmgInfo now calculates the potential minimum health of an attack, taking into account max damage and armour
AI.GetOrderedDmg() is now sorted by potential minimum health instead of potential damage, so the AI prefers to target enemies they can get nearer to death than just a big hit
each GameInstance now has it's own System.Random instance and stores the seed.
added RandomRange(min, max) to GameInstance, to be used for deterministic shit. Increments a counter each time it's called, so we can debug/test
attacks that use a damage range now use the GI function not unity's
Added TileFall match action back to Deathmatch definition
Fixed TileFall to use the new tag change system. Works again now.
Added AIEnabled flag to LocalGame.cs on LocalGame object, untick it to make the AI auto pass it's turn @ezmeow
added Available flag to MatchDefinitionSO
GameHost will now only pick from available match types
directional armour is now calculated and saved in UnitDmgInfo
AI will now prefer attacking and moving to attack locations that let them attack units from weaker sides (sides/back) where possible
renamed Practice button to Play A.I and make it not editor-only
Added MovementDirectionScorer which scores tiles favourably the further up/down the board they are from the unit, based on the advance/retreat flag
TileScorer can now collate individual tile scorers to get a combined list of tile values
AI now prefers higher terrain when moving as default action
AI helper function to get a list of ordered unit damages for a provided list of attackers
UnitDmg now includes a ref to the attacking unit so it doesn't need to be tracked separetly in AI calcs.
Renamed UnitDmg to UnitDmgInfo