You don't need to modify the source code, just create new detour files for the application. As for your question, I don't know exactly how the program works that you are using, but I'll give you an example of what you
can do with the program.
I'll use ISRO as an example. Let's say you have 3 server programs active, each one listens on two ports, one for login and one for world. In my case, 19000/19001, 19002/19003, and 19003/19004.
First, I create a "_edx.dat" file through the DetourDatFileCreator for sro_client. Since ISRO has several login servers, I have to add entries to map each of them to the login server port of my program. Once I do, I can start the first client. For example:

In that case, the login servers (.26 - .30) are mapped to the login port (19000) and all other IPs with port 15779 are mapped to the world port (19001).
Now, if I try to start Silkroad again, It'll go to 19000/19001, so I need to create a new detour file. Since the detour file is dependent on the executable name, you will need to rename the original file and then create a new one. Then, I can start the new client redirected to the second program. For example:


I then just repeat these steps of creating a new "_edx.dat" file with a different set of mappings for each instance I want to create. Once you have them done, you just have to rename them each time you want to start the client on that set of ports.
So, if your bot supports running on any arbitrary port, then you can redirect multiple clients to those ports using this method. The bot has to be able to support running multiple times though. For example, ISRO has hackshield and only one instance is allowed at a time, so obviously you cannot use this method on ISRO due to the program restrictions, not from edxDetour.
Alternatively, if you have a lot of disk space, you can just copy your entire Silkroad folders for each instance you want to run and then create a unique detour for each folder. That is not recommended.
You could also just rename the sro_client.exe and create a new detour for each of those. In that case, the bot loader has to support being able to select the executable if it's driven that way. If you are using Silkroad.exe to load the client though, then that method will not work out unless you also modify Silkroad.exe to use the new filename.
I'm a bit busy now updating other projects, but I'll eventually get around to updating the DataFileCreator GUI since it's a bit lacking and hard to work with. Anyways though, that's what you can do with edxDetour. As long as your bot supported listening on any port and running many instances at once, then you could use edxDetour with only a little bit of work.