You are not logged in.
Огромное спасибо!
Только в коде надо вместо -1 ставить имя актера, а то машина не едет, а тупо стоит на месте.
Last edited by JuSskeee* (01-12-2011 17:41)
Your Banny Wrote
Offline
Еще вопрос.
Есть опкод на прорисовку местности.
04E4: unknown_refresh_game_renderer_at 2326.038 1405.908
Но у меня почему то ничего не происходит. Как были непрорисованные тестуры так и остались.
В чем тут дело?
Your Banny Wrote
Offline
Еще вопрос.
Есть опкод на прорисовку местности.04E4: unknown_refresh_game_renderer_at 2326.038 1405.908Но у меня почему то ничего не происходит. Как были непрорисованные тестуры так и остались.
В чем тут дело?
Этот опкод вроде нужно использовать прямо перед опкодом 015F, причём камеру надо ставить в те же координаты, где производишь прорисовку.
Offline
А вот меня всегда интересовало: чё значит Sanny?
Sanny — уменьшительно-ласкательное от "San", (в полном виде — "San Andreas"); т.к. Санни Билдер был направлен изначально на скриптинг для GTA SA. Впоследствии добавились возможности скриптинга и для других игр серии, а название осталось.
Мне нравится, Sanny хорошо звучит, и не как-нибудь пресловуто вроде "GTA San Andreas Scripts Editor" или "GTASASE".
Ну и мои вопросы.
1. Как определить часть тела актёра, куда попала пуля.
2. Как можно сделать так, чтобы при 0 хп актёр (мне нужен будет игрок) не погибал?; ну или сделать так, чтобы меньше 1 хп нельзя было оставить.
А по-хорошему, надо бы какую-нибудь ссылочку на адреса памяти, связанные с уроном и оружием. Есть у кого на примете где-нибудь в гтамоддинге?
Offline
Ну и мои вопросы.
1. Как определить часть тела актёра, куда попала пуля.
2. Как можно сделать так, чтобы при 0 хп актёр (мне нужен будет игрок) не погибал?; ну или сделать так, чтобы меньше 1 хп нельзя было оставить.
А по-хорошему, надо бы какую-нибудь ссылочку на адреса памяти, связанные с уроном и оружием. Есть у кого на примете где-нибудь в гтамоддинге?
Снова я часть твоих вопросов не слышу в скайпе)
Ответа на первый вопрос я не знаю.
Второй вопрос - возможно удастся в цикле проверять хп игрока и если оно равно нулю, то ставить 1. Если такой скрипт не сработает, можно попробовать написать asi, которая будет проверять хп игрока, и ставить 1, если хп равно нулю, почти без задержек. Хотя обе версии необходимо проверять, напишешь в скайп, попробуем ещё.
Насчёт адресов памяти могу предложить только это, ничего конкретно о уроне, получаемым игроком, я не видел (впрочем и не искал)...
Offline
Необходимость вторжения в память предполагал. Но для этого нужно знать адреса, связанные с изменением хп.
Про части тела что? 100% имеется такая система в СА; вспомните анимации: когда в одну ногу с шотгана — актёр ей трясёт, в другую — другой, так же с руками и корпусом. Кто может приблизить к разгадке вычисления точки попадания пули?
Offline
Думаю, это относится к CTaskSimple
Offline
Как рассчитывать "мировые координаты" по координатам экрана? Или возможно только из "мировых" экранные?
Offline
Вот такой прикол в ГТА есть. Создаем актера и еще порядка 5-6 "левых" актеров.
Создаем последовательность и заставляем актера убивать тех "левых" актеров. Первый актер убивает 1-3 "левых" и что-то жестикулирует руками. Длится это 5-7 секунд. После, он опять убивает 2-3 актера и опять что-то жестикулирует.
Собственно вопрос: Как убрать эту жистикуляцию и заставить актера убивать всех по очереди, но неприрывно?
Your Banny Wrote
Offline
Offline
@JuSskeee* - 09B5: set_actor $ACTOR_RYDER signal_after_kill 0
Interesting Opcodes рулят.
Хе-хе. Тоже всегда бесило, когда начинаются хвалебные речи в свой адрес прямо во времи перестрелки.
Я вон, может, с минигана целыми армиями кладу и ничего, реквием не начинаю исполнять.
По идее, где-то в пед* файлах можно убрать такое действие на евент. Искоренить вовсе. Но это уже "где-то", надо искать.
Что моим вопросом про вычисление точки попадания пули? У кого минутка есть — может быть, пошаманите с ассемблером? Хотя... минутки недостаточно будет, боюсь. Блин. Что ж так всё нехожено.
Offline
Bullets
0xC88740 - Bullet pool start.
+12 = [byte] Bullet exists
0 = Does not exist
1 = Exists
+16 = [float] X-axis position
+20 = [float] Y-axis position
+24 = [float] Z-axis position
Про точку попадания сложно сказать.
Last edited by Jack Daniel's (16-12-2011 20:20)
Offline
Bullets
0xC88740 - Bullet pool start.
+12 = [byte] Bullet exists
0 = Does not exist
1 = Exists
+16 = [float] X-axis position
+20 = [float] Y-axis position
+24 = [float] Z-axis positionПро точку попадания сложно сказать.
В принципе можно проверять близость пули к какой-либо из костей. Как вообще узнать, сколько на данный момент пуль в pool'е? (смешно звучит )
Offline
заинтересовали опкоды чтения/записи значений в .ini файлах.
Что возвращают опкоды, если файла с запрашиваемым значением не существует?
При записи значений в пока еще не существующий файл, он ведь создается? или обязательно нужно уже иметь этот пустой файл
Offline
По идее, создается.
Offline
@Ruzel
Там есть разные параметры открытия файла. Один из таких параметров создаёт файл для записи, если его не существует. А лучше - просто проверить, существует ли файл.
@Jack Daniel's
Я на гтамоддинге рассписал эту ситуацию. Это пули снайперской винвовки.
Не думаю, что ID кости, в которую "попала" пуля, храниться где-то в структуре.
Там как происходит: вызов процедуры processLineOfSights, она заполняет структуру CColPoint, один из "элементов" которой - ID компонента автомобиля либо ID кости педа (если этот "луч света" попадает в эту часть модели)
Last edited by DK22Pac (17-12-2011 11:48)
Plugin-SDK https://github.com/DK22Pac/plugin-sdk
Discord-сервер по plugin-sdk и программированию в GTA
RU https://discord.gg/QEesDGb
ENG https://discord.gg/zaVqFQv
Offline
Попробовал вот так:
1@ = 16999
0AF1: write_int 1@ to_ini_file "myfile.ini" section "Mysection" key "mykey"
итог - файл не создался.
можно ли както исправить, или необходимо чтобы файл уже существовал
Last edited by Ruzel (17-12-2011 13:39)
Offline
Попробовал вот так:
1@ = 16999
0AF1: write_int 1@ to_ini_file "myfile.ini" section "Mysection" key "mykey"
итог - файл не создался.
можно ли както исправить, или необходимо чтобы файл уже существовал
А где ты ждёшь его появления? Файл должен создаться в папке с игрой.
Offline
Еще один вопрос. По типу жестикуляции. Есть 3 актера, есть еще 10-12 актеров. Когда 1 из актеров убивает несколько тех актеров, то один из тех двух оставшихся актеров удивленно подбегает к трупу убитого актера с криками "OMG!" и др.
Как собственно убрать это. То есть что бы актеры убили тех актеров и не подбегали к их трупам. Жду...
Your Banny Wrote
Offline
Попробую.
Если будет результат заранее спасибо.
Last edited by JuSskeee* (17-12-2011 18:35)
Your Banny Wrote
Offline
Попробовал, но увы нет. Очень жаль конечно, но тут какой-то другой метод нужен.
Your Banny Wrote
Offline
Можно сделать так:
1. проверить, кто из актеров остался жив.
2. случайным образом (random) выбрать живого актера
3. заставить одного из актеров атаковать выбранного актера (05E2)
4. аналогичным образом назначаем "объекты атаки" другим актерам
5. после гибели какого-то актёра повторяем процесс снова.
Offline
Да нет, актеры убивают тех актеров нормально, без остановки. Но бывает, что один из тех актеров бежит посмотреть на труп мертвых актеров.
Your Banny Wrote
Offline