This is a plugin for OBS Studio that adds a real-time "ORLY?! Counter" as seen in Skawo's videos. (This is really only useful for Skawo and his fans.)
I apologize in advance for this lengthy setup process. OBS Studio plugins written in Python can't create their own sources, so you have to do it manually.
You'll need to follow this setup procedure for each scene you want to use the ORLY Counter in. (You won't need to load the plugin again when switching scenes, but you will need to select the sources for the scene you switch to in the plugin settings.)
- Download the plugin and unzip it.
- Create an image source for the owl, and set it to use
owl.png
. - Add the two textboxes (do these steps twice):
- Add a textbox.
- The first one is the counter name label ("ORLY?! COUNTER:").
- The second one is the counter itself ("0", initially).
- Set the textbox font to whatever you want. Skawo uses the font "Delfino."
- Right-click on the textbox.
- Choose "Filters."
- Click the "+" button in the bottom-left corner, and choose "Image Mask/Blend."
- Name it "Opacity" (capitalized exactly like that, or else the plugin won't be able to find it).
- Under "Path", browse to
white.png
. - Click "Close."
- Add a textbox.
- Position the three sources approximately where they belong in the scene.
- Add the three sound effects:
- Add a new Media Source.
- The first one is the default "ding."
- The second one is the "ding" used for multiples of 10.
- The third one is the "ding-ding-ding, dong" used for multiples of 50.
- Click "Browse" and choose the appropriate sound file (
ding-01.wav
,ding-10.wav
, ording-50.wav
). - Click "OK."
- Add a new Media Source.
- Add the Python script to OBS:
- Tools → Scripts
- Click "+," and select
orly.py
. - If OBS loaded the plugin correctly, new options should appear on the right.
- Use the first six options to select the six sources you created.
- Check that the "Hide All" and "Restore All" buttons work.
- Adjust the owl position and movement-distance options if you want:
- To see the current x and y coordinates of the owl, right-click on it, choose "Transform," and then "Edit Transform."
- The movement distance should be large enough that the owl goes completely off-screen when hidden.
- Set up hotkeys:
- Click the "Settings" button (below "Start Streaming").
- Choose the "Hotkeys" tab.
- Assign whatever keystrokes you want to the ORLY hotkeys.
You can assign hotkeys for "ORLY +1" through "ORLY +5," which you can use to add to the ORLY counter whenever the game you're playing states something obvious. If you hit the "Negate next ORLY" hotkey followed by an addition hotkey, it will subtract that number of ORLYs instead; use this if you change your mind about an ORLY you assigned.
Make sure that the plugin is loaded, that the plugin is using the sources in the current scene, and that you are on the correct scene.
The text in the counter textbox has to be a number, or else the plugin won't do anything.
OBS doesn't play them on your system audio, but they will be audible on your stream or in your video. You can check this yourself by recording a short test video file and playing it back.
You can edit defaults.json
to change the default settings.
The owl's position and movement distance is fully customizable in the plugin settings.
The counter should have black text with a white outline when the number is in this range. However, OBS Studio uses different text-rendering backends on different operating systems, and the FreeType2 backend (used on Linux and probably macOS) doesn't support outline colors other than black. In this case, the ORLY plugin therefore uses dark gray text with no outline instead.
There are a couple of extra options in defaults.json
:
- framerate controls the framerate of the animations.
- negation-timeout controls the maximum time (in seconds) that can elapse between hitting the "Negate next ORLY" hotkey and the addition hotkey for it to count as a subtraction.
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.