xpcalc
Privateunrated
Content
27 lines{=(dropsperminute):1}
{=():}
{{if(=={args(1)}):blacklist(Usage: `!xpcalc <target> [base]`):{server(id)}|{if({args(1)}!={m:trunc({args(1)}/1)}):blacklist(XP must be a whole number.):{server(id)}}}}
{=(xp):{args(1)}}
{=(basexp):{if(=={list(1):{join(~):{args}}}):0|{if({args(2)}!={m:trunc({args(2)}/1)}):0|{args(2)}}}}
{=(diffxp):{m:abs(trunc({xp}-{basexp}))}}
{=(min):{m:round({diffxp}/25)}}
{=(avg):{m:round({diffxp}/20)}}
{=(max):{m:round({diffxp}/15)}}
{=(commaxp):{replace(st,):{replace(nd,):{replace(rd,):{replace(th,):{ord:{xp}}}}}}}
{=(commabasexp):{replace(st,):{replace(nd,):{replace(rd,):{replace(th,):{ord:{basexp}}}}}}}
{=(commadiffxp):{replace(st,):{replace(nd,):{replace(rd,):{replace(th,):{ord:{diffxp}}}}}}}
{=(commamin):{replace(st,):{replace(nd,):{replace(rd,):{replace(th,):{ord:{min}}}}}}}
{=(commaavg):{replace(st,):{replace(nd,):{replace(rd,):{replace(th,):{ord:{avg}}}}}}}
{=(commamax):{replace(st,):{replace(nd,):{replace(rd,):{replace(th,):{ord:{max}}}}}}}
{=(mintime):{m:{min}/{dropsperminute}}}
{=(avgtime):{m:{avg}/{dropsperminute}}}
{=(maxtime):{m:{max}/{dropsperminute}}}
{=(mindisplay):{m:trunc({mintime} / 60)}h {m:trunc({mintime} % 60)}m}
{=(avgdisplay):{m:trunc({avgtime} / 60)} hours and {m:trunc({avgtime} % 60)} minutes}
{=(maxdisplay):{m:trunc({maxtime} / 60)}h {m:trunc({maxtime} % 60)}m}Embed
1 line{"url": "https://docs.carl.gg/levels/levels/", "color": 8311585, "title": "XP Calculation", "description": "You need **{commadiffxp}**xp to reach your target.\n\nThis will take **{commaavg}** messages on average (Min **{commamin}**, Max **{commamax}**).\n\nAssuming {dropsperminute} drop(s) per minute, this will take **{avgdisplay}** (Min **{mindisplay}**, Max **{maxdisplay}**)."}Raw JSON
{
"id": 1051831,
"created_at": "2021-09-09T06:02:32.000Z",
"tag_name": "xpcalc",
"nsfw": false,
"owner_id": "561139755274862594",
"uses": 0,
"description": null,
"restricted": false,
"shared": false,
"deleted": false,
"safe": "unrated",
"hidden": false,
"guild_id": "594784080449503240",
"sharer": "561139755274862594",
"content": "{=(dropsperminute):1}\n\n{=():}\n{{if(=={args(1)}):blacklist(Usage: `!xpcalc <target> [base]`):{server(id)}|{if({args(1)}!={m:trunc({args(1)}/1)}):blacklist(XP must be a whole number.):{server(id)}}}}\n\n{=(xp):{args(1)}}\n\n{=(basexp):{if(=={list(1):{join(~):{args}}}):0|{if({args(2)}!={m:trunc({args(2)}/1)}):0|{args(2)}}}}\n{=(diffxp):{m:abs(trunc({xp}-{basexp}))}}\n{=(min):{m:round({diffxp}/25)}}\n{=(avg):{m:round({diffxp}/20)}}\n{=(max):{m:round({diffxp}/15)}}\n\n{=(commaxp):{replace(st,):{replace(nd,):{replace(rd,):{replace(th,):{ord:{xp}}}}}}}\n{=(commabasexp):{replace(st,):{replace(nd,):{replace(rd,):{replace(th,):{ord:{basexp}}}}}}}\n{=(commadiffxp):{replace(st,):{replace(nd,):{replace(rd,):{replace(th,):{ord:{diffxp}}}}}}}\n{=(commamin):{replace(st,):{replace(nd,):{replace(rd,):{replace(th,):{ord:{min}}}}}}}\n{=(commaavg):{replace(st,):{replace(nd,):{replace(rd,):{replace(th,):{ord:{avg}}}}}}}\n{=(commamax):{replace(st,):{replace(nd,):{replace(rd,):{replace(th,):{ord:{max}}}}}}}\n\n{=(mintime):{m:{min}/{dropsperminute}}}\n{=(avgtime):{m:{avg}/{dropsperminute}}}\n{=(maxtime):{m:{max}/{dropsperminute}}}\n\n{=(mindisplay):{m:trunc({mintime} / 60)}h {m:trunc({mintime} % 60)}m}\n{=(avgdisplay):{m:trunc({avgtime} / 60)} hours and {m:trunc({avgtime} % 60)} minutes}\n{=(maxdisplay):{m:trunc({maxtime} / 60)}h {m:trunc({maxtime} % 60)}m}",
"embed": "{\"url\": \"https://docs.carl.gg/levels/levels/\", \"color\": 8311585, \"title\": \"XP Calculation\", \"description\": \"You need **{commadiffxp}**xp to reach your target.\\n\\nThis will take **{commaavg}** messages on average (Min **{commamin}**, Max **{commamax}**).\\n\\nAssuming {dropsperminute} drop(s) per minute, this will take **{avgdisplay}** (Min **{mindisplay}**, Max **{maxdisplay}**).\"}",
"last_fetched": "2026-10-20T17:34:41.234Z"
}