Guess who’s back with another update? Our previous update saw private races, so today we’re adding private families.
New images handling
From now on, all images uploaded to a campaign will automatically be saved to the campaign’s gallery. We’ve hinted at this change for a few years now, our first step being making the gallery available to all campaigns. This finally allows us to massively simplify our code base, which will result in a snappier and faster Kanka for all.
For this change to become a reality, we’ve updated the interface to select an image for an entity. When an image is selected, or a URL entered, the upload process will automatically start in the background. Once the image is uploaded, a preview is shown.


You might have skipped the new From Gallery button, which replaces the old dropdown. This new UI brings up a full gallery explorer, with options to search by name, dive deep in folders. We’ve also added a toggle for a slim view for those with huge galleries.

With everything now being in the gallery, we’re also upping our storage limits.
- Free campaigns go from 50Mb to 100Mb
- Premium campaigns to from 1Gb to 2Gb
Content packs imported from the marketplace will now also always import images in the gallery. Same thing for campaign imports. Entities on the old system will be imported into the gallery.
What about existing images?
You might be wondering what that means to existing images that aren’t in the gallery. Basically, those aren’t touched. All new images will go through the gallery, but we aren’t touching old images.
The reason we haven’t migrated every image to the gallery is that some free campaigns would directly end up with a full gallery, unable to upload new images, while others would have links to images that no longer work, as images in the gallery are stored in a different place than the old system (part of the reason why the new system simplifies our code tremendously).
Private families
Just like character races with our previous update, character families can now be re-ordered and made private to non-admins of the campaign.


General improvements
We’ve re-designed the campaign achievements page, and added a few new ones! Fully unlocked achievements will continue counting the created entities, to see how far you’ve come.

We’ve added back an alert when a form (especially attributes) has reached the max amount of fields our servers can handle. This was previously about 200 attributes, and it is now up to about 800, depending on how complex the rest of the entity is (characters and calendars being complex entities).
Maps now have a zoom level indicator at the bottom right, and the current zoom level is embedded in the canvas’ classes, meaning css can be applied based on the zoom level.

Posts can now be set to render the entity’s reminders. Posts on locations can be set to render the location’s events.
When uploading a file to an entity, the file selection popup filters to accepted file types automatically.
When copying an entity, it’s now also possible to copy the source’s reminders.
Lastly, we’ve added multiple little warning if the campaign isn’t public but permissions are being added to the public role.
API changes
Introducing a new slim-entities endpoint to quickly loop through lots of entities at a time.
The entity abilities endpoint now properly handles adding multiple abilities at a time instead of crashing.
Under the hood
We’ve continued with some big refactoring, simplifying the codebase, and removing pain points. This is all in the pursuit of some new features we hope to unveil next year.
We’ve migrated all the tutorials, alerts, banners, and sidebar notifications into a single system. This might result in some old notifications appearing as new notifications.
Many elements of Kanka’s database have similar fields, but had a bunch of copy-pasted code that was hard to maintain whenever something changed, or ended up with lots of weird if-else statements. We’ve simplified this tremendously, sliming down the code and less prone to weird “why did it break here and not there” situations.
Bug fixes
Fixed an issue where editing pinned attributes would unpin them.
Attributes no longer duplicate when copying an entity with attributes and an attribute template adding the same attributes.
Fixed an issue where subscribers paying in USD while living in the eurozone couldn’t upgrade their subscription.
Private character races would appear to non-admins in the preview panel.
Fixed an issue where non-subscribers could select 100 as a pagination option, but it would still default to 45.
Writing some special characters in the Type, Gender or Pronouns fields would wrongfully get removed.
Fixed an issue preventing users from following public campaigns.
Downgrading an elemental subscription no longer crashes the page.
It is no longer possible to upload multiple files to the gallery to bypass the gallery’s max storage space.
Fixed a bug preventing the email going to yearly subscribers about their upcoming payment.
Multiple issues in maps were fixed. Copying a marker of the polygon type allows editing it in the creation form.
That’s it for the overview of this 2.6 release. You can follow along what we’re working on next on our roadmap.
As always, thanks to our amazing subscribers for making this huge updates possible! Come join us on our Discord to get early sneak peaks of future updates.


Comments
One response to “Version 2.6 – New images, private families”
I understand the logistics needs that required the switch in the images handling but personally, as a user with a quite huge campaign, I find this change quite problematic.
I have a lot of entities and I’m planning to add a lot more, so, the feeling that some of them might not have a characteristic image (that a thing I value a lot), because my space is limited, is quite frustrating to me.
Ok… two GB is a lot! But I know that they have an end and i hope my campaign don’t come to an end!
So, in conclusion, I’m quite disappointed whit this change, mainly because I find your campaign manager a quality and almost essential tool that with this change become less meaningfull.
Whit this comment I bring the opinion of my fellow DM friends and my players how are all yours affectionate users.
Sincerely yours
LikeLike