-
Notifications
You must be signed in to change notification settings - Fork 8
Better builder
popiel edited this page Jan 20, 2011
·
8 revisions
For the Lacuna builder... these are the things I'd been thinking about:
- Minimum / maximum production rates for each resource & waste
- Minimum / maximum # plots to be used for each resource production / storage type
- For non-resource related buildings, target count and level to build towards
- For food types, whether to try and be balanced across many different food types, or just go with the minimal variety to keep populace happy.
My thought on production types for water and energy is thus: hydrocarbon + water reclamation seems to be the most effective synergy until you get up to singularity and evaporator. No real point in building anything else unless you're bootstrapping and don't have the minerals. Hydrocarbon is available at uni 1, water reclamation at uni 7. Fairly early.
Once you've got a scow (either shipped in or built via shipyard, level 10 sequestration), then trash becomes just an issue of being able to store enough to not overflow before the scow gets back from the local star.
From Kevin:
if (&trash_problem)
deal_with_trash, exit;
for each resource type:
if (current prod will overflow in TIME min or less)
build_storage(type), exit;
type = lowest prod rate
get_cost_to_upgrade(type)
for each type
if (!can store enough to upgrade)
&build_storage(type), exit
upgrade_prod(type)
##################
# trash is a problem if we make it faster than we can recycle
sub trash_problem
# do the cheapest of (upgrade recycling, upgrade converters)
sub deal_with_trash
#
sub build_storage(type)
if type storage exists
upgrade it, return;
build storage(type)
# Some complexity here based on different types and subtypes
sub upgrade_prod(type)
get list of sources for type
get "cheapest" upgrade from available sources (cheap in terms of lowest current stockpile?)
# not sure if that would work; is lvl 2 actually cheaper per resources than building another level 1?
# I suspect not allowing the script to build new sources may be safer)