Tutorials - Casting

Casting Algorithm

To manage player preferences on characters and perform assignment with an algorithm, activate the "Casting" feature.

In the Event configuration panel, you'll find: 


When a player is signed up, and has assigned a number of characters less than Assignments, they will have available an additional navigation bar button: 

For each preference, the player will first select a faction on the lef, and then select a character on the right.

When a number of preferences have been inserted between Minimum preferences and Maximum preferences, they can be uploaded.

Please note that the player can update their preferences any time they want (before the assignment).

As a rule of thumb, the number of preferences should be:

  • around 3-4 when the number of characters is less than 30
  • around 5-6 when the number of characters is between 30 and 50
  • around 7-8 when the number of characters is more than 50.

If Show statistics has been checked, in each character not yet assigned will be show a graph of preferences made by other players: 


You can input a different priority on ticket types - meaning that a player with a given ticket type will be more likely to obtain their preferences. 

You'll find a new field on the ticket edit form: 


When you want to assign characters, head over to Casting panel

In the first part of the page, you'll find a recap if there are players that did not send preferences, or if there are characters that did not get preferences at all (please note this is a problem).

Then you'll find a selection of the players to perform assignment: 

You can select the list of ticket types, and the status of payment. If you have activated the Factions, you'll also find a selection on the characters to make available for assignment: 

The list of player preference is shown in the middle of the page: 

The values are as following:

  • With the select on the left, you can select on which player perform the assignment;
  • The priority on casting defined as the ticket chosen by the player;
  • The list of player preferences.

By default, all preferences are used in the algorithm (YES). For each player preferences, you can block it, meaning that the preference will not taken into consideration (NO). If you click again, it will made available again. 


Clicking on "Start algorithm" will perform a simulation of the assignment, given the informations provided:

At then end of the page, you'll see the results of the simulation: 

Take your time to review the simulation's results. When you are sure, click on "Upload" to load them and assign the characters. 


If you select "Field for exclusions", a new field will be added to the player's preferences:

This information will then be shown in the casting's list: 

So that you can make an informed decision on which character preference to block for each player.


To be able to find a solution, the algorithm needs the preferences to be more or less distributed among the characters. If instead the players all select preferences on the same few characters, the algorithm could be unable to find a feasible solution. In those cases, you can put a value of the configuration of "Additional preferences". 

In this case, each player will receive a random set of preferences on the characters that did not receive any preference. This will make the algorithm able to find a feasible solution, but will also assign to some players a character they did not select. 


Mirror

If you'd like to let players select the preferences on the characters, but keeping the character secret, you can activate the "Mirror" feature

In the character edit form, you'll find a new field: 

Let's suppose you are creating a character named "The Killer", and in this field you select another character, "The Baker". It means that in your game the baker is secretly the killer, but you don't want to spoil this to the players. 

Players that want to play the bad guy, will then input preferences for "The Killer". When the casting algorithm determines that a player should be assigned "The Killer", they will be assigned "The Baker" instead. 

(Preferences direct for "The Baker" will be ignored, as to avoid giving the character to a player that didn't explicitly wanted to play the bad guy)