Design problem regarding type slicing with many different subclasses.
A basic problem I run into quite often, but ever found a clean solution to, is one where you want to code behaviour for interaction between different objects of a common base class or interface. To make it a bit concrete, I'll throw in an example; Bob has been coding on a strategy game which supports "cool geographical effects". These r...