Programming Compendium Generator

approved by NixHex

Compendium Generator v1.2
(last updated on July 14, 2015)

Please read the statement about some virus scanners falsely detecting this as malware, in the second post. (I can only promise you that I wouldn't risk my smogon account and sabotage the work I've put into this project by making it harm your computer. :\)

Download [Link]: Windows Executable. Either as .rar or .zip Archive.

Any of the top 4 files will do. Unpack them somewhere the program can write and create files, no installer is required.
The _NoImageDownload version is an attempt at getting less false positives from Antivirus software. The only difference is that when importing Compendiums, usually the program would download and display any unfamiliar images, then ask you what they are. With this version, you'd have to manually click the link and it opens in your webbrowser.

What does it do? It's an editor for Teambuilding Compendiums and Viability ratings (anything that uses minisprites), with a lot of tailored extras:
  • Autocomplete. Start typing a few letters of a pokémon name and hit the tabulator key. The Program will complete the name and insert the corresponding image at that position. For non-unique name sections, hit the tabulator Key again. For example, 'char' will become Charizard-Mega-X, then Charizard-Mega-Y on the next press. (The autocomplete list is vaguely sorted by viability ratings.)
  • Import from BBCode and Image Cleanup. This will import the forum's BBCode into a more readable format and replace all images used in a given Compendium with a single source (Currently Serebii.net). Most of the major components out there are copy-pasted from all over the internet, and looking at their BBCode is not a pleasant experience currently. Also note that the imported version is computer-friendly, so if you want to use the OU Checks Compendium to let a program check a team for weaknesses or even do some automated teambuilding, this might help.
  • Export to Html, Png and BBCode. The html export is of particular interest. It loads much faster than a smogon page with a few hundred images, and you can link to each heading individually (i.e. Bisharp Checks). You also get mouse-over text with the pokémon names, and the pokémon name is put into the picture's alt attribute; so you can select a portion of the Compendium and copy it over into the chat at play.pokemonshowdown.com.
  • Apply Banlist. Filters a compendium by deleting all lines that contain a given banprase or list of banphrases. For example, you coulda remove Landorus-i from a very long compendium after its ban from OU. Or remove all OU mons from an OU compendium to see what UU switch ins there are to something. A Pokémon about to be deleted from a Compendium will be crossed out but still visible in Png Export. (Example.)
  • Split into files. Just a small feature to use the headings (bold, italic or underlined text) to split a compendium into single files. Only useful for developers, really. In case you want to import a list of 'Latios Checks' or 'Viable Rock Setters in OU', without parsing the corresponding Compendiums.
How to use it (Example):
0. Optional: Find a compendium to import. (On Smogon or any another Forum that uses BBCode.) For Example:
Hit 'Reply' and 'BBCode Editor', then open CompGen and click 'Import Compendium (BBCode)'. Copy and Paste the Compendium into the Box that opens, and hit 'Import'.​
[lMG]serebii.net/pokedex-xy/icon/142-m.png[/IMG] [.B][.U]Mega Aerodactyl Checks[/U][/B]
GSI: [lMG]serebii.net/pokedex-xy/icon/302-m.png[/IMG] [lMG]serebii.net/pokedex-xy/icon/036.png[/IMG] [lMG]serebii.net/pokedex-xy/icon/080-m.png[/IMG] [lMG]serebii.net/pokedex-xy/icon/080.png[/IMG] [lMG]serebii.net/pokedex-xy/icon/450.png[/IMG] [lMG]serebii.net/pokedex-xy/icon/227.png[/IMG] [lMG]serebii.net/pokedex-xy/icon/260-m.png[/IMG] [lMG]serebii.net/pokedex-xy/icon/195.png[/IMG] [lMG]serebii.net/pokedex-xy/icon/245.png[/IMG] [lMG]serebii.net/pokedex-xy/icon/594.png[/IMG] [lMG]serebii.net/pokedex-xy/icon/233.png[/IMG] [lMG]serebii.net/pokedex-xy/icon/437.png[/IMG] [lMG]serebii.net/pokedex-xy/icon/423.png[/IMG] [lMG]serebii.net/pokedex-xy/icon/306-m.png[/IMG] [lMG]serebii.net/pokedex-xy/icon/110.png[/IMG]
SSI: [lMG]serebii.net/pokedex-xy/icon/376-m.png[/IMG] [lMG]serebii.net/pokedex-xy/icon/472.png[/IMG] [lMG]serebii.net/pokedex-xy/icon/645-s.png[/IMG] [lMG]serebii.net/pokedex-xy/icon/530.png[/IMG] [lMG]serebii.net/pokedex-xy/icon/598.png[/IMG] [lMG]serebii.net/pokedex-xy/icon/212-m.png[/IMG] [lMG]serebii.net/pokedex-xy/icon/385.png[/IMG] [lMG]serebii.net/pokedex-xy/icon/395.png[/IMG] [lMG]serebii.net/pokedex-xy/icon/464.png[/IMG] [lMG]serebii.net/pokedex-xy/icon/248-m.png[/IMG] [lMG]serebii.net/pokedex-xy/icon/638.png[/IMG] [lMG]serebii.net/pokedex-xy/icon/680.png[/IMG]
NSI: [lMG]serebii.net/pokedex-xy/icon/184.png[/IMG] [lMG]serebii.net/pokedex-xy/icon/445.png[/IMG] [lMG]serebii.net/pokedex-xy/icon/479w.png[/IMG] [lMG]serebii.net/pokedex-xy/icon/248.png[/IMG] [lMG]serebii.net/pokedex-xy/icon/473.png[/IMG] [lMG]serebii.net/pokedex-xy/icon/141.png[/IMG] [lMG]serebii.net/pokedex-xy/icon/230.png[/IMG] [lMG]serebii.net/pokedex-xy/icon/646-b.png[/IMG] [lMG]serebii.net/pokedex-xy/icon/639.png[/IMG] [lMG]serebii.net/pokedex-xy/icon/212.png[/IMG] [lMG]serebii.net/pokedex-xy/icon/160.png[/IMG] [lMG]serebii.net/pokedex-xy/icon/319-m.png[/IMG] [lMG]serebii.net/pokedex-xy/icon/342.png[/IMG] [lMG]serebii.net/pokedex-xy/icon/494.png[/IMG]
Code:
142-m        | Aerodactyl-Mega   |
[B][U]Mega Aerodactyl Checks[/U][/B]
Newline
GSI:
302-m        | Sableye-Mega      |
036          | Clefable          |
080-m        | Slowbro-Mega      |
080          | Slowbro           |
450          | Hippowdon         |
227          | Skarmory          |
260-m        | Swampert-Mega     |
195          | Quagsire          |
245          | Suicune           |
594          | Alomomola         |
233          | Porygon2          |
437          | Bronzong          |
423          | Gastrodon         |
306-m        | Aggron-Mega       |
110          | Weezing           |
Newline
SSI:
376-m        | Metagross-Mega    |
472          | Gliscor           |
645-s        | Landorus-Therian  |
530          | Excadrill         |
598          | Ferrothorn        |
212-m        | Scizor-Mega       |
385          | Jirachi           |
395          | Empoleon          |
464          | Rhyperior         |
248-m        | Tyranitar-Mega    |
638          | Cobalion          |
680          | Doublade          |
Newline
NSI:
184          | Azumarill         |
445          | Garchomp          |
479w         | Rotom-Wash        |
248          | Tyranitar         |
473          | Mamoswine         |
141          | Kabutops          |
230          | Kingdra           |
646-b        | Kyurem-Black      |
639          | Terrakion         |
212          | Scizor            |
160          | Feraligatr        |
319-m        | Sharpedo-Mega     |
342          | Crawdaunt         |
494          | Victini           |
1. Edit the Compendium
Anything you can type in on the forums will work here as well. In Addition:
  • Type 'newline' to get a linebreak. The Enter key is just for formatting and will not change the output.
  • Type part of a Pokémon Name and press tab to insert its minisprite image. (Press tab multiple times if there's several mons whose name includes the letters you typed.)
  • Press 'Export to html File' to get a quick view of how the compendium will look on the forums. (You can also just save and upload that html file from the browser it opens in. It will load a lot quicker and can be linked on Smogon rather than posting the Compendium there directly if load time is an issue.)
2. Export the Compendium to post it on the forums.
Just click the 'Copy BBCode to Clipboard' Button, switch to your Browser and press Ctrl + V.
 
Last edited:
Index: Here is the program's HTML output for some of the best Compendiums I've found on Smogon. They're easy to link, load quickly, and you have everything in one place if you just bookmark that link.
(Feel free to pm me about any good Compendiums to be added that you have found anywhere on the Nets. Also for the 'Teams on Ladder' OU Compendium you can pm me any teams you see in the top 50; ideally always several at a time, just the names of all 6 and which is the mega, together with the peak rank #.)

The Corresponding Generator files can be found here.

About false positives and Antivirus Software. Unfortunately I had to find that some of the virus scanners listed on virustotal.com give false positive reports for CompGen. (Link to the virustotal scan.) This is a problem all minor software developers have to deal with. If you're a bigger project, you can get your programs signed and whitelisted. Otherwise, sometimes they will share some signatures (patterns of 1s and 0s) with malware. Basically this may mean I'm using the same compiler as they are, and maybe I'm using some code bits from the internet that they're using too.
In any case, there's a certain amount of trust involved here since you're executing an Exe file I provided. I'm providing the source code too, but unless you compile it yourself I'm afraid there's no way to be certain except to run it inside a sandbox program.
There's also the problem that some (few) antivirus programs may delete it on sight and not let you use it. If this is the case for you, please contact me; I'll have to write to the individual vendor and report the false positive. I've tried it before, and they were quick to respond but I'm guessing I''ll have to write them once for every version I make.
 
Last edited:

Users Who Are Viewing This Thread (Users: 1, Guests: 0)

Top