Evidi PirateBays – Final delivery – PiRisk

We present to you… PiRisk

Your one stop shop solution for the risk averse, frugal and greedy, yet battlescared pirate!

Overview

The main goal of the solution is to provide a pirate captain with the optimal booties to hit at each given time, based on a plethora of information.

Solution parts

Executive Dashboard

The executive dashboard is a PowerBI dashboard with a connection to the Dataverse that our Dynamics 365 uses.

The PowerBI dashboard provides

  • Aggregated view of custom areas (areas can span both land and sea)
  • Indication of “profitability” of each area based on indexes
  • Indexes include
  • Booty index
    • Battle index
    • Efficiency index

      Further description of the dashboard lies here

Simulations

Simulations are run in Dynamics 365

We have a PiRisk App that allows you to access and manipulate the solution, run simulations etc.

Index theory

The indexes are weighted against each other. The weight is based on an original value and is constantly updated by PiRisk AI based on results from simulations and actual PiRaids. Adding new indexes in perpituity is thus supported allowing for continually improving results moving forward

Index based GTO

Methodology for indexes is drawn from GTO for AI advancements of Poker to achieve human parity (spoiler alert… we have passed that point already 🙂

Indexes

  • Booty Index
    • Booty Index is based on the calculated and weighted value of

Due dilligence and QA on our development environment. By mistake it was set up in North-America. We didn’t realize in time that this was an issue. By the time we did, we had used so much time in

Pirates Enterprise Resource Planning (PERP) – final

PERP is an ERP system(s) made easier for Pirates and for the mass. It is built from 4 subsystems.

PFM – Pirate Fleet Management

Management of pirates vehicles fleet. It involves the coordination and management of all activities related to vehicles, including enlisting, licensing, deployment (for looting), and tracking.

POM – Pirate Operations Management

Managing the various tasks and processes involved in pirating. This is where the leaders of the organisation can make intelligent data driven decisions and engage their fleet with looting.

PRS – Pirate Reporting System

Covers different reporting needs such as live location reporting of pirates, enemies and loot (target) locations, as well as vehicle, pirate statistics as well as reports on previous raids. It also includes the results of our predictive models to be able to visually see which targets would be best to attack.

PRM – Pirate Resource Management (HR)

The system helps in automating and streamlining pirates’ processes, such as recruiting, onboarding and performance management. The goal is to increase efficiency and reduce manual labor, as well as provide a single source of truth for employee data and records. It stores information regarding skills, pirates in their crews, new hires and gender distribution.

Application Workflows

Reporting workflow

For the reporting layer we gather data from different sources such as AI Builder outputs which again is getting info from Statens Vegvesen. This data as sent to Dataverse which is then collected from Power BI via the Dataverse Connector.

We also have an Azure AutoML classification model which we are calling from Power BI to do predictive analytics on incoming vehicle data. All these sources are the basis of our reporting in Power BI and hence, contributes to make well informed, data driven decisions for the captains in our fleet.

Enemy location reporting workflow

In this workflow, we describe the how the process of aquiring enemies live location is done.
By tricking the enemy into thinking they downloaded a dating app, we are actually pinging their location and storing it in our CRM system.
Technical:
App is a native android app developed in Xamarin. Location report is done once every 5 seconds and it contains users Latitude and Longitude.

Vehicle enlisting workflow

In this workflow, we describe how we enlist vehicles to our fleet. User opens the Canvas Application and takes a photo of possible addition to fleet vehicle. Using Azure Machine Learning, we identify make and model of the vehicle. These two datapoints are sent to an Azure API which is on top of Technical Vehicle Database that contains technical information about the vehicle.
Using another Azure Machine Learning algorithm we recognize the license plate of the vehicle. The license plate is sent to Statens Vegvesen API to retrieve the legal information about the vehicle.
Both datasets (technical information and legal information) is then shown to the user of the canvas app and he decides to store them in the CRM.

Notification of target attack workflow

In this workflow, we describe how friendly pirates on the field are notified of doing their job. From our Model Driven App (CRM), administrator clicks the “attack” button, and a call is made to an Azure Function API. This then sends a notification to all friendly pirates in the Teams App.

In this workflow, we describe how the attack is actually done

Once the pirate captain receives the notification in the Teams app, he accesses his Canvas app and approaches the target. From the CRM portal, administrators are able to see live data how friendly pirate is moving and enemy pirate in regards to each others position.

Future improvements:

-Embedded reports in the model driven app to limit the different system pirates & captains needs to learn

-Collaborative loot system to build relations with other crews could be created from the mapping systems by including allies in maps and more raids happening

-Pirate dating app

-HR system for gathering LinkedIn information from prospective new pirates and storing it in our database for reporting and easy recruitment

Final delivery 🏴‍☠️🦜Protector of the Seas

As the captain of a ship, I want to be sure at all times that I will not encounter pirate ships.
This makes me and my crew safer in the work we have to do, which in turn leads to higher efficiency in our deliveries.

This is the user story we had as a starting point.

When we had to build a solution for this, we needed to be creative.
At first we thought we could use satellite images to recognize pirate ships from above. But it’s not that easy. Because flags that hang vertically or worn sails are not necessarily so easy to see from above.
Then we came up with a good idea. Pirates probably do not send information on AIS. But all law-abiding ships do.
If we then compare the number of ships we find in satellite images with the number of ships we find through AIS, within the same geographical area, we find out if any of the ships are pirates 🥳

Satellite image of ships

What we do.
We download satellite images from the Sentinel Hub API, which is an open API for satellite images. We then process the images with our own machine learning model, built from scratch in Python. This is trained to recognize ships at sea.
We get back the number of ships within the selected sector.
Then we check the Norwegian Coast Guard’s API for AIS data within the same coordinates. We get the number of ships from there as well.

We then compare the number of ships from satellite and AIS and store this in an Azure SQL table.

This is our backend solution in a nutshell.

Pirate tracker 3000 – web front end

In the front end, we have built a web app in Reajc.js that allows the users, authorities or shipping companies, to check sectors for pirate ships.
All ships in the sector appear on the map, where you can also click on them to read more information about the ship. If pirate ships are discovered, they appear with their own pirate flag symbols. Green needles are police or military vessels.

Ships in the sector

It is possible to send an alarm to all ships in the area if pirates are detected. A notification is then sent out to the ships that subscribe to our service, which sends a notification via a Teams bot. It tells what the threat is and where it is.
The light on board the bridge will also flash red if you have purchased this additional service.
In Teams, it will be possible to click to read more about the alert and see on the map where it is.
When the coast is clear, the alarm can be removed from the Teams client with a click.

Alarm light

From Teams on board the ship, it will be possible to check if there are pirates at coordinates you provide by sending a message to our bot. It then politely answers yes or no.
If there is something wrong with the message you send, you will also be informed about it in a polite way.

Notification on alarm
Check sector
Clear alarm
Intranet

This solution has two potential customer groups – authorities and shipping companies. The authorities want to have safe coastal routes for ships, shipping companies want their ships to be safe.

We have learned a lot through this assignment. Much of what we have created has been built from scratch, precisely to learn as much as possible. But we have also used a lot of off-the-shelf products.
Microsoft Teams and Sharepoint are used to have familiar, simple surfaces for end users. Power Automate is used to be able to easily flash alarm lights.
Otherwise, the rest of the solution is hosted in Azure.

Overall architecture
Starting plan

Captain’s log – data at your hook-tip

The captain log business value is that he has an app with all the tools he needs at the tip of his hook.

A new feature:

Behold the “Reveal your true face feature”

Revealing the true face

Some pirates find their interest in hiding away, and then it is handy to have an app to show the true face and spot if this is a know fellow shipmate or a rivalling pirate that deserves to be keel hauled.

The service uses a mobile or tablet camera to take a picture of the person in-question and then posts it to mutiny services for identification and face recognition in order to find who this person is.

Claiming the ACDC Craftsman since it is created using actual code with some best practices in react development: https://github.com/TheBastards-ACDC2023/Bastards-NativeApp

🚨💰 Get Richer Faster using Plundrr – The Premium Pillage Planning Platform 🤑👌

Picture yourself as a pirating entrepreneur: You are eager to get rich, be feared and get results faster than the old generation. We know you are vell versed in apps such as Uber, Fiverr, Porterbuddy and AirBnB. In short you want things on time, at the right location and as convenient as possible. This is why you need Plundrr.

“I never thought I could loot this much of coin in such a few moons. Yarr!”

– Pirate Captain Beta testing Plundrr

Art showing the Plundrr Skull and Sword logo with Plundrr name and tagline “get richer faster” underneat

Plunder is a Raid Planner

At the a first glanse Plundrr is a simple app, but it does a lot of the heavy lifting for you. You set your desired course – from one cove to another – and Plundrr uses machine learning, data scraping, powerful automation, advanced trigonometry and vector calculations to pinpoint prime targets and map intercept courses for you. All you need to do is to show up in time and keep the sails full. However, for every raid there are are key factors for business success:

  1. Find the Best Opportunities to Plunder
  2. Steering Clear of Threats
  3. Intercept all opportunities in most cost efficient manner

Challenge 1: Find the Best Opportunities to Plunder

Based on your ships course and destination Plundrr can estimate which boats will be in your path. But it is not enough to know what boats are there, you also want to know which one has the better booty. this is where Barenswatch comes into play: We scrape all data about all vessels on your rout and calculate estimated value of the ship. We use the ship classification and size of vesle to estimate the value of the ships cargo.

All opportunities are ranked and given a carrot score 🥕. The more carrots the better. Optimally we want to strike all triple carrot targets in our path and also deviate if total yield will be better persuiting triple carrots over single carrots. In short, 🥕🥕🥕 is better than 🥕.

“Using carrots for value! Haha, thats stupid but also so correct”

– øystein from @in1

Challenge 2: Steering Clear of Threats

There will be compassion out there. No worries, Plundrr’s has your stern. From barenswatch we also get classification types for warships, police and even with some tinkering and estimation: Other Pirates.

We label all ships as opportunities, friendly or threats and higlight which to avoid and what strength they have in the UI. We call this the Scull Score 💀. As for carrots, the more sculls the more danger. We allways reccomend avoiding tripple scull boats, however we give you the intel and freedom to choose to attach tripple carrot ships even when they are close to a single skull. This risk/reward judgement is for you to decide.

Screen grab showing the interactive map in Plundrr with icons for opportunities, threats and passive ships. Every ship is given a score from 1–3 carrots or 1–3 skulls denoting estimated value or threat level.

“Wow, I love how the UI is really clear. Also the boats are fun!”

– Håvard from @in1

Challenge 3: Intercept all Opportunities in most Cost Efficient Manner

Once the user has chosen a rout, we plot that rout and use machine learning to simulate optimal target vectors. The problem we are solving is called the traveling salesman’s problem: A person travels from point A to point N ion a two dimensional plane. In between his origin and destination there are multiple opportunities for sales scattered in every direction. Our challenge is to plot the optimal course between ale opportunities traveling the shortest totalt distanse. Although for sea travel we need to slightly adopt the model to account for sea current and the travel of other ships.

Illustration of plotted path between opportunities avoiding high risk

Exploring the Technical Side

The technical Architecture, although straight forward leverages Power Automation and Power Flows to achieve more with less.

System diagram showing the technological architecture of the app, moving from what the user sees on the left, crossing the “users line of sight” into the backend structure showing the Function APPs services and how the are connected to Dataverse and its data storage

Mining Data

Data is predominant gathered from Bareenswatch, an open API for ship traffic on the Seven Seas. For each ship we get heading, size, global position and weight. We store the data in Dataverse for further use and manipulation.

One of the ways we used the mined data during this hackathon was to viziualise ships as opportunities based on weight and size. The data was rendered in a Power App dashboard enabling the team to examine data to better understand how we should define high opportunity targets for Plundrr.

The data mining and visualization granted us badges in:

  • Dash it Out
  • Dataminer
Captain Mats looking at a dashboard showing data from barenswatch grouped and prioritized based on estimated value

Storing Data data Using Data Verse

The backend functions of the solution is mainly built on the Power Platform allowing an excellent user experience when it comes to accessing and managing data. A modeldriven Power App is used as a killer app for administrators to work with saved information about raids, pirates and ships with travel logs. This data is saved in Dataverse to make sure a database is available for all kinds of applications created by users of rock solid geekness.

Flow fetching data from Barenswatch and storing to Dataverse

The tables in Dataverse can be accessed using Power Automate API, wich allow us to manipulate and control the dataflow, making sure each request is handled based on where it comes from and what it is used for. This way, a various amount of data can be returned based on input value, and therefore creating a most extreme business value where customers can retrieve amounts of data defined by how much coin they invest in the solution.

Flow that triggers events to Microsoft teams from new records in our pirate rooster

Use of Data Verse for the backend granted us badges in:

  • Go with the Flow
  • Power User Love

Plotting Paths using Python and Bokeh

We use the coveted algorithm “shameless extrapolation”, taking into account the ships current speed to estimate the ships future route. The 20 closest ships are considered opportunities and highlighted with the bright turquoise icon. Hovering over ships in the map gives information about name, type and destination.

Paths are plotted using Bokeh – a Python framework for creating graphs and plots.

Initial research into plotting and vector calculation made us explore prediction algorithms taking into account additional factors to predict opportunities location even furter in the future. Luckily after working on this we discovered we can achieve the same results with less complex algorithms like the “shameless extrapolation”, meaning we can decrease the cost of our service to the end user: Granting even more bang for theoretical buck.

“This is ridiculous. So much effort must have gone into this!”

– Rune from @in1

Solveig’s ☀️ amazing work awarded us badges in:

  • Crawler
  • The Existential Risk
  • Retro
Solveig ☀️ researching vactor calculation based on tru north and origin of vessles.

Automating Deployment and Infrastructure

We built a SPA application with .NET 7 and React. With these tools, we have build a sturdy vessel that’ll weather any storm.

.NET 7 provides us a robust backend framework while React keep front-end shipshaped.
Together they make a formidable team that can take on any challenge on the high seas the is web development. 

With GitHub Actions our ship will get the lates features and bug fixes in no time.
Our ship is deployed with Pulumi, so we have Infrastructure as code and is running in Azure.

Screengrab from Github showing deployment and merging routines.

Use of these technologies awarded us the badges

  • Sharing is Caring
  • Power User Lover
  • ACDC Craftsman
  • Client Side Salsa

Packaging the User Experience

Good design is never an afterthought nor a last feature. Good design comes from understanding human needs and quality experiences. We wanted to appeal to an audience that grew up in the 90’s and are aquented to all the services the 20’s afford, like Uber, Tinder, Porterbuddy and Oda. Following an initial brainstorming we landed on Neon Retro as inspiration (cyberpunk music was playing at the time which might have sparked the idea).

Figma was used to prototype central features in the app, you can access the prototype here: https://www.figma.com/proto/3y0t39rPUp4uH2fhhwdGBv/Plundrr(tm)?page-id=0%3A1&node-id=13%3A215&viewport=-674%2C374%2C0.43&scaling=scale-down&starting-point-node-id=13%3A257

“Wow! You can do this with Figma? I never knew. I’m installing Figma now.”

– Guy at luch I cant remember the name of

Fist step was to find a pallet and to create some sort of brand. We used Adobe Color to mix a color pallet based on a selected base. This base was used to make custom vector inspiring the rest of the apps design.

Screenshot from Figma prototype showing login screen
Screenshot from Figma prototype showing map with highlighted opportunities, threats and friendlies
Screenshot from Adobe Color showing how Analogous color ceperation was used to create a color pallet
Custom Vector Graphic for main logo inspired by Neon Futuristic designs.

The color pallet and main logos look and feel is used throughout the UI to make a modern yet eery subtly retro design. Icons for the app are altered versions for existing icons from Nounproject. Since they are heavily modified from originals we claim fair use.

Example of buttons in the app, one style for main button and one for secondary action like “back”
Set of icons for Opportunities, friendly, hostile and your own ship.

Prototyping using Figma awarded us these badges:

  • Retro
  • Glossy Pixels

Summarizing Three Amazing Days

During the hackaton we’ve all been forced to take a step back and reconsider the direction of the project and our solutions. We tried connection an arduino to a Raspberry pi to use as a notification system for when the ship was in danger, but with (almost) faulty equipment and with limited knowledge, we had to scrap the idea. A lot of hours spent, and one could say wasted. But its not really wasted at all, as we definetly learned something on the way.

We are truly happy we got to test our limits, share our ideas with new friends and discover how awesome it is to be a happy camper and spread joy.

Having good spirits awarded us the badges:

  • Happy camper
  • Community champion

Full solution from PowerPirates of Axdata

Our main goal with this years ACDC was to make the workday a lot easier for both the Pirate Planners and the Pirates itself. We had identified that the use of Finance and Operations standard functionality for both planning and Employee Self-Service is far from easy and user friendly to use. Therefor we decided to use these days to create this:

  • A Model driven app for the Pirate Planners to use when they plan for what raid what pirate should be on, based on the skills that pirate has. This Planner app receives all the data it needs regarding the raids/projects and the pirates with skill profile directly from F&O, so that they always have the up to date data to work with as this is crucial to be able to do the correct planning.
  • A Canvas app for the Pirates to use on their mobiles, where they can see and update their personal information while the app talks directly with F&O, accsess other information that is relevant for them that we have integrated into the app like your calendar and meeting, let you see where the Planners has booked you, an AI chat that can give you answers for whatever you want and more.
  • PowerBI reports showing what the Planners have planned for in the different raids and other relevant information.

And, to make it easier for you judges, here are the reasons why we think we deserve a lot of points in the different categories:

Excellent User Experience:

Our entire idea before the ACDC was that we wanted to create something that gives everyone that struggles with the user experience in F&O a better workday, every day! The solution we now have created will give all the Planners out there a new, innovative and very user friendly way to plan their pirates and other resources with the data that is already in place in F&O. And, for every pirate and other employee in the company, their experience with the brand-new mobile app for Self-Service, they difference from what they experience now in F&O is almost impossible to describe! This is so much more user friendly, cool and awesome that they will be amazed!

Most Extreme Business Value:

As we have said before, this work is not easy for companies using it today. We know that for example with planning, many companies have a excel sheet that they update manually with data from F&O to do raid/project planning. All of these companies will be thankful that we created this Model driven app these days, as it really will both save them time, make sure they always have the correct data to work with, and give the company a much better up-to-date overview over how their pirates and employees are booked the next weeks.

And if that wasn’t good enough (to be honest, we first only planned to create the solution over, but we also wanted to do something very good for all the pirates, not just the planner), the Canvas app will give a huge business advantage to all companies using F&O! Even if they don’t do Planning for their resources, they can of course still use the Pirate app for all their employees, where they can show and give the employees the possibilities to do everything they do in F&O as Self-Service today, and we can include whatever other data or solutions they use directly in the mobile app so that the employee gets all the information and possibilities they need in one place instead of having to go several places! And, the app will of course be teamed with the companies logo and colors, so that for the Employee, the experience will be that this is an app only for them!

Rock Solid Geekness:

When we are three low-code and two no-code pirates going to a Hackaton, then something we really wants to learn more about is code and Geekness. We have learned a lot and used react and Node.js as you will see in the solution under, and all the time we have spent drilling into how to use the data from F&O correctly in POwerPlatform… Phu, we now know a lot more about many more tables and data coming out from F&O and how we can use it than what we did before. And, that ladies and gentlemen, is rock solid geekiness in the ERP world!

Killer App:

The way all components in this solution is tied together, really is what makes it a Killer App! We have connected F&O to a Model driven app and to a Canvas app, and the canvas app updates data back in F&O. In addition to this, PowerBI collects data both from F&O and the Model driven app, to show the reports we want. We have also extended the Canvas app to have so much more information that is relevant for the Pirate (and remember, the canvas app also shows information from the Model driven app regarding how they are planned!). When all of this is connected in a solution we now only have used 3 days to build, yeah, this deserves a lot of point! If you haven’t worked with F&O data in PowerPlatform before, then it’s hard to know, but this not straight forward.

Screenshoots of the Pirate Planner app and the technology used to fill it with data (with explenations under the pictures):

For the captain to check the various available project raids
Once the project/raid is selected, you set what assignement you want to rederve hours for
And then you reserve the pirate
PowerBI report that shows the info needed from the model driven Planner app
To save time without a datalake when gathering data from F&O we use the old and lovely tool PowerQuery inside Dataflows

Screenshots of the Pirate app and the technology used for that app (with explenations under the pictures):

Frontpage of the app
View your calendar and meetings
View your bookings coming from what the planners has done in the new Planner app
View your information from F&O and directly update the infor in F&O when you submit changes
OpenAI embedded chat for the Pirate to use to whatever!
PCF code used to integrate a PowerApps Custom Control to run the Node.js (shown under)
React and Node.js web app on Azure used for the OpenAI chatbot
Custom connector for Microsoft Graph API we have built to get picture and other data for the logged in user of the Canvas app.
Custom connector code
PowerAutomate to give you the greating of the day
PowerAutomate to find jokes/insults

And what has this even given us?

Why we have clamied the badges we have in this post:
ACDC Craftsman: For the entire solution, how it all is connected and works!
Dash it out: The PowerBI report for the data fra F&O and model driven app
Client side salsa: For the OpenAI embedded chat using react and node.js
Retro: For using PowerQuery to collect data from F&O
Feature bombing: For this fun screen in a canvas app that gives you a lot of features at the same time:

Thank you all for an amazing event!! This has been so much fun and we will definetly be back next year!

Final Delivery from The Bastards

Let us tell you a story about a pirate captain. She was paranoid and very afraid that his creaw would mutiny. She wish there was a way to keep track of the current mood of every crew member before and after raids, a way to be prepared and know hos to distribute the loot to keep everyone happy, but still keep as much as possible of the gold to herself.

As we all know, if you want something done you need to do it yourself. And as any good technology savy leader the captain set out on a quest to find a solution.

She gathered the best technology savy pirates she could find, put them in a room with loads of beer and food, and locked the door for three days. Now, let’s look at what the team actually created.

This is the team:

Capture Pirates

First and foremost the captain needed a smart, fast and easy way to capture a picture and details about the crew members. You can not rely on pirates to shop up for onboarding, so the captain needed a mobile app that would allow her to take pictures of the pirates as they enter the ship on the way out to seas.

How the app works:

The app is a Canvas App with a camera control on the first screen

When user click the camera control they navigate to the next screen where they will see their picture.

They can go back and take a new picture if they are not happy, or move on to “Piratefy me”.

If user click the “Pratefy me” button a power automate flow is triggered. We pass the image base64 value as a value and store the reply value in a variable.

the Canvas App the user will see the newly created name and their picture Piratified

Automagic

The app captures an image which is then sent to be classified correctly as man/woman/person to counter for the bias of mail pirates in the image training model (Stable diffusion v1.5). Next the classifier input is used when we infuse the captured image with pirate traits, realising the true pirate you as a new photo. To go with the cool pirate you, you need an authentic pirate name matching your new look. This is all achieved via Azure Open AI (PirateGPT – text-davinci-003) which in turn generate proper JSON objects to be sent back to the app.

As the App now has captured your name and look, this is sent over to Dataverse for safe keeping. And we know have good track of a ships crew. And pirate life can be summed up as, raid, get money, be happy, spend money, get broke, become unhappy, then raid some more or you stage a mutiny ridding the ship of the current captain to star over.

This lifestyle is simulated by the PirateGPT mood generator. Every hour the mood per pirate on a ship is re-assessed based on the previous mood, the current loot left on the ship – with a random factor of weather, because as we know, sun is cool, rain and storm is bad.

The mood data is kept for safe keeping in the crew mood Dataverse store, and displayed in the real-time Mutiny PowerBI dashboard allowing the captain to easily plan new raids or not.

Pirate GPT

/getcrewmate
Prompting PirateGPT with sample data and our JSON schema, new information is generated on the fly.

/simulatecrewmood
Prompting PirateGPT describing the mood and loot scale we use on a ship, as well as factors which influence a pirate becoming grumpier and grumpier, or happier – we get authentic sample data to illustrate the day to day operation and workings on a pirate ship.

Stable Diffusion

Running in a local data center in Oslo city center our large image model is ready to respond and iterate out the most amazing pirate shots (most imagery delivered by the bastards is auto image generated based on prompting).

/txt2img
Send in a good prompt and you get something back

/img2img
Send in an image and prompt and they are fused together into something novel

/interrogate
Send in an image and get it described

The mutiny data model 

Creating a model to prevent pirates from starting a mutiny requires a model based on pirate infrastructure and processes. 

Functional requirements 

A captain needs to know how close the crew or an individual priate is to start a mutiny.  

In case a captain has a fleet of ships the model handles seceral ships. The ship has a name but most importantly a loot. The loot provides for food, maintenance, drinks and adult entertainment. Low loot results in sinking moral and a drop in mood amongst the pirates. 

For a pirate a image is important. You want to look good on the most wanted pictures, and off course create fear amongst enemies and potential victims of a raid. For the captain the knowledge of their mood is important, and their chance for coordinating a mutiny. 

Calculating Mutiny score 

Based on these basic facts the mutiny score can be calculated. When the ships loot is high the captain can provide for the crew and reduce the chance of a mutiny. But the lower the loot the mood will sink. 

The Mutiny score is regularly updated while the loot is reduced. Monitoring the mutiny score the captain is able to plan when a new attack is to be conducted. 

Captains Black book

The Captains Black Book is a model driven app that allow for some quick and easy administration of ships, pirates and insights into the Mutiny Scores.

Wavy Seas

The captain is a very visual person and wanted an easy way to get a feeling if the crew is happy or not. The report can be filtered from the top right corner and select the ship to see data for. The boat is a picture of the actual ship for easy recognition and link to the real world.

The blue line at the bottom, looking like water, is actually a line diagram showing the mutiny score over time. If the score is high the Captain will see a rise in sea level, and if it’s low the sea level will be low.

If the score is consistently low the water will be nice and calm, but if the score varies because of unsteady mood in the crew the water will have big waves. If the score is consistently high the boat will look like it’s going under.

Captain’s log

Every captain needs to have resources available at the fingertips. A nice React native app has quick options to check what’s going on at the ship, and also a useful feature to find the real person behind a pirate – reverse imagery of the capture a pirate app. Repo at: https://github.com/TheBastards-ACDC2023/Bastards-NativeApp

Meet Capt’n Clawdius

The ships cat rolls around the best it can, but with flat batteries and Marius Bluetooth to hold his hands, the sensors are not of much use. We think the ship be rat infested prreeeeettty soon!

What we never got around to

The team set out on the quest to create a model for optimal distribution of loot across the crew. We were able to visualize the mood of the crew with the Power BI report, but it doesn’t show the captain how to distribute loot to maintain a low mutiny score. The team simply didn’t prioritise this task because they had too much fun creating the Capture Pirate app and the PirateGPT image generation.

The team members have very different backgrounds going into this quest;

The Captain had some experience creating apps before, and was also responsible for making the graphics and keeping the other team mates in check and on task.

The First Mate is a veteran and has a lifetime of experience in technology – but in the face of endless new possibilities through AI and completely new tools in hand, even the most senior of us will feel the heat of a steep learning curve.

The Boatswain is a rouge sailor that has been in the game for a long time. He suddenly went into his own bouble half-way through the quest never to be seen again. When the quest was done the rest of the team found bits and pieces he had created that magically fit into the rest of the solution as a whole.

The Powder Monkey new technology well, but had never seen these new and shiny tools before in his life. With an impressive patience and “tech me everything” attitude he got promoted from Cabin Boy to Powder Monkey in only three days!

Collectively the team learned a lot. The novice got started, found his way, got amazed and most importantly learned how to learn! The veteran adopted new tools and created the magic dust that makes the whole solution the wonder that it is.

Even though the team didn’t get as far as they wanted to go during the quest they followed their instincts and recognised that it’s the journey that matters the most, not the destination. The Captain did well in creating a great vision that inspired the team and make them pull in the same direction. Somewhere down the line the captain decided that it was far more important to learn new skills and try out new things then to get to the finishline. What was built was a great foundation that can be built upon and enhanced over time.

Most extreme business value

The solution the team created is abviously HR’s wet dream in terms of onboarding, monitoring employer satisfaction and keeping track of the mood of your workforce.

Using this solution will equip the management team with the tools they need to keep up to date and be able to make changes where needed before empoyees leave the company.

Excellent user experience

Imagine this being a manager taking pictures of new employees. We all know that Gen Z are used to looking at themselves with prettifying filters. This way the old middle manager can take pictures of their new employees and let Open AI add the familiar filters so that when the Gen Z employee see their own new profile picture they will actually recognize themselves.

All good brands with some selfrespect has special fonts that is designed to give the user crafted associations. Never underestimate the effect of a good font.

We updated the brand guide based in feedback from our pirates and this is what the new logo looks like:

The color profile:

We asked AI to create a pirate color theme:

Here is a color palette that would work well for a pirate-themed app:

  1. Deep Sea Blue (#0E4A7E) – This shade of blue represents the vast ocean that pirates roamed and the mysterious depths that lay beneath its surface.
  2. Sun-kissed Gold (#FFC72C) – Gold is a symbol of pirate wealth and adventure, and this shade of gold has a warm and inviting feel, like the sun shining down on a pirate’s treasure trove.
  3. Rusty Red (#7B2E16) – This color represents the worn and weathered elements of pirate life, such as old ships and rusted treasure chests.
  4. Weathered Wood (#6F5F3E) – This color is a nod to the wooden deck of pirate ships and the rough-hewn timbers used to build pirate hideouts.
  5. Sandy Tan (#D7C3A3) – This color represents the sandy beaches where pirates buried their treasure and the warm, sun-drenched environment of the Caribbean.
  6. Stormy Gray (#5E5E5E) – This color represents the stormy seas that pirates often had to navigate and the treacherous conditions they faced on their journeys.

These colors work well together to create a cohesive and visually appealing palette that captures the essence of the pirate theme.

Killer app

The canvas app is an end to end solution that is working beautifully and can easilly be implemented as is in any company without much alterations. If taht’s not killer in three days, I don’t know what is.

Rock Solid Geekne

Connecting to our PirateGPT and picture manipulation, connecting to sensors and robots shows how our solution makes use of technology and we use geekness to find creative solutions. The use of hacks and trying to teach new crewmates how to provide help during extreme conditions lifts the whole team.  

The future

If the team had more time they would try to evolve this solution further. these are some of the ideas:

The tech crew has worked on possible solutions to provide the captain with intelligence in order to keep morale up. Here is a list from our backlog, but du to sea sickness not they are in the planning state.

Most Wanted

Constant monitoring of FBI most wanted API to check if we are listed and have to sail incognito.

Most valuable victims

Always keep track of where the loot is.

Drinks and adult entertainment

Where is the best and closest lesiure spots

Thank you for an amazing time!

Final Delivery

We are a pirate agency that tracks down ships along the coast of Norway, rate them by estimated loot value and plunder risk before selling them as targets to pirate crews in that area. To get the ship data we use power automate to import ships from selected locations using Kystverkets public api into Dynamics 365 https://acdc.blog/waken/krakens-masterpiece/

Some of the challenges during this process is that many of the ships are in constant movements and can disappear of the map at any time. Therefore we update our ships often and delete the ones outside the desired areas.

Our pirate sales team use Dynamics 365 to get an overview of the ships imported from Kystverket, processing the most valuable first.

We have been training the ai behind the lead scoring by feeding it leads qualified and disqualified leads with different combinations of risk and estimated loot value by ship type in order for it to determine the ones most likely to be targeted.

Stakeholders are automatically added to the Ship based on what pirate crews are located in its area. Based on the lead score and whether the ship is arriving or departing a harbor in the area, the pirate sales agent from our organization will determine if the ship qualifies to become a target or not.

By qualifying a ship, it becomes a target and some of the vital ship data is copied to the target. Stakeholders are copied and the first thing we now must do is to make a few phone calls to them and ask who is interested in this target.

When we have determined the pirate crew who gets the target, we now have to discuss the offer. By default a product line is added to the target stating that we take a 25% cut of the estimated loot value. Sometimes this is all we need to complete the offer, but other times the Captain of the crew has a shortage of crewmembers. Instead of him declining the target, we can offer him some assistance for the plunder to come. By adding additional product lines for Captain, First Mate and Crew member (depending on his need), we now have the chance to earn even more from this deal.

The offer is now accepted and we close the target as Won. This will trigger a Flow generating a pdf document with the details of the target sent on email to the captain.

The contract must be signed and sent in return. The captain must pay a deposit up front before we give up the ship location.

Beside selling targets to other crews, we also keep some of the best targets to ourselves to plunder. To secure better chances of plundering, we have developed a canvas app loaded with nice features when out on a raid. https://acdc.blog/waken/the-pirate-assistant/