Module:BassaridianCalendar: Difference between revisions
From MicrasWiki
Jump to navigationJump to search
NewZimiaGov (talk | contribs) No edit summary |
NewZimiaGov (talk | contribs) No edit summary |
||
| Line 125: | Line 125: | ||
-- 5) DEFINE EVENTS WITH CORRECTED DAY ALIGNMENT AND SHORT DESCRIPTIONS | -- 5) DEFINE EVENTS WITH CORRECTED DAY ALIGNMENT AND SHORT DESCRIPTIONS | ||
---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | ||
local events = { | |||
["Atosiel,1"] = "Cricket Rise Festival [[Alperkin]] – An Alperkin tradition welcoming spring with lively cricket songs and communal feasts.", | |||
["Atosiel,6"] = "Bayram al-Nur (Festival of Light) [Vaeringheim] – Honors Atos’s role in creation through candlelit processions and storytelling.", | |||
["Atosiel,18"] = "Chag Or Hadash (Festival of New Light) [Luminaria] – Celebrations of the Lady Divine Eos with dawn prayers and luminous lanterns.", | |||
["Atosiel,30"] = "Symposion Eirinis (Symposium of Harmony) [Serena] – Gatherings to share Micrasha’s wisdom through poetry recitations and debates.", | |||
["Atosiel,34"] = "Crösakarion [Luminaria] – Festive street dances paying tribute to Host Star Crösacío’s guiding light.", | |||
["Atosiel,36"] = "Liléigostros [Somniumpolis] – Public banquets celebrating Host Star Liléigos, highlighted by nighttime stargazing.", | |||
["Atosiel,43"] = "Alev Günü (Day of Flame) [Pyralis] – Spirited rites of Ignis Aeternum in honor of Pyros, featuring ritual bonfires.", | |||
["Atosiel,44"] = "Orebellion [Thermosalem] – Vibrant marketplace celebrations paying homage to Host Star Orebele’s energy.", | |||
["Atosiel,48"] = "Day of Abandonment [Vaeringheim] – A solemn remembrance of exile by the Old Gods, marked by silent vigils.", | |||
["Atosiel,54"] = "Sanashalros [Keybir-Aviv] – Mystical rites marking Sanashalo’s zenith, often including interpretive dance.", | |||
["Atosiel,55"] = "Tikkun Tzel (Repair of Shadows) [Symphonara] – Healing ceremonies to mend strife for Indigo and Momiji, ending with communal suppers.", | |||
["Atosiel,58"] = "Gahtarion [Vaeringheim] – Festive canal processions dedicated to Host Star Gaht, complete with boat parades.", | |||
["Atosiel,59"] = "Agavronos [Aurelia] – Tree-planting ceremonies in honor of the life-giving Host Star Agave.", | |||
["Atosiel,61"] = "Bebekarion [Akróstadium] – Shared communal meals honoring Host Star Bebeakaus, accompanied by group toasts.", | |||
["Thalassiel,1"] = "Cicada Song Festival [[Alperkin]] – Alperkin’s raucous greeting to summer, featuring cicada choirs at dusk.", | |||
["Thalassiel,2"] = "Amaäzakar [Delphica] – A vibrant lantern festival extolling Host Star Amaäz’s radiant influence.", | |||
["Thalassiel,6"] = "Panegyris Chrysou (Golden Gathering) [Aurelia] – A grand trade fair celebrating Chrysos’s abundance and fortune.", | |||
["Thalassiel,10"] = "Dilëtazorium [Sufriya] – A reflective day of introspection devoted to Host Star Dilëtaz, marked by quiet prayer.", | |||
["Thalassiel,16"] = "Amazärum [Acheron] – Symbolic dances by torchlight, honoring the transformative power of Host Star Amazä.", | |||
["Thalassiel,17"] = "Tävrosion [Thermosalem] – Spiritual gatherings for Host Star Tä, punctuated by contemplative meditations.", | |||
["Thalassiel,18"] = "Bulhanum [Luminaria] – Ancestral offerings and ceremonies paying homage to Host Star Bulhanu’s memory.", | |||
["Thalassiel,19"] = "Mehtap Dalgası (Moonlit Tide) [Vaeringheim] – Nocturnal rites by the shore celebrating Thalassa’s lunar blessings.", | |||
["Thalassiel,30"] = "Amáenarion [Vaeringheim] – Storytelling sessions praising Host Stars Amáenu and Pythe, shared around fires.", | |||
["Thalassiel,31"] = "Oneiro Foteino (Dream of Illumination) [Somniumpolis] – Nephele’s dream festival, featuring dream-interpretation circles.", | |||
["Thalassiel,39"] = "Anniversary of victory in the New South Jangsong Campaign [Nexa] – Commemorative marches and victory feasts.", | |||
["Thalassiel,44"] = "Erev Galgal (Eve of Cycles) [Nexa] – Glinos cycle rites celebrated with rotating chants and choreographed steps.", | |||
["Thalassiel,45"] = "Bassaridia Festival [Somniumpolis] – A nod to Alperkin heritage with energetic music and reenactments of old legends.", | |||
["Thalassiel,46"] = "Osirionos [Diamandis] – Lively rituals venerating Host Star Osiríos, often culminating in fireworks displays.", | |||
["Thalassiel,48"] = "Anniversary of victory in the Southern Lake Morovia Campaign [Somniumpolis] – Ceremonial parades and speeches.", | |||
["Thalassiel,50"] = "Amaprion [Serena] – Processions in tribute to Host Star Amap, featuring floral wreaths and song.", | |||
["Thalassiel,52"] = "Atämiorium [Catonis Atrium] – Ascension ceremonies devoted to Host Star Atämios, focused on spiritual uplift.", | |||
["Thalassiel,54"] = "Leilat al-Kamar (Night of the Moon) [Lunalis Sancta] – An all-night vigil under moonlight devoted to Noctis blessings.", | |||
["Thalassiel,56"] = "Dranamorium [Lykopolis] – A contemplative day of silence in reverence to Host Star Dranamos’s quiet power.", | |||
["Thalassiel,58"] = "Aprobellium [Thermosalem] – A carnival of red lanterns honoring Host Star Aprobelle’s fiery spirit.", | |||
["Thalassiel,59"] = "Azorion [Pyralis] – A grand festival with costumed parades celebrating the blazing brilliance of Host Star Azos.", | |||
["Thalassiel,60"] = "Ocanarion [Tel-Amin] – Water-purification rituals for Host Star Ocananus, including river blessings and floating candles.", | |||
["Thalassiel,61"] = "Taşrakah (Reverence of the Stone) [Luminaria] – Pays homage to Eos and Tarsica with stone-carving ceremonies.", | |||
["Opsitheiel,1"] = "Cricket Fall Festival [[Alperkin]] – A winter arrival celebration, marked by gentle cricket calls and candlelit gatherings.", | |||
["Opsitheiel,6"] = "Chag Tvuah (Festival of Harvest) [Sylvapolis] – A bountiful tribute to Opsithe with communal feasting and harvest dances.", | |||
["Opsitheiel,7"] = "Nyarion [Delphica] – Reflective celebrations for Host Star Nyama, including guided meditation and midnight music.", | |||
["Opsitheiel,13"] = "Danassion [Diamandis] – Cemetery-side banquets to honor Host Star Danaß, bridging the living and departed.", | |||
["Opsitheiel,18"] = "Anagenesis Eirmos (Procession of Rebirth) [Acheron] – Dramatic Styx-themed rites symbolizing transformation and renewal.", | |||
["Opsitheiel,23"] = "Hazamorium [Sufriya] – Skyward meditations and star-watching in praise of Host Star Hazaméos.", | |||
["Opsitheiel,28"] = "Panagia Therizis (Holy Day of the Reaper) [Sylvapolis] – A dual festivity recognizing Faun and Opsithe’s shared domains.", | |||
["Opsitheiel,30"] = "The Silence [[Alperkin]] – Mid-winter observance characterized by hushed reflections and soft drumbeats.", | |||
["Opsitheiel,35"] = "Häparion [[Vaeringheim]] – Artisan exhibitions celebrating the creativity of Host Star Häpi, with live sculpting.", | |||
["Opsitheiel,37"] = "Anniversary of victory in the Morovian Frontier Campaign [Acheron] – Military honors, memorial services, and torchlit marches.", | |||
["Opsitheiel,43"] = "Karnavali Thysias (Carnival of Celebration) [Erythros] – Boisterous festivities in honor of Silenus’s merry spirit.", | |||
["Opsitheiel,53"] = "Sefar Yashar (Straight Path Celebration) [Catonis Atrium] – Devotional rites to Cato, reflecting on moral clarity." | |||
} | |||
---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | ||
Revision as of 20:41, 9 January 2025
Documentation for this module may be created at Module:BassaridianCalendar/doc
local p = {}
function p.getCurrentDate()
local startDate = os.time({year = 1999, month = 8, day = 6})
local secondsInDay = 86400
local daysPerYear = 183
local currentDate = os.time()
local totalDaysElapsed = math.floor((currentDate - startDate) / secondsInDay)
local yearFraction = totalDaysElapsed / daysPerYear
local psscYear = math.floor(yearFraction)
local dayOfYear = math.floor((yearFraction - psscYear) * daysPerYear) + 1
-- DEBUG/LOG: if you'd like to see the dayOfYear for troubleshooting
-- mw.log("DEBUG: dayOfYear = " .. tostring(dayOfYear))
----------------------------------------------------------------------------
-- 1) SAFETY CHECK: Ensure dayOfYear is between 1 and 183 (inclusive)
----------------------------------------------------------------------------
if dayOfYear < 1 then
-- Option A: Wrap around by adding daysPerYear until we're back in range
dayOfYear = dayOfYear + daysPerYear
while dayOfYear < 1 do
dayOfYear = dayOfYear + daysPerYear
end
-- Option B (alternative) could be a modulo approach:
-- dayOfYear = ((dayOfYear - 1) % daysPerYear) + 1
elseif dayOfYear > daysPerYear then
-- If for some reason it exceeds 183, wrap around or clamp
dayOfYear = ((dayOfYear - 1) % daysPerYear) + 1
end
----------------------------------------------------------------------------
-- 2) ZODIAC PROVERBS
----------------------------------------------------------------------------
local zodiacProverbs = {
Atosien = "The first light reveals the sacred cycle of renewal.",
Eosena = "The dawn whispers: every step is a rebirth.",
Micrasha = "Wisdom is the balance of shadow and flame.",
Pyreska = "Creation ignites in the fires of transformation.",
Indomin = "Two paths intertwine: strength in unity, clarity in duality.",
Chrysen = "Gold is the soul's test: will you hoard or share?",
Thalassian= "The tides of Thalassiel teach patience and purpose.",
Nephelia = "Dreams are stars, fleeting yet eternal in the night sky.",
Glinaeus = "The frost preserves what must endure.",
Noctien = "Night guides those who seek the unseen truths.",
Opsithia = "The harvest feeds not just the body, but the spirit.",
Stygian = "Through the Styx flows the essence of transformation.",
Faunian = "The forests sing of life and the balance it brings.",
Silenian = "Celebration is the nectar of divine abundance.",
Catosien = "Order shapes greatness; the straight path ascends."
}
----------------------------------------------------------------------------
-- 3) DETERMINE MONTH, DAY-IN-MONTH, AND ZODIAC
----------------------------------------------------------------------------
local month, dayInMonth, zodiac
-- Day ranges: 1..61 => Atosiel, 62..122 => Thalassiel, 123..183 => Opsitheiel
if dayOfYear <= 61 then
month = "Atosiel"
dayInMonth = dayOfYear
-- ZODIAC
if dayInMonth <= 12 then
zodiac = "Atosien"
elseif dayInMonth <= 24 then
zodiac = "Eosena"
elseif dayInMonth <= 36 then
zodiac = "Micrasha"
elseif dayInMonth <= 48 then
zodiac = "Pyreska"
else
zodiac = "Indomin"
end
elseif dayOfYear <= 122 then
month = "Thalassiel"
dayInMonth = dayOfYear - 61
-- ZODIAC
if dayInMonth <= 12 then
zodiac = "Chrysen"
elseif dayInMonth <= 24 then
zodiac = "Thalassian"
elseif dayInMonth <= 36 then
zodiac = "Nephelia"
elseif dayInMonth <= 48 then
zodiac = "Glinaeus"
else
zodiac = "Noctien"
end
else
month = "Opsitheiel"
dayInMonth = dayOfYear - 122
-- ZODIAC
if dayInMonth <= 12 then
zodiac = "Opsithia"
elseif dayInMonth <= 24 then
zodiac = "Stygian"
elseif dayInMonth <= 36 then
zodiac = "Faunian"
elseif dayInMonth <= 48 then
zodiac = "Silenian"
else
zodiac = "Catosien"
end
end
----------------------------------------------------------------------------
-- 4) SAFETY NET: If somehow dayInMonth is still nil, handle gracefully
----------------------------------------------------------------------------
if not dayInMonth then
-- Provide a fallback, e.g., default to day 1 in Atosiel
dayInMonth = 1
month = "Atosiel"
zodiac = "Atosien"
end
----------------------------------------------------------------------------
-- 5) DEFINE EVENTS WITH CORRECTED DAY ALIGNMENT AND SHORT DESCRIPTIONS
----------------------------------------------------------------------------
local events = {
["Atosiel,1"] = "Cricket Rise Festival [[Alperkin]] – An Alperkin tradition welcoming spring with lively cricket songs and communal feasts.",
["Atosiel,6"] = "Bayram al-Nur (Festival of Light) [Vaeringheim] – Honors Atos’s role in creation through candlelit processions and storytelling.",
["Atosiel,18"] = "Chag Or Hadash (Festival of New Light) [Luminaria] – Celebrations of the Lady Divine Eos with dawn prayers and luminous lanterns.",
["Atosiel,30"] = "Symposion Eirinis (Symposium of Harmony) [Serena] – Gatherings to share Micrasha’s wisdom through poetry recitations and debates.",
["Atosiel,34"] = "Crösakarion [Luminaria] – Festive street dances paying tribute to Host Star Crösacío’s guiding light.",
["Atosiel,36"] = "Liléigostros [Somniumpolis] – Public banquets celebrating Host Star Liléigos, highlighted by nighttime stargazing.",
["Atosiel,43"] = "Alev Günü (Day of Flame) [Pyralis] – Spirited rites of Ignis Aeternum in honor of Pyros, featuring ritual bonfires.",
["Atosiel,44"] = "Orebellion [Thermosalem] – Vibrant marketplace celebrations paying homage to Host Star Orebele’s energy.",
["Atosiel,48"] = "Day of Abandonment [Vaeringheim] – A solemn remembrance of exile by the Old Gods, marked by silent vigils.",
["Atosiel,54"] = "Sanashalros [Keybir-Aviv] – Mystical rites marking Sanashalo’s zenith, often including interpretive dance.",
["Atosiel,55"] = "Tikkun Tzel (Repair of Shadows) [Symphonara] – Healing ceremonies to mend strife for Indigo and Momiji, ending with communal suppers.",
["Atosiel,58"] = "Gahtarion [Vaeringheim] – Festive canal processions dedicated to Host Star Gaht, complete with boat parades.",
["Atosiel,59"] = "Agavronos [Aurelia] – Tree-planting ceremonies in honor of the life-giving Host Star Agave.",
["Atosiel,61"] = "Bebekarion [Akróstadium] – Shared communal meals honoring Host Star Bebeakaus, accompanied by group toasts.",
["Thalassiel,1"] = "Cicada Song Festival [[Alperkin]] – Alperkin’s raucous greeting to summer, featuring cicada choirs at dusk.",
["Thalassiel,2"] = "Amaäzakar [Delphica] – A vibrant lantern festival extolling Host Star Amaäz’s radiant influence.",
["Thalassiel,6"] = "Panegyris Chrysou (Golden Gathering) [Aurelia] – A grand trade fair celebrating Chrysos’s abundance and fortune.",
["Thalassiel,10"] = "Dilëtazorium [Sufriya] – A reflective day of introspection devoted to Host Star Dilëtaz, marked by quiet prayer.",
["Thalassiel,16"] = "Amazärum [Acheron] – Symbolic dances by torchlight, honoring the transformative power of Host Star Amazä.",
["Thalassiel,17"] = "Tävrosion [Thermosalem] – Spiritual gatherings for Host Star Tä, punctuated by contemplative meditations.",
["Thalassiel,18"] = "Bulhanum [Luminaria] – Ancestral offerings and ceremonies paying homage to Host Star Bulhanu’s memory.",
["Thalassiel,19"] = "Mehtap Dalgası (Moonlit Tide) [Vaeringheim] – Nocturnal rites by the shore celebrating Thalassa’s lunar blessings.",
["Thalassiel,30"] = "Amáenarion [Vaeringheim] – Storytelling sessions praising Host Stars Amáenu and Pythe, shared around fires.",
["Thalassiel,31"] = "Oneiro Foteino (Dream of Illumination) [Somniumpolis] – Nephele’s dream festival, featuring dream-interpretation circles.",
["Thalassiel,39"] = "Anniversary of victory in the New South Jangsong Campaign [Nexa] – Commemorative marches and victory feasts.",
["Thalassiel,44"] = "Erev Galgal (Eve of Cycles) [Nexa] – Glinos cycle rites celebrated with rotating chants and choreographed steps.",
["Thalassiel,45"] = "Bassaridia Festival [Somniumpolis] – A nod to Alperkin heritage with energetic music and reenactments of old legends.",
["Thalassiel,46"] = "Osirionos [Diamandis] – Lively rituals venerating Host Star Osiríos, often culminating in fireworks displays.",
["Thalassiel,48"] = "Anniversary of victory in the Southern Lake Morovia Campaign [Somniumpolis] – Ceremonial parades and speeches.",
["Thalassiel,50"] = "Amaprion [Serena] – Processions in tribute to Host Star Amap, featuring floral wreaths and song.",
["Thalassiel,52"] = "Atämiorium [Catonis Atrium] – Ascension ceremonies devoted to Host Star Atämios, focused on spiritual uplift.",
["Thalassiel,54"] = "Leilat al-Kamar (Night of the Moon) [Lunalis Sancta] – An all-night vigil under moonlight devoted to Noctis blessings.",
["Thalassiel,56"] = "Dranamorium [Lykopolis] – A contemplative day of silence in reverence to Host Star Dranamos’s quiet power.",
["Thalassiel,58"] = "Aprobellium [Thermosalem] – A carnival of red lanterns honoring Host Star Aprobelle’s fiery spirit.",
["Thalassiel,59"] = "Azorion [Pyralis] – A grand festival with costumed parades celebrating the blazing brilliance of Host Star Azos.",
["Thalassiel,60"] = "Ocanarion [Tel-Amin] – Water-purification rituals for Host Star Ocananus, including river blessings and floating candles.",
["Thalassiel,61"] = "Taşrakah (Reverence of the Stone) [Luminaria] – Pays homage to Eos and Tarsica with stone-carving ceremonies.",
["Opsitheiel,1"] = "Cricket Fall Festival [[Alperkin]] – A winter arrival celebration, marked by gentle cricket calls and candlelit gatherings.",
["Opsitheiel,6"] = "Chag Tvuah (Festival of Harvest) [Sylvapolis] – A bountiful tribute to Opsithe with communal feasting and harvest dances.",
["Opsitheiel,7"] = "Nyarion [Delphica] – Reflective celebrations for Host Star Nyama, including guided meditation and midnight music.",
["Opsitheiel,13"] = "Danassion [Diamandis] – Cemetery-side banquets to honor Host Star Danaß, bridging the living and departed.",
["Opsitheiel,18"] = "Anagenesis Eirmos (Procession of Rebirth) [Acheron] – Dramatic Styx-themed rites symbolizing transformation and renewal.",
["Opsitheiel,23"] = "Hazamorium [Sufriya] – Skyward meditations and star-watching in praise of Host Star Hazaméos.",
["Opsitheiel,28"] = "Panagia Therizis (Holy Day of the Reaper) [Sylvapolis] – A dual festivity recognizing Faun and Opsithe’s shared domains.",
["Opsitheiel,30"] = "The Silence [[Alperkin]] – Mid-winter observance characterized by hushed reflections and soft drumbeats.",
["Opsitheiel,35"] = "Häparion [[Vaeringheim]] – Artisan exhibitions celebrating the creativity of Host Star Häpi, with live sculpting.",
["Opsitheiel,37"] = "Anniversary of victory in the Morovian Frontier Campaign [Acheron] – Military honors, memorial services, and torchlit marches.",
["Opsitheiel,43"] = "Karnavali Thysias (Carnival of Celebration) [Erythros] – Boisterous festivities in honor of Silenus’s merry spirit.",
["Opsitheiel,53"] = "Sefar Yashar (Straight Path Celebration) [Catonis Atrium] – Devotional rites to Cato, reflecting on moral clarity."
}
----------------------------------------------------------------------------
-- 6) EVENT LOOKUP
----------------------------------------------------------------------------
local eventKey = month .. "," .. dayInMonth
local event = events[eventKey] or "No significant events today."
----------------------------------------------------------------------------
-- 7) LOOK UP PROVERB
----------------------------------------------------------------------------
local dailyProverb = zodiacProverbs[zodiac] or "No proverb found."
----------------------------------------------------------------------------
-- 8) RETURN THE RESULT
----------------------------------------------------------------------------
return dayOfYear .. ", " .. month .. " (" .. zodiac .. "), " .. psscYear
.. " PSSC – " .. event .. " – Proverb: " .. dailyProverb
end
return p