![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
![]()
Сообщение
#1561
|
|
Миловидный Бегрюссунг ![]() Класс: Воин Характер: Chaotic Good Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
Zirrex любая переменная проверенная на ноль выдасть TRUE, это движковое. Так что учи матчасть, прежде чем что-то утверждать.
Добавлено в [mergetime]1120622736[/mergetime] Что бы проверить истинно существующую локалку. То просто проверяется на TRUE. Если она существует, то будет результат. И не важно, 1 или 20 она ровна. Добавлено в [mergetime]1120623210[/mergetime] Расскажи лучше чем занят? ;) |
![]()
Сообщение
#1562
|
|
Level 9 ![]() Класс: Друид Характер: True Neutral Раса: Эльф NWN: Скриптинг [PW] Амен ![]() |
Aiwan, да, что-то немного ступил, и правда, изначально она равна 0, далее ее просто можно таким образом удалить, и меньше скриптов.
з.ы. На данный момент занимаюсь проектом Амен. Не знаю, слышал ли про такой онлайновый шард или нет. Существует уже 2,5 года. |
![]()
Сообщение
#1563
|
|||
Level 3 ![]() Класс: Ниндзя Характер: Chaotic Evil Раса: Человек ![]() |
Помогите а что тут за ошибка ? плиз
кричит на object GetPlayerSpirit(object oPlayer); первый который :) |
||
![]()
Сообщение
#1564
|
|||
Level 9 ![]() Класс: Фея Характер: Chaotic Evil Раса: Тварь NWN: Скриптинг [PW] ![]() |
GoingPro) синтаксис NWN-script заимствован из C, а в нем, в отличие от Pascal'я, не допускаются вложенные описания процедур. да и вообще, каша какая-то...
|
||
![]()
Сообщение
#1565
|
|
Level 9 ![]() Класс: Друид Характер: True Neutral Раса: Эльф NWN: Скриптинг [PW] Амен ![]() |
GoingPro), как я понял, ты решил сделать сохранение персонажей на локации после рестарта? Не делай так, как описано это в базе скриптов, т.е. не кидай скрипт сохранения локации персонажа на каждую локацию в эвент "OnEnter". Лучше повесь его на скрипт "default". Скрипт срабатывает каждый раунд, и постоянно перезаписывает координаты персонажа, в отличие от того, что установлен на "OnEnter". Какого-либо падения скорости это не вызовет. Единственное но, при входе на шард, скрипт чтения переменных и координат надо разместить на скрипт "OnClientEnter", и запретить работу скрипта "default" в стартовой локации, иначе сохранит координаты.
Да, и чтобы не было подобных казусов, который произошел у тебя, знакомься с чужими скриптами, смотри как они написаны и что следует писать в разных случаях. Потом научишься быстро делать свои скрипты. И не лишним будем знакомство с основами С++. Только, главное, не копировать чужие ошибки :) |
![]()
Сообщение
#1566
|
|||||
Миловидный Бегрюссунг ![]() Класс: Воин Характер: Chaotic Good Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
Да, забудь :friend: Я там сам стальными яйцами погремел :D
Слышал конечно. Ну, вливайся к нам на форум! ;) |
||||
![]()
Сообщение
#1567
|
|||
Level 4 ![]() ![]() Класс: Клерик Характер: Lawful Good Раса: Человек ![]() |
Я столкнулся с проблемой баланса. Дело в том, что сорки и визарды в раскачанов состоянии являются грубо говоря читерскими классами ибо файтер против мага в пвп мало что может сделать(сжимающая бигби + исаак, если у файтера нет мегашмоток он труп). Я уже и трусинг убрал и на исааки проверку на спасброски по реакции повесил и бигби по времениурезал, все равно сорки сильнее и даже самых крутых мобов не обладающих спелл имуном кладут только в путь, а обкаст делает ихнеуязвимыми в ближних атаках. И тут родилась идея, а что если сорки и визарды будут получать 25% от опыта назначеного в настройках модуля, я слышал где-то это уже было реализовано, вот толлько как? Если придется редактировать 2da дайте пожалуйста ссылочку на то, как это делать. И вот еще вопрос: скрипт отдыха я взял стандартный и поправил, добавив необходимость в еде и матрасе, но он почему то циклится, яубрал эту неприятность довольно примитивно заставив игрока самолично подбирать матрас, но тут появилась необходимость накладывать эффект сна в конце отдыха, чтобы персонаж во первых спал дольше, во вторых была возможность его убить одним удачным ударом. Как это лучше сделать? вот скрипт
Честно говоря я не понял назначения большинства функций, потому решил просто доплнить. |
||
![]()
Сообщение
#1568
|
|||
Level 9 ![]() Класс: Фея Характер: Chaotic Evil Раса: Тварь NWN: Скриптинг [PW] ![]() |
Batkom 1. не видел пока шардов с оставленной по умолчанию системой выдачи опыта. везде применяется самостоятельная система выдачи опыта - при смерти кричи оценивается уровень оной, уровень игрока, количество народа в партии(соотношение уровней игроков в партии), количество нанесенного урона итд итп, и на основе всего этого игроку выдается опыт. ноги растут из nw_c2_default7(смерть кричи), nw_c2_default6(урон). 2. скрипт отдыха вызывается не только в начале оного - в начале, в конце, при отмене, и при неудачной попытке отдохнуть. какое именно событие произошло определяется функцией GetLastRestEventType(). эффект сна, накладываемый на начинающего отдыхать, отменяет отдых. дефолтную систему отдыха можно смело выкидывать, все равно ты ее не используешь. заготовка скрипта:
|
||
![]()
Сообщение
#1569
|
|
Level 3 ![]() Класс: Ниндзя Характер: Chaotic Evil Раса: Человек ![]() |
Где можно взять хак пак с замками и каменными стенами и всей этой ерундой если конечно такой есть, хотя я думаю должен быть 100%. Помогите пожалуйсто.
И ещо есть игроку присваивать SetLocalInt(oPc, "INT", 1); то после рестарта сервера оно сохраняеться? Если нет то как одевать на персонажа шкуру, просто туда можно было бы поприсваивать че то :)? Молю о помощи, брожу в неведании и это мешает в работе :) Помогите пожалуйсто. |
![]()
Сообщение
#1570
|
|||||||
Level 9 ![]() Класс: Друид Характер: True Neutral Раса: Эльф NWN: Скриптинг [PW] Амен ![]() |
GoingPro), искать какие-либо хак-паки стоит тут Neverwinter Vault. Также там много чего полезного для начинающего разработчика. Нет, не сохранится. Все переменные хранятся на персонаже до рестарта. Рестарт же их затирает. Есть хорошие функции, которые пишут переменные в базу. Например, так:
а потом считываешь при входе:
Только надо вначале описать, при каких условиях переменная создается первый раз, чтобы этого не происходило вторично. Извиняюсь, если ошибся, мало работал с ними. Одеть предмет на персонажа легко. Во-первых, нужен сам предмет, его тэг, а во-вторых, если это сервер, то в настройках его должна быть выключена опция "Item Level Restrictions", иначе вещь не по уровню просто не наденется на персонажа, а будет валяться в рюкзаке. Далее делаем так:
Сообщение отредактировал Zirrex - Jul 7 2005, 19:31 |
||||||
![]()
Сообщение
#1571
|
|
Level 4 ![]() ![]() Класс: Клерик Характер: Lawful Good Раса: Человек ![]() |
вот еще вопрос, делая алхимию, как один из эффектов при неудачном смешении ингридиентов игрок превращался в корову или пингвина. Дело в том, что после установки полиморфа игрок может его отменить нажав "отменить полиморф" как лишить игрока этой возможности?
я пробовал накладывать паралич, но игрок просто преврашается обратно и стоит в параличе может можно убрать как нибудь эту кнопку, или лишить игрока всех действий |
![]()
Сообщение
#1572
|
|||
Level 9 ![]() Класс: Друид Характер: True Neutral Раса: Эльф NWN: Скриптинг [PW] Амен ![]() |
Batkom, хехе, да все просто, ты не делай полиморфа, а просто изменяй облик. Смотри:
Переменная не обязательна, но можно и оставить, она у меня служила для выбора условий. Сообщение отредактировал Zirrex - Jul 7 2005, 20:03 |
||
![]()
Сообщение
#1573
|
|
Level 4 ![]() ![]() Класс: Клерик Характер: Lawful Good Раса: Человек ![]() |
сенк, сейчас опробую
ТHX все работает, чейчас буду разбираться с опытом М.....э...а можно какой нибудь примерчик? Я никак не могу найти, в каком именно месте игроку выдается опыт.... Сообщение отредактировал Batkom - Jul 8 2005, 01:59 |
![]()
Сообщение
#1574
|
|
Level 3 ![]() Класс: Ниндзя Характер: Chaotic Evil Раса: Человек ![]() |
Batkom На смерть моба форумулу зделай, и все будет путем.
Хотел ещо узнать вот что: 1) На лаги модуля или локации влияет большое количество юзибл объктов? 2) Как получить данные о игроке когда он использует придмет object oPC = ????(); Спасибо. Со вторым я уже разобрался object oPC = GetLastUsedBy(); должно работать поидеи, но я ещо не проверял... Сообщение отредактировал GoingPro) - Jul 8 2005, 14:39 |
![]()
Сообщение
#1575
|
|||||
Level 9 ![]() Класс: Друид Характер: True Neutral Раса: Эльф NWN: Скриптинг [PW] Амен ![]() |
Batkom, выдается он обычно при срабатывании скрипта "nw_c2_default7", но в нем ты ничего не найдешь, потому что за опыт отвечает параметр "Xp Scale" в настройках модуля. Если ты хочешь использовать свою систему распределения опыта, то это значение надо ставить в 0. Правда есть одно но, даже если его убрать в 0, то все равно будет писаться опыт, только всегда будет иметь нулевое значение. Чтобы этого не было, надо в скрипте "nw_c2_default7" прописать следующее:
Урон равен 2000, потому что есть монстры, у которых жизни больше 1000, если у тебя нет таких, то ставь максимум, который не превышается. Дальше внутри скрипта ставишь ссылку на свой скрипт, который распределяет опыт, например так:
|
||||
![]()
Сообщение
#1576
|
|
Level 4 ![]() ![]() Класс: Клерик Характер: Lawful Good Раса: Человек ![]() |
я нашел функцию определения чегото GetChallengeRating
видимо это и есть CR, но что делать с ним? он float, значит дробь, возможно нужно умножать его на не знаю что и делить на HD игрока или общий HD партии или нет.... у меня получилась формула fXp = GetChallengeRating(oMonster) * X / GetHitDice(oPC); откуда взяь множитель Х не знаю, хотя может я вообще все не так делаю... |
![]()
Сообщение
#1577
|
|||||||
Level 9 ![]() Класс: Фея Характер: Chaotic Evil Раса: Тварь NWN: Скриптинг [PW] ![]() |
Batkom одной формулой ты врядли обойдешся. возьми для примера систему из какого-нибудь hcr - сам "рожать" будешь долго... ;) float потому, что на маленьких значениях он бывает нецелый(0.5, 0.75)... Zirrex http://nwn.bioware.com/support/patchdetails164.html :
по поводу "ошибки алхимика": Lexicon:
Сообщение отредактировал dumbo - Jul 8 2005, 20:32 |
||||||
![]()
Сообщение
#1578
|
|
Level 4 ![]() ![]() Класс: Клерик Характер: Lawful Good Раса: Человек ![]() |
ясно сенк, сейчас попробую потырить скрипт с нордока170
|
![]()
Сообщение
#1579
|
|
Level 9 ![]() Класс: Друид Характер: True Neutral Раса: Эльф NWN: Скриптинг [PW] Амен ![]() |
dumbo, не знал, но у меня по старинке установлен этот скрипт. Теперь можно и убрать.
У полиморфов есть один побочный эффект. Если превращаешься в Балора, Голема, Дракона, и т.д., то, у кого в полиморфе становится в 2 раза выше жизни, чем у персонажа, при автосохранении на сервере происходит перенакладка полиморфа. В принципе, это у всех, но с "тяжелыми" полиморфами иная проблема. Т.е., если полиморфа ранили, но жизнь не опустилась ниже критического порога, например, была 500/300, а стала 301/300, то она восстановится. Явный баг, но как его исправить, я не знаю, в момент автосохранения полиморф как бы дергает. К тому же я так еще сделал, чтобы избавиться от эффекта полиморфа. Сообщение отредактировал Zirrex - Jul 8 2005, 22:19 |
![]()
Сообщение
#1580
|
|||
Level 4 ![]() ![]() Класс: Клерик Характер: Lawful Good Раса: Человек ![]() |
ух взял скрипт раздачи опыта с nordockpub170 вроде все правильно, но не работает вообще посоветуйте какой нибудь простой во внедрении скрипт а я его дополню вот что у меня получилось
откуда брать basexp и bonusxp понятия не имею |
||
![]()
Сообщение
#1581
|
|
Миловидный Бегрюссунг ![]() Класс: Воин Характер: Chaotic Good Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
Batkom вопросы по скриптингу в другой теме. Тут вопросы новичков. Еще раз увижу обсуждение кода, влеплю пред.
|
![]()
Сообщение
#1582
|
|
Level 4 ![]() ![]() Класс: Клерик Характер: Lawful Good Раса: Человек ![]() |
сорри
|
![]()
Сообщение
#1583
|
|
Level 9 ![]() Класс: Друид Характер: True Neutral Раса: Эльф NWN: Скриптинг [PW] Амен ![]() |
Batkom, не бери из Нордока, там паршивая система распределения опыта. Она мне не понравилась. Лучше попробуй этот скрипт Neverwinter Vault - PWFXP.
Самое главное, правильно его настроить. Подробно расписывать не буду, что он умеет, разбирайся сам. Вкратце скажу, он не позволяет бегать в партии высокоуровневому персонажу и низкоуровневому. Последнему просто не будет идти опыт. Я с этим уже сталкивался, на шардах первого поколения очень широко были распространены так называемые "качели". Сообщение отредактировал Zirrex - Jul 9 2005, 13:57 |
![]()
Сообщение
#1584
|
|
Level 4 ![]() ![]() Класс: Клерик Характер: Lawful Good Раса: Человек ![]() |
То что качелей и паравозов нету есть гут, ибо я чего толкьо не делал и как только не извращался.
Сейчас попробую внедрить. Все работает, пока не совсем так как хотелось бы, но это вопрос времени. Огромное спасибо. :D Добавлено в [mergetime]1120956151[/mergetime] Еще раз спасибо, скрипт отлично работает, все настроил, теперь прусь :D ..ээм...вот еще пара вопросиков :unsure: 1 как увеличить продолжительность сна 2 как проверить есть ли в пределах 5 метров от игрока плсбл обьект с известным тегом? Хочу сделать, чтобы без разведенного рядом костра восстанавливались не все хит поинты и просто увеличить продолжительность отдыха в 2 или 3 раза Сообщение отредактировал Batkom - Jul 10 2005, 00:28 |
![]()
Сообщение
#1585
|
|||||||||
Миловидный Бегрюссунг ![]() Класс: Воин Характер: Chaotic Good Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
Сделай перебор объектов рядом в кубе. Если в кубе бушь перебирать, укажи размер куба и не нужно писать третий параметр в строках снизу.
Добавлено в [mergetime]1120971414[/mergetime] Если через перебор всех объектов то
Оставь это. Но лучше через ту функцию что дал выше. |
||||||||
![]() ![]() |
Текстовая версия | Сейчас: 15th July 2025 - 21:12 |