Просмотр полной версии : Новый скрипт стрелкам "от RMM"
Попереворачивал немного работу трейнзовского АПИ, попробовал, но ещё не закончил. Список идей переработки старого скрипта
1) в стрелке остаётся только "указатель левера", все остальные настройки делаются в левере (единственное что - надо имя стрелке прописывать, иначе не "запомнится" обратная связь "левер-стрелка")
2) добавляется "стрелочный супертриггер", который позволяет грузить текстуры только 1 обьекту (ему), как сделано с линзами в z7
3) хендлер переключения стрелки один-единственный (укрепляется на супертриггере) что уменьшает глючность при переключени, он также сообщает, следует ли вагон по "отклонению" или нет
4) номер текстуры вводится числом, а не "прощёлкиванием вариантов"
"инициализации" стрелки не проводят, это делают леверы, поэтому глючность "пассивного режима" уменьшается немного(за счёт незагрузки библиотеки текстур), но при переключении глючность 1 новой стрелки= глючности 100 старых.
Стоит ли продолжать это?
Damien Zhar
26.05.2009, 22:03
Стоит я считаю, к трехмерным стрелкам. К двух-же стоит поразборчивее точки прикрепления сделать, и манул в добавку.
Tramwayz
26.05.2009, 23:42
Стоит я считаю, к трехмерным стрелкам. К двух-же стоит поразборчивее точки прикрепления сделать, и манул в добавку.
Ваш пост манулам по нраву
http://s50.radikal.ru/i129/0905/ff/167d3bdbcb2d.jpg
Нужно обеспечить лёгкую настройку и лёгкое безглючное переключение. Если стрелки будут тяжёлые, глючные, если на настройку стрелки будет требоваться минута, то всё это не нужно. Ох, кот бы изготовил хорошие лёгкие и простые стрелки...
Damien Zhar
27.05.2009, 00:06
Ваш пост манулам по нраву
http://s50.radikal.ru/i129/0905/ff/167d3bdbcb2d.jpg
Нужно обеспечить лёгкую настройку и лёгкое безглючное переключение. Если стрелки будут тяжёлые, глючные, если на настройку стрелки будет требоваться минута, то всё это не нужно. Ох, кот бы изготовил хорошие лёгкие и простые стрелки...
Мяффная киса ^^
Если стрелки будут тяжёлые, глючные, если на настройку стрелки будет требоваться минутаот старой отличия будут следующие - надо вбивать имя (причём индивидуальное) каждой стрелке, и настраивать и стрелку, и левер к ней. Это цена за снижение глючности (просто ни по чему больше в игре, кроме как по "Name" на карте, объект нельзя "найти"(конечно есть ещё и "ID объекта", но он не сохраняется при перезагрузке))
Tramwayz
27.05.2009, 10:57
Так, вбить имя это ерунда, это даже полезно. А что такое "настраивать стрелку и левер"? Подробней, пожалуйста. И ещё я не понял "глючность одной новой стрелки = глючности 100 старых стрелок" - это же плохо! Или я недопонял. Короче, Трам_, пиши подробно то, что хочешь сделать, с примерами, я заинтересовался. Мне на маршрут нужны стрелки, которых можно поставить много, и чтобы они не подрывали ФПС, как это делают остальные стрелки. И лёгкие в настройке, и не глючные нужны.
Поддерживаю, пиши поподробнее, а то мы тут на базе существующей стрелки узкоколейные собрались настраивать. Не хотелось бы получить кучу глюков там, где они не нужны :(
вбить имя это ерунда, это даже полезно вбивать надо и в стрелке, и в левере. "глючность одной новой стрелки = глючности 100 старых стрелок" - это же плохо! я писал, что надо читать наоборот :) глючность одной старой стрелки = глючности 100 новых. Но сообщение "не дошло"
(если точнее, глючность не должна зависить от числа стрелок на карте. Но это теоретически - леверы всё-таки подгружают немного оперативы для 4 "глобальных параметров" каждый - в старых каждая стрелка грузила 8-10 ассетов и 5-6 параметров)
все ассеты (т.е. фактически леверы и текстуры) грузятся в единственном экземпляре.
А отличие - стрелка "пустая" (т.е. вообще без скрипта), "памятью" текстур и леверов обладает левер (его же и надо настраивать),
Трам_ , а как тогда быть со сменой текстур и мешей у стрелки? Т.е ты хочешь соорудить из левера эдакий "контроллер стрелки", чтобы и эти функции переключать из настроек левера? Ну, и еще вопрос - а будет ли такой левер движок и скрипты "видеть" как стандартный?
а будет ли такой левер движок и скрипты "видеть" как стандартный? уже видит :) Я эту "установку" вчера собрал.
Т.е ты хочешь соорудить из левера эдакий "контроллер стрелки", чтобы и эти функции переключать из настроек левера именно так. А ещё есть вариант стрелки, которая "передаёт своё имя леверу" точь-в-точь как и старые стрелки. Такие стрелки (проскриптованные) образуют пак "TJE" (TRam's junstion easy), их, как и релизы в z7, можно будет заменить паком ("профредакцией") "TJ" - "пустых стрелок"
пока я занят исправлением багов с остряками и рычагами, всё остальное уже готово
А в чем получается выгода - что один и тот же левер используется как контроллер для разных стрелок?
Единственное, что меня не устраивает в стрелках RMM - это невозможность менять текстуры остряков :( .
А в чем получается выгода - что один и тот же левер используется как контроллер для разных стрелок? чтобы не вбивать имена в 2 местах, можно поставить "TJE" (там сразу после сохранения имени можно в стрелке указать аттачимый левер). Но поскольку они чуть более глючные, устанавливаются "TJ" в которых скрипта нет вообще. Левер для каждой стрелки должен быть индивидуальным для каждой стрелки(это естественно), а выгода в том, что "главный контроллер", получив сообщение о переводе стрелки, узнаёт источник этого сообщения (а им является никто иной как наш левер), от левера узнаёт, какие текстуры и приводы на стрелке, и собственно имя стрелки, а по имени стрелки "получает" собственно объет "стрелка" и ставит на него всё что нужно (с учётом её "марки" и "правая она или левая")
Ручных леверов вообще надо 8, а у меня их всего 4(модели исходника нет). Так что пока "ручной слева у левый стрелки" и "ручной справа у правой стрелки"
на счёт смены текстур остряков- не знаю... Их и так 10 видов...
если будут (потом) оставшиеся рычаги ручные (у меня их 4, а надо 8), то постараюсь упросить выложить на trainz.ru а пока http://trainzold.mylivepage.ru/
если хотите скачать без регистрации, то можно и тут http://dump.ru/file/2812029
плиз, если протетстируете, сообщите о глючности и/или багах...
Arturmachinist
30.05.2009, 12:17
Ну что ж, больших изменений не заметил. Так вроде ничего. Есть один баг, когда настраиваю стрелку,её остряк не появится до тех пор, пока не изменишь тип приводного механизма. Как изменил, можно нажимать ОК. А так вроде никаких проблем...
З. Ы. Почему-то звука переключения левера не земетил.:confused:
Объявляется конкурс на лучшую интерпретацию значения переменной qw67.
Также интересно, в чем смысл сообщения с мажорной строкой "QQQQ" и непонятным числом в минорной строке, рассылаемого броадкастом.
Вот скажи мне, TRam_, вот ты все говоришь, что твои скрипты открыты, привет новички, учитесь у меня, читайте мои скрипты. Извиняюсь, ну тогда можно уж сделать, чтобы твои скрипты было возможно прочитать и понять?
это дебаг -месседж. Число обозначает, какой тип ручного левера стоит у стрелки ( чуть выше в скрипте написано, что "левая стрелка кодируется 10, правая 20; а левер слева кодируется 1, справа - 2" итого сумма этих кодов выводится месседжом чтобы я мог проверить , не допустил ли я ошибку ).
Я ж говорил, что это всё-таки бетка - так как у меня нет 4 ручных леверов и исходника, чтоб их сделать.
qw67 - промежуточная переменная типа "ассет"(вроде), которая используется в единственном месте - в следующей строке :) Это меня трейнз 2009 разозлил неправильной выдачей имени стрелки(а именно GetLocalisedName() ). Пришлось получать конфиг стрелки(точнее базу данных конфига стрелки), и уже из него получать строку "Name". Я не знал, сможет ли геймскрипт переварить всё это одним выражением, поэтому сделал промежуточную переменнную с таким именем
когда настраиваю стрелку,её остряк не появится до тех пор, пока не изменишь тип приводного механизма. либо пока не переведёшь стрелку или перезагрузишь карту
З. Ы. Почему-то звука переключения левера не земетил. да, этого я ещё не сделал...
junstion Мои глазницы сочатся кровью...
так как у меня нет 4 ручных леверов и исходника А еще можно ручную стрелку с анимацией рычага сделать :)
vBulletin® v3.8.12 by vBS, Copyright ©2000-2025, Jelsoft Enterprises Ltd. Перевод: zCarot