I guess the best place to put this would be here.
I was experiencing the "big rhombus" error with GlowTexture talked about over on this thread
and looked at cieply's attempt at fixing it, but it was noticeably wrong by the screenshots (his fix was making the game use a different image for the GlowTexture than the intended one, and had nothing to do with making one image act as a mask for another one as he seemed to think... I'm pretty sure it's simply working because he made it use an image that was loaded through Bladex.ReadBitMap as I detail below). After ruling out the image itself being corrupt in the Data folder, I tinkered a bit and think I've found a pretty simple fix:
In Scripts\InitParticleSystems.py, you'll notice that some of the flares and stuff are loaded with Bladex.ReadBitMap and others with Bladex.ReadAlphaBitMap. For the line that loads an image for the offending GlowTexture, change ReadAlphaBitMap to plain ReadBitMap and it should work. You can't see the results by reloading a savegame from the area you were having the problem, though, unfortunately (I guess it already remembers loading it the "wrong" way?) I tested it using IronLord's "Nirvana" map as a quick test case so you might do the same if you have the issue on the rainbow stars in that map.
Obviously, you'll want to backup InitParticleSystems.py and I would guess delete the .pyc version once you make changes to make sure it recompiles.
Why this works, and why it's wrong in the original game scripts, I don't know... possibly another inconsistency with the OpenGL renderer?
Edit: Confirmed that this works (for me at least) on the opal gem Birr in Nemrut if the game is started with the script changes I described. Haven't gotten to the skull trap in the Temple of Ianna but I don't see any reason to doubt that'll be fixed as well. Here are the fixed lines in InitParticleSystems.py:
Code: Select all
Bladex.ReadBitMap("../../Data/Flare magico 128.BMP","MagicFlare128")