lotrointerface.com
Search Downloads


Go Back   LoTROInterface > LotRO Stand-Alone Plugins > RolePlay & Music

Category: RolePlay & MusicOrchestrator
Interface Information
Download
How do I install this? (FAQ)
Name: Orchestrator   Popular!
Author:
Date: 04-16-2017 02:18 AM
Size: 1.45 MB
Version: 0.10
Rate File:  out of 5 with 0 votes  
Pictures
Click to enlarge 

Views: 0
Size: 16.62 Kb
Dimensions: 626 x 626
 
Description
Description :
Orchestrator is an application giving the possibility for one player in Lord of the Ring Online™ MMORPG to set up and play his/her own orchestra.

Licensing :
None, you can do whatever you want with this soft except for following listed APIs Orchestrator is using (Sendkey and JNAtive Hook) which are copyrighted, please refer to their respective documentation to know more.

Source :
Included in archive

Credits to :
ChiranBB, for creating maintening and making available songbookbb, an important tool used by Orchestrator and most of lotro musicians.
Original songbook available there :
http://www.lotrointerface.com/downloads/info380-Songbook.html

Lotro devs, for providing us a game with awesome community tools

And following libraries devs, for making freely available these API's :

JNativeHook library is used in this program
It is licensed under GNU General Public License v3.0 :
For more informations check on :
https://github.com/kwhat/jnativehook

Sendkeys library is used is this program :
Original Sources at :
https://www.codeproject.com/Articles/6819/SendKeys-in-C
--------------------------------------------------------------------------
Copyright (c) 2004 lallous <[email protected]>
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.

THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
SUCH DAMAGE.

The Original SendKeys copyright info

SendKeys (sndkeys32.pas) routine for 32-bit Delphi.
Written by Ken Henderson
Copyright (c) 1995 Ken Henderson <[email protected]>
--------------------------------------------------------------------------

Last time up to date : 2017-16-04

Features

Here is what Orchestrato can do for you :
- Orchestrator can launch and login multiples Lord Of The Ring Online™ clients.
- can send /music /play sync /follow /raid invite /raid create commands to running LOTR clients on a single computer.
- can send a command in game that trigger a custom plugin to retreive the instrument currently equipped on a character.
- can read .abc and .txt music files and retreive instrument needed to play each track
- It can build the good command knowing equipped instruments on each players and needed instruments to play a music
- Orchestrator supports french, german and english clients instruments localizations

Orchestrator is not a bot and wont play the game for you, it's a time saver because without it you would have to :
- manually select in songbook the music and the good track for each character before syncing
- manually target and select follow in game for each character to move the orchestra away
- manually select the /music button in songbook
- manually launch and login each character you want to play with
- manually invite all you characters into the same raid

Also, i wont look forward into devellopping features that can give a serious advantage
in PvP or PvE in Lord Of The Ring Online™, not only because i want to keep my account,
but also because i dont like cheat in multiplayers games
Orchestrator is a music tool, and will remain a music tool.

Here is a video where i show features and how to use it :
Installation :
https://www.youtube.com/watch?v=A1TN8SjkaeU
How to use it :
https://www.youtube.com/watch?v=GvpQn9ORDQo

--------------------------------------------------------------------------
Requirements


Orchestrator wont run on 32 bits systems, get a 64 bits system.

Java 8 64 bits :
The file to download will have a name close to this one : jre-8uXXX-windows-x64.exe
It can be downloaded there :
http://www.oracle.com/technetwork/java/javase/downloads/jre8-downloads-2133155.html

Operating System :
any Windows version capable of running java 8
So, it is ok for windows 7 and over
It may work with windows xp, but as xp is not up to date since 2014,
there is no guarantee it will work with this platform

Orchestrator was tested successfully with windows 10.0 64 bits

You will need Lord Of The Ring Online™ game client up to date, and at least 2 accounts

Orchestrator also use a slightly customized version of songbook to work,
you can either patch it yourself using following code snippet or use the patched version provided in the archive.


code snippet :
Add this in \The Lord of the Rings Online\Plugins\ChiranBB\SongbookBB\SongbookWindow. lua:1722
after this line : if sPlayerName and sTrackName and songbookWindow.aPlayers then
--added code here
Turbine.PluginData.Save(Turbine.DataScope.Characte r, "FILETOPLAY", Strings["cmd_play"] .. " \"" .. SongDB.Songs[selectedSongIndex].Filepath .. selectedSong .. "\" " ,
function( result, message )
if ( result ) then
Turbine.Shell.WriteLine( "<rgb=#00FF00>Music to play have been written to file, Ready to Sync !</rgb>");
else
Turbine.Shell.WriteLine( "<rgb=#FF0000>Music to play failed to save : " .. message .. "</rgb>" );
end
end);
--

--------------------------------------------------------------------------
How to install Orchestrator


unzip its content using your prefere archive tool (7z, winrar, or whatever) in :
Documents\The Lord of the Rings Online\Plugins

You should now have this directory :
C:\Users\root\Documents\The Lord of the Rings Online\Plugins\orchestrator
You must have at least these files, or Orchestrator wont start or work properly :
Orchestrator.jar
Orchestrator64.dll
Main.lua
orchestrator.plugin
Orchestrator_EN.ini


Now open Orchestrator_EN.ini file with notepad or notepad++,
and fill it with needed data ( examples are provided in the file )
Once you are done, save this file as Orchestrator.ini in the same directory.
When saving the .ini file, choose then ANSI charset encoding, otherwise Orchestrator will have troubles reading properly the content of the file.

You must have logged in the game on the computer you are using for all accounts you are planning to use at least one time
and use the orchestrator plugin before launching Orchestrator, otherwise some directories wont be created and it wont be able to start.
to do so, enter following commands in game :
/plugins load orchestrator
make sure to equip and instrument, doesn't matter which one :
/party_instr write
Wait for chat to output you "instrument saved"

Orchestrator is now ready to run.

I strongly advise you to read following section, you may skip it if you think you already have a fast enough computer.

--------------------------------------------------------------------------
Optimization

Game optimization :

Configure options this way, doing it for one account is enought because they all share the same file for user preferences :

GRAPHIC tab
Go to options->graphics tab, set overall graphics quality to very low
set graphics hardware level to directx9
use windowed mode, and 800x600 resolution
disable antialiasing,

ADV GRAPHIC tab
go to adv graphics tab
set object draw distance to low
set texture details to very low and texture filering to bilinear
in performance section uncheck player mesh combining
if you have a good graphic card (GPU) and plenty of ram and video memory,
you can set texture cache size to 1.0, it will reduce stuterring,
if you are not sure, set it to 0.00
set player crowd quality to 0.00

AUDIO tab
go to audio tab,
set Music Volume to 0.00
(so that you wont hear game music AND your music playing at the same time)
set focus loss behaviour to disable sound

KEY MAPPING tab
go to key mapping tab,
disable shortcuts you allocated previously to Orchestrator in orchestrator.ini file to avoid misbehaviour
by default F6 to F12 keys are needed, make sure to remove them from lotro and any other hotkey program (Razer synapse, autohotkey, hotkeynet, ...)
Also, if you want the /follow feature to work, make sure F2 is still allocated to "select fellow 2" (this is the default shortcut)

TROUBLESHOOT tab
go to troubleshoot tab,
and set maximum frame rate to 60 fps (or 30, if you think 60 is too much)
this is needed as lotro game engine always prioritize graphic rendering over sound rendering,
so it may help to reduce sound sturrering
also, if your CPU load is still too heavy and you have a lot of stuttering,
you can gradually reduce engine speed in troubleshoot tab,
however, i strongly advise you to do this as a last resort because it may desync your music from others

System Optimization :
if you have an SSD drive, move LOTRO game directory on it, as it will make loadings much faster
also, move you pagefile.sys file to your SSD, so game cached data will be faster to access too
You can configure the page file by using System Properties:
Run sysdm.cpl (by windows key + R or throught start menu)
Go to Advanced
Select Settings under Performance
Go to Advanced (again)
Select Change under Virtual Memory
For Max performance Page file size = RAM * 1.5 or RAM * 2, so if you have 8GB of RAM, allocate 16GB to your pagefile.sys

Finally, as lotro game client dont always properly clean unused cached data
I advise you to run with a RAM cleaner too if you are using a lot of clients at the same time
(i'm not doing any pub or whatever, it's just a good way to go for better perfs)
There are several tools doing it like RAMrush, or iobit ram cleaner.


As a result, the game is ugly, but very smooth and light (600 to 750 MB in RAM), as example, on an i5 with 8GB of RAM
using previous optimizations, i'm able to run 11 clients and play music in a smooth way, even high bpm's ones.
Optimization still have limits, in my case, loads becomes too heavy if more than 30 peoples are around to listen and spam emotes

In this use case, if you still want to enjoy music you are playing, use a playback computer with an other lotro client.

--------------------------------------------------------------------------
How to use it


In this tuto i assume you are using default keybinds (F6 to F12) configured in Orchestrator.ini
You can also refer to my previous video as it might help you to use it :
Installation :
https://www.youtube.com/watch?v=A1TN8SjkaeU
How to use it :
https://www.youtube.com/watch?v=GvpQn9ORDQo

To start Orchestrator, double click on the Orchestrator.jar file in \Lord of the Rings Online\Plugins\orchestrator
You can create a shortcut in this way if you wish:
Create a text file, copy paste the full path to the .jar file, and add " at the start and end, typically you should have something like this:
"C:\Users\username\Documents\The Lord of the Rings Online\Plugins\orchestrator\Orchestrator.jar"
Now save and rename this file with the .bat file extension, move it where you want, and click it to start orchestrator.
You can now use the keybinds below.

keybind_kill_orchestrator=F12
This is to kill orchestrator process when you are done playing.

keybind_launcher=F11
This is to launch every registered accounts in ini file.
Note that if some of you clients crash for whatever reason, using this keybind will relaunch only
missing clients. However, one push is enough, NO NEED TO SPAM.
Also, while Orchestrator is launching clients, he is also renaming them,
to do that he needs to know which windows are currently focused by user,
so, while he is launching game clients dont click everywhere, just wait for it to finish

keybind_sync=F10
After pushing the Sync button of the targeted music in songbook, wait a few seconds.
This delay is due to the fact game api wont instantly write data to make automation impossible,
but in our case it's not a big problem as you can push songbook sync button without breaking the music
you are playing, and push F10 when it has ended.
When the window chat tell you "ready to Sync", you can now push F10.
This will synchronize musicians based on what instrument they are holding,
and what is the targeted song in songbook, same as before, while he is sending commands, dont mess him up.
You should be able to see in songbook window free tracks (in white) and those who are already allocated (in green)

keybind_write_instr=F9
This will save for all running clients the currently equiped instrument.
You'll need to push it again if you change instruments on one of your character.
It is done whan game window chat tells you "instrument saved".
The file in which instrument name is written is not cleared after the game stops,
so if you are using the same party next music, you wont have to use it again
while you dont change an instrument on one of your character.

These keybinds are optional, but i recommend you to set them as they make your life so much easier :

keybind_music=F8
This will send a /music command to running clients, nice to setup
every thing in a fast way or interrupt a music

keybind_follow=F7
This will send F2 keytroke and /follow command to all your running clients making them target the fellowship leader
if you are using it in a raid with more than 6 toons, after you have pushed this key,
go to other fellowship leader window in your raid, and manually target and click follow the raid leader

keybind_raid_invit=F6
This will send /raid invite to all your characters,
As Orchestrator dont send mouseclicks to games clients,
he will bring to the front the window of invited character for 3 seconds
so that you can manually accept the invite.


So, knowing these keybinds and what they do, from desktop to an in-game concert, you'll have to push :
F11 : to launch game clients
F6 : to raid invite all your toons
F7 : to make them follow you where you want to play
F9 : to write instruments if you need it
F8 : to prepare everyone to play
F10 : choose music in songbook, wait few sec and push F10 to sync your toons on the music you selected

--------------------------------------------------------------------------
TROUBLESHOOTING

If you are having problem at installing/using orchestrator
you can send me a private message on lotrointerface.com forums (Vacknishkara).
you can also send me orchestrator.log file which is in \The Lord of the Rings Online\Plugins\orchestrator directory.
You dont have to worry about personnal information, as in this log file your login/password and all paths to user files and directories are replaced by a random number of '*' characters.
Only the server, your toons names, the lang you are using, and some technical informations about your window version, java setup and various Orchestrator internal informations are available to me.
I will always assume that you have read this README file before,
so, if the answer already lies in there, i wont answer you.

Here are some tips :
I tryed to make logs not too much technical, and understandable by a common user,
if you have a problem, try to see where it stopped
depending on the error, it may throw you an error that will tell you directly what's wrong, so if you are using a special system setup on you own, you may be able to match it with the error if not, send it to me.

Also, if you are using Orchestrator to play music you created by yourself, you have to know that to match instruments name, he is based on default maestro naming policy for partition names
so if you dont comply with it, it may just skip this track, if you have this problem, send me orchestrator log file and the abc file that cause troubles.

If it happens you dont have a log file created, please make sure you have java 64 bits intalled on your computer, you can do this and send me informations :
open a windows terminal, for this use windows key + R shortcut and type cmd, or search for cmd in window start menu.
then enter the following command (your version may not be the same, if so make sure to adapt the command by browsing there and copy/paste the path )
tip : you can copy from windows terminal by highlighting text and rightclicking on it, you can paste to windows terminal by right clicking in its window.
"C:\Program Files\Java\jre1.8.0_121\bin\java.exe" -version

Then, copy and paste from terminal informations it outputs, you should have something like this :
C:\Users\root>"C:\Program Files\Java\jre1.8.0_121\bin\java.exe" -version
java version "1.8.0_121"
Java(TM) SE Runtime Environment (build 1.8.0_121-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.121-b13, mixed mode)

if not, please uninstall every java version on your computer and install java 64 bits from this link :
The file to download will have a name close to this one : jre-8u121-windows-x64.exe
http://www.oracle.com/technetwork/java/javase/downloads/jre8-downloads-2133155.html

Then, back to your command line, enter this command, just change the username by your own username, and document's name too if you use a different localization :

"C:\Program Files\Java\jre1.8.0_121\bin\java.exe" -jar "C:\Users\username\Documents\The Lord of the Rings Online\Plugins\orchestrator\Orchestrator.jar"

if this command output nothing, and orchestrator creates a log file, it works as intented,
if previous command outputs anything, and no log file is created, then copy its output and send it to me.

--------------------------------------------------------------------------
Want to contribute ?

If you are interested in making Orchestrator a better tool (you have an idea of feature, or you want to improve code in a better way)
just send me a message on the lotrointerface.com forums (Vacknishkara).

By the way, if someone could to a german translation of this readme (i did the french one), that would be really great.

TODO list (features that MAY be added, no guarantee ):
- give the possibility to orchestrator to synchronize with others orchestrators
for bigger music raids shared by multiple physical players (24 man)
(as lotro api limit a lot communications with external applications like orchestrator,
it's possible but will be slow, also doable by using an external server to share informations,
but i'm not going to pay for it)
- make it work under linux (who is playing lotro on linux by the way ?)
- fix trust issues with a proper certs implementation while login
- remove API's for handmade code, but seriously, i'm loo lazy for that
- make it run for 32 bits potatoes computers,
i seriously doubt how orchestrator would be useful on computers with less than 4 GB RAM
because windows takes at least 2GB, you would run 2-3 clients of LOTRO game, i dont think it's worth it for so few clients
However, if you want to compile a dll for 32 bits systems, go on, take cpp edit it, compile and share.
- allow orchestrator to equip an other instrument on a character using keytrokes to gear an instrument on the skillbar (ex: shift+1)

--------------------------------------------------------------------------
Version history

Date formating : YYYY-MM-DD

2016-03-** - version alpha
private release to myself,
It used to work by editing/reloading/launching hotkeynet scripts, clumsy to use and install,
but i used it for a while before minding about a public release.

2017-16-04 - version 0.10
Initial public Release


I know it's far to be the best tool, and technically speaking,
there are shortcuts i'm not allowed to use, but i did my best
and i hope you'll truly enjoy sharing music in LOTRO thanks to it.
- Vacknishkara, Sirannon (FR)
File Statistics
User Rating:
 out of 5 with 0 votes
Downloads: 11266
Views: 29532
Favorites: 7
Uploaded By:
 
Last Modified: N/A

View Pictures. Download Now! Post A Comment

There have been no comments posted to this file.
Be the first to add one.

 
Category Jump:
Search this Category:
 

All times are GMT -5. The time now is 09:29 PM.


Our Network
EQInterface | EQ2Interface | Minion | WoWInterface | ESOUI | LoTROInterface | MMOUI | Swtorui