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

Изменение функциональности предмета

  • Автор темы Автор темы Gilder
  • Дата начала Дата начала
Манька-облигация написал(а):
Я просто в OBJf поменяла номер init c 0x201E на 0х1000 и все встало.
А, то есть твой бхав просто не вызывался :)
За этим надо следить - бхавы могут вызываться несколькими способами:
- из меню взаимодействий предмета - из TTAB ресурса
- из списка стандартных функций для предмета - из OBJf ресурса
- из другого бхава :)
- как named tree - тяжелее всего отследить, используется такой бхав или нет... имя обычно начинается на CT (например 'CT - Model - Update'), он может быть перечислен в соответствующем STR# ресурсе, но может и не быть (если этот named tree вызывается только другими предметами, а не этим)
Если ни один из способов не применен, то бхав в пакадже находится просто "для красоты", то есть для объема :lol: игрой он будет проигнорирован.
 
Да, разработчики большие любители оставлять в предметах неиспользуемые скрипты, мороча голову простым людям. :D
Но конкретно с init'ами обычно бывает довольно легко разобраться через OBJf. Там указывается основной init, а уже из него может вызываться какой-то еще, например, семиглобальный.
 
А вот еще такой вопрос, как сделать так, что бы объекты ставились на дрессер?
 
А в игре разве существуют родные объекты, которые туда ставятся?
 
Дюкаша
Так в том то и дело, что нет, но в инете есть дрессеры, на которые можно ставить объекты, то есть это что-то надо менять в нем самом.
 
Интересно. А к объекту какие должны быть требования, чтобы он потом поставился на этот слот?
 
Дюкаша написал(а):
Ну ты еще скажи, что ты мои трех- и пятислотовые тумбочки не видела, они ж совсем старые :o Уверенно заявляю, что могу добавить декоративный слот (в который могут ставить предметы игроки, с симами несколько сложнее) куда захочу и сколько захочу, вопрос в том, сколько времени на это уйдет :)
Дюкаша написал(а):
А к объекту какие должны быть требования, чтобы он потом поставился на этот слот?
Такие же как для любого другого слота:
- у объекта есть флаг "ставится в <тип слота>", где <тип слота>, если мне память не изменяет, определяется полем I7 в SLOT-ресурсе
- weight объекта не больше чем support strength объекта со слотом
Ну и объект должен быть одноклеточным, наверное :) Хотя в последнем не уверена, не проверяла. Кстати, надо :( а то я хотела такой интересный финт ушами сделать для многоместного колеса обозрения...
 
Ага, т.е. можно добавлять разные типы слотов, и в зависимости от этого нужен соответствующий флаг. Понятно.
Трехслотовые тумбочки я не видела. Пятислотовые - да. Они очень красивые и интересные, но - как бы это сказать? - не очень сильно приближают игру к реалу, потому что подобные конструкции все-таки не безумно часто там встречаются. А вот банальный шкаф, на который можно ставить предметы (и на который ставят предметы) есть обычно в каждом доме. Поэтому и интересно. :D Хотя я не говорю, что пятислотовые тумбочки - это не интересно, они тоже классные, безусловно. :D
Просто как бы в Симс 1 я в свое время немножко возилась с проблемой невозможности размещения предметов там, где их часто размещают в жизни, а говоря конкретнее - на кроватях и диванах. Но, конечно, ни о каком добавлении слотов у меня тогда речи тогда не шло, а все делалось через набор невидимых кофейных столиков с контроллером, которые можно было ставить внутрь оных кроватей и диванов, а потом включать в них обратно соответствующую функцию - чтобы предметы на себе держали. Таким образом удавалось сделать довольно забавные кадры со всякими игрушечными медведями на диване и т.п. В общем, мне в каком-то смысле близка эта проблема. :D
 
Дюкаша написал(а):
Пятислотовые - да. Они очень красивые и интересные, но - как бы это сказать? - не очень сильно приближают игру к реалу, потому что подобные конструкции все-таки не безумно часто там встречаются.
Ну, вообще-то, они были сделаны как раз с фотки реального предмета, на том 5 тортиков стояло - хотя да, это не часто встречающаяся ситуация, 5 тортиков на столе сразу :D
Но тут главное не "реалистичность", а факт возможности добавления слота. Работает там - будет работать и в других.
Собственно, для armoire и dresser типов шкафов Русалка недавно слоты добавляла, под моим чутким руководством :D Тоже работало.
В кровати и диваны слоты для предметов тоже можно добавить. Надо только перечитать бхавы на всякий стучай, а то там симовые слоты уже есть.
Дюкаша написал(а):
Просто как бы в Симс 1 я в свое время немножко возилась с проблемой невозможности размещения предметов там, где их часто размещают в жизни, а говоря конкретнее - на кроватях и диванах.
Ну так, тогда слоты были штукой совсем не изученной :) Я помню, мне Shy для двери-телепортера слот в hex-редакторе менял, чтоб сима на 180 градусов развернуть. А сейчас про слоты известно более чем достаточно - добавляй-не-хочу :)
 
Jasana написал(а):
Ну, вообще-то, они были сделаны как раз с фотки реального предмета
Ну, я не отрицаю, что в реале теоретически возможны такие тумбочки, и, наверное, они где-то и действительно существуют, раз фотки есть. Но, думается, если бы провести опрос, окажется, что большинство людей такого в реальной жизни не встречало. А вот шкафы, диваны и кровати, на которые можно что-то ставить и класть, в реале видели все. :D
Jasana написал(а):
В кровати и диваны слоты для предметов тоже можно добавить. Надо только перечитать бхавы на всякий стучай, а то там симовые слоты уже есть.
Угу, одновременно в одной клетке сидящие сим и игрушечный медведь у меня в Симс 1 тоже смотрелись не очень. :lol: А вот уложить симку на диван так, чтобы медведь сидел у нее в ногах и ей особо не мешал (как и она ему), мне на каком-то диване вполне удавалось. Вообще, там, конечно, были проблемы с разными диванами: одни по высоте хорошо подходили, в других медведь слегка "проваливался". А еще столики в игре были все двутайловые, а диванов было много трехтайловых... Уже не помню, что мне мешало поставить два столика... Или я просто выпендриться хотела. :D Но добавляла сама дополнительный тайл к столику. Брр. Хорошо, что они были без графики. :D
Jasana написал(а):
Ну так, тогда слоты были штукой совсем не изученной
Угу, в Pencil'е их редактор был не доделан. :( Помню, что многие хакеры сильно по этому поводу огорчались.
 
Можно как-то исправить следущее:
Кровать идет в категории скульптура и функция для неё только "смотреть".
Я в сим категориз поменяла назначение на double bed, но толку никакого.
Что делать?
 
кровать надо клонировать из кровати, тогда сим будет на нее не только смотреть ,но и спать в ней ,а замена категории функциональности кровати не прибавит ;)
 
Да кто б ни делал...
Для того, чтобы предмет можно было использовать определенным образом, у него внутри должны быть соответствующие скрипты заложены, ну и не только они. А если функциональность там только на "Смотреть", то хоть обменяйся категорию, "Спать" и прочее не прибавится. Категория, кстати, на функциональность вообще не влияет абсолютно никак, сделана чисто для удобства поиска в каталоге. В общем, разбираться с внутренностями этого предмета надо.
 
Очень прошу помочь, так как совсем запуталась, и руки уже опускаются :(

Создала картину, решила добавить функциональность "Веселье", то есть при выборе соотв. пункта меню у сима повысилось бы веселье.
Для начала я склонировала картину, изменила меш (хотя это не имеет разницы), присвоила индвив. GUID. Потом импортировала Pie Menu Functions и Pie Menu Strings при помощи Import Semi Globals, из ресурсов картин (Painting Globals). Group обоим присвоила пустые (т.е. 0xFFFFFF, как было указано в туториале от MYFCI).
Добавила свою строку, связала ее с функцией. В BHAV клонировала Init, назвала Interaction - Come. Добавила Go to relative position и Expression: My motive Fun:=Literal 0x064. Все по туториалу.
Проверяю в игре - ничего. С кодом разработчика выводит сообщение об ошибке.
В логах ошибки записалось следующее:
Build: 1.7.0.145
at Jan 25 2007,22:24:47

Object id: 197
name: Board
Stack size: 3
Error: Transition to node that does not exist.
Iterations: 0
Frame 2:
Stack Object id: 0
Node: 1
Tree: id 4096 name 'Function - Init' version 3
from SIMPE_PAINTINGMINIMALISTSQUAREAQUA_CRES
Prim state: 0
Params: Locals:
Frame 1:
Stack Object id: 0
Node: 0
Tree: id -1 name 'No behavior' version 0
from
Prim state: 1
Params: Locals:
Frame 0:
Stack Object id: 0
Node: 0
Tree: id 4097 name 'Function - Main' version 1
from SIMPE_PAINTINGMINIMALISTSQUAREAQUA_CRES
Prim state: 0
Params: Locals:
В чем проблема, интересно? No behavior - я где-то упустила что-то связующее, или напортачила с чередованием функций?
Помогите! :(

Ссылка на мой пакадж
 
erinqua wilin написал(а):
Error: Transition to node that does not exist.
"Ошибка: Переход на несуществующую строку."
Проверь свои переходы - где-то ты неправильно номера строк указала.
 
Ну как же верно, когда у тебя в Init'е по true идет переход на строку 1, а строки 1 в этом скрипте вообще не существует, там только 0. Вот тебе и переход на несуществующую строку.
 
Дюкаша спасибо за то, что откликнулась. Тогда что туда прописать? Retirn True? Кажется, я инит вообще не трогала, как он сам изменился? :)
 
Назад
Сверху