I am not sure if this solution is good to prevent the forum. Most people will just give up instead of waiting 4 hours and making 10 posts. I know that this method will damage 99% of spam but it will also damage 80% of real users. I know how difficult it is to prevent forum from spam
There is no best choice but 4 hours and 10 posts is too much. You can reduce it for 1 hours and 5 posts maybe. What do you think?
More vulnerable to spams bot. Anyway, it can help to prevent fake users who only came to get the bonus and the true user who want to join this forum. Bonus as it those giveaways that needs 20-30 posts.