Need a way to visually make a random choice from somthing on the canvas (a character, a door, an alley, etc...) that all players can see?
What is Ip Dip
The Ip Dip module is a GM/DM tool to visually make a random selection. The GM/DM places numbered markers on the game canvas that all players can see for each potential choice, such as: directions to take, tokens to target, grid squares where something may 'spawn', etc... Once a random marker has been chosen, it is singled out on the canvas and finally displayed as a chat message with a modifiable version of one of the Ip Dip rhymes.
The Ip Dip module name is based on one of many rhythmic counting-out-rhymes usually played by children to make a choice from several options. Some may know similar rhymes like 'One potato, two potato' or 'Eeny, meeny, miny, moe'.
How to use this module?
The functionality of this module can be initialized two ways:
- An editable key binding defaults to CTRL-I, which launches a dialog, or
- A macro can be created to launch the dialog using the following 'script' code:
const spawnDialog = game.modules.get("ipdip").spawnDialog;
spawnDialog();
Once the dialog has been initialized, clicking anywhere on the canvas will generate a numbered marker at the mouse cursor location. The marker will contain a large colored number, which identifies it from all the other markers. The marker also contains a smaller white percentage value, which represents the percent chance of that marker being randomly chosen. For example: given 5 markers, each marker will have a 20% chance of being randomly chosen.
It is possible to increase the chance for any given marker to be randomly chosen by hovering over the marker and scrolling the mouse wheel.
Once the GM/DM is satisfied with the options, click on "IP DIP" in the dialog box to make the random selection.
FYI
Nothing generated by the Ip Dip module persists. The dialog box, the markers nor the chat log messages are stored in any database. Refreshing the browser will reset everything.
Known Issues
- The ability to remove chat messages was stripped from this version. It wasn't working in V12.331 anyway. Seeing as V13 is right around the corner, and the chat log is being switched over to AppV2, I would rather spend my time trying to re-implement it in V13. (Just refresh the browser, they will go away. They were never saved in the first place)
- The markers are now placed on a custom IpDip layer. Any previous experience with intermittent mouse control issues with tokens should be finally and completely eliminated. I don't touch that code at all anymore. The catch is, IpDip programmatically switches to the custom IpDip layer and the GM can still click on the other layer buttons while the IpDip dialog is active, which will make the GM incapable of placing markers or returning to the custom IpDip layer. The simple fix is to close the IpDip Dialog window and launch it again.