![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
![]()
Сообщение
#2826
|
|
Тролль ![]() ![]() ![]() ![]() Класс: Пьяный Мастер Характер: Chaotic Neutral Раса: Тварь ![]() |
Давно хотел узнать (но все никак не находится) – как в тулсете добавлять на локацию текстуру воды?
|
![]()
Сообщение
#2827
|
|
Level 19 ![]() Класс: Воин Характер: Lawful Good Раса: Человек NWN: Скриптинг [PW] Gem of the North Край Лесов ![]() |
Если в тайле нет, то специальным плейсом из одного полигона. На волте вроде были.
|
![]()
Сообщение
#2828
|
|
Level 11 ![]() Класс: Волшебник Характер: Neutral Good Раса: Фея NWN: Скриптинг [PW] Край Лесов ![]() |
По поводу воды. Ест ьв лексиконе интересная тема, я никогда не использовала, но пишут там следующие:
Цитата An Introduction To Tile Magic
If you played chapter 3 of the official campaign, you probably asked yourself several times "how did they do this, they can't be changing the tilesets on the fly?!" Without a spoiler, here is a short introduction to Tile Magic: The file you want to look at is "x2_inc_toollib.nss". Two of the functions in this file are dealing with changing tiles in a tileset (or better creating the illusion to do that). To give you a short idea of what you can do with it, try this example: Example 1: 1. Create a new module with a new forest area, 8x8 tiles 2. Create a pit in the middle of the forest area, maybe 3x3 tiles 3. Stick the following script in your module: Neverwinter Script #include "x2_inc_toollib" void main() { int nX = 8; int nY = 8; TLChangeAreaGroundTiles(GetArea(OBJECT_SELF),X2_TL _GROUNDTILE_WATER,nX,nY,-0.92f); } 4. Start your module, enter the area, enable debugmode and run your script using the runscript command .... Example 2: 1. Create a City Interior area, 4x4 tiles 2. Draw an Inn environment 3. Place some broken furniture placeables around 4. Save this script into your module: Neverwinter Script #include "x2_inc_toollib" void main() { int nX = 4; int nY = 4; TLChangeAreaGroundTiles(GetArea(OBJECT_SELF),X2_TL _GROUNDTILE_WATER,nX,nY,0.3f); } 5. Run the script via the console's runscript command 6. Woa, what a bad place to live Of course this is just one of the many things you can do using the technique we used. You've probably seen many other applications in the Hordes of the Underdark official campaign, especially Chapter 2 and 3. If not ... what are you waiting for, play the game! Сообщение отредактировал Melisse - Mar 14 2012, 16:56 |
![]()
Сообщение
#2829
|
|
Тролль ![]() ![]() ![]() ![]() Класс: Пьяный Мастер Характер: Chaotic Neutral Раса: Тварь ![]() |
Я точно знаю, что делается это без каких-либо хаков, более того видел как это делается ДМом по мановению ДМ-палки так сказать "налету".
Очевидно это этот интересный инклюд – нужно будет его покапать поближе, спасибо. P.S.: посмотрел... Великолепно – еще одно доказательство необъятности возможностей тулсета не получивших достойной реализации: две функции TLChangeAreaGroundTiles и TLResetAreaGroundTiles совместно с инклюдом x2_inc_toollib при задании площади покрытия тайлов и высоты текстуры включают/выключают заливку тайлов на выбор семью текстурами X2_TL_GROUNDTILE_* (вода, канализационная вода, лед, лава, фонтанирующая лава, скала и трава). Сразу открывается куча дополнительных интерактивных фич для модулестроения и ваяния эвентов. Сообщение отредактировал Flaristan - Mar 14 2012, 20:29 |
![]()
Сообщение
#2830
|
|
Level 11 ![]() Класс: Волшебник Характер: Neutral Good Раса: Фея NWN: Скриптинг [PW] Край Лесов ![]() |
Возможно, можно добавить так же и свои эффекты...
В лексиконе куча интересных функций, которые многие даже в глаза не видели или просто никогда не использовали. |
![]()
Сообщение
#2831
|
|
Level 8 ![]() ![]() ![]() Класс: Псионик Характер: Chaotic Neutral Раса: Хафлинг ![]() |
Плейс - модель. вода - модель. откуда возьмется модель если нету хаков/оврайдов?
|
![]()
Сообщение
#2832
|
|
Тролль ![]() ![]() ![]() ![]() Класс: Пьяный Мастер Характер: Chaotic Neutral Раса: Тварь ![]() |
Эффэкт это.
Берешь тайл леса, рисуешь яму, накладываешь на локацию эффект с текстурой воды нужной площади с нужным возвышением и получаешь озеро посреди леса. Никаких хаков ненужно. А они между прочим есть как раз на озера для тайлов леса, надо было кому то делать модель, а мог просто лексикон почитать... |
![]()
Сообщение
#2833
|
|
Level 19 ![]() Класс: Воин Характер: Lawful Good Раса: Человек NWN: Скриптинг [PW] Gem of the North Край Лесов ![]() |
Цитата Плейс - модель. вода - модель. откуда возьмется модель если нету хаков/оврайдов? Из стандартных ресурсов (IMG:style_emoticons/kolobok_light/smile.gif) Там же есть тайл чисто с водой, его для плейса и конвертируют как правило. Другое дело, то 99% просто сделают плейс и будут пихать его в редакторе, сразу выбирая позицию и высоту, и лишь 1% пригородит к этому скрипт и будет тыкать цифрами полдня, пока не попадёт в нужное. Изврат? Зато без хаков.
|
![]()
Сообщение
#2834
|
|
Тролль ![]() ![]() ![]() ![]() Класс: Пьяный Мастер Характер: Chaotic Neutral Раса: Тварь ![]() |
Ну если сравнивать например вариант когда при наступлении зимы в модуле используется другая локация в замен летней и когда можно потратить пол дня на проработку локации так, что достаточно просто добавить зимой этот эффект – я выберу последнее только потому что это более лаконичный подход к решению.
|
![]()
Сообщение
#2835
|
|
Level 11 ![]() Класс: Волшебник Характер: Neutral Good Раса: Фея NWN: Скриптинг [PW] Край Лесов ![]() |
Ден, этот вариант - со скриптом - хорошо подходит для динамичности во время игры на шарде или для создания "на лету" ДМом места для квеста , там если почитать можно несколько накладывать эффектов. Я подозреваю, можно добавить и свои тоже..
Помниться в КЛ Сай делал в башне замену плэйсов, когда вода замерзала - можно было просто эффект заменить. Еще кое-что - когда вода расставляется плэйсами, особенно в лесу, то есть неприятный баг при смерти - создание сумки, куда сбрасывается лут чара происходит на плоскости воды. Не знаю почему так. Но эта тема есть даже в тулсете, когда делаешь вручную воду, если потом выставлять итемы копировать/вставить...они все ставятся на плоскость воды (плоскость же продолжается внутрь тайла), а с этим эффектом - нет. Сообщение отредактировал Melisse - Mar 16 2012, 13:41 |
![]()
Сообщение
#2836
|
|
Level 2 ![]() Класс: Воин Характер: True Neutral Раса: Эльф ![]() |
У меня в тулсете при компиляции вот такое вылазит:
19.03.2012 17:59:41: îøèáêà. 'at_001' íå ñêîìïèëèðîâàí. at_001.nss(17): ÎØÈÁÊÀ: ÍÅÂÅÐÍÛÉ ÒÈÏ ÎÏÈÑÀÍÈß как сделать чтобы он выводил нормальный текст? |
![]()
Сообщение
#2837
|
|
Тролль ![]() ![]() ![]() ![]() Класс: Пьяный Мастер Характер: Chaotic Neutral Раса: Тварь ![]() |
У меня такая же фигня и установка русских шрифтов и прочие танцы с бубном над тулсетом не помогают - просто и тупо использую это (хотя компилятор обычно сам указывает на строку с ошибкой поэтому догадаться и без сноски легко в чем проблема):
http://www.charset.ru/ Сообщение отредактировал Flaristan - Mar 19 2012, 15:20 |
![]()
Сообщение
#2838
|
|
Level 2 ![]() Класс: Воин Характер: True Neutral Раса: Эльф ![]() |
Спасибо впринципе сойдет. Хотя конечно хотелось бы все таки вправить мозги тулсету, ну да ладно попробуем и так.
|
![]()
Сообщение
#2839
|
|
Level 11 ![]() Класс: Волшебник Характер: Neutral Good Раса: Фея NWN: Скриптинг [PW] Край Лесов ![]() |
В настройках компилятора нужно выбрать другой шрифт, например, Courier и все будет нормально.
|
![]()
Сообщение
#2840
|
|
Level 2 ![]() Класс: Воин Характер: True Neutral Раса: Эльф ![]() |
Вот спасибо! Все пошло как надо!
|
![]()
Сообщение
#2841
|
|
Level 3 ![]() Класс: Монах Характер: Lawful Neutral Раса: Человек ![]() |
Задел под это как бы есть в архитектуре игры, но заработало оно в полной мере только в нвн2. все это интересно. То есть мы без проблем, можем добавить базовый класс/расу в нвн2? Но не можем этого сделать в нвн1. а с кастомными спеллбуками блекгуарда там Как? Все тоже самое, что в нвн1 ? |
![]()
Сообщение
#2842
|
|
Level 19 ![]() Класс: Воин Характер: Lawful Good Раса: Человек NWN: Скриптинг [PW] Gem of the North Край Лесов ![]() |
Цитата То есть мы без проблем, можем добавить базовый класс/расу в нвн2? Да.Цитата а с кастомными спеллбуками блекгуарда там Как? Нет, лучше.Все тоже самое, что в нвн1 ? Почитай, тут немного есть. |
![]()
Сообщение
#2843
|
|
Level 3 ![]() Класс: Воин Характер: True Neutral Раса: Эльф ![]() |
Здравствуйте.
Возникла одна проблемка тут.. Мы использовали вместо стандартных домов дома из CEP-а (как отдельные объекты). Соответственно, нормальную дверь туда же не поставить? Мы ставили дверь тоже как объект, но возникает проблема перехода области. Просто скрипт на OnClick работает плохо, потому что получается так, что до двери не докоснуться. Не подскажете, какие есть выходы из такой ситуации? |
![]()
Сообщение
#2844
|
|
Level 19 ![]() Класс: Воин Характер: Lawful Good Раса: Человек NWN: Скриптинг [PW] Gem of the North Край Лесов ![]() |
Насколько я помню, в нвн двери - часть тайлсета, по крайней мере поле Door(s) именно там спрятано. Поэтому очевидный выход - вставить домики в нужный тайлсет.
|
![]()
Сообщение
#2845
|
|
Level 17 ![]() Класс: Волшебник Характер: Neutral Good Раса: Человек NWN: Скриптинг [PW] Axistown SR 1.9 NWNX ![]() |
Поставить дверь или переход в любой свободный дверной проём.
После этого ткнуть на дверь правой кнопкой и выбрать Adjust Location. Задать нужные координаты. |
![]()
Сообщение
#2846
|
|
Level 9 ![]() Класс: Обыватель Характер: Lawful Good Раса: Человек NWN: Модмейкер Рыцарская Сага ![]() |
Вот для примера скриптa для дверей и люков, годится для перехода как в одной области, так и для перехода в новую.
Neverwinter Script //:://////////////////////////////////////////////
//:: УНИВЕРСАЛЬНЫЙ СКРИПТ ПЕРЕМЕЩЕНИЙ //:: Слот: OnUsed //::////////////////////////////////////////////// // ТЕКСТ НАД ПЕРСОНАЖЕМ // object oPC - ПЕРСОНАЖ // string sTokenValue - ТЕКСТ НАД ПЕРСОНАЖЕМ void text(object oPC, string sTokenValue); // ПЕРЕМЕЩЕНИЕ ГЕРОЯ и всей его свиты к точке object oWP void JumpFirstPC(object oWP); void text(object oPC, string sTokenValue) {AssignCommand(oPC, SpeakString(sTokenValue)); } void JumpFirstPC(object oWP) { object oPC = GetFirstPC(); object oNPC = GetFirstObjectInArea(oPC); AssignCommand(oPC, ClearAllActions()); AssignCommand(oPC, JumpToObject(oWP)); while (GetIsObjectValid(oNPC)) { if (oPC==GetMaster(oNPC)) { AssignCommand(oNPC, ClearAllActions()); AssignCommand(oNPC, JumpToObject(oWP)); } oNPC = GetNextObjectInArea(oPC); } } ////////////////////////////////////////////// void main() { object oPC = GetFirstPC(); object oSP = GetHenchman(oPC); object oPoint = GetWaypointByTag("TP_" + GetTag(OBJECT_SELF)); if (!(GetLocked(OBJECT_SELF) == TRUE)) { if(GetLocalInt(OBJECT_SELF, "OPEN_SD") == 1) JumpFirstPC(oPoint); else { SetLocalInt(OBJECT_SELF,"OPEN_SD",1); DelayCommand(0.1, ActionPlayAnimation(ANIMATION_PLACEABLE_OPEN)); DelayCommand(6.6, ActionPlayAnimation(ANIMATION_PLACEABLE_CLOSE)); DelayCommand(6.7, SetLocalInt(OBJECT_SELF,"OPEN_SD",FALSE)); } } else { PlaySound("as_na_branchsnp3"); FloatingTextStringOnCreature("ЗАКРЫТО!", oPC, TRUE); int nSkill = 20 + GetSkillRank(SKILL_OPEN_LOCK, oSP); if (nSkill >= GetLockUnlockDC(OBJECT_SELF)) text(oSP, "Попробуйте открыть! Не сможешь, помогу открыть…"); else text(oSP, "Мне не осилить этот замок…"); } } // помещать в слот OnUsed OnEnter OnClick OnAreaTransitionClick // Точка перемещения TP_ + Тег объекта //Перемещение героя и спутника для размещаемых объектов |
![]()
Сообщение
#2847
|
|
Level 3 ![]() Класс: Монах Характер: Lawful Neutral Раса: Человек ![]() |
denis0k спасибо, довольно интересно.
Вот такой вот вопрос ещё, можно ли скриптовым путем создать фиты/спеллы по типу power attack ? которые при активации добавляли бы N-ое кол-во атаки/урона, на N-ое кол-во раундов или же навсегда? заинтересовало, ведь дефолтные же hardcoded (IMG:style_emoticons/kolobok_light/unsure.gif) |
![]()
Сообщение
#2848
|
|
Level 11 ![]() Класс: Волшебник Характер: Lawful Evil Раса: Эльф NWN: Скриптинг [PW] Gem of the North ![]() |
Совсем по типу - нельзя.
Можно сделать мгновенно активируемый фит, который будет вешать эффекты. |
![]()
Сообщение
#2849
|
|
Level 3 ![]() Класс: Монах Характер: Lawful Neutral Раса: Человек ![]() |
Совсем по типу - нельзя. Можно сделать мгновенно активируемый фит, который будет вешать эффекты. интересно, и как? сам принцип очень интересует. можно по примеру где нибудь посмотреть? (IMG:style_emoticons/kolobok_light/scratch_one-s_head.gif) Сообщение отредактировал nepejke - Apr 2 2012, 19:14 |
![]()
Сообщение
#2850
|
|
Level 11 ![]() Класс: Волшебник Характер: Lawful Evil Раса: Эльф NWN: Скриптинг [PW] Gem of the North ![]() |
По тому же принципу, что и добавленные в 1.69 фиты Player Tool / DM Tool. Хитрость в том, чтобы для кастомного фита в feat.2da поставить в столбце ReqAction значение 0.
|
![]() ![]() |
Текстовая версия | Сейчас: 26th April 2025 - 20:03 |