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

Dark Mode Progress!

It’s been a little while since the last post. Although I haven’t had too much free time, I have managed to sink in around 16 hours and 30 mins into implementing a dark mode for Sojour. Dark mode will be part of the v1.2 release which includes 9 other planned enhancements!

It’s taking time….

Although I’m making progress, it is taking a huge amount of time and effort because the underlying technology I’m using doesn’t really support it. The results are also not up to my usual high standards, but alas, this is the best that can be done with WinForms – the tech Sojour currently uses.

There is still a long way to go, but I’ll post some in-progress images to show where we are.

The first two images are Sojour in ‘Light’ mode:

Nothing too surprising there – other than some minor controls changes .

Sojour’s settings now have a dark mode option:

Clicking this tick box and hitting the Ok button results in Sojour looking like this:

This first screenshot doesn’t look too bad, but one of the things that needs doing is updating the assets browser iconography to better match the darker mode.

Just to get to this point took a lot of effort and low level coding as many of the windows controls – like the tabbed controls, ignore colour settings!

This is what the journal panel looks like:

The big issue here are that the journal’s text colour will need to be auto updated to make it easier to read in dark mode. It then needs to be able to revert back to its original colouration when back in light mode. This is the job I’m currently working on.

In addition, the scroll bar on the right of the journal is not respecting darkmode at all! This is another issue with the WinForms framework I’m using – one cannot set the scroll bar colours. I am looking at a solution for this, but like the tabs, its going to involve some really tricky low level coding.

Once that’s done, I will need to update all of Sojour’s windows to support dark mode. Right now they have all had their code updated to support mode switching. However, I will need to go through each window and manually add various settings to make the colours change as required.

In conjunction with the above coding, I have also been learning two sets of new cutting edge technologies. One of these is Winui3. The intent is that once Sojour v1.2 has been released, Sojour will go for a full rewrite using Winui3 and a new graphics engine.

The reason for the change is that I want windows theme modes to be properly supported, plus I want to update the look and feel of Sojour to be more modern.

A rewrite will also provide numerous other benefits too.

Firstly the Winui3 framework has a route to producing cross platform versions of Sojour for both OSX on the Mac and Linux too. I have had many potential customers ask if Sojour could be made available on these platforms!

Secondly, the update will allow me to produce a 64 bit version of Sojour which will have many benefits with regard to maximum map sizes and performance – not that the current Sojour is a slouch – just view the videos!

Winui3 also has the advantage that it is DPI aware. This will allow Sojour to look great over a much wider range of desktop resolutions and DPI settings.

The final advantage is one of risk reduction. Sojour uses some pretty old technology because the project came about accidently from Ancient Armies, another project I’m working on.

Using old technology always runs the risk of it being made incompatible by latest operating system changes. Whilst unlikely, as the technology Sojour uses is still widely used, I’d still feel happier seeing Sojour using the latest and greatest technology that’s available!

As with all Sojour updates, the v1.2 release and the rewrite will be free for all existing customers!

Thank you all for buying Sojour! 🙂

Happy Gaming!

RobP

Sojour v1.1.15.0 has been released! (Installer fix)

This release contains no changes or fixes for Sojour itself. The only alterations are to the installer. It addresses issue RPG-276.

Prior to this version, a very small number of customers (4!) were experiencing this error after installing Sojour:

It’s caused by Direct-X failing to install properly and failing silently whilst the Sojour installer is running.

Thanks to great customer feedback, the problem has been traced to the customer’s computers not having .net 3.5 installed.

The installer now checks to see if this .net framework is installed. If it isn’t, this message will be displayed:

It’s then up to the customer to go to the indicated link and download .net 3.5 before installing Sojour (this has been added as a pre-req on the store page).

Sojour’s installer will then abandon the installation until .net 3.5 is installed.

The link for .net 3.5 installer for those that need it is: https://www.microsoft.com/en-GB/download/details.aspx?id=21 .

Clicking it will take you to this page:

Just click the indicated button to download the .net 3.5 framework installer.

Once downloaded you should see this file in your downloads folder:

Just double click it to run Microsoft’s installer. Once it is running select this option:

Once installation has completed, you will then be able to run Sojour’s installer without any error messages:

I have tested this fix in a Virtual Machine hosting Windows 10 Home edition and it does all seem to work.

Obviously, I’ll continue to answer any other technical queries should you run into them during installation. But with version 1.1.15.0, I’m not expecting to see any 🙂

Have fun!

RobP

Sojour – What’s next?

I have been listening to feedback and have set the priorities for the next public release v1.2.

Sojour v1.2 will have the following main enhancements:

  1. A Dark Mode! – Finally! – never coded one of these before, so this will be interesting!
  2. Two new event table types:
    • Multi-Table sentence generators – You assign one or more tables to the creation of a sentence or two. The idea is that each table will roll and construct one part of a sentence or sequence of sentences. When all the tables have rolled, the output is a complete sentence (or sequence of sentences).
    • Intersection-Table lookups – These tables will have a dice rolled for a row and column and will then output the result of the cell at that row and column intersection.

I will also continue to work on the custom views system enhancement in parallel in its own branch. That one fundamentally changes much of the architecture of Sojour, so will require a lot of testing. I will only release this feature when it is ready!

You will also be seeing a number of tutorial videos sprouting up on Sojour’s You-Tube channel too!

All of the above enhancement ideas have been provided by my customers. So if you have an idea for something you’d like to see, just email me using the email address at the front of the manual.

Till then, have fun and happy gaming!

RobP

Sojour Solo VTT v1.1 has now been released!

I’m pleased to announce that Sojour v1.1 has now been released! As with all updates, this one is completely free for all existing customers!

The main new feature is trackable characteristics. These are very flexible and impact most parts of the system. I highly recommend watching the video below to get a good overview as to how they work.

It should be noted that I have much more in store for characteristics and many more things Sojour related! Sojour is an evolving product and will only get better with time.

If you aren’t a customer and are interested in purchasing it, Sojour costs a one off payment of $10 USD. There are no servers or DRM – so it’s yours to keep forever and you will get free updates – just like this one – as I release them.

You can purchase Sojour from DriveThru RPG using this button:

In the meantime I’d like to thank my existing customers for purchasing Sojour and also providing me with many great ideas!

Happy gaming folks 🙂

RobP

Sojour 1.1 has passed QA – not long now!

Sojour 1.1 has now passed testing!

The last jobs left are updating the manual and filming a new tutorial video. Alas, the manual update will need to be pretty extensive as a lot has changed!

As is usual, all existing customers will be entitled to this as a free upgrade 🙂

Have patience – we are nearly there!

RobP

Hot off the press! – Characteristic Sets!

If you examine the screenshot above you can spot the next enhancement added to trackable characteristics: Characteristic Sets.

Each ruleset can have from zero to as many characteristic sets as needed. Each characteristic set can be built to model a particular thing in a game system.

In the above example I created three characteristic sets for the selected ruleset:

  1. A standard characteristic set with just strength, dexterity and endurance – In this example, Aias is sporting the standard set with three bars.
  2. An enhanced characteristic set for those that are Psionically aware – Arla is one of these – that’s why she has an additional 4th purple bar.
  3. A characteristic set for monsters. These only need one value and that’s hit points. All the monsters are using this one – the tokens with the single green bars.

I also have a red token on the map that I have decided will not have characteristics – so that one sports no characteristic bars.

In addition to characteristic sets, each map can also have its characteristic bars toggled on and off and these settings persist between sessions – It’s the new map tool button, third from the right.

Characteristics can be altered either by mousing over the portraits in the tool bars / journals or mousing over the characteristic bars directly on the map and then using the mouse wheel.

Don’t worry about the specific details, the manual will be updated and a new video will be released to show you folks how to take advantage of the trackable characteristics system 🙂

I’m still on schedule for a release on Sunday! 🙂

In the meantime have fun!

RobP