Infos für Entwickler

  • Keinen Bock, keine Zeit, etc.

    Das Spiel lebte ja schon zu Sebs Zeiten vom Engagement der Spieler und das hat sich XR zu nutze gemacht. Warum Angestellte bezahlen, wenn das auch Spieler umsonst machen.

    Ein Vakuum, geschaffen durch fehlende Kommunikation,

    füllt sich in kürzester Zeit mit falscher Darstellung, Gerüchten, Geschwätz und Gift. - Cyril Northcote Parkinson


    Der beste Verband in Aachen und Umgebung: leitstellenspiel.de/alliances/1100



    Schraube manchmal am LSSM V4 rum.

  • hä? wo ist denn da der Kontext?


    Sie ändern etwas am Spiel und geben darüber keine Info an die MOD-Entwickler (wofür ja dieser Thread ja eigentlich ist). Und die MOD-Entwickler werden dann von den Spielern mit Fehlermeldungen überschüttet.

    Wo ist denn da das Problem vom Spiele-Entwickler, den MOD-Entwicklern zu sagen: "Hey, wir stellen im Hintergrund dies und das neu ein, schaut ob das bei euren Mods zu Problemen führen kann"

  • Weil dann ein Entwickler sich hier einloggen müsste und das Zeit und damit Geld kostet. Keine Ahnung ob das direkte Order der Vorgesetzten ist, denn soweit ich das mitbekommen habe sind die Devs eigentlich ganz nett und kompetent.

    Und wie gesagt: Es klappt ja irgendwie so, also wieso was ändern?

    Ein Vakuum, geschaffen durch fehlende Kommunikation,

    füllt sich in kürzester Zeit mit falscher Darstellung, Gerüchten, Geschwätz und Gift. - Cyril Northcote Parkinson


    Der beste Verband in Aachen und Umgebung: leitstellenspiel.de/alliances/1100



    Schraube manchmal am LSSM V4 rum.

  • Die Gebäude-API hat ein neues Attribut bekommen:

    custom_icon_url ist genau dann vorhanden, wenn ein Gebäude ein vom Nutzer festgelegtes Gebäude-Bild hat und gibt dann die URL dazu an.

    Wird das Standard-Icon für ein Gebäude verwendet, wird das Attribut komplett weggelassen.

    Um die URL zu einem Standard-Icon von einem Gebäude zu bekommen, gibt es bereits seit längerem die Funktion getBuildingMarkerIcon, welche einen Parameter vom Typ { user_id: number; building_type: number } entgegennimmt und dann die entsprechende URL zurückgibt.

  • Um die URL zu einem Standard-Icon von einem Gebäude zu bekommen, gibt es bereits seit längerem die Funktion getBuildingMarkerIcon, welche einen Parameter vom Typ { user_id: number; building_type: number } entgegennimmt und dann die entsprechende URL zurückgibt.

    Ich muss diese Aussage eben korrigieren, nachdem ich mich einmal mit der Funktion beschäftigt hab:

    Die Funktion gibt nur dann ein Standard-Icon zurück, wenn die übergebene user_id nicht die eigene ist und dann wird auch nur die jeweilige graue Version zurückgegeben. D.h. um die "Ich"-Version zu bekommen, muss das `_other` noch entfernt werden.

  • Der API-Endpunkt /api/allianceinfo wurde wie folgt erweitert/ergänzt:

    jedes Element der Liste users enthält nun ebenfalls das Attribut role_flags, welches wie folgt aufgebaut ist:

    JavaScript
    {
        "owner": Boolean, // Verbandseigentümer
        "admin": Boolean, // Verbands-Admin
        "coadmin": Boolean, // Verbands Co-Admin
        "schooling": Boolean, // Lehrgangsmeister
        "finance": Boolean, // Finanzminister
        "staff": Boolean, // Verbands-Personal
        "transport_requests": Boolean, // Sprechwunsch-Admin
        "view_logs": Boolean, // Aufsichtsrat
    }


    Viele Grüße

  • Hallo ihr lieben,


    es gibt nun eine Art "Entwicklertagebuch mit für Scriptentwickler potentiell relevanten Infos". Selbst verständlich kann es sein, dass da nicht immer alles relevante drinsteht, aber zumindest soll sich das mit der Zeit ein bisschen füllen: https://www.leitstellenspiel.de/api-infos

    Das ganze ist auf allen Spielversionen äquivalent erreichbar.


    Bei Fragen zu einzelnen Punkten kann natürlich jederzeit hier nachgefragt werden, wir versuchen das ganze dann so gut es geht zu beantworten.


    Liebe Grüße

  • Als JSON steht das nicht zur Verfügung?
    Oder noch besser: als RSS-Feed

    leider nein. Rege ich aber gerne an.

  • Aufgrund eines Server-Umzugs des LSSM ist am Donnerstag den 15.09.2022 mit Einschränkungen verschiedener Scripte zu rechenen, die die LSSM-API nutzen.


    Weitere Informationen finden sich in unserem Posting:


    Viele Grüße

  • Neue Features in der LSSM-API

    Liebe alle,

    unsere Fahrzeug-API wurde wie folgt erweitert:

    • staff
      • min Number
      • max Number
      • training (nur vorhanden, wenn das Fahrzeug eine Ausbildung benötigt)
        • [Schul-Typ] String
          • [Ausbildungs-Key] String
            • all Boolean (optional), wenn alle Personen auf dem Fahrzeug die Ausbildung benötigen
            • min Number (optional), wenn eine Mindestzahl an Personen auf dem Fahrzeug diese Ausbildung benötigen
    • waterTank Number (optional), Wassertank des Fahrzeugs
    • foamTank Number (optional), Schaumtank des Fahrzeugs
    • waterBonus Number (optional), Wasser-Bonus des Fahrzeugs in % (z.B. bei Schlauchwagen)
    • foamBonus Number (optional), Schaum-Bonus des Fahrzeugs in %
    • equipmentCapacity Number (optional), Kapazität des Fahrzeugs für Ausrüstung (RC-Module)
    • pumpCapacity Number (optional), Pumpenleistung des Fahrzeugs
    • pumpType Literal "fire" oder Literal "sewage" (optional), Pumpentyp des Fahrzeugs (Feuerlöschpumpe = fire, Schmutzwasserpumpe = sewage)
    • isTrailer Boolean (optional), Indikator, ob es sich um einen Anhänger oder einen AB handelt, das "Fahrzeug" also von einem anderen Fahrzeug gezogen/transportiert werden muss
    • tractiveVehicles Array of Numbers (optional), Typ-IDs der möglichen Zugfahrzeuge eines Anhängers
    • icon String, ist jetzt zwingend bei allen Fahrzeugen vorhanden und es ist sichergestellt, dass es sich um ein gültiges FontAwesome 6 Icon handelt.

    dabei ersetzen manche neuen Attribute bereits vorhandene alte Attribute:

    • minPersonnel => staff.min
    • maxPersonnel => staff.max
    • schooling => staff.training und statt dem Ausbildungs-Namen wir der Ausbildungs-Key genutzt
    • wtank => waterTank
    • ftank => foamTank
    • pumpcap => pumpCapacity

    Diese alten Attribute werden aber auf unbestimmte Zeit (also potentiell "für immer", das ist aber nicht garantiert) weiterhin verfügbar sein, damit wir keine Scripts, die auf der API arbeiten kaputt machen.


    Die Änderungen sind ab sofort online.


    Eine API für Ausrüstung (RC-Module) ist bereits in Arbeit, benötigt aber noch Zeit.

  • Fahrzeuge:

    Gebäude

    Mecker nicht Rum, mach's besser! Kannst du nicht? Dann halt den Ball flach!8o


    Mein Verband "Sachsen, Dresden und Osterzgebirge"

    "Und Du wünschst dieser Welt

    Dass endlich Hirn vom Himmel fällt

    Es wär' schön, wenn sie verstehen

    Zum Homosapiens gehört nicht nur aufrecht gehen"

    Einmal editiert, zuletzt von Sobol ()

  • vergiss nicht die 114 mit dem MGV/Lüfter

  • Vielen Dank!


    Gibt es einen Grund, warum

    NEA50

    NEA200

    doppelt vorhanden ist?

  • Der jeweils erste NEA ist vom THW, der jeweils zweite von der Feuerwehr.

  • Anbei aktuelle Listen der im deutschen Spiel vorhandenen Fahrzeug-Typen und Gebäude-Typen:


    Letzte Aktualisierung: 20.03.2024. (Schlauch-Anhänger)
    Die Zeilennummern in den Quellcode-Fenstern lassen sich leider nicht entfernen. Ich hoffe, sie verwirren nicht zu sehr!


    API für Fahrzeug-Typen: https://api.lss-manager.de/de_DE/vehicles


    API für Gebäude-Typen: https://api.lss-manager.de/de_DE/buildings


  • Gibt es ebenfalls eine Auflistung der Erweiterungen? Momentan fische ich das händisch zusammen. Vielleicht hat sich vor mir schon einer die Mühe gemacht? Anbei, was ich für BePo und THW zusammengestellt habe.


  • Gibt es ebenfalls eine Auflistung der Erweiterungen? Momentan fische ich das händisch zusammen. Vielleicht hat sich vor mir schon einer die Mühe gemacht? Anbei, was ich für BePo und THW zusammengestellt habe.


    Ich hab mal eine Liste zusammengebastelt und auch die Code-Snippets, mit denen ich die Listen jeweils generier oben in meinen Beitrag gepostet.


    Eine Auflistung im von dir beispielhaft genannten JSON-Format lässt sich beispielsweise über diesen Code einfach erhalten:

    JavaScript
    fetch('https://api.lss-manager.de/de_DE/buildings').then(res => res.json()).then(v => Object.entries(v).map(([id, {caption, extensions}]) => ({id, caption, extensions: extensions.filter(Boolean).map(({caption}, id) => ({id, caption}))}))).then(console.log)


    Ich hätte das Ergebnis ja auch hier gepostet, aber das Forum beschwert sich dann, dass meine Nachricht über 10.000 Zeichen lang wäre ^^


    Jaja ich weiß: Keine offizielle API sondern immer diese LSSM-APIs. Dafür ist die eigentlich immer ziemlich up-to-date