C3 Automation Tools

Viewing 15 posts - 1 through 15 (of 419 total)
  • Author
    Posts
  • #390088
    Farottone
    Keymaster

      C3 Automation Tools (CAT)

      Do you ever find yourself not wanting to do reductions because they’re tedious and long? Do you skip drums animations because you don’t know what to do with them? Do you look at those blindingly polished C3 charts and lust after those perfectly trimmed sustains, spot on lyrics capitalization and superbly positioned animation markers? Well, things are about to get interesting… <img decoding=” src=”/wp-content/uploads/invision_emoticons/default_SA_smile.gif”>

      We know that some authoring operations are incredibly tedious and time consuming (boy do we know that…), and in some cases prevent authors from cranking out more songs. For this reason we started working on a project that helps both new and experienced authors with these tasks. This project can cut down authoring times by literally hours per song in areas like reductions, animations, and testing. The C3 Automation Tools (CAT) can help you do things like automatic reductions (with chord translation) for all instruments, create animations for all instruments, fix sustain durations that violate RB standards, simplify double kick hits, fix lyrics capitalization, automatically create phrase markers from lyrics, and much much more.

      Before you run off to try the program, here’s a simple FAQ for the project…

      What is it?
      It’s a collection of commands to automate a number of operations. Some of these commands work “blind” (meaning you don’t need to edit anything to achieve the desired effect), and some of them will require attention afterwards but will greatly simplify the task in question.

      Some examples of CAT functions (which can be run individually or in large “supersets”):

      • One-click reduction from sixteenth notes to eighth notes, eighth notes to quarter notes, etc. for 5-lane instruments
      • Automatic, semi-intelligent reduction of gem colors from full GRYBO (Expert/Hard) to the Rock Band specs for Medium and Easy (GRYB or GRY with occasional O and B gems)
      • One-click generation of [play]/[idle]/etc. markers for all instruments
      • Automatic fixing of sustain lengths on all difficulties as per Rock Band specifications
      • Removal of kick gems from a 2x Bass Pedal song to make a “1x Bass” song in a single click
      • Automatic addition of #, ^, or $ (talkies and lyric hiders) to selected lyrics
      • Automatically remove Magma-breaking MIDI markers from imported Internet MIDIs
      • Literally dozens more time-saving functions

      Who is it for?
      This is for any author of Rock Band custom songs, regardless of their degree of commitment to their songs.

      Stop right there! How time saving are we talking about here?
      Let’s take the Fix Sustains command: in one click everything is trimmed down to proper RBN rules length. No more stubby notes, no more overlapping sustains, etc. Drums animations: the way CAT produces those is better than autoanimations in Magma and account for triplets, two handed rolls, etc. Vocals functions like applying talkies and hiding notes to a group of notes makes these operation one click actions. The auto phrase marker creator basically is two click: one for the phrases, one for the OD. Complex harmonies clearly will take editing for overlapping phrases. Most of the commands are click-and-go. Things like reductions do need work, because reductions are complicated business, but even so the autoreductions provide a one-click solid base.

      Does it work right out of the box?
      It should. However, keep in mind that these are sophisticated scripts, Reaper programming language is easily breakable and there are countless scenarios for each author working on songs with unique features. Also, we’re still working on perfecting a number of features. For that reason, this is still in beta: we are collecting feedback to improve CAT and to make it as stable as possible (see submitting feedback a few paragraphs down.)

      How automatic and effective is it?
      All the commands do what they’re supposed to do, but it’s up to the author to use them wisely and not blanket-apply commands to cut corners. The more complex a song is (1/32nd triplets, 1/16th upbeats, syncopated betas, etc.), the more CAT will work as an aid. The less complex the song is, the more CAT will work autonomously. To be clear: do not expect CAT to perfectly do reductions for a 20+ minute Dream Theater song without touching a thing, that’s simply impossible, unfortunately. Also, it may be useful to work in reverse…

      Working in reverse?
      Some commands may actually change more than you need. That doesn’t mean they’re not the command you want: for example, if a command trims all sustains and there’s a few you don’t need trimmed, you can apply the command, have 99% of the notes done right, and then go back to fix the few instances that weren’t supposed to be changed.

      Is this for experienced coders/Reaper users only?
      You don’t need to know anything about Reaper scripting to use these commands. Some of them, like auto animation markers, auto drums animations, and the auto reduction superset, are actually perfect for people who are NOT yet very familiar with Reaper.

      How safe is it?
      All commands have been thoroughly tested, we’ve been working literally on hundreds of songs. Always check the results and always save your project before running CAT commands, especially supersets, because Reaper can sometimes crash if you have open two projects or you just closed a second tab. Also, make sure you don’t deselect a MIDI track between selecting the notes you want to change and actually launching a command. For example, if you want to fix sustains for guitar in a given section, select those notes and immediately launch the command. If you select the notes in the MIDI editor, then click on the main Reaper window and select a different track, even without opening it, the script will apply the changes to the new track instead.

      What do I need?
      Reaper 4.x
      Python (2.x) (Python 3.x will sometimes work, but all code has been tailored for 2.x)
      C3 Template: It’s essential that tracks are correctly named in Reaper (PART DRUMS, HARM1, EVENTS, etc.). Our template takes care of that. CAT will not work if you change name of the tracks.
      – An end event set in the EVENTS track in the proper place. We suggest tempo mapping the song and then immediately placing the end event. Not having an end event in the proper place will make some commands work only on notes before the last tempo change node.

      Do I need to change my authoring habits?
      No, provided that you:
      – Use our templates (See “What do I need?”)
      – Draw pro marker notes one per note and not one to cover a number of notes (for kick removal commands and animations)
      – Slightly change how you author lyrics if you want CAT to automatically generate phrase markers for you (see the manual for more info, you just need to add @ to the beginning of each phrase)

      I know how to code, may I be of help?
      You can help even if you don’t know how to code! We encourage feedback and suggestions, but with the following disclaimer. This tool tries to emulate the natural authoring process, but recreating human decisions with code is very hard. Odds are good that we have considered the thing you want to suggest, tried to implement it, and it didn’t work out, so we omitted it or went with something else. For that reason, if you see something you believe can be made better and, this is extremely important, you know enough about authoring and general automation concepts to suggest something in a meaningful way (many skilled people worked on this project, if you think “this command is dumb”, chances are you haven’t thought it through), please submit your tips.

      Who’s in charge of this project?
      Farottone worked on most of the project with the help of all admins. All technical questions about the project should be directed to him.

      WARNING!
      CAT WILL break broken chords on keys/pro keys, so please do not run the Fix sustains command on those instruments. Sorry but broken chord are impossibly hard to manage code-wise.

      USER MANUAL

      ^ READ THIS BEFORE DOING ANYTHING WITH THESE TOOLS

      FUNCTIONS REFERENCE

      ^ OPTIONAL READING

      DOWNLOAD (New from GitHub)

      If you encounter a problem with CAT, post in this thread or submit a bug report ALWAYS attaching the RPP file in the state it is when you get the error. Before posting or reporting a bug, check the following common issues:

      – Did you install Python correctly? If not, CAT will not load at all
      – Are you using Reaper 3.x and Python 2.x? If not, CAT may fail (ask in this thread about options for Reaper 4)
      – Does your project have tracks with special characters in their name? If so, CAT will fail
      – Did you use the C3 template to create your project? If not, CAT may fail
      – Does your project have a tempo map? If not, CAT may fail
      – Can you run CARV? If not, you have an issue with Reaper and/or Python, not CAT
      – Did the command window close after you launch the command? If so, the command has operated correctly, make sure you understand the advertised effect before submitting a ticket
      – Have you downloaded the latest version of CAT?
      – Does your Reaper project have a BPM marker at M1.1.00? If not, add one and try again
      – Do you have an [end] marker in the EVENTS track and is it in the correct place? If not, commands may fail or work poorly
      – Do your project folder or any of your audio tracks have special characters in it? If so, Reaper throws a tantrum, just rename those items
      – Does your exported MIDI compile in Magma? Anything breaking Magma will likely break CAT too, so if your authoring is not up to compiling standards, CAT will probably fail.

      CREDITS
      I (farottone) coded these scripts using CARV for inspiration on how to load MIDI tracks, the rest is a fight with the very lackluster ReaScript documentation and the aweful Python support that Reaper offers. Thanks A TON to pksage and Nemo. pksage cracked in like 20 minutes the text encoding that kept me busy and scratching my head for days. For that reason we can edit any text event, lyrics included. He also did all the screenshots for the docs and a number of other things: he never gets enough credit for all the backend work he does. Nemo helped me every single day when I was trying to make sense of MIDI format, tempo mapping, etc. Also, thanks espher for suggesting a good chunk of vocals commands that now make my fixing sessions a breeze.

      #416069
      espher
      Participant

        I just want to stress this is a fantastic toolkit and does a lot to reduce the tedious minutiae of authoring.

         

        It will not automate everything, but it will save you a lot of time, and fix a lot of fiddly bits.

         

        I highly recommend taking the time to read through the docs and set it up if you’re authoring anything, esp. if you’re doing x-only customs! <img decoding=” src=”/wp-content/uploads/invision_emoticons/default_SA_smile.gif”>

        #416073
        CrazyCanuck
        Participant

          Shut the Fuck Up! Seriously? I have just started the tedious task of going over my old charts to manually do what this tool will do with a click. I am going to try it on Reaper 3.78 to see what happens. If I have problems I will upgrade Reaper. You guys are making this too easy lol. Thanks.

          #416081
          Anonymous

            Cool.

             

            So I can use this for quick EMH and animation creation? Would definably speed things up a little and probably give my future customs a bit more proper EMH rather than the generic notes-deletion method…

            #416095
            Farottone
            Keymaster
              Shut the Fuck Up! Seriously? I have just started the tedious task of going over my old charts to manually do what this tool will do with a click.

               

              So I can use this for quick EMH and animation creation? Would definably speed things up a little and probably give my future customs a bit more proper EMH rather than the generic notes-deletion method…

               

              Animations are pretty much one click and go. I tested roughly 30 songs and out of those, only the ones with a swing tempo on drums needed a slight editing (because the autoanimation command uses two hand for the hi hat, instead of one). The others were pretty much correct. Obviously you will still need to touch up things like foot activated open hi hat, because the command can’t know what a B gem stands for, but drums autoanimations are, with no editing, still far better than Magma’s auto drums animations. play/idle markers should be fine, obviously if the song has mellow or intense parts you will need to edit the markers.

               

              For reductions, songs with common beats will require not a lot of editing. I’d say half of the songs I tested this on would have been at least decent even without editing, so that’s a good result. Of course, for optimal results, and for complex songs, you absolutely need to check the charts and adjust them.

              #416097

              I’d also like to add my comments that this is the best thing to happen to RB customs since the original exploit was discovered. It’s incredible.

               

              Just one thing to watch out for though, the program works best in quarter-note time signatures (e.g. 4/4). If you’re doing a custom in anything else, it won’t work as well when removing notes. As an example, the custom I’m working on at the moment is 6/8 with two downbeats, but CAT treats it as 3/4 with three downbeats. So always check your charts after using it.

               

              Hopefully this means customs that would otherwise have been X-Only start getting all difficulties <img decoding=” src=”/wp-content/uploads/invision_emoticons/default_SA_smile.gif” />

              #416101
              TrojanNemo
              Participant
                Hopefully this means customs that would otherwise have been X-Only start getting all difficulties <img decoding=” src=”/wp-content/uploads/invision_emoticons/default_SA_smile.gif” />

                 

                That’s exactly the kind of thing i’m hoping it will be.

                #416108

                I’m not a custom creator, but I have a degree in software & computer engineering. I’ve been looking at the scripts and the documentation…and I’m still pretty damn convinced that this is straight out magic. You are freaking wizards.

                #416112
                TrojanNemo
                Participant
                  You are freaking wizards.

                   

                  Correction. Wizard.

                  This is the brainchild and work of our very own, farottone. And yes, I also think he’s a wizard. Or at least, he can control time. No way a normal person could do as much as he does in our limited 24-hour days.

                  #416117
                  questionmark
                  Participant

                    This is amazing. I still haven’t dived in to attempting customs myself (other than a couple of frustrating hours trying to get plugins to work on my mac) but it’s really impressive how you guys (and farottone, in this case) keep making it more and more accessible.

                    #416123

                    Wow. This works WAY better than I ever thought it possibly could <img decoding=” src=”/wp-content/uploads/invision_emoticons/default_SA_biggrin.gif” />. The 5-lane keys reductions it did were 95% accurate to the way they should be authored (and that other 5 percent was really easy to fix up). Incredible. You just saved me and everyone else here countless hours of precious authoring time!

                     

                    And questionmark, if you want to get it working on your Mac you’ll have to use function mode. I use a Mac too, and unfortunately any script that uses a GUI is broken.

                    #416125
                    Farottone
                    Keymaster

                      And yes, I also think he’s a wizard.

                       

                      That’s not what you told me when I harassed you about tempo markers in MIDI files! <img decoding=” src=”/wp-content/uploads/invision_emoticons/default_SA_biggrin.gif”>

                      #416127
                      questionmark
                      Participant

                        And questionmark, if you want to get it working on your Mac you’ll have to use function mode. I use a Mac too, and unfortunately any script that uses a GUI is broken.

                         

                        Thanks for the info. I’ll give that a shot next time I get the chance.

                        #416129
                        pksage
                        Keymaster

                          This really was all farottone; our contributions were very minor. He labored on these scripts for weeks.

                           

                          I just authored drums for a song with a fairly simple rock beat (kicks on all quarter notes, snare on 2 and 4, the occasional fill, etc.) and the entire process — EMHX, drum fills, and animations — took 25 minutes thanks to CAT. I timed it. Hard -> Medium was just about one click, and animations were one click. The only thing I had to change was a single open hi-hat being assigned to ride, which no script could ever detect.

                           

                          Every author should download this yesterday.

                          #416166

                          This sounds awesome. There are plenty of customs I have found here in the Other Customs Discussion area that have been expert only. Hopefully this will make it easier for me to do reductions on these customs I find and that these tools will encourage the original authors to just take the extra few minutes to chart reductions.

                        Viewing 15 posts - 1 through 15 (of 419 total)
                        • You must be logged in to reply to this topic.
                        Back to top button