MapBuyableObjects

    MapBuyableObjects

    Nun auch für alle...die Teammitglieder kennen das Projekt schon seit dem Gedanken...Start des ganzen Projektes war mitte Dezember.



    präsentiert


    Map Buyable Objects :thumbsup:


    Hi,
    Wie der Name schon erahnen läßt handelt es sich bei diesem Mod um einen Mod mit dem man zusätzliche Objekte auf einer Map kaufen kann. Die Einstellungen werden alle im GE bzw einer zusätzlichen XML Datei gemacht.

    Funktionen:

    • Man kann Objekte kaufen und gleichzeitig andere verkaufen. Auch nur ein Verkauf ist möglich. Je nachdem wie es der Mapper einbaut.
    • Frei einstellbare Texte, die aus einer XML geladen werden.
    • Speicherung des Status, ob das Objekt bereits gekauft/verkauft wurde.


    Es gibt 2 Skripte innerhalb des Mods, einmal das Skript was für das kaufen/verkaufen zuständig ist und ein 2. welches einen Icon setzt, ähnlich den Standart Helpicons. Nur sind diese hier mit einem € Zeichen versehen.


    Skript und Funktionen der MapBuyableObjects: 60%

    Features der MapBuyableObjects:

    PHP-Quellcode

    1. <UserAttribute nodeId="XXXX">
    2. <Attribute name="Buy_Objects" type="string" value="XX"/>
    3. <Attribute name="Buy_Triggers" type="string" value="XX"/>
    4. <Attribute name="Delete_Objects" type="string" value="XX"/>
    5. <Attribute name="Delete_Triggers" type="string" value=""/>
    6. <Attribute name="Object_Ident_Icon" type="integer" value="1"/>
    7. <Attribute name="SoundFile" type="string" value=""/>
    8. <Attribute name="Sound_Allowed" type="boolean" value="false"/>
    9. <Attribute name="Sound_is_01" type="boolean" value="false"/>
    10. <Attribute name="Sound_is_02" type="boolean" value="false"/>
    11. <Attribute name="Sound_is_03" type="boolean" value="true"/>
    12. <Attribute name="TextName" type="string" value="MapBuyableObject01"/>
    13. <Attribute name="onCreate" type="scriptCallback" value="MapBuyableObject.onCreateBuyableObject"/>
    14. <Attribute name="xmlFilePath" type="string" value="SampleModMap/map/buyable/buyableHelpText.xml"/>
    15. </UserAttribute>


    • Buy_Objects:: Gibt den Index an zum Objekt welches gekauft werden soll
    • Buy_Triggers: Gibt den Index zu einem Trigger an, wenn ein Trigger gekauft werden soll.
    • Delete_Objects: Gibt den Index an zu dem Object welches beim kaufen, verkauft werden soll.
    • Delete_Triggers: Gibt den Index zu einem Trigger an, der verkauft werden soll, wenn ein Trigger verkauft werden soll.
    • Object_Ident_Icon: Identifiziert den Icon der zum Trigger gehört, welcher dann verschwinden soll, wenn man ein Objekt gekauft hat.
    • SoundFile: dort kann ein freier Sound angegeben werden, der Pfad zum Sound bezieht sich auf den Namen der Map.zip im Mods Ordner (SampleModMap/map/sounds/waterfall.wav und der WasserfallSound ertönt)
    • Sound_Allowed: kann man anhaken, wenn beim erfolgreichen Kauf ein Sound gespielt werden soll. Hakt man es nicht an, wird kein Sound gespielt
    • Sound_is_01 Sound_is_02 Sound_is_03: Hier stehen 3 Sounds zur Auswahl, die in der Zip liegen, kann man anhaken und der jeweilige Sound wird gespielt. Dann darf kein SoundFile oben angegeben sein.
    • TextName: Identifiziert den Text in der XML, welcher beim betreten des Triggers angezeigt werden soll
    • xmlFilePath: Hier muss man den Pfad angeben, wo die XML mit den Texten liegt, auch wieder zum Namen der Map.zip im ModsOrdner




    XML Einstellungen und Auslesen der Texte: 99%


    Möglichkeiten in der XML zum Aufruf der Texte:
    Wie erwähnt werden die Texte aus einer extra XML geladen. somit seit ihr frei im Einbau, was an Texten angezeigt werden soll beim betreten des Triggers. Bei planet.ls gab es erst ein Thema wo es auch um Texte ging, dort hat bassaddict einen wichtigen Punkt angesprochen, nämlich die internationale Verständlichkeit. Sprich auch andere unterstützte Sprachen. Das geht wunderbar in der Moddesc der Map, dann müsste man das Skript aber in die Map als extraSource eintragen. Finde ich ja immer nicht so gut, wegen der versionen, wenn man eine Neue Version kommt, oder aber auch, da diese Skripte meiste einfach aus anderen Maps "ausgebaut" werden und keine richtigen DLs erfolgen. Zudem könnte so jeder am Skript rumbasteln. Wenn es dann zu Fehlern kommt wird immer schnell der Ersteller dafür "verantwortlich" gemacht.
    Aber egal, internationale verständlichkeit war der Punkt. In der XML könnt ihr 3 Sprachen angeben, Deutsch, Französisch oder Englisch. Hier geht es um die Sprache in der der LS installiert ist, dementsprechend wird der "Sprachen"text geladen. Ob ihr die texte nun komplett angebt, oder nicht, ist eure Sache, aber ich decke es so mit ab.

    In der XML werden unterschiedliche Eintragungen gemacht, zum einen die Überschrift, also z.b euer Objekt Name. Und der Text der Beschreibung. Hier könnt ihr einen kleinen FantasieText angeben, der sich auf euer neues Objekt bezieht. Dazu habe ich auch gleich im Bild mal ein paar Beispiele. Die Beschreibung wird in Zeilen angegeben, bzw die Anzahl der zeilen muss vorher definiert werden.
    Die kompletten Möglichkeiten werdet ihr dann in einer ReadMe finden.. zumindest einen Teil davon...;)!
    Beispiel eines textes:

    PHP-Quellcode

    1. <MapBuyableObject01>
    2. <de Headline ="Hof Silos">
    3. <description lines = "8"/>
    4. <line1 description = "Sie können bisher kein Getreide einlagern. "/>
    5. <line2 description = "Alles was sie abkippen wird direkt verkauft."/>
    6. <line3 description = "So haben sie keinen Einfluss auf den Gewinn. "/>
    7. <line4 description = "Sie können sich aber auch eigene Silos bauen "/>
    8. <line5 description = "lassen.Wollen sie an dieser Stelle ihre "/>
    9. <line6 description = "Hofsilos errichten? Damit sie ihre zukünftigen"/>
    10. <line7 description = "Erträge erst einmal einlagern können"/>
    11. <line8 description = "um auf höhere Preise zu warten."/>
    12. </de>
    13. </MapBuyableObject01>

    Hier kann man den angesprochenen Text aus dem GE sehen, war im Beispiel: MapBuyableObject01 dieser wird jetzt entsprechend geladen. Wie ihr diesen Namen nennt, ist im Prinzip vollkommen egal, wichtig ist nur das er im GE und der XML gleich ist. Wie das ganze dann Ingame aussehen kann, zeige ich euch an einem sehr drastischem Beispiel...:D!


    Hier handelt es sich um die gleichen Texte, lediglich in der XML wurden einige Einträge ergänzt...;)!
    Keine Angst, die Textfarbe im ersten Bild ist nicht der Standart...es ist das 2.Bild was den Standart wiederspiegelt. Sollte euch lediglich zeigen wie frei ihr in den Einstellungen sein könntet...!


    Skript und Funktionen des Icons: 80%

    Features des Icons:

    PHP-Quellcode

    1. <UserAttribute nodeId="XXXX">
    2. <Attribute name="Icon_Ident_Object" type="integer" value="1"/>
    3. <Attribute name="Icon_Jump" type="boolean" value="false"/>
    4. <Attribute name="Icon_Rotate" type="boolean" value="true"/>
    5. <Attribute name="onCreate" type="scriptCallback" value="MapBuyableObject.onCreateIcon"/>
    6. </UserAttribute>


    • Icon_Ident_Object: Identifiziert das "buyableObject" wird benötigt um den Icon unsichtbar zu schalten.
    • Icon_Jump: Kann angehakt werden, ist es angehakt dann springt der Icon, bekannt aus dem LS11
    • Icon_Rotate: Kann angehakt werden, ist es angehakt, dreht sich der Icon, wie die Standart HelpIcons auch.
    • beides kann angehakt werden, muss es aber nicht, dann steht der Icon einfach still.
    • Der Icon wird im GE als "Kind" (Untergruppe) in das buyableObject eingebaut, es ist darin ein Würfel enthalten, der aber keine Funktion hat, sondern lediglich zur platzierung dient.
      Stellt man es auf 0 0 0, ist es mittig im Trigger der MapBuyableObjects.
    • Das Skript basiert auf dem aus LS11 bekannten InfoSpotTrigger und wurde lediglich etwas umgebaut.
    • Der Icon ist im GE nicht sichtbar, und wird erst beim Laden der Map aus der Zip heraus gelesen und eingebaut.


    Hier mal ein paar Beispiele die ohne Probleme unsetzbar sind, um eure Fanstasie schonmal anzuregen wie ihr es einbauen könnt.

    • Die Brücke: Ihr könntet eure Map in 2 Teile teilen, in der Mitte ein großer Fluss, über den man nicht rüberkommt. Nun platziert ihr an einer Stelle eine Brücke, gebt den Index an(zum Kaufen) und legt einen text an.
      In Game sieht das ganze dann so aus, die Brücke ist nicht da, betritt man den Trigger, so kommt euer Text, z.b: "Wollen sie eine Brücke kaufen um auf die andere Seite des Flusses zu kommen?" Entscheidet man sich für ja, so kann der Player nun mit seinem Schlepper über die Brücke fahren um an die großen Felder zu kommen.
      Bei dem beispiel ist auch denkbar, das es am Anfang eine kaputte Brücke ist, die sichtbar ist, wenn man den Trigger betritt, so kommt der Text: "Wollen sie die Brücke reparieren lassen?"
    • Der Hof: Man hat zum Start auf der Map nur einen kleinen Hof, wo nur wenig platz ist, ausserhalb des Dorfer ist ein großer Hof aufgebaut, der nicht sichtbar ist, wenn man ihn kauft, wird er sichtbar. Es können dabei auch die Trigger neu gesetzt werden, somit kann man den Platz vorher eventuell nutzen um dort Grass zu haben (wobei das grass ja immer wächst, also wäre es hinterher überall auf dem hof sichtbar). Hat man nun den neuen Hof gekauft, kann man auf den alten Hof im Dorf gehen und diesen Verkaufen, eventuell mit dem Text: "Wollen sie ihren Hof verkaufen, es wird dann alles abgerissen um neue Häuser für unsere Einwohner zu bauen. Für ihr Grundstück würden wir ihnen einen Preis von (z.b) 100000€ zahlen.".

      In diesem Fall kommt ein neues Feature zum Vorschein, der Preis der bei jedem Objekt angegeben werden muss, kann auch negative sein, somit wird dem Spieler das Geld gutgeschrieben...^^"!



    So, nun auch mal ein paar Bilder. Zum einen mal was den Preis angeht. Wir wissen, der Preis kann auch negative sein, Beispiel:

    Zu sehen ist, dem Spieler werden die 120000€ gutgeschrieben.
    Ein weiteres Feature ist, man kann auch ein maximalen Kontostand nach dem Kauf erlauben. Zum Beipiel, bei einer großen Halle, die viel Kostet, 1000000€, kann man angeben das der Kontostand nach dem Kauf einen bestimmten Wert haben muss, also ein Maximales Minus was erlaubt ist, das der Player nach dem Kauf maximal -100000€ haben darf. Und somit beim Kauf mindestens 900000€ auf dem Konto haben muss. Der Wert kann auch Plus sein, im Beispiel das er nach dem Kauf noch 200000€ haben muss, so muss er zum Zeitpnkt des Kaufs also 1200000€ auf dem Konto haben. Dafür auch mal ein Beispiel was in den Plus bereich geht.
    Preis im Beispiel ist 12216€
    Kontostand nach dem Kauf, soll mindestens 100000€ sein. Hatte ich nicht, also kommt eine Warnung, mit dem Kontostand den man braucht um das Objekt zu kaufen.


    Da ich aber nicht gemein bin und jeder wissen soll was er kaufen kann, kann man eine Vorschau aufs Objekt bekommen... siehe Kontostand, unverändert.


    Und ein Beispiel für den Minus Bereich. Preis der Silos war 200000€, maximal ins Minus nach kauf ist auf -20000€ gestellt:


    Aber nun mal ein paar Sichbare Beispiel, was man machen kann. Mit Texten und Preisen und Einbaumöglichkeiten. Tests wurden auf der SampleModMap durchgeführt, es wurden lediglich die Gebäude neu platziert, Lest euch einfach die Texte durch.

    Diese wurden umgebaut, samt Fülltriggern, der Abkipptrigger wurde durch einen Verkaufstrigger ersetzt. Somit würde das Getreide automatisch verkauft. Siehe Bilder, Kontostand und Füllstand der Silos beim Abkippen.
    Spoiler anzeigen
    Wer sich auskennt kann hier im Hintergrund erkennen, das da wo die Silos normal stehen keinerlei Collison sichtbar ist, ausser die an der Abkippstelle, diese ist von einem Verkaufstrigger, wie man in den anderen Bildern gut sehen kann.

    Platz der Silos ist leer.

    Anstatt auf Kaufen, nur auf Vorschau gedrückt:

    Dann Getreide abkippen, man beachte den Füllstand der Silos, bleibt unverändert, aber der Kontostand wird mehr.

    Dann doch entschieden die Silos zu kaufen...:)

    Und nochmal abkippen...Silostand ist zu beachten, denn der Trigger ist jetzt da, der Verkaufstrigger ist gelöscht worden.

    Und auch gleich mal aufladen testen...ihr wisst bescheid, Silostand beachten ;)



    Dann mal ein einfaches Beispiel um den Hof um eine neue Halle zu erweitern.

    Die Standarthalle wurde durch Steine und 2 Bäume ersetzt. Man kann nun den Platz räumen lassen, die Bäume absägen(ohne Forstmod :D ) und eine Halle bauen lassen und gleich noch neue Bäume pflanzen lassen.
    Eine Colli hat die Halle hinterher auch und man kann auch reinfahren.


    Und noch ein Beispiel für den Einbau.
    Einmal im Spoiler wo der Preis zu hoch war, dann aber eine Vorschau gedrückt wurde. Zu sehen die Collis sind nach wie vor da:

    Normal gekauft und getestet:



    Hier nur mal wo man sehen kann, wie ich einen Trigger gekauft habe und einen anderen varkauft:

    Jetzt im Hintergrund zu sehen, der Trigger in dem ich abgekippt habe.

    Trigger ist nun weg, ein anderer ist da. Und funktioniert auch.


    Hier nur nochmal unterschiedliche Layouts der texte. Die unterschiedlichen Farben, Schriftgrößen, Fettschrift usw. wird alles in der XML eingestellt und kann in jedem Trigger anders sein.

    Einfach auf die Farben der schrift und auch die Position der Texte achten, insbesondere der Abstand zwischen Überschrift und Beschreibung....




    So, das war es erstmal von mir...

    Ich freue mich über konstruktive Kritik, Vorschläge usw. Auch ein "Bedanken" freut mich natürlich sehr...!

    Um nochmal klarzustellen, denke mal einige sind jetzt ganz verwirrt. Ihr kopiert das Skript in den Mods Ordner und alles was auf den Bildern zu sehen ist wird im GE beim Einbau bzw in der XML eingestellt. Meine Bilder dienen lediglich als Beispiel und verpflichten euch in keinster Weise das ganze so einzubauen...^^!
    Also,so wie das Aussieht und die Beschreibung ist,ist es schon Super.
    Tankanlage und Silo ist doch Interessant wenn man es Kaufen muss/kann.
    Bei der Abladestelle bei den Silos,welcher Preis ist dort Vorgeben? Der schlechteste Preis oder der beste Preis oder habt ihr einen mittel Weg gefunden?
    Immer schön Locker bleiben :)
    Zuviel Stress schadet nur der Gesundheit ^^
    Support nur im Forum.
    Wichtig,bei Probleme den [Log.text] nicht Vergessen,sonst kann man nicht Helfen.
    Auch der "kleine Helfer" würde sich über ein Bedanken freuen :)
    Ich habe da einfach mal den Trigger der Gaststätte hingeklatscht. Nur um zu zeigen das der Trigger wirklich nicht der Farm Trigger ist. Letzendlich soll es nur eine Möglichkeit darstellen. Man könnte auf den Trigger auch ganz verzichten, das man vom Feld wirklich erstzu einer Verkaufsstelle fahren muss, bis man das Geld für die Silos zusammen hat.

    Hier gilt wirklich: Alles kann, nix muss...

    Edit: Der Mapper legt es fest, was wo gekauft werden kann und was nicht. Man kann z.b auf einem Feld auch alte Häuser bauen, somit das Feld nicht beackern. Betritt man den Trigger könnte der Text kommen: "Wollen sie die Häuser abreißen und an dieser Stelle ein Feld anlegen?"

    Kann dann so aussehen, das Feld ist vorher im GE definiert. Also ganz normal. Entweder stellt man es so ein das es dem Player gehört, und setzt eine Grundplatte hin (wegen der TerrainTexture), stellt ein paar Häuser drauf. Lässt man die Häuser nun abreißen dann ist das Feld frei zum bearbeiten, die Platte und die Häuser sind verschwunden.
    Man könnte das Feld auch so erstellen das man es danach noch kaufen muss. Das man quasi vorher nur die Kosten für den Häuser abriss getragen hat. Oder man kauft erst das Feld, ganz normal(in dem Fall noch mit Häusern drauf). Im Trigger kommt dann der text, das man die Häuser abreißen kann.
    Wenn das so funzt wie du schreibst gehst du in die Geschichte des Landwirtschafts Simulator ein. :thumbsup:
    Ich glaub es wird höchste Zeit, damit anzufangen, eine passende Map dazu zu bauen.
    Ich geh mal davon aus, das du sie irgend wann mal frei gibst. :D
    Ich dachte ich gehe schon mit Ampeln in die Geschichte ein...aber Nein, war wohl zu einfach, also ein neues Projekt.

    Und ja, es funzt so wie ich es schreibe...kann man ja auf den Bildchen ganz gut sehen...^^!

    Wenn es fertig ist, dann kommt es auch zum DL.


    Achja, wo er grad hier im Fred ist...

    Danke auch an Daniel007, der das Logo, was beim Text eingeblendet wird,gebaut hat... :thumbsup:
    So, mal eine kleine Wasserstandsmeldung meinerseits...!

    Nach dem ich die letzten 2 Wochen einiges am Mähwerk und einer kleinen placeable Objekt gearbeitet habe, geht es hier natürlich auch noch weiter.

    Habe das Skript nochmal etwas umgeändert im Ablauf, auch wegen der MP fähigkeit. Das Laden der Texte ist soweit 100% fertig. In Sachen Speichern und Laden ob das Objekt gekauft wurde, bin ich auf einem sehr gutem Weg...;)!

    Im MP soll es dann so sein:
    Nur der Host kann die Objekte kaufen/verkaufen, Sinn ist der das die "störenden" User nicht einfach irgendwo hinrennen und ein Objekt kaufen und den Kontostand des Spielstands ins Minus ziehen.
    Hat der Host nun ein Objekt gekauft, wird dem Client eine Meldung angezeigt das der Host ein neues Objekt gekauft hat und das man sich informieren soll um welches Objekt es sich handelt. Diese Meldung wird beim Client für ca.6Sekunden eingeblendet.

    Im SP habe ich es mit der Meldung getestet und ist soweit auch fertig, ob es nun im MP auch so geht wird sich zeigen.

    Ich denke das es bald an die ersten Tests im MP gehen kann.



    Zur Zeit ist es so, wenn man sich die Vorschau anzeigen lässt, ist diese für 10 Sekunden sichtbar. Da habe ich nochmal nachgedacht und finde es nicht ganz optimal. Gründe sind, bei kleinen Objekten hat man eine lange Vorschau ansicht bis man diese wieder weg ist und man das Objekt kaufen kann. Weiterer Grund, bei großen Objekten, großen Hallen usw. hat man nur 10 Sekunden Zeit sich das Objekt anzusehen, bzw auch mal drum rum zu gehen, um zu sehen wie weit das Objekt geht, um auch schlepper, Hänger und Geräte aus dem Weg zu räumen. Denn wenn man ein Objekt kauft und ein Schlepper da steht, durch die neue Colli des Objektes "fliegt" dieser dann durch die Gegend. Daher ist ein Rundumblick schon wichtig.

    Es wird also nochmal geändert, das man die Vorschauzeit im GE oder in der XML der texte seperat einstellen kann, dann aber auch so, das es nicht übertrieben werden kann, also mit einer Sicherheitsabfrage, nicht das jemand bei der zeit übertreibt und ihr dann ne Stunde die Vorschau ansehen müsst...:D!

    Ich werde die Tage nochmal ein neues Beispiel zusammenbauen, eventuell auch anhand einer Vorhandenen Map, mal sehen.
    Skript und Funktionen der MapBuyableObjects: 75%


    Skript und Funktionen des Icons: 96%


    XML Einstellungen und Auslesen der Texte: 99%


    Speichern und Laden aus dem Savegame: 50%


    Ich denke die Fortschrittbalken sprechen für sich, mehr muss man da nicht sagen...

    Aber ein kleines Beispiel habe ich heute morgen noch schnell zusammen gebastelt. Feld Nummer 13, dort steht ein 2.Dorf...was wir abreissen wollen um ein Feld anzulegen.



    Auf den Bildern 4,5,6 erkennt man gut das der Schlepper an den Gebäuden kollidiert, sie also eine Colli haben.
    Bei Bild 9 habe ich auf Vorschau geklickt, der Schlepper bleibt weiter schräg, die Colli verschwindet in der Vorschau nicht.

    Bei Bild 10, 11, 12, dann gekauft, man sieht wie der Schlepper wieder in die normale Position kommt, weil die Collis nun entfernt sind.
    Bild 14, auf dem Feld sind keine Collis mehr zu sehen.
    Das Skript kommt in den Mods ordner, richtig.

    Im GE musst du dann die einzelnen Objekte in Transformgroups setzen, also z.b alles was gelöscht werden soll, bzw alles was sichtbar werden soll. Zudem musst du jeweils den Index angeben.

    Also ist es eigentlich beides, eine zip im Mods ordner, rest muss im GE gemacht werden. Die texte kannst du auch selber erstellen. Ist eigentlich alles so simpel wie möglich gehalten.
    Also kann man es auf jeder Map einsetzen, zumindest kann jede Map damit ausgestattet werden.
    Kriegst du bald...:D :D :D... einer muss ja für den MP test herhalten...;)!

    Muss nur noch ein paar Tests machen, um LOG fehler auszuschließen, wenn man z.b in einem aktuellen Spielstand ein neues Objekt hinzufügt oder ein anderes rauslöscht...damit es keinen LOG eintrag beim Laden gibt.

    Ich will es so haben, wenn ich einen aktuellen Spielstand verändere, also ein weiteres Objekt einbaue, das beim Start sofort gespeichert wird. bzw nach dem löschen eines Objektes auch.

    Sowie, wenn eine XML aus einer anderen Map im Savegame ist, wo das Skript verbaut war, das es da keinen Konflikt gibt, bzw das dann auch sofort beim starten einer anderen Map in dem Savegame sofort einmal gespeichert wird.
    So, als ich das letzte Beispiel zusammengebaut habe, also das mit dem Dorf mitten auf einem Feld, da ist mir aufgefallen wie mühseelig es ist große Objekte damit umzusetzen. Da man immer jeden Index angeben muss, also jede einzelne Platte, Haus, Strassenlampe usw. muss in den Attributen angegeben werden. Absolut mühseelig.

    Also gibt es jetzt ein Neues Attribut. "Other_Objects_Buy", wieder eine TG, in der man beliebig viele TGs anlegen kann, diese neuen TGs gibt man als index an.

    ---- Other_Objects_Buy
    ----------objects
    -----Hofplatte
    -----Hofplatte
    -----Hofplatte
    -----Blumenkübel
    -----Zaun
    ----------objects

    Also gibt man die Indexe zu "objects" an, in diese TG kommen die einzelnen Shapes, die Indexe zu den shapes werden dann vom Skript ausgelesen. Ist besonders bei immer gleichen, sich wiederholenden Objecten gut. Z.b Zäune, Strassen, was auch immer. Diese Bauteile (Hofplatte, blumenkübel) dürfen keine untergruppen mehr haben.


    Das alte Attribute Buy_Objects bleibt erhalten, dies ist besonders für LOD gebäude zu benutzen, da dort jeder Index einzeln angegeben wird. Und man die LODs ja nicht auseinander reißen kann...
    Nicht das ihr denkt ich wäre untätig...;)! Aber nachdem das Mähwerk fertig ist, ging es auch hier mal etwas weiter...

    Die einzelnen Angaben was man alles kaufen kann oder verkaufen sind soweit fertig.
    Nun hatte ich die Idee das man auch bestimmte Dinge versetzen kann, z.b die Vehicles reset Points, das wenn man einen neuen Hof hat, dorthin die Fahrzeuge zurücksetzen kann, das geht aber leider nicht, da wohl die ResetPlaces vorher geladen werden, sicher könnte man das bestimmt umschreiben, aber nun habe ich das ganze anders genutzt, man kann jetzt andere Dinge einfach versetzen.
    Dazu hatte ich im Test einen Blumenkübel, der beim Kauf um 180 grad und auch in den Translation werten versetzt wird. Das geht und bleibt so einfach, ob mans braucht, weiß ich nicht, aber das Skript kann es nun...:D Man gibt einne Index an, zu dem Objekt was man versetzen will, im Objekt selber setzt man ein neues Attribute bzw 2: Translation bzw Rotation, da trägt man die neuen werte ein 0 0 0 oder 0 90 0, jeweils nur die werte die verändert werden sollen. Wenn man es nur drehen will, lässt man Translation weg, oder gibt den Aktuellen wert an.

    Dann gibt es nun auch einen neuen Karriere Start Punkt, auch ein Index zu einer TG die man da platziert wo der Player dann erscheinen soll. Z.b wenn man einen neuen Hof gekauft hat, so wird der Player beim Spielstart dahin gesetzt. Das ganze kommt nur beim neuladen zum einsatz, also wenn man im aktuellen Spiel etwas kauft wo ein neuer Start Punkt mitangegeben ist, so wird der Player nicht versetzt, nur beim Neuladen des Spielstandes. Das ganze ist dann aber auch etwas komisch, da der Player am normalen StartPunkt gesetzt wird und dann zum neuen teleportiert wird, heißt ihr seht dann kurz für einen sekunden bruchteil, wie ihr zum neuen Punkt bewegt werdet.

    Zudem wird jetzt ein Text bei allen anderen Mitspielern angezeigt. Wenn einer eurer Mitspieler nun etwas kauft, so bekommt ihr eine Warnung oben zwischen Uhr und Hilfebox angezeigt, das ein neues Objekt gekauft wurde und ihr euch informieren sollt was gekauft wurde. Dies passiert auch nur beim kaufen, beim Laden eines Savegames natürlich nicht...;)!

    Einen Sound für die Vorschau gibt es nun auch, FinalContdown in einer endlosschleife, je nachdem was ihr für eine Zeit angebt wie lange die Vorschau dauert.

    In den nächsten Tagen bzw zum Wochenende hin wird es dann wohl mal einne kleinen MP test geben.
    Großartig, das mit dem CarreerStartPoint passt ja zur Idee der Map :thumbsup:
    Ich hatte für die Map eine Idee; Man hat anfangs einen etwas älter wirkenden, kleinen Stall mit Gras, Heu und Maishäcksel-Trigger. Dann lässt sich übr dein Script ein neuer, größerer Laufstall daneben stellen mit Mischfutter-Trigger drin. Ist das möglich, Trigger "unbrauchbar" zu machen vorher? sonst könnte man ja auch quasi in die Landschaft kippen wenn man weiß wo ;)
    :Team:

    Problem? 1. Schritt: Sinnvolles Unterforum finden! 2. Schritt: Log anhängen! 3. Schritt: Inhalt auf Lesbarkeit und Verständlichkeit prüfen! 4. Schritt: Nach Antwort testen und Feedback geben
    Anfragen nach kostenlosem Weinversand werden strikt ignoriert!
    :wacko: Wofür mache ich mir immer die Arbeit mit den ganzen Texten die ich so schön schreiben und auch noch Bilder dazu setze... :?: :D

    Okay, also, mein erster Text, da sind Beispiel in deinem Fall HofSilos, dort bitte die ersten 3 Bilder ansehen :D dann 2 Zeilen tiefer wo die Bilder sind, auf den Füllstand des Weizensilos im PDA achten, auch den Bildern wo ich mit dem Krone Emsland abkippe...
    Es passiert nix am Füllstand...
    In den Bildern darunter werden die Silos gekauft, dann wiederum eine Zeile tiefer, wo ich in Beseitz des Kroeger bin und diesen abkippe, da auf den PDA Stand im Weizen silo achten, wie du siehst, die Silos füllen sich...:D!

    Kannst dir auch das Beispiel mit den Triggern ansehen...:D

    Also beantworte ich dir jetzt trotzdem gern deine Frage:

    Ja das ist so möglich wie du es dir vorgstellt hast...:D

    In deinem konkreten Beispiel kann man es auch so lösen, das der kleine alte Stall komplett verschwindet und dafür ein neuer Stall entsteht, dazu kann auch noch mehr entstehen mit dem neuen Stall, beispiel ein zaun drum rum, Milchtanks, all diese dinge.
    Man kann etwas neues hinstellen, dazu etwas altes löschen, egal was Trigger, Staische Objekte, alles... aber man kann auch nur ein Teil versetzen, man muss nicht alles angeben. Man kann dann, wenn man einen neuen Stall hat auch ein Silo dazu erscheinen lassen, für Silage... was vorher nicht da ist. Auch das ist möglich.

    Einzig eine änderung im PDA ist nicht mit drin, also wenn man einen neuen Trigger kauft, der im PDA sein soll, so geht das nicht.
    Ein Beispiel wäre z.b:
    Man hat nur einen alten Landhandel, der wenig bezahlt. Der Text den man bekommt könnte so heißen:
    Beteiligen sie sich an der neuen Genossenschaft, mit einem einmaligen Beitrag von 100000€ würden wir eine große Raiffeisen bauen, die dann in der Lage ist höhere Preise zu bezahlen.

    Die trigger würden dann ersetzt werden, die mit den kleinen Preisen weg und mit großen Preisen hin, aber der Preis im PDA wäre nicht der neue bzw vorher nicht der alte. Da wäre nur die Möglichkeit die Verkaufsstellen anders zu nennen, also vorher im PDA Landhandel stehen haben und Raiffeisen. Wobei man halt bei der Raiffeisen solange nicht abkippen kann wie man nicht die 10000€ als Beteiligung bezahlt hat.