usually, for stuff like that, i use a simple hash table, and for each you want to keep a track of, i use a token to split it up, so storing an entry is like
;item is the dare number
alias dare.add {
hadd daretable %darenumber %daree @ %dare_time @ %dare_name @ %darer
}
and to retrieve data, I write a series of layers of alias
alias r.dare.daree {
return $gettok($hget(daretable,$1),64,1)
}
alias r.dare.dare_time {
return $gettok($hget(daretable,$1),64,2)
}
; etc...
You have to do a lot of checking to make sure each field is there, and have to pick the right token. sometimes i use $chr(160) (non breaking space) or $chr(44) (comma) for readability. just pick something that would rarely be used in the description, and make sure to filter it out incase it is.