#"Notes: You have to advance a frame for eco counts to be updated." #"Values assume no ERNs" #"Soylent value assumes flat terrain, and 100% efficiency." GetMapSize ->sizeZ ->sizeX 0 ->tiles 0 ->void 0 ->resource 0 ->crystalsMin 0 ->blueMin 0 ->redMin Createtable ->table 0 ->table{1} <-sizeZ 0 do <-sizeX 0 do GetTerrain(i j) ->terrainHeight if (<-terrainHeight gt0) <-tiles 1 add ->tiles GetTerrainSpecial(i j) ->specialTerrainSlot <-table{<-specialTerrainSlot} 1 add ->table{<-specialTerrainSlot} else <-void 1 add ->void endif loop loop GetUnitsByType("resourcered" 1) ->units <-units GetListCount 0 do GetUnitSettings(<-units[i]) ->unitSettings <-redMin 1800 <-unitSettings{"Interval"} div add ->redMin loop GetUnitsByType("resourceblue" 1) ->units <-units GetListCount 0 do GetUnitSettings(<-units[i]) ->unitSettings <-blueMin 1800 <-unitSettings{"Interval"} div add ->blueMin loop GetUnitsByType("greenarmother" 1) ->units <-units GetListCount 0 do 0 ->validTiles GetUnitCell(<-units[i]) ->posZ ->posX <-posZ 11 add <-posZ 10 sub do <-posX 11 add <-posX 10 sub do DistanceCell((<-posX) (<-posZ) i j) ->dist if (<-dist 10.5 lte) i ->x j ->z @TileOkay if (<-okay gt0) <-validTiles 1 add ->validTiles endif endif loop loop <-validTiles 339.0 div ->pct GetUnitSettings(<-units[i]) ->unitSettings <-crystalsMin 1800 <-unitSettings{"Interval"} div <-pct mul add ->crystalsMin loop GetEcoCounts ->liveCount ->stumpCount <-stumpCount <-liveCount add ->totalEco " Ground Tiles:" <-tiles LF "Resource Tiles:" <-table{1} LF "Void Tiles:" <-void LF "Eco:" <-liveCount "/" <-totalEco LF LF "Potential Soylent Energy:" <-tiles 0.00276 mul 2 round lf "Eco Energy Value:" <-totalEco 0.01104 mul 2 round lf lf "Resource Terrain could be" lf "Energy Gen:" <-table{1} 15 div "or" lf "Bluite:" <-table{1} 1.2 div 2 round "/min" lf LF "Map resources per minute" LF "Bluite:" <-blueMin 2 round lf "Redon:" <-redMin 2 round lf "Greenar Crystals:" <-crystalsMin 2 round lf "Liftic Produced: " <-crystalsMin 12 mul 1 round lf traceallsp :TileOkay 1 ->okay GetTerrain(<-x <-z) ->terrainHeight if (<-terrainHeight lte0 GetCellOccupiedCount(<-x <-z) gt0 or) 0 ->okay return endif <-z 2 add <-z 1 sub do <-x 2 add <-x 1 sub do if (GetTerrain(i j) <-terrainHeight neq ) 0 ->okay break endif loop loop