When I'm sitting here staring at my simulation, wich looks like a snowstorm in slow motion, I got an idea about how you could use the shots. What if you just start a simulation with only shots in it and every shot was assigned a random character, and when a shot touches another shot they merge together and combine the characters. After awhile you whould end up with a sequence of characters wich (if lucky) could form a functional value or command. If the commands are right they could create shell or slime around them to make a bot. Then they could continue to evolve and form multibots where different parts have different functions. A simple worm for instance where the first bot whould be the head that gulps down lesser bots and transports them to the belly bot, wich transform them to energy and sends it out to the other bots.