Repository files navigation



Long waited update is finally here! ๐ŸŽ‰ 1.18 Port is alive! (See the user manual!)

Brief Summary

TwitchSpawn is a Minecraft mod designed for Twitch streamers using 3rd party streaming platforms!

It listens for live events related to your Twitch channel using various Socket APIs. Then it handles those events with the rules handcrafted by you!

You can say hi to us by giving our Discord Server a visit! (https://discord.gg/KNxxdvN)

Preview #1Preview #2

How to use?

Complete user manual can be found on https://igoodie.gitbook.io/twitchspawn/

Features

1. All the events!

Thanks to the power of SocketIO, the mod is now able to respond to a wide variety of events! Donations, follows, subscriptions, resubs, bits and many more events including for Youtube and Mixer as well! List of supported streaming platforms:

(See ๐Ÿ“œ TSL Events & Predicates - https://igoodie.gitbook.io/twitchspawn/twitchspawn-language/tsl-events-and-predicates)

2. Your own, readable rules!

The mod now comes with its own language to understand you: TwitchSpawn Language (TSL)! With TSL, declaring event handling rules (rule sets) is piece of cake! It is easily understandable. (E.g following sequence is a valid TSL script: DROP minecraft:diamond ON Twitch Follow)

(See ๐Ÿ“œ TSL Basics - https://igoodie.gitbook.io/twitchspawn/twitchspawn-language/tsl-basics)

# Drops 2 sticks on 0 to 20 unit donationDROPminecraft:stick2ON Donation
WITHamountINRANGE [0,20]
EITHER # Selects one random action# Either drops a diamond blockDROPdiamond_block1
OR
# Or drops an iron block named "Iron Golem Body"
DROP %iron_block{display:{Name:"\"Iron Golem Body\""}}%2
OR
# Or summons a zombie on given coordinateSUMMONminecraft:zombie ~~+10~# By displaying one common message for any action selected!ALL DISPLAYING %["Get ready for spoils of battle!"]%ON Donation
WITHamountINRANGE [21, 999]
# Executes a Minecraft command as the streamer being the source!
EXECUTE %/gamerulekeepInventorytrue%
DISPLAYING %[
{text:"${actor}", color:"red"},
{text:" turned immortality on!", color:"white"},
]%ON Donation
WITH amount >=1000# Instantly does two actions! Throws leggings and boots from the inventory!BOTH INSTANTLY
THROWleggingsANDTHROW boots
DISPLAYING %["You forgot to wear your pants!"]%ONTwitch Subscription
WITH months >=2# Drops a stick with NBT data, when a Twitch Follow is received!
DROP %minecraft:stick{display:{Name:"\"Stick of Truth!\""}}%1ONTwitch Follow

3. One server, multiple streamers!

The mod is capable of parsing more than one ruleset, which makes it possible for multiple streamers to use TwitchSpawn on the same server!

(See ๐Ÿ“„ credentials.toml - https://igoodie.gitbook.io/twitchspawn/reference/configurations/credentials.toml)

Exemplar credentials.toml:

moderatorsTwitch = [ "Redowar" ]
moderatorsMinecraft = [ "Redowar" ]
[[streamers]]
minecraftNick = "iGoodie"twitchNick = "iGoodiex"platform = "Streamlabs"token = "YOUR_SOCKET_TOKEN_HERE"
[[streamers]]
minecraftNick = "iGoodie"twitchNick = "iGoodiex"platform = "StreamElements"token = "YOUR_SOCKET_TOKEN_HERE"

4. Way better customizability

You can customize the text that is shown on an action, with an easy JSON format and well known Minecraft Text Component syntax!

(See ๐Ÿ’ฟ Minecraft JSON Text Components - https://github.com/skylinerw/guides/blob/master/java/text%20component.md)

(See ๐Ÿ“˜ Customizing Messages - https://igoodie.gitbook.io/twitchspawn/basics/customizing-messages)

Exemplar messages.title.json:

{
"donation": [
{
"text": "${actor}",
"color": "aqua"
},
{
"text": " donated you ${amount_f}${currency}",
"color": "white"
}
],
"twitch follow" : [ ... ],
"twitch subscription" : [ ... ],
...
}

5. More reliable than before!

Unlike the previous (1.12.x) versions, errors will not cause Minecraft to crash with no report. Instead it is aimed to show errors to the user as much as possible. If you're facing any sort of problem, do not hasitate giving our Discord Server a visit!

(๐Ÿ‘พ Discord Invite: https://discordapp.com/invite/KNxxdvN)

Error Display Preview

Translations

  • My Guildies: Elanor & Vaelios - German and French translations ๐ŸŽ‰
  • SE7-KN8 - German translation of test command module keys

If you would like to contribute to the translations, consider modifying languages and creating a PR!

Special Thanks

Special thanks to each one of those beautiful people:

  • Redowar - For igniting the initial idea of dropping (actually Spawn'ing :p) stuff in-game, dev-version testing and his amazing company!
  • ToastNomNomNom - For reaching me, motivating me for a whole new paradigm and helping me do the alpha testings!
  • Kรถfteistkรถfte - For his amazing OS_RUN action idea and testings!
  • AdmiralLemon - For his bug reports and helps on debugging!
  • Darkphan - For his precious Github issues and suggestions!
  • iskall85 - For reaching me and motivating me for a 1.12.x refactor/port!
  • TheGreatGildersneeze - For his amazing TwitchSpawn server and correction on a misleading documentation page!
  • JimilT92 - For his amazing insight on placeholder expressions and detailed issues!
  • BisUmTo - For his priceless bug-reports and endless effort on debugging them!
  • Diaval - For his epic memes and pair programming sessions!
  • Azelza - For his unconditional support and love to the Spawn Project!
  • Atanend, DesimieS, Katayanka, Grishnack and Taul - For their assist in alpha testing the TSL2.0 early features!
  • My Guildies: Elanor & Vaelios - For preparing German and French translations!
  • And every single person in our Discord Server for keeping us motivated on this project!

Facing an Issue?

About

๐Ÿ‘พ TwitchSpawn is a Minecraft mod, which is designed for Twitch streamers using 3rd party streaming tools! (comes with its own language!)

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content

Repository files navigation



Long waited update is finally here! ๐ŸŽ‰ 1.18 Port is alive! (See the user manual!)

Brief Summary

TwitchSpawn is a Minecraft mod designed for Twitch streamers using 3rd party streaming platforms!

It listens for live events related to your Twitch channel using various Socket APIs. Then it handles those events with the rules handcrafted by you!

You can say hi to us by giving our Discord Server a visit! (https://discord.gg/KNxxdvN)

Preview #1Preview #2

How to use?

Complete user manual can be found on https://igoodie.gitbook.io/twitchspawn/

Features

1. All the events!

Thanks to the power of SocketIO, the mod is now able to respond to a wide variety of events! Donations, follows, subscriptions, resubs, bits and many more events including for Youtube and Mixer as well! List of supported streaming platforms:

(See ๐Ÿ“œ TSL Events & Predicates - https://igoodie.gitbook.io/twitchspawn/twitchspawn-language/tsl-events-and-predicates)

2. Your own, readable rules!

The mod now comes with its own language to understand you: TwitchSpawn Language (TSL)! With TSL, declaring event handling rules (rule sets) is piece of cake! It is easily understandable. (E.g following sequence is a valid TSL script: DROP minecraft:diamond ON Twitch Follow)

(See ๐Ÿ“œ TSL Basics - https://igoodie.gitbook.io/twitchspawn/twitchspawn-language/tsl-basics)

# Drops 2 sticks on 0 to 20 unit donationDROPminecraft:stick2ON Donation
WITHamountINRANGE [0,20]
EITHER # Selects one random action# Either drops a diamond blockDROPdiamond_block1
OR
# Or drops an iron block named "Iron Golem Body"
DROP %iron_block{display:{Name:"\"Iron Golem Body\""}}%2
OR
# Or summons a zombie on given coordinateSUMMONminecraft:zombie ~~+10~# By displaying one common message for any action selected!ALL DISPLAYING %["Get ready for spoils of battle!"]%ON Donation
WITHamountINRANGE [21, 999]
# Executes a Minecraft command as the streamer being the source!
EXECUTE %/gamerulekeepInventorytrue%
DISPLAYING %[
{text:"${actor}", color:"red"},
{text:" turned immortality on!", color:"white"},
]%ON Donation
WITH amount >=1000# Instantly does two actions! Throws leggings and boots from the inventory!BOTH INSTANTLY
THROWleggingsANDTHROW boots
DISPLAYING %["You forgot to wear your pants!"]%ONTwitch Subscription
WITH months >=2# Drops a stick with NBT data, when a Twitch Follow is received!
DROP %minecraft:stick{display:{Name:"\"Stick of Truth!\""}}%1ONTwitch Follow

3. One server, multiple streamers!

The mod is capable of parsing more than one ruleset, which makes it possible for multiple streamers to use TwitchSpawn on the same server!

(See ๐Ÿ“„ credentials.toml - https://igoodie.gitbook.io/twitchspawn/reference/configurations/credentials.toml)

Exemplar credentials.toml:

moderatorsTwitch = [ "Redowar" ]
moderatorsMinecraft = [ "Redowar" ]
[[streamers]]
minecraftNick = "iGoodie"twitchNick = "iGoodiex"platform = "Streamlabs"token = "YOUR_SOCKET_TOKEN_HERE"
[[streamers]]
minecraftNick = "iGoodie"twitchNick = "iGoodiex"platform = "StreamElements"token = "YOUR_SOCKET_TOKEN_HERE"

4. Way better customizability

You can customize the text that is shown on an action, with an easy JSON format and well known Minecraft Text Component syntax!

(See ๐Ÿ’ฟ Minecraft JSON Text Components - https://github.com/skylinerw/guides/blob/master/java/text%20component.md)

(See ๐Ÿ“˜ Customizing Messages - https://igoodie.gitbook.io/twitchspawn/basics/customizing-messages)

Exemplar messages.title.json:

{
"donation": [
{
"text": "${actor}",
"color": "aqua"
},
{
"text": " donated you ${amount_f}${currency}",
"color": "white"
}
],
"twitch follow" : [ ... ],
"twitch subscription" : [ ... ],
...
}

5. More reliable than before!

Unlike the previous (1.12.x) versions, errors will not cause Minecraft to crash with no report. Instead it is aimed to show errors to the user as much as possible. If you're facing any sort of problem, do not hasitate giving our Discord Server a visit!

(๐Ÿ‘พ Discord Invite: https://discordapp.com/invite/KNxxdvN)

Error Display Preview

Translations

  • My Guildies: Elanor & Vaelios - German and French translations ๐ŸŽ‰
  • SE7-KN8 - German translation of test command module keys

If you would like to contribute to the translations, consider modifying languages and creating a PR!

Special Thanks

Special thanks to each one of those beautiful people:

  • Redowar - For igniting the initial idea of dropping (actually Spawn'ing :p) stuff in-game, dev-version testing and his amazing company!
  • ToastNomNomNom - For reaching me, motivating me for a whole new paradigm and helping me do the alpha testings!
  • Kรถfteistkรถfte - For his amazing OS_RUN action idea and testings!
  • AdmiralLemon - For his bug reports and helps on debugging!
  • Darkphan - For his precious Github issues and suggestions!
  • iskall85 - For reaching me and motivating me for a 1.12.x refactor/port!
  • TheGreatGildersneeze - For his amazing TwitchSpawn server and correction on a misleading documentation page!
  • JimilT92 - For his amazing insight on placeholder expressions and detailed issues!
  • BisUmTo - For his priceless bug-reports and endless effort on debugging them!
  • Diaval - For his epic memes and pair programming sessions!
  • Azelza - For his unconditional support and love to the Spawn Project!
  • Atanend, DesimieS, Katayanka, Grishnack and Taul - For their assist in alpha testing the TSL2.0 early features!
  • My Guildies: Elanor & Vaelios - For preparing German and French translations!
  • And every single person in our Discord Server for keeping us motivated on this project!

Facing an Issue?

About

๐Ÿ‘พ TwitchSpawn is a Minecraft mod, which is designed for Twitch streamers using 3rd party streaming tools! (comes with its own language!)

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation



Long waited update is finally here! ๐ŸŽ‰ 1.18 Port is alive! (See the user manual!)

Brief Summary

TwitchSpawn is a Minecraft mod designed for Twitch streamers using 3rd party streaming platforms!

It listens for live events related to your Twitch channel using various Socket APIs. Then it handles those events with the rules handcrafted by you!

You can say hi to us by giving our Discord Server a visit! (https://discord.gg/KNxxdvN)

Preview #1Preview #2

How to use?

Complete user manual can be found on https://igoodie.gitbook.io/twitchspawn/

Features

1. All the events!

Thanks to the power of SocketIO, the mod is now able to respond to a wide variety of events! Donations, follows, subscriptions, resubs, bits and many more events including for Youtube and Mixer as well! List of supported streaming platforms:

(See ๐Ÿ“œ TSL Events & Predicates - https://igoodie.gitbook.io/twitchspawn/twitchspawn-language/tsl-events-and-predicates)

2. Your own, readable rules!

The mod now comes with its own language to understand you: TwitchSpawn Language (TSL)! With TSL, declaring event handling rules (rule sets) is piece of cake! It is easily understandable. (E.g following sequence is a valid TSL script: DROP minecraft:diamond ON Twitch Follow)

(See ๐Ÿ“œ TSL Basics - https://igoodie.gitbook.io/twitchspawn/twitchspawn-language/tsl-basics)

# Drops 2 sticks on 0 to 20 unit donationDROPminecraft:stick2ON Donation
WITHamountINRANGE [0,20]
EITHER # Selects one random action# Either drops a diamond blockDROPdiamond_block1
OR
# Or drops an iron block named "Iron Golem Body"
DROP %iron_block{display:{Name:"\"Iron Golem Body\""}}%2
OR
# Or summons a zombie on given coordinateSUMMONminecraft:zombie ~~+10~# By displaying one common message for any action selected!ALL DISPLAYING %["Get ready for spoils of battle!"]%ON Donation
WITHamountINRANGE [21, 999]
# Executes a Minecraft command as the streamer being the source!
EXECUTE %/gamerulekeepInventorytrue%
DISPLAYING %[
{text:"${actor}", color:"red"},
{text:" turned immortality on!", color:"white"},
]%ON Donation
WITH amount >=1000# Instantly does two actions! Throws leggings and boots from the inventory!BOTH INSTANTLY
THROWleggingsANDTHROW boots
DISPLAYING %["You forgot to wear your pants!"]%ONTwitch Subscription
WITH months >=2# Drops a stick with NBT data, when a Twitch Follow is received!
DROP %minecraft:stick{display:{Name:"\"Stick of Truth!\""}}%1ONTwitch Follow

3. One server, multiple streamers!

The mod is capable of parsing more than one ruleset, which makes it possible for multiple streamers to use TwitchSpawn on the same server!

(See ๐Ÿ“„ credentials.toml - https://igoodie.gitbook.io/twitchspawn/reference/configurations/credentials.toml)

Exemplar credentials.toml:

moderatorsTwitch = [ "Redowar" ]
moderatorsMinecraft = [ "Redowar" ]
[[streamers]]
minecraftNick = "iGoodie"twitchNick = "iGoodiex"platform = "Streamlabs"token = "YOUR_SOCKET_TOKEN_HERE"
[[streamers]]
minecraftNick = "iGoodie"twitchNick = "iGoodiex"platform = "StreamElements"token = "YOUR_SOCKET_TOKEN_HERE"

4. Way better customizability

You can customize the text that is shown on an action, with an easy JSON format and well known Minecraft Text Component syntax!

(See ๐Ÿ’ฟ Minecraft JSON Text Components - https://github.com/skylinerw/guides/blob/master/java/text%20component.md)

(See ๐Ÿ“˜ Customizing Messages - https://igoodie.gitbook.io/twitchspawn/basics/customizing-messages)

Exemplar messages.title.json:

{
"donation": [
{
"text": "${actor}",
"color": "aqua"
},
{
"text": " donated you ${amount_f}${currency}",
"color": "white"
}
],
"twitch follow" : [ ... ],
"twitch subscription" : [ ... ],
...
}

5. More reliable than before!

Unlike the previous (1.12.x) versions, errors will not cause Minecraft to crash with no report. Instead it is aimed to show errors to the user as much as possible. If you're facing any sort of problem, do not hasitate giving our Discord Server a visit!

(๐Ÿ‘พ Discord Invite: https://discordapp.com/invite/KNxxdvN)

Error Display Preview

Translations

  • My Guildies: Elanor & Vaelios - German and French translations ๐ŸŽ‰
  • SE7-KN8 - German translation of test command module keys

If you would like to contribute to the translations, consider modifying languages and creating a PR!

Special Thanks

Special thanks to each one of those beautiful people:

  • Redowar - For igniting the initial idea of dropping (actually Spawn'ing :p) stuff in-game, dev-version testing and his amazing company!
  • ToastNomNomNom - For reaching me, motivating me for a whole new paradigm and helping me do the alpha testings!
  • Kรถfteistkรถfte - For his amazing OS_RUN action idea and testings!
  • AdmiralLemon - For his bug reports and helps on debugging!
  • Darkphan - For his precious Github issues and suggestions!
  • iskall85 - For reaching me and motivating me for a 1.12.x refactor/port!
  • TheGreatGildersneeze - For his amazing TwitchSpawn server and correction on a misleading documentation page!
  • JimilT92 - For his amazing insight on placeholder expressions and detailed issues!
  • BisUmTo - For his priceless bug-reports and endless effort on debugging them!
  • Diaval - For his epic memes and pair programming sessions!
  • Azelza - For his unconditional support and love to the Spawn Project!
  • Atanend, DesimieS, Katayanka, Grishnack and Taul - For their assist in alpha testing the TSL2.0 early features!
  • My Guildies: Elanor & Vaelios - For preparing German and French translations!
  • And every single person in our Discord Server for keeping us motivated on this project!

Facing an Issue?

About

๐Ÿ‘พ TwitchSpawn is a Minecraft mod, which is designed for Twitch streamers using 3rd party streaming tools! (comes with its own language!)

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation



Long waited update is finally here! ๐ŸŽ‰ 1.18 Port is alive! (See the user manual!)

Brief Summary

TwitchSpawn is a Minecraft mod designed for Twitch streamers using 3rd party streaming platforms!

It listens for live events related to your Twitch channel using various Socket APIs. Then it handles those events with the rules handcrafted by you!

You can say hi to us by giving our Discord Server a visit! (https://discord.gg/KNxxdvN)

Preview #1Preview #2

How to use?

Complete user manual can be found on https://igoodie.gitbook.io/twitchspawn/

Features

1. All the events!

Thanks to the power of SocketIO, the mod is now able to respond to a wide variety of events! Donations, follows, subscriptions, resubs, bits and many more events including for Youtube and Mixer as well! List of supported streaming platforms:

(See ๐Ÿ“œ TSL Events & Predicates - https://igoodie.gitbook.io/twitchspawn/twitchspawn-language/tsl-events-and-predicates)

2. Your own, readable rules!

The mod now comes with its own language to understand you: TwitchSpawn Language (TSL)! With TSL, declaring event handling rules (rule sets) is piece of cake! It is easily understandable. (E.g following sequence is a valid TSL script: DROP minecraft:diamond ON Twitch Follow)

(See ๐Ÿ“œ TSL Basics - https://igoodie.gitbook.io/twitchspawn/twitchspawn-language/tsl-basics)

# Drops 2 sticks on 0 to 20 unit donationDROPminecraft:stick2ON Donation
WITHamountINRANGE [0,20]
EITHER # Selects one random action# Either drops a diamond blockDROPdiamond_block1
OR
# Or drops an iron block named "Iron Golem Body"
DROP %iron_block{display:{Name:"\"Iron Golem Body\""}}%2
OR
# Or summons a zombie on given coordinateSUMMONminecraft:zombie ~~+10~# By displaying one common message for any action selected!ALL DISPLAYING %["Get ready for spoils of battle!"]%ON Donation
WITHamountINRANGE [21, 999]
# Executes a Minecraft command as the streamer being the source!
EXECUTE %/gamerulekeepInventorytrue%
DISPLAYING %[
{text:"${actor}", color:"red"},
{text:" turned immortality on!", color:"white"},
]%ON Donation
WITH amount >=1000# Instantly does two actions! Throws leggings and boots from the inventory!BOTH INSTANTLY
THROWleggingsANDTHROW boots
DISPLAYING %["You forgot to wear your pants!"]%ONTwitch Subscription
WITH months >=2# Drops a stick with NBT data, when a Twitch Follow is received!
DROP %minecraft:stick{display:{Name:"\"Stick of Truth!\""}}%1ONTwitch Follow

3. One server, multiple streamers!

The mod is capable of parsing more than one ruleset, which makes it possible for multiple streamers to use TwitchSpawn on the same server!

(See ๐Ÿ“„ credentials.toml - https://igoodie.gitbook.io/twitchspawn/reference/configurations/credentials.toml)

Exemplar credentials.toml:

moderatorsTwitch = [ "Redowar" ]
moderatorsMinecraft = [ "Redowar" ]
[[streamers]]
minecraftNick = "iGoodie"twitchNick = "iGoodiex"platform = "Streamlabs"token = "YOUR_SOCKET_TOKEN_HERE"
[[streamers]]
minecraftNick = "iGoodie"twitchNick = "iGoodiex"platform = "StreamElements"token = "YOUR_SOCKET_TOKEN_HERE"

4. Way better customizability

You can customize the text that is shown on an action, with an easy JSON format and well known Minecraft Text Component syntax!

(See ๐Ÿ’ฟ Minecraft JSON Text Components - https://github.com/skylinerw/guides/blob/master/java/text%20component.md)

(See ๐Ÿ“˜ Customizing Messages - https://igoodie.gitbook.io/twitchspawn/basics/customizing-messages)

Exemplar messages.title.json:

{
"donation": [
{
"text": "${actor}",
"color": "aqua"
},
{
"text": " donated you ${amount_f}${currency}",
"color": "white"
}
],
"twitch follow" : [ ... ],
"twitch subscription" : [ ... ],
...
}

5. More reliable than before!

Unlike the previous (1.12.x) versions, errors will not cause Minecraft to crash with no report. Instead it is aimed to show errors to the user as much as possible. If you're facing any sort of problem, do not hasitate giving our Discord Server a visit!

(๐Ÿ‘พ Discord Invite: https://discordapp.com/invite/KNxxdvN)

Error Display Preview

Translations

  • My Guildies: Elanor & Vaelios - German and French translations ๐ŸŽ‰
  • SE7-KN8 - German translation of test command module keys

If you would like to contribute to the translations, consider modifying languages and creating a PR!

Special Thanks

Special thanks to each one of those beautiful people:

  • Redowar - For igniting the initial idea of dropping (actually Spawn'ing :p) stuff in-game, dev-version testing and his amazing company!
  • ToastNomNomNom - For reaching me, motivating me for a whole new paradigm and helping me do the alpha testings!
  • Kรถfteistkรถfte - For his amazing OS_RUN action idea and testings!
  • AdmiralLemon - For his bug reports and helps on debugging!
  • Darkphan - For his precious Github issues and suggestions!
  • iskall85 - For reaching me and motivating me for a 1.12.x refactor/port!
  • TheGreatGildersneeze - For his amazing TwitchSpawn server and correction on a misleading documentation page!
  • JimilT92 - For his amazing insight on placeholder expressions and detailed issues!
  • BisUmTo - For his priceless bug-reports and endless effort on debugging them!
  • Diaval - For his epic memes and pair programming sessions!
  • Azelza - For his unconditional support and love to the Spawn Project!
  • Atanend, DesimieS, Katayanka, Grishnack and Taul - For their assist in alpha testing the TSL2.0 early features!
  • My Guildies: Elanor & Vaelios - For preparing German and French translations!
  • And every single person in our Discord Server for keeping us motivated on this project!

Facing an Issue?

About

๐Ÿ‘พ TwitchSpawn is a Minecraft mod, which is designed for Twitch streamers using 3rd party streaming tools! (comes with its own language!)

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

Repository files navigation



Long waited update is finally here! ๐ŸŽ‰ 1.18 Port is alive! (See the user manual!)

Brief Summary

TwitchSpawn is a Minecraft mod designed for Twitch streamers using 3rd party streaming platforms!

It listens for live events related to your Twitch channel using various Socket APIs. Then it handles those events with the rules handcrafted by you!

You can say hi to us by giving our Discord Server a visit! (https://discord.gg/KNxxdvN)

Preview #1Preview #2

How to use?

Complete user manual can be found on https://igoodie.gitbook.io/twitchspawn/

Features

1. All the events!

Thanks to the power of SocketIO, the mod is now able to respond to a wide variety of events! Donations, follows, subscriptions, resubs, bits and many more events including for Youtube and Mixer as well! List of supported streaming platforms:

(See ๐Ÿ“œ TSL Events & Predicates - https://igoodie.gitbook.io/twitchspawn/twitchspawn-language/tsl-events-and-predicates)

2. Your own, readable rules!

The mod now comes with its own language to understand you: TwitchSpawn Language (TSL)! With TSL, declaring event handling rules (rule sets) is piece of cake! It is easily understandable. (E.g following sequence is a valid TSL script: DROP minecraft:diamond ON Twitch Follow)

(See ๐Ÿ“œ TSL Basics - https://igoodie.gitbook.io/twitchspawn/twitchspawn-language/tsl-basics)

# Drops 2 sticks on 0 to 20 unit donationDROPminecraft:stick2ON Donation
WITHamountINRANGE [0,20]
EITHER # Selects one random action# Either drops a diamond blockDROPdiamond_block1
OR
# Or drops an iron block named "Iron Golem Body"
DROP %iron_block{display:{Name:"\"Iron Golem Body\""}}%2
OR
# Or summons a zombie on given coordinateSUMMONminecraft:zombie ~~+10~# By displaying one common message for any action selected!ALL DISPLAYING %["Get ready for spoils of battle!"]%ON Donation
WITHamountINRANGE [21, 999]
# Executes a Minecraft command as the streamer being the source!
EXECUTE %/gamerulekeepInventorytrue%
DISPLAYING %[
{text:"${actor}", color:"red"},
{text:" turned immortality on!", color:"white"},
]%ON Donation
WITH amount >=1000# Instantly does two actions! Throws leggings and boots from the inventory!BOTH INSTANTLY
THROWleggingsANDTHROW boots
DISPLAYING %["You forgot to wear your pants!"]%ONTwitch Subscription
WITH months >=2# Drops a stick with NBT data, when a Twitch Follow is received!
DROP %minecraft:stick{display:{Name:"\"Stick of Truth!\""}}%1ONTwitch Follow

3. One server, multiple streamers!

The mod is capable of parsing more than one ruleset, which makes it possible for multiple streamers to use TwitchSpawn on the same server!

(See ๐Ÿ“„ credentials.toml - https://igoodie.gitbook.io/twitchspawn/reference/configurations/credentials.toml)

Exemplar credentials.toml:

moderatorsTwitch = [ "Redowar" ]
moderatorsMinecraft = [ "Redowar" ]
[[streamers]]
minecraftNick = "iGoodie"twitchNick = "iGoodiex"platform = "Streamlabs"token = "YOUR_SOCKET_TOKEN_HERE"
[[streamers]]
minecraftNick = "iGoodie"twitchNick = "iGoodiex"platform = "StreamElements"token = "YOUR_SOCKET_TOKEN_HERE"

4. Way better customizability

You can customize the text that is shown on an action, with an easy JSON format and well known Minecraft Text Component syntax!

(See ๐Ÿ’ฟ Minecraft JSON Text Components - https://github.com/skylinerw/guides/blob/master/java/text%20component.md)

(See ๐Ÿ“˜ Customizing Messages - https://igoodie.gitbook.io/twitchspawn/basics/customizing-messages)

Exemplar messages.title.json:

{
"donation": [
{
"text": "${actor}",
"color": "aqua"
},
{
"text": " donated you ${amount_f}${currency}",
"color": "white"
}
],
"twitch follow" : [ ... ],
"twitch subscription" : [ ... ],
...
}

5. More reliable than before!

Unlike the previous (1.12.x) versions, errors will not cause Minecraft to crash with no report. Instead it is aimed to show errors to the user as much as possible. If you're facing any sort of problem, do not hasitate giving our Discord Server a visit!

(๐Ÿ‘พ Discord Invite: https://discordapp.com/invite/KNxxdvN)

Error Display Preview

Translations

  • My Guildies: Elanor & Vaelios - German and French translations ๐ŸŽ‰
  • SE7-KN8 - German translation of test command module keys

If you would like to contribute to the translations, consider modifying languages and creating a PR!

Special Thanks

Special thanks to each one of those beautiful people:

  • Redowar - For igniting the initial idea of dropping (actually Spawn'ing :p) stuff in-game, dev-version testing and his amazing company!
  • ToastNomNomNom - For reaching me, motivating me for a whole new paradigm and helping me do the alpha testings!
  • Kรถfteistkรถfte - For his amazing OS_RUN action idea and testings!
  • AdmiralLemon - For his bug reports and helps on debugging!
  • Darkphan - For his precious Github issues and suggestions!
  • iskall85 - For reaching me and motivating me for a 1.12.x refactor/port!
  • TheGreatGildersneeze - For his amazing TwitchSpawn server and correction on a misleading documentation page!
  • JimilT92 - For his amazing insight on placeholder expressions and detailed issues!
  • BisUmTo - For his priceless bug-reports and endless effort on debugging them!
  • Diaval - For his epic memes and pair programming sessions!
  • Azelza - For his unconditional support and love to the Spawn Project!
  • Atanend, DesimieS, Katayanka, Grishnack and Taul - For their assist in alpha testing the TSL2.0 early features!
  • My Guildies: Elanor & Vaelios - For preparing German and French translations!
  • And every single person in our Discord Server for keeping us motivated on this project!

Facing an Issue?

About

๐Ÿ‘พ TwitchSpawn is a Minecraft mod, which is designed for Twitch streamers using 3rd party streaming tools! (comes with its own language!)

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation



Long waited update is finally here! ๐ŸŽ‰ 1.18 Port is alive! (See the user manual!)

Brief Summary

TwitchSpawn is a Minecraft mod designed for Twitch streamers using 3rd party streaming platforms!

It listens for live events related to your Twitch channel using various Socket APIs. Then it handles those events with the rules handcrafted by you!

You can say hi to us by giving our Discord Server a visit! (https://discord.gg/KNxxdvN)

Preview #1Preview #2

How to use?

Complete user manual can be found on https://igoodie.gitbook.io/twitchspawn/

Features

1. All the events!

Thanks to the power of SocketIO, the mod is now able to respond to a wide variety of events! Donations, follows, subscriptions, resubs, bits and many more events including for Youtube and Mixer as well! List of supported streaming platforms:

(See ๐Ÿ“œ TSL Events & Predicates - https://igoodie.gitbook.io/twitchspawn/twitchspawn-language/tsl-events-and-predicates)

2. Your own, readable rules!

The mod now comes with its own language to understand you: TwitchSpawn Language (TSL)! With TSL, declaring event handling rules (rule sets) is piece of cake! It is easily understandable. (E.g following sequence is a valid TSL script: DROP minecraft:diamond ON Twitch Follow)

(See ๐Ÿ“œ TSL Basics - https://igoodie.gitbook.io/twitchspawn/twitchspawn-language/tsl-basics)

# Drops 2 sticks on 0 to 20 unit donationDROPminecraft:stick2ON Donation
WITHamountINRANGE [0,20]
EITHER # Selects one random action# Either drops a diamond blockDROPdiamond_block1
OR
# Or drops an iron block named "Iron Golem Body"
DROP %iron_block{display:{Name:"\"Iron Golem Body\""}}%2
OR
# Or summons a zombie on given coordinateSUMMONminecraft:zombie ~~+10~# By displaying one common message for any action selected!ALL DISPLAYING %["Get ready for spoils of battle!"]%ON Donation
WITHamountINRANGE [21, 999]
# Executes a Minecraft command as the streamer being the source!
EXECUTE %/gamerulekeepInventorytrue%
DISPLAYING %[
{text:"${actor}", color:"red"},
{text:" turned immortality on!", color:"white"},
]%ON Donation
WITH amount >=1000# Instantly does two actions! Throws leggings and boots from the inventory!BOTH INSTANTLY
THROWleggingsANDTHROW boots
DISPLAYING %["You forgot to wear your pants!"]%ONTwitch Subscription
WITH months >=2# Drops a stick with NBT data, when a Twitch Follow is received!
DROP %minecraft:stick{display:{Name:"\"Stick of Truth!\""}}%1ONTwitch Follow

3. One server, multiple streamers!

The mod is capable of parsing more than one ruleset, which makes it possible for multiple streamers to use TwitchSpawn on the same server!

(See ๐Ÿ“„ credentials.toml - https://igoodie.gitbook.io/twitchspawn/reference/configurations/credentials.toml)

Exemplar credentials.toml:

moderatorsTwitch = [ "Redowar" ]
moderatorsMinecraft = [ "Redowar" ]
[[streamers]]
minecraftNick = "iGoodie"twitchNick = "iGoodiex"platform = "Streamlabs"token = "YOUR_SOCKET_TOKEN_HERE"
[[streamers]]
minecraftNick = "iGoodie"twitchNick = "iGoodiex"platform = "StreamElements"token = "YOUR_SOCKET_TOKEN_HERE"

4. Way better customizability

You can customize the text that is shown on an action, with an easy JSON format and well known Minecraft Text Component syntax!

(See ๐Ÿ’ฟ Minecraft JSON Text Components - https://github.com/skylinerw/guides/blob/master/java/text%20component.md)

(See ๐Ÿ“˜ Customizing Messages - https://igoodie.gitbook.io/twitchspawn/basics/customizing-messages)

Exemplar messages.title.json:

{
"donation": [
{
"text": "${actor}",
"color": "aqua"
},
{
"text": " donated you ${amount_f}${currency}",
"color": "white"
}
],
"twitch follow" : [ ... ],
"twitch subscription" : [ ... ],
...
}

5. More reliable than before!

Unlike the previous (1.12.x) versions, errors will not cause Minecraft to crash with no report. Instead it is aimed to show errors to the user as much as possible. If you're facing any sort of problem, do not hasitate giving our Discord Server a visit!

(๐Ÿ‘พ Discord Invite: https://discordapp.com/invite/KNxxdvN)

Error Display Preview

Translations

  • My Guildies: Elanor & Vaelios - German and French translations ๐ŸŽ‰
  • SE7-KN8 - German translation of test command module keys

If you would like to contribute to the translations, consider modifying languages and creating a PR!

Special Thanks

Special thanks to each one of those beautiful people:

  • Redowar - For igniting the initial idea of dropping (actually Spawn'ing :p) stuff in-game, dev-version testing and his amazing company!
  • ToastNomNomNom - For reaching me, motivating me for a whole new paradigm and helping me do the alpha testings!
  • Kรถfteistkรถfte - For his amazing OS_RUN action idea and testings!
  • AdmiralLemon - For his bug reports and helps on debugging!
  • Darkphan - For his precious Github issues and suggestions!
  • iskall85 - For reaching me and motivating me for a 1.12.x refactor/port!
  • TheGreatGildersneeze - For his amazing TwitchSpawn server and correction on a misleading documentation page!
  • JimilT92 - For his amazing insight on placeholder expressions and detailed issues!
  • BisUmTo - For his priceless bug-reports and endless effort on debugging them!
  • Diaval - For his epic memes and pair programming sessions!
  • Azelza - For his unconditional support and love to the Spawn Project!
  • Atanend, DesimieS, Katayanka, Grishnack and Taul - For their assist in alpha testing the TSL2.0 early features!
  • My Guildies: Elanor & Vaelios - For preparing German and French translations!
  • And every single person in our Discord Server for keeping us motivated on this project!

Facing an Issue?

About

๐Ÿ‘พ TwitchSpawn is a Minecraft mod, which is designed for Twitch streamers using 3rd party streaming tools! (comes with its own language!)

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation



Long waited update is finally here! ๐ŸŽ‰ 1.18 Port is alive! (See the user manual!)

Brief Summary

TwitchSpawn is a Minecraft mod designed for Twitch streamers using 3rd party streaming platforms!

It listens for live events related to your Twitch channel using various Socket APIs. Then it handles those events with the rules handcrafted by you!

You can say hi to us by giving our Discord Server a visit! (https://discord.gg/KNxxdvN)

Preview #1Preview #2

How to use?

Complete user manual can be found on https://igoodie.gitbook.io/twitchspawn/

Features

1. All the events!

Thanks to the power of SocketIO, the mod is now able to respond to a wide variety of events! Donations, follows, subscriptions, resubs, bits and many more events including for Youtube and Mixer as well! List of supported streaming platforms:

(See ๐Ÿ“œ TSL Events & Predicates - https://igoodie.gitbook.io/twitchspawn/twitchspawn-language/tsl-events-and-predicates)

2. Your own, readable rules!

The mod now comes with its own language to understand you: TwitchSpawn Language (TSL)! With TSL, declaring event handling rules (rule sets) is piece of cake! It is easily understandable. (E.g following sequence is a valid TSL script: DROP minecraft:diamond ON Twitch Follow)

(See ๐Ÿ“œ TSL Basics - https://igoodie.gitbook.io/twitchspawn/twitchspawn-language/tsl-basics)

# Drops 2 sticks on 0 to 20 unit donationDROPminecraft:stick2ON Donation
WITHamountINRANGE [0,20]
EITHER # Selects one random action# Either drops a diamond blockDROPdiamond_block1
OR
# Or drops an iron block named "Iron Golem Body"
DROP %iron_block{display:{Name:"\"Iron Golem Body\""}}%2
OR
# Or summons a zombie on given coordinateSUMMONminecraft:zombie ~~+10~# By displaying one common message for any action selected!ALL DISPLAYING %["Get ready for spoils of battle!"]%ON Donation
WITHamountINRANGE [21, 999]
# Executes a Minecraft command as the streamer being the source!
EXECUTE %/gamerulekeepInventorytrue%
DISPLAYING %[
{text:"${actor}", color:"red"},
{text:" turned immortality on!", color:"white"},
]%ON Donation
WITH amount >=1000# Instantly does two actions! Throws leggings and boots from the inventory!BOTH INSTANTLY
THROWleggingsANDTHROW boots
DISPLAYING %["You forgot to wear your pants!"]%ONTwitch Subscription
WITH months >=2# Drops a stick with NBT data, when a Twitch Follow is received!
DROP %minecraft:stick{display:{Name:"\"Stick of Truth!\""}}%1ONTwitch Follow

3. One server, multiple streamers!

The mod is capable of parsing more than one ruleset, which makes it possible for multiple streamers to use TwitchSpawn on the same server!

(See ๐Ÿ“„ credentials.toml - https://igoodie.gitbook.io/twitchspawn/reference/configurations/credentials.toml)

Exemplar credentials.toml:

moderatorsTwitch = [ "Redowar" ]
moderatorsMinecraft = [ "Redowar" ]
[[streamers]]
minecraftNick = "iGoodie"twitchNick = "iGoodiex"platform = "Streamlabs"token = "YOUR_SOCKET_TOKEN_HERE"
[[streamers]]
minecraftNick = "iGoodie"twitchNick = "iGoodiex"platform = "StreamElements"token = "YOUR_SOCKET_TOKEN_HERE"

4. Way better customizability

You can customize the text that is shown on an action, with an easy JSON format and well known Minecraft Text Component syntax!

(See ๐Ÿ’ฟ Minecraft JSON Text Components - https://github.com/skylinerw/guides/blob/master/java/text%20component.md)

(See ๐Ÿ“˜ Customizing Messages - https://igoodie.gitbook.io/twitchspawn/basics/customizing-messages)

Exemplar messages.title.json:

{
"donation": [
{
"text": "${actor}",
"color": "aqua"
},
{
"text": " donated you ${amount_f}${currency}",
"color": "white"
}
],
"twitch follow" : [ ... ],
"twitch subscription" : [ ... ],
...
}

5. More reliable than before!

Unlike the previous (1.12.x) versions, errors will not cause Minecraft to crash with no report. Instead it is aimed to show errors to the user as much as possible. If you're facing any sort of problem, do not hasitate giving our Discord Server a visit!

(๐Ÿ‘พ Discord Invite: https://discordapp.com/invite/KNxxdvN)

Error Display Preview

Translations

  • My Guildies: Elanor & Vaelios - German and French translations ๐ŸŽ‰
  • SE7-KN8 - German translation of test command module keys

If you would like to contribute to the translations, consider modifying languages and creating a PR!

Special Thanks

Special thanks to each one of those beautiful people:

  • Redowar - For igniting the initial idea of dropping (actually Spawn'ing :p) stuff in-game, dev-version testing and his amazing company!
  • ToastNomNomNom - For reaching me, motivating me for a whole new paradigm and helping me do the alpha testings!
  • Kรถfteistkรถfte - For his amazing OS_RUN action idea and testings!
  • AdmiralLemon - For his bug reports and helps on debugging!
  • Darkphan - For his precious Github issues and suggestions!
  • iskall85 - For reaching me and motivating me for a 1.12.x refactor/port!
  • TheGreatGildersneeze - For his amazing TwitchSpawn server and correction on a misleading documentation page!
  • JimilT92 - For his amazing insight on placeholder expressions and detailed issues!
  • BisUmTo - For his priceless bug-reports and endless effort on debugging them!
  • Diaval - For his epic memes and pair programming sessions!
  • Azelza - For his unconditional support and love to the Spawn Project!
  • Atanend, DesimieS, Katayanka, Grishnack and Taul - For their assist in alpha testing the TSL2.0 early features!
  • My Guildies: Elanor & Vaelios - For preparing German and French translations!
  • And every single person in our Discord Server for keeping us motivated on this project!

Facing an Issue?

About

๐Ÿ‘พ TwitchSpawn is a Minecraft mod, which is designed for Twitch streamers using 3rd party streaming tools! (comes with its own language!)

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

Repository files navigation



Long waited update is finally here! ๐ŸŽ‰ 1.18 Port is alive! (See the user manual!)

Brief Summary

TwitchSpawn is a Minecraft mod designed for Twitch streamers using 3rd party streaming platforms!

It listens for live events related to your Twitch channel using various Socket APIs. Then it handles those events with the rules handcrafted by you!

You can say hi to us by giving our Discord Server a visit! (https://discord.gg/KNxxdvN)

Preview #1Preview #2

How to use?

Complete user manual can be found on https://igoodie.gitbook.io/twitchspawn/

Features

1. All the events!

Thanks to the power of SocketIO, the mod is now able to respond to a wide variety of events! Donations, follows, subscriptions, resubs, bits and many more events including for Youtube and Mixer as well! List of supported streaming platforms:

(See ๐Ÿ“œ TSL Events & Predicates - https://igoodie.gitbook.io/twitchspawn/twitchspawn-language/tsl-events-and-predicates)

2. Your own, readable rules!

The mod now comes with its own language to understand you: TwitchSpawn Language (TSL)! With TSL, declaring event handling rules (rule sets) is piece of cake! It is easily understandable. (E.g following sequence is a valid TSL script: DROP minecraft:diamond ON Twitch Follow)

(See ๐Ÿ“œ TSL Basics - https://igoodie.gitbook.io/twitchspawn/twitchspawn-language/tsl-basics)

# Drops 2 sticks on 0 to 20 unit donationDROPminecraft:stick2ON Donation
WITHamountINRANGE [0,20]
EITHER # Selects one random action# Either drops a diamond blockDROPdiamond_block1
OR
# Or drops an iron block named "Iron Golem Body"
DROP %iron_block{display:{Name:"\"Iron Golem Body\""}}%2
OR
# Or summons a zombie on given coordinateSUMMONminecraft:zombie ~~+10~# By displaying one common message for any action selected!ALL DISPLAYING %["Get ready for spoils of battle!"]%ON Donation
WITHamountINRANGE [21, 999]
# Executes a Minecraft command as the streamer being the source!
EXECUTE %/gamerulekeepInventorytrue%
DISPLAYING %[
{text:"${actor}", color:"red"},
{text:" turned immortality on!", color:"white"},
]%ON Donation
WITH amount >=1000# Instantly does two actions! Throws leggings and boots from the inventory!BOTH INSTANTLY
THROWleggingsANDTHROW boots
DISPLAYING %["You forgot to wear your pants!"]%ONTwitch Subscription
WITH months >=2# Drops a stick with NBT data, when a Twitch Follow is received!
DROP %minecraft:stick{display:{Name:"\"Stick of Truth!\""}}%1ONTwitch Follow

3. One server, multiple streamers!

The mod is capable of parsing more than one ruleset, which makes it possible for multiple streamers to use TwitchSpawn on the same server!

(See ๐Ÿ“„ credentials.toml - https://igoodie.gitbook.io/twitchspawn/reference/configurations/credentials.toml)

Exemplar credentials.toml:

moderatorsTwitch = [ "Redowar" ]
moderatorsMinecraft = [ "Redowar" ]
[[streamers]]
minecraftNick = "iGoodie"twitchNick = "iGoodiex"platform = "Streamlabs"token = "YOUR_SOCKET_TOKEN_HERE"
[[streamers]]
minecraftNick = "iGoodie"twitchNick = "iGoodiex"platform = "StreamElements"token = "YOUR_SOCKET_TOKEN_HERE"

4. Way better customizability

You can customize the text that is shown on an action, with an easy JSON format and well known Minecraft Text Component syntax!

(See ๐Ÿ’ฟ Minecraft JSON Text Components - https://github.com/skylinerw/guides/blob/master/java/text%20component.md)

(See ๐Ÿ“˜ Customizing Messages - https://igoodie.gitbook.io/twitchspawn/basics/customizing-messages)

Exemplar messages.title.json:

{
"donation": [
{
"text": "${actor}",
"color": "aqua"
},
{
"text": " donated you ${amount_f}${currency}",
"color": "white"
}
],
"twitch follow" : [ ... ],
"twitch subscription" : [ ... ],
...
}

5. More reliable than before!

Unlike the previous (1.12.x) versions, errors will not cause Minecraft to crash with no report. Instead it is aimed to show errors to the user as much as possible. If you're facing any sort of problem, do not hasitate giving our Discord Server a visit!

(๐Ÿ‘พ Discord Invite: https://discordapp.com/invite/KNxxdvN)

Error Display Preview

Translations

  • My Guildies: Elanor & Vaelios - German and French translations ๐ŸŽ‰
  • SE7-KN8 - German translation of test command module keys

If you would like to contribute to the translations, consider modifying languages and creating a PR!

Special Thanks

Special thanks to each one of those beautiful people:

  • Redowar - For igniting the initial idea of dropping (actually Spawn'ing :p) stuff in-game, dev-version testing and his amazing company!
  • ToastNomNomNom - For reaching me, motivating me for a whole new paradigm and helping me do the alpha testings!
  • Kรถfteistkรถfte - For his amazing OS_RUN action idea and testings!
  • AdmiralLemon - For his bug reports and helps on debugging!
  • Darkphan - For his precious Github issues and suggestions!
  • iskall85 - For reaching me and motivating me for a 1.12.x refactor/port!
  • TheGreatGildersneeze - For his amazing TwitchSpawn server and correction on a misleading documentation page!
  • JimilT92 - For his amazing insight on placeholder expressions and detailed issues!
  • BisUmTo - For his priceless bug-reports and endless effort on debugging them!
  • Diaval - For his epic memes and pair programming sessions!
  • Azelza - For his unconditional support and love to the Spawn Project!
  • Atanend, DesimieS, Katayanka, Grishnack and Taul - For their assist in alpha testing the TSL2.0 early features!
  • My Guildies: Elanor & Vaelios - For preparing German and French translations!
  • And every single person in our Discord Server for keeping us motivated on this project!

Facing an Issue?

About

๐Ÿ‘พ TwitchSpawn is a Minecraft mod, which is designed for Twitch streamers using 3rd party streaming tools! (comes with its own language!)

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages