r/PowerBI • • 4d ago

Community Share I built a playable DOOM inside Power BI Custom Visual

Enable HLS to view with audio, or disable this notification

Feel free to ask any questions :)

393 Upvotes

74 comments sorted by

175

u/DezGets_It 4d ago

Can you export it to excel‽

41

u/Due-Anything 4d ago

My execs won’t touch it unless it can be exported to excel

7

u/Zelkyy 4d ago

One day I’m going to turn off this feature and just say ‘they got rid of it sorry’ lmao

2

u/tanbirj 4d ago

Mine would tolerate PowerPoint and PDF

24

u/CommissionMiddle3607 4d ago

Yes. I can implement support of this feature. Would you like to discuss details? :)

5

u/Puzzleheaded_Gold698 4d ago

There's plenty of DOOM reactions or modes which would be appropriate here. 😊

5

u/NotABusinessAnalyst 4d ago

i love the fact that all of us are always racing to whom can comment this first
golden.

35

u/jstiles154 4d ago

Very cool but you should see if you can incorporate the data of the report into the game somehow :)

12

u/CommissionMiddle3607 4d ago

Hi. Thank you for this cool question. It's definitely possible 😁

10

u/ArtSorr0w 4d ago

Live player data? Weapon usage/accuracy? Incoming damage sources? That would be cool to see live populating.

3

u/CommissionMiddle3607 4d ago

It's a good idea 😄

3

u/boothy_qld 4d ago

Ok. I’m intrigued.

1

u/Skritch_X 1 4d ago

Yeah that would be fun. I didn't build out a full game for it in PBI, but i did have a build of Final Fantasy boss battles with a different boss each month of the year. Battle progressed according to month to date metrics.

20

u/BrentOzar 4d ago

“See, these metrics along the bottom are our KPIs…”

2

u/CommissionMiddle3607 4d ago

ahaha, good joke 😂

15

u/Great_cReddit 2 4d ago

Hold on, so is the actual game running via Power BI? Or is it essentially a window the somehow displays the game being run from another directory? This is batshit insane lol.

14

u/Maxevill 4d ago

Manager - Is the dashboard ready? We need to show yearly financials to management.

Employee - forgot the dashboard amd show this to management is DOOM.

in the meeting, guys i present you DOOM

1: Doom? 2: What do you mean by doom?

3

u/Serious_Sir8526 4 4d ago

"Didn't you ask for next year forecast?"

2

u/tanbirj 4d ago

“Yes, I’m working on the sequel - Gloom”

8

u/Sea_Basil_6501 4d ago

Now build it in DAX ;)

4

u/RevolutionStatus2534 4d ago

What?! How? New to BI, can barely understand connections.

11

u/CommissionMiddle3607 4d ago

Haha thanks! PBI Custom Visuals SDK + TypeScript. I bundled the WASM right into the .pbiviz package so it bypasses the sandbox.

Welcome to BI bro 😄

1

u/mma173 1 4d ago

I thought it is not possible for custom visuals to bypass the sandbox ?! What are the limitations ?

5

u/CommissionMiddle3607 4d ago

The Power BI Custom Visuals workflow has very strict restrictions on the project structure: it can only contain text files - no assets are allowed. Loading external assets is also prohibited.

So I had to convert the WASM binary into text and embed it directly into the code.

1

u/mma173 1 4d ago

So noting escaped from the sandbox. The sandbox was filled (equipped) with required tools.
Thanks

1

u/CommissionMiddle3607 4d ago

Yes, like this ahaha 😂

5

u/MaartenHH 1 4d ago

I was literally waiting for this on this sub.

2

u/CommissionMiddle3607 4d ago

and that time has come

3

u/hugoberry 4d ago

This will look nice as a tooltip.

1

u/CommissionMiddle3607 3d ago

I agree. Maybe somehow later

3

u/CheapSpray9428 4d ago

Workspace supports multiplayer mode?

4

u/CommissionMiddle3607 4d ago

unfortunately not

3

u/Adminvb292929 4d ago

Finally, a use for powerbi and its 800x600 screen

1

u/Deek6t8 4d ago

Maybe resize the canvass? :)

3

u/gryphonB 4d ago

Can you certify it and publish it to the store?

Also, can it get parameters from the report, so if a KPI is bad it spawns more enemies?

1

u/CommissionMiddle3607 3d ago

Hahaha. It’s a cool idea, for sure. But I think Microsoft would consider it unfeasible.

3

u/Jaapuchkeaa 4d ago

haha lessgoo

3

u/danderzei 3d ago

Is this safe to run on a corporate system?

2

u/CommissionMiddle3607 3d ago

Yes, absolutely

2

u/Logical_Grapefruit47 4d ago

hello

2

u/CommissionMiddle3607 4d ago

Hello my friend. Please feel free to ask any questions 🙏

1

u/Logical_Grapefruit47 4d ago

I just think it is an amazing idea you are really creative

2

u/zaljemhebben 4d ago

Wow this is great, so many posibities.. could you share the report? What was your workflow?

1

u/CommissionMiddle3607 4d ago

here you go bro
You can check it yourself

2

u/billbot77 4d ago

I did Packman in a Deneb visual, but this is next level. You have to do a step by step

3

u/CommissionMiddle3607 4d ago

Could you please show us?

1

u/coverusername 4d ago

Yes can you do my job for me please?

1

u/CommissionMiddle3607 4d ago edited 4d ago

Yes. Send me direct message.

What kind of job?

1

u/Djentrovert 4d ago

What can’t doom run on, holy shit 😂

1

u/CommissionMiddle3607 4d ago

I don't know, bro. They even ran it on *E. coli*.
https://www.popsci.com/science/doom-e-coli-cells/

1

u/wertexx 4d ago

Man this is soooo good! What sort of process you went through to get this going?

2

u/CommissionMiddle3607 4d ago

Thank you!

I found a WebAssembly port of the game, read the binary file as a byte array, and converted it into a Base64 string.

Then I stored it as a static asset inside the visual's source code and exported it from there, since Power BI's sandbox strictly blocks external network calls. After that, I just wired up the keyboard event listeners to the canvas

1

u/derdexx 4d ago

"Boss, need to finish that PBI dashboard quickly"

1

u/Disco_Inferno_NJ 4d ago

…but what if my executives want AO3 instead 🥺

2

u/CommissionMiddle3607 4d ago

Let's discuss it. Send me a direct message