Skip to content

Commit

Permalink
Merge branch 'release/1.0.0'
Browse files Browse the repository at this point in the history
  • Loading branch information
adrian-miasik committed Apr 11, 2022
2 parents cf1e456 + 58d360b commit 9bf4638
Show file tree
Hide file tree
Showing 256 changed files with 565,616 additions and 181 deletions.
12 changes: 12 additions & 0 deletions .github/FUNDING.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# These are supported funding model platforms

github: adrian-miasik # Replace with up to 4 GitHub Sponsors-enabled usernames e.g., [user1, user2]
patreon: # Replace with a single Patreon username
open_collective: # Replace with a single Open Collective username
ko_fi: # Replace with a single Ko-fi username
tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel
community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry
liberapay: # Replace with a single Liberapay username
issuehunt: # Replace with a single IssueHunt username
otechie: # Replace with a single Otechie username
custom: # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2']
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
StreamDeckPluginsDota2/bin
StreamDeckPluginsDota2/obj
.idea
153 changes: 153 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,153 @@
<h1 align="center">Stream Deck Plugins - Dota 2</h1>
<p align="center">A suite of Stream Deck plugins created for Valve's MOBA: Dota 2 ⚔️</p>
<p align="center">
<img src="StreamDeckPluginsDota2/images/[email protected]">
</p>

# Actions
<h2 align="center">Roshan Timer</h2>
<p align="center">
<img src="StreamDeckPluginsDota2/images/roshan-timer/[email protected]" width="128">
</p>
<p align="center">Keep track of Roshan's respawn time and item drops.</p>

<h2 align="center">Show Top Rune</h2>
<p align="center">
<img src="StreamDeckPluginsDota2/images/show-top-rune/[email protected]" width="128">
</p>
<p align="center">Quickly position the in-game camera to the top rune.</p>

<h2 align="center">Show Bot Rune</h2>
<p align="center">
<img src="StreamDeckPluginsDota2/images/show-bot-rune/[email protected]" width="128">
</p>
<p align="center">Quickly position the in-game camera to the bottom rune.</p>

# Installation
1. Install `com.adrian-miasik.sdpdota2.streamDeckPlugin` to your Stream Deck.
- Make sure to have the Elgato Stream Deck software installed.
- Simple double-clicking this file on Windows will prompt an install.
2. Add the following commands to your Dota 2 launch options:
- `-gamestateintegration +exec stream_deck_plugins_dota_2.cfg`

**Important:** Make sure you have nothing currently bound to F13, F14, and F15. If you do, please edit the `stream_deck_plugins_dota_2.cfg` to use unassigned keys.

# Launch Options Explained
- The `-gamestateintegration` line is required to enable this plugin to read the contents of the Dota game state as of [2022 March 11th.](https://dota2.fandom.com/wiki/March_11,_2022_Patch)
- The `+exec stream_deck_plugins_dota_2.cfg` line is required to bind our cameras actions to certain function keys. Please ensure you have no keybindings on F13, F14, and F15.

# Actions Explained
<h2 align="center">Roshan Timer</h2>
<p align="center">
<img src="StreamDeckPluginsDota2/images/roshan-timer/[email protected]" width="128">
</p>
<p align="center"> Keep track of Roshan's respawn time and item drops.</p>

### How to Use
| Action | Result |
|--------------|-------------------------------------------------------------|
| Single Press | Start / Pause / Resume timer |
| Long Press | Restart timer |
| Double Press | Increase Roshan death count (Do this everytime Roshan dies) |

### Timer States
<img src="StreamDeckPluginsDota2/design/roshan-timer-table.png" width="720px">

#### Default
> - Timer has not been started. **Press on Roshan's first death to begin the timer.**
<img src="StreamDeckPluginsDota2/images/roshan-timer/pluginAction.png" width="64">

---

#### Dead
> - **Dead** when the timer is less than 8 minutes.
<img src="StreamDeckPluginsDota2/images/roshan-timer/states/dead0.png" width="64">

- First Death
- Roshan has previously dropped: `Aegis of the Immortal`
<br>

<img src="StreamDeckPluginsDota2/images/roshan-timer/states/dead1.png" width="64">

- Second Death
- Roshan has previously dropped: `Aegis of the Immortal` + `Aghanims Shard`
<br>

<img src="StreamDeckPluginsDota2/images/roshan-timer/states/dead2.png" width="64">

- Third Death
- Roshan has previously dropped: `Aegis of the Immortal` + `Cheese` + (`Refresher Shard` OR `Aghanims Blessing`)
<br>

<img src="StreamDeckPluginsDota2/images/roshan-timer/states/dead3.png" width="64">

- Fourth Death
- Roshan has previously dropped: `Aegis of the Immortal` + `Cheese` + `Aghanims Blessing` + `Refresher Shard`

---

#### Maybe & Alive
> - **Maybe** when the timer is between 8-11 minutes.
> - **Alive** when the timer is 11 minutes or more.
<img src="StreamDeckPluginsDota2/images/roshan-timer/states/maybe0.png" width="64">
<img src="StreamDeckPluginsDota2/images/roshan-timer/states/alive0.png" width="64">

- First Death
- Roshan is going to drop: `Aegis of the Immortal` + `Aghanims Shard`
<br>

<img src="StreamDeckPluginsDota2/images/roshan-timer/states/maybe1.png" width="64">
<img src="StreamDeckPluginsDota2/images/roshan-timer/states/alive1.png" width="64">

- Second Death
- Roshan is going to drop: `Aegis of the Immortal` + `Cheese` + (`Refresher Shard` OR `Aghanims Blessing`)
<br>

<img src="StreamDeckPluginsDota2/images/roshan-timer/states/maybe2.png" width="64">
<img src="StreamDeckPluginsDota2/images/roshan-timer/states/alive2.png" width="64">

- Third Death
- Roshan is going to drop: `Aegis of the Immortal` + `Cheese` + `Aghanims Blessing` + `Refresher Shard`
<br>

<img src="StreamDeckPluginsDota2/images/roshan-timer/states/maybe3.png" width="64">
<img src="StreamDeckPluginsDota2/images/roshan-timer/states/alive3.png" width="64">

- Fourth Death
- Roshan is going to drop: `Aegis of the Immortal` + `Cheese` + `Aghanims Blessing` + `Refresher Shard`

# Downloads
**IMPORTANT NOTE: Links coming soon!**
- Elgato Plugin Store (Recommended)
- [Direct Download](StreamDeckPluginsDota2/distribute/com.adrian-miasik.sdpdota2.streamDeckPlugin)

# Author Notes
- If you're looking to build this yourself, make sure to download [.NET Framework 4.7.2 Developer Pack](https://dotnet.microsoft.com/en-us/download/dotnet-framework/net472) and make sure to restore/update your NuGet packages as necessary.
- Distribution Pipeline:
1. Build
2. Navigate to the distribute folder
3. Run the appropriate `.bat` script (Debug / Release). This will take our built solution and package the files using Elgato's Distribution Tool to create a plugin file. The output will create a `.streamDeckPlugin` file in the same directory.

If you have any questions, feel free to reach out. :)

# Contact Us / Support Line
- For inquires related to this specific plugin / repository: `[email protected]`
- For inquries related to any of my stream deck plugins: `[email protected]`

# Third Party
- Created with BarRaider's [streamdeck-tools](https://github.com/BarRaider/streamdeck-tools) SDK 👍

# Legal
Copyrights and trademarks are the property of their respective owners.
- Adrian Miasik (Logo)
- Dota 2 (Logo)
- Roshan Spell Block (Skill Art)
- Aegis of the Immortal (Item Art)
- Cheese (Item Art)
- Aghanim's Shard (Item Art)
- Aghanim's Blessing (Item Art)
- Refresher Shard (Item Art)
- Water Rune (Gameplay Update Art)
14 changes: 0 additions & 14 deletions StreamDeckPluginsDota2/!!README!!.txt

This file was deleted.

14 changes: 13 additions & 1 deletion StreamDeckPluginsDota2/App.config
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,19 @@
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="CommandLine" publicKeyToken="5a870481e358d379" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-2.6.0.0" newVersion="2.6.0.0" />
<bindingRedirect oldVersion="0.0.0.0-2.9.0.0" newVersion="2.9.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-13.0.0.0" newVersion="13.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="NLog" publicKeyToken="5120e14c03d0593c" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-5.0.0.0" newVersion="5.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Drawing.Common" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-7.0.0.0" newVersion="7.0.0.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
Expand Down
Binary file removed StreamDeckPluginsDota2/Images/categoryIcon.png
Binary file not shown.
Binary file removed StreamDeckPluginsDota2/Images/[email protected]
Binary file not shown.
Binary file removed StreamDeckPluginsDota2/Images/icon.png
Binary file not shown.
Binary file removed StreamDeckPluginsDota2/Images/[email protected]
Binary file not shown.
Binary file removed StreamDeckPluginsDota2/Images/pluginAction.png
Binary file not shown.
Binary file removed StreamDeckPluginsDota2/Images/[email protected]
Binary file not shown.
Binary file removed StreamDeckPluginsDota2/Images/pluginIcon.png
Binary file not shown.
Binary file removed StreamDeckPluginsDota2/Images/[email protected]
Binary file not shown.
83 changes: 0 additions & 83 deletions StreamDeckPluginsDota2/PluginAction.cs

This file was deleted.

Loading

0 comments on commit 9bf4638

Please sign in to comment.