Wiem, że wątek nie ruszany od dawna, ale wymyśliłem jak zrobić to, co chciał zrobić @Avallach (jak nie zadziała to mnie poprawcie).
Otóż wymyśliłem jak w 100% rozwiązać pierwszy problem. Wystarczy zrobić ileś tablic po 4000. Trzeba tylko zrobić w funkcji, żeby jeśli liczba (ten nasz identyfikator, czyli np. pc_mage.id jest większa niż 4000 to odejmie od niej 4000 (a jak większa niż 8000, to 8000 itd.) i użyje kolejnej tablicy.
Drugi problem (nie wiem, czy go dobrze rozumiem):
Tak, czy siak trzeba zrobić (już po pomniejszeniu liczby) coś takiego (musi być w funkcji):
const int stała = zmienna;
Czyli po prostu tworzymy stałą, bo zmienna nie może być indeksem.
I otóż, jeśli dobrze rozumiem, ta tablica musi jednak mieć rozmiar 256, a nie 4096. To po prostu trochę więcej roboty (trzeba zrobić analogicznie). 16 razy więcej.
To tyle.
Bez żadnego Ikarusa, czy innych udziwnień.
Czy uważacie, że to mogłoby działać?