diff --git a/lib/Lacuna/AI.pm b/lib/Lacuna/AI.pm index 4d5b1252..f4b2f43b 100644 --- a/lib/Lacuna/AI.pm +++ b/lib/Lacuna/AI.pm @@ -154,7 +154,15 @@ sub add_colonies { else { say 'Finding colony in '.$zone.'...'; # Need to narrow search if neutral area defined by coordinates. - my $body = $self->viable_colonies->search({zone => $zone},{rows=>1})->single; + my @bodies = $self->viable_colonies->search({ + 'me.zone' => $zone, + 'stars.station_id' => undef, + },{ + join => 'stars', + rows => 100, + }); + my $body = random_element(\@bodies); + if (defined $body) { say 'Clearing '.$body->name; my @to_demolish = @{$body->building_cache}; diff --git a/lib/Lacuna/AI/Trelvestian.pm b/lib/Lacuna/AI/Trelvestian.pm index ce9407f7..f0fd7876 100644 --- a/lib/Lacuna/AI/Trelvestian.pm +++ b/lib/Lacuna/AI/Trelvestian.pm @@ -45,6 +45,7 @@ sub colony_structures { return ( ['Lacuna::DB::Result::Building::Permanent::EssentiaVein',1], ['Lacuna::DB::Result::Building::Permanent::GeoThermalVent',21], + ['Lacuna::DB::Result::Building::Permanent::GratchsGauntlet',12], ['Lacuna::DB::Result::Building::Permanent::NaturalSpring',21], ['Lacuna::DB::Result::Building::Permanent::Volcano',21], ['Lacuna::DB::Result::Building::Permanent::AlgaePond',21],