I'm not sure how it would need to be difficult.
In the bot:
on *:TEXT:!backlog:#channel:{
if (%last. [ $+ [ $nick] ]) {
msg $nick You must wait before requesting another log
return
}
.play $nick logfile.txt 100
set -u300 %last. $+ $nick 1
}
on *:TEXT:*:#channel:{
write logfile.txt @ < $+ $nick $+ > $1-
if ($lines(logfile.txt) > 25) write -dl1 logfile.txt
}
For users:
on ^*:TEXT:@ *:?:{
if ($nick != botnick) return
echo #channel $2-
halt
}
I just made that code up in 5 mins.. so there are probably some bugs to tweak.
-genius_at_work