Couldn't get it to work? Try the following:
@prop cat.angry_msg "hisses and scratches at"
=> Property added with value "hisses and scratches at"
And change the line from:
player.location:announce_all(this:titlec(), " hisses and scratches at ", player:title(), ".");
To:
player.location:announce_all(this:titlec(), " ", this.angry_msg, " ", player:title(), ".");
Voila, it uses your property now.