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

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

  • Автор темы Автор темы Gilder
  • Дата начала Дата начала
allesh, создать действие и впихнуть анимацию - понятия разные. Создать новое действие при некотором знании хакинга вообще достаточно легко, но при этом оно может не использовать вообще никакой анимации или использовать какую-то уже имеющуюся в игре. А вот чтобы добавить в это действие новую анимацию, ее нужно прежде создать, а это уже совсем другой, отдельный вопрос. В Симс 1 для этого существовала специальная программа - SimPose, а что в Симс 2 уже существует что-то аналогичное - я пока не слышала и о фактах создания новой анимации не слышала тоже, хотя, конечно то, о чем слышала или не слышала лично я - еще не истина в последней инстанции. Вроде бы что-то такое собирались делать в SimPE еще давно, но чем дело кончилось - я не интересовалась, да и вообще не очень в этом уверена.

Но если твой вопрос заключается в том, можно ли это сделать в принципе, то в принципе, конечно, можно, при наличии соответствующих инструментов. В Симс 1, где была специальная программа, этого и делали очень много.
 
1) Дюкаша всё то ты ругаешься.
Зачем лепить дополнительную кучу ошибок умышленно, чтобы отладчик спотыкался еще и на них?
В данном случае отладчик использовался не для отладки, а как встроенный детектор реакций игры на объект. Поскольку с этим объектом творилось черте-что, то мне нужно было создать максимальное возможное кольичество реакций отладчика на него, что собственно я и сделал. То что он в таком виде работать не быдет сомнению не подлежит, но задача то была - заставить игру хоть как то на него отреагировать.
2) Спасибо за полезную ссылку пытаюсь разобраться.
3) Есть еще такой вопрос, можно ли один объект заставить иметь токен или хотя бы просто постоянно держать в памяти число. Возникла идея сделать журнальный шкаф. В который можно было бы складировать купленные в городе журналы (а то валяются по всему дому - нехорошо). Т.е. шкаф надо организовать так, чтобы он помнил чего в него кладут, и соответственно взять из него можно было только ранее складированное.
Как бы к этому подступиться? Может есть что-то подобное (чтоб скрипт расковырять)?
 
Эх, Gilder, учебники надо читать и перечитывать, а не странные вещи с объектами проделывать. Про нумерацию функций-то в самом начале "Некоторой документации" было, это надо бы помнить. :rolleyes:

Ладно, пойдем дальше. Насчет токенов я не знаю, вроде бы их симы должны иметь, а не объекты, хотя в Симс 2 я ничего по этому поводу не гарантирую, а вот помнить число объект, конечно же, может, для этого существует такая штука, как атрибуты. Ты бы сходил почитал свою старую темку в Симс 1, она жива. Там очень неплохо изложены основы хакинга, которые, в основном, и для Симс 2 те же. Мне кажется, у тебя с тех пор многое выпало из памяти. ;)
 
Сразу же предупреждаю, что специалист из меня по Manage Inventory еще тот, поэтому, все, что я далее напишу, желательно проверять и перепроверять. Определить наличие токена по GUID'у можно с помощью десятой функции этого примитива ("Store the count of the tokens in this inventory into"). Переход по False будет означать отсутствие токена с данным GUID'ом. Для Counted токенов еще есть функция "Find the token", чем она отличается от "Store the count..." я не знаю. Вещи, которые сим положил в инвентори, рассматриваются игрой, как Singular токены. Можно ли превратить любой предмет в Counted токен я тоже не знаю. Все объекты (не только симы) лота "видят" Lot Inventory, но это не значит, что ее можно использовать вместо атрибутов. :)
 
Уважаемые мейкеры, просмотрела путеводитель и данную тему, почувствовала себя еще большим чайником. Подскажите, пожалуйста, что мне делать или куда обратиться.
Проблема такая, скачала кровать и плиту, очень красивые, но сделанные на основе самых дешевых. Соответственно, показатели они поднимают минимально, а мне надо, чтобы как у дорогих (типа комфорт -10 и пр.). Могу ли я каким-то образом это отредактировать. SimPe у меня установлен, но знания по его работе у меня никакие, можно ли в нем это сделать? Заранее спасибо.
 
Меня тоже интересует этот же вопрос.Скажите хотя бы где взять соответствующий туториал на русском языке?
 
alessa.90 написал(а):
Скажите хотя бы где взять соответствующий туториал на русском языке?
Во-первых, на русском языке, боюсь, соответствующих туториалов нету. Их и на английском-то не про всё есть - про создание анимации (а не вызов существующей) есть только намеки и указатели, куда копать.
Во-вторых, изменение функциональности - это достаточно сложная вещь, начинать надо с чего-то попроще, хотя бы с перекрашивания и клонирования - хотя оно и не имеет отношения к изменению функций, но хотя бы поможет разобраться в устройстве пакаджей.
В-третьих, нельзя сделать общую инструкцию о том, как подправить изменения показателей - поскольку разные предметы читают значения для показателей из разных мест; да, как правило, значения хранятся в ресурсах типа BCON, но какой именно из них надо менять, можно выяснить, только читая бхавы. Искать надо строчки, подобные этой:
Код:
Set Motive Change (my motives 0x000F (Fun) += Constant Value 0x1004:0x00 (Value: 0x0064) per hour,
  stop at: Constant Value 0x1004:0x01 (Value: 0x0064),
  Auto Clearing the Person Data Motive Decay value: False)
Для этой строчки, скорость изменения Fun-а хранится в бконе 0x1004, поле 0x00, а максимальное значение - в том же бконе, но в поле 0x01. Повторяюсь, разные объекты устроены по-разному - число может быть и в семиглобальном бконе, может в поле с другим номером... Надо сидеть и читать :loss:
 
Да, тутор на русском языке - это из области фантастики скорее. Тут только осваивать основы хакинга и учиться самой узнавать соответствующие строчки и находить соответствующие константы. Хотя теоретически оно может и не в константе быть зашито, а прямо в BHAV'е, но так вряд ли кто особо делает. А иногда оно умудряется быть зашито так, что вообще не догадаешься, где. :D Я вот в одной первосимской кровати для животных комфорт нашла, а энергию так и нет, хотя искала долго. :D
 
Jasana
Долго думала куда приткнуться со своим вопросом, решила, что все-таки сюда.
На МТС есть зеркало, которое можно ставить на любые поверхности, но автор просит его не клонировать, я конечно все равно на шару написала ему в приват, но сомневаюсь что разрешит. Так вот я хотела спросить что нужно сделать, что бы снять его со стены и поставить на стол? И сильно ли это сложно?
 
Манька-облигация написал(а):
Долго думала куда приткнуться со своим вопросом, решила, что все-таки сюда.
Нет, лучше сюда (перенесла сообщение :))
Поскольку бывают зеркала напольные и настенные - скорее всего, все решается флагами в Init BHAVе. Я бы предложила клонировать напольное - с него не надо будет убирать флаг "требует стену", в отличие от настенного. Ну а потом добавить "ставится на тумбочку", "ставится на обеденный стол", "ставится на кухонную тумбочку", ну и чего еще захочется.

Чтоб добавить - добавляй в бхав вызовы примитива с опкодом 0х02, и потом билдером (кнопочка с молотком и еще чем-то скрещенным) собирай инструкцию типа:
Код:
[prim 0x0002] Expression (My 0x0004 (allowed height flags) Set Flag flag# Literal 0x0001 (unknown [1]))
Значения благов, которые можно ставить:
0x0001 ---> Placeable on floor
0x0002 ---> Placeable on low tables
0x0003 ---> Placeable on dining tables
0x0004 ---> Placeable on counters
0x0005 ---> Placeable on Sims
0x0006 ---> Object can be picked up
0x0007 ---> "Allow Sitting"
0x0008 ---> Placeable on end tables
0x0009 ---> Placeable in counters
0x000A ---> Placeable under counters
0x000B ---> Placeable on decorative slots (i.e. mantles)
 
Jasana
Вот смотри, я отклонировала первую попавшуюся строчку, поставила для True Target следующий за пердыдущей ячейкой номер, набрала строчку, которую ты написала. Если я правильно поняла, то дальше мне эту строчку отклонировать нужное колличество раз, поставить порядковые номера, и поменять значение unknown [1]? Правда таким способом у меня ничего не получилось.:(
Вот скрин из Sim PE, чего я там понаделала
 
Манька-облигация, да, все правильно. Должно оно ставиться на пол, кофейный и обеденный столик.
Манька-облигация написал(а):
Правда таким способом у меня ничего не получилось.
Тогда, возможно, проблемы с весом. На любую поверхность можно поставить предмет с весом не больше, чем ее параметр support strength. Напольное зеркало, скорее всего, весит больше. Добавь строчку типа
Код:
[prim 0x0002] Expression (My 0x001B (weight) := Literal 0x0005)
должно встать. Ну, и для верности в семиглобальном ините (он из первой строчки вызывается) посмотри, какой вес раньше был.
Я надеюсь, что это ты напольное зеркало клонировала? Потому что если настенное, то его надо еще отклеить от стены, это еще инструкции.
 
И еще нужно не забывать, что при редактировании init'а нужно после любых исправлений покупать предмет заново или ресетить. Во всяком случае раньше так всегда было, я давно не упражнялась. :D
 
Jasana
Строчку добавила, не помогло:wallbash: А вообще порядок строчек важен? Я просто пихнула ее на предпоследней.
Ну, и для верности в семиглобальном ините (он из первой строчки вызывается) посмотри, какой вес раньше был.
А это где смотреть, я просто с BHAVами пока не сталкивалась, плохо себе представляю что это такое:o
Зеркало напольное, которое в деревянной раме
 
Манька-облигация написал(а):
А вообще порядок строчек важен?
Нет, важно только чтобы строчка вызывалась - чтоб на нее переход был - ну и чтобы не было ниже строчки, делающей противоположное :)
Манька-облигация написал(а):
А это где смотреть, я просто с BHAVами пока не сталкивалась, плохо себе представляю что это такое
А вон самая первая строчка в твоем ините начинается с [semi - это вызов семиглобального бхава. Ты ее выдели, и там справа будет где-то ссылочка view BHAV.
Дюкаша написал(а):
И еще нужно не забывать, что при редактировании init'а нужно после любых исправлений покупать предмет заново или ресетить.
Кстати да, совсем забыла сказать :( Ты зеркало заново покупала?
 
Да, зеркало покупала заново.
Ты ее выдели, и там справа будет где-то ссылочка view BHAV
Я туда залезала, там куча непонятных значений. Слово weight нигде не нашла:loss:
Я вот думаю, может еще в каких-нибудь рессурсах надо что-нибудь поменять, или вся информация об анимации содержится только в BHAVе?:confused:
 
Гм, мы вроде не про анимацию говорили, а про установку на различные поверхности. Эх, самой мне что ли лезть в это зеркало... :D Тысячу лет не брала в руки хакерские инструменты. :o
 
Не знаю, как у вас, а лично у меня напольные зеркала на кофейном столе смотрятся достаточно глупо.
Напольные зеркала используют семиглобальный init под номером 0x201E, это видно в ресурсе OBJf (Object Functions)
e7bd9fedcd46.jpg
А на основе семиглобального init'а можно легко сделать семиглобальный патч, который будет влиять на все зеркала, включая скачанные (если только они не хакнуты соответствующим образом). Можно, конечно, если надо, и пойти другим путем: заставить отдельно взятое зеркало использовать конкретно для него отредактированный init с нужными функциями.
 
Последнее редактирование:
Все, встало зекало:jump:
Спасибо девченки. Я просто в OBJf поменяла номер init c 0x201E на 0х1000 и все встало.
 
Да, если интересует редактирование свойств только конкретного зеркала, то это самое логичное.
 
Назад
Сверху