!addcom !fight $(eval u=`$(user)`;t=`$(touser)`;r=[u,t];w=$(urlfetch json https://u.nu/x6ewr).split(`|`);l=$(urlfetch json https://u.nu/34fjt).split(`;`);`$(query)`?`${u} fought ${t} ${l[Math.floor(Math.random()*l.length)]}. ${u} used ${w[Math.floor(Math.random()*w.length)]} and ${t} used ${w[Math.floor(Math.random()*w.length)]}. ${r[Math.floor(Math.random()*2)]} won!`:`:x: !fight someone`;)
Your first paste doesn’t use ; (semi-colons), but | (vertical bars) so I fixed that.
Then responses[Math.floor(Math.random() * responses.length)]) must be adapted to the name of the array, in my command r is the random winner array, w is the random weapon array, and l is the random location array.
If you want to use the $(eval) you need to know JavaScript.