Jump to content

Recommended Posts

Posted (edited)

The Global Distribution System is a combination of applications designed to make sending Pokemon to people relatively simple. There are a total of 3 separate parts to the program:

Part 1: The Global Trade Server (v1.03).

The Global Trade Server is a slightly modified version of HyperGTS v1.01 (By Madaruwode) designed to be compatible with the various interactions that the GDS requires it to have, such as checking for reservations and keeping track of the Pokemon to be sent.

The GTS itself has two separate modes: Receiving Mode and Distribution Mode.

Receiving Mode is where the server allows people to upload a Pokemon right from their DS (it gets rejected so they can keep the original) and inject it right into the Search Engine of the Global Distribution System, allowing people to download it. If someone has a reservation, and the server is in Receiving Mode, they are still allowed to get their reservation (but after that, if they revisit without a reservation, they will get the upload screen).

Distribution Mode has three separate modes:

1) Send one Pokemon: Straight forward. Sends out one Pokemon. Period.

2) Ordered Directory Distribution (O.D.D.): Sends out an entire folder, one Pokemon at a time and advances the current Pokemon after each connection. When it goes through the entire folder, it starts back over at the beginning.

3) Random Directory Distribution (R.D.D.): Sends out an entire folder in a randomized fashion.

Part 2: The DNS Server (v0.4)

The DNS Server is a modified version of DNS Server v0.3 (by M@T) to be compatible with the GDS. There were quite a few changes to the code to remove implicit conversions to speed it up as well as removing pieces that were obsolete (to what the GDS required at least).

Part 3: The Global Distribution System (v1.3 Alpha)

The Global Distribution System is a completely custom written piece of software that is the backbone of the entire system. It runs the Search Engine for the downloadable Client, the chat room used for the client, manages reservations and the uploading of custom Pokemon. The System itself also wraps around a custom C# wrapper (affectionately named PokeHack, written by a friend of mine) to read individual .PKM files and extract further details from them (such as IV's, EV's, stats, current level, and more), providing the client with personal details of each Pokemon file so the user can choose which Pokemon they want to download. The system will also allow users to report Pokemon that are bogus/bad/blatantly hacked.

To Do List:

1) Allow the client to download .PKM files directly.

2) Allow clients to perform direct edits on .PKM files to create a 'custom' Pokemon [Legitimacy passing is another thing entirely].

3) Bug fixing the client to not show yourself twice in the user list

4) Add a 4th distribution mode to the GTS where a Pokemon is given out for a specific amount of time, then another is given out (include support for O.D.D. & R.D.D. modes).

5) Actually get the report class finished (it's just a blank class right now)

6) Finish up several administrative interfaces for the server side.

7) Clean up blocks of code and comment more areas of code for other readability.

All the projects (there are a few DLL's, the Client and Server) were developed in Visual Studio 2010 using Visual Basic.NET and C#. The server requires (at minimum) the .NET Framework v3.5, while the Client requires .NET Framework v2.0

Check back periodically for more updates.

EDIT: Licensed this under the GNU GPL. I'll be updating the source files later with the proper headers...I'm pushed for time at the moment.

EDIT 2: Updated zip file with appropriate file headers.

EDIT 3: Removing the compiled version since the Client would never work properly due to the fact the IP it connects to is hardcoded in :frown: Yay me.

EDIT 4: NEW VERSION! WOO

Changelog:

HyperGTS now used for a GUI front, GTS portion ported to VB.net by a friend and manipulated by me

Several coding fixes.

Still no reporting class in :(

A few forms for managing the system.

Directly download Pokemon files to the computer.

...probably more that I missed, no idea.

GTS Binaries.zip

GTS Source.zip

GTS Binaries.zip

GTS Source.zip

Edited by formlesstree4
  • 2 weeks later...
  • 2 weeks later...
Posted

Thank you shiny quagsire. I plan on updating this system again soon, bug fixing the client (it's a mess sometimes still if it doesn't get what it wants) as well as a possible net code library to allow linking of multiple servers together which would involve the rewriting of a few parts to allow for searching and requesting to link across multiple servers. I'll need some testers for that to happen but would anyone be interested?

  • 4 weeks later...
Posted

I have a question.

Okay, I want to distribute pokemon online without going in wifi with my HG game.

I also wanted to know, do you have to pay for this? lol.

Also, is it okay to keep it on for multiple hours? What's the max you can keep it open?

Okay. I started Hyper GTS, uploaded a .pkm file(but it said Pokemon sent:0), and started both the DNS and GDS servers. I copied the IP address to both the primary and secondary of the DS, but when I tested the connection, what came out was Error code 51300.

Okay, with the Start GTS button, I also tried just opening the DNS server, and when I tested the connection, it was green, but turned red and said Error code 52100. In the DNS log, it said "Got interrupt signal, aborting.." Any help with that?

Like above, with the Start GTS button, I tried just clicking the GDS server this time, and when I tested the connection, it was green, but turned red and said Error code 52100. This time, in the log, it didn't say there was an interruption.

Any suggestions? Did I upload the pkm file right? I made sure it was distribution mode.

Do I just either open the DNS, the GDS, or both?

Am I missing any other program?

I really want to distrubute pokemon without going in and out of the DS all the time.

Thanks for any help. ><

Posted

You need to start the GTS server, not the GDS server to distribute Pokemon. The GDS is an additional program to allow reservations to be distributed out via the GTS.

EDIT:

1) You do not need to pay for this, although I wouldn't mind a donation :P

2) It can stay on as long as you want it to. I ran the program for nearly three days straight without issues.

To successfully distribute a Pokemon, you need to have the DNS and GTS servers running. The GDS is optional.

Posted

Yes, I did in fact the DNS and GTS servers running.

It still has Error code 52100.

Do i use another IP Address than the default one?

If so, do you mind showing me how to get one? Thanks so much for replying. ><

Posted

The program automatically retrieves the proper IP address you need to insert in your DS. Make sure the DNS in your DS corresponds with the one in the box. If you're behind a router, make sure you have Port 80 and...I think it's 53 open to your PC's IP address. Also make sure all firewalls are disabled.

Posted

Do you happen to know how to see if you're router is port 80.. and how to locate/open port 53?

Sorry, I'm not a computer person, when I need help I turn to my sister, but right now she's in another country than me. :(

As for firewall, I have MacFee as a protection.. but no firewall. I have it on, so will that effect the server? Or do I have to leave it off?

Thanks again for the information!

Posted

Just downloaded your program and I think I found a bug or something. When I click start GTS everything works as it should, but when I stop it and start it again I get a System ObjectDisposedException. Only way I seem to be able to fix it is to restart the program other then that its pretty impressive.

Posted

i just can't figure how to even begin. i have it all unzipped ect. i just cant figure out how to send pokemon from my game to the program

Posted

all that ever happens is i sit in the "connecting to nintendo wifi" stage forever until a blue screen pops up and i have to turn it off

  • 4 weeks later...
Posted

Sorry this is so late...I'm probably done developing anything new for the GDS. If someone wants to take the source and modify it for working for B&W when possible they are free to. I do not have time as of now to keep supporting the project.

Any questions or comments may be sent via PM; sorry to anyone who was hoping for any new updates. There are a few bugs that are annoying at best but are fixable.

  • 1 month later...
Posted

every time i try to connect to the GDS with the client, i get this error:

---------------------------

Stack Trace

---------------------------

System.Exception: The server is offline or unavailable!

Copy this box by pressing Ctrl + C and post it for Shiny Jirachi to see.

---------------------------

OK

---------------------------

anyone able to use it without problems who can help me? i'm trying to connect from one PC to another internally. i tried sending a poke to my DS and had no issue, so it's something just just the GDS part. does it use another port besides 53 and 80? although, that shouldn't matter because i'm behind my NAT/firewall.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...