DaleStan wrote:
In the Planeset, the Osprey requires 120 sprites, and I could drop that by at least 15 by cheating the some of the never-used sprites into "-1*1 00"s. But I know what Oskar thinks of that.
They count as active sprites because they are handled like this. And TTD will crash when it tries to display it. So you can't cheat this way.
There was a side discussion about the language file and grfauthor helper.
I have some ideas for a new system after stable which will remain to 11k blocks but more then 5.2 blocks total and reduce one layer and access the memory directly. (This can be slower or faster, currently I have no idea)
Aka faked spriteid to sprite pointer instead of faked to real sprite to pointer as we use it now. However as I said, I have no idea if it would have any perfomance impact. Atleast you can count that some alphas won't be useable because of Sprite problems after such a dramatical change. A other idea atleast for completly new features (say newroutes) is to use a new DrawSprite/AddSprite system to have more faked ids to pointers, however Josefs action system can only handle 0xFFFF sprites aswell!
I do think with my easier layout that I have in my mind to even recycle places currently not useable. Faked sprite id could use some sprites from under baseoursprites (<4900). Atleast vehicles. I think some extra 1000 sprites for busses would make George very happy.

Btw. thanks for your mail.
If you need to know more about how TTDPatch stores currently the sprite blocks you can look at my site under other. If you need even more insight, a73 should have a much more readable spritelimit assembler file.