PDA

View Full Version : mCreator



The248
31.10.11, 14:28
mCreator enables you to create and/or edit any emulation available on mRatio.

Changelog:

mCreator 1.0

Added: Peerid an Key are now generated using Regular Expressions


mCreator 0.8

Added: Support for Accept-Language parameter
Note: This version will force you to create client files for mRatio version 5.0.2 and up.
Older mRatio version are outdated and should not be used, this way users will be forced into updating to an bug fixed earlier version.


mCreator 0.7

Added: Support to Bittorrent emulation
Note: Make sure you limit bittorrent emulation to mRatio 4.6 and above, older mRatio's don't support this.


mCreator 0.6

Added: Support to uTorrent MAC emulation
Note: Make sure you limit uTorrent mac emulation to mRatio 4.4 and above, older mRatio's don't support this.


mCreator 0.5

Added: [LocalIp] now appears at blue
Fixed: Unable to load some client files.


Special Thanks

mmmmm - For all the help improving/fixing mCreator

The248
19.02.12, 20:08
How to know the correct options to report UPLOADED/DOWNLOADED/LEFT:

1º - Obtain the piece size of the torrrent you are making the announces tests (in this case 4mb = 4194304)

2º - Get multiple sample announces made a low speeds (5kb/s for example) it's easier to avoid false positives.

Here we have some sample data:

&uploaded=0&downloaded=0&left=7117596052
&uploaded=245760&downloaded=8388608&left=7101752724
&uploaded=1359872&downloaded=16777216&left=7085860244
&uploaded=1671168&downloaded=29360128&left=7070688660
&uploaded=2392064&downloaded=50331648&left=7055598996
&uploaded=2392064&downloaded=54525952&left=7054075284


It's "Multiple of torrent piece size" if:
(VALUE / PIECESIZE ) = integer

UPLOADED: 245760 / 4194304 = 0,0058594, thats not an integer so it's not this option


DOWNLOADED: 8388608 / 4194304 = 2 , that's an integer, so it may be correct option, test multiple times to be sure. If we test all the the downloaded values, we will get: 2 / 4 / 7 / 12 / 13, so now we have the confirmation that: DOWNLOADED = "Multiple of torrent piece size"


LEFT: ((LEFT(0)-LEFT(x)) / PIECESIZE ) = integer
Example: ((7117596052 - 7101752724) / 4194304 = 3,777, that's not an integer

Note: ALWAYS DO THIS TEST FIRST, because PIECESIZE it's always a multiple of 16384.


It's "Multiple of 16KB" if:
(VALUE / 16384) = integer (16384 = 16 KB)


UPLOADED: 245760 / 16384 = 15, thats an integer, let's run more tests to be sure. If we test all the the uploaded values, we will get: 15 / 83 / 102 / 146, so now we have the confirmation that: UPLOADED= "Multiple of 16KB"


DOWNLOADED = "Multiple of torrent piece size", we already know this one


LEFT: ((LEFT(0)-LEFT(x)) / 16384) = integer
Example: ((7117596052 - 7101752724) / 16384 = 966, that's an integer, let's run more tests to be sure. If we test all the left values, we will get: 967 / 1937 / 2863 / 3784 / 3877, so now we have the confirmation that: LEFT= "Multiple of 16KB"
Note: this is a bit tricky, because sometimes you may get a false positive, that is because of the last piece of the torrent not having the same size as all the others, just make sure you run enough tests.




It's "Byte per Byte" if none of the other two rules apply.

UPLOADED= "Multiple of 16KB"


DOWNLOADED = "Multiple of torrent piece size"


LEFT= "Multiple of 16KB"

anon
08.11.21, 02:20
This program is now public. Opening existing client files should give you a good clue as to its operation and syntax, but feel free to ask any questions here. A nice reference for writing and testing regular expressions is available at http://regexpal.com.s3-website-us-east-1.amazonaws.com/.

Recommended reading: 32021, 33436

JohnWick
30.01.22, 17:24
This program is now public. Opening existing client files should give you a good clue as to its operation and syntax, but feel free to ask any questions here. A nice reference for writing and testing regular expressions is available at http://regexpal.com.s3-website-us-east-1.amazonaws.com/.

Recommended reading: 32021, 33436

@anon
I captured tcp/ip stream, i still do not know how to create m ratio client, i captured stream with smart snifer with install winpcap software, i do not understand why i need to 3 times stop and exit torrent client as said by mmmm,

i tried to add your local trackers but unable to capture stream, so i used torrentday torrent.
but my main problem is how to use captured tcp/ip stream in mcreator? is there any tutorial?
i was trying to capture utorrent stream as mcreator do not show qbittorrent option.

my 2nd question, i downloaded yours mratio utorrent client file and use mcreator and edited some options,
i changed build detail and useragent detail from newer one which i get from captured tcp/ip stream, will this client work ok and safe?

plz check my test file, is it ok?

21205

anon
31.01.22, 18:24
i captured stream with smart snifer with install winpcap software, i do not understand why i need to 3 times stop and exit torrent client as said by mmmm

To find out whether the peer_id and key are individual or global and when they are regenerated (if applicable).


i tried to add your local trackers but unable to capture stream

"i captured stream with smart snifer with install winpcap software"

WinPcap does not support loopback packet capture, you need to use Npcap for that. If you can't or don't want to install it, use RawCap to sniff all loopback traffic, then load the capture in Wireshark and filter it. All of this is explained in the help text for LocalTracker, by the way...


but my main problem is how to use captured tcp/ip stream in mcreator? is there any tutorial?

You don't directly "use" the packet capture in any way. It merely provides a reference for you to create or update the client file you're working on, by observing the announce structure and data sent within.


i was trying to capture utorrent stream as mcreator do not show qbittorrent option.

Client-specific settings are for a minority of cases. There aren't any options mentioning qBittorrent because none are required. (uTorrent encodes its build number in bytes 9 and 10 of the peer_id in reverse order, so it needs special treatment.)


i changed build detail and useragent detail from newer one which i get from captured tcp/ip stream, will this client work ok and safe?

plz check my test file, is it ok?

Checked this and the client file is valid for uTorrent build 46148. :thumbsup:

joe1982
08.12.22, 18:55
Could someone PLEASE create a video of making the mRatio file?
I'm having a hard time finding the corrent values for emulation.
For example: Determining the correct PeerID & Key capturing for a certain version of Qbittorrent Enhanced.
As a newbie in this I don't want to make a mistake on my private trackers.

anon
09.12.22, 04:00
I'm having a hard time finding the corrent values for emulation.
For example: Determining the correct PeerID & Key capturing for a certain version of Qbittorrent Enhanced.

For this, you need to capture announce data from many different torrents and check two things.

Is the peer_id the same for all of them? If so, tick "use the same peer_id for all torrents", otherwise untick it. (Global vs. individual)
Does the peer_id change when you stop and start a specific torrent? If so, tick "generate a new peer_id when the torrent starts", otherwise untick it. (Dynamic vs. static)

Now do the same with keys. 361596 conveniently provides a non-encrypted tracker emulator that works offline, 4 different test torrents, and instructions on how to set up everything.

Now make a list of all the peer_ids you captured and note which part never changes. That's the prefix. Its length is almost always 8, but uTorrent encodes its build number in it, boosting the length to 10. Also, %xx represents a single character, not three.

Now do the same with the keys. These have no prefix and their length will be fixed in most cases, but Transmission was a nasty surprise.

Finally, writing the strings that work as a template for generating these values requires regexp knowledge, which I mentioned in post #3. The good news is that it's exceedingly rare for anything other than the peer_id prefix to change between versions, so unless you're making a client file from scratch, you can reuse the rest. Same goes for keys. Do double-check everything.


As a newbie in this I don't want to make a mistake on my private trackers.

Then it's worth nothing that qBittorrent Enhanced Edition should not be used on any private tracker that has a whitelist, and its readme explicitly tells you as much!

ldeveraux
30.03.24, 13:03
For the life of me cannot figure out how to do this. Guess I'll just wait for them to be updated by the experts.

anon
30.03.24, 20:45
For the life of me cannot figure out how to do this.

If you want to change that, you can tell us which part is so troublesome...

ldeveraux
06.04.24, 13:27
If you want to change that, you can tell us which part is so troublesome...

Step 1 ;) I cannot understand the instructions at all, they aren't clear to me. Don't even know where to start. So I wait for someone else to make the QB 4.6.4 file...

anon
07.04.24, 20:05
There's a new qBittorrent out already? Well, let's see what I can do and when...

ldeveraux
17.04.24, 15:34
There's a new qBittorrent out already? Well, let's see what I can do and when...

Cool thanks!

anon
20.04.24, 23:25
Shortly after making that post I went through the longest blackout ever (technically they were five, back to back), so you may have to wait a bit more. Wonder what happened to Annabella, he was very diligent at providing updates :gfrown:

ldeveraux
23.04.24, 21:40
Shortly after making that post I went through the longest blackout ever (technically they were five, back to back), so you may have to wait a bit more. Wonder what happened to Annabella, he was very diligent at providing updates :gfrown:

oof. That's OK, I'm not sitting here waiting. I also hope everyone is OK. I wish the steps to use this were clearer then I wouldn't ahve to bug anyone