No, things can be simulated before they exist. For example, computers were often simulated (emulated) before they were actually manufactured to allow programmers to code for them.
As regards considering simulations real. I consider them real in that robocode is actually simulated by bunch of tiny particles moving around on an actual thing. However, I think we can both agree that there is a sense in which it is a game that employs abstract concepts. (ie. I could explain Gil-galad in terms of mathematical concepts)
As regards perception, we perceive the real computer screen showing us results, but Gil-galad is a universal. It is not this or that particular instance of magnets aligned in a certain way. (Sort of like OOP. You have a class, (let's make it an abstract class) and the only real existence that it has are instantiations of the class. But the class is like a universal.)
You just can't "simulate" something before it has been made. You just can't, it makes no sense, it's like saying "I predict that in 1929, the US stock market will crash" right now. It's poor English at best. To simulate is to take something real, and make a virtual representation of it. In your example, they did just the opposite: they took something virtual and made a real representation of it.
I don't quite understand your last two paragraphs. Are you saying that although Gilgalad has a physical presence as a pattern of electrical signals, it is somehow incorporeal in nature?
Sorry about the weird response times, I have midterms this week.
" To simulate is to take something real, and make a virtual representation of it. In your example, they did just the opposite: they took something virtual and made a real representation of it. "
When I run robocode, I take some virtual "things" (say Gilgalad and Raiko) and make a real (in the terms of electrons moving about) thing based on them.
As regards my last two paragraphs, I'm trying to phrase in everyday language the idea of universals. I have a copy of Gilgalad on my computer and presumably you have one on yours. The COPIES are not the same thing (there are two of them, using different bits of matter) but they are copies OF the same thing.
This also explains why you can simulate some "thing" that doesn't exist yet. A plan for the thing exists but the plan is like a universal (it doesn't exist by itself) you can use the plan to make a real representation of it. If you want examples of simulation being used in this way, see http://en.wikipedia.org/wiki/Emulator
I assume Gilgalad saves some data to file, so it could actually behave differently on different computers when in exactly the same situations?
Well, it's Aristotelian rather than platonic, but they are similar... One big difference is that Plato considered the forms to exist in themselves and the objects "shared" in the form. Sort of like a tree and it's shadow. The tree would be the form and the shadow would be the objects. With Aristotle it's more like abstract classes. You can't instantiate an abstract class (forms don't exist in themselves), but you can "share" in them (inheritance).
As regards Gilgald, no, no data files. But if it did, I wouldn't consider that the same situation since Gilgalad's classifications depend on previously collected data.