|
 |
 |
 |
|
|
c't Projekte - c't-Bot und c't-Sim -
Mailinglisten
[Voriger (Datum)]
[Nächster (Datum)]
[Voriger (Thread)]
[Nächster (Thread)]
[Nach Datum][Nach Thread]
Absender: Benjamin Benz
Datum: Do, 22.02.2007 20:04:44
Hallo,
endlich ist es soweit: Im CVS sind die neuen Versionen von c't-Sim und
c't-Bot (Release 13). Achtung, man muss beide Projektteile aktualisieren.
Neue Features für den Sim:
* Erste Version eines Applet, das man auf WLAN-Bot laden kann (siehe
documentation/applet-howto/applet-howto.html)
* Reale Bots können sich wieder verbinden (per USB und per TCP für
WLAN-Bots)
* Wettbewerbs-System, so wie es im Oktober verwendet wurde
(ctSim.view.contestConductor)
* Remote-Calls
* Diverse Verbesserungen und Umstellungen
Achtung: Die main()-Methode des ctSim ist umgezogen. Sie wohnt nicht
mehr in ctSim.controller.Controller, sondern in ctSim.controller.Main.
Man muss zum Starten des c't-Sim also Main laufenlassen, nicht
Controller. Alte "Run"-Profile in Eclipse müssen dementsprechend
angepasst werden.
Die vollen Details verrät das Changelog seit dem letzten Release.
Binäre Releases und ein Update der Webseite folgen in den nächsten
Tagen. Wir arbeiten an der Einrichtung eines Bug-Trackers -- bis dahin
Bug-Berichte weiterhin per Mail an uns.
MfG Benjamin Benz
Changelog fuer c't-Sim
======================
2007-02-22 Benjamin Benz [bbe@xxxxxxxx]: internes CVS in externes
gespiegelt fuer ct-sim-mit-applet-release
2007-02-22 18:38 Hendrik Krauß [hkr@xxxxxxxx]: Releasevorbereitung 2
* Applet-Howto rein
* Javadoc-Ant-Task: Ausgabeverzeichnis geändert
2007-02-22 18:38 Hendrik Krauß [hkr@xxxxxxxx]: Releasevorbereitung
* contrib/rxtx wieder eingecheckt (war irgendwie nicht mehr da)
* Version 2.1b -> 2.1
2007-02-22 18:22 Hendrik Krauß [hkr@xxxxxxxx]:
* Fix für 55: Absturz Knopf "Welt generieren"
* Fix für 23: Logging in Konsole anzeigen
* Aufgeräumt: ConsoleComponent
* ct-sim.xml: Timeout jetzt 500 ms
* Cross-Plattform: Applet unter Linux jetzt auch im Metal-Look-And-Feel
* Neu: Klasse Init weil Main des Applet und Main der Applikation
bisschen gemeinsamen Code haben
2007-02-22 13:53 Hendrik Krauß [hkr@xxxxxxxx]:
* Fix für 39: Simbots sterben nicht
* Fix für 44: Steckengebliebene Bots von Simulation ausschließen
* Fix für 52: Parameter AliveObstacleTimeout raus
* ct-sim.xml: Bisschen mehr Doku
* Config matcht jetzt für die neuen os-Attribute nicht volle Strings,
sondern Anfänge ("Windows" matcht "Windows XP", "Windows 2000" usw.)
* ThreeDBot etwas aufgeräumt (mehr Doku, paar Umbenennungen, Warnungen
erledigt)
2007-02-22 00:16 Timo Sandmann [mail@xxxxxxxxxxxxxxx]:
* OS-Parameter fuer Mac OS X ergaenzt
2007-02-21 19:40 Hendrik Krauß [hkr@xxxxxxxx]:
* Applet etwas robuster, läuft wieder im Applet Viewer
* Neues Project Setting: Encoding auf UTF-8 (auch für Windows). Jetzt
sollten Umlaute plattformübergreifend gehen
2007-02-21 18:58 Hendrik Krauss [hkr@xxxxxxxx]:
* ct-sim.xml hat jetzt "os"-Attribut, Doku folgt
* In Eclipse /parcours, /tmp usw. aus dem Build-Path genommen (sind ja
keine Packages, sondern Ordner) -- Datei .classpath
* Cross-Plattform: Look and Feel fuer Linux auf Metal
* Umlaute und so, an denen sich Linux verschluckt, geaendert
2007-02-20 15:35 Hendrik Krauss [hkr@xxxxxxxx]: Log-Fenster per Default
breiter (80 Spalten)
2007-02-20 15:08 Hendrik Krauss [hkr@xxxxxxxx]:
* Fix fuer 33: Laufenden Remote-Call abbrechen
* Fix fuer 25: Warnung, wenn keine Welt da und SimulatedBot hinzugefuegt
* Kleinigkeiten
2007-02-17 0:50 Hendrik Krauss [hkr@xxxxxxxx]:
* DefaultController vereinfacht, Prinzip ist: Sequencer-Thread laeuft
genau dann, wenn eine Welt geladen ist
* Das fixt hoffentlich Bug 10
* Stop-Knopf weg (fixt Bug 13)
* Etliche Todo-Marker durchgesehen
* Level etlicher Logausgaben angepasst
2007-02-17 0:38 Hendrik Krauss [hkr@xxxxxxxx]: Remote-Calls getestet und
verbessert, sind jetzt recht stabil
2007-02-16 16:47 Hendrik Krauss [hkr@xxxxxxxx]: Fix fuer Bug 12:
Sim-Absturz beim schliessen eines Bots
2007-02-16 13:58 Hendrik Krauss [hkr@xxxxxxxx]: Nachtrag zum letzten Checkin
2007-02-16 13:56 Hendrik Krauss [hkr@xxxxxxxx]:
* Applet: Log-Level einstellbar zur Fehlersuche
* Kleinigkeiten
2007-02-15 18:40 Hendrik Krauss [hkr@xxxxxxxx]: Goldene Regel: Erst
testen, dann einchecken
2007-02-15 18:32 Hendrik Krauss [hkr@xxxxxxxx]: Bisschen Updates am
Applet-Bauen
2007-02-15 15:52 Hendrik Krauss [hkr@xxxxxxxx]:
* Neu: Applet (ctSim.applet.Main); wie man's baut siehe Wiki
* Neu: make-applet.xml, applet.html, java.policy.applet (letztere
uninteressant, nur Eclipse-intern noetig)
* Fix fuer Bug 10: Sim-Bug beim Schliessen von Welten
* Keine "Synch verloren"-Warnungen mehr beim Verbinden mit Real-Bots
* Icon-Bereitstellung umorganisiert (wegen
Applet-Sicherheitsbeschraenkungen); IconHashMap umbenannt nach FileIconMap
* Kleinigkeiten
2007-02-13 19:22 Hendrik Krauss [hkr@xxxxxxxx]:
* Fix fuer Bug 4: Auto-Scrolling im Sim-Log-Fenster
* Fix fuer Bug 5: Sim-Log-Fenster: "Speichern als txt"
* daher Neu: LogViewer
* Zu Bug 7: ct-Sim-Probleme OSX 10.4.x -- MainWindow leitet alle Calls,
die von aussen (Controller) kommen, jetzt auf den EDT um. Vielleicht ist
das die Loesung des Bug. Mal testen
* Dialog "Verbinden / Per TCP" ueberarbeitet; IP/Port werden jetzt aus
Konfig geholt (neue Parameter eingefuehrt)
* Neu: Icon Save16
* Neu: BackslashNConverterStream
* Weg: ComponentGroupGUI war noch von einer Aufraeumaktion uebriggeblieben
2007-02-13 12:29 Hendrik Krauss [hkr@xxxxxxxx]:
* Fix fuer Bug 8: Kein Scrollen moeglich, wenn Sim aktiv
* Fix fuer Bug 3: Logging zum Sim fehlerhaft
2007-02-13 2:04 Hendrik Krauss [hkr@xxxxxxxx]:
* Neu: RemoteCallCompnt inkl. Gui
* Verschoben: Icons werden jetzt von Config bereitgestellt
* Neu: 2 Hilfsklassen
2007-02-11 17:57 Hendrik Krauss [hkr@xxxxxxxx]:
* Nachtrag zum 5.2. -- vergessen im Changelog zu vermerken: Command
aktualisiert, SubCodes sind jetzt abhaengig von den Codes
* Weg: @Buisit-Annotation (Applet-Security mag das nicht; laeuft jetzt
ueber Methodenname, wenn das auch weniger offensichtlich ist)
* Umbenannt: Closure -> Runnable1 (weniger verwirrend)
* Command: Setter fuer SubCode und Payload
* SimBotTcpDump toleriert jetzt ProtocolExceptions
* Kleinigkeiten
2007-02-03 23:21 Hendrik Krauss [hkr@xxxxxxxx]:
* Neu: Verbindungen per USB (COM) werden automatisch erkannt, kein
Menuepunkt mehr noetig
* Verschoben: Auf Verbindungen horchen (TCP und USB) und Handshaking
(TCP) in ComConnection bzw. TcpConnection verlagert und ueberarbeitet.
DefaultController daher einfacher. Grund: Wird im Applet auch gebraucht,
das keinen DefaultController zur Verfuegung hat
* Komplettiert: Doku fuer Command; erzaehlt einiges zum Protokoll
* Neu: ctSim.util.Menu, duenne Abstraktionsschicht ueber Swing, um
JMenus / JMenuItems leichter schreiben zu koennen (aus MainWinMenuBar
ausgekoppelt)
* Neu: ComConnection geht davon aus, dass sie ein Singleton ist
* Kleinigkeiten
2007-01-31 22:43 Hendrik Krauss [hkr@xxxxxxxx]:
* Weg: MovableObstacle (unklar, was Unterschied zu AliveObst sein soll,
nirgends verwendet)
* Neu: Gui fuer Position + Heading
* Weg: Alte Pos-Gui, BotPosition (hat eigentlich nichts getan)
* Umbenannt: ctSim.view.gui.Simple -> Tables (ist deskriptiver)
* Neu: Serial-Port-Einstellungen in der ct-sim.xml (Realbot)
* Kleinigkeiten
2007-01-30 16:25 Hendrik Krauss [hkr@xxxxxxxx]:
* Neu: RealBot; scheint gut zu klappen ueber USB
* Neu: Sensoren koennen lesen (wegen RealBot)
* Fix: LED-Reihenfolge war falschrum
* Neu: SaferThread, weil das Pattern viel vorkommt im Programm
* Command robuster gemacht gegen NullPointers
* Connection + Subklassen: Konstruktionsablauf vereinfacht
* Besseres Exception-Handling fuer ComConnection
2007-01-30 0:11 Hendrik Krauss [hkr@xxxxxxxx]: Grosse Umstellung
hinsichtlich der Bots (hoffentlich die letzte)
* Alles instabil, noch nicht gut getestet
* Weg: BotManager (in World integriert)
* AliveObstacle aus der Bothierarchie raus: Verwaltet (1) Shape, (2)
ObstState/Appearance, (3) Position/Heading und (4) Thread fuer die
Simulation. Das sind alles Sachen, die nur Sim-Bots brauchen (Real-Bots
nicht)
* AliveObstacle jetzt ein Wrapper um einen simulierten Bot
* Umbenannt: AliveObstacle -> ThreeDBot, s.o.
* Umbenannt: Bot -> BasicBot
* Umbenannt: CtBotSim -> SimulatedBot (jetzt ein Interface)
* Neu: Interface Bot, moeglichst leichtgewichtig
* Bots erstellen jetzt einfacher (Konstruktorsignaturen); braucht aber
mehr Klempnerei (Wrapper mit Bot verdrahten, Bot mit Sim usw.); jetzt
zentralisiert in der Welt
* Neu: SimulatorFactory, die Bots mit Simulatoren verknuepft
* Klarer Mechanismus zum Bots beenden (DisposeListener)
* Komponenten jetzt wo sie hingehoeren (CtBot)
* Kommando-Auswerte-Kram jetzt wo er hingehoert (BotComponentsList)
* Test-Bot nach wie vor ausser Funktion
* Neu: BotBarrier, um die Bots zu synchronisieren
* Umbenannt: BotBuisitor -> GuiBotBuisitor
* Kleinigkeiten
2007-01-26 23:05 Hendrik Krauss [hkr@xxxxxxxx]:
* Neu: Obststate (AliveObstacle) ist jetzt ein EnumSet, vereinfacht
manches im AObst und MasterSim
* Kleinigkeiten
2007-01-26 1:36 Hendrik Krauss [hkr@xxxxxxxx]:
* CtBotSimTcp: Paar Todos erledigt
* I/O im CtBotSimTcp vereinfacht
* Neu: Nichtverarbeitete Kommandos werden erkannt
* Neu: Welcome-Kommando wird geprueft
* Kleinigkeiten
2007-01-25 21:05 Hendrik Krauss [hkr@xxxxxxxx]: Mist -- ct-sim.xml,
.classpath, .project versehentlich mitcommittet. Rueckgaengig
2007-01-25 20:46 Hendrik Krauss [hkr@xxxxxxxx]:
* Neu: Split-Model-Ansatz fuer BotComponents (haben jetzt ein internes
und ein externes Model), um Threadsicherheit zu garantieren; Doku folgt
* Neu: Bot-Komponente Uhr (sagt ihm die Simzeit)
* Fix: Seit Commit 18. Jan 12:45 war Simulation subtil defekt. Grund:
Bot verlaesst sich darauf, dass SENS_ERROR das vorletzte Kommando ist
(DONE das letzte). Sim hat es irgendwo geschickt, nicht unbedingt als
letztes. CommandOutputStream weiss das jetzt und ist nebenbei einfacher
geworden
* SimBotTcpDump startet neu, wenn es die Verbindung verliert
* Wieder eigene Datei: LcDisplayTest
* Umgezogen: MemoryLeakTest
* Kleinigkeiten
2007-01-18 17:32 Hendrik Krauss [hkr@xxxxxxxx]:
* Neu: Asynchrones Schreiben fuer Bot-Komponenten (RemoteControl,
MousePicture)
* Neu: MousePicture wird angezeigt
* Kleinigkeiten
2007-01-18 12:45 Hendrik Krauss [hkr@xxxxxxxx]:
* Neu: Trans-, Door- und Error-Sensoren
* Umbenannt: Actuator -> Actuators
* Umorganisiert: Aktuatoren alle in Datei Actuators umgezogen (400
Zeilen, vertretbare Groesse)
* Umorganisiert: Sensoren alle in Datei Sensors umgezogen (210 Zeilen)
* update()-Calls in MainWindow / WorldViewer waren ueberfluessig
* Alte Sensoren-Infrastruktur konnte weg
* Kleinigkeiten
2007-01-17 20:16 Hendrik Krauss [hkr@xxxxxxxx]:
* Neu: Maus-Sensor
* calcPos() ist jetzt auch ein Simulator
* Threading-Probleme; lassen Simulation jetzt auf dem
Event-Dispatch-Thread laufen; verlangsamt alles
* E/A ist jetzt buffered (scheint auch was zu helfen, wenn ich die
Ausgabe vom Profiler richtig interpretiere)
* Kleinigkeiten
2007-01-15 21:07 Hendrik Krauss [hkr@xxxxxxxx]: Mehr Sachen aus meinem
lokalen Prototyp eingebaut
* Neu: Konfigoption, die den RC5-Code angibt, der beim Starten an einen
Sim-Bot gehen soll; Default "Taste 5"
* Neu: Fernbedienungssensor, -gui
* Kleinigkeiten
2007-01-15 13:42 Hendrik Krauss [hkr@xxxxxxxx]: Mehr Sachen aus meinem
lokalen Prototyp eingebaut
* Neue, vereinfachte Infrastruktur fuer Simulation
* TimeLogger hat jetzt Konfig-Einstellung
* Neu: Buisitor, der Builder+Visitor-Pattern ermoeglicht (Doku folgt)
* Kleinigkeiten
2007-01-15 13:42 Hendrik Krauss [hkr@xxxxxxxx]: Mehr Sachen aus meinem
lokalen Prototyp eingebaut
* Neu: Abgrundsensoren
* Neu: Lichtsensoren
* Kleinigkeiten
2007-01-15 12:16 Hendrik Krauss [hkr@xxxxxxxx]: Mehr Sachen aus meinem
lokalen Prototyp eingebaut
* Neu: Liniensensor
* Umbenannt: RunOfTheMill -> Simple (versteht ja keiner)
2007-01-15 01:31 Hendrik Krauss [hkr@xxxxxxxx]: Mehr Sachen aus meinem
lokalen Prototyp eingebaut
* Neu: Abstandssensor (schwere Geburt)
* Neu: Listen und Maps kann man einfacher mit Typinferenz erzeugen;
Misc.newMap() / Misc.newList(); ueberall umgestellt
* Kleinigkeiten
2007-01-14 21:07 Hendrik Krauss [hkr@xxxxxxxx]: Mehr Sachen aus meinem
lokalen Prototyp eingebaut
* Neu: CtBotShape, zweifarbige Shape des c't-Bot, zu sehen bei
Kollisionen/Loechern/abgerissenen TCP-Verbindungen; das neue Aussehen
ist auch klarer im Code und nicht mehr um 90? gedreht wie bisher
(konsistent mit Headings)
* AliveObstacle: Heading um 90? gedreht (vorher: Kurs 0? = nach
Steuerbord, jetzt: Kurs 0? = geradeaus)
* AliveObstacle: Appearance-Verwaltung etwas aufgeraeumt
* Neu: Konsistente und freundliche Bot-Namen
* Aufgeraeumt: ConfigManager umfassend entschlackt; gesamte Konfig wird
jetzt von Klasse Config verwaltet; dort auch neuer Appearance-Parser
* Daher Aenderungen ueberall: ConfigManager -> Config
* Fix: XmlDocument hat jetzt klaren Umgang mit nicht vorhandenen Nodes
* Robustheit: Decoratoror wirft mehr Exceptions
* Fix: Decoratoror hat Methoden aus Object ignoriert
* Kleinigkeiten
2007-01-11 21:09 Hendrik Krauss [hkr@xxxxxxxx]: Mehr Sachen aus meinem
lokalen Prototyp eingebaut
* Aufgeraumt (Forts.): CtBotSimTcp
* Neu: Simulatoren-Infrastruktur im CtBotSimTcp (aber weiss noch nicht,
ob die so bleibt)
* Neu: EncoderSensor ueberarbeitet + samt seinem Simulator
* Umbenannt: ctSim.view.gui.Actuators ->
ctSim.view.gui.RunOfTheMill.Actuators
* Kleinigkeiten
2007-01-10 17:19 Hendrik Krauss [hkr@xxxxxxxx]: Mehr Sachen aus meinem
lokalen Prototyp eingebaut
* BotComponent jetzt mit CanRead- und CanWrite-Interfaces, scheint mir
besser so
* Neu: Governor ueberarbeitet, alte Aktuatoren-Gui konnte damit weg
* Neu: Unterstuetzung fuer DoorServo
* Verschoben: Log-Komponente -> freigewordene Actuator-Klasse (die
kurzen Klassen kann man gut in einer Datei zusammenfassen)
* Dokumentiert: Component-Flag-Tabellen
* Kleinigkeiten
2007-01-09 21:46 Hendrik Krauss [hkr@xxxxxxxx]: Mehr Sachen aus meinem
lokalen Prototyp eingebaut
* Fix: Aktuatoren/Sensoren zeigen wieder Werte
* Neu: LEDs (Indicators umbenannt und aktualisiert)
* Neu: Entwicklertool ctSim.SimBotTcpDump (Macht die Command-Objekte
sichtbar, die durch die TCP-Verbindung zwischen c't-Sim und Steuercode
laufen)
* Aufgeraeumt: Connection: toter Code weg, Methoden umbenannt wie in
Java ueblich (send -> write, disconnect -> close); wirkt sich auf
Commands + deren Verwender aus
* Aufgeraeumt: TcpConnection: Vereinfacht
* Neu: ComConnection: Unterstuetzung fuer serielle Verbindungen
* DefaultController: Unterstuetzung fuer Real-Bots
* RXTX im Eclipse-Projekt als Library angemeldet
* Kleinigkeiten
2007-01-09 15:03 Hendrik Krauss [hkr@xxxxxxxx]: Mehr Sachen aus meinem
lokalen Prototyp eingebaut
* Bot: Infrastruktur fuer Component-Flag-Tabellen (Doku folgt)
* Neuer Log-Aktuator (Klasse Log); noch ungetestet, da Sim-Bot sowas
nicht sendet und Real-Bot noch nicht geht
* CtBotSimTcp: Log- und LCD-Kram weg
* Kleinigkeiten
2007-01-09 13:20 Hendrik Krauss [hkr@xxxxxxxx]: Mehr Sachen aus meinem
lokalen Prototyp eingebaut
* Gui-Bauen-Infrastruktur jetzt Builder/Visitor-Pattern (BotViewer
angepasst, BotBuisitor dazu, AndEverything dazu); Doku folgt
* BotComponent: Neue Infrastruktur vorbereitet, Klasse Flags erstellt
* Erste neue Komponente: LcDisplay, die andern werden nach und nach
upgedated
* CtBotSimTcp: LCD-Verwaltungs-Kram in LcDisplay verlagert (da gehoert's
ja wohl hin)
* Bot + AliveObst aufgeraeumt
* Interface TcpBot weg (keine Bedeutung mehr ohne AnsweringMachine)
* Kleinigkeiten
2007-01-08 20:07 Hendrik Krauss [hkr@xxxxxxxx]: Mehr Sachen aus meinem
lokalen Prototyp eingebaut
* Klasse Command ueberarbeitet, vereinfacht, teilweise dokumentiert.
Wirkt sich auf alle Stellen aus, wo sie verwendet wird
* CtBotSimTcp: bisschen aufgeraeumt
* AnsweringMachine raus, hat keinen Sinn (Streams puffern eh alles)
* EchoTest und TestServer werden nicht mehr mitkompiliert
* BotComponent.getType() weg (nirgends verwendet), wirkt sich auf alle
BotComponents aus
* Aktuatorklasse Display aufgeraeumt, umbenannt: LcDisplay
* Kleinigkeiten
2007-01-08 1:03 Hendrik Krauss [hkr@xxxxxxxx]: Einige Sachen aus meinem
lokalen Prototyp eingebaut
* RX/TX-Bibliothek wieder eingecheckt (Vorbereitung fuer
RealBot-Restauration)
* CtSimFrame aufgeteilt: MainWindow und MainWinMenuBar
* JTabbedPaneWithCloseIcons neu implementiert (ClosableTabsPane:
kuerzer, einfacher, kann bisschen mehr), 2 Icons hinzugefuegt
* Bot: stop() und die() waren Synonyme, stop() entfernt
* AObst hat death listener bekommen (wird benachrichtigt, wenn AObst stirbt)
* BotInfo weg (bestand im Endeffekt nur aus 2 Feldern)
* BotPanel, DefBotPanel unter dem Namen BotViewer zusammengefasst und
vereinfacht
* ControlBar ist aufgrund der Vereinfachungen ueberfluessig geworden
* Kleinigkeiten
2007-01-07 18:50 Hendrik Krauss [hkr@xxxxxxxx]:
Ok, mein letzter Check-in (18. Dez) war Mist. Der ganze NavState klappt
nicht
und ich weiss nicht woran's liegt. Verwerfe den letzten Commit: gehe auf den
vorletzten Check-in zurueck (Stand 6. Dez, denn am 5. war der vorletzte
Check-in). Dann gehen wir das nochmal ruhiger an.
2006-12-18 Hendrik Krauss [hkr@xxxxxxxx]: Entwicklungsversion, UNSTABLE
* Blickrichtung (Heading) wird jetzt fast ueberall in Grad
(Uhrzeigersinn und 0? = Norden) ausgedrueckt, das ist einfacher und
weniger irrefuehrend als der bisherige Vector3d. Funktioniert in Gui
noch nicht
* Position + Blickrichtung eines AliveObstacle gesammelt in neuer Klasse
NavState (J3D-Modularisierung)
* Alten Code in Bot und CtBot geloescht
* Alle Sensoren/Aktuatoren: Methode getType() weg, wurde nie aufgerufen
* Diverses
2006-12-05 Hendrik Krauss [hkr@xxxxxxxx]:
* FacadeFactory umbenannt in Decoratoror, viel davon umgeschrieben,
jetzt klarer und weniger umstaendlich
* Config.java bisschen vereinfacht
* Bug entdeckt (nicht gefixt, aber ich will das hier dokumentieren):
Beim Laden von Parcours von Platte treten MalformedURLExceptions auf;
keine Ahnung seit wann, mindestens seit dem letzten CVS-Tag; da es in
meiner lokalen Entwicklungskopie nicht auftritt, rechne damit, dass das
Problem in der naechsten Zeit weggeht
2006-12-01 Hendrik Krauss [hkr@xxxxxxxx]: Beginn der Operation
Java3D-Modularisierung, Tag erstellt (weil das geplante Applet kein J3D
haben wird, muss der ganze J3D benutzende Code so geschickt
zusammengefasst sein, dass man durch Weglassen eines Sim-Moduls
ueberhaupt keine Abhaengigkeit zu J3D mehr hat)
* Unnoetige Abhaengigkeit von Bot auf J3D weg
* Dito Sensoren und Aktuatoren
* Fix: Javadoc-Warning in WorldViewer
2006-11-24-B Hendrik Krauss [hkr@xxxxxxxx]:
* Infrastruktur: FacadeFactory ermoeglicht Mixins, so ganz generell
* XmlDocument glorifiziert mit Hilfe von Mixins, liefert jetzt bessere
Nodes zurueck
2006-11-24 Hendrik Krauss [hkr@xxxxxxxx]:
* Mikro-Aenderung, nur ein paar Kommentare
2006-10-25 Hendrik Krauss [hkr@xxxxxxxx]:
* Alle Parcours des Wettbewerbs eingecheckt
* Kleinigkeiten hier und da
2006-10-19 Benjamin Benz [bbe@xxxxxxxx] / Hendrik Krauss [hkr@xxxxxxxx]:
* Fix: Restwegfindung beachtet jetzt alle Zielfelder, nicht nur das ganz
links
2006-10-18-C Hendrik Krauss [hkr@xxxxxxxx]:
* ContestConductor und Subsysteme beachten jetzt die Reihenfolge der
Bots (vorher war es Glueckssache, ob der, der in ctsim_game.bot1 steht
auch in ctsim_log.pos1x/pos1y/usw. geschrieben wurde)
* Abgerissene SQL-Verbindungen werden neu aufgebaut (nach Erichs
nonchalantem Hinweis "och das kann schon mal passieren")
* Wiedereinstieg in abgebrochene Turniere verbessert: Findet jetzt auch
wieder rein, wenn Vorrunde komplett, aber Hauptrunde noch nicht geplant
2006-10-18-B Hendrik Krauss [hkr@xxxxxxxx]:
* Logschritt ganz am Ende eines Spiels wird jetzt erzwungen, um
Forentrollen den Wind aus den Segeln zu nehmen ("Der ist ja gar nicht
ganz im Ziel")
2006-10-18 Hendrik Krauss [hkr@xxxxxxxx]:
* 10 Sekunden Pause zwischen Spielen
* Sortierung Vorrunden-Rangliste nicht nach "finishtime", sondern
"finishtime, bot1restweg"
2006-10-17 Hendrik Krauss [hkr@xxxxxxxx]:
* Absturzresistenz: abgebrochene Contests werden erkannt und
wiederaufgenommen
* Wenn einer auf dem Zielfeld steht, kriegt er Restweg = 0
* Aenderung in TurningPoint vom letzten Checkin rueckgaengig -- hat wohl
mit den komisch gewordenen Restwegen zu tun
* Kleinigkeiten
2006-10-16 Hendrik Krauss [hkr@xxxxxxxx]:
* Parcours, ParcoursLoader und TurningPoint leicht veraendert auf der
Suche nach dem Restweg-Minus-1-Fehler; schliesslich gefixt
* Weiter Vorbereitungen fuer Screenshot-Kram
* Tool gestrickt, was ein Verzeichnis voller Screenshots in die
Datenbank laedt (ctSim.view.contestConductor.ScreenshotUploadTool)
* Kleinigkeiten
2006-10-11 Hendrik Krauss [hkr@xxxxxxxx]:
* BotManager: race condition beseitigt, die zu intermittierenden
Abstuerzen beim Level-Wechseln gefuehrt hat
* Vorbereitungen fuer Screenshot-Kram getroffen
* Kleinigkeiten
2006-10-10-D Hendrik Krauss [hkr@xxxxxxxx]:
* AliveObstacle hat jetzt keine Liste von ViewPlatforms mehr, da die
zugehoerigen Methoden ohne einen Zweck zu erfuellen eine NullPtrExcp
erzeugen
2006-10-10-C Hendrik Krauss [hkr@xxxxxxxx]:
* Wenn ein CtBotSimTcp die TCP-Verbindung verliert, stirbt er nicht,
sondern setzt sich auf Status "halted"
* ContestConductor schreibt jetzt Restwege (DB: ctsim_game.bot1restweg
und bot2restweg)
* Spielstand wird nach Ruecksprache mit ws nur noch alle 200 ms in die
DB geloggt
2006-10-10-B Hendrik Krauss [hkr@xxxxxxxx]:
* Fix: TimeLogger funktioniert auch fuer mehrere Spiele
* Loggen des letzten Schritts nochmal umgestellt
2006-10-10 Hendrik Krauss [hkr@xxxxxxxx]:
* Neuer kleiner View (Klasse TimeLogger) gibt Sim- und Realzeit
periodisch aus; aktiv nur in Contest-Modus
* DB-Schema: Neues Feld gametime_real, TournamentPlanner beachtet es
* Logging erfolgt jetzt standardmaessig in ctsim-N.log, wobei N rotiert
durch 0, 1, und 2 (= die letzten drei ctSim-Laeufe sind als Log verfuegbar)
* Hab die Geduld mit dem ErrorHandler verloren -- ist rausgeflogen,
ersetzt durch Log-Methoden
* Fix: Letzter Simschritt eines Spiels wird jetzt auch in die DB geloggt
* Logging-Subsystem wird jetzt ueber die Datei config/logging.conf
konfiguriert, nicht mehr hardcoded
2006-10-09 Hendrik Krauss [hkr@xxxxxxxx]:
* Turnierbaum neu gestrickt; macht Baeume jetzt so, wie's laut
Maildiskussion sein soll
* Schema fuer Contest-Datenbank inkl. umfangreicher Doku eingecheckt
* Diverse Verbesserungen
2006-10-06 Hendrik Krauss [hkr@xxxxxxxx]:
* angle-world-lamps.xml eingecheckt als Testparcours fuer den
PickConeRay-Bug; siehe Doku in der Klasse World
* CtSimFrame hat jetzt einen Screenshot-Button, der ins Temp-Verzeichnis
des Systems einen Screenshot legt (Linux: /tmp Windows: /Dokumente und
Einstellungen/Kasimir/Lokale Einstellungen/Temp)
* PicoContainer bewirkt, dass ConfigManager sich vereinfacht. Neue
Klasse Config.
2006-10-06 Hendrik Krauss [hkr@xxxxxxxx]: Funktion neuimplementiert, die
pro Simschritt in die DB loggt: unkomplizierter, kein Speicherleck mehr
2006-10-05 Benjamin Benz [bbe@xxxxxxxx]: remote-Ausfuehrung von Bots geht
2006-10-05 Benjamin Benz [bbe@xxxxxxxx]: Begonen mit der
remote-Ausfuehrung von Bots
2006-10-05 Hendrik Krauss [hkr@xxxxxxxx]: IP der Test-Datenbank stimmt
jetzt wieder
2006-10-04 Hendrik Krauss [hkr@xxxxxxxx]: Verschiedene Verbesserungen;
CtSimFrame bringt keine Logausgaben aus java.util.logging mehr, da das
als Fehlerquelle des terminate-Bug ausgemacht wurde
2006-10-14 Peter Koenig [pek@xxxxxxxx]: Bots drehen sich nicht mehr,
wenn sie in ein Loch gefallen sind
2006-10-04 Hendrik Krauss [hkr@xxxxxxxx]: Versehentlicher Check-in
rueckgaengig: Datei ContestConductorRecoveryTest weg
2006-10-04 Benjamin Benz [bbe@xxxxxxxx]: ContestConductor startet nun
auch unter Linux die Bots sauber
2006-10-04 Benjamin Benz [bbe@xxxxxxxx]: Die/Routinen des Botlisteners
bearbeitet, Contest-config abgepasst
2006-10-03 Benjamin Benz [bbe@xxxxxxxx]: Es gibt nun einen eigenen
Timeout fuer Alive Obstacles, der per Config festgesetzt werden darf.
ueberschreitet ein work()-Zyklus diesen, wird das Obstacle "halted".
Steht der Timeout auf 0, wird er ignoriert
2006-10-03 Benjamin Benz [bbe@xxxxxxxx]: AliveObstacles kennen nun einen
neune Zustand Halted, wenn dieser gesetzt ist, dürfen sie ihre
work()-Methode nicht ausfuehren
2006-10-03 Benjamin Benz [bbe@xxxxxxxx]: Config-Datei kommentiert
2006-10-03 Benjamin Benz [bbe@xxxxxxxx]: Der Controller wartet nun nur
noch die Zeit, die noch nicht verstrichen ist und nicht pauschal einen
vollen Zyklus
2006-10-03 Benjamin Benz [bbe@xxxxxxxx]: Timeout im Controller ist nun
per Config-Datei konfigurierbar
2006-10-02 Hendrik Krauss [hkr@xxxxxxxx]:
* Neue Dependency PicoContainer inkl. Klasse
ctSim.controller.InitializingPicoContainer; betrifft Initialisierung von
ctSim und leichte Testbarkeit; Doku folgt
* Neuimplementierung: ctSim.view.gui.WorldViewer ersetzt WorldPanel und
WorldView; kuerzer, einfacher, fehlerfreier.
* ConductorToDatabaseAdapter und DatabaseAdapter grossflaechig
umgestellt zur Performance-Steigerung, nachdem Profiler-Laeufe ergeben
haben, dass dort Probleme bzgl. memory footprint sind
* World: Groessen-Getter umbenannt, um Klarheit zu schaffen
* Characteristic: main()-Methode wieder funktionsfaehig gemacht zum
Testen, aufgeraeumt
* Diverse Verbesserungen
2006-09-28 Benjamin Benz [bbe@xxxxxxxx]: Timeouts in den Judge
eingefuegt, LastSavePostion in AliveObstacles hinzugefuegt
2006-09-25 Hendrik Krauss [hkr@xxxxxxxx]:
* TournamentTree hat jetzt ein ein kleines Demoprogramm (Klasse
TournamentTreeGuiTest)
* Mikroskopische Aenderungen hier und da
2006-09-22-B Hendrik Krauss [hkr@xxxxxxxx]: Klasse MemoryLeakTest erstellt
2006-09-22 Hendrik Krauss [hkr@xxxxxxxx]: Umbau Etappe 4 (vorher Tag
erstellt):
* ContestConductor vereinfacht; ist jetzt Beta; Test-Durchlaeufe des
Wettbewerbs scheinen zu funktionieren; Testen wird fortgesetzt
* neuer Einstiegspunkt:
ctSim.view.contestConductor.ContestConductorTest, der einen Wettbewerb
durchlaufen laesst, wobei in jedem Spiel sofort Bot 1 gewinnt
* View-Interface ausgebaut, damit die neue ContestConductor-Version
arbeiten kann
* View-Interface ausgebaut, damit CtSimFrame immer korrekt anzeigen
kann, welcher Judge gewaehlt ist
* DefaultController angepasst, um die neuen View-Methoden zu nutzen
* Konfig wird jetzt wieder geparst und gegen DTD gecheckt (vorher: nur
Parsen)
* MySQL-Treiber in Verzeichnis contrib (der Vollstaendigkeit halber);
.classpath angepasst
* Weitere 4 unbenutzte Klassen geloescht
* Diverse Verbesserungen
2006-09-20 Benjamin Benz [bbe@xxxxxxxx]: Parcours um Routinen zur
Bestimmung der kuerzesten Distanz zwischen einem Punkt und dem Ziel
erweitert (dazu einen Leserpatch von Michael Prähofer verwendet)
2006-09-19 Hendrik Krauss [hkr@xxxxxxxx]: Umbau Etappe 3 (vorher Tag
erstellt):
* World: Zeitvariablen und -methoden nach oben verschoben, umbenannt,
besser bzw. ueberhaupt mal dokumentiert. Semantik nicht veraendert.
* ParcoursLoader, Parcours, World: Vorbereitungen getroffen fuer Einbau
des Shortest-Path-Patch
* Subsystem ctSim.view.contestConductor weiterhin experimentell
* Konvention zur besseren Unterscheidung von Threads im Debugger: Alle
von unserem Code direkt erzeugten Threads haben jetzt Namen, die mit
"ctSim/" anfangen
* Alle 3 Judges: Straffungen; Arbeit an der Stelle muss aber noch
weitergehen
* Logging-System auf java.util.logging-Basis eingefuehrt (Hauptklasse
fuer uns: ctSim.util.FmtLogger). Sinn: Nach und nach das Gestruepp aus
System.out, System.err, Debug.out, ErrorHandler und e.printStackTrace
vereinheitlichen + professionalisieren
* Weitere 11 unbenutzte Klassen geloescht
* Diverse Verbesserungen
2006-09-?? Hendrik Krauss [hkr@xxxxxxxx]: Etappe 2 des
Umbaus/Aufraeumens: Grosse Umbenennungen und Verschiebungen; vorher auch
Tag erstellt zur Sicherheit.
* neuer Einstriegspunkt ins Programm ist die Klasse
ctSim.controller.Main nach Reorganisation des Controller
* GUI aus Package ctSim.view in Package ctSim.view.gui
* ContestJudge heisst jetzt ContestConductor und ist ein View im Package
ctSim.view.contestConductor (das sollte die endgueltige Architektur sein)
* Es existieren jetzt Interfaces, ueber die Controller und View
aufeinander zugreifen, um dieses Objektgestruepp aus Controller,
CtSimFrame, World, Judge etc. zu strukturieren; Arbeit in dieser
Richtung wird fortgesetzt
* diverse Vereinfachungen in der GUI und andernorts
* ueberfluessige Dateien weg (jd2xx, mindprod, manches aus der GUI)
2006-0?-?? Hendrik Krauss [hkr@xxxxxxxx]: Etappe 1 vom Umbau des
ContestJudge (ehemals LabyrinthContestJudge); einige damit verknuepfte
Aenderungen hier und da; generelles Aufraeumen. ContestJudge ist
experimentell: kompiliert, aber ist nicht weiter getestet und tut noch
nicht das, was er soll
2006-08-23 Felix Beckwermert [felix@xxxxxxxxxxxxxx]: ContestJudge zum
testen eingecheckt
2006-08-23 Felix Beckwermert [felix@xxxxxxxxxxxxxx]: BotManager
eingef?hrt; Ctrl. und View auf diesen angepasst
2006-08-23 Felix Beckwermert [felix@xxxxxxxxxxxxxx]: Kleinere
(Sch?nheits-)Anpassungen
--
Benjamin Benz
Heise Zeitschriften Verlag
Redaktion c't
eMail: bbe@xxxxxxxx
WWW : http://www.heise.de
Heise Zeitschriften Verlag GmbH & Co. KG
Registergericht: Amtsgericht Hannover HRA 26709
Persönlich haftende Gesellschafterin:
Heise Zeitschriften Verlag Geschäftsführung GmbH
Registergericht: Amtsgericht Hannover, HRB 60405
Geschäftsführer: Ansgar Heise, Steven P. Steinkraus, Dr. Alfons Schräder
|
|
|