• Уважаемый посетитель!!!
    Если Вы уже являетесь зарегистрированным участником проекта "миХей.ру - дискусcионный клуб",
    пожалуйста, восстановите свой пароль самостоятельно, либо свяжитесь с администратором через Телеграм.

Изготовление симс объектов на конкретном примере (с использованием IffPencil)

  • Автор темы Автор темы Gilder
  • Дата начала Дата начала
1) Кто его убивает? 8-О
Сюда иди.

3) Двигать надо. В трансмоге же, менять X Offset и Y offset. В трансмоге нажимаешь View Object, там это можно менять; если объект многоклеточный, надо клетку выбирать.
Твой объект, как я понимаю, имеет еще и больше одного спрайта на клетку, не забудь и это выбрать, а то не то двигать будешь :)
 
Выравнивание

Спасибо
1) Да действительно в одной клетке значительно больше одного спрайта, но вот со сдвигом у меня чего-то не выходит, если можно напишите что-то вроде пошагового руководства по этому поводу.
2) Похоже тут еше и с z-буфером непонятки. Я в качестве z-буфера взял просто немного затемненный зеленый кантал от картинки, а вот как его (буфер) делают нормальные люди я не знаю???
3)Спасибо за ссылку на туториал. Debuger- достался мне от Borland Builder-а, и лезет во все процессы, но с этим приходится мириться.
 
1) Хм. Ну, вот тебе скриншот, с максимумом чего только может быть :D
Transmog_View.GIF

Смотри внимательно:
- вверху, в выпадающем списке, выбрана клетка многоклеточного объекта - PinballMachine - A - иначе доступа к двиганию клеток не будет (для одноклеточного объекта, этого контрола нет); когда выделена одна клетка из нескольких, изображения для остальных клеток становятся полупрозрачными
- ниже, в списке состояний, выбрано желаемое #358: 1; для объекта без смены состояний в этом списке есть всего один пункт, и он выбран по умолчанию
- еще ниже, в списке спрайтов, выбран желаемый спрайт - sprite 312 num 2; для объекта с одним спрайтом на каждую drawgroup-у тут будет только один пункт (а не три, как на скриншоте), и он опять же будет выбран по умолчанию
Выбрал все это? Теперь смотри, еще ниже есть два контрола - поле ввода плюс пара стрелок - с метками X Offset, Y Offset. Вот ими и двигать :) Можно вводить числа руками (тогда положение меняется когда контрол теряет фокус), можно нажимать на кнопочки.
Например, я сдвинула выделенный спрайт по игреку - изначально было (-11, -70), а стало (-11, -76). Заметен зазор?
Процедуру нужно повторить для всех Rotation/Zoom (смотри ползунки справа над изображением).

Изменения сохраняются сразу после того, как они сделаны (в случае ввода руками - после того, как контрол потерял фокус).

Сойдет за пошаговое руководство?

2) z-buffer - обязательно grayscale картинка, в которой цвет точки определяет ее расстояние от наблюдателя - чем чернее, тем ближе. Никаких зеленых цветов, только grayscale.
Обычно она делается 3д-редактором вместе с остальными изображениями. Я плохо представляю себе, как ее можно сделать руками для уже готовой картинки :(

3) Да пожалуйста. Гм... буду знать, за что еще не уважать всякие билдеры :D
 
Новый шкапчик

1)Спасибо огромне, рукододство просто чудесное, но в моем случае окошко Graphical States -совершенно пустое.
2)Пока оставил улей и переделал шкаф, теперь сим достает токены из него, только вот количество пунктов меню ограничено числом четыре.
То есть я пишу новый BHAV - для доставания нового токена. Добавляю (Add) новую запись в TAAB прописываю туда два BHAV-а (тот который добавляет и тест,оди на все ингредиенты).
В результате в игре у шкафа появляются только первые 4 пункта меню.
Что не так, может новые пункты меню еще где прописать надо? Если да, то где?
 
1) Как это - совершенно пустое? :condused: Так не бывает. Вернее, я не знаю, когда так бывает... Если нет ни одного состояния - значит, у клетки нет ни одной drawgroup-ы, а такого я ни разу не встречала... Может, кинешь скриншот? Или вообще зип с объектом?
2) С первой половиной непонятно :confused: Ты добавил одно действие в TTAB - сколько пунктов меню добавилось? Не 4 ведь, может максимум одно добавиться...
А еще, перепроверь свои тестовые бхавы. Говорила ведь уже:
Если бхав, прописанный в Check tree, возвращает false, соответствующий пункт меню вообще не появляется.
Ты уверен, что в твоем случае возвращается true?
Кстати, есть же еще один вариант. Ты в TTAB-е галочки видел - Available to visitors/children/adults/cats/и т.д.? Они у тебя правильно выставлены?
 
Менюшки

Есть пять BHAV -ов все идентичны и различаются только GUID - ом токена который производят.
Для каждого в TTAB-е прописана строчка (с галочками все в норме) BHAV-тест -один на всех.
Так вот у предмета отображаются только четыре пункта меню, они соответствуют первым четырем BHAV- ам, а пятого пункта нету, хотя есть и строчка в TTAB-е и BHAV соответствующий ей. Складывается такое ощущение, что существует какой то лимит, либо новые пункты меню надо еще где то декларировать?
(тестовый BHAV должен быть в порядке, он ведь один для всех "Ингридиентных" BHAV-ов, так что если бы с ним было что-то не так, то и остальные пункты меню не появлялись бы).
 
Не шкаф, а полочка

Ну вот, с полочкой почти и все.
1)Прошу прощения с пунктами меню-это мой глюк.
2)Единственное что, ее пока можно "повесить" и в центре комнаты, а надо бы чтобы она вешалась только на стенку (ведь есть же наверняка какой нибудь хитрый флажок специаьно для этой цели?)
Еще полочка пока никому не "снится" и не может выступать "объектом обсуждения".
Халтура конечно, как с точки зрения внешнего вида, так и по содержанию (ведь объект делался не с нуля, а путем изменения уже существующего, так что там еще куча необрезанных хвостиков от шкафа осталось)
А посему:
3)Ежели кому, интересно, могу это "чудо" куда нибудь скинуть (только скажите куда и как это обычно делают).
Более того буду невероятно благодарен если это случится. Буду рад узнат ваши замечания. Ежели кто поможет изничтожить ненужные остатки шкафа, тоже прекрасно.
Поэтому поводу еще вопрос про Magic Cookie - кто это такой, зачем он и вообще с чем этот "коржик" едят.
Спасибо.
P.S. А как тут картиночки в сообщения вставляют???

Gilder добавил [date]1075478054[/date]:
ГЛЮК
1)Глюк состоит в том, что полку нельзя продать после того, как сим ее использовал(достал из нее хотя бы один ингредиент). Видимо игра считает, что сим еще использует полку, даже если он в это время занят (практикует речь например). Что в таких случаях делают, что и куда прописать чтобы сим «отвязался» от предмета??
2)Как сделать, чтобы использование предмета уменьшало (увеличивало)
А)характеристики (Голод, комфорт…) сима
В)Умения сима
И как в обоих случаях регулировать скорость этого уменьшения (увеличения)
 
2) Да, можно конечно, надо смотреть флаги в бхаве, отвечающем за инициализацию. Подождешь до ночи, чтобы я точный код сказала (я все еще на работе :( ), или сам посмотришь в подходящих предметах (например, в картинах)? Должно быть что-то вроде
My Flags Set Flags require wall behind
3) Именно для этого и существует подраздел "Ваши работы" :D Заходишь туда, читаешь маленькую тему "Внимание авторов" - там есть ссылка на пост, в котором подробно расписано - как и куда выкладывать и как потом вставлять картинки.

Про Magic Cookie написано здесь, собственно, там же его и брать.
А подробнее я где-то уже писала :D

1, 2) - думаю, медитировать над соответствующими предметами - точнее я тебе не подскажу, поскольку сама таким не занималась.
 
Лентяй :p: А самому посмотреть?
Вот такой вызов нужно добавить в инициализацию:
My wall placement flags Set Flag wall required behind
Это функция №2, аргументы в хексах: 0D 00 03 00 FF 09 03 07.
 
Действительно лентяй! :D Мы с такими не водимся. :p:

Вообще, советую иногда рыться внутри файла Behavior.iff, что лежит в GameData, там много чего любопытного написано. :) А также читать почаще текст про Iff Pencil by Shy. Там тоже написано много чего интересно, а главное, еще и объясняется, что именно это такое. :D

Для мгновенного повышения/понижения параметров настроения до определенного уровня можно использовать все ту же вторую функцию - это в данном случае будет операция присваивания. Например, делаем так, чтобы все параметры настроения повысились при совершении какого-то действия до максимума:
my motives Mood Assign To: 100
my motives Comfort Assign To: 100
my motives Hunger Assign To: 100
my motives Hygiene Assign To: 100
my motives Bladder Assign To: 100
my motives Social Assign To: 100
my motives Fun Assign To: 100
my motives Energy Assign To: 100
Думаю, можно так же и скилы изменять, но я никогда не пробовала.
Постепенно изменение настроения задается, кажется, через примитив Set Motive Change. Например, так:
Set Motive Change (my motives Energy += Constant 4096:22 per hr, stop at Constant 4096:3)
Константы берутся из ресурса ВСON с соответствующим номером. Т.е. в данном случае энергия прибывает каждый час на число, которое указано в строке 22 BCON'а под номером 4096, пока не достигает значения из строки 3 того же BCON'а. Кажется, так. Со скилами должно быть что-то похожее, но не знаю точно что. Там функции типа my person data Creativity Skill +=... А вообще, поройся действительно в предметах соответствующих.

Дюкаша добавил [date]1075513952[/date]:
Значения для параметров в функциях изменения настроения на максимальное:
mood - 3, 100, 1280, 1806
comfort - 6, 100, 1280, 1806
hunger - 7, 100, 1280, 1806
hygiene - 8, 100, 1280, 1806
bladder - 9, 100, 1280, 1806
social - 14, 100, 1280, 1806
fun - 15, 100, 1280, 1806
energy - 5, 100, 1280, 1806
Вместо 100 можно, соответственно, подставить другое значение - положительное или отрицательное. Это и определит настроение.
Номер примитива, о котором я говорила - 29. Значения подбирай сам экспериментальным путем. :) А вообще список примитивов есть в файле Behavior.iff
 
Gilder
Чтобы сим больше "не использовал" полку, попробуй добавить в конце скрипта, который отвечает за взятие предметов с нее, такую строчку: "Stack Object's flags Clear Flag in use". Это функция 2, параметры: 8, 6, 2815, 1796.
 
Покояние Лентяя

Спасибо.
1)Jasana Сам смотрел, а уже когда не нашел, спросил.
2)Дюкаша Про мгновенное изменение я сам допетрил, а хотелось, чтобы постепенно все менялось. Чтоже до Behavior.iff, так это ж еще надо знать если не л его существовании, то хотя бы, о том чего в нем ловить. Спасибо посмотрю, проверю, испытаю.
3)Shy Огромное спасибо, сейчас проверю!
 
Gilder
В Behavior лови все понемногу. Очень симпатичный файл. :D
Shy
Как всегда вовремя. Я все пыталась сообразить, как это делается, пока у меня инет не кончился. :D А ведь знала же, что это флаг in use, знала...
 
Дюкаша, лично я обычно с этим делом не мучаюсь и ставлю просто (glob:) Standart Exit ;)
 
Шогал
Ну так ты это не я. Я вообще сама скриптов не пишу, если уж на то дело пошло, а обычно добавляю в них строчку-другую где-нибудь в серединке. Или, наоборот, удаляю. :D А про Standart Exit я тоже когда-то знала, читала во всяком случае, просто забывается это все, когда практики нет. :)
 
Сим, его друзья и его токены

1)Сим действительно «отвязался» от полочки. Теперь нет необходимости сносить дом, чтобы избавится от докучливого предмета обстановки. Спасибо Shy.
2)Более того полочка теперь лепится к стенке и не позволяет вешат себя в центре комнаты. А то нелепо как-то смотрелось. Спасибо Jasana.
3)На радостях переделал зеркальце, теперь оно удовлетворяет потребности симов в общении, как вполне приличный предмет (то есть постепенно).Спасибо Дюкаша .
4)Вот с «Очень конкретным предметом» вроде бы и все (ну не считая тестирования, а этот процесс как известно может затянуться надолго), а вопросы остались. Следовательно надо: либо название темы менять (а это можно? а как это делают?), либо новую делать, что не очень хочется (прижился я здесь), но видимо придется если название сменить нельзя.
5)Вот кстати, один из вопросов. У сима бывают друзья – это научный факт. Друзья сима отображаются в виде иконок на специальной (она так кажется и называется) панели интерфейса. Там же отображаются все симы (а так же кошечки, собачки и прочая фауна), с которыми он хотя бы перекинулся парой слов. А можно ли удалять эти иконки (да и самих друзей) с этой панельки (как если бы он вообще с ним не встречался никогда).
6)Примерно тоже хотелось бы узнать и о токенах. Как их выбросить из кармана, в том что это можно сделать я уверен, во-первых потому, что их можно подарить (или использовать), во-вторых потому, что где-то видел что-то вроде функции Remove token. Пользоваться этим Remove token я пока не умею, так что если кто знает примеры удачного (или хотя бы безопасного) использования такой функции напишите, а я тоже покопаюсь.
Еще раз Спасибо.
 
Gilder
Название темы могут поменять только модеры соответствующего раздела. Из здесь присутствующих - я или Jasana. Выбирай - какое тебе нужно. :D
Как убрать знакомых, честно говоря, не соображу, никогда не задумывалась. А вот токены - да, есть такая функция, конечно. Она и срабатывает, когда предмет дарят или используют. Этот все та же Manage Inventory, только в скобках после нее идет не add token, как при добавлении, а remove token, как ты и сказал. Вот, например, функция для удаления ключей из инвентаря, когда сим разрегистрируется на Острове Отдыха:
Manage Inventory ( 1.x Animate Object in 2.0 ) (Remove token of type GIFT with object GUID:3ac022d6 of count stored in Temp 0.) {flags = 0, 0, 0, 0}
Функция 51, параметры 1, 2307, 8918, 15040. Правда, что означают надписи в остальных скобках, я понятия не имею.
 
Мертвый BHAV

I)Спасибо, по поводу названия это отдельная песня тут подумать бы хоть чуть чуть.
II) Тут вот другая задачка есть:
Написал вроде скрипт, (BHAV), а он не работает.
0)Go To Relative Position (In front of, Facing) {byte = 00, flags = 0, 0} |13|Error|
1)Local Variable 0 Assign To: my person data Logic Skill |9|12|
2)Local Variable 0 +=100 |10|Error|
3)my person data Logic Skill Assign To: Local Variable 0 |11|Error|
4)(priv:) random speech |5|Error|
5)Dialog (message: id#0, icon: automatic) {Title: id#1}|6|Error|
6)Local Variable 0 > 1000 |7|Error|
7)Local Variable 0 Assign To: 1000 |8|Error|
8)my person data Logic Skill Assign To: 1000 |True|Error|
9)Dialog (message: id#2, icon: automatic) {Title: id#1} |2|Error|
10)Dialog (message: id#3, icon: automatic) {Title: id#1}|3|Error|
11)Dialog (message: id#4, icon: automatic) {Title: id#1}|4|Error|
12)Dialog (message: id#5, icon: automatic) {Title: id#1}|5|Error|
13)Dialog (message: id#0, icon: automatic) {Title: id#1}|1|1|

Эта штука по идее должна прибавлять симу 1 пункт логики, но не прибавляет (как было по нулям, так и осталось).
Строки с 9 по 13 отладочные сообщения, в четвертой просто кусок анимации. При тесте появляется только то, что в 13 строке, и на этом все заканчивается. Если ко разбирается в языке, подскажите, что не так.
Заранее благодарен

Кажется ошибка в сточке номер 1, но как ее исправить я не знаю.

Собственно вопрос наверное должен звучать так: Что нужно сделать чтобы, записать значение умения сима в локальную переменную, и что нужно сделать чтобы, наоборот, значение локальной переменной загнать в умение сима??? Впрочем я не настаиваю на правильности этого вывода.
 
Gilder
А почему бы не написать "my person data Logic Skill += 100"? Ну а ошибка могла возникнуть из-за того, что у тебя в скрипте 0 локальных переменных (см. Header в правой верхней части окна). А для отладки полезно использовать ключ "-debug_objects", который вставляется в ярлык после Sims.exe.
 
Назад
Сверху