Sojour v1.1.44.0 has now been released! Tilted Maps!

This version of Sojour starts to take advantage of Sojour’s 3d mapping engine.

With it you can choose to toggle the tilt of any map by the number of degrees set in Sojour’s Map Settings:

Tilt can be toggled on and off using this button:

Here is Runequest’s Sartar map with tilt turned on:

With the tilt on, you can zoom in and travel over the map, which almost feels like you are flying across the map. In addition, all tokens and map markers are projected into that 3d space:

Tilt can be toggled independently for each map and Sojour will remember if that map was tilted. eg If you reload a tilted map it will appear tilted.

Sojour’s tilt system has one more cunning trick up its sleeve and that’s the ability to register precise custom tilts. These enable you to define per-map custom tilts that are remembered by Sojour.

Maps with custom tilts are not affected by the global tilt settings. Once a custom tilt has been allocated to a map, it stays with that map until cleared. These maps can have their tilts toggled on and off just like other maps, the only difference is that it will be to their custom angle rather than the global one.

So why would one use custom tilts?

One of the main reasons to use custom tilts is for 2d isometric maps. Consider this one from Mongoose Traveller:

These kind of maps can be quite hard to role play on. Luckily Sojour provides a solution! All you need do is register a custom tilt for this map! To do this click this button:

Clicking it results in this 3d alignment cursor appearing:

Blue is ‘Up’ and the red and the green lines have to be aligned with your map’s grid using either <Shift> Mouse wheel or <Ctrl> Mouse wheel. The 3d alignment cursor looks like this when properly aligned:

Once the cursor is aligned like this, simply left click the mouse button. Sojour will then calculate the exact tilt required to work with the isometric drawing of this map. It will then tilt the map accordingly:

When one zooms in and moves around the map, the tilt of the 2d isometric map creates an uncanny 3d effect – almost like it is a real 3d map!

It doesn’t show up very well in this still image, so I recommend you watch the You-Tube video at the end of this post!

Custom tilted maps can have their tilts toggled on and off like other maps. But unlike other maps, their tilt angle will always be the one that’s registered for them and not the global one.

Custom tilts can be removed either by re-registering another tilt or by using the ‘Clear Map Tilt’ button below:

This button will be disabled for maps that don’t have custom tilts allocated to them.

To fully appreciate tilted maps, you need to see them moving. To that end, I highly recommend watching this video below:

That’s it for this update!

Have Fun!

RobP

Tilted Maps!…. and some bad news…

The bad news first…

This week I decided to stop work on dark mode for Sojour. It was a really big decision to make, but I feel it is the right one.

So why have I abandoned dark mode?

There are numerous reasons. But the core issue is that the Microsoft technologies I’m using do not support adding a dark mode, or changing windows colours to anything other than grey.

It’s been a frustrating experience because the controls I’m using have property’s like BackgroundColor, but in true Microsoft fashion, they don’t work.

The result has been a project that has been eating up a disproportionate amount of my time, which has resulted in few updates getting to you folks other than bug fix releases.

Just getting simple things like the tabbed controls to change colour cost a week and even then they still had issues.

Even worse, I was having to put in some real hacks to get around some of the issues. These technical hacks were destroying Sojour’s fine internal architecture.

But even with the hacks in place, I still ran into issues, some of which can’t be fixed. For example take scroll bars:

If you like your scrollbars in grey – great, but changing them to any other colour is pretty much impossible without re-writing most of Microsoft’s controls from scratch (many of them have their own built in scroll bars).

Then I discovered that disabled text has a fixed colour too:

Here the ‘Set Heading’ text is really hard to read because of its colouration. This is due to the button being disabled. The colour you are seeing is not the colour I set it to. If I re-enable the button, the text appears in the colours that I actually programmed:

Alas, I have no control over the disabled control colours.

At this point I realised that if I were to proceed, I would literally have to replace every single Microsoft control with one of my own. This would take years. Plus the results would be sub-optimal and fill Sojour’s architecture with more hacks than I would feel comfortable with.

Abandoning dark mode was not an easy decision to make as I had already invested a significant amount of time and effort into it and I know that many of my customers were looking forward to having it implemented.

Does this mean dark mode is off table and will never get implemented?

No, is the short answer.

I have been spending time learning the very latest Microsoft UI technology called WinUI3. WinUI3 supports dark mode natively. Yes, this is a re-write, but it will be a re-write that will take less time than trying to cajole WinForms into dark mode and the results will be far superior.

As a result, my intent is to upgrade Sojour to WinUI3 at some point in the future. When that happens, it will get Dark Mode more or less for free. This update will be free for all existing customers.

Onto the good news…

I spent today experimenting with a new feature for the maps. As I mentioned in a previous post, Sojour’s maps use my own custom graphics engine called Ionian, and that graphics engine is in fact a 3d engine…

As a result I have been experimenting with a feature where one can align Sojour’s maps into the same plane that they were drawn in. This feature helps 2d isometric maps come alive!

Here are some early screenshots:

What these static images don’t convey is the odd effect the map tilt has on the 2d drawn isometric map when panned and zoomed. It makes the drawn 2d features pop and seem much more 3d!

All I did was press a new button to register this 2d starship plan’s drawn plane so that Sojour could then tilt the map to exactly match that plane (one of the advantages of using a 3d engine!). The effect is a much more 3d look and feel for these kind of maps!

I have also spent some significant time on the Calendars system. One of my tasks was to work out how to enable them to model rolling calendars. That was a real tricky problem to figure out, but I think I now have a technical solution that should address this issue.

Also, expect table updates too. There are two new table types I will be adding….

Rather than release everything in one big bang, I will be sending the changes up as and when they are done so that I can get immediate feedback.

I will also be releasing a myriad of other minor improvements that customers have requested. In fact I’m expecting a new release drop some time next week.

Apologies for dropping dark mode, I really did not want to do it. But I don’t think you folks would have been happy with the lack of updates and you would certainly not have been happy with the suboptimal end results. Plus, in my case, I would have been saddled with a system that would no longer be easy to work on due to the number of hacks that would be present.

I hope you folks can understand the reason for the decision.

In the meantime happy gaming!

RobP