MTG Deck Builder

This page allows you to use the library of card images I have on this server (Browse them here) to create your own deck images suitable for use in Tabletop Simulator. I may add other formats if they prove useful.

Use this for the card-back image.

Home

Documentation

The backend takes a simple JSON file specifying which cards to include and how many of them to include, and produces a texture file on-demand. The texture file will be cached on the server for 14 days before it will be deleted. To minimize server load, please save your image elsewhere before the end of that duration.
The card browser shows the ID (and lID for lands)and LOC values for each card. Choose whichever of those you prefer for here. There is no significant difference between "m206343" and "SOM/Arc Trail".
The PHP module requires that all strings must be enclosed in "" (double quotes). Comments are removed in sanitization, so don't worry about those. // (line comments) and /* ... */ (block comments) are allowed. The hash is produced by json_encode()'ing the json_decode()'ed input, to most easily remove any influence from whitespace.

It is worth noting that there are absolutely no constraints on what a set name is allowed to be, and a clever person might be able to do something with that.
At present, a set may not include another set, but may include any particular card an arbitrary amount of times, which will bring about the expected statistical effect. "Magic" sets are only used if there is not a definition in place for that name, so you can overwrite them with anything, as demonstrated below.

The format:

Implemented error detections:

Invalid JSON
Summary of error printed
Nonexistant ID/LOC
Error 400 (only catches first failure)
More than 69 cards
Error 400

Partial detections

Any other reason for the stitching to fail
Page deleted (You'll see a 404 after 5 seconds) (Actually, tell me if this happens, it shouldn't)

Undetected

Rules violations
This doesn't do that. Check your own decks.
Top

Submit

(For now, you can ignore this box)


Top