I believe that what you are trying to do is somewhat similar to what I tried to do when I first started coding. When I realized that the "on Join" wasn't working for me, then I made this script to serve my purpose.
When I have something new I want to say, then I just type "!update 0.5 I added some stuff.", and the next time someone chats in my channel, it whispers them "Welcome to StreamBot v0.5! Changelog: I added some stuff."
Code:
on *:TEXT:!update*:#: {
  if ($nick == kuboskube) {
    set %Version $$2
    set %Changelog $$3-
  }
}

on *:TEXT:*:#: {
  if (%Version. [ $+ [ $nick ] ] != $null && %Version. [ $+ [ $nick ] ] == %Version) {
    goto VersionChecked
  }
  set %Version. [ $+ [ $nick ] ] %Version
  msg $chan /w $nick Welcome to StreamBot v [ $+ [ %Version ] $+ [ ! ] ] Changelog: %ChangeLog
  :VersionChecked
}