I once read that if you ask designers to create a tank simulator without any compromises, they would end up designing the tank itself. The art of simulation design is about understanding limited fidelity. Even in multimillion-dollar simulators, compromises must be made. Designers have to consider cost vs. fidelity and processor time vs. fidelity. Additional trade-offs must be made between graphics, AI, algorithms, number of units and more. The basic rule in building a tank simulator is to never ask the operator what he wants because he too will end up building a real tank. Instead, ask the operator what he needs to learn.