PHP - Mouvelianischer Kalendar

  • Hallo lieber Forenteam,


    beim Quatschen mit Mastuck hatte ich erzählt, dass ich eine Routine zum Errechnen des Tages im Mouvelianischen Kalendar erstellt hatte. Bevor ich jetzt aber anfange mir zuerst die Forensoftware in seiner aktuellen Version zu kaufen, um damit ein eigenes Plugin zu bauen, poste ich einfach wie ich das im Kleinen umgesetzt habe. Vielleicht lässt es sich ja auch auf einem einfachen Weg auf die Seite integrieren.

    So ließe sich das aktuelle Datum ausgeben:

    Code
    $mouvelianDate = transform_mouvelian(strtotime(date('Y-m-d')));
    echo $mouvelianDate;
  • Keine Ahnung wie die entsprechende PHP Syntax wäre, aber du hast garantiert eine modulo funktion in irgendeiner Form. (int) ist natürlich dasselbe wie floor, falls PHP keine typkonversationen zulässt. Ich gehe außerdem davon aus dass die 1-2 überschüssigen Tage dem Koloss angehangen werden, aber dazu gibt es keine offizielle Aussage, soweit ich weiß. Die if-elseif Kette ist jedenfalls überaus hässlich und sehr unnötig, selbst wenn du die 1-2 überschüssigen auf 2 Seasons verteilen willst.

    Code
    Season = (Day > 364) ? season_names[3] : season_names[(int) Day/91]
    Day    = (Day > 364) ? Day -  273      : Day % 91

    Jacklyn Nought, Yarissa von Nebelstein, Rani Heriot


    'My name is Ozymandias, king of kings: Look on my works, ye Mighty, and despair!'

    Einmal editiert, zuletzt von Ozymandias () aus folgendem Grund: ... namensarray eingebaut. ... Unnötige Unfreundlichkeit ausgebaut.

  • Als Guild Wars 2 aus der Taufe gezogen wurde, waren die mouvelianischen Jahreszeiten jeweils 90 Tage und am Ende des Jahres gab es 5 bis 6 sogenannte Nicht-Tage, die keiner Jahrerzeit zugeordnet wurden. Das gab reichlich Diskussion in englischen Forum und man einigte sich dort auf jeweils 3 irdische Monate für eine Jahreszeit um es leichter umrechnen zu können.


    Die Modulo-Funktion gibt es natürlich in PHP, aber sie nützt hier leider nichts. Ich bin auch kein Freund von Konstrukten die nachher nicht mehr lesbar wären. Gut, mit der Schachtelung gebe ich dir Recht. Das geht natürlich kürzer:


  • Zitat

    Als Guild Wars 2 aus der Taufe gezogen wurde, waren die mouvelianischen Jahreszeiten jeweils 90 Tage und am Ende des Jahres gab es 5 bis 6 sogenannte Nicht-Tage, die keiner Jahrerzeit zugeordnet wurden. Das gab reichlich Diskussion in englischen Forum und man einigte sich dort auf jeweils 3 irdische Monate für eine Jahreszeit um es leichter umrechnen zu können.

    Das mit den drei Monaten ist aber auch nur an den Haaren herbeigezogen. In GW1 hatten wir 90 Tage pro Season und in 360-Tage Jahr. In GW2 haben sie es dem irdischen Kalender anpassen wollen, die 5 Tage wurden dazu hinzugefügt, aber es gibt keine Aussage dazu, an welcher Stelle oder wie.


    Ohne offizielles gibt es keine Möglichkeit, die drei Optionen unter einen Hut zu bringen (3 Monate, gleichverteilung mit bonustag(en) in einem oder zwei monaten, Maya-like 4 Seasons mit 90 Tagen + 5 Out-of-Season Tage). Gleichverteilung und fünfte Season sind meiner Meinung nach beide plausibler, da nicht von unserem Kalender oder unseren (eh nicht zusammenpassenden) seasons abhängig.

    Jacklyn Nought, Yarissa von Nebelstein, Rani Heriot


    'My name is Ozymandias, king of kings: Look on my works, ye Mighty, and despair!'

  • Du, mir ist es völlig Wurst wo die 5 Tage verteilt werden.


    Anfangs hatte meine Routine stur 4 x 90 Tage + 5 (oder 6) Bonustage außerhalb der Jahreszeiten abgebildet. Das war programmiertechnisch hübsch einfach zu rechnen. Einfach ein Modulo anwenden und schwupps, schon fertig.


    Dann kamen die Diskussionen der englischen RP-Gemeinschaft, die sich auf die Abbildung auf die gregorianischen Vierteljahre einigte, was letztlich dazu führte, dass Umrechnungstabllen erstellt worden waren (Bsp.: klicke hier). Das war nicht mehr so "hübsch" zu programmieren, aber stellt den derzeitigen Entwicklungsstand meines Programm dar.


    Wenn unsere deutsche RP-Gemeinde das anders möchte, zimmere ich die Rechnung um. Allerdings passe ich diesmal nicht wieder den deutschen Wiki-Beitrag an. Die Haue darf diesmal ein anderer kassieren. Damals fügte ich nämlich aus dem Bedürfnis helfen zu wollen, die 5 neuen Tage einfach hinter die Jahreszeit des Kolosses an... Helfen wird selten belohnt. ^^


    Ich wäre dafür das aber nicht noch weiter auszudiskutieren, sondern einfach die hiesige Gemeinschaft abstimmen zu lassen wie sie mit dem Mouvelianischen Kalender umgeht bzw. umgehen möchte.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!