Changes
Oh, the existing code is 0-based
function str.sublength( frame )
local i = tonumber( frame.args.i ) or 10
local len = tonumber( frame.args.len )
return mw.ustring.sub( frame.args.s, i+ 1, len and ( i + len - 1 ) )
end