Цитата Сообщение от ZoWW Посмотреть сообщение
Сколько переменных на ваш взгляд можно использовать без заметного проседания производительности скажем при 4 Гб оперативки?
На мой взгляд об этом вообще не стоит волноваться.

4Гб - это огромное количество информации и такие мелочи, как ваши два скромных массива 30х30 и 7x30 его не заполнят никак, если вы не повесите расчеты на параллельный процесс вычисляя производство в реальном времени.

А вам нужен всего один расчет погрузки/выгрузки товаров в игровые сутки, а компьютеры считают очень быстро. Пауза в 1-2 секунды? 3? Какая разница? Перемещение персонажа из локации в локацию порой происходит в мейкере дольше, чем будет считаться вся ваша экономика.


Цитата Сообщение от ZoWW Посмотреть сообщение
Массивы меня бы устроили (хеши), но я с RGSS пока не очень дружу. Цены товаров я в массивы запихнул, а вот с остальным пока не получается.
Я сам не дружу, но фактически, нужны всего два двумерных массива.

Массив первый $sklad = Array.new(30) { Array.new(30) }, где первый индекс это номер склада, второй номер товара. Так, в ячейке, например $sklad[3][5] у нас лежит число количество товара №5 на складе №3. Мы можем его уменьшить когда товар забираем со склада и увеличить, когда добавляем.

Подружите это со скриптом Galv's Shop Upgrade и получите не склады, а полноценные мейкерские магазины с нужным вам количеством товара.


Второй массив $caravan = Array.new(7) { Array.new(30) }, где первый индекс это номер каравана, второй номер товара (нумерация товаров в караване для удобства аналогична нумерации товаров на складах).

Дальше остается вопрос написания алгоритмов логистики (перемещение караванов из города в город, тут, конечно, сложно сообразить по какому расписанию 7 караванов будут циклично курсировать между 30 городами, это даже нацело не делится) и алгоритм выгрузки/погрузки товаров (это уже чистая арифметика, хотя вам придется попотеть с балансированием производства и расхода товаров, чтобы не допускать ни затоваривания, ни дефицита).