rules

Privateunrated

Content

281 lines
{=(comment):Add, change or remove the embed title here. Completely optional. YOU DONT HAVE TOO THO}
{=(embedtitle):Rules}

{=(comment):INSTRUCTIONS:
Put custom titles in the title1-title25 variables (if you want them). Keep titles below 256 characters.
Put keywords for each rule in the keyword1-keyword25 variables. Not required but useful.
If you include a keyword, the keyword must be ONE word (NO SPACES IN KEYWORDS, NOT EVEN AT THE BEGINNING).
Keyword smart detection means short keywords are better. "spam" instead of "spamming", "ad" instead of "ads" or "advertising"
Put rules in the rule1-rule25 variables. Keep rules below 1024 characters.
Some symbols in rule text might cause issues, limit formatting to Discord markdown friendly characters. 
DO NOT USE " or | in rule text.
Leave custom titles blank to have the titles just be "Rule #".
Leave corresponding title, keyword, and rule variables blank if the rule # does not exist, but do NOT erase the blank variables. NOW DONT ASK ME PLSPLS}

{=(title01):}
{=(keyword01):nsfw}
{=(rule01):• NO NSFW IN ANY CHANNEL AT ALL}

{=(title02):}
{=(keyword02):ad}
{=(rule02):• No advertising or self-promotion in the server or in DMs, if a member reports and gives proof that you have DM'd him ads, this also counts}

{=(title03):}
{=(keyword03):ping}
{=(rule03):• Do not spam ping mods. If they aren't responding, it means they are offline or cannot see it, so spam pinging will only lead to a punishment.}

{=(title04):}
{=(keyword04):sense}
{=(rule04):• Use common sense and good judgment, mods can mute you at any time}

{=(title05):}
{=(keyword05):choice}
{=(rule05):• Mods can mute, kick or ban at their discretion}

{=(title06):}
{=(keyword06):spam}
{=(rule06):• Do not spam comments, reactions or images}

{=(title07): Roles}
{=(keyword07): roles}
{=(rule07): Don't beg for roles, it we can't give it to you, then we can't, the roles that you can get will be given appropriately, begging will only delay getting a role for you.}

{=(title08):Channels}
{=(keyword08):channel}
{=(rule08):channels have names for a reason, so don't be listening to music in lounge.}

{=(title09):Swearing}
{=(keyword09):swearing}
{=(rule09):swearing is allowed but keep it to a minimum unless you have Toxic Crow role, racial slurs and any language that is offensive to a group will NOT be tolerated }

{=(title10):read the rules channel for more info}
{=(keyword10):}
{=(rule10): YES THERE ARE MORE RULES THERE}

{=(title11):}
{=(keyword11):}
{=(rule11):}

{=(title12):}
{=(keyword12):}
{=(rule12):}

{=(title13):}
{=(keyword13):}
{=(rule13):}

{=(title14):}
{=(keyword14):}
{=(rule14):}

{=(title15):}
{=(keyword15):}
{=(rule15):}

{=(title16):}
{=(keyword16):}
{=(rule16):}

{=(title17):}
{=(keyword17):}
{=(rule17):}

{=(title18):}
{=(keyword18):}
{=(rule18):}

{=(title19):}
{=(keyword19):}
{=(rule19):}

{=(title20):}
{=(keyword20):}
{=(rule20):}

{=(title21):}
{=(keyword21):}
{=(rule21):}

{=(title22):}
{=(keyword22):}
{=(rule22):}

{=(title23):}
{=(keyword23):}
{=(rule23):}

{=(title24):}
{=(keyword24):}
{=(rule24):}

{=(title25):}
{=(keyword25):}
{=(rule25):}

{=(comment):Title overrides, don't touch except to translate "Rule" into a different language}
{=(word4rule):Rule}

{=(comment):Don't touch}
{=(t01):{if({title01(+2)}!=):{title01}|{word4rule} 1}}
{=(t02):{if({title02(+2)}!=):{title02}|{word4rule} 2}}
{=(t03):{if({title03(+2)}!=):{title03}|{word4rule} 3}}
{=(t04):{if({title04(+2)}!=):{title04}|{word4rule} 4}}
{=(t05):{if({title05(+2)}!=):{title05}|{word4rule} 5}}
{=(t06):{if({title06(+2)}!=):{title06}|{word4rule} 6}}
{=(t07):{if({title07(+2)}!=):{title07}|{word4rule} 7}}
{=(t08):{if({title08(+2)}!=):{title08}|{word4rule} 8}}
{=(t09):{if({title09(+2)}!=):{title09}|{word4rule} 9}}
{=(t10):{if({title10(+2)}!=):{title10}|{word4rule} 10}}
{=(t11):{if({title11(+2)}!=):{title11}|{word4rule} 11}}
{=(t12):{if({title12(+2)}!=):{title12}|{word4rule} 12}}
{=(t13):{if({title13(+2)}!=):{title13}|{word4rule} 13}}
{=(t14):{if({title14(+2)}!=):{title14}|{word4rule} 14}}
{=(t15):{if({title15(+2)}!=):{title15}|{word4rule} 15}}
{=(t16):{if({title16(+2)}!=):{title16}|{word4rule} 16}}
{=(t17):{if({title17(+2)}!=):{title17}|{word4rule} 17}}
{=(t18):{if({title18(+2)}!=):{title18}|{word4rule} 18}}
{=(t19):{if({title19(+2)}!=):{title19}|{word4rule} 19}}
{=(t20):{if({title20(+2)}!=):{title20}|{word4rule} 20}}
{=(t21):{if({title21(+2)}!=):{title21}|{word4rule} 21}}
{=(t22):{if({title22(+2)}!=):{title22}|{word4rule} 22}}
{=(t23):{if({title23(+2)}!=):{title23}|{word4rule} 23}}
{=(t24):{if({title24(+2)}!=):{title24}|{word4rule} 24}}
{=(t25):{if({title25(+2)}!=):{title25}|{word4rule} 25}}

{=(comment):builds the list of rule numbers for rules that are populated}
{=(rules):{if({rule01(+2)}!=):01 }{if({rule02(+2)}!=):02 }{if({rule03(+2)}!=):03 }{if({rule04(+2)}!=):04 }{if({rule05(+2)}!=):05 }{if({rule06(+2)}!=):06 }{if({rule07(+2)}!=):07 }{if({rule08(+2)}!=):08 }{if({rule09(+2)}!=):09 }{if({rule10(+2)}!=):10 }{if({rule11(+2)}!=):11 }{if({rule12(+2)}!=):12 }{if({rule13(+2)}!=):13 }{if({rule14(+2)}!=):14 }{if({rule15(+2)}!=):15 }{if({rule16(+2)}!=):16 }{if({rule17(+2)}!=):17 }{if({rule18(+2)}!=):18 }{if({rule19(+2)}!=):19 }{if({rule20(+2)}!=):20 }{if({rule21(+2)}!=):21 }{if({rule22(+2)}!=):22 }{if({rule23(+2)}!=):23 }{if({rule24(+2)}!=):24 }{if({rule25(+2)}!=):25}}

{=(comment):space saving measures that makes the whole thing way harder to read lmao}
{=(r):replace}
{=(ct):contains}
{=(l):lower:}

{=(comment):Takes out the first channel mention present in args assuming it is present due to the desire for the rules to be sent to that channel}
{=(sanschan):{if({in(<#):{args}}==true):{{r}({args({index(<#):{{r}(<#,. <# .):{args}}})},):{args}}|{args}}}

{=(comment):lowers all the keywords to prevent user error}
{=(kw01):{{l}{keyword01(1)}}}
{=(kw02):{{l}{keyword02(1)}}}
{=(kw03):{{l}{keyword03(1)}}}
{=(kw04):{{l}{keyword04(1)}}}
{=(kw05):{{l}{keyword05(1)}}}
{=(kw06):{{l}{keyword06(1)}}}
{=(kw07):{{l}{keyword07(1)}}}
{=(kw08):{{l}{keyword08(1)}}}
{=(kw09):{{l}{keyword09(1)}}}
{=(kw10):{{l}{keyword10(1)}}}
{=(kw11):{{l}{keyword11(1)}}}
{=(kw12):{{l}{keyword12(1)}}}
{=(kw13):{{l}{keyword13(1)}}}
{=(kw14):{{l}{keyword14(1)}}}
{=(kw15):{{l}{keyword15(1)}}}
{=(kw16):{{l}{keyword16(1)}}}
{=(kw17):{{l}{keyword17(1)}}}
{=(kw18):{{l}{keyword18(1)}}}
{=(kw19):{{l}{keyword19(1)}}}
{=(kw20):{{l}{keyword20(1)}}}
{=(kw21):{{l}{keyword21(1)}}}
{=(kw22):{{l}{keyword22(1)}}}
{=(kw23):{{l}{keyword23(1)}}}
{=(kw24):{{l}{keyword24(1)}}}
{=(kw25):{{l}{keyword25(1)}}}

{=(comment):DON'T TOUCH, converts keywords into rule numbers, ws = wordswap}
{=(ws):{{l}{sanschan}}}
{=(ws):{if({kw01}!=):{if({in({kw01}):{ws}}==true):{{r}({ws({index({kw01}):{{r}({kw01},. {kw01} .):{ws}}})},01):{ws}}|{ws}}|{ws}}}
{=(ws):{if({kw02}!=):{if({in({kw02}):{ws}}==true):{{r}({ws({index({kw02}):{{r}({kw02},. {kw02} .):{ws}}})},02):{ws}}|{ws}}|{ws}}}
{=(ws):{if({kw03}!=):{if({in({kw03}):{ws}}==true):{{r}({ws({index({kw03}):{{r}({kw03},. {kw03} .):{ws}}})},03):{ws}}|{ws}}|{ws}}}
{=(ws):{if({kw04}!=):{if({in({kw04}):{ws}}==true):{{r}({ws({index({kw04}):{{r}({kw04},. {kw04} .):{ws}}})},04):{ws}}|{ws}}|{ws}}}
{=(ws):{if({kw05}!=):{if({in({kw05}):{ws}}==true):{{r}({ws({index({kw05}):{{r}({kw05},. {kw05} .):{ws}}})},05):{ws}}|{ws}}|{ws}}}
{=(ws):{if({kw06}!=):{if({in({kw06}):{ws}}==true):{{r}({ws({index({kw06}):{{r}({kw06},. {kw06} .):{ws}}})},06):{ws}}|{ws}}|{ws}}}
{=(ws):{if({kw07}!=):{if({in({kw07}):{ws}}==true):{{r}({ws({index({kw07}):{{r}({kw07},. {kw07} .):{ws}}})},07):{ws}}|{ws}}|{ws}}}
{=(ws):{if({kw08}!=):{if({in({kw08}):{ws}}==true):{{r}({ws({index({kw08}):{{r}({kw08},. {kw08} .):{ws}}})},08):{ws}}|{ws}}|{ws}}}
{=(ws):{if({kw09}!=):{if({in({kw09}):{ws}}==true):{{r}({ws({index({kw09}):{{r}({kw09},. {kw09} .):{ws}}})},09):{ws}}|{ws}}|{ws}}}
{=(ws):{if({kw10}!=):{if({in({kw10}):{ws}}==true):{{r}({ws({index({kw10}):{{r}({kw10},. {kw10} .):{ws}}})},10):{ws}}|{ws}}|{ws}}}
{=(ws):{if({kw11}!=):{if({in({kw11}):{ws}}==true):{{r}({ws({index({kw11}):{{r}({kw11},. {kw11} .):{ws}}})},11):{ws}}|{ws}}|{ws}}}
{=(ws):{if({kw12}!=):{if({in({kw12}):{ws}}==true):{{r}({ws({index({kw12}):{{r}({kw12},. {kw12} .):{ws}}})},12):{ws}}|{ws}}|{ws}}}
{=(ws):{if({kw13}!=):{if({in({kw13}):{ws}}==true):{{r}({ws({index({kw13}):{{r}({kw13},. {kw13} .):{ws}}})},13):{ws}}|{ws}}|{ws}}}
{=(ws):{if({kw14}!=):{if({in({kw14}):{ws}}==true):{{r}({ws({index({kw14}):{{r}({kw14},. {kw14} .):{ws}}})},14):{ws}}|{ws}}|{ws}}}
{=(ws):{if({kw15}!=):{if({in({kw15}):{ws}}==true):{{r}({ws({index({kw15}):{{r}({kw15},. {kw15} .):{ws}}})},15):{ws}}|{ws}}|{ws}}}
{=(ws):{if({kw16}!=):{if({in({kw16}):{ws}}==true):{{r}({ws({index({kw16}):{{r}({kw16},. {kw16} .):{ws}}})},16):{ws}}|{ws}}|{ws}}}
{=(ws):{if({kw17}!=):{if({in({kw17}):{ws}}==true):{{r}({ws({index({kw17}):{{r}({kw17},. {kw17} .):{ws}}})},17):{ws}}|{ws}}|{ws}}}
{=(ws):{if({kw18}!=):{if({in({kw18}):{ws}}==true):{{r}({ws({index({kw18}):{{r}({kw18},. {kw18} .):{ws}}})},18):{ws}}|{ws}}|{ws}}}
{=(ws):{if({kw19}!=):{if({in({kw19}):{ws}}==true):{{r}({ws({index({kw19}):{{r}({kw19},. {kw19} .):{ws}}})},19):{ws}}|{ws}}|{ws}}}
{=(ws):{if({kw20}!=):{if({in({kw20}):{ws}}==true):{{r}({ws({index({kw20}):{{r}({kw20},. {kw20} .):{ws}}})},20):{ws}}|{ws}}|{ws}}}
{=(ws):{if({kw21}!=):{if({in({kw21}):{ws}}==true):{{r}({ws({index({kw21}):{{r}({kw21},. {kw21} .):{ws}}})},21):{ws}}|{ws}}|{ws}}}
{=(ws):{if({kw22}!=):{if({in({kw22}):{ws}}==true):{{r}({ws({index({kw22}):{{r}({kw22},. {kw22} .):{ws}}})},22):{ws}}|{ws}}|{ws}}}
{=(ws):{if({kw23}!=):{if({in({kw23}):{ws}}==true):{{r}({ws({index({kw23}):{{r}({kw23},. {kw23} .):{ws}}})},23):{ws}}|{ws}}|{ws}}}
{=(ws):{if({kw24}!=):{if({in({kw24}):{ws}}==true):{{r}({ws({index({kw24}):{{r}({kw24},. {kw24} .):{ws}}})},24):{ws}}|{ws}}|{ws}}}
{=(ws):{if({kw25}!=):{if({in({kw25}):{ws}}==true):{{r}({ws({index({kw25}):{{r}({kw25},. {kw25} .):{ws}}})},25):{ws}}|{ws}}|{ws}}}

{=(comment):adds leading zeros to single digit numbers: spaces symbols, replaces spaces with ~, replaces ~#~ with ~0#~, replaces ~ with spaces, de-spaces symbols}
{=(sani):{{r}( - ,-):{{r}( + ,+):{{r}(~, ):{{r}(~1~,~01~):{{r}(~2~,~02~):{{r}(~3~,~03~):{{r}(~4~,~04~):{{r}(~5~,~05~):{{r}(~6~,~06~):{{r}(~7~,~07~):{{r}(~8~,~08~):{{r}(~9~,~09~):{{r}( ,~):{{r}(-, - ):{{r}(+, + ):~{ws}~}}}}}}}}}}}}}}}}

{=(comment):DON'T TOUCH, replaces - and + with the rule numbers from the list they represent}
{=(dash1):{sani(1):-}}
{=(dash2):{sani(2):-}}
{=(dash):{if({in(-):{sani}}==true):{dash1}{{r}({rules(+{m:trunc(1+{index({dash1(0)}):{rules}})})},):{{r}({rules({m:trunc(1+{index({dash2(1)}):{rules}})}+)},):{rules}}}{dash2}|{sani}}}
{=(plus1):{dash(1):+}}
{=(plus2):{dash(2):+}}
{=(plus3):{dash(3):+}}
{=(plus):{if({in(+):{dash}}==true):{if({plus1}!=):{if({plus1(+-1)}!=):{plus1(+-1)} }{rules({m:trunc(1+{index({plus1(0)}):{rules}})}+)} }{if({plus2}!=):{rules(+{m:trunc(1+{index({plus2(1)}):{rules}})})} {if({plus2(2+)}!=):{plus2(2+)} }}{if({plus3}==):{rules({m:trunc({index({plus2(0)}):{rules}}+2)}+)}|{rules(+{m:trunc(1+{index({plus3(1)}):{rules}})})} {if({plus3(2+)}!=):{plus3(2+)}}}|{dash}}}

{=(comment):rebuilds input list based on inclusion in rule list, while preventing duplicates. if rw (rawlist) entity 0-24 is not empty, is in the rules variable which is autopopulated, and is not already present in the new number list, said rw entity is added to num}
{=(rl):{join(,):{plus}}}
{=(num):}
{=(num):{num}{all({list(0):{rl}}!=|{{ct}({list(0):{rl}}):{rules}}==true|{{ct}({list(0):{rl}}):{num}}==false):{list(0):{rl}} }}
{=(num):{num}{all({list(1):{rl}}!=|{{ct}({list(1):{rl}}):{rules}}==true|{{ct}({list(1):{rl}}):{num}}==false):{list(1):{rl}} }}
{=(num):{num}{all({list(2):{rl}}!=|{{ct}({list(2):{rl}}):{rules}}==true|{{ct}({list(2):{rl}}):{num}}==false):{list(2):{rl}} }}
{=(num):{num}{all({list(3):{rl}}!=|{{ct}({list(3):{rl}}):{rules}}==true|{{ct}({list(3):{rl}}):{num}}==false):{list(3):{rl}} }}
{=(num):{num}{all({list(4):{rl}}!=|{{ct}({list(4):{rl}}):{rules}}==true|{{ct}({list(4):{rl}}):{num}}==false):{list(4):{rl}} }}
{=(num):{num}{all({list(5):{rl}}!=|{{ct}({list(5):{rl}}):{rules}}==true|{{ct}({list(5):{rl}}):{num}}==false):{list(5):{rl}} }}
{=(num):{num}{all({list(6):{rl}}!=|{{ct}({list(6):{rl}}):{rules}}==true|{{ct}({list(6):{rl}}):{num}}==false):{list(6):{rl}} }}
{=(num):{num}{all({list(7):{rl}}!=|{{ct}({list(7):{rl}}):{rules}}==true|{{ct}({list(7):{rl}}):{num}}==false):{list(7):{rl}} }}
{=(num):{num}{all({list(8):{rl}}!=|{{ct}({list(8):{rl}}):{rules}}==true|{{ct}({list(8):{rl}}):{num}}==false):{list(8):{rl}} }}
{=(num):{num}{all({list(9):{rl}}!=|{{ct}({list(9):{rl}}):{rules}}==true|{{ct}({list(9):{rl}}):{num}}==false):{list(9):{rl}} }}
{=(num):{num}{all({list(10):{rl}}!=|{{ct}({list(10):{rl}}):{rules}}==true|{{ct}({list(10):{rl}}):{num}}==false):{list(10):{rl}} }}
{=(num):{num}{all({list(11):{rl}}!=|{{ct}({list(11):{rl}}):{rules}}==true|{{ct}({list(11):{rl}}):{num}}==false):{list(11):{rl}} }}
{=(num):{num}{all({list(12):{rl}}!=|{{ct}({list(12):{rl}}):{rules}}==true|{{ct}({list(12):{rl}}):{num}}==false):{list(12):{rl}} }}
{=(num):{num}{all({list(13):{rl}}!=|{{ct}({list(13):{rl}}):{rules}}==true|{{ct}({list(13):{rl}}):{num}}==false):{list(13):{rl}} }}
{=(num):{num}{all({list(14):{rl}}!=|{{ct}({list(14):{rl}}):{rules}}==true|{{ct}({list(14):{rl}}):{num}}==false):{list(14):{rl}} }}
{=(num):{num}{all({list(15):{rl}}!=|{{ct}({list(15):{rl}}):{rules}}==true|{{ct}({list(15):{rl}}):{num}}==false):{list(15):{rl}} }}
{=(num):{num}{all({list(16):{rl}}!=|{{ct}({list(16):{rl}}):{rules}}==true|{{ct}({list(16):{rl}}):{num}}==false):{list(16):{rl}} }}
{=(num):{num}{all({list(17):{rl}}!=|{{ct}({list(17):{rl}}):{rules}}==true|{{ct}({list(17):{rl}}):{num}}==false):{list(17):{rl}} }}
{=(num):{num}{all({list(18):{rl}}!=|{{ct}({list(18):{rl}}):{rules}}==true|{{ct}({list(18):{rl}}):{num}}==false):{list(18):{rl}} }}
{=(num):{num}{all({list(19):{rl}}!=|{{ct}({list(19):{rl}}):{rules}}==true|{{ct}({list(19):{rl}}):{num}}==false):{list(19):{rl}} }}
{=(num):{num}{all({list(20):{rl}}!=|{{ct}({list(20):{rl}}):{rules}}==true|{{ct}({list(20):{rl}}):{num}}==false):{list(20):{rl}} }}
{=(num):{num}{all({list(21):{rl}}!=|{{ct}({list(21):{rl}}):{rules}}==true|{{ct}({list(21):{rl}}):{num}}==false):{list(21):{rl}} }}
{=(num):{num}{all({list(22):{rl}}!=|{{ct}({list(22):{rl}}):{rules}}==true|{{ct}({list(22):{rl}}):{num}}==false):{list(22):{rl}} }}
{=(num):{num}{all({list(23):{rl}}!=|{{ct}({list(23):{rl}}):{rules}}==true|{{ct}({list(23):{rl}}):{num}}==false):{list(23):{rl}} }}
{=(num):{num}{all({list(24):{rl}}!=|{{ct}({list(24):{rl}}):{rules}}==true|{{ct}({list(24):{rl}}):{num}}==false):{list(24):{rl}}}}

{=(comment):The following tests to see if args are empty, or if help or keyword are present, or if the input failed to generate a shortened list of rules, and if so, sets the rule numbers to the full list of rules}
{=(largs):{{l}{args}}}
{=(num):{any({largs(1)}==|{all({in(help):{largs}}==false|{in(keyword):{largs}}==false|{num}==):true|false}==true):{join(,):{rules}}|{join(,):{num}}}}

{=(comment):Embed field generation for rule output, don't touch. ┐ = comma placeholder character}
{=(ilf):,"inline":false}
{=(cfields):{if({list(0):{num}}!=):{"name":"{t{list(0):{num}}}","value":"{rule{list(0):{num}}}"{ilf}}}┐{if({list(1):{num}}!=):{"name":"{t{list(1):{num}}}","value":"{rule{list(1):{num}}}"{ilf}}}┐{if({list(2):{num}}!=):{"name":"{t{list(2):{num}}}","value":"{rule{list(2):{num}}}"{ilf}}}┐{if({list(3):{num}}!=):{"name":"{t{list(3):{num}}}","value":"{rule{list(3):{num}}}"{ilf}}}┐{if({list(4):{num}}!=):{"name":"{t{list(4):{num}}}","value":"{rule{list(4):{num}}}"{ilf}}}┐{if({list(5):{num}}!=):{"name":"{t{list(5):{num}}}","value":"{rule{list(5):{num}}}"{ilf}}}┐{if({list(6):{num}}!=):{"name":"{t{list(6):{num}}}","value":"{rule{list(6):{num}}}"{ilf}}}┐{if({list(7):{num}}!=):{"name":"{t{list(7):{num}}}","value":"{rule{list(7):{num}}}"{ilf}}}┐{if({list(8):{num}}!=):{"name":"{t{list(8):{num}}}","value":"{rule{list(8):{num}}}"{ilf}}}┐{if({list(9):{num}}!=):{"name":"{t{list(9):{num}}}","value":"{rule{list(9):{num}}}"{ilf}}}┐{if({list(10):{num}}!=):{"name":"{t{list(10):{num}}}","value":"{rule{list(10):{num}}}"{ilf}}}┐{if({list(11):{num}}!=):{"name":"{t{list(11):{num}}}","value":"{rule{list(11):{num}}}"{ilf}}}┐{if({list(12):{num}}!=):{"name":"{t{list(12):{num}}}","value":"{rule{list(12):{num}}}"{ilf}}}┐{if({list(13):{num}}!=):{"name":"{t{list(13):{num}}}","value":"{rule{list(13):{num}}}"{ilf}}}┐{if({list(14):{num}}!=):{"name":"{t{list(14):{num}}}","value":"{rule{list(14):{num}}}"{ilf}}}┐{if({list(15):{num}}!=):{"name":"{t{list(15):{num}}}","value":"{rule{list(15):{num}}}"{ilf}}}┐{if({list(16):{num}}!=):{"name":"{t{list(16):{num}}}","value":"{rule{list(16):{num}}}"{ilf}}}┐{if({list(17):{num}}!=):{"name":"{t{list(17):{num}}}","value":"{rule{list(17):{num}}}"{ilf}}}┐{if({list(18):{num}}!=):{"name":"{t{list(18):{num}}}","value":"{rule{list(18):{num}}}"{ilf}}}┐{if({list(19):{num}}!=):{"name":"{t{list(19):{num}}}","value":"{rule{list(19):{num}}}"{ilf}}}┐{if({list(20):{num}}!=):{"name":"{t{list(20):{num}}}","value":"{rule{list(20):{num}}}"{ilf}}}┐{if({list(21):{num}}!=):{"name":"{t{list(21):{num}}}","value":"{rule{list(21):{num}}}"{ilf}}}┐{if({list(22):{num}}!=):{"name":"{t{list(22):{num}}}","value":"{rule{list(22):{num}}}"{ilf}}}┐{if({list(23):{num}}!=):{"name":"{t{list(23):{num}}}","value":"{rule{list(23):{num}}}"{ilf}}}┐{if({list(24):{num}}!=):{"name":"{t{list(24):{num}}}","value":"{rule{list(24):{num}}}"{ilf}}}}

{=(comment):different description holding variables}
{=(instr):__Instructions__
Follow the command with the number(s) of the rules you wish to output with spaces in between. Additional accepted formats are:
#*x*-#*y* to indicate rules from #*x* to #*y* (limit 1x`-`)
#+ to indicate rules from # to the end of the list of rules
+# to indicate rules from 1 to # (limit 2x`+`)
You can also mix in keywords that have been set (don't mix keywords and symbols).
Examples: `!rules +2 nsfw 4-6 8+` }

{=(kw):__Keywords__
{kw01} {kw02} {kw03} {kw04} {kw05} {kw06} {kw07} {kw08} {kw09} {kw10} {kw11} {kw12} {kw13} {kw14} {kw15} {kw16} {kw17} {kw18} {kw19} {kw20} {kw21} {kw22} {kw23} {kw24} {kw25}}

{=(comment):Embed fields}
{=(footer):Type \"!rules help\" for instructions, and \"!rules keywords\" for the list of reference keywords.}
{=(des):{if({in(help):{largs}}==true):{instr}|{if({in(keyword):{largs}}==true):{kw}|{if({ruleschannelid}!=):<#{ruleschannelid}>}}}}

{=(comment):finalizes the json for the embed by replacing spaces with a filler character, replacing comma placeholder characters with spaces, joining the spaces with commas, and replacing the filler characters with spaces again. this ensures there are no commas preceeding JSON fields, nor trailing the last JSON field. also includes logic choosing whether to display the full rules list (if args or the input number list are empty AND help/keyword are not displayed) or the custom rules list}
{=(json):"title":"{embedtitle}","description":"{des}","fields":[{{r}(░,
):{{r}(█, ):{join(,):{{r}(┐, ):{{r}(
,░):{{r}( ,█):{cfields}}}}}}}],"author":{"name":"{server}","icon_url":"{server(icon)}"},"color":3092790,"footer":{"text":"{footer}"}}

{c:cembed {if({in(<#):{args}}==true):{args({index(<#):{{r}(<#,. <# .):{args}}})}|{channel(id)}} {{json}}}
Raw JSON
{
  "id": 350014,
  "created_at": "2020-09-28T00:41:27.000Z",
  "tag_name": "rules",
  "nsfw": false,
  "owner_id": "721922636745146418",
  "uses": 12,
  "description": null,
  "restricted": false,
  "shared": false,
  "deleted": false,
  "safe": "unrated",
  "hidden": false,
  "guild_id": "758865331681886219",
  "sharer": "721922636745146418",
  "content": "{=(comment):Add, change or remove the embed title here. Completely optional. YOU DONT HAVE TOO THO}\n{=(embedtitle):Rules}\n\n{=(comment):INSTRUCTIONS:\nPut custom titles in the title1-title25 variables (if you want them). Keep titles below 256 characters.\nPut keywords for each rule in the keyword1-keyword25 variables. Not required but useful.\nIf you include a keyword, the keyword must be ONE word (NO SPACES IN KEYWORDS, NOT EVEN AT THE BEGINNING).\nKeyword smart detection means short keywords are better. \"spam\" instead of \"spamming\", \"ad\" instead of \"ads\" or \"advertising\"\nPut rules in the rule1-rule25 variables. Keep rules below 1024 characters.\nSome symbols in rule text might cause issues, limit formatting to Discord markdown friendly characters. \nDO NOT USE \" or | in rule text.\nLeave custom titles blank to have the titles just be \"Rule #\".\nLeave corresponding title, keyword, and rule variables blank if the rule # does not exist, but do NOT erase the blank variables. NOW DONT ASK ME PLSPLS}\n\n{=(title01):}\n{=(keyword01):nsfw}\n{=(rule01):• NO NSFW IN ANY CHANNEL AT ALL}\n\n{=(title02):}\n{=(keyword02):ad}\n{=(rule02):• No advertising or self-promotion in the server or in DMs, if a member reports and gives proof that you have DM'd him ads, this also counts}\n\n{=(title03):}\n{=(keyword03):ping}\n{=(rule03):• Do not spam ping mods. If they aren't responding, it means they are offline or cannot see it, so spam pinging will only lead to a punishment.}\n\n{=(title04):}\n{=(keyword04):sense}\n{=(rule04):• Use common sense and good judgment, mods can mute you at any time}\n\n{=(title05):}\n{=(keyword05):choice}\n{=(rule05):• Mods can mute, kick or ban at their discretion}\n\n{=(title06):}\n{=(keyword06):spam}\n{=(rule06):• Do not spam comments, reactions or images}\n\n{=(title07): Roles}\n{=(keyword07): roles}\n{=(rule07): Don't beg for roles, it we can't give it to you, then we can't, the roles that you can get will be given appropriately, begging will only delay getting a role for you.}\n\n{=(title08):Channels}\n{=(keyword08):channel}\n{=(rule08):channels have names for a reason, so don't be listening to music in lounge.}\n\n{=(title09):Swearing}\n{=(keyword09):swearing}\n{=(rule09):swearing is allowed but keep it to a minimum unless you have Toxic Crow role, racial slurs and any language that is offensive to a group will NOT be tolerated }\n\n{=(title10):read the rules channel for more info}\n{=(keyword10):}\n{=(rule10): YES THERE ARE MORE RULES THERE}\n\n{=(title11):}\n{=(keyword11):}\n{=(rule11):}\n\n{=(title12):}\n{=(keyword12):}\n{=(rule12):}\n\n{=(title13):}\n{=(keyword13):}\n{=(rule13):}\n\n{=(title14):}\n{=(keyword14):}\n{=(rule14):}\n\n{=(title15):}\n{=(keyword15):}\n{=(rule15):}\n\n{=(title16):}\n{=(keyword16):}\n{=(rule16):}\n\n{=(title17):}\n{=(keyword17):}\n{=(rule17):}\n\n{=(title18):}\n{=(keyword18):}\n{=(rule18):}\n\n{=(title19):}\n{=(keyword19):}\n{=(rule19):}\n\n{=(title20):}\n{=(keyword20):}\n{=(rule20):}\n\n{=(title21):}\n{=(keyword21):}\n{=(rule21):}\n\n{=(title22):}\n{=(keyword22):}\n{=(rule22):}\n\n{=(title23):}\n{=(keyword23):}\n{=(rule23):}\n\n{=(title24):}\n{=(keyword24):}\n{=(rule24):}\n\n{=(title25):}\n{=(keyword25):}\n{=(rule25):}\n\n{=(comment):Title overrides, don't touch except to translate \"Rule\" into a different language}\n{=(word4rule):Rule}\n\n{=(comment):Don't touch}\n{=(t01):{if({title01(+2)}!=):{title01}|{word4rule} 1}}\n{=(t02):{if({title02(+2)}!=):{title02}|{word4rule} 2}}\n{=(t03):{if({title03(+2)}!=):{title03}|{word4rule} 3}}\n{=(t04):{if({title04(+2)}!=):{title04}|{word4rule} 4}}\n{=(t05):{if({title05(+2)}!=):{title05}|{word4rule} 5}}\n{=(t06):{if({title06(+2)}!=):{title06}|{word4rule} 6}}\n{=(t07):{if({title07(+2)}!=):{title07}|{word4rule} 7}}\n{=(t08):{if({title08(+2)}!=):{title08}|{word4rule} 8}}\n{=(t09):{if({title09(+2)}!=):{title09}|{word4rule} 9}}\n{=(t10):{if({title10(+2)}!=):{title10}|{word4rule} 10}}\n{=(t11):{if({title11(+2)}!=):{title11}|{word4rule} 11}}\n{=(t12):{if({title12(+2)}!=):{title12}|{word4rule} 12}}\n{=(t13):{if({title13(+2)}!=):{title13}|{word4rule} 13}}\n{=(t14):{if({title14(+2)}!=):{title14}|{word4rule} 14}}\n{=(t15):{if({title15(+2)}!=):{title15}|{word4rule} 15}}\n{=(t16):{if({title16(+2)}!=):{title16}|{word4rule} 16}}\n{=(t17):{if({title17(+2)}!=):{title17}|{word4rule} 17}}\n{=(t18):{if({title18(+2)}!=):{title18}|{word4rule} 18}}\n{=(t19):{if({title19(+2)}!=):{title19}|{word4rule} 19}}\n{=(t20):{if({title20(+2)}!=):{title20}|{word4rule} 20}}\n{=(t21):{if({title21(+2)}!=):{title21}|{word4rule} 21}}\n{=(t22):{if({title22(+2)}!=):{title22}|{word4rule} 22}}\n{=(t23):{if({title23(+2)}!=):{title23}|{word4rule} 23}}\n{=(t24):{if({title24(+2)}!=):{title24}|{word4rule} 24}}\n{=(t25):{if({title25(+2)}!=):{title25}|{word4rule} 25}}\n\n{=(comment):builds the list of rule numbers for rules that are populated}\n{=(rules):{if({rule01(+2)}!=):01 }{if({rule02(+2)}!=):02 }{if({rule03(+2)}!=):03 }{if({rule04(+2)}!=):04 }{if({rule05(+2)}!=):05 }{if({rule06(+2)}!=):06 }{if({rule07(+2)}!=):07 }{if({rule08(+2)}!=):08 }{if({rule09(+2)}!=):09 }{if({rule10(+2)}!=):10 }{if({rule11(+2)}!=):11 }{if({rule12(+2)}!=):12 }{if({rule13(+2)}!=):13 }{if({rule14(+2)}!=):14 }{if({rule15(+2)}!=):15 }{if({rule16(+2)}!=):16 }{if({rule17(+2)}!=):17 }{if({rule18(+2)}!=):18 }{if({rule19(+2)}!=):19 }{if({rule20(+2)}!=):20 }{if({rule21(+2)}!=):21 }{if({rule22(+2)}!=):22 }{if({rule23(+2)}!=):23 }{if({rule24(+2)}!=):24 }{if({rule25(+2)}!=):25}}\n\n{=(comment):space saving measures that makes the whole thing way harder to read lmao}\n{=(r):replace}\n{=(ct):contains}\n{=(l):lower:}\n\n{=(comment):Takes out the first channel mention present in args assuming it is present due to the desire for the rules to be sent to that channel}\n{=(sanschan):{if({in(<#):{args}}==true):{{r}({args({index(<#):{{r}(<#,. <# .):{args}}})},):{args}}|{args}}}\n\n{=(comment):lowers all the keywords to prevent user error}\n{=(kw01):{{l}{keyword01(1)}}}\n{=(kw02):{{l}{keyword02(1)}}}\n{=(kw03):{{l}{keyword03(1)}}}\n{=(kw04):{{l}{keyword04(1)}}}\n{=(kw05):{{l}{keyword05(1)}}}\n{=(kw06):{{l}{keyword06(1)}}}\n{=(kw07):{{l}{keyword07(1)}}}\n{=(kw08):{{l}{keyword08(1)}}}\n{=(kw09):{{l}{keyword09(1)}}}\n{=(kw10):{{l}{keyword10(1)}}}\n{=(kw11):{{l}{keyword11(1)}}}\n{=(kw12):{{l}{keyword12(1)}}}\n{=(kw13):{{l}{keyword13(1)}}}\n{=(kw14):{{l}{keyword14(1)}}}\n{=(kw15):{{l}{keyword15(1)}}}\n{=(kw16):{{l}{keyword16(1)}}}\n{=(kw17):{{l}{keyword17(1)}}}\n{=(kw18):{{l}{keyword18(1)}}}\n{=(kw19):{{l}{keyword19(1)}}}\n{=(kw20):{{l}{keyword20(1)}}}\n{=(kw21):{{l}{keyword21(1)}}}\n{=(kw22):{{l}{keyword22(1)}}}\n{=(kw23):{{l}{keyword23(1)}}}\n{=(kw24):{{l}{keyword24(1)}}}\n{=(kw25):{{l}{keyword25(1)}}}\n\n{=(comment):DON'T TOUCH, converts keywords into rule numbers, ws = wordswap}\n{=(ws):{{l}{sanschan}}}\n{=(ws):{if({kw01}!=):{if({in({kw01}):{ws}}==true):{{r}({ws({index({kw01}):{{r}({kw01},. {kw01} .):{ws}}})},01):{ws}}|{ws}}|{ws}}}\n{=(ws):{if({kw02}!=):{if({in({kw02}):{ws}}==true):{{r}({ws({index({kw02}):{{r}({kw02},. {kw02} .):{ws}}})},02):{ws}}|{ws}}|{ws}}}\n{=(ws):{if({kw03}!=):{if({in({kw03}):{ws}}==true):{{r}({ws({index({kw03}):{{r}({kw03},. {kw03} .):{ws}}})},03):{ws}}|{ws}}|{ws}}}\n{=(ws):{if({kw04}!=):{if({in({kw04}):{ws}}==true):{{r}({ws({index({kw04}):{{r}({kw04},. {kw04} .):{ws}}})},04):{ws}}|{ws}}|{ws}}}\n{=(ws):{if({kw05}!=):{if({in({kw05}):{ws}}==true):{{r}({ws({index({kw05}):{{r}({kw05},. {kw05} .):{ws}}})},05):{ws}}|{ws}}|{ws}}}\n{=(ws):{if({kw06}!=):{if({in({kw06}):{ws}}==true):{{r}({ws({index({kw06}):{{r}({kw06},. {kw06} .):{ws}}})},06):{ws}}|{ws}}|{ws}}}\n{=(ws):{if({kw07}!=):{if({in({kw07}):{ws}}==true):{{r}({ws({index({kw07}):{{r}({kw07},. {kw07} .):{ws}}})},07):{ws}}|{ws}}|{ws}}}\n{=(ws):{if({kw08}!=):{if({in({kw08}):{ws}}==true):{{r}({ws({index({kw08}):{{r}({kw08},. {kw08} .):{ws}}})},08):{ws}}|{ws}}|{ws}}}\n{=(ws):{if({kw09}!=):{if({in({kw09}):{ws}}==true):{{r}({ws({index({kw09}):{{r}({kw09},. {kw09} .):{ws}}})},09):{ws}}|{ws}}|{ws}}}\n{=(ws):{if({kw10}!=):{if({in({kw10}):{ws}}==true):{{r}({ws({index({kw10}):{{r}({kw10},. {kw10} .):{ws}}})},10):{ws}}|{ws}}|{ws}}}\n{=(ws):{if({kw11}!=):{if({in({kw11}):{ws}}==true):{{r}({ws({index({kw11}):{{r}({kw11},. {kw11} .):{ws}}})},11):{ws}}|{ws}}|{ws}}}\n{=(ws):{if({kw12}!=):{if({in({kw12}):{ws}}==true):{{r}({ws({index({kw12}):{{r}({kw12},. {kw12} .):{ws}}})},12):{ws}}|{ws}}|{ws}}}\n{=(ws):{if({kw13}!=):{if({in({kw13}):{ws}}==true):{{r}({ws({index({kw13}):{{r}({kw13},. {kw13} .):{ws}}})},13):{ws}}|{ws}}|{ws}}}\n{=(ws):{if({kw14}!=):{if({in({kw14}):{ws}}==true):{{r}({ws({index({kw14}):{{r}({kw14},. {kw14} .):{ws}}})},14):{ws}}|{ws}}|{ws}}}\n{=(ws):{if({kw15}!=):{if({in({kw15}):{ws}}==true):{{r}({ws({index({kw15}):{{r}({kw15},. {kw15} .):{ws}}})},15):{ws}}|{ws}}|{ws}}}\n{=(ws):{if({kw16}!=):{if({in({kw16}):{ws}}==true):{{r}({ws({index({kw16}):{{r}({kw16},. {kw16} .):{ws}}})},16):{ws}}|{ws}}|{ws}}}\n{=(ws):{if({kw17}!=):{if({in({kw17}):{ws}}==true):{{r}({ws({index({kw17}):{{r}({kw17},. {kw17} .):{ws}}})},17):{ws}}|{ws}}|{ws}}}\n{=(ws):{if({kw18}!=):{if({in({kw18}):{ws}}==true):{{r}({ws({index({kw18}):{{r}({kw18},. {kw18} .):{ws}}})},18):{ws}}|{ws}}|{ws}}}\n{=(ws):{if({kw19}!=):{if({in({kw19}):{ws}}==true):{{r}({ws({index({kw19}):{{r}({kw19},. {kw19} .):{ws}}})},19):{ws}}|{ws}}|{ws}}}\n{=(ws):{if({kw20}!=):{if({in({kw20}):{ws}}==true):{{r}({ws({index({kw20}):{{r}({kw20},. {kw20} .):{ws}}})},20):{ws}}|{ws}}|{ws}}}\n{=(ws):{if({kw21}!=):{if({in({kw21}):{ws}}==true):{{r}({ws({index({kw21}):{{r}({kw21},. {kw21} .):{ws}}})},21):{ws}}|{ws}}|{ws}}}\n{=(ws):{if({kw22}!=):{if({in({kw22}):{ws}}==true):{{r}({ws({index({kw22}):{{r}({kw22},. {kw22} .):{ws}}})},22):{ws}}|{ws}}|{ws}}}\n{=(ws):{if({kw23}!=):{if({in({kw23}):{ws}}==true):{{r}({ws({index({kw23}):{{r}({kw23},. {kw23} .):{ws}}})},23):{ws}}|{ws}}|{ws}}}\n{=(ws):{if({kw24}!=):{if({in({kw24}):{ws}}==true):{{r}({ws({index({kw24}):{{r}({kw24},. {kw24} .):{ws}}})},24):{ws}}|{ws}}|{ws}}}\n{=(ws):{if({kw25}!=):{if({in({kw25}):{ws}}==true):{{r}({ws({index({kw25}):{{r}({kw25},. {kw25} .):{ws}}})},25):{ws}}|{ws}}|{ws}}}\n\n{=(comment):adds leading zeros to single digit numbers: spaces symbols, replaces spaces with ~, replaces ~#~ with ~0#~, replaces ~ with spaces, de-spaces symbols}\n{=(sani):{{r}( - ,-):{{r}( + ,+):{{r}(~, ):{{r}(~1~,~01~):{{r}(~2~,~02~):{{r}(~3~,~03~):{{r}(~4~,~04~):{{r}(~5~,~05~):{{r}(~6~,~06~):{{r}(~7~,~07~):{{r}(~8~,~08~):{{r}(~9~,~09~):{{r}( ,~):{{r}(-, - ):{{r}(+, + ):~{ws}~}}}}}}}}}}}}}}}}\n\n{=(comment):DON'T TOUCH, replaces - and + with the rule numbers from the list they represent}\n{=(dash1):{sani(1):-}}\n{=(dash2):{sani(2):-}}\n{=(dash):{if({in(-):{sani}}==true):{dash1}{{r}({rules(+{m:trunc(1+{index({dash1(0)}):{rules}})})},):{{r}({rules({m:trunc(1+{index({dash2(1)}):{rules}})}+)},):{rules}}}{dash2}|{sani}}}\n{=(plus1):{dash(1):+}}\n{=(plus2):{dash(2):+}}\n{=(plus3):{dash(3):+}}\n{=(plus):{if({in(+):{dash}}==true):{if({plus1}!=):{if({plus1(+-1)}!=):{plus1(+-1)} }{rules({m:trunc(1+{index({plus1(0)}):{rules}})}+)} }{if({plus2}!=):{rules(+{m:trunc(1+{index({plus2(1)}):{rules}})})} {if({plus2(2+)}!=):{plus2(2+)} }}{if({plus3}==):{rules({m:trunc({index({plus2(0)}):{rules}}+2)}+)}|{rules(+{m:trunc(1+{index({plus3(1)}):{rules}})})} {if({plus3(2+)}!=):{plus3(2+)}}}|{dash}}}\n\n{=(comment):rebuilds input list based on inclusion in rule list, while preventing duplicates. if rw (rawlist) entity 0-24 is not empty, is in the rules variable which is autopopulated, and is not already present in the new number list, said rw entity is added to num}\n{=(rl):{join(,):{plus}}}\n{=(num):}\n{=(num):{num}{all({list(0):{rl}}!=|{{ct}({list(0):{rl}}):{rules}}==true|{{ct}({list(0):{rl}}):{num}}==false):{list(0):{rl}} }}\n{=(num):{num}{all({list(1):{rl}}!=|{{ct}({list(1):{rl}}):{rules}}==true|{{ct}({list(1):{rl}}):{num}}==false):{list(1):{rl}} }}\n{=(num):{num}{all({list(2):{rl}}!=|{{ct}({list(2):{rl}}):{rules}}==true|{{ct}({list(2):{rl}}):{num}}==false):{list(2):{rl}} }}\n{=(num):{num}{all({list(3):{rl}}!=|{{ct}({list(3):{rl}}):{rules}}==true|{{ct}({list(3):{rl}}):{num}}==false):{list(3):{rl}} }}\n{=(num):{num}{all({list(4):{rl}}!=|{{ct}({list(4):{rl}}):{rules}}==true|{{ct}({list(4):{rl}}):{num}}==false):{list(4):{rl}} }}\n{=(num):{num}{all({list(5):{rl}}!=|{{ct}({list(5):{rl}}):{rules}}==true|{{ct}({list(5):{rl}}):{num}}==false):{list(5):{rl}} }}\n{=(num):{num}{all({list(6):{rl}}!=|{{ct}({list(6):{rl}}):{rules}}==true|{{ct}({list(6):{rl}}):{num}}==false):{list(6):{rl}} }}\n{=(num):{num}{all({list(7):{rl}}!=|{{ct}({list(7):{rl}}):{rules}}==true|{{ct}({list(7):{rl}}):{num}}==false):{list(7):{rl}} }}\n{=(num):{num}{all({list(8):{rl}}!=|{{ct}({list(8):{rl}}):{rules}}==true|{{ct}({list(8):{rl}}):{num}}==false):{list(8):{rl}} }}\n{=(num):{num}{all({list(9):{rl}}!=|{{ct}({list(9):{rl}}):{rules}}==true|{{ct}({list(9):{rl}}):{num}}==false):{list(9):{rl}} }}\n{=(num):{num}{all({list(10):{rl}}!=|{{ct}({list(10):{rl}}):{rules}}==true|{{ct}({list(10):{rl}}):{num}}==false):{list(10):{rl}} }}\n{=(num):{num}{all({list(11):{rl}}!=|{{ct}({list(11):{rl}}):{rules}}==true|{{ct}({list(11):{rl}}):{num}}==false):{list(11):{rl}} }}\n{=(num):{num}{all({list(12):{rl}}!=|{{ct}({list(12):{rl}}):{rules}}==true|{{ct}({list(12):{rl}}):{num}}==false):{list(12):{rl}} }}\n{=(num):{num}{all({list(13):{rl}}!=|{{ct}({list(13):{rl}}):{rules}}==true|{{ct}({list(13):{rl}}):{num}}==false):{list(13):{rl}} }}\n{=(num):{num}{all({list(14):{rl}}!=|{{ct}({list(14):{rl}}):{rules}}==true|{{ct}({list(14):{rl}}):{num}}==false):{list(14):{rl}} }}\n{=(num):{num}{all({list(15):{rl}}!=|{{ct}({list(15):{rl}}):{rules}}==true|{{ct}({list(15):{rl}}):{num}}==false):{list(15):{rl}} }}\n{=(num):{num}{all({list(16):{rl}}!=|{{ct}({list(16):{rl}}):{rules}}==true|{{ct}({list(16):{rl}}):{num}}==false):{list(16):{rl}} }}\n{=(num):{num}{all({list(17):{rl}}!=|{{ct}({list(17):{rl}}):{rules}}==true|{{ct}({list(17):{rl}}):{num}}==false):{list(17):{rl}} }}\n{=(num):{num}{all({list(18):{rl}}!=|{{ct}({list(18):{rl}}):{rules}}==true|{{ct}({list(18):{rl}}):{num}}==false):{list(18):{rl}} }}\n{=(num):{num}{all({list(19):{rl}}!=|{{ct}({list(19):{rl}}):{rules}}==true|{{ct}({list(19):{rl}}):{num}}==false):{list(19):{rl}} }}\n{=(num):{num}{all({list(20):{rl}}!=|{{ct}({list(20):{rl}}):{rules}}==true|{{ct}({list(20):{rl}}):{num}}==false):{list(20):{rl}} }}\n{=(num):{num}{all({list(21):{rl}}!=|{{ct}({list(21):{rl}}):{rules}}==true|{{ct}({list(21):{rl}}):{num}}==false):{list(21):{rl}} }}\n{=(num):{num}{all({list(22):{rl}}!=|{{ct}({list(22):{rl}}):{rules}}==true|{{ct}({list(22):{rl}}):{num}}==false):{list(22):{rl}} }}\n{=(num):{num}{all({list(23):{rl}}!=|{{ct}({list(23):{rl}}):{rules}}==true|{{ct}({list(23):{rl}}):{num}}==false):{list(23):{rl}} }}\n{=(num):{num}{all({list(24):{rl}}!=|{{ct}({list(24):{rl}}):{rules}}==true|{{ct}({list(24):{rl}}):{num}}==false):{list(24):{rl}}}}\n\n{=(comment):The following tests to see if args are empty, or if help or keyword are present, or if the input failed to generate a shortened list of rules, and if so, sets the rule numbers to the full list of rules}\n{=(largs):{{l}{args}}}\n{=(num):{any({largs(1)}==|{all({in(help):{largs}}==false|{in(keyword):{largs}}==false|{num}==):true|false}==true):{join(,):{rules}}|{join(,):{num}}}}\n\n{=(comment):Embed field generation for rule output, don't touch. ┐ = comma placeholder character}\n{=(ilf):,\"inline\":false}\n{=(cfields):{if({list(0):{num}}!=):{\"name\":\"{t{list(0):{num}}}\",\"value\":\"{rule{list(0):{num}}}\"{ilf}}}┐{if({list(1):{num}}!=):{\"name\":\"{t{list(1):{num}}}\",\"value\":\"{rule{list(1):{num}}}\"{ilf}}}┐{if({list(2):{num}}!=):{\"name\":\"{t{list(2):{num}}}\",\"value\":\"{rule{list(2):{num}}}\"{ilf}}}┐{if({list(3):{num}}!=):{\"name\":\"{t{list(3):{num}}}\",\"value\":\"{rule{list(3):{num}}}\"{ilf}}}┐{if({list(4):{num}}!=):{\"name\":\"{t{list(4):{num}}}\",\"value\":\"{rule{list(4):{num}}}\"{ilf}}}┐{if({list(5):{num}}!=):{\"name\":\"{t{list(5):{num}}}\",\"value\":\"{rule{list(5):{num}}}\"{ilf}}}┐{if({list(6):{num}}!=):{\"name\":\"{t{list(6):{num}}}\",\"value\":\"{rule{list(6):{num}}}\"{ilf}}}┐{if({list(7):{num}}!=):{\"name\":\"{t{list(7):{num}}}\",\"value\":\"{rule{list(7):{num}}}\"{ilf}}}┐{if({list(8):{num}}!=):{\"name\":\"{t{list(8):{num}}}\",\"value\":\"{rule{list(8):{num}}}\"{ilf}}}┐{if({list(9):{num}}!=):{\"name\":\"{t{list(9):{num}}}\",\"value\":\"{rule{list(9):{num}}}\"{ilf}}}┐{if({list(10):{num}}!=):{\"name\":\"{t{list(10):{num}}}\",\"value\":\"{rule{list(10):{num}}}\"{ilf}}}┐{if({list(11):{num}}!=):{\"name\":\"{t{list(11):{num}}}\",\"value\":\"{rule{list(11):{num}}}\"{ilf}}}┐{if({list(12):{num}}!=):{\"name\":\"{t{list(12):{num}}}\",\"value\":\"{rule{list(12):{num}}}\"{ilf}}}┐{if({list(13):{num}}!=):{\"name\":\"{t{list(13):{num}}}\",\"value\":\"{rule{list(13):{num}}}\"{ilf}}}┐{if({list(14):{num}}!=):{\"name\":\"{t{list(14):{num}}}\",\"value\":\"{rule{list(14):{num}}}\"{ilf}}}┐{if({list(15):{num}}!=):{\"name\":\"{t{list(15):{num}}}\",\"value\":\"{rule{list(15):{num}}}\"{ilf}}}┐{if({list(16):{num}}!=):{\"name\":\"{t{list(16):{num}}}\",\"value\":\"{rule{list(16):{num}}}\"{ilf}}}┐{if({list(17):{num}}!=):{\"name\":\"{t{list(17):{num}}}\",\"value\":\"{rule{list(17):{num}}}\"{ilf}}}┐{if({list(18):{num}}!=):{\"name\":\"{t{list(18):{num}}}\",\"value\":\"{rule{list(18):{num}}}\"{ilf}}}┐{if({list(19):{num}}!=):{\"name\":\"{t{list(19):{num}}}\",\"value\":\"{rule{list(19):{num}}}\"{ilf}}}┐{if({list(20):{num}}!=):{\"name\":\"{t{list(20):{num}}}\",\"value\":\"{rule{list(20):{num}}}\"{ilf}}}┐{if({list(21):{num}}!=):{\"name\":\"{t{list(21):{num}}}\",\"value\":\"{rule{list(21):{num}}}\"{ilf}}}┐{if({list(22):{num}}!=):{\"name\":\"{t{list(22):{num}}}\",\"value\":\"{rule{list(22):{num}}}\"{ilf}}}┐{if({list(23):{num}}!=):{\"name\":\"{t{list(23):{num}}}\",\"value\":\"{rule{list(23):{num}}}\"{ilf}}}┐{if({list(24):{num}}!=):{\"name\":\"{t{list(24):{num}}}\",\"value\":\"{rule{list(24):{num}}}\"{ilf}}}}\n\n{=(comment):different description holding variables}\n{=(instr):__Instructions__\nFollow the command with the number(s) of the rules you wish to output with spaces in between. Additional accepted formats are:\n#*x*-#*y* to indicate rules from #*x* to #*y* (limit 1x`-`)\n#+ to indicate rules from # to the end of the list of rules\n+# to indicate rules from 1 to # (limit 2x`+`)\nYou can also mix in keywords that have been set (don't mix keywords and symbols).\nExamples: `!rules +2 nsfw 4-6 8+` }\n\n{=(kw):__Keywords__\n{kw01} {kw02} {kw03} {kw04} {kw05} {kw06} {kw07} {kw08} {kw09} {kw10} {kw11} {kw12} {kw13} {kw14} {kw15} {kw16} {kw17} {kw18} {kw19} {kw20} {kw21} {kw22} {kw23} {kw24} {kw25}}\n\n{=(comment):Embed fields}\n{=(footer):Type \\\"!rules help\\\" for instructions, and \\\"!rules keywords\\\" for the list of reference keywords.}\n{=(des):{if({in(help):{largs}}==true):{instr}|{if({in(keyword):{largs}}==true):{kw}|{if({ruleschannelid}!=):<#{ruleschannelid}>}}}}\n\n{=(comment):finalizes the json for the embed by replacing spaces with a filler character, replacing comma placeholder characters with spaces, joining the spaces with commas, and replacing the filler characters with spaces again. this ensures there are no commas preceeding JSON fields, nor trailing the last JSON field. also includes logic choosing whether to display the full rules list (if args or the input number list are empty AND help/keyword are not displayed) or the custom rules list}\n{=(json):\"title\":\"{embedtitle}\",\"description\":\"{des}\",\"fields\":[{{r}(░,\n):{{r}(█, ):{join(,):{{r}(┐, ):{{r}(\n,░):{{r}( ,█):{cfields}}}}}}}],\"author\":{\"name\":\"{server}\",\"icon_url\":\"{server(icon)}\"},\"color\":3092790,\"footer\":{\"text\":\"{footer}\"}}\n\n{c:cembed {if({in(<#):{args}}==true):{args({index(<#):{{r}(<#,. <# .):{args}}})}|{channel(id)}} {{json}}}",
  "embed": "{}",
  "last_fetched": "2026-10-20T22:36:42.591Z"
}