Posts: 1,912
Threads: 5
Joined: Feb 2007
Reputation:
0
А с чего у вас с буффера на каких-то 10 тысяч "ячеек" что-то зависло? Или привыкли компилить мелкие говномоды за пару секунд?
Posts: 190
Threads: 51
Joined: Dec 2013
Reputation:
0
Ты "типа" выпендреться решил, да?
Мод компилируется сам по себе ~6 минут. Но вот незадача.. прошло уже 10 минут...
Т.е. ничего такого не должно быть?
Просто есть вариант проверять ближайший лут - стримером.
Или это лучше делать через IsPlayerInRangeOfPoint?
Posts: 190
Threads: 51
Joined: Dec 2013
Reputation:
0
new DObjects[10000][d_Info]
Posts: 35
Threads: 3
Joined: Aug 2015
Reputation:
0
Зачем столько ячеек?
Сделай 500 ячеек и обновляй их.
К примеру: записал ID лута, количество, дату в unixtime. Потом если все 500 ячеек заняты, то ищешь ячейку с самым мелким unixtime и меняешь лут. И оптимизация, и никто из игроков не будет бомбить типа "куда мой лут пропал, только скинул". Кстати, хорошо я придумал. Нужно себе такую же систему сделать.
P.S. Делал давно на 10000 ячеек и система работала плюсом со SQLITE. Может ты просто криво что-то написал. У меня всё работало отлично и компилировалось быстро.
Posts: 1,042
Threads: 46
Joined: Jun 2013
Posts: 190
Threads: 51
Joined: Dec 2013
Reputation:
0
invalid array size (negative, zero or out of bounds)
Posts: 230
Threads: 2
Joined: Aug 2010
Reputation:
0
CreateDynamicSphere + Streamer_SetArrayData + E_STREAMER_EXTRA_ID - создаем лут и записываем о нём данные в стример
GetPlayerNumberDynamicAreas + GetPlayerDynamicAreas + Streamer_GetArrayData - чекаем зоны в которых находится игрок и достаем данные из них
В итоге никакие массивы тебе не нужны, загружай при старте, сохраняй/добавляй/удаляй сразу как изменили/скинули/взяли