Pflanzenplugin - Was braucht es?

  • Servus erstmal ^^


    Ich fang gerade an ein Pflanzen-Plugin zu schreiben, welches Denkbar simpel sein soll. Nachdem ich eher weniger Farm-Spiele spiele bin ich in diesem Thema nicht so fit, daher meine Frage an euch:

    Was wünscht ihr euch von so einem Plugin?


    Meine Bisherige Planung dazu:

    Bei den Plugin-Optionen werden die Pflanzen eingestellt, bzw. welche Pflanzen es gibt.

    Um bei der Map ein Event zu einer Pflanze zu machen, muss nur der Name des Event's sein "Plant(X)" wobei X gleich der ID der Pflanze sein muss. Somit wäre es vermutlich denkbar einfach Pflanzen zu erstellen =O

    Bezüglich dem Ansprechen/interagieren mit der Pflanze: Hierfür wird für jeden Wachstumstag ein Common Event ausgewählt, welches gestartet werden soll, wenn man es triggert. Bezüglich ernten bin ich noch am überlegen :/

  • Mega coole Idee :) :thumbup:

    Ob ich es selbst brauchen würde, weiß ich nicht. Mein Pflanzsystem in Pengu Village steht ja soweit. Aber grundsätzlich würde es meiner Meinung nach brauchen:

    - verschiedene Pflanzensorten (hast du scheinbar schon)

    - verschiedene Wachstumsphasen (Setzling, Pflanze, reif, etc)

    - ob es gegossen wurde oder nicht, natürlich kann die Pflanze nur wachsen wenn sie auch Wasser bekommt

    - wenn die Pflanze reif ist, kann man sie ernten

    - nach der Ernte verschwindet die Pflanze entweder oder sie bleibt da und wird nach X Tagen erneut reif

    - verschiedene Events können ein Verdorren der Pflanze auslösen (zu lange nicht gegossen, Jahreszeitenwechsel, ect)

    - verschieden lange Wachstumsphasen (Pflanze A braucht 2 Tage vom Setzling zur Pflanze und 3 Tage von der Pflanze bis zur Reife, Pflanze B braucht 3 Tage ect...)

    - verschiedene Pflanzen geben unterschiedlich Ertrag (bei einer Erdbeere kann ich 2 Stück auf einmal ernten, bei einem Maiskolben nur einen)


    Das wären so meine Gedanken :) Was du davon umsetzen kannst/möchtest, bleibt natürlich dir überlassen :)


    PS: Was auch noch geht: Dünger. Wenn der Boden gedüngt wurde, wächst die Pflanze schneller oder gibt mehr Ertrag.

  • Maybe noch zufällig unterschiedliche Seltenheitsgrade pro Pflanze. Was noch cool wäre wenn man irgendwie abfragen könnte, ob die pflanze auf den richtigen untergrund gepflanzt ist.

    Rasaks Pixelhölle: Diverse Charactersprites, Tilesets und Battler für den RPG Maker MV und MZ. Unsere Spezialität: Monster!

    Rasaks Pixelhölle (Forum) | Rasaks Pixelhölle

    -----------------------------------------------------------------------------------------------------------------------------------------------------

    Projekte: Frostfate(Platz 2 Winter Jam), Shadow of Light (Pausiert weil wegen schlecht), Hunter of Falkenberg (Sleipnir Dreamware-Projekt)

    -----------------------------------------------------------------------------------------------------------------------------------------------------

  • - verschiedene Pflanzensorten (hast du scheinbar schon)

    - verschiedene Wachstumsphasen (Setzling, Pflanze, reif, etc)

    Ist in den Plugin Optionen bereits einstellbar



    - ob es gegossen wurde oder nicht, natürlich kann die Pflanze nur wachsen wenn sie auch Wasser bekommt

    Daran habe ich auch schon gedacht - Meine Überlegung ist A) Nur wachsen wenn gegossen B) Wenn gegossen +2 Tage :/



    - wenn die Pflanze reif ist, kann man sie ernten

    - nach der Ernte verschwindet die Pflanze entweder oder sie bleibt da und wird nach X Tagen erneut reif

    Das ist ein Thema, welches mir noch Kopfzerbrechen bereitet - Am Ende des Pflanzenlebens wird die Pflanze auf "Bad Plant" in den Plugin Einstellungen gesetzt


    - verschiedene Events können ein Verdorren der Pflanze auslösen (zu lange nicht gegossen, Jahreszeitenwechsel, ect)

    Sehr geniale Idee :love:



    - verschieden lange Wachstumsphasen (Pflanze A braucht 2 Tage vom Setzling zur Pflanze und 3 Tage von der Pflanze bis zur Reife, Pflanze B braucht 3 Tage ect...)

    Bereits drin :)


    - verschiedene Pflanzen geben unterschiedlich Ertrag (bei einer Erdbeere kann ich 2 Stück auf einmal ernten, bei einem Maiskolben nur einen)

    Nachdem beim "Erntestadium" ein Common Event getriggert wird kann man es pro Pflanze individuell einstellen - Eventuell auch per Zufall~ Ist ja dann simples Eventing ^^


    PS: Was auch noch geht: Dünger. Wenn der Boden gedüngt wurde, wächst die Pflanze schneller oder gibt mehr Ertrag.

    Schneller könnte schwierig werden, andere Dünger um den Ertrag zu steigern könnte man via Common-Events bzw. den Self-Switches einstellen :)



    Maybe noch zufällig unterschiedliche Seltenheitsgrade pro Pflanze.

    Seltenheitsgrade Pro Pflanze baue ich nicht in das Plugin ein, ich finde, dass die Samenseltenheit durch den Anwender einstellbar sein soll und dies geht gut über normale Maker-Funktionen



    Was noch cool wäre wenn man irgendwie abfragen könnte, ob die pflanze auf den richtigen untergrund gepflanzt ist.

    Das ist jedenfalls eine gute Idee :love: Nur (noch) kein Plan wie ich das realisieren kann


    Danke euch schon mal auf jeden Fall ^^

  • Ich bin ein Farm-Sim Profi.
    Ich hab sehr sehr seeeeehr viele davon gespielt.

    Da du sagst es macht dir Kopfzerbrechen ob die Pflanzen nachwachsen sollen oder nicht.
    In den meisten Spielen ist das unterschiedlich.
    Rüben und Kartoffeln wachsen beispielsweise oft nicht nach.
    Erdbeeren, Weintrauben und Gurken wie Tomaten wachsen dafür nach.

    Ich glaub das muss jedes Spiel so n bisschen für sich entscheiden :D

    Bis jetzt sieht das doch gut aus ^^
    Ich mags auch wenn die Pflanze nach und nach verdorrt wenn man sie nicht gießt.
    Nicht sofort sobald man es einmal vergisst, aber am 2. Tag kann sie dann schon tot sein.

  • Das sieht doch schon wirklich großartig aus, ich freu mich auf das Plugin :)


    Viele Dinge sollte das Spiel selbst entscheiden können.


    So wie das:


    Da du sagst es macht dir Kopfzerbrechen ob die Pflanzen nachwachsen sollen oder nicht.
    In den meisten Spielen ist das unterschiedlich.
    Rüben und Kartoffeln wachsen beispielsweise oft nicht nach.
    Erdbeeren, Weintrauben und Gurken wie Tomaten wachsen dafür nach.

    Aber das auch:


    Ich mags auch wenn die Pflanze nach und nach verdorrt wenn man sie nicht gießt.
    Nicht sofort sobald man es einmal vergisst, aber am 2. Tag kann sie dann schon tot sein.

    Sollte im Plugin oder im CE irgendwo einstellbar sein, weil nicht jeder das will oder braucht.

  • Erstmal großes Danke für das viele Feedback :D


    Was hab ich gerade eingebaut:


    Weitere Überlegungen:

    • Welche Faktoren könnten noch zu einem Verdorren führen?
    • Wie könnte man Dünger einbauen - ohne Selbstschalter zu verwenden / evtl für einen Wachstumsschub -> Daher: Was für Dünger könnte es geben?


    PS: Der Code ist bislang kürzer als erwartet, lediglich ca. 350 Zeilen =O

  • Hab mir grad überlegt, dass Dünger noch cool wäre.
    Dünger könnte es natürlich geben damit die Pflanze schneller wächst.
    Um deine 1. Frage aufzugreifen könnte es auch schwierigere Pflanzen geben (Keine Ahnung, Ananas oder so) die ohne Dünger gar nicht wachsen und nach der Zeit verdorren.
    Es könnte Dünger geben, dass die Pflanzen weniger Wasser brauchen :)

  • Dünger könnte es natürlich geben damit die Pflanze schneller wächst.

    Reinzucoden theoretisch einfach, nur es könnte sein, dass er dann den Erntetag überspringt - Daher könnte es schwierig sein


    Es könnte Dünger geben, dass die Pflanzen weniger Wasser brauchen

    Das wäre theoretisch easy ^^ - Dafür müsste ich nur ein Eintrag für das Objekt hinzufügen und bei der Objektbedingung für das Wasser einfach mit Überprüfen ob das Objekt diesen Eintrag hat (per OR-Logik)


    Um deine 1. Frage aufzugreifen könnte es auch schwierigere Pflanzen geben (Keine Ahnung, Ananas oder so) die ohne Dünger gar nicht wachsen und nach der Zeit verdorren.

    Das könnte seeehr kompliziert werden, spontan habe ich da keine Idee wie ich das Eincoden könnte ohne dass es für den Entwickler bei der Einstellung ausufernd wird


    ~~~~~~~~~~~~~~~~~~~~~

    Allgemein kann man noch sagen - Dünger die die Qualität oder die Menge der Ernte erhöhen könnte man easy per Self-Switches machen, wenn ich es jedoch fest Eincode würde ich gleichzeitig für den Entwickler eventuell Probleme erzeugen.

    Ein weiteres Problem ist das Thema Grafik: Wie wird es visuell dargestellt welcher Dünger da drauf ist, eventuell könnte man die IDs von einen CharSheet nehmen, dadurch wäre man aber auch Limitiert auf 7 Dünger (0= Grundtyp + 7 weitere offen) :/

  • Weitere Überlegungen:

    • Welche Faktoren könnten noch zu einem Verdorren führen?
    • Wie könnte man Dünger einbauen - ohne Selbstschalter zu verwenden / evtl für einen Wachstumsschub -> Daher: Was für Dünger könnte es geben?

    Ich greife als Beispiel einfach mal Stardew Valley auf.

    Verdorren:

    Außer das bereits angesprochene Nicht-Gießen oder ein Jahreszeitenwechsel kann es auch zufällige Events geben, die dazu führen. In Stardew braucht man eine Vogelscheuche, die bestimmte Bereiche abdeckt. Habe ich die nicht oder pflanze ich etwas außerhalb des Bereichs, kommt eine Krähe und frisst den Setzling -> folglich verdorrt. Dieses Event findet zufällig statt und trifft vereinzelte Pflanzen.


    Dünger:

    - Pflanze wächst schneller

    - Pflanze liefert mehr Ertrag

    - Die Seltenheit der Pflanze wird gesteigert (damit kenne ich mich aber nicht aus)

    - das Feld hat eine Chance, auch am nächsten Tag noch gewässert zu sein (auch aus Stardew)


    Spieler-Fähigkeiten (Skills, Perks) könnten ähnliche Effekte haben wie Dünger.

  • So folgende Dünger sind nun drin:

    Dünger-ID
    WirkungHinweis
    0Normale Erde
    1HydrationMan braucht nicht zu gießen
    2AccelerationWachstumsrate x2
    3Rare-BonusErhöht die Wahrscheinlichkeit des Rare-Drops¹
    4Amount-BonusMultipliziert die Dropanzahl²
    5- Noch offen -
    6- Noch offen -
    7- Noch offen -


    ¹ = Die Rare-Drop Wahrscheinlichkeit setzt sich aus folgende Bestandteile zusammen:

    • Basis-Chance
    • Variable [Welche Einstellbar] -> somit könnte man dies als Spielerskill verwenden
    • Dünger Bonus

    ² = Die Dropanzahl wird pro Pflanze inividuell eingestellt (zwischen Min und Max). Zum Ernten kann man "FiremasterGarden.Collect()" (kein erhalt vom Drop) oder "FiremasterGarden.Harvest()" verwenden. Außerdem, wenn man Harvest verwendet kann man bei Textfeldern "\DA" verwenden und es wird die Anzahl ausgegeben wie viel man erhalten hat. (Hab ich eingebaut weil ich dachte, der eine oder andere freut sich über so ein Feature)


    Noch ein Hinweis zur Dropanzahl, weil ich es so "realistischer" fand: Welche Qualität wird pro Drop einzeln ausgerechnet, somit kann man z.B. 3 normale Tomaten und 1 gute Tomate bekommen oder so :P


    3 Dünger sind noch offen - was kann da rein?

  • Also ich arbeite fleißig an dem Plugin weiter und habe es mittlerweile ordentlich ausgebaut, sodass nun auch ein Core mit dazu gekommen ist, mal eine Übersicht zum Stand der Dinge:

    - Core Datei: Bereitet schlicht für die anderen Plugins die EInträge vor

    - Firemaster_Garden: Das Farming, wie oben beschrieben^^

    - Firemaster_Grow: Damit lassen sich zum Beispiel Wild-Beerenbüsche erstellen oder Erze - Sprich: Ressourcen die Nachwachsen, abhängig pro "Time"

    - Firemaster_Fish: Damit lassen sich Fische erstellen, die wirklich nur im Wasser schwimmen (ohne komplexes Coding), dazu ist noch eine Zufallsvarianz Auto drin Pro "Time"


    Noch kurz zu "Time": Ist schlicht eine Variable, man kann z.B. einen 4er Split für Jahreszeiten verwenden oder halt 12 Monate :/ Vllt erstellt jemand auch für jeden Tag eine eigene Liste - Wäre wohl zu viel Arbeit, wäre aber schlicht möglich


    Nunja, was ist noch dazu geplant:

    - Firemaster_Butterfly: Ähnlich wie Fische, nur die Schmetterlinge sollen sich frei bewegen können, aber auch über den Spieler fliegen können und gleichzeitig Ansprechbar bleiben

    - FIremaster_Light: Man soll damit einfach ein Lichtradius zu Events hinzufügen können ^^ Noch kein Plan ob es so klappt wie ich es mir vorstelle, freu mich aber schon das zu Coden xD

    - Firemaster_Mob (nur vielleicht): Einfach ein Kampfsystem auf der Karte, welches Easy zu Händeln sein soll. Mal schauen ob es klappt xD


    Noch Ideen, was noch cool und praktisch wäre?

  • - Firemaster_Fish: Damit lassen sich Fische erstellen

    Oh, hier fängt es aber wieder an, interessant zu werden 8)

    Fisch ist ja nicht gleich Fisch. Jeder Fisch hat unterschiedliche Anforderungen an seinen Lebensraum, sprich unterschiedliche Spawn-Bedingungen.

    - Wetter (manche Fische mögen Regen, manche Sonne, ect)

    - Tageszeit (manche Fische sind nachtaktiv, manche nur früh am Vormittag, ect)

    - Jahreszeit (manche Fische sind nur im Frühling, Sommer, usw da)

    - Köder (versteht sich von selbst)

    - und natürlich auch wieder der Skill des Spielers, ihn zu fangen

  • - Wetter (manche Fische mögen Regen, manche Sonne, ect)

    Ist tatsächlich noch nicht drin :/


    - Tageszeit (manche Fische sind nachtaktiv, manche nur früh am Vormittag, ect)

    - Jahreszeit (manche Fische sind nur im Frühling, Sommer, usw da)

    Ist schon drin ;)



    - Köder (versteht sich von selbst)

    - und natürlich auch wieder der Skill des Spielers, ihn zu fangen

    Könnte man per Event eintragen, der Plugin regelt lediglich das ein Event basierend aus einer Liste gespawnt wird und zum Fangen könnte man das dann per Event erstellen, mal als Beispiel:
    Variable = Zufall 1 - 10
    Variable += Köder-Boni
    Variable += Spieler Skill
    Bedingung, Variable über 5 = Gefangen

  • Zum Fischen: Verschiedene Gewässer schon drin?
    Neben Süß- und Salzwasser könnte man so zum beispiel auch Fliegende Fische im Wolkenmeer, Höhlenfische oder Sandfische im Treibsand machen, oder sogar in Lava fischen, wenn man die Gewässer differenzieren kann

    Rasaks Pixelhölle: Diverse Charactersprites, Tilesets und Battler für den RPG Maker MV und MZ. Unsere Spezialität: Monster!

    Rasaks Pixelhölle (Forum) | Rasaks Pixelhölle

    -----------------------------------------------------------------------------------------------------------------------------------------------------

    Projekte: Frostfate(Platz 2 Winter Jam), Shadow of Light (Pausiert weil wegen schlecht), Hunter of Falkenberg (Sleipnir Dreamware-Projekt)

    -----------------------------------------------------------------------------------------------------------------------------------------------------

  • Super Idee für ein Super Plugin.

    Wenn ich hier lese Fische, wie ist der Boden beschaffen und ähnliches, fällt mir noch der Regenwurm ein.

    Hier gibt es nämlich wunderbar, selbst erstellte Char Sets von Würmern und Konsorten :)


    Das ließe sich super miteinander kombinieren.


    Gruß

    Bon Appetit :whistling:                                                                             :evil: V

    Der Geier



    1615-vulture-challenge-100worte-png 2435-vulture-challenge-glueckseligkeit-png                                              i_RMMZ i_RMMV i_RMVXAce i_RMXP i_RM2k3

    Einmal editiert, zuletzt von Vulture ()

  • Hi,


    das liest sich ja alles sehr gut! :) Das klingt wirklich nach einem sehr guten Plugin bzw. einer top Plugin-Liste zum Erstellen von Farm-Sims! Das behalte ich definitiv im Auge und ich hoffe du kommst gut voran! Wenn ich irgendetwas testen kann, sag bitte bescheid :D

    Ich hätte hierzu noch eine Idee beizusteuern, wobei das vielleicht auch too much ist.

    Weitere Überlegungen:

    Welche Faktoren könnten noch zu einem Verdorren führen?
    Wie könnte man Dünger einbauen - ohne Selbstschalter zu verwenden / evtl für einen Wachstumsschub -> Daher: Was für Dünger könnte es geben?

    Einen Befehl, um herauszubekommen, welche anderen Pflanzen-IDs in einem variablen Wutzelbereich einer Pflanze wachsen und welche Wachstumsstufe diese erreicht haben.


    Daraus könnte man dann sowas eventen, oder vielleicht auch direkt einbinden:


    Manche Pflanzen vertragen die Anwesenheit anderer Pflanzen nicht. Werden entsprechende Pflanzen in einem Wirk-Radius / Wurzelbereich (pro Pflanze und Wachstumsstufe einstellbar) in die Nähe gepflanzt (oder wachsen dort [Büsche, Bäume, Unkraut]), verdorrt die Pflanze nach n Tagen. Die Anzahl der Tage und der Wurzelbereich einer Pflanze kann sich je nach Wachstumsphase unterscheiden.


    Samen von Pflanze 15 könnten einen Wurzelbereich von 1 haben und somit neben einer anderen Pflanze, gegen die sie schwach ist - Pflanze 18, nicht keimen. Die Samen (Wachstumsstufe 1) wachsen einfach nicht oder verdorren nach n Tagen. Samen von Pflanze 16 sind auch schwach gegen Pflanze 18, aber ihre Samen haben einen Wirkbereich von 0. Dann würde der Samen keimen aber zum Beispiel auf Wachstumsphase 1 mit Wurzelbereich 1 Probleme bekommen.


    Wenn die Pflanze mit der Schwäche bereits Wachstumsstufe 4/5 oder so erreicht hat, braucht es mehrere Tage bis die Pflanze verdorrt. Vielleicht bekommt sie nur Probleme wenn ihre Schwäche-Pflanze eine gewisse Wachstumsstufe erreicht und vorher nicht... Wer dann gaaaanz effizient farmen will würde schon bevor er die letzte Ernte von Pflanze 1 einfährt in der Nähe Pflanze 2 pflanzen.


    Pflanzen (und spawnende Büsche und Bäumchen, Unkraut,...), können als "aggressiv" eingestellt werden. Sie selbst verdorren nicht, während Pflanzen mit ID x um sie herum innerhalb von n Tagen verdorren. Aggressiven Pflanzen kann man einen eigenen Wurzelbereich mitgeben.


    Hierbei kann ID x natürlich eine einzelne Pflanzen-ID sein, eine Liste von Pflanzen-IDs oder alle anderen Pflanzen-IDs.


    Das könnte dann für verschiedene Unkraut-Sorten verwendbar sein, oder wenn man in dem Spiel auch nur begrenzt Platz zum Pflanzen hat (zum Beispiel in einem Gewächshaus), die Gartengestaltung etwas herausfordernder gestalten, wenn man unterschiedliche Pflanzen pflanzen will, von denen manche eine Schwäche vor den anderen haben.


    Auf der Anderen Seite könnte man damit auch Pflanzen-Synergien erzeugen. Pflanze A wächst besser, wenn Pflanze B in der Nähe wächst, oder dergleichen. Pflanze B hat wiederum ein Problem damit, wenn Pflanze A die 4. Wachstumsphase erreicht und verdorrt dann oder so, sodass Pflanze A schneller durch die ersten Wachstumsphasen kommen kann, wobei Pflanze B eigentlich nur den Zweck hatte dies zu ermöglichen und selbst nicht geerntet wird / geerntet werden kann.


    Daraus könnte man auf weitere Dünger-Sorten kommen:

    5. Hier könnte dann noch ein Dünger rein, der Pflanzen für eine Dünger-Wirkdauer von n Tagen gegen Pflanzen zu denen sie eine Schwäche haben und die sich in ihrem Wurzelbereich befinden schützt, sodass die Pflanzen trotzdem wachsen und nicht verdorren. Schützt nicht vor aggressiven Pflanzen.


    6. Schützt vor aggressiven Pflanzen


    7. Schützt vor Schwächen und aggressiven Pflanzen


    Wäre zumindest noch eine Idee. Ob sich der Aufwand lohnt, musst du bewerten.^^



    Die Anleitung
    Bzgl. der Anleitung würde ich nur vorschlagen zu jedem Eintrag einen knappen Text zu schreiben, auch wenn die Benamung offensichtlich ist und vieles schon aus den Bildern hervorgeht. Zusätzlich dazu würde ich eine Schritt für Schritt Anleitung am Beispiel von 3 unterschiedlichen Pflanzen machen.
    Eine Pflanze könnte zum Beispiel kein Wasser benötigen, die andere muss jeden Tag gegossen werden, sonst verdorrt sie, eine andere braucht nur alle 2 Tage gegossen werden. Alle haben eine unterschiedliche Wachstumsdauer, verschiedene Phasen, etc.


    Lichtlevel?
    Noch eine ganz andere Idee: Wie sieht das aus mit dem Firemaster_Light Addon? Du schreibst von Grundfunktionen. Ist es realistisch, da eventuell auch sowas wie Lichtlevel zu implementieren? Also zb. näher an der Lichtquelle = Höheres Lichtlevel = Pflanze wächst schneller? Zumindest für spezielle Lichtquellen und nicht die um den Spieler herum? Zum Beispel könnte der Spieler unterschiedliche Lichtquellen (Künstliche Beleuchtung) für unterschiedliche Pflanzen aufstellen. Zum Beispiel für ein Gewächshaus, sodass man auch Sommerpflanzen im Winter aufziehen kann, die sonst im Gewächshaus langsamer wachsen würden, weil sie zu wenig Licht bekommen... Wäre halt NOCH eine Dimension. Vielleicht etwas für die Zukunft oder auch einfach durch ein Gewächshaus-Upgrade per Event umzusetzen oder so... Oder halt gar nicht.

    So wie dein Plugin jetzt ist würde es wohl die allermeisten Erwartungen an ein Farming-Sim Plugin erfüllen. Ich behalte das hier definitiv im Auge! Wenn man was testen kann oder so, gib gerne bescheid. ^^

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!