Did you try using the code in your example? $gettok(%text,6-,32) is completely valid in mIRC. In gettok you can use positive numbers, negative numbers, positive ranges, and negative ranges. Negative to positive ranges (-4-6) are not valid and simply default to a negative range with no end point (-4-). Example:

%text = a.b.c.d.e

$gettok(%text,2,46) -> b
$gettok(%text,2-3,46) -> b.c
$gettok(%text,2-,46) -> b.c.d.e
$gettok(%text,-3,46) -> c
$gettok(%text,-3-,46) -> c.d
$gettok(%text,-4--2,46) -> b.c.d

$gettok(%text,-4-4,46) -> b.c.d.e (invalid range)

-5 | -4 | -3 | -2 | -1
a . b . c . d . e
1 | 2 | 3 | 4 | 5

-genius_at_work