-affected in BUILD_ARK gesetzt
[aymargeddon/current.git] / TODO
diff --git a/TODO b/TODO
index 63cfd4f..121a0b7 100644 (file)
--- a/TODO
+++ b/TODO
@@ -1,19 +1,27 @@
-noch ein test
-
 CRITICAL
+========
                                                            
 Dinge in dieser Rubrik sollten vor dem nächsten Spielstart erledigt sein.
 
 Bugs
+----
+
+- $::conf->{-EPL_DEBUG} funktioniert nicht. Es wird -DEBUG verwendet,
+auch wenn man in einem epl-script ist.
+
+- Mobiles können vereinzeln. Genaue Umstände unklar. Möglicherweise hat es was mit länger nicht laufendem scheduler zu tun?
+Aufgetreten ist es durch Produktion in einer Heimatstadt nach Bewegung.
 
-- Passwörter nicht mehr im Klartext in der Datenbank ablegen und
-schon gar nicht im Klartext in der URL stehen haben! Urgs. 
+- Registrieren klappt erst, nachdem eine Sprache ausgewählt wurde, weil 
+"LANGUAGE cannot be null".
 
 Testen
+------
 
 - mal nach SQL-Injection-Möglichkeiten checken. 
     
 Features
+--------
 
 - komplett neuer HTML5-Canvas-jquery-Client.
 
@@ -27,6 +35,7 @@ Features
 (x=Besatzerkampfstärke) zu Ureinwohnern. -> Aufstand.
 
 Neue Menu-Struktur:
+-------------------
 
 - Home/News/Rules/Reference/Login/(Player)/(Map)/Language dabei zeigen
 alle bis auf die letzten vier Punkte auf das Wiki (Hauptseite/Aktuelle
@@ -50,137 +59,139 @@ neuem Client?)
 
 
 WICHTIG
+=======
 
-- die nachfolgenden Abschnitte formatieren ;)
+Dinge in dieser Rubrik sollten spätestens im Laufe des nächsten Testspiels angegangen werden.
 
+- translate this TODO into english
 
-
-    Nachricht bei Ertrinken fehlt
-        BUG?: uninitialized value in BUILD_TEMPLE::first_phase()
-           Mitbewegen nur noch bei Archen und umbenennen in
-einsteigen/aussteigen
-    BUG?: irgendwie kam es in 6_3 zu Fehlern. Beteiligte
-Randbedingungen: Kampf in der Heimatstadt, zwei weitere Spieler,
+- Error: Tag 'ROLE_UNDEFINED' not defined for language 'DE' (player.epl, wenn keine rolle gewählt)
+- Farben getrennt vom Allianzstatus setzbar.
+- Nachricht bei Ertrinken fehlt
+- BUG?: uninitialized value in BUILD_TEMPLE::first_phase()
+- Mitbewegen nur noch bei Archen und umbenennen in einsteigen/aussteigen (was statt dessen?)
+- BUG?: irgendwie kam es in 6_3 zu Fehlern. Beteiligte Randbedingungen: Kampf in der Heimatstadt, zwei weitere Spieler,
 Archenbesitzerwechsel, Tuberculosis, Umdrehen wg. FRIEND.
-    field-Frame übersichtlicher gestalten. nur wie? siehe Vorschlag
-Seitenframe
-    überfluten sollte alle Seuchen löschen.
-        In der Map sollte bei allen Bildern das TITLE-Attribut auf den
-Feldnamen (bzw. Koordinaten) gesetzt werden, damit der Benutzer mit
-der Maus sieht, wo das ist.
-    find_first_free() sollte nicht die erste freie nehmen, sondern die
+- überfluten sollte alle Seuchen löschen.
+- find_first_free() sollte nicht die erste freie nehmen, sondern die
 höchste um eins erhöhen (maximum beachten!) und nur, wenn oben nix
 mehr frei ist, von unten wieder anfangen. Erleichtert das debuggen!
-    MOVE second_phase() sollte im Log auch die Location zu der es hin
+- MOVE second_phase() sollte im Log auch die Location zu der es hin
 geht vermerken, erleichtert das debuggen enorm.
-    Die Message bei Rückzügen sollte auch angeben wohin und nicht nur
+- Die Message bei Rückzügen sollte auch angeben wohin und nicht nur
 woher.
-    Aufgeben-Button mit Nachfrage. Wechsel in die Observer-Rolle. Für
+- Aufgeben-Button mit Nachfrage. Wechsel in die Observer-Rolle. Für
 Erdlinge: Heimatstadt wird normal. Produktion und Beten wird gestoppt.
 Für Götter: Alle Avatare verschwinden. Kampfstärke für letzte Schlacht
 wird auf Null gesetzt. Mana weg.
-    Events, die nicht jeder sieht, sondern nur der Spieler, der sie
+- Events, die nicht jeder sieht, sondern nur der Spieler, der sie
 ausgelöst hat. zB für PRAY
-    Trennung von Spielernachrichten und Servernachrichten.
-        Einzelne Messages löschbar
-           BUG: Kampfmessages gehen nicht immer an die Beteiligten
+- Trennung von Spielernachrichten und Servernachrichten.
+- Einzelne Messages löschbar
+- BUG: Kampfmessages gehen nicht immer an die Beteiligten
 (wenn alle sterben und keine Einheit in der näher)
-    "reply" lokalisieren
-        Kurzreferenz sollte epl-generiert sein um die "echten" Zeiten
+- "reply" lokalisieren
+- Kurzreferenz sollte epl-generiert sein um die "echten" Zeiten
 anzeigen zu können
-    "Sterbereihenfolge" überall ändern in "Schlachtordnung"
-        BUG: Es scheint gelegentlich vorzukommen, dass %fdat bei
+- "Sterbereihenfolge" überall ändern in "Schlachtordnung"
+- BUG: Es scheint gelegentlich vorzukommen, dass %fdat bei
 Übergabe an command.epl verlorengeht. Wie reproduzieren ???
 Möglicherweise tritt das Problem nur beim Serverneustart auf.
-    Manakosten bei Götterbefehlen in command.epl mit anzeigen.
-        FROGS: Ein System für Benutzerabhängige Konfiguration
-           Config aufspalten in FROGS und nicht-FROGS
-               englisches Wiki
-                   Create: Alle Berge müssen flutbar sein
-(alternativ: Städte flutbar, siehe Maildiskussion).
-    PEACE darf nicht genullt werden bei kampfloser übername. Leider
+- Manakosten bei Götterbefehlen in command.epl mit anzeigen.
+- FROGS: Ein System für Benutzerabhängige Konfiguration
+- Config aufspalten in FROGS und nicht-FROGS
+- Wiki und englisches Wiki
+- Create: Alle Berge müssen flutbar sein
+- PEACE darf nicht genullt werden bei kampfloser übername. Leider
 kann man dann nicht mehr so vorgehen wie jetzt und den PEACE-Wert im
 PRODUCE-Befehl speichern. Man braucht dann einen PEACE-Zähler in MAP.
-    Bei Glücksfaktor ändern die negativen Zahlen erwähnen.
-        BUG: "need to login" direkt nach dem neu registrieren im
+- Bei Glücksfaktor ändern die negativen Zahlen erwähnen. (?)
+- BUG: "need to login" direkt nach dem neu registrieren im
 field.epl-frame (aber nicht in der map). geht auch beim ersten klick
 weg. hat mit udat{-loc} zu tun. wie genau, ist unklar.
-    Farben getrennt vom Allianzstatus setzbar.
-        Felder benennbar machen von Feldeigentümer. Name bleibt auch,
+- Felder benennbar machen von Feldeigentümer. Name bleibt auch,
 wenn er das feld verlässt. (zunächst mal Anfangsnamen alle gleich
 (klick auf Namen zur Umbenennung), später Namen generieren mit einem
 ähnlichen System wie in Ragnaroek
-    Man sollte den "Inhalt" von sich bewegenden Archen schon sehen,
+- Man sollte den "Inhalt" von sich bewegenden Archen schon sehen,
 wenn da eigene Leute mitfahren. Nicht für Alliierte.
-    BUG bei Götterkampfbericht: "Neue Helden unassigned position".
+- BUG bei Götterkampfbericht: "Neue Helden unassigned position".
 Sprachenmix.
-    im Frontend PLAGUE und FLOOD nur erlauben, wenn ein Avatar da ist
-und DESTROY nur auf Inseln. neue funktion
-aymargeddon::avatar_available benutzen
-    BUG: Dequoten bei SEND_MSG.
-        zusätzliche Kategorien auf player.epl: closed games (da kommen
+- im Frontend PLAGUE und FLOOD nur erlauben, wenn ein Avatar da ist
+und DESTROY nur auf Inseln. neue funktion aymargeddon::avatar_available benutzen
+- BUG: Dequoten bei SEND_MSG.
+- zusätzliche Kategorien auf player.epl: closed games (da kommen
 spiele rein, in die man nicht mehr reinkommt, also weil sie voll sind,
 oder weil sie beendet sind), ohne link! Problem: was ist mit observern?
-    Volle Rollen nicht mehr anzeigen bei role_select.epl. Ausserdem
-den entsprechenden Fehler abfangen (bei Gleichzeitigkeit wichtig).
-    Automatische Versionsanzeige mittels tla 'tla log-ls|tail -1'
-(Problem: brauche dazu userrechte, lösung zB: cronjob, der das in eine
-lesbare datei schreibt, besser: ein script, dass automatisch nach dem
-update aufgerufen wird. ich glaube tla unterstützt sowas...)
-    Automatische Anzeige seit wann das Backend läuft/ob überhaupt.
-        Beim loggen auch die Duration in ZE angeben, nicht nur in sec.
-           BUG?: probleme mit unify_mobiles() und MOVE_WITH. Leute
+- Volle Rollen nicht mehr anzeigen bei role_select.epl. Ausserdem
+den entsprechenden Fehler abfangen (bei Gleichzeitigkeit wichtig). (?)
+- Automatische Anzeige seit wann das Backend läuft/ob überhaupt.
+- Beim loggen auch die Duration in ZE angeben, nicht nur in sec.
+- BUG?: probleme mit unify_mobiles() und MOVE_WITH. Leute
 moven mit, obwohl sie identisch sind. (wie reproduzieren ???)
-    Bei Spielende müssen alle Befehle eine entsprechende Fehlermeldung
+- Bei Spielende müssen alle Befehle eine entsprechende Fehlermeldung
 erzeugen. Besser: garnicht erst die Links anzeigen.
-    BUG: MOVE::second_phase() muss checken, ob das Feld inzwischen
+- BUG: MOVE::second_phase() muss checken, ob das Feld inzwischen
 geflutet wurde... in enter_field()? Dann Umkehr?
-    EARTHLING_FIGHT: Avatare sollten nicht mitkämpfen, wenn neutral
-        last_login in PLAYER schreiben und anzeigen
-           Voreingestelltes fliehen ohne kampf bei übermacht
-(einstellbar pro feld)
-    voreingestellter MOVE-Befehl für produzierte krieger.
-        Erdlingseinheiten zuteilbar in Garnison und mobile Einheiten.
-Mobile Einheiten helfen automatisch in Nachbarfeldern aus.
-    UNSCHOEN: HexTorus::neighbours() gibt doppelte zurück bei
-wrap-around
-    Sourcen einen eigenen 'Aymargeddon'-Namensraum geben. Nur dieses
+- EARTHLING_FIGHT: Avatare sollten nicht mitkämpfen, wenn neutral
+- last_login in PLAYER schreiben und anzeigen
+- Voreingestelltes fliehen ohne kampf bei übermacht (einstellbar pro feld)
+- voreingestellter MOVE-Befehl für produzierte krieger.
+- Erdlingseinheiten zuteilbar in Garnison und mobile Einheiten. Mobile Einheiten helfen automatisch in Nachbarfeldern aus.
+- UNSCHOEN: HexTorus::neighbours() gibt doppelte zurück bei wrap-around
+- Sourcen einen eigenen 'Aymargeddon'-Namensraum geben. Nur dieses
 'Aymargeddon'-Verzeichnis muss sichtbar gemacht werden. Vereinfacht
 die Administration#Installation auf Debian und alle Updates, bei denen
 neue Source-Dateien hinzukommen. Problem: Was ist mit dem
 FROGS-Namensraum? 
 
-Checker
+#### ab hier neu formatieren ###
 
-    BUG: test A_in_B benutzt fälschlicherweise single_select()
-        test nach mobiles mit count = 0
-           Test nach non-available units ohne befehle.
-               Tests für MOVE_WITH
-                   tests für avatarkämpfe
-                       testen ob FIGHT_EARTHLING vorhanden und Event
-gesetzt wenn ATTACKER da.
-    neuer check-typ LOCATION: Funktion wird für jede Location aufgerufen
-        test summarize 
-       
-       sonstiges
+Checker
+-------
+
+- BUG: test A_in_B benutzt fälschlicherweise single_select()
+- test nach mobiles mit count = 0
+- Test nach non-available units ohne befehle.
+- Tests für MOVE_WITH
+- tests für avatarkämpfe
+- testen ob FIGHT_EARTHLING vorhanden und Event gesetzt wenn ATTACKER da.
+- neuer check-typ LOCATION: Funktion wird für jede Location aufgerufen
+- test summarize 
        
-           mailingliste selber machen. 
+sonstiges
+---------
+
+- Alte Adressen und Adressen aus pledgebank sammeln und in neue Mailingliste einpflegen und Leute einladen
            
-           UNWICHTIG:
+UNWICHTIG:
+==========
+
+- Der Link zur Mailingliste in der Registrierungsmail sollte in die
+Config und von dort eingelesen werden.
+
+- In player.epl wird die Rollenauswahl angezeigt, wenn man das Spiel in dem der Client sich befidet ($udat->{-game}) auf dem server gelöscht hat. 
            
-               Bei Ereignissen, die jetzt oder in der Vergangenheit
-stattfinden anstatt der leeren Zeit anzeigen: "so bald wie möglich".
-    BUG: death_count bei kämpfenden unbesetzten städten kann negativ
-werden, hat aber keine weiteren Auswirkungen.
-    UNSCHÖN: an einigen Stellen funktioniert das Programm nicht mehr,
+- Bei Ereignissen, die jetzt oder in der Vergangenheit stattfinden anstatt der leeren Zeit anzeigen: "so bald wie möglich".
+
+- BUG: death_count bei kämpfenden unbesetzten städten kann negativ werden, hat aber keine weiteren Auswirkungen.
+
+- UNSCHÖN: an einigen Stellen funktioniert das Programm nicht mehr,
 wenn alte Events oder alte Befehle nicht gelöscht werden (ist in der
-Config noch vorgesehen)
-    wirklich???: (getrennte Seiten für Statistik, Messages, (Events)
-(alle in player.epl nur mit unterschiedlichen Modi)
-    Mitte der Karte selber auswählen.
-        in player.epl gleich ein Spiel auswählen, wenn man das erste
-mal reinkommt.
-    role-seite
+Config noch vorgesehen) hä??? was ist damit gemeint?
+- wirklich???: (getrennte Seiten für Statistik, Messages, (Events)
+(alle in player.epl nur mit unterschiedlichen Modi) => vielleicht als Tabs mit jquery machen
+
+- Mitte der Karte selber auswählbar machen.
+
+- in player.epl gleich ein Spiel auswählen, wenn man das erste mal reinkommt.
+
+- role-seite (?)
+
+***************************ab hier unformatiert*****************************
+
+
         BUG: startfeld für observer manchmal nicht Aymargeddon
 (gleichzeitig login dysfunktional) wahrscheinlich in player.epl
     defaults in command.epl
@@ -209,8 +220,3 @@ Datenbank eintragen und bei MOVE anpassen? dafür ist eigene Tabelle
 nötig. aber: message_to_field() wird eh nur noch selten benutzt, lohnt
 also der aufwand überhaupt? 
 
-TEST
-
-Diese Datei wird inzwischen im Wiki gepflegt:
-
-http://www.aymargeddon.de/wiki/index.php/TODO