New official website here:

DCP Setup Maker

The application or setup won't launch!
You must have Java 6 or newer version installed on your machine or the one running the setup! Then if you get an error when launching the jar file, you should run it from inside a terminal session and use the command: java -jar path/to/dcp.jar

How to compile a project from command line?
You may compile an already saved project by launching the DCP program binary using the command line and giving path to one or many dcp save files like this:
java -jar path/to/dcp.jar path/to/save1.dcp path/to/save2.dcp

The compilation will then run automatically for the project and save the installer in the working directory of the command line as package.jar.

I loaded a project but it won't compile!
Check if the paths are correct. Go back to Scan tab to see if the path is the correct one containing all of the packs, and that the packs are organized in groups exactly like in the folder.

I have images on my computer that the program doesn't recognise!
The application is by default recognising only the standard file extensions, but you can add yours if you want to.
All you need to do is go to the base directory of the program and open the file 'settings.json' with a text editor then add or delete the extensions you want from the different file types in the "extensions" group.
Save the file and relaunch the application.

How can I use the Custom filters?
Edit the 'settings.json' file and add the file extensions you want to filter at the 'cust1Ext' or 'cust2Ext' field, then restart the application and use the 2 Custom check-boxes to enable or disable the filters.

Can I change the order of packs deployed on install?
Yes, packs are deployed following their displayed order on DCP Setup Maker.
You can reorder them by pressing the 'sort' button at left of packs on the 'Set' tab.

I want to create a shortcut for a file inside the archive, and not the entire archive.
You can enable the advanced shortcut option for folder and archive packs.
The archive sould be in 'extract' mode to enable the option, then at the dialog you choose 'inner file' option and you give the inner relative path of the file for which you wish to create a shortcut.
You may start the path with '/' to have suggestions of file paths inside, or paste the entire path if you know it, without a '/' at beginning.
Note that suggestions are disabled for archives with a size bigger than 50 MB so that the program doesn't freeze a long time scanning the archive.

How do I rename my folder pack on install?
You can't. But it's possible to 'extract' your folder on an 'install path' with the new folder name ;)
The shortcut however is the same as the name you define for the pack.

How can I make my script use other files at execution?
If you need to use files in your batch or shell script, you make the script pack as 'executable' and add the needed file as a 'dependent' pack (or group if more than one file), then edit the paths in your script to use the temporary environment variable 'DEP' created at install for accessing all of the dependent files.

Example of a batch script that depends on the pack 'putty_hosts.reg' in Windows:
reg import "%DEP%putty_hosts.reg"

In Linux and Mac OS X, calling the variable would be like "$DEP" instead.

PS:Registry files (*.reg) can be 'executed' automatically.

Why does the text box appear in red?
When a validation error occurs on an input, the text box becomes red.
When the pack name appears in red, that means another pack has that same name and you should change the name of one of them to compile successfully.
When the file path appears in red, that means the path entered or the file in that path doesn't exist.

How do I make a web setup?
After you enable the Web Setup option at Build tab, you specify the http url from which the installer will download all of the packs. Then at compile, the application creates the web setup file in addition to other jar files for every pack.
You should send those files manually at the directory accessible through the url you gave, or let the application do the work for you by pressing the 'configuration' button beside the url field, activating the automatic transfer and filling the form with the information needed to connect via SFTP.

I am getting a compilation error! What should I do?
Try going back through settings and look for a red textbox that may contain an error or a path that doesn't exist.
- A Pack must not have the same name as another Pack or a Group.
- A Pack shouldn't be dependent on a Pack that is also dependent on it (circular dependency)
- A Pack destinated to a certain OS shouldn't be dependant on a Pack destinated to another OS!
- The Install path of a Pack is relative to the Global install path given at the Tweak step, so it should only contain the path inside the directory.
- Make sure the SFTP information you put is correct if you are building a web setup with automatic file transfer enabled.
Also, if you are running the application from a terminal, make sure you are positioned at its home directory containing all required files.

Can I recover the factory settings of DCP Setup Maker?
You can do so by going to the root directory of the program and deleting the file 'conf.dcp' which contains all the information and default settings you saved.
The next time you run DCP Setup Maker it will generate a new configurations file with factory settings.

Can I add more advanced features to my package?
You can use the IzPack xml specifications.
You go to the application's root directory, and edit the file 'settings.json' with notepad, then at the bottom you have two options ("izpackWrite" and "izpackCompile") set to "yes" by default.
You first set "izpackCompile" to "no" then launch Setup Maker and compile your project so that it only generates the izpack 'install.xml' file you need.
After you make the edits you need, you change "izpackWrite" to "no" and restore "izpackCompile" to "yes" then relaunch Setup Maker and Compile again to get your custom package.

Don't forget to save your project to load it after you make changes to settings.json!