api.cmd.make.bookJournalEntry scheitert

Willkommen in der Transport Fever Community

Wir begrüßen euch in der Fan-Community zu den Spielen Transport Fever und Train Fever, den Wirtschaftssimulatoren von Urban Games. Die Community steht euch kostenlos zur Verfügung damit ihr euch über das Spiel austauschen und informieren könnt. Wir pflegen hier einen freundlichen und sachlichen Umgang untereinander und unser Team steht euch in allen Fragen gerne beiseite.

 

Die Registrierung und Nutzung ist selbstverständlich kostenlos.

 

Wir wünschen euch viel Spaß und hoffen auf rege Beteiligung.

Das Team der Transport-Fever Community


  • Hallo zusammen,
    habe folgendes Problem: Ich möchte meine Mod auf die neue API ändern und statt dem alten game.interface.book() den api.cmd.make.bookJournalEntry verwenden. Problem ist allerdings, dass egal wie ich den verwende immer die folgende Fehlermeldung kommt (und das Spielabstürzt):

    Error message: Assertion `cmd.journalEntry.time == -1' failed.


    Dabei ist unerheblich welchen Wert journalEntry.time eigentlich hat, er kann 0, 1000, 1000000 oder sonst irgendwas sein, die Fehlermeldung kommt trotzdem. (Wert wird auf die aktuelle Spielzeit in Millisekunden gesetzt)

    Hat jemand den command schon erfolgreich verwendet und kann mir sagen wo hier der Trick liegt?

    besten Dank


    Joker

  • Hast du es mal mit journalEntry.time=-1 versucht? ^^


    Aber mach dir nicht die Mühe. Es gibt keinen Grund auf die neue Api umzusteigen, wenn es auch so funktioniert.

    Die game.interface Funktionen sind keinesfalls "deprecated" und sind meistens einfacher und auch zuverlässiger.

    Es gibt außerdem viele Sachen, die mit der neuen Api gar nicht möglich sind.

  • ehm. neee :-D Werde ich gleich mal ausprobieren. edit: mit -1 gehts... wieso ist das mal wieder nicht dokumentiert? -.-
    Aktuell speichere ich die Dinge noch im SaveGame, aber das kostet auf Dauer Performance. Wenn ich es ins Journal schreiben würden, könnte ich mir das speichern und laden sparen (So mal meine Überlegung).

    Und ja mit den game.interface funktionieren viele Dinge einfacher, schneller und zuverlässiger. Ist an sich eine gute Ergänzung zur anderen API

    Edit 2:
    Ergänzung zum JournalEntry: "time" muss -1 sein. Immer. Wird dann vom Spiel automatisch auf die aktuelle Spielzeit gesetzt. (Nachträglich was reinbuchen geht nicht)
    api.cmd.make.bookJournalEntry: akzeptiert neben der PlayerEntity auch jede andere Entity die ein Journal hat. Damit der Betrag aber dem Spielerkonto gutgeschrieben/abgezogen wird muss er auch noch beim Spieler eingebucht werden.

BlueBrixx