I have isolated this issue. There's an easy hack we can use to solve it, but a proper fix is tricky.
Here's the technical detail:
Shader Model 2.0 and 3.0 cards support 256 vertex shader constants. These are parameters that are passed to vertex shaders, used e.g. for lighting settings, positions and other things. Shader Model 4.0 cards usually have 512 or 1024 constants, except ATI cards on OSX, which have only 256(driver limitation).
CrossOver needs at least one vertex shader constant for private use, and on MacOS the graphics driver needs some as well - we're reserving 16 constants, although the number isn't advertised by the driver. It can use more, sometimes less. This can be considered a driver bug, because the driver claims that all 256 constants are available.
In cxgames 7.2, we advertised around 230 constants, ie, the safe value. This broke some shader model 3.0 games, so we advertise 256 now. Very few apps actually need all constants, but some apps complain if we advertise fewer than 256.
Unfortunately, Guild Wars tries to use up to 251 constants, but since its a shader model 1 app, it deals with limitations if fewer constants are available. Now that we in effect lie to GW, it reads undefined constants, leading to the symptoms you see.
There are about 5 to 6 different cases in which we fall below 251 available constants. I addressed two of them so far in the nightlies. ATI X1xxx cards on OSX, Intel cards on Linux and Geforce8+ cards should have this bug fixed by now - we make 254 or 256 constants available to the game. I am working on a few more special cases. There are some remaining ones where we can't get above 251 constants. Nvidia dx9 cards with GLSL, and ATI and Intel cards with GLSL. In this case I think I'll have to add a hack to advertise fewer constants to some games.