In the Pirate 365 Enhance module the pirates goes through a simulation to prepare for the sea. The simulator has different levels that the pirate needs to go through. If the pirates don’t pass level one the pirate is offboarded and has to walk the plank, and that means that the AD User is disabled in the Azure Active Directory. If they pass level 1 they will proceed in the onboarding process.
The pirates goes through the Pirate 365 Enhance Simulator and here they get a score that it used to suggest the best role for the pirate (this will be described later in the post).
Gif from a gameplay:
During the gameplay we collect points based on the different levels they pass. We have created a list of points in Dataverse that they can achieve as can be seen below:
During the game play we assign points to the pirate that is later calculated to a final score. In the image below you can see the log of the game play and what Score Points they achieved.
They also get bonus points on each level based on how far they get in the game.
To calculate the total score we are using Roll Up fields in Dataverse, like below:
For the Pirate 365 Enhance Bonus Score:
For the Pirate 365 Enhance Score:
and a Business rule to add the bonus and the scores together:
And we have added a section with the score on user (pirate) table in the Model-driven app, Pirate 365 Manage:
This score is used in the next part of the evaluation process.
The Pirate 365 Evaluation app
After the game is over the process continues to an evaluation process and the pirate score is compared to the score limit of the different pirate roles we’ve created in Dataverse.
The role can be seen in the image below:
In the evaluation process we are using the Pirate 365 Evaluation app module that is used to evaluate the pirates scores and assign them to an appropriate role and ship. To handle this we have a Canvas app.
When a recruit is selected in the leftmost list, a Power Automate Flow is called with the recruits ID. The flow then finds the role that has a Score Limit closest to the recruit’s score from the game. The role is sent back to the canvas app.
The flow looks like the following after a flow run and returns the suggested role.
When the suggested role is received in the app, the role is highlighted in the Role Gallery in the canvas app. The user can then click on the suggested role (or any other role, if the user humanly evaluates the recruit to not qualify for the suggested role, for unknown reasons) and on the ship the recruit should be assigned to.
A flow is called and assignes the role and ship.
The pirate then gets assigned to a pirate ship and eventually there is enough crew members that they can go onto the big sea. Arrrghh..
When a recruit, role and ship has been selected, the app goes to the final stage of the process. On this screen the user can choose to onboard the recruit (hence, becoming a true pirate) OR offboard the recruit (meaning sending him/her out on the plank and leap to certain death in the shark and kraken infested waters).
See the gifs below:
Gif showing the onboarding process in the app.
Gif showing the offboarding in the app
To illustrate how both the onboarding and the offboarding processes are carried out in person, we hired a professional movie crew to record both processes in real life.
Both the pirate and to different recruits in the videos have asked to be anonymous, for personal reasons.
Onboarding video from the Pirate 365 Evaluation app:
Video from the Office 365 Enhance app for offboarding when the pirates fails on level one.
- A screening process for getting the right people on a ship
- A easy assignment process for onboarding of pirates and ships
Learning take aways:
- Creating games in Power Apps
- Using Power Automate, Dataverse, Canvas apps to create a game