About Pirate Commodity Trader with Bleach
PCTB is an AJAX web application
and a Windows data collection utility.
It uses:
- Prototype
- A Javascript framework, or possibly an extension to the Javascript language.
I am unwisely using a version of 1.5.0 I pulled down from SVN and made random modifications to.
PCTB uses Prototype's AJAX library and language enhancements ($, Enumerable.each, getElementsByClassName, etc)
extensively. It makes working with Javascript so much better. /me hugs Prototype
- JSON
- Javascript Object Notation is, in my opinion, an excellent way to send data around.
I use a tiny bit of code (a regular expression) from the javascript library on that site.
- A simple cookie script
- A combo box script
- PHP
- This is the language I use on the backend. For the database I use
Pear MDB2, which is nice to work with.
- Signet Studios' Webspace
- Signet Studios is a Christian software development house. They had some extra room on their
web server, which I'm using for PCTB. Other than the fact that they host my application,
I have no relationship with Signet.
- FreeDNS
- A subdomain you can redirect is the next best thing to a domain name, and FreeDNS gives them
out for free. Of the tens of thousands of domains available for subdomains, crabdance.com is one
of the domains owned by the administrator.
- Borland Turbo C++ Explorer
ppaocr, the OCR/upload client, is written using the modern Turbo C++. Though the
OCR has to make direct Win32 API calls, using Borland's library to usually hide the API is a
Good ThingTM.
- zlib compression library
- The upload client uses zlib code to compress data before sending it to the server, helping
to ensure uploads are as quick and cheap as possible.
Acknowledgments
Many thanks and apologies go to Bemis.
Pirate Commodity Trader with Bleach is based on Bemis'
Pirate Commodity Trader.
I didn't use any of Bemis' code, although I would have if he had released it.
I did use PCT's commodity database, I'm glad I don't have to
collect that by hand. More importantly, I used PCT's concept. If Bemis hadn't made the system
to show that it was possible, I don't think I would have made PCTB.
The PPAOCR client is based on Ouroborus' OCR tool. If this tool hadn't been released I
definately would not have tried to write it. Thanks, Ouroborus!
KingOfZeal is responsible for the hosting of PCTB. When I described my setup he offered
the bit of hosting he had available. When I finally got tired of looking at ads (it took about
a week) he helped me set PCTB up at the new server.
About the Developer
In-game I'm Gorondo;
outside I'm Gord Pollock. I'm a software developer who is, ahem, between
jobs. I'm currently located in Oshawa, Ontario, Canada (a little east of Toronto).
I wrote PCTB to keep me sane, and to teach myself AJAX. I love coding, and I think I'm fairly
good at it. If you have questions about PCTB please contact me by posting to the
discussion or tech support forum. My GMail address is my name; use it to send other correspondance
(such as offers of employment, or if you are a randy female who thinks web developers are hot,
requests to bear my children, or other.)
About the Code
Download the code for PCTB/PPAOCR.
The code is written in Javascript, PHP, and C++. It is released under a free MIT-style
license. While you don't have any legal obligations when using this code, the author requests
the following:
- Users of the code should include some sort of attribution to me somewhere. If you only used a bit
of my code it doesn't need to be on the front page.
- If you are collecting data from Puzzle Pirates using this code, please
make the data available publicly.
- Don't start a new server unless this server becomes unusable.
- Improvements should be contributed back to the community.
- Hire me!
About the name
- Why is it called Pirate Commodity Trader with Bleach? What does bleach have to do
with anything?
- /me is trying to live up to his Neptune ascendant.
- /me firmly believes that oblique
references make the world a better place.
- Theorizing on this subject is welcome in the discussion forum. Confirmation of correct
guesses may be withheld at Gorondo's whim.