added official winner/battle royale world
This commit is contained in:
6
dist/assets/organisms/_list.json
vendored
6
dist/assets/organisms/_list.json
vendored
@@ -1,4 +1,8 @@
|
||||
[
|
||||
{
|
||||
"name": "Microquasar☣️",
|
||||
"value": "microquasar"
|
||||
},
|
||||
{
|
||||
"name": "Purple Flower",
|
||||
"value": "purple_flower"
|
||||
@@ -32,7 +36,7 @@
|
||||
"value": "Napoleon"
|
||||
},
|
||||
{
|
||||
"name": "NED",
|
||||
"name": "NED☣️",
|
||||
"value": "NED"
|
||||
},
|
||||
{
|
||||
|
||||
144
dist/assets/organisms/microquasar.json
vendored
Normal file
144
dist/assets/organisms/microquasar.json
vendored
Normal file
@@ -0,0 +1,144 @@
|
||||
{
|
||||
"c": 9,
|
||||
"r": 9,
|
||||
"lifetime": [],
|
||||
"food_collected": 12313,
|
||||
"living": true,
|
||||
"direction": 2,
|
||||
"rotation": 0,
|
||||
"can_rotate": false,
|
||||
"move_count": -1,
|
||||
"move_range": -1,
|
||||
"ignore_brain_for": 5,
|
||||
"mutability": 14,
|
||||
"damage": 0,
|
||||
"anatomy": {
|
||||
"birth_distance": 4,
|
||||
"is_producer": true,
|
||||
"is_mover": true,
|
||||
"has_eyes": true,
|
||||
"cells": [
|
||||
{
|
||||
"loc_col": 0,
|
||||
"loc_row": 0,
|
||||
"state": {
|
||||
"name": "producer"
|
||||
}
|
||||
},
|
||||
|
||||
{
|
||||
"loc_col": 0,
|
||||
"loc_row": 0,
|
||||
"state": {
|
||||
"name": "producer"
|
||||
}
|
||||
},
|
||||
{
|
||||
"loc_col": 0,
|
||||
"loc_row": 0,
|
||||
"state": {
|
||||
"name": "producer"
|
||||
}
|
||||
},
|
||||
{
|
||||
"loc_col": 0,
|
||||
"loc_row": 0,
|
||||
"state": {
|
||||
"name": "producer"
|
||||
}
|
||||
},
|
||||
{
|
||||
"loc_col": 0,
|
||||
"loc_row": 0,
|
||||
"state": {
|
||||
"name": "producer"
|
||||
}
|
||||
},
|
||||
{
|
||||
"loc_col": 0,
|
||||
"loc_row": 0,
|
||||
"state": {
|
||||
"name": "producer"
|
||||
}
|
||||
},
|
||||
{
|
||||
"loc_col": 0,
|
||||
"loc_row": 0,
|
||||
"state": {
|
||||
"name": "producer"
|
||||
}
|
||||
},
|
||||
{
|
||||
"loc_col": 0,
|
||||
"loc_row": 0,
|
||||
"state": {
|
||||
"name": "producer"
|
||||
}
|
||||
},
|
||||
{
|
||||
"loc_col": 0,
|
||||
"loc_row": 0,
|
||||
"state": {
|
||||
"name": "producer"
|
||||
}
|
||||
},
|
||||
{
|
||||
"loc_col": 0,
|
||||
"loc_row": 0,
|
||||
"state": {
|
||||
"name": "producer"
|
||||
}
|
||||
},
|
||||
{
|
||||
"loc_col": 0,
|
||||
"loc_row": 0,
|
||||
"direction": 2,
|
||||
"state": {
|
||||
"name": "eye"
|
||||
}
|
||||
},
|
||||
{
|
||||
"loc_col": 0,
|
||||
"loc_row": 0,
|
||||
"state": {
|
||||
"name": "mouth"
|
||||
}
|
||||
},
|
||||
{
|
||||
"loc_col": 0,
|
||||
"loc_row": 0,
|
||||
"state": {
|
||||
"name": "killer"
|
||||
}
|
||||
},
|
||||
{
|
||||
"loc_col": 0,
|
||||
"loc_row": 0,
|
||||
"state": {
|
||||
"name": "mover"
|
||||
}
|
||||
},
|
||||
{
|
||||
"loc_col": 0,
|
||||
"loc_row": 0,
|
||||
"state": {
|
||||
"name": "armor"
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"brain": {
|
||||
"decisions": {
|
||||
"empty": 2,
|
||||
"food": 2,
|
||||
"wall": 0,
|
||||
"mouth": 2,
|
||||
"producer": 2,
|
||||
"mover": 2,
|
||||
"killer": 2,
|
||||
"armor": 1,
|
||||
"eye": 0
|
||||
}
|
||||
},
|
||||
"species_name": "Microquasar"
|
||||
}
|
||||
4
dist/assets/worlds/_list.json
vendored
4
dist/assets/worlds/_list.json
vendored
@@ -1,7 +1,7 @@
|
||||
[
|
||||
{
|
||||
"name": "⚔️Battle Royale (upcoming competition!)",
|
||||
"value": "battle_royale"
|
||||
"name": "☣️Unnatural Battle Royale⚔️",
|
||||
"value": "battleground"
|
||||
},
|
||||
{
|
||||
"name": "Colony",
|
||||
|
||||
1
dist/assets/worlds/battleground.json
vendored
Normal file
1
dist/assets/worlds/battleground.json
vendored
Normal file
File diff suppressed because one or more lines are too long
1
dist/index.html
vendored
1
dist/index.html
vendored
@@ -269,6 +269,7 @@
|
||||
<h2>Statistics</h2>
|
||||
<p id='org-count'>Total Population: </p>
|
||||
<p id='species-count'>Number of Species: </p>
|
||||
<p id='top-species'>Most Populous Species: </p>
|
||||
<p id='largest-org'>Largest Organism Ever: </p>
|
||||
<p id='avg-mut'>Average Mutation Rate: </p>
|
||||
<label for="chart-option">Chart: </label>
|
||||
|
||||
@@ -197,7 +197,8 @@ class WorldEnvironment extends Environment{
|
||||
loadRaw(env) { // species name->stats map, evolution controls,
|
||||
this.organisms = [];
|
||||
FossilRecord.clear_record();
|
||||
this.resizeGridColRow(this.grid_map.cell_size, env.grid.cols, env.grid.rows)
|
||||
let cell_size = env.grid.cell_size ? env.grid.cell_size : this.grid_map.cell_size;
|
||||
this.resizeGridColRow(cell_size, env.grid.cols, env.grid.rows)
|
||||
this.grid_map.loadRaw(env.grid);
|
||||
for (let wall of env.grid.walls) {
|
||||
this.walls.push(this.grid_map.cellAt(wall.c, wall.r));
|
||||
|
||||
@@ -83,7 +83,7 @@ class GridMap {
|
||||
// Rather than store every single cell, we will store non organism cells (food+walls)
|
||||
// and assume everything else is empty. Organism cells will be set when the organism
|
||||
// list is loaded. This reduces filesize and complexity.
|
||||
let grid = {cols:this.cols, rows:this.rows};
|
||||
let grid = {cell_size:this.cell_size, cols:this.cols, rows:this.rows};
|
||||
grid.food = [];
|
||||
grid.walls = [];
|
||||
for (let col of this.grid) {
|
||||
|
||||
@@ -121,6 +121,18 @@ const FossilRecord = {
|
||||
this.av_cell_counts.push(cell_counts);
|
||||
},
|
||||
|
||||
getMostPopulousSpecies(){
|
||||
var max_pop = 0;
|
||||
var max_species = undefined;
|
||||
for (let s of Object.values(this.extant_species)) {
|
||||
if (s.population > max_pop) {
|
||||
max_pop = s.population;
|
||||
max_species = s;
|
||||
}
|
||||
}
|
||||
return max_species;
|
||||
},
|
||||
|
||||
clear_record() {
|
||||
this.extant_species = [];
|
||||
this.extinct_species = [];
|
||||
|
||||
@@ -51,10 +51,13 @@ class StatsPanel {
|
||||
var org_count = this.env.organisms.length;
|
||||
$('#org-count').text("Total Population: " + org_count);
|
||||
$('#species-count').text("Number of Species: " + FossilRecord.numExtantSpecies());
|
||||
let top_species = FossilRecord.getMostPopulousSpecies();
|
||||
if (top_species)
|
||||
$('#top-species').text("Most Populous Species: \"" + top_species.name + "\" (" + top_species.population + " organisms)");
|
||||
else
|
||||
$('#top-species').text("Most Populous Species: None");
|
||||
$('#largest-org').text("Largest Organism Ever: " + this.env.largest_cell_count + " cells");
|
||||
$('#avg-mut').text("Average Mutation Rate: " + Math.round(this.env.averageMutability() * 100) / 100);
|
||||
|
||||
|
||||
}
|
||||
|
||||
reset() {
|
||||
|
||||
Reference in New Issue
Block a user