void catch_tell(string str) {
    object ob;
    string a, b;

    if(this_player() == (ob = this_object())) return;
    if((sscanf(str, "%squest%s", a, b) == 2) || (sscanf(str, "%shelp%s", a, b) == 2)) {
        this_object()->force_me("say You want to help???  Please find the spy!");
        this_object()->force_me("say Bring me proof that you have killed the drow spy.");
        this_object()->force_me("say I shall reward you handsomely.");
        return;
    }
    if((sscanf(str, "%shosseldorf%s", a, b) == 2) || (sscanf(str,"%sHosseldorf%s", a, b) == 2)) {
        this_object()->force_me("say Thank you for killing the drow spy!");
        this_object()->force_me("say If he had given this map of Roston to his people we would be lost.");
        this_object()->force_me("say Here is the reward you so handsomely deserve!");
        if(!this_player()->set_mini_quest("drow spy", 5000, "You killed the drow spy in Roston.\n"))
        return;
    }

}