1.37 Character sheets improved once more

Dear Kanka users, here’s your early end of year present! Character sheets get another big update this time round, as well as lots of other quality of live changes to Kanka.

Character sheets keep getting better

We’re continuing our improvements to the marketplace with this release too. Character sheets get several new features that will hopefully simply them and allow for more interesting designs.

Firstly, you can now hide attributes. These don’t show up on an entity’s attributes tab, and a user can’t modify them from there. This new setting is for attributes that are calculations. To make an attribute hidden, click on the eye on the left of the attribute’s name.

character sheets hidden attributes form

An entity’s hidden attributes can be shown from the attributes editing form. This brings up a popup with all the hidden attributes.

character sheets hidden attributes button

The HTML field now has proper rendering to make our artisans’ lives easier.

character sheets html editing

Next up, the new @i18n() translation engine now also allows passing variables. For example, the character sheet can contain @i18n('Editing :name', ['name' => $_entity_name]). More details available in the marketplace docs.

The @foreach() directive is now available on character sheets. This comes in hand with the next change.

A whole bunch of variables are now available when rendering a character sheet on an entity. For example, the entity’s name can be displayed with {{ $_entity_name }}, or a character’s appearances with @foreach ($_character_appearances as $name => $appearance). The full list of available variables are available here.

The install plugin workflow and interface is now better. For members who only have a single boosted campaign, clicking on a plugin’s Install button automatically installs it in that campaign. For those who have multiple options, the interface now clearly has an Install button next to each boosted campaign.

install plugin interface redesign

And lastly, attributes in the marketplace and in Kanka now support a dropdown selection. This is available by having a normal attribute with [range:London,Berlin,Zurich] in the attribute name. When using the live editing of the attribute, the field will be a dropdown of the options instead of a free text. When editing a character’s attributes, the field is still a text field.

character sheets range dropdown

Kanka improvements before winter sets in

The code that parses mentions in the text editor is now more flexible. This means that mentions no longer disappear when using a plugin like “dark mode reader”.

When viewing an entity with the relation explorer, mirrored relations who have a different relation name now appear as two arrows instead of just one.

We’ve removed the position field when editing entity abilities, and abilities now have a new reorder abilities interface.

Reorder abilities

When creating or editing a timeline, the eras tab is no longer available, and is accessible as a subpage instead. This now means that timeline eras have bulk actions, and other improvements to the user experience.

timeline eras new subpage

The timeline element’s icon field now suggests icons the same way the map marker field does. Ten recently used, padded with the ten most popular icons in Kanka are shown when the field is focused on.

Timeline elements individually get a new option to display the linked event’s date.

timeline element event date

When filtering on attributes, the ! prefix on the attribute value is now parsed to mean “Look for entities with the attribute that doesn’t have this value”. Simply writing ! as the value searches for entities with the attribute that isn’t empty.

Quick links get a new filters field for entity links, to be able to pass filters to the various subpages, thus changing the order in which elements in a table display. Quick links also get a new active field, that is active by default. An inactive quick link won’t be visible in the campaign’s sidebar.

Most pop-up forms now use the same layout as the quick creator. We’ve also fixed all the issues with weird borders in those popups.

The entities API endpoint now includes the same urls array as the other endpoints does for entities.

Lastly, users no longer need to log in to hide ads on a boosted campaign.

Under the hood

We’ve also made several changes to Kanka’s code that should be invisible to our users, but which have a large impact on our lives as developers.

Kanka uses the VueJS framework in several parts of the app. The framework and code now uses version 3 instead of version 2.

The code related to posts is slowly migrating from the old entity-note nomenclature to the more recent post one. With this update, this change impacts urls and the API. A future update will focus on changing the database layer.

And as always, bug fixes

When editing a post that has “admin” or “self” as the visibility, but the permission allows another user to edit the post, the visibility field is now invisible instead of showing just “all” as the visibility.

Fixed a bug in the permission engine for roles. It could cause a view permission to be set on an entity type, but members not being able to see the entities.

The events sidebar link defaults to the nested view like the rest of the sidebar links.

When uploading an image in the text editor on a boosted campaign as a non-admin, or uploading a non-image file, the error message now properly displays what the issue is instead of wrongly saying that the campaign isn’t boosted.

The inventory quantity field now properly renders as a numeric field.

When installing a plugin from the marketplace, the plugin highlighting on the link works again.

Fixed a bug where calendars with a parent calendar would sometimes crash in the yearly view mode.

Lastly, the visibility field on map marker presets no longer switches back to all when editing.

Marketplace commissions with Salvatos for a cause

To celebrate the release of Kanka 1.37 and all the improvements it includes for the Marketplace, 37% of all money received through SalvatosKo-fi page from now until 23:59 on December 30, 2022 (Eastern time) will be donated to Doctors Without Borders Canada for worldwide emergency response and medical help.


That’s it for this update! If you missed the previous one, you can read it here.

As always, thank you to our amazing subscribers who make these frequent updates possible. Come join us and our community on our Discord server!

Photo by Amélie Mourichon on Unsplash

3 Replies to “1.37 Character sheets improved once more”

  1. I have a boosted campaign but do not see an option for accessing/creating Timelines?
    The menu pane on the left side has World: Characters/Locations/Maps/Organizations/Families/Calendars/Creatures/Races; Campaign: Quests/Journals/Items/Events/Abilities; Notes; Other: Tags/Relations/Gallery/Attribute Templates.
    I was hoping to use one to organize the flow of a few events in a world-building context to make sure they were coherent. Thanks!

  2. Thanks to everyone’s generosity, we raised a total of 96 CAD for Doctors Without Borders through CSS tips and commissions! That’s equivalent to almost 10 thermal blankets for emergency response, or 2 safe delivery kits to assist in uncomplicated births that don’t require surgical intervention. Thank you all and happy new year! <3

Leave a Reply

Your email address will not be published. Required fields are marked *