HAHAHAHA. Ok, breaking it down... Take this command as an example: !! foo [[1d20+7]] [[ [[1d4]] t[Gobbies] [gobs] ]] Keep an eye on the bolded part, here is what the API sees from that: {
"content": "!! foo $[[0]] $[[2]]",
"inlinerolls": [
{
"expression": "1d20+7",
"results": {
"resultType": "sum",
"rolls": [
{
"dice": 1,
"results": [
{
"v": 1
}
],
"rollid": "-L2fw69dKbmPZiq2C7e6",
"sides": 20,
"type": "R"
},
{
"expr": "+7",
"type": "M"
}
],
"total": 8,
"type": "V"
},
"rollid": "-L2fw69dKbmPZiq2C7e6",
"signature": "4019c8bc671b6afa9277a9a27d093ec9382e36e273855169983613ce05221f2e57722ecc2b25ba0b5cd88085c4e39ef77300081dac94bf7315ce5b399f81ad79",
"tdseed": 3535414006810126000
},
{
"expression": "1d4",
"results": {
"resultType": "sum",
"rolls": [
{
"dice": 1,
"results": [
{
"v": 4
}
],
"rollid": "-L2fw69dKbmPZiq2C7e7",
"sides": 4,
"type": "R"
}
],
"total": 4,
"type": "V"
},
"rollid": "-L2fw69dKbmPZiq2C7e7",
"signature": "97c056d72a1da60c7f637a376c3299cee356298fa017500e2f12b4eab0622db1ea95fe6dfb8cdc3aba62a072df1bce82d05fc5844cccd3a5de0995faa0771196",
"tdseed": 7013477067002149000
},
{
"expression": "4t[Gobbies] [gobs]",
"results": {
"resultType": "sum",
"rolls": [
{
"dice": 4,
"results": [
{
"tableItem": {
"avatar": "<a href="https://s3.amazonaws.com/files.d20.io/marketplace/139014/mMfj4LAvILM3Go7sC8D2sw/max.png?1464737459" rel="nofollow">https://s3.amazonaws.com/files.d20.io/marketplace/139014/mMfj4LAvILM3Go7sC8D2sw/max.png?1464737459</a>",
"id": "-KdW1kzWEQeOH8ixqS-c",
"name": "Pokey",
"weight": 1
},
"tableidx": 2,
"v": 0
},
{
"tableItem": {
"avatar": "<a href="https://s3.amazonaws.com/files.d20.io/marketplace/139014/mMfj4LAvILM3Go7sC8D2sw/max.png?1464737459" rel="nofollow">https://s3.amazonaws.com/files.d20.io/marketplace/139014/mMfj4LAvILM3Go7sC8D2sw/max.png?1464737459</a>",
"id": "-KdW1kzWEQeOH8ixqS-c",
"name": "Pokey",
"weight": 1
},
"tableidx": 2,
"v": 0
},
{
"tableItem": {
"avatar": "<a href="https://s3.amazonaws.com/files.d20.io/marketplace/139006/3wP19ASjb9e7N0KFzZqGwA/max.png?1464737435" rel="nofollow">https://s3.amazonaws.com/files.d20.io/marketplace/139006/3wP19ASjb9e7N0KFzZqGwA/max.png?1464737435</a>",
"id": "-KdW1bHNmP7zrSkDZxu1",
"name": "Bitey",
"weight": 1
},
"tableidx": 0,
"v": 0
},
{
"tableItem": {
"avatar": "<a href="https://s3.amazonaws.com/files.d20.io/marketplace/139006/3wP19ASjb9e7N0KFzZqGwA/max.png?1464737435" rel="nofollow">https://s3.amazonaws.com/files.d20.io/marketplace/139006/3wP19ASjb9e7N0KFzZqGwA/max.png?1464737435</a>",
"id": "-KdW1bHNmP7zrSkDZxu1",
"name": "Bitey",
"weight": 1
},
"tableidx": 0,
"v": 0
}
],
"sides": 3,
"table": "Gobbies",
"type": "R"
},
{
"text": "gobs",
"type": "L"
}
],
"total": 0,
"type": "V"
},
"signature": false
}
],
"playerid": "-JS3qKxIUPHLzSbK24ve",
"type": "api",
"who": "The Aaron (GM)"
}
The API knows where rolls were based on the $[[###]] markers. You can see $[[0]] in the content property for the 1d20+7 roll, and you can see $[[2]] for the [[1d4]]t[Gobbies] [gobs] ]] roll, but nowhere will you find the $[[1]] that corresponds to the [[1d4]] nested inline roll. In fact, if you look at the inline rolls entry 2 expression, you'll see it has: "expression": "4t[Gobbies] [gobs]", instead of something more useful like: "expression": "$[[1]]t[Gobbies] [gobs]", That's why the API wouldn't be able to reconstruct the message perfectly. If it issued this roll again, you'd always get the 4 results from the Gobbies table, rather than 1-4. (Of course, it could do some analysis and make a best guess as to where that 4 would get inserted, but you couldn't guarantee correctness, so I'd rather not go down that path.)