In case you haven't noticed, I have barely been around. You might have noticed that none of my programs have been updated in a while. I don't have the time to dedicate to this hobby anymore, and frankly I don't have the interest or drive to do so either.
It's not fair to hold the source code to these programs hostage, preventing others from potentially improving on them and benefiting the community, while at the same time not doing any improvements myself. So here you go. The source code to the programs I created either for C3, or for myself while I was heavily involved with C3.
To address some of the questions I expect, here's my imaginary Q&A: session:
Q. Why are you releasing the source codes now after keeping them close to your chest for all these years?
A. It's time to do so. I have no intention of returning to any of these programs, and if I do, it won't be any time soon. In the meantime, I hope the source code I provide will inspire others to improve on what I've created, or use it to create something entirely new.
Q. OMG, does that mean we can figure out how C3 encrypts its files? Are you crazy?
A. No, and maybe. The source code for all of these has been redacted where necessary to protect C3. There is nothing left in there regarding encryption or decryption of files, C3 passwords, etc. Sorry.
Q. What language are these programs created in?
A. All of them were created in C#, specifically using Microsoft Visual Studio 2010.
Q. What, no Github or similar online repository?
Nope, I never learned to do that and just have local copies. So here they are in a .zip file. See below, they were added to Github by Redditor TriumphantBass.
Q. What can we learn from these?
A. This is the combination of at least 6,000 man hours (probably more) I've put into these programs. You should be able to learn a few fun things. You will also learn that I am self taught, don't document my code too much, and do things in a suboptimal way because, again, self taught.
For example, the source code to these programs should help you learn:
how to create, open, parse and modify CON files. How to open, read, play back, downmix, separate, and edit MOGG files (as long as they are not encrypted). How to create art files for RB3. How to read and convert most types of HMX art files to readable formats. How to parse DTA files. How to read and edit save game file art assets. How to convert from Xbox (CON) format to Wii, PS3 and Phase Shift formats. How to read inputs from the game controllers. How to control the Stage Kit. How to read, edit and modify MIDI files. How to draw MIDI files on screen and draw game assets on screen to the beat of the music. Etc, etc, etc.
Q. Will you provide support for someone trying to use these?
A. No, unless it's something like I forgot to include a required file in the package...which I doubt.
Q. Any restrictions on the usage of these files?
1) You can not charge for the use of anything you create using my code - that includes requesting donations, or having passive donation buttons.
2) You can not distribute any of these programs with the name C3 on them - edit that out first unless you get explicit permission from C3 administration (i.e. if you make your own modified version of C3 CON Tools, you can't release it as C3 CON Tools "The Cool Version" - name it "Mikey's Cooler CON Tools" or whatever).
3) Credit me where credit is due - I try to give credit in my programs to all those whose work I relied on, the best practice would be to continue using the credits list already included and add to that. That way nobody's feelings are hurt.
If I get more (actual) questions asked that I think should be here, I'll add them above.
Without further ado, here are the links:
C3 CON Tools
Magma: C3 Roks Edition
Stage Kit Lightworks
Thanks to /u/TriumphantBass for adding these to Github!