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.
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
Pythondef 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.
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.