Difference between revisions of "Rigdio"

From Rigged Wiki
Jump to navigation Jump to search
Line 15: Line 15:
To use rigDJ, download rigdj.exe from the newest release. (If you aren't on Windows, download the source and run rigdj.py. Python 3.5 is recommended, I can't guarantee it will work with older versions.)
To use rigDJ, download rigdj.exe from the newest release. (If you aren't on Windows, download the source and run rigdj.py. Python 3.5 is recommended, I can't guarantee it will work with older versions.)


== Main Window ==
== Basic Operation ==
The rigDJ main window is pictured below. For this example, we will create a .4ccm for {{team away|m}}.
The rigDJ main window is pictured below. For this example, we will create a .4ccm for {{team away|m}}.


[[Image:rigdj-mainwindow.png]]
[[Image:rigdj-mainwindow.png]]


We'll start by entering the team name (no slashes!) into the "Team" entry box. Hopefully you don't need a picture for this step.
We'll start by entering the team name (no slashes!) into the "Team" entry box.


When no .4ccm is loaded, rigDJ defaults to having three "players", representing the anthem, victory anthem, and default goalhorn. It defaults to being open to "Anthem", so we'll add our anthem first. Click "New Song" to add a song to the Anthem player, then click "Open File" in the new row to open a file dialog. Navigate to your anthem file and click "OK".
[[Image:rigdj-tutorial-1-name-and-preview.png]]
 
Notice that rigDJ has generated the skeleton of a .4ccm in the left panel; this is the '''preview window''', which shows your .4ccm file as you edit it. (However, you can't edit your .4ccm by typing into this window; it's only a preview!)
 
When no .4ccm is loaded, rigDJ defaults to having three "players", representing the anthem, victory anthem, and default goalhorn. It defaults to being open to "Anthem", so we'll add our anthem first. Click "Add Song" to add a song to the Anthem "player".
 
[[Image:rigdj-tutorial-2-new-song.png]]
 
This creates a new row in the right panel, representing that specific song. The entry is currently empty; click "Open" and navigate to the location of your anthem file.


[[Image:rigdj-songloaded.png]]
[[Image:rigdj-songloaded.png]]


/m/ has a single anthem that plays in every match, so we don't need to add any conditions to it. Now click the player name (currently "Anthem") and change player. Now add songs for Goalhorn and Victory Anthem; again, /m/ only has one of these. Do not add player-specific music under "Goalhorn"!
/m/ has a single anthem that plays in every match, so we don't need to add any conditions to it. Now click the player name (currently "Anthem") and change player. Now add songs for Goalhorn and Victory Anthem; again, /m/ only has one victory anthem, so that plays out the same way; however, they run opponent-specific versions of their default goalhorn. To set this up, we need to use conditions.
 
Now we have all the "default" players filled, you can click "Save .4ccm" (or "Save .4ccm As"; when you're working with a new file, these do the same thing) and save the file. Open it in a text editor and it should look something like


<nowiki>
== Conditions and Priorities ==
name;m
First, we go to the Goalhorn player and add all the songs we need (in this case, the ones for the [[2018 4chan Winter Cup]]).
victory;victory.mp3
goal;trombe.mp3
anthem;manthem.mp3</nowiki>


The player name lines might be in a different order, due to how the internals work. The ordering of '''the names of players''' in the file doesn't matter, as long as the <code>name;</code> line (the team name) is first.
[[image:rigdj-tutorial-4-multiple-default-goalhorns.png]]


Now, we can add the actual players. Enter the name of a player (such as "Char's Zaku II") into the box next to the player name menu, and click "Add Player". The player you entered will now be in the dropdown; select them, and load their goalhorn just like you did earlier. However, Char's Zaku II only has a goalhorn which plays on a brace or more; i.e., starting at his second goal. To make this work properly, click "New Condition"; this will open a condition editor dialog. When creating a new condition, we need to select a condition or instruction type:
Note the arrows and numbers in the box; these are the ''priorities'' of each song. The song with the lowest priority number with all its conditions met will be the song that plays; as it stands, songs have no conditions, so <code>Trombe - 404.mp3</code> (the default /m/ goalhorn) will always play. We don't want this to happen, so we need to use the arrows to move <code>Trombe - 404.mp3</code> to the bottom of the list.


* A '''comeback''' condition says to only play the horn when the team was behind prior to the goal being scored.
[[image:rigdj-tutorial-5-priority.png]]
* An '''end''' instruction specifies what to do when the song reaches the end: loop or stop.
* An '''every''' condition says to only play the horn every second/third/etc. goal scored by the player.
* A '''first''' condition says to only play the horn if it's the very first goal the team scores in the match.
* A '''goals''' condition says to only play the horn if the player's goals meet the given condition.
* A '''home''' condition says to only play the horn if the team playing is at home.
* A '''lead''' condition says to only play the horn if the team's lead meets the given condition. (Being behind is negative; setting lead to <= 0 is equivalent to using a comeback condition.)
* A '''match''' condition says to only play the horn if it is the specified kind of match (group stage, RO16, etc.).
* A '''not''' meta-condition says to only play the horn when the sub-condition says not to.
* An '''once''' condition says to only play the horn exactly once.
* An '''opponent''' condition says to only play the horn if the opponent is one of the given teams.
* A '''pause''' instruction specifies what to do when the song is paused: continue (do nothing) or restart (set back to the beginning).
* A '''start''' instruction specifies what time to start the horn at.


In this case, we need a '''goals''' condition, set to >= 2:
Now, <code>Trombe - co.mp3</code> will always play: Good for when we play {{team away|co}}, but not so good for anyone else! To tell this song to ''only'' play when facing {{team away|co}}, we need to use a '''condition'''. Click the Add Condition button; this will open a small window, known as the condition editor. First, we need to pick the type of our condition; click the dropdown.


[[Image:rigdj-condition.png]]
[[image:rigdj-tutorial-6-conditions.png]]


Click "okay" and the condition will be added to the goalhorn:
Explanation of the different condition types are listed in the Condition Types section of this page; for now, we want the song to play if we're going against a specific opponent, so we want the <code>opponent</code> condition type.


[[Image:rigdj-conditionadded.png]]
[[image:rigdj-tutorial-7-opponent-condition.png]]


Repeat this for the remaining players to get the final {{team away|m}} .4ccm file:
The opponent condition takes one argument: A comma-separated list of opponents to play the song against. For now, we just want to play this song against {{team away|co}}, so we simply enter "co" and click Okay. Repeating this for {{team away|d}} and {{team away|wsg}} gives the full Winter 2018 {{team away|m}} default goalhorn list:


<nowiki>name;m
[[image:rigdj-tutorial-8-goalhorns.png]]
Char's Zaku II;char.mp3;goals >= 2
victory;victory.mp3
Mazinger Z;mazinger.mp3;goals >= 2
goal;
Alteisen Riese;New Song
anthem;manthem.mp3
Shin Getter Robo;getter.mp3;goals >= 2</nowiki>


== Other Notes ==
== Player Specific Goalhorns ==
* The order of the player names does not matter, but the order of the songs does. The first song from the top to have all of its conditions met will play; if a player has multiple songs, you can reorder them by clicking the "+" and "-" buttons in the main window.
coming soon
* Any number of conditions and instructions can be applied to a song, but some instructions may not behave properly if multiple of the same type (for instance, two pause instructions) are present.
== Chants ==
to a tutorial page
== Event Sounds ==
near you


= Editing Raw .4ccm Files =
= Editing Raw .4ccm Files =

Revision as of 01:44, 25 February 2018

This page is out of date!
The passage of time has rendered information on this page obsolete. No information on the page should be considered referential until further notice. Please help us out by updating the information so that the article can become referential again.
Reason: This page is completely out of date. If you're looking for information on chants, see this temporary page. (Added on 2018-02-25)

rigdio is an automated goalhorn/anthem player designed to ease the burden on streamers during cup events, and increase the options available to managers. It is available for download here on github.


Contents of a Music Export

A music export for rigdio is a folder containing all of the songs, as well as a .4ccm file which tells rigdio how to use them. Music files can be any format playable by VLC.

There are two main ways to build a .4ccm file, each outlined below.

Building .4ccm Files with rigDJ

rigDJ is the GUI editor for .4ccm files, released along with rigdio. It allows graphical editing of player songs and conditions; if you intend to use more complex instructions, it is recommended you use rigDJ to avoid needing to know the .4ccm formatting for every condition type.

To use rigDJ, download rigdj.exe from the newest release. (If you aren't on Windows, download the source and run rigdj.py. Python 3.5 is recommended, I can't guarantee it will work with older versions.)

Basic Operation

The rigDJ main window is pictured below. For this example, we will create a .4ccm for M icon.png /m/.

Rigdj-mainwindow.png

We'll start by entering the team name (no slashes!) into the "Team" entry box.

Rigdj-tutorial-1-name-and-preview.png

Notice that rigDJ has generated the skeleton of a .4ccm in the left panel; this is the preview window, which shows your .4ccm file as you edit it. (However, you can't edit your .4ccm by typing into this window; it's only a preview!)

When no .4ccm is loaded, rigDJ defaults to having three "players", representing the anthem, victory anthem, and default goalhorn. It defaults to being open to "Anthem", so we'll add our anthem first. Click "Add Song" to add a song to the Anthem "player".

Rigdj-tutorial-2-new-song.png

This creates a new row in the right panel, representing that specific song. The entry is currently empty; click "Open" and navigate to the location of your anthem file.

Rigdj-songloaded.png

/m/ has a single anthem that plays in every match, so we don't need to add any conditions to it. Now click the player name (currently "Anthem") and change player. Now add songs for Goalhorn and Victory Anthem; again, /m/ only has one victory anthem, so that plays out the same way; however, they run opponent-specific versions of their default goalhorn. To set this up, we need to use conditions.

Conditions and Priorities

First, we go to the Goalhorn player and add all the songs we need (in this case, the ones for the 2018 4chan Winter Cup).

Rigdj-tutorial-4-multiple-default-goalhorns.png

Note the arrows and numbers in the box; these are the priorities of each song. The song with the lowest priority number with all its conditions met will be the song that plays; as it stands, songs have no conditions, so Trombe - 404.mp3 (the default /m/ goalhorn) will always play. We don't want this to happen, so we need to use the arrows to move Trombe - 404.mp3 to the bottom of the list.

Rigdj-tutorial-5-priority.png

Now, Trombe - co.mp3 will always play: Good for when we play Co icon.png /co/, but not so good for anyone else! To tell this song to only play when facing Co icon.png /co/, we need to use a condition. Click the Add Condition button; this will open a small window, known as the condition editor. First, we need to pick the type of our condition; click the dropdown.

Rigdj-tutorial-6-conditions.png

Explanation of the different condition types are listed in the Condition Types section of this page; for now, we want the song to play if we're going against a specific opponent, so we want the opponent condition type.

Rigdj-tutorial-7-opponent-condition.png

The opponent condition takes one argument: A comma-separated list of opponents to play the song against. For now, we just want to play this song against Co icon.png /co/, so we simply enter "co" and click Okay. Repeating this for D icon.png /d/ and Wsg icon.png /wsg/ gives the full Winter 2018 M icon.png /m/ default goalhorn list:

Rigdj-tutorial-8-goalhorns.png

Player Specific Goalhorns

coming soon

Chants

to a tutorial page

Event Sounds

near you

Editing Raw .4ccm Files

.4ccm files are just plain text files with an alternate extension, and can be edited with your text editor of choice.

As an example, the following represents O icon.png /o/ from the 2017 4chan Spring Babby Cup:

name;o
# default anthem
anthem;O - 1 - Anthem.mp3
# victory anthem
victory;O - 2 - Victory Anthem.mp3

# default goalhorn
goal;O - 3 - Main goalhorn.mp3

# player goalhorns
Takumi;O - 4 - Takumi single goalhorn.mp3;goals = 1
Takumi;O - 5 - Takumi brace+ goalhorn.mp3;goals >= 2
Twingo;O - 6 - Twingo goalhorn.mp3;goals = 1
Miata;O - 7 - Miata goalhorn.mp3
Scotty Kilmer;O - 8 - Scotty Kilmer goalhorn.mp3
[COOL VIBRATIONS];O - 9 - [COOL VIBRATIONS] goalhorn.mp3

File Layout

The file is laid out like so:

  • Empty lines and lines starting with a # are ignored.
  • The name;TEAMNAME line tells rigdio what team this file is for. If present, it must be the first line in the file; if the first lime does not provide a name, the file name will be used instead.
  • Other than the name; line, all other lines are of the form NAME;SONGFILE;CONDITIONS. There are three "special" names, which cannot be used for players:
    • Lines starting with anthem; denote anthems. Per cup rules, at least one anthem is required.
    • Lines starting with victory; denote victory anthems. If no victory anthem is provided, information from the anthem; lines will be duplicated for victory anthems.
    • Lines starting with goal; denote default goalhorns (those not associated with any particular player).
    • All other lines start with names of players, and will assign their goalhorns to a button for that specific player.
  • If multiple players share a goalhorn, separate their names with commas. (Because of this, player names cannot contain commas.)

Detailed Breakdown

Returning to the O icon.png /o/ example:

  • name;o tells us this is the export for O icon.png /o/.
  • anthem;O - 1 - Anthem.mp3 tells us that we should play O - 1 - Anthem.mp3 as an anthem.
  • victory;O - 2 - Victory Anthem.mp3 tells us that we should play O - 2 - Victory Anthem.mp3 as a victory anthem.
  • goal;O - 3 - Main goalhorn.mp3 tells us that we should play O - 3 - Main goalhorn.mp3 as a standard goalhorn.
  • The next two lines both assign goalhorns to the player Takumi, and use the goals condition to determine which one plays:
    • Takumi;O - 4 - Takumi single goalhorn.mp3;goals = 1 says that when Takumi has exactly one goal (i.e., his first goal of the match), play O - 4 - Takumi single goalhorn.mp3.
    • Takumi;O - 5 - Takumi brace+ goalhorn.mp3;goals >= 2 says that when Takumi has two or more goals, play O - 5 - Takumi brace+ goalhorn.mp3.
  • Twingo;O - 6 - Twingo goalhorn.mp3;goals = 1 also uses the goals condition. Twingo's goalhorn will play for its first goal of the match. When this condition is not met, it will default to the regular goalhorn.
  • Miata;O - 7 - Miata goalhorn.mp3 will always play O - 7 - Miata goalhorn.mp3 when Miata scores.
  • Scotty Kilmer;O - 8 - Scotty Kilmer goalhorn.mp3 will always play O - 8 - Scotty Kilmer goalhorn.mp3 when Scotty Kilmer scores.
  • [COOL VIBRATIONS];O - 9 - [COOL VIBRATIONS] goalhorn.mp3 will always play O - 9 - [COOL VIBRATIONS] goalhorn.mp3 when [COOL VIBRATIONS] scores.

Quick Export Filename Conventions

rigdio also supports "quick export" conventions, designed to make preparing an export without conditions simple. Consider the following (Gsg icon.png /gsg/ from /vg/ League 8):

name;gsg
anthem
victory;gsg - Anthem.mp3
goal
Kojak
Mosley
Syndicalism

The lack of song names on lines tells the program to look for a specific filename:

  • TEAMNAME - Anthem.mp3 for anthems.
  • TEAMNAME - Victory Anthem.mp3 for victory anthems.
  • TEAMNAME - Goalhorn.mp3 for goalhorns.
  • TEAMNAME - PLAYERNAME Goalhorn.mp3 for anything other than a reserved name.

The Gsg icon.png /gsg/ file is thus equivalent to.

name;gsg
anthem;gsg - Anthem.mp3
victory;gsg - Anthem.mp3
goal;gsg - Goalhorn.mp3
Kojak;gsg - Kojak Goalhorn.mp3
Mosley;gsg - Mosley Goalhorn.mp3
Syndicalism;gsg - Syndicalism Goalhorn.mp3

Note that quick exports can only be used on lines which have no conditions.

Bug Reports and Feature Requests

To report a bug, either open an issue on GitHub, or contact Archie on the /aesco/ Discord. Bugs will be patched out as soon as possible.

If you have an idea for a new feature, or a way that would make the program run smoother, I suggest opening a GitHub issue, otherwise Archie might forget it.