Kubla-Khan's Guide To Pleasuredome

Kubla-Khan’s Guide To Pleasuredome

Why It All Started
It started solely with MAME (and it is the reason why the Pleasuredome staff insist on only them being responsible for MAME-related content to this day), the main goal was (and always has been) to try and prevent the unscrupulous attempting to make money directly from the project by selling sets on auction sites for ridiculous sums of money. Too many people freely donated their time and energy on the project from the coders to the dumpers who all ask for nothing in return, the selfish wankers that then try to make a swift buck off the sweat from the backs of these people freely giving to the project are equal, in my opinion, to conmen ripping off charities.

Originally a small bunch of enthusiasts gave out FTP information on alt.games.mame so that people could connect and download any sets they desired, this coincided with when broadband was becoming common place around the globe and dial-up-connections were on their wane, before that downloading sets took a very long time so it wasn’t surprising that there was easy money to be made by the auction site sellers. There was a problem however, as in most walks of life if someone tries to do or create anything there will always be those who want to vandalize it because they have nothing better to do. The vandal in question at this point and time was someone who took objection to these FTP administrators giving access for people to download what they wanted and set out to destroy it all by complaining directly to their ISPs and to other related services that they used. It soon became obvious to the FTP administrators that it was pointless to continue as they had done, simply because a vandal won’t stop his graffiti and move on if all that is done to prevent it is repainting the wall continually. Once backed into a corner however, these administrators simply refused to curl up and die, what they needed was a new strategy that offered better protection.

The strategy they devised wasn’t too complex, but first they needed a way to communicate, off the radar and away from prying eyes to plot and scheme, this was achieved with a simple mailing list made possible with the help of the Lazarus webmaster. In alphabetical order, BurnerRobert, Erik, I-Robot, mcr, MisterWhite and Strath formed what they called the ‘MameFTPGroup’ (some graphics are still visible on the majority of pages on the website today fact fans). The idea that they came up with was having users request FTP accounts using valid non-web-based email, then they just needed two more things, a website to advertise on (again the space was kindly donated by the Lazarus webmaster) and a name (something MisterWhite came up with in two minutes and has regretted ever since due to the sleazy pr0n site undertones). The site was coded and launched ‘sometime in the autumn of 2003’ and slowly grew in the number of daily hits and access requests until soon all the FTP servers were running around the clock. Others who came also volunteering their FTPs were Cockney_Geezer, DefDingo, Knight-Of_Ni, mucci, Romcollector, SalmonKing and Scoops (I will apologize at this point just in case anyone has been overlooked - everyone was appreciated for their efforts). An IRC channel was formed for help, to offer other contact methods but mainly to hang out in, unsurprisingly enough also called #pleasuredome on the foreverchat.net network where a lot of the reprobates can still be found idling the small hours away.

There’s Been No Mention Of Torrents Yet
At the time, MAME wasn’t the huge beast that it is today, yes there were some CHDs (probably only ten to twenty though) and some ROMs were starting to creep up in size but there was work continually going on trialling other ways to make sharing much more efficient. Erik came up with the idea of using the latest p2p newcomer, BitTorrent, he set up a basic tracker and several trials were carried out. It soon became obvious that for data that wasn’t guaranteed to be identical between users (for example the MAME ROMs) it wasn’t ideal, if users had sets zipped with slightly different compressions than those being torrented then the protocol dictated that they didn’t match and therefore would be needlessly downloaded again. However, on the flipside, for data that was guaranteed to be identical (for example the CHDs) it was ideal, every working CHD for Area 51 will be completely identical to every other working Area 51 CHD that exists anywhere.

It wasn’t too long after this discovery that most of the FTP administrators removed the ability to download CHDs via their servers and a new CHD section appeared on the website enabling users to get them via BitTorrent, at this time each CHD had its own unique torrent. This was a pivotal moment in the history of Pleasuredome, both the users and the FTP administrators were relatively new to this p2p format, however the biggest change was that for the first time the MameFTPGroup was now asking for something in return… bandwidth, to enable yet more users to get their hands on these files, all that was asked was for a user remain seeding as long as they possibly could.

This was the FTP administrators first hard lesson in what to expect from human nature, hundreds of people downloaded some of these torrents, however very rarely did they stay seeding longer than a few minutes after completion, usually after the initial flurry of users wanting the file, the torrent would die down very quickly and the amount of seeds soon dropped until only the FTP administrators and a few #pleasuredome regulars were left seeding alone to prevent the torrents from stalling completely. It became very clear early on that:

1) despite all the pleas on the site asking for people to remain seeding as long as they can to help others, the majority of users either never read any of them (or did read and simply didn’t care enough to bother) and

2) that seeding so many ‘small’ torrents wasn’t going to be the best way to continue doing things to guarantee the longevity of the torrents.

For the time being though, the MameFTPGroup continued creating FTP accounts upon request for the ROMs themselves and using BitTorrent solely to transfer CHD files. There were trials still being made at trying to improve things, the FTP administrators had seen how easy it was to shift huge volumes of data using the BitTorrent protocol, however the differing levels of possible compression for zipfiles was proving a hurdle that they could not seem to overcome or work around with a simple solution, that was until Strath discovered one thanks to a completely different p2p system.

MAMEzip-pity Doo Dah!
At the time there was also a site called MAMEReactor that was trying to achieve a similar goal, however they were using Shareaza and the Edonkey p2p system rather than BitTorrent. They did have the holy grail that the MameFTPGroup was looking for though, they used an application called MAMEzip coded by Jano that unified every zipfile by re-compressing them with uniform values so once that two zipfiles containing the same data had been MAMEzipped it could be guaranteed that they would be completely identical. On paper, MAMEzip should be exactly what the Pleasuredome staff were looking for to use with BitTorrent, Strath carried out trials with update torrents, Petr1fied conducted similar trials with complete ROM torrents with various members of the community acting as their guinea pigs, after a few slight teething issues, success was finally achieved.

Some larger scale tests were then conducted whilst the system was perfected within the confines of the alt.games.mame newsgroup, #pleasuredome and other IRC channels that were frequented regularly by the staff. Even though these tests were still relatively low key, the phenomenal amounts of data that was quickly transferred completely dwarfed what was expected, permission was sought (and granted) from Jano to continue using MAMEzip for the project (MAMEReactor was going through a lot of difficulties and didn’t survive much longer), the trio of these trackers offering MAME content (CHDs, Full ROMs and Updates) soon became the backbone for the Pleasuredome Trinity linked together by the main site.



It was soon decided that the .torrent files themselves would be hosted upon the Pleasuredome website and that the trackers would be read only for the simple reason because these early trackers were hosted not on servers but on simple PCs connected with ADSL connections, the bandwidth was much better used in the actual tracking than by constantly uploading the files to users. Instructions were hastily created upon the website which now found itself split between being both a torrent resource and still the FTP resource it was originally conceived as.

Improving The System Part 1
The staff behind the fledgling trinity knew they had a very successful system to transfer the files purely because of the amounts of data being regularly shifted, they also knew however that like previously with the CHDs that people were abusing the system. As soon as a new update or full MAME set was released the trackers would be transferring files at amazing speeds, a few days later they became noticeably slower and the seeds soon dropped in number, leaving just the staff and a few dedicated people sharing.

The BTIT tracker was first used by Petr1fied for his full MAME sets, there were a lot of plus points for its usage (and a few minor negative ones) but the ability of having an individual PID per user system was the main reason for its use. There were a number of (semi-heated) discussions on how to keep users remaining seeding after they had completed downloading what they wanted, wait times for users who never seeded back adequately was one hot potato which split the group down the middle, finally a decision was made that prevented users from repeatedly abusing the tracker with an eventual ban when they surpassed certain minimum ratio and maximum download limits was what was settled upon. This in itself prevented its own problems because not everything that the group needed the tracker to do existed in the BTIT code at the time, luckily they had a very able coder amongst them called BB who added new functions and modified the code more or less on demand on a daily basis (even more impressive when the original source was 100% Italian and not one single member of staff spoke it).

The core BTIT tracker had code for forums built into it which was used originally but soon replaced with the separate forums that still exist now for greater flexibility, with the advent of the forums two problems became very clear, one was that the trinity was spreading itself too thinly and more or less working around the clock with the combination of coding, running the trackers, updating the website and helping users in the forums and in the IRC channel (remedied by recruiting the most knowledgeable and openly helpful users into staff positions to help lighten the load). The second problem wasn’t as simple to find a solution to, it was highlighted even more with the recent addition of (for the first time) non-MAME related content to the full ROMs tracker, MAMEzip whilst serving the group well originally had major limitations that they knew of, however with the addition of the forums the users soon spoke out and the trinity found out how frustrating and universally hated it was by a large percentage of the users at the time.

Over time the hacked tracker code was released as Pleasuredome Version 1.0 and both the CHD and Update trackers started to use BTIT too (however not enforcing the ratios as tightly as on the Full tracker). One of the main priorities remaining was to replace MAMEzip, luckily one of the staff recruitments brought another able coder onto the team.

TorrentZip-pity Doo Dah!
The staff knew exactly what they wanted in a MAMEzip replacement, the main drive was for speed however it also had to be cross platform compatible (preferably without the need for JAVA which MAMEZip relied on) also they wanted the status of the zipfile held within its own header so that a downloaded file that had already been TorrentZipped wouldn’t be needed to be TorrentZipped again and would be simply skipped unless the contents had changed in any way since being TorrentZipped, MAMEzip currently held the status in separate status files so a lot of needless rezipping was needed to be done because these files wouldn’t be present on the machines of users who had just downloaded a previously MAMEzipped file from one of the torrents.

StatMat’s very first goal was to come up with something resembling what was wanted with the features outlined to him, surprisingly a beta version was very fast in coming considering what was being asked. After private testing, the utility was given the TorrentZip moniker and a development thread was started within the forums calling for user input / improvements with StatMat overseeing the project.

TorrentZip v0.1 was released as open source shortly afterwards and usage of MAMEzip was stopped for any future torrents uploaded to the trackers, of course things weren’t 100% smooth in the transitional period but users who can remember using MAMEzip will surely agree it was worth some of the hassles and teething problems in the long run.

The staff are often asked why TorrentZip was released as open source since in effect it also allows any potential rival the usage of it, the answer is basically that the more users who use it (members of Pleasuredome or not) the bigger the chance it has of becoming a standard, hopefully ultimately making it easier for the end users, if every file uploaded to newsgroups, shared on FSERVs and FTPs were TorrentZipped (whether originally via Pleasuredome or not) then all file sizes and hash values will be identical if the user already has the same identical TorrentZipped file from another source saving needless re-downloading by whatever method the user chose to use.

Improving The System Part 2
The staff have continued improving things to this very day behind the scenes, there has been several server moves (some forced and others not), new moderators have been invited to join the team (usually enthusiasts from outside the hardcore emulation scene), bugs have been fixed and new code has been added (sometimes on a daily basis), some ideas have been trialled and failed whilst others have been trialled and been successful and finally implemented.

Pleasuredome is still an expanding site and they have been busy trying to meet the new demands making things more clearer and hopefully easier for new members whilst hopefully not alienating the old faithful in any way.

One major difference which few users will not be aware of is that Pleasuredome has evolved from a small project begun by a group of mates in their spare time to a well run (almost professional) global organization of like minded (unpaid) individuals with guidelines and democratic procedures for when any major decisions need to be made with each staff member having an equal voice in the direction of the site.

A Few Things Learned Along The Way
No matter how clear instructions are, how precisely written, how often they appear, how large they are displayed etc. there will always be some people who will not read them regardless.

If something possibly can be abused in any way at all then there will always be some people willing to try to do so.

Some people (after downloading data off hundreds of others) will never upload a single byte back for anyone else to benefit from (even if their bandwidth will then be idling for days).

There are a lot of people who are not willing to learn things for themselves (or even try) but would rather someone else talk them through how to do something (usually repeatedly because they don’t make notes the first time).

Nothing is foolproof however simple it is made.

A very small percentage of users falling in to any of the above points can be more time demanding on the Pleasuredome staff than 95% of the rest of the other users.

Pleasuredome Firsts
These are a few things pioneered solely by Pleasuredome staff, if you ever see these things elsewhere utilized by other trackers etc. just remember that they wouldn’t have them if it wasn’t for Pleasuredome.

The Shitlist - Before Pleasuredome this was not a feature of BTIT nor was it even a word used at all, before it was conceived and coded, BTIT’s only option was a ban, the staff wanted a way to give users a second chance and the Shitlist was finally born.

Member Levels – Another Pleasuredome addition that made it into the BTIT core code, this was conceived simply to give users goals to aim for rather than numbers getting higher being the only achievement, the hastily knocked up icons were made available in the PD version that was released and probably still exist on a few other trackers to this day.

Sharing Standardized Zip Files Using Torrents – This has been previously covered in detail above but Pleasuredome was the first to do it whatever other sites and trackers may claim.

Easier Updates – Why bother having to get hands dirty with CMP when all that’s needed is to join an update whilst pointing the torrent at the previous (unaltered) set?

And Finally A Big Thank you
There are a lot of people who deserve thanking since Pleasuredome began, a lot of people have given many things (time, effort, donations etc.) lots are just valued members who give their bandwidth, there is not space here to name check everyone however the staff would like me to add a big thank you here to anyone who has ever freely given anything to make Pleasuredome the site that it is today,

Thank you

Kubla-Khan written by MisterWhite Feb 12 2007 (may God bless you, MW)