I give you an explanation of how the launcher works.
When you start the launcher it checks the "<launchfolder>/versions/" folder, and it looks at all the folder names in this directory.
Say it finds these folders (1.8-LiteLoader, 1.8, mycat, 1.5.2) it will then check inside of these folders, and look to see if that folder contains anyway files.
The most important file is the .json file, which needs to follow a strict naming convention, it needs to use the same filename as the folder it is in. So the folder "1.8-LiteLoader" needs to have within it, a file called "1.8-LiteLoader.json" . If that is found then the launcher adds that mcversion to the dropdown menu. (At least I think, it might just add the the mcversion just based on the folder name
I forget now, you get errors when pressing the [Launch[ button if its got nothing to read
)
Now its not a complete check for errors, because inside the file "1.8-LiteLoader.json" if you open it with say notepad++ you will see the lines
{
"id": "1.8-LiteLoader",
"time": "2014-05-14T18:29:23+01:00",
"releaseTime": "2014-05-14T18:29:23+01:00",
"type": "release",
At the top you see "id": "1.8-LiteLoader", once again "1.8-LiteLoader" corresponds to the same foldername and the filename of the .json file.
When you are making your own custom mcversions, you need to be aware of all this (probably a few other things but this is the main thing), so that you can change all the file/foldernames appropriately.
If you don't, which you probably weren't aware of the <mcversion>.json file needs to be edited aswel, otherwise you will have the launcher recreating the "gamedir" (the official launcher by default doesn't separate each mc version into using its own game dir, this is something I enforce through my launcher to make it better at being more portable and for modpack versions) which is going to be "id" name found in the json file.. ie "1.8-LiteLoader"... like so "<launchfolder>/1.8-LiteLoader" (this is the folder minecraft looks to for all your custom mods, resources, config files etc)
So to summarize when making a new custom mcversion rename all of these:
"<launchfolder>/versions/<mcversion>/"
"<launchfolder>/versions/<mcversion>/"<mcversion>.jar"
"<launchfolder>/versions/<mcversion>/"<mcversion>.json"
edit this file: "<launchfolder>/versions/<mcversion>/"<mcversion>.json"
and replace the "id": "<mcversion>",
where <mcversion> is the name you want to see in the mcversion dropdown menu, it can be as simple as "a" or "Best1.8modpackeEver" etc..
I hope that helps..
To get Shadersmod working, the best way is to grab the latest file for your mcversion
http://www.minecraftforum.net/forums/mapping-and-modding/minecraft-mods/1286604-shaders-mod-updated-by-karyonix or currently its:
http://www.karyonix.net/shadersmod/files/ShadersMod-v2.4.11mc1.8.jar (download it and make sure it is in the <launchfolder>)
Then drag and drop that file onto the launcher (this is a feature I added while back) it will attempt to run the .jar file based on whatever java settings you have in the launcher (it actually creates a .bat file under the same name as the .jar so that you can run it again without the launcher dragdrop thing ie "ShadersMod-v2.4.11mc1.8.bat" should be in the <launchfolder>, you could open it with notepad to see the cmd lines it adds), if you are using portable java in the launcher, it will run the .jar file using that.
This is useful if you don't bother installing java onto your pc (or can't
), because otherwise running jar files isn't as easy. Anyway when you drag and drop that .jar file it will run it. This should install the shadersmod including the library files, and its own custom mcversion. Restart the launcher (I have yet to add a way to have the launcher just refresh the /versions/ check) When you restart the lancher you will see that it should add a new mcversion with the shadersmod you installed.
Now here is the bit you will need to copy into the .json of your own optifine mc version
{
"id": "1.8-LiteLoader",
"time": "2014-05-14T18:29:23+01:00",
"releaseTime": "2014-05-14T18:29:23+01:00",
"type": "release",
"minecraftArguments": "--username ${auth_player_name} --version ${version_name} --gameDir ${game_directory} --assetsDir ${assets_root} --assetIndex ${assets_index_name} --uuid ${auth_uuid} --accessToken ${auth_access_token} --userProperties ${user_properties} --userType ${user_type} --tweakClass com.mumfrey.liteloader.launch.LiteLoaderTweaker --tweakClass shadersmod.launch.SMCTweaker",
"libraries": [
{
"name": "shadersmodcore:ShadersModCore:2.4.11mc1.8"
},
{
"name": "com.mumfrey:liteloader:1.8",
"url": "http://dl.liteloader.com/versions/"
},
I've colored in green the lines you need to edit into your own <mcversion>.json file.
Once you have done that when launching your own mc version it should load the shadersmod, so long as there isn't any other plugin conflicts (some optifine versions have been known not to work with shaders and likewise etc)... there are also a few different ways of installing the shaders mod, but its sometimes easier to do it by just installing it properly, putting the extracted file into the "<launchfolder>/<mcversion>/mods/" is the other way.. if you put a mod into a subdirectory that is in the 'mods' folder it won't be read, thus it won't work, just a quick way to move mods out the way that you don't want launching without having to rename them really.
Hope that helps its not easy to explain all this, if someone wants to make a tutorial videos on doing some of this stuff including just a basic, how to on installing/setting up the portable launcher or the setup.exe one, including going through downloading a modpack or installing portable java via the launcher, it would be a huge help.. far quicker for some one to watch a video and see it working