From the ground up, Shoddy Battle has been designed to run on
multiple platforms — Microsoft Windows, Apple's Mac OS X, GNU/Linux,
and others. We have realised this goal by writing the program in the
Java programming language. Java has also made it easy for us to write
the program in such a way that each section of the logic is separate
from other parts — for example, somebody hoping to modify the metagame
does not need to understand how the online communications work.
Unlike some other pokemon
simulators, you are fully entitled to view the source code, to modify
it to your needs, to redistribute it as you see fit, and to run it for
whatever purpose you like, so long as you pass these freedoms on to
others. Shoddy Battle's commitment to freedom results in numerous
practical advantages:
- Security is improved because open design prevents the proliferation of poor designs (e.g. "SIDs") that suffer from the trusted client problem.
- The simulator can be intimately customised for whatever metagames you have imagined, however elaborate.
- The project will outlive its original developers, so that a large rewrite is not required eventually.
- With more people free to work on the project casually, problems will be solved faster.
With
little programming, Shoddy Battle allows the creation of new moves,
items, and pokemon. With slightly more programming, it is possible to
create any sort of metagame. Because the program is
freeas in freedom, no aspect of the server is closed down to you. We do not
make decisions for you. If you would like to play without critical
hits, you can easily do that on your own server.
Shoddy Battle implements
most of the Advance (Ruby/Sapphire/Emerald) and Jewel (Diamond/Pearl)
metagames at present. Of course, you can customise the metagame however
you like thanks to the freedoms offered to you by the project.
To get started,
download the client and connect to a server. Or, if you are interested in running a server, check
here to get started. You can also checkout the current source code
from the
repository; it can be
viewed online as well.