NML версия набора (обсуждаем только вопросы кода!)

Модераторы: eraserkry, Smoky555, ihim4, Wowan, Группа модераторов

NML версия набора (обсуждаем только вопросы кода!)

Сообщение дворник » Пн дек 19, 2011 13:05

Возобновляю публикацию NML версии набора.
За время перерыва NML научили использовать плюшки NewGRF версии 8. Ну и я решил попробовать. Одно из прикольных - для сочленённых поездов можно использовать id более 7F. Вроде бы. :)

xussr.17.7z
(245.07 Кб) Скачиваний: 688


- добавлены паровозы Л/Лп,
- правильные размеры в депо,
- подключена вся графика для имеющегося на данный момент ПС (дизель-поезда, паровозы),
- ссылка из игры ведёт в этом форум,
- минимальная версия теперь транк 1.2.0 ревизия 23166 (ограничение NML 0.3), но лучше взять последний транк.

Хотел начать подключать тепловозы. Открыл Да. Файл общий с ТЭ1, ничего не подписано, 8 наборов спрайтов в столбик. Ну, предположим, что там 4 ПС в аверсе/реверсе. Но почему их 4, а не 2?
В общем, нужны ответы на вопросы по Да/ТЭ1.
1. Что за 8 спрайтов?
2. Где перед на каждом из них?
3. Кто из них Да, кто ТЭ1?

Думал взять следующий, ТЭ2. Спрайтов аж 4 файла. А в xls одна строчка на него, годы 1948-1955. А спрайты-то только с 1949 года. И аж до 1972 и после. Никакой кореляции, непонятно, как программировать.

Следующий ТЭ10. Файлов 2, в xls опять ровно одна строчка. Для дизель-поездов было несколько строк с совпадающими годами.

Остановился, чешу репу. :)

В общем, нужны разъяснения. (Я бы, конечно, хотел, чтобы были надписи на графике и они соответствовали xls файлу. Но и тут текстом написать - можно будет чего запрограммировать.)
дворник
Президент
Президент
 
Сообщения: 563
Зарегистрирован: Сб дек 05, 2009 22:57

Re: NML версия набора

Сообщение Wowan » Пн дек 19, 2011 15:59

дворник писал(а):Открыл Да. Файл общий с ТЭ1, ничего не подписано, 8 наборов спрайтов в столбик. Ну, предположим, что там 4 ПС в аверсе/реверсе. Но почему их 4, а не 2?
Пара верхних - Да (аверс/реверс). Три пары нижних - ТЭ1.

дворник писал(а):Думал взять следующий, ТЭ2. Спрайтов аж 4 файла. А в xls одна строчка на него, годы 1948-1955. А спрайты-то только с 1949 года. И аж до 1972 и после. Никакой кореляции, непонятно, как программировать.
С датами просто косяк, ставь с 1949-го (реально выпускались с декабря 1948-го, поэтому в таблице так).
Окраски 1949 и 1950 - это заводские ливреи. Все выпущенные 1949-м ТЭ2 окрашиваются в синюю. Выпущенные с 1950-го (и до 1955-го, пока ТЭ2 находится в произвдодстве) - в серо-зеленую.
Новые окраски в 1960 и 1972 году - это принудительная перекраска всех ранее выпущенных при заезде в депо. Первый раз перекрашиваются в 1960-м, второй раз перекрашиваются в 1972-м. И потом уже катаются так до конца.

дворник писал(а):Следующий ТЭ10. Файлов 2, в xls опять ровно одна строчка.
Аналогично ТЭ2. Есть две заводские ливреи образца 1958 года - серо-зеленая и серо-голубая. А в 1972-м все ранее выпущенные тепловозы принудительно перекрашиваются в одну из новых ливрей (из файла "ТЭ10 (1972).png") - обновленную серо-зеленую и просто зеленую травяного оттенка (можешь сделать вместо серо-голубой).
Аватара пользователя
Wowan
Почетный тайкунер
Почетный тайкунер
 
Сообщения: 1381
Зарегистрирован: Вт сен 18, 2007 14:43
Откуда: трасса М1, Минск — Москва

Re: NML версия набора

Сообщение дворник » Пн дек 19, 2011 16:09

Wowan писал(а):Пара верхних - Да (аверс/реверс). Три пары нижних - ТЭ1.


Три пары - это три разные раскраски с выбором по переоборудованию? Названия у них есть? От балды дать можно, но не очень хочется.

Секции - я так понимаю их один или два подряд можно. Но не более? А в составе эти пары могут перемежаться вагонами? Смысл вопроса - секции на состав или на рядом стоящих соседей?

Wowan писал(а):Новые окраски в 1960 и 1972 году - это принудительная перекраска всех ранее выпущенных при заезде в депо. Первый раз перекрашиваются в 1960-м, второй раз перекрашиваются в 1972-м. И потом уже катаются так до конца.


Не знаю пока, как перекрасить именно по заезду в депо. И можно ли так. Перекрасить по наступлению года - делал.

Ещё момент - секции А и Б для ТЭ2, ТЭ10 и др. они как должны разворачиваться? А то на одних рисунках мордами в разные стороны, на др. в одну, на третьих - сразу и не соображу, где у них голова.
дворник
Президент
Президент
 
Сообщения: 563
Зарегистрирован: Сб дек 05, 2009 22:57

Re: NML версия набора

Сообщение Wowan » Пн дек 19, 2011 16:52

дворник писал(а):Три пары - это три разные раскраски с выбором по переоборудованию? Названия у них есть? От балды дать можно, но не очень хочется.
Да, именно так. Названий у них нет. Я сейчас к каким-то депо территориально привязываюсь по раскраскам, но если речь о столь давних локах - там уже непонятно, что к чему относилось. Назови пока условно:
- зеленый травяной;
- зеленый травяной с желтой полосой;
- синий с белой полосой.

Секции - я так понимаю их один или два подряд можно. Но не более? А в составе эти пары могут перемежаться вагонами? Смысл вопроса - секции на состав или на рядом стоящих соседей?
Рядом стоящих. У нас тут не Америка, локи цепляются по СМЕ только рядом. Другое дело, что можно и не по СМЕ, можно в две бригады - один лок в голове поезда, другой в хвосте, а между ними вагончики-вагончики-вагончики. :) Когда составляли вот эту таблицу правил сцепления, мы договорились, что в несколько бригад можно в составе водить любые локи группами, но тогда должна быть пенализация по скорости - 10% от максимальной скорости головного.
Но, может, пока тему правил сцепления отложить на потом?

Не знаю пока, как перекрасить именно по заезду в депо. И можно ли так. Перекрасить по наступлению года - делал.
Я именно это и имел в виду - перекраска по наступлению года. Но как они перекрасятся, если в депо не заедут? Разве лок может перекраситься прямо во время езды по карте?

Ещё момент - секции А и Б для ТЭ2, ТЭ10 и др. они как должны разворачиваться? А то на одних рисунках мордами в разные стороны, на др. в одну, на третьих - сразу и не соображу, где у них голова.
У ТЭ2 секции идентичны. Передняя - это развернутая задняя. Главное, чтобы они "спинами", т.е. холодильниками друг к другу были ("холодильник" - это там, где затемнение в шашечки :) ), потому что кабины у ТЭ2 только с одной стороны.
Для ТЭ10 некритично, цепляй как хочешь - тепловоз с двумя кабинами. Поэтому полный рандом. Тепловоз должен покупаться с рандомной ориентацией (аверс/реверс), и так же сцепляться.
Аватара пользователя
Wowan
Почетный тайкунер
Почетный тайкунер
 
Сообщения: 1381
Зарегистрирован: Вт сен 18, 2007 14:43
Откуда: трасса М1, Минск — Москва

Re: NML версия набора

Сообщение Wowan » Пн дек 19, 2011 17:12

И вот еще вопрос: какие есть возможности в коде для регулировки скорости загрузки?

Зачем спрашиваю: у нас уже есть дизель-поезда и будут электрички. Очевидно, что две двустворчатые двери позволяют впускать-выпускать народ примерно вчетверо быстрее, чем одна одностворчатая дверь у пассажирских вагонов поездов дальнего следования...
Трехтамбурные вагоны некоторых электричек (ЭР22) должны иметь скорость погрузки раза в полтора выше, чем у обычных электричек.
Аватара пользователя
Wowan
Почетный тайкунер
Почетный тайкунер
 
Сообщения: 1381
Зарегистрирован: Вт сен 18, 2007 14:43
Откуда: трасса М1, Минск — Москва

Re: NML версия набора

Сообщение дворник » Пн дек 19, 2011 17:19

Wowan писал(а):Но, может, пока тему правил сцепления отложить на потом?


Я не думал, что это сложный политический вопрос. :) Посмотрел в xls, увидел "1 или 2 секции", тут же это представил в виде функций.


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

Если, скажем делать отдельными секциями, то покупаться будут именно секции, потом цепляться, потом выпускаться из депо.
Я пока думаю в этом направлении, поэтому у меня и всплыл вопрос про сцепление. Версия 8 GRF тут даже очень заманчива.

Wowan писал(а):Но как они перекрасятся, если в депо не заедут? Разве лок может перекраситься прямо во время езды по карте?


Функция возвращает набор спрайтов, при этом может использовать разные переменные для анализа. Вызывается тогда, когда надо чего нарисовать/обновить. Анализируем год, возвращаем нужный набор. И не заморачиваемся на тему, как часто она вызывается. Обнаружить, что мы в депо можно, но вот зафиксировать факт заезда в него уже сложнее, т.к. у транспорта нет постоянных регистров, в отличие от предприятий.

Wowan писал(а):Поэтому полный рандом. Тепловоз должен покупаться с рандомной ориентацией (аверс/реверс), и так же сцепляться.


Вот рандома бы не хотелось, хотелось бы выбирать расцветку переоборудованием, с учётом года постройки и/или текущего года. Как думаешь?
дворник
Президент
Президент
 
Сообщения: 563
Зарегистрирован: Сб дек 05, 2009 22:57

Re: NML версия набора

Сообщение дворник » Пн дек 19, 2011 17:26

Wowan писал(а):И вот еще вопрос: какие есть возможности в коде для регулировки скорости загрузки?


Управляются свойством loading_speed , которое 0..255 единиц груза в тик. Быстрее -- больше. Ну и свойства ёмкости cargo_capacity 0..255. Увеличиваем loading_speed в 2 раза ==> быстрее наполняется.

И есть одноимённые функции, там величины в 15бит (надо уточнить, что там в GRF8 с ними ещё сделали). Наличие функций позволяет менять скорость/ёмкость от года или др. факторов.
дворник
Президент
Президент
 
Сообщения: 563
Зарегистрирован: Сб дек 05, 2009 22:57

Re: NML версия набора

Сообщение дворник » Пн дек 19, 2011 17:31

Да, хочу обратить внимание всех смотрящих на то, как сидят ПС на рельсах. Л и Лп размещал врукопашную, вымерял под лупой квадратики описывающих прямоугольников. Тогда не было экстра увеличения, как сейчас, пользовал zzoom. Дизель поезда сажал раньше.
Чтобы сразу было понятно, о чём я, прицепите к паровозу Л какой-нить прицепной вагон от Д. Будет один вправо, другой влево. :) Это не специально, это потому, что спрайты все нарисованы по разному.
дворник
Президент
Президент
 
Сообщения: 563
Зарегистрирован: Сб дек 05, 2009 22:57

Re: NML версия набора

Сообщение Wowan » Пн дек 19, 2011 19:38

дворник писал(а):Я не думал, что это сложный политический вопрос. :) Посмотрел в xls, увидел "1 или 2 секции", тут же это представил в виде функций.
Должно быть два типа сцепления: СМЕ и обычный. СМЕ позволяет локомотивам в голове состава работать синхронно. Игрок получает кратную тягу, когда суммируются мощности и тяговые усилия у N локов. Но СМЕ есть не у всех локов
Обычный способ - цепляется почти всё и почти ко всему, даже если локомотив не предназначен для езды по СМЕ. Недостаток - пенализация по скорости (раз локи управляются несколькими бригадами, они вручную не cработают так синхронно, как автоматика, а потому перестраховываются и едут медленее).

Теперь думай дальше, какие это будут функции. :) Может, всё-таки оставить на потом?

дворник писал(а):Собственно, про секции я спросил, потому как есть варианты, которые могут быть из 1-3 секций и т.п., а есть такие, что д.б. из 2-х сразу. Такие можно сделать сочленёнкой, и тогда их нельзя будет расцепить. А можно, памятуя дизель-поезда, делать поэлементно, но из депо выпускать в правильной конфигурации. Пока не решил, как лучше.
Те локи, которые ездят только парой, лучше сразу и покупать парой. Поэлементно их покупать нет смысла: все равно секции по-одиночке невозможно запустить.
В случае расцепляемых локомотивов "конструктор" оправдан: лишнее отцепляем, остальное ездит самостоятельно. В случае нерасцепляемых локов (ЧС6, ЧС7, ВЛ8 и другие) просто незачем их покупать отдельно - сами по себе секции несамоходны.

дворник писал(а):Функция возвращает набор спрайтов, при этом может использовать разные переменные для анализа. Вызывается тогда, когда надо чего нарисовать/обновить. Анализируем год, возвращаем нужный набор. И не заморачиваемся на тему, как часто она вызывается.
Не знал, что это возможно. Конечно, так лучше и проще.

дворник писал(а):Вот рандома бы не хотелось, хотелось бы выбирать расцветку переоборудованием, с учётом года постройки и/или текущего года. Как думаешь?
Я понимаю, что с точки зрения кода расцветка и виды аверс/реверс - это одно и то же (графика она и есть графика). Но с точки зрения игры это разные вещи.
Расцветка (ливреи) должна выбираться переоборудованием. А вот виды аверс/реверс (вид с разных сторон) - рандомно.
Аватара пользователя
Wowan
Почетный тайкунер
Почетный тайкунер
 
Сообщения: 1381
Зарегистрирован: Вт сен 18, 2007 14:43
Откуда: трасса М1, Минск — Москва

Re: NML версия набора

Сообщение дворник » Пн дек 19, 2011 20:51

Wowan писал(а):Должно быть два типа сцепления: СМЕ и обычный.


Как различить СМЕ это или обычный?
Сейчас характеристики удваиваются без пенальти.
Мы можем считать общее кол-во однотипных локомотивов, количество их же условно подряд. Можем задать ограничение на общее число локомотивов в составе, на их число идущих подряд. Вопрос будет всё тот же, что в начале абзаца.

Игра не умеет СМЕ. У неё есть для этого сцепки (MU), но мы этот механизм уже используем, чтобы сделать большие вагоны.

Wowan писал(а):Те локи, которые ездят только парой, лучше сразу и покупать парой. Поэлементно их покупать нет смысла: все равно секции по-одиночке невозможно запустить.


Опять повторяется, как с дизель-поездами было. :) Их смысл был покупать раздельно? Заниматься конструктором на ровном месте? Вот тут ровно такой же смысл. Во-первых, однообразие. Во-вторых, конструктор. В третьих, делать в одних случая расцепляемое, в др. нет -- ещё больше путать игрока. И так уже без жд курсов играть сложно. :) А всего 2 вагончика.

Wowan писал(а):А вот виды аверс/реверс (вид с разных сторон) - рандомно.

Программно это не сложно. Но вот как хочется игроку иметь синеньких, а не зелёненьких, так и с разворотом -- ровно та же игровая персонализация. Если этот Да ходит что вперёд, что назад одинаково, то одним нравится одно, другим другое. В игре для этого есть Ctrl+Click, но из-за нашего MU нам это недоступно. Ну, вот пусть хотя бы через переоборудование будет этот самый Ctrl+Click. Я вот так думаю.
дворник
Президент
Президент
 
Сообщения: 563
Зарегистрирован: Сб дек 05, 2009 22:57

Re: NML версия набора

Сообщение Wowan » Пн дек 19, 2011 21:35

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

дворник писал(а):Опять повторяется, как с дизель-поездами было. :) Их смысл был покупать раздельно? Заниматься конструктором на ровном месте? Вот тут ровно такой же смысл.
Дизель-поезда могут быть короче или длиннее - конструктор был нужен, чтобы дать свободу игроку выбирать длину и, как следствие, вместимость, цену и стоимость обслуживания состава.
В случае с нерасцепляемыми двухсекционными локами конструктор никакой свободы не дает - я вижу тут ничем не оправданное усложнение кода и меню покупки.

дворник писал(а):Но вот как хочется игроку иметь синеньких, а не зелёненьких, так и с разворотом -- ровно та же игровая персонализация. Ну, вот пусть хотя бы через переоборудование будет этот самый Ctrl+Click.
Разворот через переоборудование??? ИМХО, это явный перебор. Хочешь развернуть - отправь на разворотную петлю.
Аверс/реверс рисуется именно для того, чтобы поезд/локомотив при достижении конца линии или при ручной остановке и развороте не оборачивался другой стороной.
Аватара пользователя
Wowan
Почетный тайкунер
Почетный тайкунер
 
Сообщения: 1381
Зарегистрирован: Вт сен 18, 2007 14:43
Откуда: трасса М1, Минск — Москва

Re: NML версия набора

Сообщение Wowan » Пн дек 19, 2011 22:00

Посмотрел GRF'ку. Вижу такие проблемы:
- Центровка относительно рельсов. И паровозы, и Align Car стоят неправильно. Если хочешь, могу разместить паровоз в шаблоне как надо.
- Цвет паровоза стал неправильным.
- Надо слегка изменить характеристики - сделай мощность у Лп 1600 л.с. (это в таблице уже было). И обоим приподними тяговое усилие до 100 и 110 кН (это новое, изменил ТТХ в таблице согласно вновь прочитанным книжкам).
Вложения
Kindingstone Transport, 22-е июн 1990 г..png
Kindingstone Transport, 22-е июн 1990 г..png (10.42 Кб) Просмотров: 9753
Аватара пользователя
Wowan
Почетный тайкунер
Почетный тайкунер
 
Сообщения: 1381
Зарегистрирован: Вт сен 18, 2007 14:43
Откуда: трасса М1, Минск — Москва

Re: NML версия набора

Сообщение дворник » Пн дек 19, 2011 23:04

Wowan писал(а):- Центровка относительно рельсов. И паровозы, и Align Car стоят неправильно. Если хочешь, могу разместить паровоз в шаблоне как надо.


Хочешь повыравнивать? Не вопрос. Для Л/Лп используется шаблон s8l из template.pnml Там циферки до добавки ([x, y, 7, 24, -2, -11-2*shift] и др.). Они же видны в инструменте выравнивания игры, когда выбираешь спрайт. Скажи мне новые - поменяю.

Сегодня выравнивал Да/ТЭ1.

Вот мне кажется, что все дизель-поезда сидят чуть выше. Это заметно в списках - в депо и пр. Паровозы ниже, а они уходят вверх, крыши срезаются. Выравнивание дизель-поездов брал у Simozzz, они сразу хорошо сели. :) Вот с остальными задирает циферки подбирать.

Wowan писал(а):- Цвет паровоза стал неправильным.

Это потому что я всем спрайтам указывал флаг TRAIN_FLAG_2CC, соответственно цвета из двух диапазонов перекодировывались в цвета игрока с оттенками. Не делать?

Характеристики поменял, но тут я следую xls.

Ещё одна, возможно, засада.
При выборе ливреи нужен груз. Тепловозы груз не возят. Соответственно, переоборудовать нельзя. :) Использую хак с указанием типа груза - пассажиры, заданием через свойство 1 единицы, а через функцию ёмкость обнуляю. Тогда в списке есть переоборудование "Пассажиры (некий текст)". Теоретически можно один из 32 ценных грузов отвести на переоборудование ливреи, но грузы на вес золота. Уж тогда пусть локомотивы возят по 1 пассажиру, типа машинист. :)
дворник
Президент
Президент
 
Сообщения: 563
Зарегистрирован: Сб дек 05, 2009 22:57

Re: NML версия набора

Сообщение дворник » Пн дек 19, 2011 23:05

И рельсы у тебя другие, я на стандартных вожу.
дворник
Президент
Президент
 
Сообщения: 563
Зарегистрирован: Сб дек 05, 2009 22:57

Re: NML версия набора

Сообщение дворник » Пн дек 19, 2011 23:11

Wowan писал(а):Аверс/реверс рисуется именно для того, чтобы поезд/локомотив при достижении конца линии или при ручной остановке и развороте не оборачивался другой стороной.


Ну-ка, поподробнее. Что то я не понимаю. :) Составы ж крутятся в концах линий и на станциях. И что даст, если я буду учитывать vehicle_is_reversed и возвращать разные спрайты? Игра ж всё равно переставит модельки.
дворник
Президент
Президент
 
Сообщения: 563
Зарегистрирован: Сб дек 05, 2009 22:57

След.

Вернуться в xUSSR Set

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1