Developed by: Shiny Jirachi/formlesstree4
Shiny˛ is a brand new GTS system, recreated from the ground up in C# that is designed to be as efficient and reliable as possible.
I'm not sure who all has used ShinyGTS or ShinyDTS, but those have their own fair share of problems that cannot really be avoided. However, Shiny˛ has been designed to remove their flaws, and introduce so many more features:
- Distribute/Receive to both Generations [simultaneously or not]
- Custom Filtering System to prevent GTS overload!
- Write Logs to File
- Save and Loading of Settings
- Custom Browser Messages - More on this later
- Verbose GTS output [Assist in debugging]
- And more! You'll have to use the program to discover the rest.
Now, the biggest upgrade from ShinyGTS/DTS is the Browser Message feature. With it, you can create fully functioning and dynamic web pages. Shiny˛ has a built-in macros that allow it to inject data straight into your Browser Output. This feature is still in beta testing, but so far, has proven to be reliable.
For now, here is the download link. I am short on time. When I have more free time, I shall post a more detailed How-To, as well as pictures of the program.
The source code has been updated, and the latest version can be downloaded here or as an attachment at this post
Download the Source Code
Final change for probably a long time (or ever), unless something crops up.
- Fixed DNS filter
Download from the attachment below or from here.
Source code also updated.
- Added "syachi2ds.available.gs.nintendowifi.net" to the allowed DNS list
- Added more information to bad DNS requests
- Fixed an issue where GTS actions failed to register
- Changed the way Pokemon are saved so that the date/time they were saved is in the file name, no more accidental overwrites (for db33)
- Changed the application's Icon to a higher resolution
- Fixed an issue where certain 5th Gen connections failed to get a result
- Added more information to the log when a user initially enters the GTS
- Added more information to the log when a user receives a Pokemon, namely the user's game generation and Pokemon received
- Changed the "Sent x bytes of data" message to only appear in Verbose mode
- Fixed an issue where the app would crash on launch when loading data from a previous instance
- Fixed an issue where the app would crash on exit when saving some data
- Added the ability to minimize to system tray
- Fixed DNS bug that would filter out ALL URLs instead of specific ones. The filtering system is currently disabled and will be activated in the next release (hopefully).
- Fixed a bug where when doing ordered distribution, the program would throw an IndexOutOfRangeException after the last Pokemon was sent.
- Initial Release
Last edited by codemonkey85; Dec 12th, 2013 at 02:16 PM. Reason: Release 1.4
Shiny˛ is a refresh of ShinyGTS and ShinyDTS. It is an emulator (or spoofing program) for the in-game Global Trade Station (GTS) in Generation IV [Diamond, Pearl, Platinum, HeartGold, & SoulSilver] and Generation V [Black & White] games. It allows a user to send Pokemon to and from their game, or for some people, host distributions (unmanned!).
1) Unzip contents to a folder
2) Run Shiny2.exe
3) GTS Operations Tab
- Set if you are distributing or receiving
- On what game(s)
- For Distributing, set the Mode
- Individual - Distribute only ONE (1) Pokemon
- Folder - Distribute, in order, an entire folder's contents of Pokemon
- Randomized - For Folder Distribution, will randomize the order of which the Pokemon are distributed
- For Receiving, set the folder to save Pokemon to
3) DNS Settings Tab
- If you are distributing to YOURSELF, make sure you LOCAL IP (e.g. 192.168.0.100) is in the IP box. You may find this my going to Command Prompt (cmd) and running "ipconfig". Your Local IP is your IPv4 IP (unless you're not going through a router, special case).
- If you are distributing to OTHERS, make sure your PUBLIC IP is in the IP box. That should be auto-detected. In SOME cases, detection may not be accurate. You may check your Public IP at http://www.canyouseeme.org/
4) Extra Options Tab
- Log to File - Self-explanatory
- Extra GTS Jargon - Logs verbose (more complex) stuff as well. Generally for those that like messy stuff or for debugging purposes
- Browser Message - Set a message to be displayed when a user visits your IP in their Browser
5) Run Tab
- Remember to hit BOTH Initialize DNS and Initialize GTS!
- Clear DNS flushes the DNS Log on the right
- Clear GTS flushes the GTS Log on the right
6) Remember to hit Save Settings for all tabs should you make any changes!
~For more information on connecting your DS to a fake GTS DNS Server, please watch the following video~
^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^
1) This program automatically creates logs within the application directory. dns_log.txt logs the DNS section, gts_log.txt logs the GTS section.
2) [Public Distributions] You can set a browser message to be displayed if someone visits your IP in their browser. If not set, it displays interesting information you may want to look at. This feature may come in handy for testing if a server is running.
3) This program also saves your previously set settings, so you don't have to reapply them on the next start.
Troubleshooting / Questions
• My Anti-Virus says this is a virus!
Mine doesn't. Neither should anyone's. Go get a proper Anti-Virus. VirusTotal Scan: https://www.virustotal.com/file/728c...is/1335473766/
• I'm receiving the error message "The application failed to Initialize properly" when attempting to start the program!
You need to install .NET Framework 4.0 for this program to run.
• I'm receiving the error message "An attempt was made to access a socket in a way forbidden by its access permissions" when attempting to start the GTS!
You are running something that is conflicting with the program. Shut down all other applications and try again (e.g. TeamViewer)
• I'm having issues starting the DNS!
Make sure no other application is using Port 80. Examples of such applications are Skype and Apache Web Server.
• Connections to the program fail!
Make sure Port 80 (TCP) and Port 53 (UDP) are OPEN on your computer. That may not be enough! Check your Router settings as well. If possible, get your Router to Port Forward the aforementioned Ports to the computer hosting the server. Here's a site to check if your Ports are open, and here's a site to learn how to Port Forward.
• Where do I get the .pkm files for loading?
.pkm files can be found all over the forum. Use the search tool! Alternatively, you may be able to find .pkm files for free (provided they are made public) over at PokeCheck.org
• WHAT is a .pkm file?
A .pkm file is essentially Pokemon data. It is the backup (or at times, a creation or edit) of that Pokemon on your game. Having it as a file allows easier trading, easier storage, and does not affect the legality of your Pokemon in any way.
• My downloaded Pokemon is corrupt! It has a ball capsule or other restriction that prevents it from being deposited in the PC, or messed up stats!
Make sure your Pokemon is downloaded to your PC next time (not full party) or is Party Sized (236 bytes for 4th Gen, 220 bytes for 5th Gen). PokeGen is able to save Pokemon in Party size.
• How do I make .pkm files?
Use PokeGen to make .pkm files. It's simple and easy to use. A guide for 5th Gen is here too!
• What are some running DNS Servers?
- The Global Terminal (Run by me, RoC. Distributes Events, RNG'd and Shiny Pokemon)
- PokeGTS.us (aka Pokemon Selector, Run by willaiem. Provides a selection of Pokemon available for download. Also allows you to upload a Pokemon from your computer to your game using the site, and allows editing of Pokemon)
- PokeCheck.org (aka the GTS stats checker, run by xfr. Allows you to download/upload Pokemon from your computer AND game, as well as view their information. Doubles up as a legality checker)
I am incredibly impressed by this. It looks really great.
Sleek and efficient, great job guys! Are you planning on adding in features from the old Distribution System, such as a chat and search engine? I'm sure there's a few clans who might love this.
Might be referring to the Global Distribution System, which did have a chat and search function.
Interesting. I didn't use that one, so I didn't know.
Wouldn't be a bad idea. Could possibly even implement a server listing directory, something like Pokemon Online's server list.
Hey, I'm sort of a newbie to this whole GTS transferring thing, and I'm kind of confused on how to do it. I can get to the point where I have a .pkm file of the one I want (for example I made a Vaporeon I would love to use for competitive battling) however along the way something screws up as to where it doesn't get on my game.
So say I want to send the Vaporeon to my own Pokemon Black game, what steps do I need to take with this program? I'll list out my steps for my attempt and maybe you can tell me what I did wrong.
1. On the GTS Operations screen I chose Distribute, Black and White, Individual mode, and then browsed for the .pkm file of my Vaporeon
2. On DNS settings I type in the IP address that I got from ipconfig
3. Extra Options I did nothing
4. On Run! I initialized both
and then on my DSi.... I went to the Internet settings and types in for both of the DNS codes my IP from ipconfig and saved the settings
Then I went in game to the GTS and connected, however it was just the normal GTS and I didn't recieve my Vaporeon.
So hopefully you can tell me what I did wrong, or if I'm even understanding correctly what this is to be used for. Sorry, I'm a newbie like I said so there may be some stupid mistake I made. I think it's probably something to do with the IP.
My IP address is 192.168.xxx.xxx, at least that's the one listed in my ipconfig and that's the one I used for my DSi.
When I tried using my external IP in my DSi it wouldn't pass the connection test, so kind of at a loss for what to do.
As for being connected for the same network, I wouldn't know... any way to find out?
By the way, thanks for the reply. Didn't really expect to get one so quickly.
Ah wait, hold on, I figured it out. Turns out I was using the wrong IP... I was using the one for Default Gateway rather than IPv4. Figured it out, got my Pokes, and everything worked great. My fault on not reading your instructions properly.
Okay um, one more problem (and I know I've edited this post like a thousand times already)... when I transfer my Pokemon to the game through the GTS, it recieves them at the correct level but they are fainted with 0hp and 0 all stats. I can use a rare candy on them any them go to level 1 with the correct stat boosts however. I'm wondering if this is supposed to happen or if you know any way I could possibly fix this.
Last edited by coles1; May 26th, 2012 at 02:59 PM.
Hi there, first off I just wanted to say thanks for such an awesome program, I love it! I had a question about the "Browser Message" in Extra Options. I saw all of the variables that were in there that can be used, but I was wondering what else I can put in there? Will regular HTML work or does it have to be something different? Thanks!
Ok I successfully got this working. First off, good job its awesome. It's giving me the possibility for a pokemon type league on a site i use where people can have teams with same stats pokemon to show more skill.
Could we possibly have a way to both recieve, AND distribute, and possibly even a way for people to decide which pokemon they recieve when they connect?