Calendar
From LSWiki
Calendar of Lost Souls
Historians place the invention of this Calendar sometime between 5500 and 50 TA. The first records of it's existence dead-end mere years before it's adoption by Prince Aleksandr of the Altrian Empire. Prince Aleksandr adopted this calendar in 3 AA as the Imperial calendar. Unsubstantiated legends say that Prince Aleksandr brought the calendar from a far-off land.
The calendar is sometimes referred to as the Altrian Calendar, although some historians believe it was actually invented by the Graecans and lost when their civilization was shattered. Others claim that those historians are merely looking for justification for their research into an ancient race which left very little of significance behind.
The calendar has apparently arbitrarily divisions for months and weeks, each year being divided into ten months of five weeks of six days each (thirty days each month). Each day is thirty hours long, and each hour is divided into sixty minutes, of sixty seconds each.
The names of the months are as follows:
Arienle, Teliminus, Valien, Ysaril, Karmina, Ingot, Alystos, Gettrellyn, Rozgayn, and Blayhrr.
The historical significance of the names of the months has been lost, although scholars of Ancient Graecea believe them to be the names of the major goddesses of the time, whose worship is unheard of in this age.
See Also: units of measure, time, second, minute, hour, day, week, or year.
Year Numbering Conventions
- A.D.: Aevo Descensi - Years (possibly approximate) since the fall of the Altrian Empire
- A.A.: Aevo Altri (?) - Years of the Altrian Empire, probably counted from its founding.
- T.A.: Uncertain - Years prior to the founding of the Altrian Empire.
Other cultures presumably have or had their own numbering conventions.
OOC Information
The Lost Souls date and time can be calculated from the Unix timestamp (UTC) as follows:
- Minutes: Divide the timestamp by 30 dropping any remainders, then divide the result by 60. The remainder is the current minute.
- Hours: Divide the timestamp by 1800 dropping any remainders, then divide the result by 30. The remainder is the current hour.
- Days: Divide the timestamp by 54000 dropping any remainders, then divide the result by 30. One plus the remainder is the current day.
- Months: Divide the timestamp by 1620000 dropping any remainders, then divide the result by 10. The remainder is the current month.
- Years: Divide the timestamp by 16200000 and add 480. The result is the current year.
The C code below will calculate the current LS date and time from the system clock:
#include <stdio.h> #include <math.h> #include <time.h> typedef struct { char *month; char *weekday; int day; int year; int hour; int minute; } data; void main() { long ts = time(NULL); data s1; s1.day = ts/54000%30+1; s1.year = (ts/16200000)+480; s1.hour = (ts/1800)%30; s1.minute = (ts/30)%60; switch(ts/54000%6) { case 0: s1.weekday = "Lunday"; break; case 1: s1.weekday = "Axaday"; break; case 2: s1.weekday = "Odsday"; break; case 3: s1.weekday = "Apoday"; break; case 4: s1.weekday = "Eriday"; break; default: s1.weekday = "Adonday"; } switch(ts/1620000%10) { case 0: s1.month = "Arienle"; break; case 1: s1.month = "Teliminus"; break; case 2: s1.month = "Valien"; break; case 3: s1.month = "Ysaril"; break; case 4: s1.month = "Karmina"; break; case 5: s1.month = "Ingot"; break; case 6: s1.month = "Alystos"; break; case 7: s1.month = "Gettrellyn"; break; case 8: s1.month = "Rozgayn"; break; default: s1.month = "Blayhrr"; } printf("The current Unix timestamp is: %li\n", ts); printf("LS Date: %s, %s %i, %i.\nLS Time: %02i:%02i\n",s1.weekday,s1.month,s1.day,s1.year,s1.hour,s1.minute); return; }