Written by

I have been thinking about ways to help bring the game world alive, to add another level of immersion. To do this we need to ground the game in a place. Obviously we will create a rich history filled with names and places for this world, but we also want to convey those places visually with key graphics on the website.

Another way we can achieve this (or in addition to) is by indicating environmental effects such as time-of-day and weather. At it's most basic level, we can communicate this visually with numeric values and graphics. On a more advanced level, we should find a way to integrate these environmental effects into the gameplay mechanics.


A city setting with ships at dock A forest setting in the wilderness A desert setting in the wilderness A magic shop within a city

For each location on our map that the player can travel to, we should create a main background image for it (similar to those to the left). A few of these locations might be a bustling city, spooky forest, arid desert, and various types of merchant shops.

So for example, if you want to go fight monsters you might click on the "Shudderwood Forest" at which point the main background image of the website would change to a forest which would then serve as the setting for the player's encounters. Likewise, when traveling to or exploring inside a city, the player would be presented with a sweeping cityscape of buildings, roads, and monuments.

When creating these background images, there are a couple of things to keep in mind. Firstly, this website has a specific width and layout that must be maintained. To achieve this layout the backgound should be sliced to match the existing backgrounds (top,middle,bottom,side). Secondly, each image should be created in way such that the left and right sides of the image can tile. Third and finally, three variations of each image should be created to match the varying times of day.

Time of day

Several images showing different times of day

This website template has the ability of displaying a different background image depending on the time of day. This is currently calculated relative to the client machine's system time, but we should change this to be concurrent with the Server's Time. In this way all players will experience the same time within the game world. This is important when you consider how we deal with Simulating time with Ticks which is touched upon within the Travel article. It's critical that we determine how many in-game hours exist within one real-world hour before we can adjust this JavaScript.

The background images that represent the time-of-day need to be created for morning, afternoon, and evening with the possible addition of in-between times like dawn and dusk. These images should also be able to tile their width. I feel they should depict landscape scenes that will lend a setting to the game world much like the maps will. Generic enough to not look like any one single location, but with enough details to hint at the type of game such as fantasy, sci-fi, or mafia.


As the module at the top of this page depicts, we can display the current weather conditions for various cities throughout our game. The module uses the Google API and does lookups on real locations, but the location name that is shown to the player can be whatever we want. In this way we can find real world locations that have climates similar to what we want represented in our fictional cities. You will also notice that the weather module includes a four day forcast. We might be able to leverage this information for keeping track of what day of the week it is. The names that are displayed are controlled by a language file and should be edited to stay consistent with the world we are creating.

If it is not possible to adapt the days to our reckoning of time (which will undoubtedly pass much faster than reality), they will have to be hidden.

Some thought should probably be given as to where we want this module to be displayed. At the very least, for each town your character visits we will want to have the weather visible. If we end up with a map system comprised of only locations that you can instantly travel to with no sandbox type of wandering, then we should consider always displaying the weather conditions for the characters current location. This could be combined into a larger module that also displays not only the characters current position, but also those other players that might be near.

Taking it further

So far what we have discussed is mostly cosmetic and visual. With a mechanism in place for determining the current time and weather, we can tie many events into these variables. A brief list of just a few of the possibilities that might be achievable...

  • monsters that only come out at night / day
  • NPC's that say something different depending on the time
  • spells that are more or less effective depending on weather conditions
  • increase the chances of getting lost when traveling in bad weather
There are many more things that could be added, but the most important step is to get a working prototype in and tested. At a later point the system could be expanded to include additional features.
More in this category: « Traveling The World of Golarion »
Login to post comments