Now they are size 1. big but i can still use them like they are 8129.
With a few restrictions.
Some GUI actions rely on arrays having an initialized value to them. If they do not have this value, there is a chance they may not work as intended. The simple solution is to initialize indices when you require using them.
There is also the problem of reading from a yet unused index. What value can you expect to be returned since there was nothing previously written there? It is advised that an index you want to use you write to first before reading from to make sure a reasonable and expected value is returned (this can be done an index at a time as the index is required for use).
And i have like 10.000 leaks and still works without lag even not using idex system, and using 0.01 triggers ( 275 ).
Leaks slow down certain game operations depending on the type of leaks. Eventually with enough leaks you will find some operations are so computationally expensive to perform that they can cause frames to be dropped (common one is strings which is the only non-fixable leak in WC3). Running triggers 100 times a second is very computationally intensive as JASS is very slow (orders of magnitude slower than real program code). Running 275 triggers 100 times a second could easily eat most of your usable processing power meaning that the slightest intensive situation (huge fight, lots of models on screen) will have to drop frames to keep timing.
Frame dropping occurs in two situations...
1. The system lacks the necessary computational resources to keep the game engine update period and generate the shader instructions for rendering the graphics. To prevent the reduction in game engine update period it will start skipping generating the shader instructions up to a certain number of times (there is a limit on skipped frames before it forces a frame to prevent the process from becoming completely unresponsive).
2. The system graphic accelerator is still busy executing shader instructions when it comes time to swap display buffers. Executing the shader instructions is so intensive that it takes more than 1 display period to perform. Depending on how the game handles feedback from the graphic accelerator, it may buffer/discard shader instructions or skip generating them entirely.
1 is what most frame skipping is in WarCraft III. Due to the nature of this type of frame skip, you can often find that the number of skipped frames per second sky rockets very easily once it starts because the amount of time saved by not generating the shader instructions is quite small. This obviously comes from the old organs of WC3 where processors were slower so the shader instruction generation took fractionally more of their time.
2 is virtually impossible in WC3 in this day and age. Modern gaming graphic cards are so strong WarCraft III barely loads them even when extra visual enhancements like 16x Anti-Aliasing are turned on. The only time you may notice this is in certain visually intensive states. An example is many near full-screen sized alpha billboards which become very expensive to render at that size for some unclear reason (probably related to graphic enhancements).