v50 Steam/Premium information for editors
- v50 information can now be added to pages in the main namespace. v0.47 information can still be found in the DF2014 namespace. See here for more details on the new versioning policy.
- Use this page to report any issues related to the migration.
This notice may be cached—the current version can be found here.
Editing 40d:Utilities
Jump to navigation
Jump to search
Warning: You are not logged in.
Your IP address will be recorded in this page's edit history.
You are editing a page for an older version of Dwarf Fortress ("Main" is the current version, not "40d"). Please make sure you intend to do this. If you are here by mistake, see the current page instead.
The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision | Your text | ||
Line 1: | Line 1: | ||
− | |||
− | |||
Here are third party applications developed for Dwarf Fortress. | Here are third party applications developed for Dwarf Fortress. | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
== Movies, Screenshots, Map Files == | == Movies, Screenshots, Map Files == | ||
Line 47: | Line 15: | ||
Read more about the [[User:Markavian/DF_Map_Archive|DF Map Archive]] on Markavian's User page. | Read more about the [[User:Markavian/DF_Map_Archive|DF Map Archive]] on Markavian's User page. | ||
− | === | + | === CMVPlayer === |
− | + | [http://www.geocities.com/jifodus/CMVPlayer.zip Download CMVPlayer.zip] | |
− | + | First released by Jifodus in April 2007. This application enables playback of the DF movies (.cmv) without starting DF. It also provides some more functionalities, such as : | |
+ | * Rewind | ||
+ | * Pause | ||
+ | * Play frame per frame | ||
− | + | To use, simply unzip the file, and drop and drag the movie on CMVPlayer.exe. | |
− | |||
− | |||
− | == | + | === 3Dwarf Visualizer - a tool to view maps in 3D === |
+ | *[http://www.bay12games.com/cgi-local/ultimatebb.cgi?ubb=get_topic&f=2&t=001450 Bay12Forums Thread] | ||
+ | This is NOT realtime, that is still a long, long way off. | ||
+ | What this does is read the map out of your computer's memory when DF is running and save it to a file it can read. It can then open that file and show you your fort in glorious 3d. | ||
+ | Still in beta, obviously. | ||
− | === [http:// | + | === Dwarvis / MapExtract === |
+ | *[http://code.google.com/p/dwarvis/ dwarvis on Google Code] | ||
+ | This project is meant as a 3rd party utility for the cult-game dwarf fortress. Its purpose is to eventually provide 3-dimensional visualization of static snapshots of the ingame world of a given fortress. | ||
− | + | === Terrain Visualizer - view worldmaps in 3D === | |
+ | This utilizes version 0.28.181.39d's built in Legends Mode map exporter and a generic HeightMap terrain visualizer. Nothing super fancy, but neat to look at. | ||
+ | Get the [http://www.alpix.com/3d/TerrainViewer/ 3D Terrain Viewer] here, follow the instructions in the [http://www.bay12games.com/forum/index.php?topic=21468 Bay12Forums Thread] if you need help getting set up. | ||
− | + | Or if you want super pretty maps, [http://www.bay12games.com/forum/index.php?topic=21469.0 see this topic], and get [http://www.planetside.co.uk/terragen/download.shtml Terragen]! | |
− | + | === Dwarf Fortress File Depot === | |
+ | *[http://dffd.wimbli.com/ The Dwarf Fortress File Upload Service], an excellent place to store mods, community games, tilesets and other files. Courtesy of [http://www.dwarffortresswiki.net/index.php/User:Janus Janus]; for files related to Dwarf Fortress only. | ||
− | === [ | + | == Dwarf Companion == |
+ | The [[User:Bartavelle/DwarfCompanion|Dwarf Companion]], created by [[User:Bartavelle|Bartavelle]] is a graphical helper utility for dwarf fortress that aims to fill the gaps in the user interface. It allows for some nefarious cheating. For example, you can now mark your nobles as butcherable, and change possessed dwarves to fey moods. | ||
− | + | == [[User:Rick|Rick]]'s utilities == | |
− | + | Fabulous tools made by the marvelous Rick. All Hail Rick! | |
− | + | === [[User:Rick/Tweak|Gibbed's Dwarf Fortress Tweak]] === | |
− | Dwarf | + | A toolset with many modules for tweaking / editing Dwarf Fortress memory. [[User:Rick/Tweak|Check the full article for more details]]. |
− | === [http://www.pavlovian.net/foreman/ | + | == Dwarf Foreman == |
− | + | [http://www.pavlovian.net/foreman/ Home page]. Makes switching jobs on and off for large numbers of dwarves simple. Dwarves are grouped by their profession, or custom profession if they have one. By clicking on the graph you can enable any job for all dwarves with that profession. Still in alpha for this version of DF, if it doesn't recognize one of the new professions, check the file '''debug.txt''' in the directory you run foreman from. | |
− | Makes switching jobs on and off for large numbers of dwarves simple. Dwarves are grouped by their profession, or custom profession if they have one. By clicking on the graph you can enable any job for all dwarves with that profession. Still in alpha for this version of DF, if it doesn't recognize one of the new professions, check the file '''debug.txt''' in the directory you run foreman from. | ||
Though prone to crashing currently, saving and exiting DF, starting foreman and then starting DF again will usually get it working again. Zorba would also appreciate it if you'd email him the crash log located in the Dwarf Foreman directory when this happens (zorba-foremancrash@pavlovian.net). | Though prone to crashing currently, saving and exiting DF, starting foreman and then starting DF again will usually get it working again. Zorba would also appreciate it if you'd email him the crash log located in the Dwarf Foreman directory when this happens (zorba-foremancrash@pavlovian.net). | ||
Dwarf Foreman currently allows you to change the jobs of visiting merchants, outpost liaisons, children, and any other dwarves that aren't normally controllable. It is unsupported but occasionally hilarious, and allows you to finally put those lazy dwarven children to work. | Dwarf Foreman currently allows you to change the jobs of visiting merchants, outpost liaisons, children, and any other dwarves that aren't normally controllable. It is unsupported but occasionally hilarious, and allows you to finally put those lazy dwarven children to work. | ||
+ | |||
+ | This handy utility would be an ideal complement to an updated LabourDF. | ||
Source code is available. | Source code is available. | ||
+ | ---- | ||
+ | To make Foreman compatible with '''v0.27.168.33g''', download the new version and update the config file as shown below. - [http://forums.somethingawful.com/showthread.php?threadid=2677834&userid=0&perpage=40&pagenumber=74#post337422833 Originally posted by Mu.] | ||
+ | <pre>check=008c407c | ||
+ | critter_start=01427B50 | ||
+ | dwarfidpos=01248AC8 | ||
+ | profession_start=45c</pre> | ||
− | To make Foreman compatible with '''v0. | + | To make Foreman compatible with '''v0.27.173.38a''', update config file as shown below. |
<pre> | <pre> | ||
− | check= | + | check=01E30A43 |
− | critter_start= | + | critter_start=01450E98 |
− | dwarfidpos= | + | dwarfidpos=01271E10 |
− | profession_start= | + | profession_start=45c |
</pre> | </pre> | ||
− | ''' | + | To make Foreman compatible with '''v0.27.176.38a''', update config file as shown below. |
+ | <pre> | ||
+ | check=023401d3 | ||
+ | critter_start=01463378 | ||
+ | dwarfidpos=01284188 | ||
+ | profession_start=480 | ||
+ | </pre> | ||
− | + | To make Foreman compatible with '''v0.27.176.38b''', update config file as shown below. | |
+ | <pre> | ||
+ | check=01e3dbcc | ||
+ | critter_start=01463570 | ||
+ | dwarfidpos=01284188 | ||
+ | profession_start=0470 | ||
+ | </pre> | ||
− | + | To make Foreman compatible with '''v0.27.176.38c''', update config file as shown below. Use the [[Talk:Utilities#Dwarf Foreman|talk page]] if it doesn't work. | |
+ | <pre> | ||
+ | check=01cf4654 | ||
+ | critter_start=01464570 | ||
+ | dwarfidpos=01285188 | ||
+ | profession_start=0470 | ||
+ | </pre> | ||
− | + | To make Foreman compatible with '''v0.28.181.39a''', update config file as shown below. Use the [[Talk:Utilities#Dwarf Foreman|talk page]] if it doesn't work. | |
+ | <pre> | ||
+ | check=01aa9d3a | ||
+ | critter_start=015124f4 | ||
+ | dwarfidpos=0131f1b8 | ||
+ | profession_start=0474 | ||
+ | </pre> | ||
− | + | To make Foreman compatible with '''v0.28.181.39b''', update config file as shown below. Use the [[Talk:Utilities#Dwarf Foreman|talk page]] if it doesn't work. | |
+ | <pre> | ||
+ | check=01a16957 | ||
+ | critter_start=015134f4 | ||
+ | dwarfidpos=013201b8 | ||
+ | profession_start=0474 | ||
+ | </pre> | ||
− | + | To make Foreman compatible with '''v0.28.181.39c''', update config file as shown below. Use the [[Talk:Utilities#Dwarf Foreman|talk page]] if it doesn't work. | |
+ | <pre> | ||
+ | check=01b89dbc | ||
+ | critter_start=01513514 | ||
+ | dwarfidpos=013201d8 | ||
+ | profession_start=0474 | ||
+ | </pre> | ||
− | + | To make Foreman compatible with '''v0.28.181.39d''', update config file as shown below. Use the [[Talk:Utilities#Dwarf Foreman|talk page]] if it doesn't work. | |
+ | <pre> | ||
+ | check=01b0747e | ||
+ | critter_start=0151f93c | ||
+ | dwarfidpos=0132c1e0 | ||
+ | profession_start=0474 | ||
+ | </pre> | ||
− | === [[ | + | == StartProfile == |
+ | Jifodus wrote a little utility that lets you maintain profiles of your starting dwarves. | ||
+ | Works for versions 0.27.169.33b, 0.27.169.33c, 0.27.169.33d, and 0.27.169.33e. Check the readme to find out how to switch between the different versions. If you wish to patch the executable yourself, please check [[Talk:Utilities#StartProfile|the utilities talk page]]. | ||
− | + | [http://www.bay12games.com/cgi-local/ultimatebb.cgi?ubb=get_topic&f=2&t=001367 Discussion thread] | |
− | + | Obsolete: [http://www.geocities.com/jifodus/StartProfile.zip StartProfile utility] | |
− | + | [http://www.geocities.com/jifodus/dfufend.zip StartProfile utility] | |
− | + | Incidentally, if you try this utility, please report success/failure in [[Talk:Utilities#StartProfile|the utilities talk page]]. | |
− | |||
− | |||
− | == | + | ---- |
+ | == [[User:0x517A5D|0x517A5D]]'s utilities == | ||
− | + | <b>Attention!</b> As the host site of these utilities is placing links to amateur pornographic videos on the download pages, these links are currently <b>Not Safe For Work!</b> Please see my [[User_talk:0x517A5D|User Talk]] page for discussion and a blanket permission to take care of this <strike>issue</strike> problem. Sorry about this. —[[User:0x517A5D|0x517A5D]] | |
− | |||
− | |||
− | === | + | === Enable Magma Buildings === |
− | + | Helper utility for Rick's reveal.exe<br/> | |
+ | [http://www.yourfilehost.com/media.php?cat=other&file=3935enable_magma_buildings.zip enable_magma_buildings.zip] | ||
− | + | You need this utility in the case that you used the reveal utility, and | |
+ | you had not yet discovered any subsurface magma. | ||
+ | (If the hide utility is ever updated, you could also hide a few magma | ||
+ | tiles and then dig them out. That worked in the old version.) | ||
− | + | Because there is no actual flag that controls whether magma has been seen | |
+ | (the game searches a list, probably a list of notable events), I had to | ||
+ | patch the game's code. This means you need to run the utility every time | ||
+ | you start dwarfort.exe. | ||
− | + | This utility has been made version-independent. | |
− | + | It is expected to work with future releases of Dwarf Fortress. | |
− | |||
− | |||
− | === | + | === Regional Prospector === |
− | + | For Dwarf Fortress 28.181.39a and newer: [http://www.bay12games.com/forum/index.php?topic=20643.0] | |
− | + | For older versions: [http://www.yourfilehost.com/media.php?cat=other&file=regional_prospector.zip regional_prospector.zip]''(Careful, download link contains images of pornography as ads.)'' | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | Dwarf Fortress 0.28.181.39d and newer implement the functionality of Regional Prospector, making it unnecessary. | |
− | |||
− | + | A simple but very helpful utility that shows hidden map features at embark time. | |
+ | If you're trying to find the perfect start location by repeatedly embarking and | ||
+ | revealing, give this one a shot! | ||
− | + | Map key: | |
− | + | :{{Raw Tile|≈|#F00|#AAA}} volcano; magma reaches the surface | |
+ | :{{Raw Tile|~|#F00|#AAA}} underground magma pipe or magma pool | ||
+ | :{{Raw Tile|≈|#00F|#AAA}} underground river | ||
+ | :{{Raw Tile|~|#00F|#AAA}} underground pool | ||
+ | :{{Raw Tile|#|#000|#AAA}} chasm | ||
+ | :{{Raw Tile|£|#0FF|#AAA}} adamantine and pits | ||
− | |||
− | + | This utility has been made version-independent. | |
+ | It is known to work with all releases from 32a to 33g. | ||
+ | It is expected to work with future releases of Dwarf Fortress, | ||
+ | as long as the embark code doesn't change too much. | ||
− | + | Discussion and kudos can be left [[User_talk:0x517A5D#Seekret_Projekt|here]]. | |
− | + | === Latitudes === | |
− | + | [http://www.yourfilehost.com/media.php?cat=other&file=latitudes.zip Latitudes] is a utility that, when on the embark map screen, shows the X/Y coordinates of the current region. Until Toady adds [http://www.bay12games.com/cgi-local/ultimatebb.cgi?ubb=get_topic&f=5&t=002191 proper support], this will do the trick. Works in .32a through at least .33g. Technical notes: uses memory injection, so it may be flagged as a suspicious file by anti-virus programs. | |
− | + | <!-- Temporarily withdrawn as I am experiencing crashes of DF when invoking the utility.<br/>—[[User:0x517A5D|0x517A5D]] 14:26, 31 December 2007 (EST) --> | |
+ | <!-- The bug I was experiencing was a regression in my development version. It | ||
+ | does not occur in the current release. So everything's okay. --> | ||
− | + | ---- | |
− | === [http:// | + | == Teleport == |
+ | [http://angband.org/~erasmus/df/teleport22.zip teleport22.zip] -- Teleport dwarves and other creatures | ||
− | + | Version 2.2 is <u>really</u> now independent of the DF version. (33c) | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
Caveat: The teleport utility does not correctly set the occupancy flag for map squares. As a results, dwarves will permanently crawl through the square that you teleported them out of. In addition, you cannot build structures in those squares. | Caveat: The teleport utility does not correctly set the occupancy flag for map squares. As a results, dwarves will permanently crawl through the square that you teleported them out of. In addition, you cannot build structures in those squares. | ||
− | === [http:// | + | == Water == |
+ | [http://angband.org/~erasmus/df/water.exe water.exe] -- Quick hack to refill ponds. Run this while your fortress is up, and it'll restore any "murky pool" tiles (i.e. the floor of ponds and lakes) to 7/7 water. If you've tunneled into a pond, it'll still refill but will flow out normally. | ||
− | + | Only works with version 33e due to its "quick hack" status. | |
− | + | Note: If there is lava in a murky pool, it will be raised to depth 7/7. | |
− | + | == Lava square == | |
+ | [http://angband.org/~erasmus/df/lavasquare.exe lavasquare.exe] -- Another quick hack to make a 7/7 unit of lava on the currently selected square. Ignore the random text it spams, as it was quickly adapted from a map query tool, and I didn't bother removing the print statements. | ||
− | + | Only works with version 33e. To hack this executable for a later version of dwarf fortress see the [[Talk:Utilities#Lavasquare|talk page]]. | |
− | + | 33g version plus autohotkey script: http://www.sendspace.com/file/xsl6gs --[[User:Jackard|Jackard]] 09:43, 13 January 2008 (EST) | |
+ | ---- | ||
− | |||
− | |||
− | |||
− | + | == [http://en.wikipedia.org/wiki/Macro_%28computer_science%29 Macro Programs] == | |
− | + | A program that lets you program scripts/macros so that when you press a certain key combination, or in any other fashion activates the program, a series of keystrokes is sent to the active program instead. | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
=== [http://www.autohotkey.com/ AutoHotKey] === | === [http://www.autohotkey.com/ AutoHotKey] === | ||
+ | AHK lets you define global hotkeys to send a sequence of keystrokes. For example, you can have {{key|alt}}+{{key|w}} replace {{key|b}}-{{key|C}}-{{key|w}}-{{key|Enter}}-{{key|Enter}} to make wall building much easier. See [[Macros and Keymaps]] for a how-to and some example scripts. | ||
+ | ---- | ||
+ | See [[:Category:ahk scripts]] for a list of user submitted scripts. | ||
+ | ---- | ||
− | |||
− | == | + | == Winmerge == |
− | |||
− | |||
− | |||
This utility allows you to compare folders or files. It highlights anything that does not fit in with the other file, so that you can see if you want to merge them into one file or not.. | This utility allows you to compare folders or files. It highlights anything that does not fit in with the other file, so that you can see if you want to merge them into one file or not.. | ||
− | + | Download at [http://winmerge.org/]. | |
+ | [[User:Omagaalpha|Omagaalpha]] 08:30, 13 February 2008 (EST) | ||
+ | Edit:--[[User:AtomicTroop|AtomicTroop]] 12:15, 23 March 2008 (EDT) | ||
− | + | == DFWall == | |
− | + | An utility for automatisation of mass constructions. Features three modes: | |
− | + | 1. Rectangle rewalling - quickly build a rectangle of walls/floors using: | |
− | |||
a) the same saved material every time ([http://mkv25.net/dfma/movie-495-dfwalldemo DEMO]) | a) the same saved material every time ([http://mkv25.net/dfma/movie-495-dfwalldemo DEMO]) | ||
+ | |||
b) any material with at least 1/10/99 units | b) any material with at least 1/10/99 units | ||
Line 247: | Line 265: | ||
3. Pattern construction - make a pattern file and have stuff constructed according to it ([http://mkv25.net/dfma/movie-520-dfwalldemo2 DEMO]). | 3. Pattern construction - make a pattern file and have stuff constructed according to it ([http://mkv25.net/dfma/movie-520-dfwalldemo2 DEMO]). | ||
− | |||
− | + | For more details look here: [http://www.bay12games.com/cgi-local/ultimatebb.cgi?ubb=get_topic&f=2&t=001847 link] | |
− | + | Get the newest version here: [http://dffd.wimbli.com/file.php?id=108 link] | |
− | == | + | == Accent Removal == |
− | + | This is a batch file compatible with [http://www.inforapid.de/html/searchreplace.htm InfoRapid Search & Replace.] | |
+ | |||
+ | It is used on the following raws to remove accented letters from translations: | ||
+ | *language_DWARF.txt | ||
+ | *language_ELF.txt | ||
+ | *language_GOBLIN.txt | ||
+ | *language_HUMAN.txt | ||
+ | |||
+ | This could be useful for character sets that render accents improperly. Please remember to backup your raws before doing crazy things like this. | ||
+ | |||
+ | <pre> | ||
+ | <Command> | ||
+ | <Search>„</Search> | ||
+ | <Replace>a</Replace> | ||
+ | </Command> | ||
+ | <Command> | ||
+ | <Search> </Search> | ||
+ | <Replace>a</Replace> | ||
+ | </Command> | ||
+ | <Command> | ||
+ | <Search>ƒ</Search> | ||
+ | <Replace>a</Replace> | ||
+ | </Command> | ||
+ | <Command> | ||
+ | <Search>†</Search> | ||
+ | <Replace>a</Replace> | ||
+ | </Command> | ||
+ | <Command> | ||
+ | <Search>…</Search> | ||
+ | <Replace>a</Replace> | ||
+ | </Command> | ||
+ | <Command> | ||
+ | <Search>‡</Search> | ||
+ | <Replace>c</Replace> | ||
+ | </Command> | ||
+ | <Command> | ||
+ | <Search>‚</Search> | ||
+ | <Replace>e</Replace> | ||
+ | </Command> | ||
+ | <Command> | ||
+ | <Search>Š</Search> | ||
+ | <Replace>e</Replace> | ||
+ | </Command> | ||
+ | <Command> | ||
+ | <Search>ˆ</Search> | ||
+ | <Replace>e</Replace> | ||
+ | </Command> | ||
+ | <Command> | ||
+ | <Search>‰</Search> | ||
+ | <Replace>e</Replace> | ||
+ | </Command> | ||
+ | <Command> | ||
+ | <Search>¡</Search> | ||
+ | <Replace>i</Replace> | ||
+ | </Command> | ||
+ | <Command> | ||
+ | <Search></Search> | ||
+ | <Replace>i</Replace> | ||
+ | </Command> | ||
+ | <Command> | ||
+ | <Search>Œ</Search> | ||
+ | <Replace>i</Replace> | ||
+ | </Command> | ||
+ | <Command> | ||
+ | <Search>‹</Search> | ||
+ | <Replace>i</Replace> | ||
+ | </Command> | ||
+ | <Command> | ||
+ | <Search>¤</Search> | ||
+ | <Replace>n</Replace> | ||
+ | </Command> | ||
+ | <Command> | ||
+ | <Search>•</Search> | ||
+ | <Replace>o</Replace> | ||
+ | </Command> | ||
+ | <Command> | ||
+ | <Search>”</Search> | ||
+ | <Replace>o</Replace> | ||
+ | </Command> | ||
+ | <Command> | ||
+ | <Search>“</Search> | ||
+ | <Replace>o</Replace> | ||
+ | </Command> | ||
+ | <Command> | ||
+ | <Search>¢</Search> | ||
+ | <Replace>o</Replace> | ||
+ | </Command> | ||
+ | <Command> | ||
+ | <Search>—</Search> | ||
+ | <Replace>u</Replace> | ||
+ | </Command> | ||
+ | <Command> | ||
+ | <Search>–</Search> | ||
+ | <Replace>u</Replace> | ||
+ | </Command> | ||
+ | <Command> | ||
+ | <Search>£</Search> | ||
+ | <Replace>u</Replace> | ||
+ | </Command> | ||
+ | <Command> | ||
+ | <Search>˜</Search> | ||
+ | <Replace>y</Replace> | ||
+ | </Command> | ||
+ | </pre> | ||
+ | |||
+ | == Dtil == | ||
+ | *[http://www.bay12games.com/cgi-local/ultimatebb.cgi?ubb=get_topic&f=2&t=001843 Forum Thread] | ||
+ | Dtil is a general purpose tool host that supplies a dynamically generated SDK for plugin authors. | ||
− | + | == Modbase == | |
− | + | Modbase is a great tool made by Sean Mirrsen which allows you to freely swap mods and tweak game settings. | |
+ | [http://www.bay12games.com/forum/index.php?topic=18623.0 Get it now!] | ||
+ | For version 0.38c. | ||
− | + | == DF World Generator == | |
− | + | Swiftly written supplement to the command line world generator. Written in Python, so you have to have Python installed to use this. | |
+ | Follow [http://dffd.wimbli.com/file.php?id=278 this] link to get to the file. It must be run from the command line and be in the DF Directory to work. Running the program with no parameters will provoke a short help-me dialog which will explain how to run it properly. | ||
+ | Enjoy! | ||
− | + | == DF Log Parser == | |
+ | Written by Mephansteras | ||
− | + | This is a perl script that parses through the logs to show what civs owned what sites, what thier overall populations were, and what the overall population levels of cave critters were. The output file makes it pretty easy to see how the various races are doing. | |
− | + | You will see: | |
+ | Each Civilization, with overall ruler. Each site in that civ, with the local ruler. A summary of every entity in that civ. | ||
+ | A summary of every civ, by race | ||
+ | A listing of every Ruin | ||
+ | A listing of the total populations of cave critters | ||
+ | A listing of the total populations of civilized creatures | ||
− | [[ | + | [http://dffd.wimbli.com/file.php?id=299 Raw perl script] - requires perl |
+ | [http://dffd.wimbli.com/file.php?id=311 Executable version] - does not require perl |