Worldbuilding: Calendars
When I first started writing The Forgotten Hollows of Jordaré I hit a problem that I absolutely did not want to deal with: Dates. [warning! Howto Mathematics included!]
Dates and time systems are an icky thing for most writers whether you are writing in a modern or historical time, or even a purely made up one like my own. - Use a modern system like the Georgian, or even cultural such as Chinese or Hindu, then you lock yourself into a few situations (historical events clashing, becoming outdated [i.e. “Today - 1980″], and sometimes it pollutes your fictional world with the reality with such a simple connection.) - But making one up invokes a whole load of extra work for you, and if not done right you are going to confuse readers and yourself nine out of ten time. Even if you do a cop-out where you simply change every month/day name to some new random term, you either go back to confusing your readers or it just become obvious you ripped off good old George! It’s just easier to not bother.
I wanted to avoid dates so much that I even went as far as to write in story: “Cole was becoming rather annoyed as the people of this area did not seem to bother keeping track of dates, only the week days.” A+ for avoidance!
But you know what? I still couldn’t get away from it. The story took a turn that I didn’t really think ahead on, Cole was hunting down a beast and acting like a detective in trying to figure out its habits, and so I made myself a private calendar with loose dates just to keep track of my own events. And you know what? I still confused the hell out of myself. Calendars are horrible!
But they are also a fantastic thing and one of the marvels that make just one of the attributes of any civilization, ancient or modern. And one day recently I came across a three part video series by Artifexian on calendars for a fictional setting [Soli, Lunar, Lunisolar] With my mind blown and my creative juices flowing, I decided to just dive right in into making up my own system and lore behind it!
Not to discredit his spreadsheet he provides and uses, it gave me some ideas, but it actually didn’t really help me in making things clear. Sure, I figured out that I wanted to do a random number of 381.2 solar days in a years time, and that I ended up making a random-ass number of 11.4529(goesonforever) lunar cycles per year; and that I wanted to do about 11 months in the year with a rather boring structure of 35 day months(5 7-day weeks) except for the last month which was 31-32. But that still didn’t help me with one thing: Calendars are used to keep track of important events.
So here comes the adventure and the how I did it for you to make use of if you so chose.
I have a solid structure that avoids the Gerogian complication where one year January 1st falls on a Sunday, while the next year it could be Monday, all funky days happen in the month of winter, which for my primary culture is counted as not a month but a time of mourning, and from winter solstice it is then counted down to the start of the new year. Only complicated thing to mentally note is that every 5th year it is a leap year and so there will be 32 days during winter. (I have yet to devise month names and such)
That is a compact version above will help a lot in over all my story at a glance, but that wasn’t enough for me because my cultures follows the moon phases and I needed to know when those happened and at any given year without need of counting forwards or back. I wanted the program to do the hardwork for me. So, onward to the convoluted mess of logic and if statements! Took me 3 whole days of headaches but I managed to figure out a way that gave me the lunar cycles of the year with a 94% accuracy, which is good enough for me at this point. And if you wish to do the same for your own world, keep reading as to how I did it and the math logics devised. (and keep in mind, I’m not a math major so if you are smarter than me and know how to make a cleaner system, kudos to you please teach me, sempi!)
I started with inputting my data. B2 How long my solar trip around the sun was to be in days, B3 how long my lunar cycle would be in days (the time it takes to make one full pass from full moon to new moon back to full moon), B3 I then divided the my year by my lunar cycle to get my cycles per year. Because I have a .2 in my solar year length, this means each 5th year would be a leap year, so B4 was just a flat number. B7 was [=B1/B6], and B8 just worked out the Solstice cycle with [=B1/4] (4seasons.) D1 was [=1/B1] to get the fraction amount of what a passing day equaled as part of the year, and D2 was [=1/B2] for the same reason, what a passing day equaled to the total cycle.
With these numbers in place, if I so chose to change my year length and/or my lunar cycle duration, it will automatically change ALL the information accordingly and should still be accurate.
Now for the complicated portions. For this reason, I am going to link you to the .ods file I created to see for yourself and tinker, and get a better look at the math as I’m sure all I’m going to say won’t make as much sense.
H2 [=B1*H1] - if it is year 1, there then will be 381.2 days passed at end of year since calendar start. If it is year 0009, 3430.8 days will pass.
I4 [=B1*(H1-)] - same as H2 but minus 381.2.
M6 [=I4/B2] - this gave the total of lunar cycles that completed. year 1, none, year 9 a total of lunar 91.623 cycles had passed.
M7 [=ROUNDDOWN(M6)] - strips the decimal value.
M8 [=M6-M7] - captures the decimal value
N7 [=B2*M7] - how many rounded days used in past lunar cycles.
N8 [=B2*M8] - same as above but just with the decimal value which will be the days remaining until the next full moon.
Now... this will give me the means to get an output that will tell me the month/day dates for the inputted year of when the full moon will be.
redundantly: R1 [=-N8] and S1 [=R1]
S2 through S13 is a series of [=S1=B2] upstepping where it takes the previous total and adds the next lunar cycle.
T2 through T13 is a series of this [=ROUNDUP(ROUNDDOWN(S2)/35)] to give me the current month of the year.
U2 through U13 is a series of this [=ROUNDDOWN(S2-((T2-1)*35))] to give me the current day of that month that the full moon falls on.
V2 through V13 is only a round down statement for each number in the relative S column and went unused in the finished product.
How does ALL of the above work? All that leads up to N8 as the star of the show. By taking the decimal value (ie the left over days of the year that have not completed a lunar cycle) from the previous calculations and multiplied into actual days, this number of days subtracts from the start date of the new year, and thus offsets the calculations in the R1 thru V13 grid. In year 8 there was a total of 20.75 days remaining in the year after the last full moon, so by subtracting 20.75 from our normal 33.284 lunar days, we end up with 12 days into the new year being the full moon.
WOOF!
For most people, that may be all you need because your actual calendar could be drawn out remain the same as dates do not change, you would just put notations down in pencil for the important changing dates such as the moon cycles and any cultural festivals revolving around lunar cycles.
For me, to have a visual representation of what I am use to with the Georgian calendar, I went one step further and started taking my final lunar date grid and having it read by the year calendar via a series of Conditional Formats.
I am not going to get into conditional formats today as that isn’t nearly as important as everything else I covered and there is other people out there that explain their use.
I do hope you found that both interesting and helpful and hopefully not more confusing than it needed to be, and if you use this knowledge to craft your own calendar for your fictional world, I would LOVE to hear about it :D Take care, happy worldbuilding!

















