Перейти к содержимому


Фотография

(sfall) дополнения


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 1246

#1161 Crafty

Crafty

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 423 сообщений

Отправлено 08 Апрель 2018 - 02:54

QUOTE (Fakeman)
Почему я постоянно в процедуре start вижу эти script_action, скрипты остались с демо-версии?
Вероятно, а может привычка. Честно говоря у меня нет под рукой F1 версии 1.0, а искать лень, но в патче 1.1 экзешник уже точно вызывает именные обработчики напрямую.


#1162 Fakeman

Fakeman

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 557 сообщений

Отправлено 08 Апрель 2018 - 16:16

Все забываю спросить, я в формуле дамага заменил движковую item_w_damage_ на скриптовой вариант получения повреждения, вот таким образом.
CODE
for (i := 1; i <= rounds; i++) begin
   damage := (item_w_damage + bonus_ranged) * dmg_mult; //item_w_damage_
...

CODE
procedure item_damage_hook begin // HOOK_ITEMDAMAGE
  item_w_damage_min := get_sfall_arg;
  item_w_damage_max := get_sfall_arg;
end

procedure item_w_damage begin
  return random(item_w_damage_min, item_w_damage_max);
end

Из item_w_damage_ нужно же только получить рандом дамага? или есть какие-то скрытые нюансы.
Я переделал скрипт полностью на скриптовой вариант, но вот с item_w_damage_ остались сомнения.

Это сообщение отредактировано Fakeman - 8 апреля 2018 | 16:19


#1163 Crafty

Crafty

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 423 сообщений

Отправлено 08 Апрель 2018 - 17:13

QUOTE (Fakeman)
но вот с item_w_damage_ остались сомнения.
Всё верно. Хотя можно вообще от item_w_damage отказаться заменив сразу на random ;)


#1164 Fakeman

Fakeman

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 557 сообщений

Отправлено 09 Апрель 2018 - 12:58

QUOTE
Неверно — HOOK_ITEMDAMAGE срабатывает в оригинальной item_w_damage_, а поскольку ты её полностью исключаешь из использования, то значения item_w_damage_min и item_w_damage_max никогда не будут соответствовать реальным значениям оружия.

Так мин-макс дамаг получаются из HOOK_ITEMDAMAGE каждый раз при стрельбе.
Цепочка вызова
Движковой compute damage -> item_w_damage_ -> HOOK_ITEMDAMAGE -> Получили мин-макс -≥ Hook_Damage
Что не так то?

И спрашивал по цикл
CODE
for (i := 1; i <= rounds; i++) begin
  damage := (item_w_damage + bonus_ranged) * dmg_mult; //item_w_damage_
...

Он там в движке чтобы просто убить процессорные время?)) в этом цикле ничего не анализируется, ничего не запоминается относительно предыдущей итерации цикла.


#1165 Crafty

Crafty

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 423 сообщений

Отправлено 09 Апрель 2018 - 16:29

QUOTE (Fakeman)
Что не так то?
Так, попутал с хуками полностью переопределяющими обработку ;)

QUOTE (Fakeman)
в этом цикле ничего не анализируется, ничего не запоминается относительно предыдущей итерации цикла.
Дамаг суммируется, rounds — это количество пуль.

QUOTE (Fakeman)
Потому что в оригинальном использование движковой item_w_damage_ совместно с HOOKDAMAGE глючит, это ты там у себя поправил и все ок)
Та ладно? :-p


#1166 Foxx

Foxx

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 120 сообщений

Отправлено 09 Апрель 2018 - 16:49

QUOTE ("Crafty")
Та ладно? :-p

Та, не спорь — твой все равно круче ;)


#1167 Fakeman

Fakeman

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 557 сообщений

Отправлено 09 Апрель 2018 - 16:59

QUOTE
Так, попутал с хуками полностью переопределяющими обработку

Непонял... Кто попутал?

QUOTE
Дамаг суммируется

Вот я так и думал, что должно суммироваться))
Я когда отформатировал твою писанину для более легкого чтения, в конце просчета поставил := вместо += :)

QUOTE
Та ладно?

Ты не чего не исправлял, само от ремонтировалось))


#1168 Crafty

Crafty

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 423 сообщений

Отправлено 09 Апрель 2018 - 18:09

QUOTE (Foxx)
Та, не спорь — твой все равно круче ;)
QUOTE (Fakeman)
Ты не чего не исправлял? само от ремонтировалось))
Не, я серьёзно не припоминаю каких-либо изменений в "item_w_damage_ совместно с HOOKDAMAGE".

QUOTE (Fakeman)
Разберусь что там крутое) крашит игру, напишу.
Это хитрый план :-p


#1169 Foxx

Foxx

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 120 сообщений

Отправлено 09 Апрель 2018 - 18:49

QUOTE ("Факеман")
Ага) я опять получаю краши

Если делать свою собственную игру и с собственными скриптами — то да))))
Да и еще просить фишки в движке (про слух именно ты просил), которые потом обычным играм будут условности ставить)))


#1170 Fakeman

Fakeman

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 557 сообщений

Отправлено 09 Апрель 2018 - 21:13

QUOTE
Это хитрый план :-p

Ладно это ложная тревога, крашилось на clear_array, обновил ддл на последнию и вроде норм (может забыл обновить с прошлых правок массива).

QUOTE
Не, я серьёзно не припоминаю каких-либо изменений в "item_w_damage_ совместно с HOOKDAMAGE".

Там глюк если возвращается ретурном дамаг в HOOK_ITEMDAMAGE, то после вызова item_w_damage_ в HOOK_COMBATDAMAGE критеры/игрок наносят дамаг сами по себе))


#1171 Crafty

Crafty

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 423 сообщений

Отправлено 09 Апрель 2018 - 22:00

QUOTE (Fakeman)
Там глюк если возвращается ретурном дамаг в HOOK_ITEMDAMAGE, то после вызова item_w_damage_ в HOOK_COMBATDAMAGE критеры/игрок наносят дамаг сами по себе))
Всё равно хз о чём, но выглядит как серьёзный ахтунг :-p


#1172 Fakeman

Fakeman

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 557 сообщений

Отправлено 10 Апрель 2018 - 01:55

QUOTE
но выглядит как серьёзный ахтунг :-p

Ну это выглядит примерно так же как MultiHex критеры метают оружие сами в себя)))


#1173 Fakeman

Fakeman

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 557 сообщений

Отправлено 11 Апрель 2018 - 18:56

В HOOK_MOUSECLICK не происходит событие "released" для всех кнопок кроме left.
CODE
procedure MouseClick_Hook begin
     variable type   := get_sfall_arg;     // event type: 1 - pressed, 0 - released
     variable button := get_sfall_arg;     // button number (0 - left, 1 - right, up to 7)
     
     display_msg("type: " + type);
end


#1174 Crafty

Crafty

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 423 сообщений

Отправлено 11 Апрель 2018 - 22:18

QUOTE (Fakeman)
В HOOK_MOUSECLICK не происходит событие "released" для всех кнопок кроме left.
Спасибо. Серьёзная лажа, кстати :/


#1175 Fakeman

Fakeman

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 557 сообщений

Отправлено 12 Апрель 2018 - 19:43

Есть какой-нибудь сайт для нубов где можно было посмотреть опкоды к ассемблеровским командам.
или желательно сайт где вводишь мнемонику и выводится ее опкод.

Это сообщение отредактировано Fakeman - 12 апреля 2018 | 19:45


#1176 Crafty

Crafty

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 423 сообщений

Отправлено 12 Апрель 2018 - 20:23

QUOTE (Fakeman)
Есть какой-нибудь сайт для нубов где можно было посмотреть опкоды к ассемблеровским командам.
Гугл или там Яндекс, не? ;)


#1177 Fakeman

Fakeman

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 557 сообщений

Отправлено 12 Апрель 2018 - 23:56

CODE
Гугл или там Яндекс, не?;)

не для нубов не находит)


#1178 Crafty

Crafty

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 423 сообщений

Отправлено 13 Апрель 2018 - 00:30

QUOTE (Fakeman)
не для нубов не находит)
Вбил в яндексе "опкоды к ассемблеровским командам", выбрал наугад Хабрахабр, бегло просмотрел текст и увидел ссылку. Уверен что при желании можно ещё чего найти.

Но ты бы лучше конкретизировал для чего тебе это — изучения ассемблера или, как я полагаю, для конвертации ассемблерного кода в машинный код, чтобы самому было удобно делать изменения.
Для второго способа есть простой способ с использованием Hiew'а — в Decode режиме включить редактирование (F3), потом редактор ассемблерного кода (F2) и после ввода нужного кода и нажатия Enter увидеть подсвеченный результат в виде машинного кода. Главное потом выйти из режима редактирования через Esc не нажав Update (F9) ;)


#1179 Fakeman

Fakeman

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 557 сообщений

Отправлено 13 Апрель 2018 - 01:27

QUOTE
для конвертации ассемблерного кода в машинный код, чтобы самому было удобно делать изменения.

Вот это, а то мне приходится по исходникам базы IDA искать)
По ссылке таблицу уже смотрел там точно уже для прошареных.

QUOTE
Hiew'а

Если бы не его досовский вид)

Это сообщение отредактировано Fakeman - 13 апреля 2018 | 01:32


#1180 Crafty

Crafty

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 423 сообщений

Отправлено 13 Апрель 2018 - 02:22

QUOTE (Fakeman)
Если бы не его досовский вид)
Уверен что можно найти и GUI-аналог.
Или так — Online x86 / x64 Assembler and Disassembler.




Похожие темы Свернуть

  Название темы Форум Автор Статистика Последнее сообщение


Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных

Рейтинг@Mail.ru