Hello~!
this topic for invisible icons/models /textures inside client
just for discuss or if anyone want to suggest or fix it in future
i will share what i found in my debugging inside client source
the bug:
its known as invisible npcs/icons etc inside top community
its happen due
MPTexSet
reaching max index which is 2048
every time client load ui image or icon or model, or terrain image
its store it inside
CRawDataSet
so simply every time client call "DynamicRelease"
every 8seconds , its release the textures inside:
MPTextureSet.h :: _DeleteRawData
but pinfo remain indexed inside CRawDataInfo for future use
so if exist its return pointer from
std::map<std::string, CRawDataInfo*> _IDIdx;
if not its create new index as
pInfo = (CRawDataInfo*)(pbtData + _GetRawDataInfoSize() * _nUnusedIndex);
so after few walks/using skills or open many npcs with icons
will cause the bug as these info never been deleted from pinfo or replaced
#what happen if we just increased MPTexSet size?
well if you increase it for example to
MPTexSet *pTextureSet = new MPTexSet(0, 3048);
icons will load with no issue but you will face 2 kind of bugs
1:skills and attack start to delay around 10-15seconds
2:client will crash while attacking after reach 2700 index of MPTexSet
&this topic for mindstorm/ suggestions!
that's it!