Download Game! Currently 62 players and visitors. Last logged in:IberiamsspCorrelAceduckBamot

Blitzer's Blog >> 71688

Back to blogs index
Posted: 06 Aug 2026 16:53 [ permalink ]
# Speksit & Konseptielementit: KeinoelC$mC$simulaattori

## 1. Datan rakenne (8-bittinen solu)

* **1 Tavu per solu (8 bittiC$)**:
* **Bitit 06 (7-bit ASCII, 0127)**: Solun "geeni", materiaali ja
toiminnallinen koodi.
* **Bitti 7 (0 tai 1)**: ElC$mC$n kipinC$ (1 = Elossa, 0 = Kuollut/Ruumis).
Kuollut solu ei hC$viC$, vaan jC$C$ passiiviseksi rakennusaineeksi, kilveksi
tai ravinnoksi.



---

## 2. Koodaus- ja suoritusrajoitukset

* **10 merkin raja**: YksittC$isen symbolin koodikenttC$ (`alive`, `dead`,
`react`) saa olla korkeintaan 10 merkkiC$ pitkC$. Pakottaa monisoluisuuteen ja
erikoistumiseen.
* **Mikrokielen merkistC6** (luonnos):
* `?` = Ehto / Tunnistus
* `*` = MikC$ tahansa kohde
* `!` = Tuhoa / Sammuta 8. bitti
* `@` = Tuhoa itsesi
* `>` = TyC6nnC$ eteenpC$in
* `<` = VedC$ perC$ssC$
* `^` = HerC$tC$ / Kytke 8. bitti pC$C$lle



---

## 3. Symbolien lC$hdetaulukko (YAML)

```yaml
[SYMBOLS]
H:
  nimi: Happo
  materiaali: {opasiteetti: 0.5, absorptio: 0.1, johtavuus: 0.2, kapasiteetti:
20}
  alive: "?*:!@"       # Jos edessC$ mitC$ vain (*), tapa se (!), tuhoa itsesi
(@)
  dead:  ""
  react: "!@"

M:
  nimi: Moottori
  materiaali: {opasiteetti: 0.8, absorptio: 0.2, johtavuus: 0.8, kapasiteetti:
50}
  alive: ">"           # TyC6nnC$ eteenpC$in (kuluttaa lC$mpC6C$)
  dead:  ""
  react: ""

L:
  nimi: Lihas / Tarttuja
  materiaali: {opasiteetti: 0.7, absorptio: 0.2, johtavuus: 0.6, kapasiteetti:
40}
  alive: "<*"          # VedC$ takana olevaa mitC$ tahansa mukana
  dead:  ""
  react: ""

V:
  nimi: Vampyyri
  materiaali: {opasiteetti: 0.9, absorptio: 0.0, johtavuus: 0.5, kapasiteetti:
80}
  alive: "?*:!_SND^"   # Ime elC$mC$ naapurilta, lC$hetC$ herC$te taaksepC$in
  dead:  ""
  react: ""

A:
  nimi: Aurinkopaneeli / Lehti
  materiaali: {opasiteetti: 0.9, absorptio: 0.8, johtavuus: 0.5, kapasiteetti:
50}
  alive: ""            # KerC$C$ valoa lC$mmC6ksi
  dead:  ""
  react: ""

B:
  nimi: Akku / SydC$n
  materiaali: {opasiteetti: 1.0, absorptio: 0.0, johtavuus: 0.9, kapasiteetti:
500}
  alive: ""            # Suuri lC$mpC6varasto
  dead:  ""
  react: ""

G:
  nimi: Lasi / Valokanava
  materiaali: {opasiteetti: 0.1, absorptio: 0.05, johtavuus: 0.1,
kapasiteetti: 20}
  alive: ""            # LC$pC$isee 90% valosta
  dead:  ""
  react: ""

R:
  nimi: Radium / Resonaattori
  materiaali: {opasiteetti: 1.0, absorptio: 0.0, johtavuus: 0.1, kapasiteetti:
100}
  alive: "?R:*2^"      # Jos vieressC$ R, kerro sC$teily kahdella ja herC$tC$
  dead:  ""
  react: ""

S:
  nimi: Itio / Siemen (Spore)
  materiaali: {opasiteetti: 0.6, absorptio: 0.4, johtavuus: 0.3, kapasiteetti:
30}
  alive: "?E:>S"       # SyC6 kuollutta koodiromua ja rakentaa uuden
mini-kuvion
  dead:  ""
  react: ""

K:
  nimi: Kopioija (Kloner)
  materiaali: {opasiteetti: 0.8, absorptio: 0.2, johtavuus: 0.5, kapasiteetti:
60}
  alive: "?*:>*^"      # Kopioi edessC$ olevan solun taakseen ja herC$ttC$C$
sen
  dead:  ""
  react: ""

```

---

## 4. Kuvioiden anatomia (YAML)

* *Huomio*: Iso kirjain = syntyessC$C$n elossa (bitti 8 = 1). Pieni kirjain =
kuollut ruumis/kilpi (bitti 8 = 0).

```yaml
[PATTERNS]
Puskutraktori:
  suunta: Oikea
  kuvio: |
    .H.
    mMM
    .H.

Kastemato:
  suunta: Oikea
  kuvio: |
    MLMLM

```

---