Here is the code for the game you described:
Please note that the provided code sets the foundation for the game you described, but you will need to add additional logic for reproduction, resetting when all dots die, and more complex interactions between dots as described in your requirements.