KaroMUSKEL
Inhaltsverzeichnis
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 | Bilder | 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... | tbd | ? | 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. | XYZ | ? | 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. | tbd | ? | 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. | tbd | ? | 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... | Erster Proof of Concept, nicht mehr... | ? | 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!
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
Hier gibt es eine komplette Liste aller verfügbaren Versionen zum Download oder du schaust unter https://github.com/ultimate/KaroToolsCollection/releases
Datum: | Kommentar: | Download-Link: |
10.05.2023 | Version 3.1.4 released Wartungsrelease wegen Didis Aufräumarbeiten an der API |
KaroMUSKEL-3.1.4-bin.jar KaroMUSKEL-3.bat |
20.11.2022 | Version 3.1.3 released Fixed: Bug in der Logik für Ausgewogene Spieleserien |
KaroMUSKEL-3.1.3-bin.jar KaroMUSKEL-3.bat |
11.11.2022 | Version 3.1.2 released Update: Erweiterung des Serientyps "KaroLigaCup" für die aktuelle Saison |
KaroMUSKEL-3.1.2-bin.jar KaroMUSKEL-3.bat |
04.11.2022 | Version 3.1.1 released Fixed: Spielerreihenfolge bei JSON-Export |
KaroMUSKEL-3.1.1-bin.jar KaroMUSKEL-3.bat |
21.10.2022 | Version 3.1.0 released Update: Erweiterung des Serientyps "KaroLigaCup" für die aktuelle Saison |
KaroMUSKEL-3.1.0-bin.jar KaroMUSKEL-3.bat |
26.08.2022 | Version 3.0.7 released Fixed: Aussteigen auf API umgestellt (statt kickplayer.php, da diese abgeschaltet wurde) |
KaroMUSKEL-3.0.7-bin.jar KaroMUSKEL-3.bat |
14.07.2022 | Version 3.0.6 released Added: Autosave Funktion (also falls mal was schief läuft und man vergessen hat zu speichern, kann man nun auf einen Zwischenstand zurückgreifen) |
KaroMUSKEL-3.0.6-bin.jar KaroMUSKEL-3.bat |
14.07.2022 | Version 3.0.5 released Fixed: Fehler im KaroLigaCup Modus |
KaroMUSKEL-3.0.5-bin.jar KaroMUSKEL-3.bat |
28.03.2022 | Version 3.0.4 released Fixed: Anpassungen für den KaroLigaCup |
KaroMUSKEL-3.0.4-bin.jar KaroMUSKEL-3.bat |
25.03.2022 | Version 3.0.3 released Fixed: Liga-Modus bei ungerader Spielerzahl |
KaroMUSKEL-3.0.3-bin.jar KaroMUSKEL-3.bat |
17.03.2022 | Version 3.0.0 released Update: Umstellung der Server-Calls auf die KaroAPI |
KaroMUSKEL-3.0.0-bin.jar KaroMUSKEL-3.bat |
05.01.2021 | Version 2.7b released Fixed: Fehler beim Starten, weil Didi mal wieder was an der User-Liste geändert hat und der KaroMUSKEL immer noch nicht die API nutzt... ;-) |
KaroMUSKEL-2.7b.zip |
08.12.2020 | Version 2.7a released Fixed: Login nach Server-Umzug nicht mehr möglich |
KaroMUSKEL-2.7a.zip |
25.05.2020 | Version 2.7 released KaroLigaCup-Update |
KaroMUSKEL-2.7.zip |
27.12.2018 | Version 2.6b released Fixed: Vorschau für User-Karten ermöglicht |
KaroMUSKEL-2.6b.zip |
27.12.2018 | Version 2.6a released Fixed: Fehler beim Laden von Karten mit Name "(unbekannt)", weil Didi mal wieder was an der newGame.php geändert hat ;-) (Danke Sayri für den Hinweis auf den Bug!) |
KaroMUSKEL-2.6a.zip |
20.08.2017 | Version 2.6 released Fixed: Problem mit Umlauten im Spieltitel |
KaroMUSKEL-2.6.zip |
28.12.2016 | Version 2.5 released Performance- & Usability-Update |
KaroMUSKEL-2.5.zip |
09.12.2016 | Version 2.4a released Fixed: Fehler behoben, der zur Mehrfacherstellung von Spieleserien führt (Danke aristarch für das finden des Bugs!) | KaroMUSKEL-2.4a.zip |
29.11.2015 | Version 2.4 released Neuer Serientyp "Jeder-gegen-Jeden" |
KaroMUSKEL-2.4.zip |
16.02.2013 | Version 2.3a released Fixed: Fehler beim Login mit Sonderzeichen |
KaroMUSKEL-2.3a.zip |
18.11.2012 | Version 2.3 released Fixed: Verbesserung der Liga-Planung |
KaroMUSKEL-2.3.zip |
23.09.2011 | Version 2.2b released Fixed: Starten nicht möglich, weil Karte 186 auf der alten Erstellen-Seite fehlt, aber auf der BETA-Erstellen-Seite vorhanden ist |
KaroMUSKEL-2.2b.zip |
25.06.2011 | Version 2.2a released Fixed: Starten nicht möglich, wenn Spielerzahl für Karte nicht bekannt |
KaroMUSKEL-2.2a.zip |
15.12.2010 | Version 2.2 released Fixed: Anpassungen an die KaroAPI vorgenommen |
KaroMUSKEL-2.2.zip |
03.10.2010 | Version 2.1 released | KaroMUSKEL-2.1.zip |
28.04.2010 |
Fixed: Fehler beim Speichern und Laden von Spieleserien behoben |
KaroMUSKEL-2.0-20100428.zip |
27.04.2010 | Fixed: Zufallsrichtung war nicht möglich | KaroMUSKEL-2.0-20100427.zip |
26.04.2010 | Version 2.0 released | KaroMUSKEL-2.0-20100426.zip |
?? | Version 2.0-beta released | KaroMUSKEL-2.0-beta.zip |
?? | Version 1.1 released | KaroMUSKEL-2.0-20100426.zip |
Dazu noch ein paar Anmerkungen:
- Da ich hier im Wiki ja leider keine Zip-Datei hochladen kann musste ich auf eine andere Möglichkeit ausweichen und die Dateien sind extern verlinkt.
- Danke an Madeleine die lange Zeit die Downloads bereit gestellt hat.
- Mich gibt es jetzt auch bei Github, worüber nun auch die Downloads bereit gestellt werden: https://github.com/ultimate/KaroToolsCollection
- Es kann gut sein, dass einige Versionen nicht mehr funktionieren, sie sind eigentlich nur für Nostalgiker da ;-)
- Mit der Änderung von Version 2.6 auf 2.7 wurden leider durch eine Erweitung gespeicherte Spieleserien inkompatibel. Mit der Einführung der Version 3.0 ist aber das rückwärtskompatible Laden von Spieleserien (ganz ohne Hack-Version) möglich.
Kontakt (Bugs, Fragen)
Wenn du irgendeine Frage an mich (ultimate) hast, dann
- a) nutze bitte das folgende Formular "Mail an Mitspieler" oder
- b) erstelle einfach ein Spiel mit mir und sprich mich dort an oder
- c) erstelle ein Issue auf https://github.com/ultimate/KaroToolsCollection/issues
Bitte versuche dabei in der Nachricht folgendes zu berücksichtigen :
Bug-Melden: Wie kann ich den Fehler reproduzieren? Wann ist er aufgetreten? Was hast du davor gemacht? Je mehr Informationen, desto einfacher ist es für mich das Problem zu beheben! Wenn das Problem während der Spielerstellung auftritt bitte das Log (ab Version 2.6) zur Spielerstellung mitschicken.
Frage stellen: Hast du zuvor das Wiki und alle Hilfestellungen im Programm durchgelesen und gibt es dort vielleicht eine Antwort auf deine Frage? ;-)