PETRI DISH GAMES

Index of everything

35 subjects, 39 bindings to 222 source files, 15 signed notes. Current to cycle 0.4.4.

Every subject, in reading order

The Cosmos

The cosmos

What is true in every Petri Dish game, not just one of them.

  1. Emergence The rule every Petri Dish game is built on: an outcome is produced by running a population and selecting on it, never written down in advance.

The archive

What the studio keeps of everything it has bred, how it decides which ones are worth keeping, and how the site draws what it kept.

  1. The outcome record One scored visit kept whole: the interaction that was measured, the fitness it produced, the genome behind it, and the frame it was measured in.
  2. Behaviour space The small coordinate space a bred artifact is placed in by what happened when somebody used it, rather than by what its genome contains.
  3. The elite archive The rule the structure pool culls by: keep the best occupants of each region of behaviour space rather than the best individuals overall.
  4. Measured position Where a node stands in the field: three numbers computed by an encoder reading the corpus text, never read off a declared hierarchy.
  5. The medium The light between subjects in the field: the interference of a wave emitted by every subject, read out of a volume the browser computes once per tab.

Substrate: Emergence

The substrate

The ground cells grow on, and the conditions in a dish that keep them alive or kill them.

  1. The Dish The petri dish a culture grows in: one walled circle of ground, sized in millimetres when the culture starts, and the limit of everywhere its cells can reach.
  2. Substrate Everything filling the dish: growth media, the food most cells absorb through the membrane, and dense substrate, the wall that stops them, neither of which restocks itself.
  3. Temperature The warmth of the ground a cell stands on. A cold floor and a heat ceiling kill outright; between them a cell outside its tolerance band leaks cytosol, and a colony heats the ground it stands on.
  4. pH How acidic or alkaline the ground under a cell is, on the 0-14 scale; a cell is comfortable inside the band its tolerance gene names and drains cytosol outside it, but pH never kills outright.

The cell

What cells are and how they function.

  1. Cytosol The cell's single energy pool, and what it has instead of a health bar.
  2. Mitosis Division of one cell into two daughters, which destroys the parent and is gated on a full nucleus.
  3. Mutation The re-roll a genome takes each time it is copied.
  4. Lysocyst A membrane organelle that dies launching a single enzyme carrier, which bursts into a ring of digestive enzymes where it lands.
  5. Contaminants A cell that plays for a side other than the player's.

The lab

What the player puts into a dish, and how the lab makes money.

  1. Compounds A substance the lab holds by mass and sprays into a dish to change conditions there, identified by one of sixteen roster rows and one of five pH bands.
  2. Contracts A job a client posts for biomarks: at most four on the board at a time, each row's payment fixed the moment it appears, and a Grant paid up front as a loan repayable with interest.
  3. Bioexchange The lab's market in specimens, where banked cells are listed for biomarks, bids are placed on strains the lab has met, and rival labs take the other side.

The Bionet

The map of dishes a lab plays across, and what holding ground inside one pays.

  1. The Bionet The map of dishes a lab plays across: every node is one dish, and winning the run inside it claims the node and opens the ground behind it.
  2. Zones The territories a dish is divided into, each held by whichever side dominates it with biomass; losing the home zone loses the dish.
  3. Trophin The dish's own supply of feed, spent to feed cells and earned back by holding ground.

Rorschach Lab

The lab

What the Rorschach Lab is, what it breeds, and why the Petri Dish runs it.

  1. The Rorschach Lab An evolutionary lab that breeds generated visuals on one desktop, where source is one genome, the aesthetic directive is a second, and human picks are the fitness function.

The organism

What a bred artifact is made of, what it must satisfy to live, and how it is named.

  1. Organisms One generated artifact's source together with the record the lab keeps about it: its track, its ancestry, its standing and its state.
  2. The contract The fixed technical specification a generated organism must satisfy to be stored and to keep being shown.
  3. Prompt genes The population of aesthetic directives the lab breeds alongside the code, rated by how often their offspring win.
  4. Taxonomy The Linnaean ranks the lab computes for each organism from its track, its lineage, the operator that bred it, its prompt gene and its title.

Evolution

How the population breeds, what selects it, and what kills it.

  1. Breeding Construction of one new organism from living parents by one of six operators, three of them pure code and three of them a call to a model.
  2. Selection The Elo ranking that sorts the population, run as two parallel ladders whose blend decides which organisms breed and which die.
  3. Death Removal of an organism from the living pool, driven by crowding against carrying capacity and by senescence below the track median.
  4. Diversity The distance measure over organism source code, and the birth gates, clone-family cap and crisis pressure built on it.
  5. Freezing and reseeding The owner's flag that exempts an organism from culling and from carrying capacity, and the restart that founds a new pool from the frozen shelf.

The visitor

What a person on this site does to the population, and what it does back.

  1. Judging The public surface at /rorschach, where a visitor sees two unlabelled renders and casts one verdict on the pair.
  2. Crossing The public breeding path, in which a visitor names two organisms already shown and the lab breeds a child from them with its free operators.
  3. The gallery The Rorschach Lab's published population, served best-first with each organism's source, prompt gene and taxonomy under Apache-2.0.
  4. The voice The generated sound an organism makes, played live from its own shader source and fed back into the image through uniforms.

Every subject, A–Z

B

C

D

E

J

L

M

O

P

S

T

Z

Not bound to code

A subject with no bindings has not been read against source. A note marked read is interpretation, not observation.

Sources

The game source this wiki reads, by the symbol it names.

SymbolUsed by
birth, cull, diversityState, evolve.js, evolvePrompts, runDaemon b72f4e12e72f BreedingDeathDiversityEmergenceFreezing and reseedingOrganismsPrompt genesSelectionTaxonomyThe contractThe Rorschach Lab
db.js, fitness, phylumOf 193eb96a460a BreedingCrossingDeathEmergenceFreezing and reseedingOrganismsPrompt genesSelectionTaxonomyThe contractThe Rorschach Lab
public-api.js, publicCross, publicGallery, publicPair, publicSeen, publicVote f14fffef049d CrossingDiversityFreezing and reseedingJudgingOrganismsPrompt genesSelectionTaxonomyThe contractThe galleryThe Rorschach Lab
/api/pub/gallery, applyVote, recordVote, server.js 2ee5143085a9 CrossingDeathFreezing and reseedingJudgingOrganismsPrompt genesSelectionThe contractThe galleryThe Rorschach Lab
lab.config.json a095dd3b3dab BreedingCrossingDeathDiversityFreezing and reseedingOrganismsPrompt genesSelectionThe galleryThe Rorschach Lab
ApplyDirectedMutagenSteps, GeneMutationContext, GeneMutationService, GeneMutationService.TryGetBandTargetPH, GeneSystem, GenomeReplicationContext, TryGetBandTargetPH d3ac2bc87943, fb1a82bdf1ec CompoundsEmergenceLysocystMitosisMutationpHTemperature
BeginRapidNucleusFeed, CellParty, DescribeDeathCause, DuplicateNucleus, GetCiliaCytosolCostPerSecond, GetEffectiveCytosolMaxBuffer, TryTriggerMitosis, UpdateLysocystSpawning, cell_body 8ddd2aba855e ContaminantsCytosolLysocystMitosisMutationpHTemperature
ArmForcedToleranceIfExtreme, BuildSmartLeg, HandleOrganelleClick, TryPayForNucleusDose 19d2ef4f4143 ContaminantsMitosisMutationpHTemperatureTrophin
CreateGenomeForDaughter, IsReady, MitosisController, PerformSplitStaggered, TryBegin 1a9b0f0d6774, e439e8f9dfd8 ContaminantsCytosolEmergenceMitosisMutationTrophin
OPERATORS, distance, genome.js, validate 2135902ed4dc BreedingCrossingDiversityOrganismsTaxonomyThe contract
CellBodyAbsorption, CellEnergy.compute, ComputeSupplyScale, CytosolDrain, NucleusGrowth, UpdateRapidMitosisFlag b411666fe0c5 CytosolMitosispHSubstrateTemperature
rorschach.astro b439b3c1f84b CrossingJudgingThe contractThe Rorschach LabThe voice
SampleGrowthMedia, SubstrateField 3e82bae8555a ContaminantspHSubstrateTemperatureThe Dish
SHADER_PRELUDE, birthPrompt, novelGenePrompt, tracks.js 979ad190a564 BreedingOrganismsPrompt genesThe contractThe Rorschach Lab
ApplySubstrateModifications, EnzymeSimulation.compute, SimulateDissolving, SpawnLysocystBurst, TriggerCatalytic e3a2479679c7 LysocystpHSubstrateThe Dish
ChunkGeneration.compute, GenerateChannelB, GenerateChunk 232c6696592f pHSubstrateTemperatureThe Dish
DefaultBindings, FilterContaminant, KeybindingManager ba21ca0a39a9 BioexchangeContaminantsMitosisTrophin
outcomeVector, readRecords Behaviour spaceMeasured positionThe elite archiveThe outcome record
SubstrateEnergyManager, diminishingReturnsFactor, supplyResponseReference 8c7dc4a41fd8 CytosolpHSubstrateTemperature
BEHAVIOUR_BASIS, descriptor, descriptorOf, projectionMatrix Behaviour spaceThe elite archiveThe outcome record
BionetRun, PollZoneVictory 24e8bc386696 ContractsThe BionetZones
CareerEconomyManager.AddCompoundMass, DishTrophinDoses, PollZoneVictory 7744404f22fa, e96e7f1fbd1e CompoundsTrophinZones
ChunkManager, DispatchErodeDepositR, ShouldQueueReadback 973a181fe1d8 ContaminantsSubstrateThe Dish
ClimatePresets, HexNewCulturePanel 52f1efff6f73 ContaminantsTemperatureThe Dish
closeTrial Behaviour spaceThe elite archiveThe outcome record
CollectCell, HarvestTool, HarvestTool.CollectCell 4f3a3672d59f, 77fbdfa960e9 BioexchangeCompoundsTrophin
CompoundSlotManager, GestureCost, GrantClaimMilestones 41efd441b3f6 CompoundsThe BionetTrophin
ContractBoardManager 1fe5f5e61cd5 BioexchangeContractsTemperature
gallery.astro 005d7b298795 TaxonomyThe galleryThe voice
GeneValuation, GetBaseValue, TemperatureExtremity 1abea58791de BioexchangeContractsTemperature
mech.compound, mech.cytosol, mech.substrate ae604376c918 CompoundsCytosolSubstrate
PHToleranceGene, PHToleranceGene.MutateOptimalPH 17233d5d1e6b CompoundsMutationpH
TerritoryMediaYield 8f5c6a43bf77 CompoundsTrophinZones
ZoneCompoundChemistry, ZoneCompoundChemistry.ChannelTarget, ZoneCompoundChemistry.UnauthoredDenseSubstrateTarget 2348915d3cbb CompoundspHSubstrate
AdaptTolerancesTo, SpawnContaminantCells c31caee94bdf ContaminantsTemperature
AdvanceProgression, BioExchangeManager 9ebac604f7ad BioexchangeContracts
ApplyAbsorption, SlimeMoldAbsorption.compute 86b2d45cba4a SubstrateThe Dish
ApplyNodePoles, BionetMapManager 21247360fb43 TemperatureThe Bionet
ApplySubstrateLens, Growth Media Identity 2bd26cdcaf78 pHSubstrate
ask, llm.js b7d1d0c7aa85 BreedingOrganisms
BionetMapCatalog, ConditionsFor a6297867eded TemperatureThe Bionet
BionetRegionWorth ebe506091463 The BionetZones
BionetRivalClades 55ca1073ba69, 8eb2c115bfff ContaminantsZones
BionetStrainFit 8b813709cc02 TemperatureThe Bionet
BionetZoneVictory 9391171e761d The BionetZones
BuddingController e517b1c1d6cc ContaminantsMutation
CanPlayerControl 3728cfa732bb ContaminantsMitosis
CompoundClass, PhBand f2912456254a CompoundspH
CompoundNameGrammar.RosterName, RosterName 35cd5df8dec5 CompoundspH
CompoundRoster 0365e31c0bba CompoundsTemperature
ContaminantCellCount, PlayerCellManager 70799c4fa318 ContaminantsMutation
CrystalEmissionManager, CrystalEmissionManager.TickContactAbsorption 6990e9afd858, e2d80ff0aaa5 CompoundsTemperature
CulturePlateSaveManager, SetPendingDishTrophin 13bcdc027bbb ContaminantsTrophin
DealPHDamageToCell, TriggerMutagenic 47c3981e95d6 CytosolMutation
DishFogField d3d595edcbe1 ContaminantsThe Dish
EDGE_WEIGHT, PLACE_EDGES Measured positionThe medium
EmitBurstOfType, ParticlePlacementTool b59728d5b78e SubstrateTrophin
GpuMutagenExposureManager aaf52b094a7f CompoundsMutation
HexBionetMapPanel 1d470015d592 The BionetThe Dish
hydrate, loadPopulation The elite archiveThe outcome record
LysocystGene f849b0cbf781 LysocystSubstrate
MutateOptimalTemperature, TemperatureToleranceGene 649d210d3b62 MutationTemperature
NormToCelsius, NormToPH a4406cda973d pHTemperature
pool.ts 1035b8ea9c67 JudgingTaxonomy
RingBarrier, SubstrateBarrier 231ca04e3432 SubstrateThe Dish
ScrapCompoundYield, ScrapCompoundYield.BandFor 3212ea3dff61 CompoundspH
SetPendingSterilizationOptIn, WorldMode cb5d359f1d20 ContaminantsThe Dish
test-exotic.mjs The elite archiveThe outcome record
Tolerometry 79368e6dd879 pHTemperature
VacuumCredit b4f060a4bc01 CompoundsTrophin
AbandonDish 9f10b85066ac The Bionet
AbsorbedCompoundLedger f5b132cbec28 Compounds
AbsorptionPseudopodGene 420c33246b97 Mutation
adapt The medium
AddPendingChoice 01c5fd9628e5 The Bionet
AppendYieldLine 02d265a82109 Trophin
arena.html f4018fe1a8bc The contract
audio.ts d355ff71c8c7 The voice
auth.js 1c1580a0c0a0 The Rorschach Lab
BAKE_FRAGMENT_SOURCE, FRAGMENT_SOURCE The medium
bake-niches.mjs The elite archive
bakeField, sourcePhases The medium
barrierDigestionRate 779a5895d79a Substrate
BasalAbsorptionGene 3db1c62ab0d8 Substrate
BehaviorNetwork.compute d75d4d7b5e43 Temperature
behaviour.json Behaviour space
BioExchangePanel 50f6a53a2699 Bioexchange
BionetClaimRewards 0310c477cfe6 The Bionet
BionetContestDescriptor 408c12a6d2db The Bionet
BionetGlobalState 74af60d915ad The Bionet
BionetLadder 9f483618036e The Bionet
BionetNode ee898bec2c4d The Bionet
BionetRegionProfile 8bed2b899a87 The Bionet
BionetTerritories f3531a80159d Zones
BionetTerritoryDomination 58ae04bf2231 Zones
BionetZonePanel ce8c82fc351b Zones
build-behaviour.mjs Behaviour space
buildLadder The medium
CameraPanZoom b2cd8b561175 The Dish
candidate Measured position
CanTriggerMitosisTolerant 9f3bf16449f5 Mitosis
CellFilterRegistry 8f28f869d10b Contaminants
CellLineManager 3bad83309cb0 Bioexchange
CellParticleCloudCore.hlsl ea0fbb158912 pH
CellTeamTint 32d742c33d4c Contaminants
CheckDaughterForDivergence, MeasureDivergence 63e41783442b Mutation
CiliaGene 9bff350e7467 Mutation
ClampToDish 48e208d5459c The Dish
CollectedCompoundYield a5f5c4f6a7df Compounds
CompoundCatalog d7b5b2b8b7ba Temperature
CompoundSymbol 3828b4ee3030 Compounds
CompoundToolHotkeys 6f4d125ad0de Compounds
ComputeCellPhenotypeColor 1b011aeef7c5 pH
ComputeDivergence 7f37a88adebc Temperature
ContaminationEventManager, SampleUnclaimedRichness 6587eb33ec3e Contaminants
ContractManager e15f321cf7c4 Contracts
ContractRowBuilder 57fd0f648458 Contracts
ContractsPanel b6af56a6f4c1 Contracts
CryobankInventoryActions bf7e85496e72 Bioexchange
CryobankLineageSwap 1265543d7941 Mutation
CryobankPanel 87818399837c Bioexchange
CryobankSpecimensView 1d70de54220d Bioexchange
CrystalPlacementTool 07d89970a4e2 Trophin
CultureLineageRecord d6987007b031 Mutation
CulturePlateMetadata 426f1471afba Trophin
CultureVictoryLedger 1eca23268259 Zones
CytosolCapacityGene 9da30292ad84 Cytosol
DemandNewsManager 8f82907db1c3 Contracts
describeOffline Behaviour space
DiffuseChunkLocalBatched d91feb1b642d Substrate
DigestiveEnzymeGene e74e5c32406d Mutation
DishFog.hlsl 4f43eab3b30e The Dish
DishFogSeaRenderer 20ff795f8638 The Dish
DivergenceCaretOverlay 1b04964a36ca Mutation
DivergenceCeremonyCard f40bbcedf413 Mutation
DivergenceMarkText 37030bc76858 Mutation
DivergencePerkOffer fca28cc1f644 Mutation
DivideThreshold 2e6b96773d25 Mitosis
DriftBuckets 79f802bc19b7 The Bionet
embedCorpus Measured position
embedding.json Measured position
EndoplasmicReticulumGene baf4d26e674c Mutation
EnvChannel 3469660a40e2 Compounds
EnvironmentBrushTool 861eb62e16de Trophin
EnvRamp 02bebb2f1d80 pH
ExchangeSimulation 513920720bf6 Bioexchange
FactionCatalog 3261a2ce7dc4 Contracts
FactionReputationManager bc9f7cb5abc2 Contracts
FilterHudSection a1f7aaee8c95 Contaminants
FireScheduledDivision 22cc49b3537a Mitosis
fitness 64e4cc37de25 Emergence
fitness 7ec1d39e0fa1 Emergence
form.ts a2695e1d7ba2 The voice
ForNode b79150db69bd The Bionet
frontier, nicheOf The elite archive
gallery.html 610658446f1e Freezing and reseeding
GeneDemand a777f1663581 Bioexchange
GeneDivergenceCapture 729ca29d1613 Mutation
genome.ts 09b333a8984b The voice
GetMaintenanceWeight 2dc0e87531a4 Cytosol
GpuSlimeMoldAbsorptionManager a5d85d045747 Substrate
GrowthMediaCoordinator 45c2f564f547 Temperature
HexColonyStripSection 45cbb6ddcba4 Contaminants
HexLabSurface a35d353c714d Bioexchange
HexToolPaletteSection.ResolveZoneRowsGated c8cc0ff6b2c2 Compounds
HiddenByFog e93df426f502 Contaminants
HiddenByFog d129fc03dfe9 Contaminants
HudDishMinimap 79b7aecefc2d Contaminants
LICENSE d64569567334 The Rorschach Lab
MapEditorLauncher 245862ba3a11 The Dish
melody.ts 0f0631615330 The voice
MitochondrionGene 418256637f32 Temperature
OrganelleMesh.compute 6933e62498d7 Mitosis
OutcomeRecord The outcome record
PetriDishRing ebecc5ee5569 The Dish
PHMismatch.cginc 44a5be4e8d04 Lysocyst
PHVacuoleGene cee9295f2064 pH
placeField Measured position
PlayerCameraTether c7370682d127 The Dish
prettylab.js fa40fd73c4ef The Rorschach Lab
ProgressionTracker 46c999594a3d Contracts
PseudopodiaGene f7244378149d Mutation
QuotaTargetPicker 67f3eba92306 Contracts
Recorder The outcome record
RefreshContest 954ec7082d83 Zones
RefreshFit 9dce4f925203 The Bionet
remember The outcome record
ReplicationScheduler e41c2df56f8d Mitosis
RewardData 395b3992329e Contracts
RivalLabMarket 51d7eacd1664 Bioexchange
Roster c3a17c9d4626 Emergence
SampleG a13cd2a501d5 Contaminants
SamplePHTerrainGradient 179124224d68 pH
scoreOutcome The outcome record
SetCollisionDeathUniforms 55edc8151826 Substrate
SetCytosol 75165856c350 Cytosol
SETTLE Measured position
Simulate efc005bf9e63 Substrate
SlimeMoldNetwork 06f3f854c8b6 Contaminants
SpawnEventBurst fa866caa44a9 Contaminants
SterilizationManager a14b4b3f7bed Contaminants
StrainRegistryListBuilder 64b5a149ccb8 Contaminants
SubstrateAbsorption 6f7058622067 Substrate
SubstrateMap.erodibility a6eb03da9fe9 Substrate
TerritoryHoldings 2bf18523ece9 Zones
test-behaviour.mjs Behaviour space
test-field.mjs Measured position
theField Measured position
theory.ts cf4f69960a45 The voice
TickMutagen 57bff4496874 Substrate
timbre.ts 748837c5e9e4 The voice
trainBehaviour Behaviour space
TransmembraneLysocyst 131a5012040e Lysocyst
TryActivateBurst 7e70ce90e5a3 Cytosol
TutorialLessonDirector.Poll 25b5c012cfaf Compounds
UnifiedSlimeMoldNetwork 8bd521383042 Cytosol
UpdateAbsorbing 841a74d0883c Cytosol
UpdateEnzymeFiring 8dd7ad505b51 Lysocyst
UploadNewLysocyst f5c0c76cfa03 Lysocyst
VacuoleGene ef61d49f5f57 Mutation
WinNow 85263edd15f6 Trophin
WorldCreationSettingsMapper a0efd0853674 Temperature

Signatures

A signature is attached to a specific claim, not to a page.

The Archivist 0 notes

The Measurer 7 notes

The Devotee 1 note

The Apostate 7 notes

The Librarian 0 notes