CbC: Dokumentation-Thread

Hier geht es um technische Fragen zu Fantasya.
Benutzeravatar
nemo
Heerführer
Beiträge: 232
Registriert: Mi 25. Feb 2015, 12:06

+killer

Beitrag von nemo » Di 7. Mär 2017, 15:14

// +killer [(Alternativbefehl)]
Default: Alternativbefehl = "LERNE Steuereinteiben"
Ist als subMeta geeignet.
Unterstützt genau ein subMeta als Alternativbefehl.
Setzt Voraus: Einheit muss Steuereintreiben können. Einheit muss bewaffnet sein und Waffentalent beherrschen.
Sonst: Erfolgloses TREIBE.
Tut: Sobald Bauern in der Region sind und für diese Arbeitsplätze zur Verfügung stehen, wird TREIBE gesetzt, sonst (Alternativbefehl).
Bsp.: // +killer LERNE schwimmen
Behandelndes Skript: killer(Unit)



(Zum Thread-Anfang)
Zuletzt geändert von nemo am Di 7. Mär 2017, 16:08, insgesamt 2-mal geändert.
I may go pop -- Excuse me!

Benutzeravatar
nemo
Heerführer
Beiträge: 232
Registriert: Mi 25. Feb 2015, 12:06

+lehre

Beitrag von nemo » Di 7. Mär 2017, 15:14

// +lehre (Talent) [(Alternativbefehl)]
Default: Alternativbefehl = "LERNE (Talent)"
(Noch) nicht als subMeta geeignet.
Unterstützt subMetas als Alternativbefehl.
Setzt Voraus: Andere Einheiten mit +lerne oder +lehre in der selben Region.
Sonst: Alternativbefehl (s.u).
Tut: Die Einheit sucht sich Schüler, denen sie (Talent) beibringen kann. Hierfür kommen in Frage Einheiten mit +lerne und mit +lehre . Es werden so lange Schüler-Einheiten hinzugefügt, wie die Gesamtzahl der Schülerpersonen kleiner als das Zehnfache der Lehrer-Einheit ist. Die Rangfolge der Berücksichtigung ist: +lerne (und hier so, dass Einheiten mit kleinerem Talentwert vorgezogen werden, bei gleichem Talentwert bekommt die Schülereinheit den Vorzug, die in der Reportsortierung weiter unten steht), dann +lehre (nur hier wird darauf geachtet, dass die gelehrten Einheiten mehr Personen haben, als die lehrende Einheit). Außerdem ist das System so angelegt, dass Schülereinheiten mit relativ geringem Talentwert tendenziell Lehrer-Einheiten mit ebenfalls relativ geringem Talentwert erhalten (sodass höherstufige Lehrer sich auch um höherstufige Schüler kümmern können).
Werden keine Schüler gefunden, wird (Alternativbefehl) gesetzt.
Bsp.: // +lehre Steuereintreiben TREIBE
Behandelndes Skript: studyComplex(Region)



(Zum Thread-Anfang)
Zuletzt geändert von nemo am Di 7. Mär 2017, 16:08, insgesamt 1-mal geändert.
I may go pop -- Excuse me!

Benutzeravatar
nemo
Heerführer
Beiträge: 232
Registriert: Mi 25. Feb 2015, 12:06

+lerne

Beitrag von nemo » Di 7. Mär 2017, 15:14

// +lerne (Talent) [(Alternativbefehl)]
Default: Alternativbefehl = "LERNE (Talent)"
(Noch) nicht als subMeta geeignet.
Unterstützt subMetas als Alternativbefehl.
Setzt voraus: Einheiten mit +lehre in der selben Region.
Sonst: Alternativbefehl (s.u.).
Tut: Die Einheit wird als Schüler-Kandidat für Einheiten mit +lehre eingetragen. Findet sich kein Lehrer für sie, wird (Alterntivbefehl) gesetzt.
Bsp.: // +lerne Steuereintreiben TREIBE
Behandelndes Skript: studyComplex(Region)



(Zum Thread-Anfang)
Zuletzt geändert von nemo am Di 7. Mär 2017, 16:08, insgesamt 1-mal geändert.
I may go pop -- Excuse me!

Benutzeravatar
nemo
Heerführer
Beiträge: 232
Registriert: Mi 25. Feb 2015, 12:06

+rek

Beitrag von nemo » Di 7. Mär 2017, 15:14

// +rek [(x)] [, (y)]
Defaults:
-x:
--Für Regionen mit weniger als 4000 Arbeitsplätzen 101% der AP minus einer Person.
--Für Regionen ab 4000 AP 100,5% der AP.
-y = Arbeitsplätze / 10
Als Submeta verwendbar. (aber keine Ahnung, ob das sinnvoll ist)
Unterstützt keine subMetas.
(x) und (y) sind natürliche Zahlen.
(x): Mindestzahl der Bauern, die in der Region verbleiben sollen.
(y): hat die Einheit weniger als (y) Personen, wird sie bestätigt, sonst unbestätigt.
Um (x) und (y) unabhängig voneinander setzen zu können, muss (y) links von sich ein Komma , stehen haben (auch und gerade, wenn kein (x) angegeben ist).
Setzt voraus: Silber in der Region zum rekrutieren und versorgen.
Sonst: passiert nichts.
Tut: Hat die Region mehr als (x) Bauern und ist genügend Silber vorhanden, wird rekrutiert. Dabei wird nicht die reine Differenz genommen, sondern
1. darauf geachtet, dass nicht versucht wird, mehr zu rekrutieren, als geht;
2. bei mehr als 100 Rekruten das nächst kleinere ganzzahlige Vielfache von 100 rekrutiert;
2.a) bei weniger als 101 und mehr als 50 Rekruten das nächst kleinere ganzzahlige Vielfache von 10 rekrutiert.
Rekrutierungskosten und Unterhalt für eine Runde für die Rekruten werden vom Rekruter aus eingezogen. Zuerst wird dabei nach dediziertem Silberlager (+sLag) gesucht, wenn keins vorhanden, auf +lager ausgewichen, wenn keins vorhanden ist, von allen anderen Einheiten in der Region zusammen gesammelt.
Sollte durch das Rekrutieren der Talentwert in Tarnung unter 1 fallen, wird dies von der automatischen Tarnauslösung berücksichtigt.
Bsp.: // +rek 9000, 200
Behandelndes Skript: regulator(Unit,Region)



(Zum Thread-Anfang)
Zuletzt geändert von nemo am Di 14. Mär 2017, 19:20, insgesamt 2-mal geändert.
I may go pop -- Excuse me!

Benutzeravatar
nemo
Heerführer
Beiträge: 232
Registriert: Mi 25. Feb 2015, 12:06

Lager-Metas

Beitrag von nemo » Di 7. Mär 2017, 15:15

~die Folgenden Metas sind weder als subMetas geeignet, noch unterstüzen sie welche (teilweise *noch*)~

// +lager
Tut: Die Einheit betätigt sich als Allround-Lager und nimmt sämtliche Lager-Funktionen wahr, die sonst nicht in der Region vertreten sind (s.u.).
ACHTUNG: Sonderfall Luxusgüter. Für diese wird nur auf das Stichwort HANDEL und seit Anfang April 17 optional das Lager-Meta +hLag geachtet. Taucht dieses in den Befehlen einer Einheit auf, Zieht sie alle Luxusgüter von allen eigenen Einheiten in der Region ein. Soll also jemand anders als ein Händler sie einsammeln, ist dies am besten in einen dauerhaften Kommentar zu setzen (und die "handel"-Befehle beim Händler klein zu schreiben).
Behandelndes Skript: lager(Unit)

// +sLag
Tut: Lagert Silber ein (sammelt von allen eigenen Einheiten in der Region) und Verteilt Unterhalt an alle Parteieigenen Einheiten in der Region. Berücksichtigt werden Gebäudekosten, Kriegselefanten und LERNE Taktik (LERNE Magie nicht). Hilft u.a., zu vermeiden, dass jemand sich seinen Gebäudeunterhalt beim Taktiker „borgt“ :roll: .
Behandelndes Skript: sLager(Unit)

// +nLag
Setzt voraus: +nkw
Sonst: Passiert nichts.
Tut: Sammelt Nahkampfwaffen von Waffenschmieden (+nkw) ein: Schwerter, Speere, Streitäxte, Kriegselefanten und Kriegshämmer.
Behandelndes Skript: nLager(Unit)

// +fLag
Setzt voraus: +bogner, +wagner
Sonst: Passiert nichts.
Tut: Sammelt Fernkampfwaffen (Armbrüste, Bögen, Katapulte) von Bognern und Wagenbauern ein.
Behandelndes Skript: fLager(Unit)

// +mLag
Tut: Sammelt Baumaterial (Eisen, Stein, Holz, Gold) von allen Einheiten in der Region ein. Gibt Baumaterial an Einheiten mit Reservierungs-Meta (s.u.) heraus.
Behandelndes Skript: mLager(Unit)

// +rLag
Setzt voraus: +ruestung
Sonst: Passiert nichts.
Tut: Sammelt Rüstungsteile von Rüstungsbauern ein: Kettenhemd, Plattenpanzer, Holzschild, Eisenschild, Elefantenpanzer. Gibt Elefantenpanzer an Waffenschmiede mit +nkw und Waffenbau >=5.
Behandelndes Skript: rLager(Unit)

// +tLag
Setzt voraus: +herde
Sonst: Passiert nicht viel.
Tut: Sammelt Transportmittel (Pferde, Kamele, Pegasi, Elefanten, Mastodonten, Alpakas, Zotten) von Einheiten mit +herde ein. Sammelt Wagen von Einheiten mit +wagner ein. Sammelt Greifeneier von allen Einheiten in der Region ein. Gibt Elefanten an Einheiten mit +nkw und Waffenbau >= 5.
Behandelndes Skript: tLager(Unit)

// +hLag
Nicht als Submeta geeignet.
Gibt keine Submetas weiter.
Setzt voraus: Nichts.
Tut: Durchsucht alle parteieigenen Einheiten in der Region nach Luxusgütern und sammelt diese ein.
Behandelndes Skript: handel(Unit)

(Zum Thread-Anfang)
Zuletzt geändert von nemo am So 9. Apr 2017, 14:19, insgesamt 2-mal geändert.
I may go pop -- Excuse me!

Benutzeravatar
nemo
Heerführer
Beiträge: 232
Registriert: Mi 25. Feb 2015, 12:06

Reservierungs-Metas

Beitrag von nemo » Di 7. Mär 2017, 15:16

[Folgen die Reservierungen für MACHE: Sind je Rohstoff so ausgelegt, dass das Maximum der durch Talent*Personen Punkte bedient wird. Hat das Lager nicht genug dafür, wird GIB nicht gesetzt. Die Reservierungsmetas wirken kummulativ. Heißt: Hat eine Einheit mehrere verschiedene, bekommt sie ihre Materialzuteilung je Reservierungsmeta, also etwa mit +nkw und +ruestung erst Holz für alle Speere, die sie bauen kann, Steine und Eisen für alle Kriegshämmer, die sie bauen kann, und dann nochmal Holz für alle Holzschilde, die sie bauen kann und Eisen für alle Plattenpanzer/Eisenschilde, die sie bauen kann. Andererseits: Bei der Zuteilung wird schon vorhandenes Material berücksichtigt und die Einheit also nicht endlos vollgestopft.
Rohstoffersparnis durch Gebäude wird berücksichtigt. Sollte die Einheit von etwas mehr haben, als sie in einer Runde verbauen kann, wird die entsprechende Menge an +mLag zurück gegeben.
Codeseitig gesehen sind die Reservierungs-Metas lediglich Tokens für die LAger-Skripte.
]

// +ruestung
Lagerzugriff abhängig von: Rüstungsbau
Setzt voraus: +mLag
Sonst: Passiert nichts.
Tut: Bekommt Eisen von +mLag. Gibt Rüstungsteile an +rLag ab.
Behandelndes Skript: rLager(unit), mLager(Unit)

// +nkw
Lagerzugriff abhängig von: Waffenbau
Setzt voraus: +mLag
Sonst: Passiert nichts.
Tut: Bekommt Eisen, Stein und Holz von +mLag. Bekommt Elefanten von +tLag. Bekommt Elefantenpanzer von +rLag. Gibt Nahkampfwaffen an +nLag ab.
Behandelndes Skript: mLager(Unit), tLager(Unit), rLager(Unit)

// +bogner
Lagerzugriff abhängig von: Bogenbau
Setzt voraus: +mLag
Sonst: Passiert nichts.
Tut: Einheit erhält Holz von +mLag. Einheit gibt Bögen und Armbrüste an +fLag ab.
Behandelndes Skript: +mLager(Unit), +fLager(Unit)

// +wagner
Lagerzugriff abhängig von: Wagenbau
Setzt voraus: +mLag
Sonst: Passiert nichts.
Tut: Einheit erhält Holz von +mLag. Einheit gibt Wägen an +tLag und Katapulte an +fLag ab.
Behandelndes Skript: mLager(Unit), tLager(Unit), fLager(Unit)

// +reeder
Lagerzugriff abhängig von: Schiffbau
Setzt voraus: +mLag
Sonst: Passiert nichts.
Tut: Einheit erählt Holz von +mLag.
Behandelndes Skript: mLager(Unit)



(Zum Thread-Anfang)
Zuletzt geändert von nemo am Di 7. Mär 2017, 16:08, insgesamt 1-mal geändert.
I may go pop -- Excuse me!

Benutzeravatar
nemo
Heerführer
Beiträge: 232
Registriert: Mi 25. Feb 2015, 12:06

+bewache

Beitrag von nemo » Di 7. Mär 2017, 15:16

// +bewache
Setzt voraus: Einheit muss bewaffnet sein und das zugehörige Waffentalent beherrschen.
Sonst: Erfolgloses BEWACHE
Tut: Verhindert, dass die Einheit durch die automatische Tarnauslösung angesprochen wird und gibt ihr den kurzen Befehl BEWACHE.
Behandelndes Skript: autarn(Unit)
Hintergrund: autarn(Unit) tut zwei Dinge: Einheiten mit Tarnung >= 1, die im Freien stehen, bekommen TARNE Einheit gesetzt und melden in einem Temporären Kommentar, ob und wenn ja, als welche Partei sie getarnt sind. Da BEWACHE aufhebend auf TARNE Einheit wirkt (was mich direkt in einen Krieg geführt hat), muss man sich je Einheit entscheiden, ob sie die Region bewachen oder sich verstecken soll. Eine Lösung die TARNE Einheit ohne BEWACHE unterdrückt, wird auf Wunsch bereit gestellt.



(Zum Thread-Anfang)
Zuletzt geändert von nemo am Di 14. Mär 2017, 19:23, insgesamt 2-mal geändert.
I may go pop -- Excuse me!

Benutzeravatar
nemo
Heerführer
Beiträge: 232
Registriert: Mi 25. Feb 2015, 12:06

+gib

Beitrag von nemo » Di 7. Mär 2017, 15:16

// +gib (Einheit-Nr) [(Anzahl)] (Item) [ [(Anzahl1)] (Item1) [(Anzahl2)] (Item2) …]
Ist als subMeta geeignet.
Unterstützt keine subMetas.
Tut: Wenn die Zieleinheit in der Region ist, wird GIB gesetzt. Ist keine Anzahl angegeben oder hat die Einheit weniger, als angegeben, werden alle Exemplare des Items übergeben, die vorhanden sind. Pro Zieleinheit eine Zeile.
Bsp.: // +gib abc 3 Schwert 17 Silber 999 Blumen Plattenpanzer
Behandelndes Skript: gib(Unit)



(Zum Thread-Anfang)
I may go pop -- Excuse me!

Gesperrt

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast