Hashmap is a slight overkill if you are using world numbers as a key (why not an array using the world number as index?) you could also look into cyclic buffer or just a queue and just randomly pick from the 5 at the front as long as it satisfy your conditions
Hey Laz, please add this to the javadocs so it comes up in the API
It would make it more helpful (I didn't realise the returned value did this), I assumed it was an exit status (d'oh)