なんとなく画像を連結してplistが欲しいだけなのに、TexturePackerを買うのはちょっと・・
という方向け。

libGDXのTexture packerを使って、連結画像とplistを作ります。
Cocos2d-JSでも使えます。

mac向けですが、javaとperlが動かせればwindowsなどでもOK。

libGDXのTexture packerについては、詳しいオプション含めて、
GitHub libgdx/libgdx – Texture packer
に書いてありまして、nightly buildでもrunできるんだぜ、みたいに書いてありますが、自分の環境では、

エラー: メイン・クラスcom.badlogic.gdx.tools.texturepacker.TexturePackerが見つからなかったかロードできませんでした

みたいな感じに・・

なのでreleaseビルドをダウンロードします。
libGDX – download
執筆時は libgdx-1.6.1.zip でした。

この中にある
gdx.jar
extensions/gdx-tools/gdx-tools.jar
の2つを適当なディレクトリにコピります。

あとはそこで

$ java -cp gdx.jar:dx-tools.jar com.badlogic.gdx.tools.texturepacker.TexturePacker 画像のディレクトリ [出力先ディレクトリ] [出力ファイル名]

を実行するだけ。

出力ファイル名を省略すると、pack.pngファイルと、pack.atlasというファイルが出来上がります。
このpack.atlasファイルを
libGDXのTexturePackerで作った.atlasファイルをcocos2dxで読み込める.plistに変更するperlスクリプト
で変換してやります。

具体的には上のページのスクリプトを convert-plist.pl などの名前で保存し、

$ perl convert-plist.pl /path/to/pack.atlas /path/to/output-dir

と叩くだけです。

これでpack.plistができます。

ついでにCocos2d-JSでの使用例も書いておくと、

resources.js内
var res = {
    ...
    pack_plist : "res/pack.plist"
};

scene.js内
cc.spriteFrameCache.addSpriteFrames(res.pack_plist);

var sprite = new cc.Sprite("#pack/元のファイル名.png");

でOK。(#pack/のところはlibGDXでの出力ファイル名次第で変わります)

詳しくはCocos公式も参照のこと。