Страница 8 из 15

СообщениеДобавлено: Пн янв 01, 2007 15:45
Pk
Quark писал(а):
Pk писал(а):Патч "Перевозчик"
Суть:
Завод определяет к-во груза, его место назначения, время доставки (макс.) и цена за доставку.
Соответственно, цель примет груз в любом случае.

Что-то вроде Субсидий, только с другим балансом. Так же может быть "только для одной компании", т.е. груз резервируется в к-ве N штук для M компании. Остальное - как угодно.
+ Можно сэкономить на транспорте

Возможны модификации.

Разговоры на эту тему уже давно ведуться — я предлагаю взять экономику, как в игре «X-tension» — у предприятия есть первичный и вторичный потребляемые ресурсы, из первичного вырабатывается продукция, вторичный же ресурс может ускорять выработку (рабочие, еда для рабочих, новая техника на замену или ремонт старой и т.п). Некоторые предприятия способны вырабатывать продукцию без использования первичных ресурсов, например шахты или фермы. Каждый завод сам устанавливает цены свою продукцию и необходимые ему ресурсы, цена эта рассчитывается по принципу «склад пуст — цена максимальная, полон — минимальная». Конечные продукты будет потреблять город. Можно еще завязать количиство принимаемых городом пассажиров на количество привезённых товаров, пассажиры же приехавшие сверх этого значения будут давать, например, 50% дохода.
При такой экономике время доставки будут оплачивать только пассажиры — мы «покупаем» их бесплатно или платим страховку на случай потери их в пути :) Грузы же со временем могут портиться, уменьшая своё количество, скорость порчи будет своя для каждого груза.
Переодически будут возникать субсидии типа «доставить X груза A в точку B за Y дней по цене C за единицу груза», цена при этом будет от максимальной до 150% от максимальной.

В маршрутном листе поезда будем указывать закупочную цену и цену продажи для товаров, если же поезд приехал, а условия не выполняются, то он стоит и ждёт, пока те не изменятся.

При такой стратегии уже не будет смысла «возить всё на один завод», надо будет искать маршруты, на которых есть спрос и планировать объёмы поставки, а также следить за субсидиями. При этом вмешательство оппонента ощутимо скажется на игре :)


Воздержусь от комментариев, скажу лишь, что есть 1-2 уже озвученные мысли, одна новая и всё. А не проще ли ввести "склады"?
И уже с них отпускать всем нуждающимся в рамках контрактов? (тут минимум 2 алгоритма, тонем этот патч тогда позже). Без новых алгоритмов это не поможет.

СообщениеДобавлено: Пн янв 01, 2007 16:44
Titanik
Тема складов, кстати, реализована в Industry Giant 2

СообщениеДобавлено: Пн янв 01, 2007 18:06
Pk
Со, однако там весьма не очень была реализована такая вещь как передача груза на точки. Фильтры передачи грузов то бишь.
Общая схема, которую можно использовать, может выглядеть так:
[склад на точке]-[основной склад]-[потребитель]

Склад на точке - стандартный ТТД
Основной склад - хранилище, которое может передавать груз всем, кто просит, обращая внимание на фильтры.
Потребитель - любые игроки/объекты.
Склад не имеет своей зоны охвата.

В чём плюс?
В он-лайн игре игроки могут создавать цепочки из единиц разных компаний (в город "А" вода поступает поездом, часть воды остаётся в городе. Из города "А" же вода уходит на грузовиках в соведние "Б" и "В", т.к. игок с а/м не имеет возможности строить свой путь, а с ЖД влом.)

Превью: вычисление пути для а/м. Расписка на бумаге.

СообщениеДобавлено: Пн янв 01, 2007 23:09
Quark
«Все вычисления можно проводить не выводя процесс с карты игры, т.е. скорость мышления будет зависеть от скорости строительства.» — тогда придётся отслеживать изменения на карте.
В моём варианте ИИ расчитывает план строительства, а потом проверяет возможно ли его реализовать — если нет, то рассчитывает заново. Т.е. тут и так процесс строительства отделён от карты и рассчитывается в фоне.
Не скорость мышления зависит от скорости строительтсва, а скорость строительства зависит от скорости мышления, а еще точнее средняя скорость строительства или время до начала постройки очередного маршрута.

СообщениеДобавлено: Пн янв 01, 2007 23:14
Quark
Pk писал(а):Воздержусь от комментариев, скажу лишь, что есть 1-2 уже озвученные мысли, одна новая и всё. А не проще ли ввести "склады"?
И уже с них отпускать всем нуждающимся в рамках контрактов? (тут минимум 2 алгоритма, тонем этот патч тогда позже). Без новых алгоритмов это не поможет.

Я и сказал, что разговоры на тему уже были. Вот только новых мыслей однозначно больше одной :). «Склады» уже есть, только вот в виде NewGRF файла только для первого климата и, кажется, это работает только в TTDPatch. Вот только со складов ничего не отпускается, они работают только для принимаемого товара и не влияют на цену приёма груза.

Titanik писал(а):Тема складов, кстати, реализована в Industry Giant 2

То что она там реализована нам абсолютно ничего не даёт.

СообщениеДобавлено: Пн янв 01, 2007 23:20
Pk
Городские строения были ещё в ТрТ, кажется.
Но топик не про это.

Всё, пора делать блок-схемы.

СообщениеДобавлено: Пн янв 01, 2007 23:23
Quark
Pk писал(а):Склад на точке - стандартный ТТД
Основной склад - хранилище, которое может передавать груз всем, кто просит, обращая внимание на фильтры.
Потребитель - любые игроки/объекты.
Склад не имеет своей зоны охвата.

Делать дополнительный склад в качестве основного нет смысла, предприятия просто работают, а субсидии выдаёт заказчик.
Про какие фильтры идёт речь? В предлагаемом мной варианте игрок либо берет товар по выбранной им цене, либо ждёт пока цена не изменится. А субсидии проверяются на выполнение в момент доставки до конечного пункта (исходные склады, с которых забирается груз никак в этом не участвуют, если только в субсидии не было условия «держать заполнение исходного склада не выше X%»)

Еще раз скажу — склад есть у предприятия, это одно и тоже строение и зона охвата у них одна общая, но пользуется ею само строение, так что у кого зона охвата без разницы :).

Pk писал(а):В он-лайн игре игроки могут создавать цепочки из единиц разных компаний (в город "А" вода поступает поездом, часть воды остаётся в городе. Из города "А" же вода уходит на грузовиках в соведние "Б" и "В", т.к. игок с а/м не имеет возможности строить свой путь, а с ЖД влом.)

для этого трансфер есть. А город лишнее не будет продавать — ему самому надо.
Можно просто реализовать продажу груза другому игроку со станции.

СообщениеДобавлено: Пн янв 01, 2007 23:26
Pk
Слушай, перескажи своими словами то, что ты читаешь!

Или ты не читаешь, что написано?

"Фильтры передачи груза" - фильтры отправки грузов на другие объекты.

включи воображение, плиз!

СообщениеДобавлено: Пн янв 01, 2007 23:31
Quark
никак не пойму что за фильтры такие? типа патча с направлением пассажиров или как?

P.S. моё воображение вовсе необязано воображать тоже, что и ваше :)

СообщениеДобавлено: Вт янв 02, 2007 10:45
Pk
По складам:
Ладно, забей, додумаем сами. Либо закинь пост на общемировое рассмотрение..

По строительству дорог и ЖД
При строительстве дорог я выделил (в своей тактике) следующие этапы:
1) определение потенциальных маршрутов (что куда везти). Предпочтение тем маршрутам, которые можно пустить через города.
2) После нахождения узловых городков (где смыкаются рассматриваемые маршруты) наченается планирование узловых городов., а именно
10 [рассчёт остановок]
15 [рассчёт доп дорог]
20 <хватает остановок?> нет GO TO 10
30 [определение маршрутов]
35 <дорог хватает для маршрутов?> нет GO TO 15
40 [определение границы города]

SUBs
[рассчёт остановок] - производится на карте города. Задача - охватить стандартными комбинациями* всю (80%) полезной поверхности города. Т.е. производится из рассчёта, где должны бы были стоять остановки, чтобы обеспечить максимальный охват полезной городской площади.
Так же рассчитываются "точки входа" в город.
[рассчёт доп дорог] - производится на карте города. Задача - обеспечить максимальное развитие города (привязана к переменной охвата дорог) и доступ ко всем остановкам.
[определение маршрутов] - рассчёт имеющихся дорог из соображений о том, чтобы маршруты не мешались и проходили как можно быстрее.
определение границы города - определение внешней границы сити для подсоединения к нему автодорог.
-----
Примечания:
* - в "стандартные комбинации" могут включаться как остановки транспорта, так и аэропорты, порты, жд станции (нужен нормальный алгоритм) и даже определённые дороги/пути.

СообщениеДобавлено: Вт янв 02, 2007 10:46
Pk
[рассчёт остановок]
├[нахождение первой точки строительства]
├[рассчёт оптимальной конструкции]
│├<планируются а/м остановки>
││├(да) [рассчёт грузопотока]
││└[рассчёт оптимальной конструкции]
│├<планируется городская ЖД?>
││├(да) [рассчёт грузопотока]
││├[рассчёт оптимальных путей] ([1]2[1], 2[2]2[2]2, [2]1[2], кольцо/линия)
││└[рассчёт мостов].
│├<планируется магистральная станция ЖД?>
││├(да) [рассчёт оптимальной конструкции]
││├[нахождение первой точки строительства]
││├[рассчёт грузопотока]
││├[рассчёт стоимости]
││└<удовлетворяет>
││…├(да) {отправка проекта на Рассмотрение}
││…└(нет) {пометка остановки как временно не использующую данный вид транспорта}
│├<планируется ли аэродром>
││├(да) [рассчёт пассажиропотока]
││├[нахождение первой точки строительства]
││├[рассчёт стоимости]
││└<удовлетворяет>
││…├(да) {отправка проекта на Рассмотрение}
││…└(нет) {пометка остановки как временно не использующую данный вид транспорта}
├[рассчёт стоимости]
└<удовлетворяет>
…├(да) {отправка проекта на Рассмотрение}
…└(нет) {пометка остановки как временно не использующую данный вид транспорта}

Мож сделать тему в "Разработке?"

Added
Это что интересно одному мне?.. Кто-нить анализируйте, у меня фантазия не супер! Да и я сам достаточно слабый.

СообщениеДобавлено: Вт янв 02, 2007 11:21
Quark
хмм, я думаю что такой алгоритм делать не стоит — получается опутывание города сетью компьютера, высасывание из него всех пассажиров и прокладка мимо города грузовых путей
имхо, ИИ должен строить что-то простое, но в тоже время интересное и не отнимать последний кусок хлеба у других игроков :) Желательно более одной станции в городе без особой необходимости не строить

СообщениеДобавлено: Вт янв 02, 2007 11:23
Pk
А вот это оспоримо. Голосование!

СообщениеДобавлено: Вт янв 02, 2007 11:24
Quark
да и к тому же сейчас основная проблема заключается в прокладке оптимального маршрута между двумя точками, а с остальным можно постепенно в последствии разбираться

СообщениеДобавлено: Вт янв 02, 2007 11:34
Pk
"кратчайший путь" - это старый вариант.
"оптимальный путь" - это то, что мы спорим.

В чём разница?
"Кратчайший путь" - это прямая, без интересов других маршрутов(!).
"оптимальный" - дающий наибольшую выгоду со всех маршрутов.

Опять же есть такой пункт, как "competitor's AI", des ne? (так, не?)