The game now has a simple line of sight algorithm. Its simplicity is based on the restriction that the game world is made up of corridors a single tile wide, and does not contain larger open spaces. Line of sight is therefore always along corridors, in four directions. In addition, tiles that are directly adjacent to a visible corridor are also visible, so you can see around the corner a little bit.
Visible tiles are drawn in full brightness, explored but not currently visible tiles are darker, and unexplored tiles are empty. Only entities that are on a visible tile are drawn.
Previously the scrolling engine was configured to stop scrolling when the view reached the edge of the world. Knowing that the game will likely display status information near the edges of the screen, this means the player could be walking underneath this information. It also restricted rooms to be at least as large as the screen.
Therefore I have changed it so the scrolling continues past the edge, showing black space outside the world. Now the player will always be displayed around the center of the screen. (There is an area in the center of the screen where the player can walk without scrolling.)
A message system has been added that can be used to display what just happened to the player. New messages are stacked on top of the previous ones, while older messages fade away. The font used in these messages is ‘Alagard’ by Hewett Tsoi and was downloaded from dafont.com. The game now also supports other entities in addition to the player, featuring rats, to begin with.