|
Ray
Модератор
Откуда: Донецк,Украина Регистрация: Янв. 2004
Всего: 746 сообщений
|
Для этого и спрсил, всё ли понятно? Поясняю: (вот только я пользуюсь другим компилятором, и поэтому код будет непонятен.Но попробую описать идею) Итак: .......................... variable temp:=0; //заводим временную переменную в нужном скрипте variable number:=0; //дополнительная переменная variable dop :=0; //дополнительная переменная ....................... procedure pickup_p_proc //вызывается при попытке кражи begin dop := op_has_skill(op_dude_obj(), 10); //проверяем скилл воровства if (dop<20) then begin number:=100; end else if (dop<40) then begin number:=50; end else if (dop<80) then begin number:=20; end else if (dop<120) then begin number:=10; end else if (dop<180) then begin number:=5; end //задаём уровень возможности кражи else temp:=random(1,number); if (temp !=1) then begin op_script_overrides(); op_attack(op_dude_obj(), 0, 1, 0, 0, 30000, 0, 0); end//вызываем бой значение number можно подобрать точнее (Добавление от 19:34 - 9 Фев., 2005.) извините, выложил не тот вариант. Тут 2 ошибки: не надо else - перед temp:=random(1,number); надо end - в конце
----- Не бывает невозможных задач – бывает мало времени.
|
Отправлено: 19:30 - 9 Фев., 2005
|
|
Tehnokrat
Модератор
Откуда: Новосибирск Регистрация: Окт. 2003
Всего: 489 сообщений
|
>>манчкин просто нажмет 0 и родолжит сейв - лаод. поэтому "диалоги" не выход. Ну нажмёт он 0 и попадёт прямиком туда, куда я его пошлю. Например на пятиминутный ролик о вреде манчкинизма >>(Не хочу создавать новое сообщение) А мы можем принудительно вызвать сохранение через скрипты. Меня посетила очень подлая идея по поводу краж Хочешь перезаписать последний сэйв? Не получится. >>Как известно, что при неудаче воровства просто вызывается combat mode(режим боя). При неудаче воровства вызывается обработчик pickup_p_proc, а дальнейшее зависит исключительно от того, что в этом обработчике написано. Кстати, при удачной попытке воровства этот обработчик не вызывается, да и вообще никакой. Я не понимаю чего все так хотят прижать манчкинов к ногтю. Ну нравится кому-то играть таким способом - флаг ему в руки, барабан на шею и поезд навстречу! Моды-то пишутся для нормальных людей.
----- Прошлое можно узнать, но нельзя изменить. Будущее можно изменить, но нельзя узнать.
|
Отправлено: 0:04 - 10 Фев., 2005
|
|
Ray
Модератор
Откуда: Донецк,Украина Регистрация: Янв. 2004
Всего: 746 сообщений
|
Эх... Лень до добра не доводит. Ведь догадывался, что это не заработает. Ну ладно, я умею признавать ошибки. Всё тоже, что я написал можно использовать. Достаточно сделать так : procedure use_skill_on_p_proc begin if (op_action_being_used() == 10) then .......... end и далее как в примере. Но есть одно НО. Это всё замечательно работает на практике. Даже при удачной попытке можно перемещать украденый предмет назад. Можно. Но нельзя избавиться от надписи : "За успешное умение воровать ....." Это что-ли двиг подставляет?Так же как и другие надписи. И ещё лично для меня остаётся непонятным: если воровство вообще рэндомное, то как объяснить улучшение навыка воровства при взятии перков? P.S. 2 Tehnokrat : >>Я не понимаю чего все так хотят прижать манчкинов к ногтю Ну а если я в моде поставлю парня со стволом и кучей обойм+стимпаков в кармане. И захочу, чтобы он был убит. Выход - либо качать навык оружия, либо за вора - кражи. А так за часик, под пивко можно добиться результата.
----- Не бывает невозможных задач – бывает мало времени.
|
Отправлено: 1:41 - 10 Фев., 2005
|
|
Dar
Пользователь
Откуда: Воронеж Регистрация: Дек. 2004
Всего: 289 сообщений
|
Tehnokrat Диалог и "результат" за использование 0 - Good, но опять же проше, как Raven предложил напрягать манчкина через сейв. Cкриптовый мультик "о вреде ..." весело , но кажется в итоге может получится напряжно для игрока 0 часто используется в других случаях в некоторых из них не помешал бы облом игрока, например за использование 0 чтобы прокрасться мимо Бишопа, а от торговцев отрубаться вполне разумно, как раз 0-м, значит надо делать дополнительные проверки, на последнее действие. И если ипользовать диалог: то скажем не теряя времени игрок устраивает конфликт=бой и перезагружается теряет при этом он будет не более 15 секунд личного времени на раз и все -> следует манчкинизм продолжается? или ? Мне лично хочется, не манчкинов к ногтю, а адекватной работы скила. Ray Смысл "кода" ясен. По твоей идее cкрипт выдает результат в обход движка? Или "кормит" движок значениями -надо чтобы "кормил". Почему "кормил": успех Воровства зависит: от восприятия обворовываемого НПС, стороны с которой его обворовываешь, количества вороуемых преметов и size итема, также вроде от включенали "украдка" и времени суток - все "считывается" движком, как мне понимается. Со скилом в 15% при size итема =50 у меня не вышло обворовать НПС(восприятие 7) с ~50 попыток. Итемы с size ~ (от 1 до 10) шли на ура и почти на ура "пачками" , воровал через мепер. И вот думаю, может просто Size поменять на "порядок" итемам в игре? Надо еще поэксперементировать... (Отредактировал(а) Dar - 23:20 - 12 Фев., 2005)
|
Отправлено: 23:17 - 12 Фев., 2005
|
|
Ray
Модератор
Откуда: Донецк,Украина Регистрация: Янв. 2004
Всего: 746 сообщений
|
2 Dar : Как я сказал выше - исспользовать мой пример не получится. Я не могу избавиться от сообщения. Короче, лично моё мнение, что двиг и сам прекрасно вычисляет варианты кражи. Остаётся только запретить save\load , а это уже решили в другой теме.
----- Не бывает невозможных задач – бывает мало времени.
|
Отправлено: 15:26 - 13 Фев., 2005
|
|
Dar
Пользователь
Откуда: Воронеж Регистрация: Дек. 2004
Всего: 289 сообщений
|
2 Ray Но ведь, такую проверку можно производить чуть раньше, чем чуз начнет копаться в инвентаре НПС? НПС просто закричит "куды полез" и начнет бой или диалог как Tehnokrat говорил, либо тоже самое только позже, как чуз на несколько шагов отойдет после кражи - по моему реалистично будет выглядеть. А сообшение пусть "живет".
|
Отправлено: 19:55 - 13 Фев., 2005
|
|
Ray
Модератор
Откуда: Донецк,Украина Регистрация: Янв. 2004
Всего: 746 сообщений
|
2 Dar >>Но ведь, такую проверку можно производить чуть раньше, чем чуз начнет копаться в инвентаре НПС Эт. как? Я ещё не влез в карман, а мне уже по шапке настучали Вообще-то проверка сработает только после кражи - op_action_being_used. Даже не так, она сработает до кражи, но прервать кражу не сможет. По поводу сообщения я не согласен. По мне, если что-то делаешь, то делай до конца. Как будет выглядеть ситуация : криттер бежит за героем с криками "Воруют!" , а внизу надпись - "за успешное приминение....."
----- Не бывает невозможных задач – бывает мало времени.
|
Отправлено: 21:15 - 13 Фев., 2005
|
|
|
|