very simple say !mute time < same with ban!
on *:text:!mute*:#: {
if ($4 == m) { mode # +b ~q: $+ $address($2,5) | timer 1 $calc($3 * 60) mode # -b ~q: $+ $address($2,5) | msg $2 you have been muted for $3 minutes }
if ($4 == h) { mode # +b ~q: $+ $address($2,5) | timer 1 $calc($3 * 3600) mode # -b ~q: $+ $address($2,5) | msg $2 you have been banned for $3 hours
if ($4 == d) { mode # +b ~q: $+ $address($2,5) | timer 1 $calc($3 * 2595000) mode # -b ~q: $+ address($2,5) | msg $2 you have been banned for $3 days }
if ($4 == year) { mode # +b ~q: $+ $address($2,5) | timer 1 $calc($3 * 31140000) mode # -b ~q: $+ $address($2,5) | msg $2 you have been banned for $3 years }
if ($4 == s) { mode # +b ~q: $+ $address($2,5) | timer 1 $calc($3 * 1) mode # -b ~q: $+ $address($2,5) | msg $2 you have been banned for $3 seconds }
}
on *:text:!ban*:#: {
if ($4 == m) { mode # +b $address($2,5) | kick $nick # you have been banned by $nick | timer 1 $calc($3 * 60) mode # -b $address($2,5) | msg $2 you have been banned for $3 minutes }
if ($4 == h) { mode # +b $address($2,5) | kick $nick # you have been banned by $nick | timer 1 $calc($3 * 3600) mode # -b $address($2,5) | msg $2 you have been banned for $3 hours }
if ($4 == d) { mode # +b $address($2,5) | kick $nick # you have been banned by $nick | timer 1 $calc($3 * 2595000) mode # -b $address($2,5) | msg $2 you have been banned for $3 days }
if ($4 == year) { mode # +b $address($2,5) | kick $nick # you have been banned by $nick | timer 1 $calc($3 * 31140000) mode # -b $address($2,5) | msg $2 you have been banned for $3 years }
if ($4 == s) { mode # +b $address($2,5) | kick $nick # you have been banned by $nick | timer 1 $calc($3 * 1) mode # -b $address($2,5) | msg $2 you have been banned for $3 years }
it is all well setting timed bans .. but you need to consider your pc's connection. timed bans are maintained by mirc as chanserv does not have the ability. if you ping out, or have a connection reset by peer , or a power failure , windows reboot etc... that timed ban becomes fixed as it will not reset. i would say realistically for timed bans .. a max of 1 day. also for ease of use and more secure muting ... use mask 2 or 3 ... not 5. also you have no check there that user is halfop or higher.. as required for the command to run. i wont go any deeper at this point other than to query why using $calc for the timer... you can just use timer 1 3600 for example :) simpler, cleaner, shorter