KaroMUSKEL

Aus KaroWiki
Zur Navigation springen Zur Suche springen

Was ist KaroMUSKEL?

KaroMUSKEL steht für "Maschinelle-Ultimative-Spielserien-für-Karopapier-Erstellungs-Lösung" und ist ein von ultimate geschriebenes Script für die automatische Erstellung von Spieleserien und Meisterschaften.

Hintergrundinformationen

KaroMUSKEL wird seit Anfang 2008 von ultimate entwickelt. Anfangs habe ich das Skript nur für den Eigenbedarf geschrieben, später habe ich es auf Anfrage aber auch an andere Spieler weitergegeben. Nach der Fertigstellung der Version 1.0 Mitte 2008 hat sich lange nichts beim Skript getan. Es wurden einzig zwischendurch mal ein paar Anpassungen auf Neuerungen von karopapier.de eingebaut, damit das Skript weiter Funktionsfähig bleibt. Im März 2010 habe ich mich dann mal ran gesetzt das ganze rund zu erneuern. Danach gab es dann mehr oder weniger Regelmäßig Anpassungen, Erweiterungen und Bug-Fixes.

Auch wenn alte Versionen größtenteils nicht mehr funktionsfähig sind, hier mal aus Nostalgie-Gründen eine kleine Versionsübersicht mit den wesentlichen Unterschieden. Zur aktuellen Version geht es dann weiter unten...

Versionsübersicht

Version Beschreibung & Key-Features Screenshots Technologie Karo-Schnittstelle Speichern & Laden Status
4.x Um den Nutzerkreis zu erweitern und die Benutzung zu vereinfachen, hatte ich mich vor einiger Zeit entschlossen für die Version 4 auf HTML5/JavaScript zu setzen. Das bedeutete eine komplette Neuentwicklung mit vielen neuen Funktionen. Die Entwicklung dieser Version ist jedoch aus Zeitgründen auf Eis gelegt und stattdessen habe ich Version 3 weiter verbessert... ? HTML + JavaScript API JSON Entwicklung pausiert
3.x Die aktuelle Version des KaroMUSKELs! Optisch, also bei der GUI, gleicht Version 3 der Version 2. Unter der Haube wurde sie jedoch vollständig überarbeitet. Ziel war eigentlich nur die vollständige Umstellung aller Funktionen auf die KaroAPI. Im Zuge Umbauten wurden aber gleich noch einige andere Verbesserungen vorgenommen. Die grundsätzlichen Funktionen sind aber gleich geblieben:
  • Spieleserien: "einfach", "Liga", "KO", "Jeder gegen Jeden", "KLC"
  • GUI: Erstellung in mehreren Teilschritten: Einstellungen, Regeln, Spieler, Karten, Zusammenfassung
  • Spieler- & Kartenauswahl abhängig vom Typ der Serie
  • Regeln: fix oder Zufall
  • Unterstützung von Teams
  • Speichern und Laden
  • Batch-Edit in der Zusammenfassung
  • Hilfreiche Extras wie Autosave, Logs, Supercreatormodus, uvm.
  • Unterstützung von Kartengeneratoren
  • KaroMUSKEL-3.x (1).png KaroMUSKEL-3.x (2).png KaroMUSKEL-3.x (3).png KaroMUSKEL-3.x (4).png KaroMUSKEL-3.x (5).png KaroMUSKEL-3.x (6).png Java API JSON
    + Rückwärtskompatibilität zu muskel2 Dateien
    Aktuelle Version
    + Kontinuierliche Weiterentwicklung
    2.x In Version 2 wurden verschiedene neue Spieleserien-Typen eingeführt und auch sonst viele neue Funktionen eingebajt, die noch flexiblere Spieleserien ermöglichen. Aufgrund des steigenden Funktionsumfangs war es nötig die Spielerstellung im mehrere Schritte zu unterteilen:
  • Spieleserien: "einfach", "Liga", "KO", "Jeder gegen Jeden", "KLC"
  • GUI: Erstellung in mehreren Teilschritten: Einstellungen, Regeln, Spieler, Karten, Zusammenfassung
  • Spieler- & Kartenauswahl abhängig vom Typ der Serie
  • Regeln: fix oder Zufall
  • Unterstützung von Teams
  • Speichern und Laden
  • Batch-Edit in der Zusammenfassung
  • KaroMUSKEL-2.x (1).png KaroMUSKEL-2.x (3).png KaroMUSKEL-2.x (2).png Java newgame.php Binär-Dateien veraltete Version,
    vermutlich nicht mehr lauffähig
    1.x Dies war die erste richtige verfügbare Version. Damals waren die Funktionen noch so übersichtlich, dass alles auf eine einzelne Ansicht gepasst hat:
  • Spieleserien: nur "einfach"
  • GUI: Erstellung in einem Schritt
  • Spielerauswahl: in 3 Kategorien (immer dabei, dabei solange einladbar, auffüllen)
  • Streckenauswahl: fix oder Zufall
  • KaroMUSKEL-1.x.png Java newgame.php nicht möglich veraltete Version,
    vermutlich nicht mehr lauffähig
    0.x Bevor ich angefangen habe das ganze vernünftig in Java zu programmieren gab es noch eine ganz einfache, schnell zusammengetippte HTML/JavaScript-Version. Die wurde aber überhaupt nicht weiterverfolgt und ist nur durch Zufall mal wieder auf meiner Festplatte aufgetaucht... KaroMUSKEL-0.1-HTML.png HTML + JavaScript newgame.php nicht möglich veraltete Version,
    vermutlich nicht mehr lauffähig

    Changelog

    Hier geht es zum kompletten Changelog.

    Benutzung & FAQ

    Die Benutzung sollte eigentlich selbsterklärend sein und wird durch viele Erklärungen innerhalb des Programms verdeutlicht.

    Wie funktioniert die Spielerstellung?

    Die Spielerstellung ist in mehrere Schritt gegliedert, um eine übersichtliche Definition aller Einstellungen zu ermöglichen. Das Programm unterstützt zudem verschiedene Spielmodi, die ebenfalls in Programm selbst genauer erläutert werden. Um zu beginnen wähle einen Spieleserien-Typ aus. Ab dort leitet sich der KaroMUSKEL durch die verschiedenen Schritte...

    Warum muss ich mich einloggen?

    Um das Programm benutzen zu können musst du dich bei Programmstart mit deinen Login-Daten für Karopapier anmelden. Nur so ist natürlich gewährleistet, dass du auch Spiele erstellen kannst und nur so ist auch der Zugriff auf die teilweise für die Initialisierung benötigten Seiten möglich. Es werden dann später bei der Spielerstellung alle Spiele im Namen des angemeldeten Spielers erstellt, d.h. du nimmst natürlich auch an allen Spielen teil.

    Muss ich mich für bestimmte Funktionen freischalten lassen?

    KaroMUSKEL verfügt seit Version 3.0 über keine Benutzerkontrolle mehr. Stattdessen wird das Server-Flag "supercreator" ausgewertet. Unabhängig davon gibt es eine Konfiguration, die die maximalzahl der Spiele beschränkt. Wenn dich dies zu sehr einschränkt komm auf mich zu und ich zeige dir, wie man das anpasst ;-)

    Gibt es ein Log?

    Ja, seit der Version 2.6 legt der KaroMUSKEL bei jeder Spielerstellung und bei jedem Aussteigen ein Log an, in dem alle Anfragen an den Server und andere wichtige Ereignisse protokolliert werden. Die Datei liegt im Unterordner logs unterhalb des Ordners wo das JAR-File ausgeführt wurde: "logs/karomuskel yyyy-MM-dd HH-mm-ss.log"

    Warum lädt der KaroMUSKEL am Anfang so lange?

    Beim ersten Start muss der KaroMUSKEL die Bilder zu allen Karten runterladen, dass kann je nach Internetverbindung und Serverlast ein paar Minuten dauern. Dabei werden die Vorschaubilder aber für alle nachfolgenden Starts gecached, so dass diese dann schneller ablaufen.

    • Hinweis: Bei einem Update auf eine neue Version kann durch kopieren des Ordners "cache" der Ladevorgang auch in der neuen Version beschleunigt werden.
    • Hinweis: Das Löschen des "cache" Ordners löscht die Vorschaubilder und sorgt dafür, dass diese beim nächsten Mal neu runtergeladen werden.

    Sind die Serien-Typen hard-coded?

    Ja und nein: Also grundsätzlich ist das Verhalten der verschiedenen Typen fest programmiert. Aber gewisse Randparameter sind über eine Konfigurations-Datei "karomuskel.properties" innerhalb des Jar-Files (KaroMUSKEL-3.x.x-bin.jar).

    Bei Bedarf sollte man über einen vernünftigen Zip-Editor das Jar-File öffnen und die "karomuskel.properties" bearbeiten und aktualisieren können und somit die Einstellung ändern können, ohne eine neue Version des KaroMUSKELs erzeugen zu müssen.

    • Achtung: hier nur was ändern, wenn du weißt was du tust. Andere Werte sind nicht getestet und können zu Fehlern führen!

    Wohin mit Fragen, Anmerkungen und Bugs?

    Gerne schicke deine Fragen an mich (ultimate) auf einem der bekannten Wege (Mail an Mitspieler, Zettel, App-Nachricht, Spiel erstellen) oder erstelle auch gerne ein Issue auf Github KaroToolsCollection. :)

    Wie kriege ich KaroMUSKEL?

    Systemvoraussetzungen & Installation

    KaroMUSKEL ist in Java geschrieben und benötigt daher für die Ausführung lediglich eine installierte Java Runtime Environment (mindesten Java 8). Seit Version 3.0 kommt der KaroMUSKEL nicht mehr als ZIP, sondern als "executable JAR". Ihr müsst dafür lediglich die KaroMUSKEL-3.x.x-bin.jar herunterlanden und entweder via "java -jar KaroMUSKEL-3.x.x-bin.jar" oder mit dem mitgelieferten Skript gestartet werden (Batch-File).

    Kurz und knapp bedeutet das:

    • JAR-Datei
    • JRE 8 oder höher
    • eine Konsole oder das Script zum Starten
    • Internet für die Verbindung zu karopapier.de
    • Maus und Tastatur für die Bedienung ;-)

    Download

    Da alte Versionen vermutlich größtenteils eh nicht mehr lauffähig sind, habe ich diese jetzt mal entfernt. Hier wird jetzt immer nur noch die neueste Version verlinkt...

    Damit es losgehen kann benötigst du folgende Dateien:

    Hinweis: die Releases gibt es auch unter https://github.com/ultimate/KaroToolsCollection/releases