The Farmer Was Replaced Baum-Code — Schachbrett-Holzfarm

Bäume geben 5 Holz — mehr als Büsche — mögen aber keine Kanten-Nachbarn. Jeder Nachbar verdoppelt die Zeit; 4 Nachbarn = 16× langsamer. Der Spielhinweis ist `% 2`.

Baum-Regeln (warum Nachbarn schaden)

  • Ein reifer Baum gibt 5 Holz. Büsche geben weniger.
  • Pflanzen auf Gras oder Boden. `till()` ist optional.
  • Nur Norden, Osten, Süden, Westen. Jeder solche Nachbar **verdoppelt** die Zeit: 1 = 2×, 2 = 4×, 3 = 8×, 4 = 16×.
  • Diagonalen zählen nicht. Im Schachbrett berühren sich Bäume nur an Ecken.

Warum Schachbrett, nicht ein volles Baumfeld

Ein volles Baumfeld umgibt die Mitte mit 4 Nachbarn — 16× langsamer. Die Holz/Sekunde bricht ein.

Bäume auf `(x + y) % 2 == 0` (oder die andere Farbe). Büsche auf den Rest. Der Hinweis im Spiel nutzt `% 2`.

  • Lesen: `get_pos_x()` und `get_pos_y()`.
  • Teilen: Gerade Summe → `plant(Entities.Tree)`. Ungerade → `plant(Entities.Bush)`.
  • Zyklus: `can_harvest()` dann `harvest()`, pflanzen, `move`.

Gerade = Bäume, ungerade = Büsche

Baum- und Busch-Skript zum Kopieren

Step 1 Der `% 2`-Test

Wie der Spielhinweis. `== 0` und `== 1` tauschen, um die andere Farbe zu nutzen.

python
x = get_pos_x()
y = get_pos_y()

if (x + y) % 2 == 0:
    plant(Entities.Tree)
else:
    plant(Entities.Bush)

Step 2 Scannen, ernten, pflanzen, bewegen

Ernten wenn bereit, dann die passende Pflanze, dann das Raster ablaufen.

Vollständiger Quellcode

Python
python
def go_to(x, y):
    while get_pos_x() != x:
        if get_pos_x() < x:
            move(East)
        else:
            move(West)
    while get_pos_y() != y:
        if get_pos_y() < y:
            move(North)
        else:
            move(South)

clear()
while True:
    size = get_world_size()
    for y in range(size):
        for x in range(size):
            go_to(x, y)
            if can_harvest():
                harvest()
            if (x + y) % 2 == 0:
                plant(Entities.Tree)
            else:
                plant(Entities.Bush)

Optional: Gießen

Wasser beschleunigt das Wachstum, hebt die Nachbar-Strafe aber nicht auf. Nach `plant(...)` einfügen.

python
if get_water() < 0.75:
    use_item(Items.Water_Tank)

Als Nächstes: Kürbisse, dann Polykultur

Ist Holz stabil, Kürbisse freischalten. Etwa jeder fünfte stirbt; erst ernten, wenn das Raster voll ist. Kürbis-Code

Polykultur kommt später. `get_companion()` sagt, welche Nachbarpflanze gewünscht ist. Das ist ein anderes Layout als dieses Schachbrett.