Для программистов, вопросы по скриптам ПКМ |
Здравствуйте, гость ( Вход | Регистрация )
Для программистов, вопросы по скриптам ПКМ |
igor_pol |
Aug 24 2005, 21:00
Сообщение
#1
|
боцман Группа: форумчанин Сообщений: 140 Регистрация: 3-December 04 Пользователь №: 169 |
Первое что я хотел написать "АДМИНЫ!!!!" НЕ ЗВЕРЕЙТЕ ЗА "НЕНУЖНУЮ ТЕМУ"
************************************************** на вопрос зачем создал эту тему отвечу так "Я например НЕ ПРОСТО ЮЗВЕРЬ А КОЕ ЧТО И САМ НАПИСАТЬ МОГУ. И хотел бы чтобы на форуме была тема для тех кто сам хочет что-то добавить в игру. На сайте аддона Алекс вікинул ссылку на описание скриптов ПКМ на английском. Я хотел бы узнать где можно нарыть больше инфы по этом скриптам. И кстати на каком языке они пишуться. Если кто-то знает ----- пишите. И вообще всем програмерам на форуме нужна своя тема. так что ГОСПОДА ПРОГРАМЕРЫ ВАЛИТЕ СЮДА !!!! Может из этого что небудь интересное выйдет!!!!!!(Если тему не УТРУТ) Жду сообщений (может у когот есть идеи на эту тему ) Сообщение отредактировал Догева - Apr 24 2006, 13:36 |
dima12 |
Nov 1 2008, 14:53
Сообщение
#141
|
капитан Группа: форумчанин Сообщений: 308 Регистрация: 24-April 07 Пользователь №: 8,548 |
Для ответа на данный вопрос можно процитировать Scatimon'a
Во всех играх от Сиаварда (ВМЛ/КВЛ/ГПК - никак). |
Zeleboba |
Nov 1 2008, 16:56
Сообщение
#142
|
боцман Группа: форумчанин Сообщений: 152 Регистрация: 22-May 05 Из: Усинск Пользователь №: 770 |
Подскажите, как запрограммировать действие на кнопку, скажем, изменение скорости на кнопку L? Хмм... Под рукой нету открытого кода, но попробуй посмотри в папочке CONTROLS или както так! Нам на готовый действиях можно посмотреть! Если ты конечно про ПКМ или К3 говориш! |
Жабрик |
Nov 1 2008, 19:17
Сообщение
#143
|
новичок Группа: Members Сообщений: 3 Регистрация: 13-August 08 Пользователь №: 17,535 |
|
incognito_live |
Jun 22 2009, 14:09
Сообщение
#144
|
новичок Группа: форумчанин (*) Сообщений: 1 Регистрация: 22-June 09 Пользователь №: 20,552 |
народ все таки если можно выложите исходы вмл ибо создавать второй такой шедефр не оч хотца и времени и сил уйдет хз скока а вот улучшить его было бы не плохо а то скилов как то мало=((((((
А накатить вмл на в4 чтобы было норма управление не получилось=( да и можно заумутить некоторые темы=)более менее глобальные=) |
korsar-fan |
Jul 1 2009, 00:21
Сообщение
#145
|
юнга Группа: форумчанин (*) Сообщений: 13 Регистрация: 29-June 09 Пользователь №: 20,612 |
Как вычислять координаты островов, например, взять модель глобалки ГПК, и прикрутить к ПКМ. Как вычисляю координаты position.x,position.y,position.z , position.ay???
worldMap.islands.Tortuga.locations.city.name = ""; //Geometry parameters worldMap.islands.Tortuga.locations.city.position.x = ?; worldMap.islands.Tortuga.locations.city.position.y = ?; worldMap.islands.Tortuga.locations.city.position.z = ?; worldMap.islands.Tortuga.locations.city.position.a y = ?; |
ALexusB |
Jul 2 2009, 18:33
Сообщение
#146
|
Разработчик ВМЛ-КВЛ Группа: Admin Сообщений: 16,241 Регистрация: 2-November 04 Пользователь №: 3 |
Плавать корабликом по карте, замерять координаты кораблика, потому делать +- тапки, куда доплыть низя
Ставить в скриптах, проверять на карте. так, пока не получится мы делали так Велком в мир крутого кода! Второй вариант - по модели брать координаты, переводить их в игровые и потом опять 1 вариант, тк все метки сползают, из-за 3Д вида и их все равно двигать нужно по месту, чтоб не пересекались и читались непомню уже, в каком именно двиге сторм2 или 2.5 был метод опроса локаторов, то есть координаты можно было получить из кода, а в другом двиге уже фиг |
korsar-fan |
Jul 4 2009, 13:30
Сообщение
#147
|
юнга Группа: форумчанин (*) Сообщений: 13 Регистрация: 29-June 09 Пользователь №: 20,612 |
ALexusB, спасибо за помощь.
|
Alexad_D |
Jul 12 2009, 23:11
Сообщение
#148
|
матрос Группа: форумчанин Сообщений: 89 Регистрация: 11-July 09 Из: Беларусь. г. Поставы Пользователь №: 20,710 |
Всем доброго здравия! У меня такой вопрос по ПКМ, вернее два...... Первое - сделана новая модель с модерновой текстурой, ( морская форма ВМФ СССР) соответственно и ид новой модели присвоено, со всеми вытекающими.... и прописано вроде везде и даже работает. Используются модельки в качестве офицеров ну и экипажа ГГ. Но ..... Проблема вот в чем - при обращении с диалогом к модели, нет головы в диалоговом окне и нет почему-то в интерфейсе только иконки в списке пассажиров (128), другие (256 и 64) есть. И еще один глюк Иногда при найме, нет самой модели - висят только пистолет и сабля но после найма она (моделька) появляется. Да забыл написать что сама по себе голова новой модели, при просмотре в моделвьювер - работает - смысле есть.....
|
ALexusB |
Jul 13 2009, 08:20
Сообщение
#149
|
Разработчик ВМЛ-КВЛ Группа: Admin Сообщений: 16,241 Регистрация: 2-November 04 Пользователь №: 3 |
портрет 128 прописывается в пикча.ини в папкке ИНИ
Для диалога нужна модель головы отедельно, только бюст, см другие модели у них она есть, Н_ название или типа того С невидимостью косяки с локаторами (непомню какими), толи на модели под пистоли, толи в локации, куда ставится |
Alexad_D |
Jul 13 2009, 18:35
Сообщение
#150
|
матрос Группа: форумчанин Сообщений: 89 Регистрация: 11-July 09 Из: Беларусь. г. Поставы Пользователь №: 20,710 |
Так в том то и дело что модели голов есть !!!!! И в gm_view они просматриваются! А в игре.... Значит так ..... У меня ведены новые модели для офицеров и экипажа - offis_ru_1.gm, offis_ru_2.gm и тд всего 6 к каждой текстура offis_ru_1.tga.tx и тд тоже 6 (для различий в лицах и знаках на форме) для каждой модели - голова - h_offis_ru_1.gm ну и соответственно анимация для каждой прописана в \animation\Heads модель.ani и в \animation\Heads\AN\ модель.an. За основу брал модель Блейза - для офицеров и мен3 для матросов т.е. Копировал болванку модели, переименовывал в свою. перепрописывал в ней используемую текстуру, ну и так далее в том же духе..... С матросами нет проблем а вот с офицерами...... какая то, где-то у меня не доработка.
Точно!!!!! Как-же я сам проглядел..... Я же когда новые товары вводил тоже там (в пикче ини ) их прописывал... Спасибо огромное!!!! Вообще то игрушку модить я начал с твоей подачи (правда с перерывами) года два назад... С фразы " ...в игру можно внести изменения если знать как! ALexusB" Интернета у меня тогда не было а очень хотелось..... Ну вот методом анализа и сравнения готового материала пошло и поехало..... И все таки что же у меня с головами не так...... И еще я не понял как снимать координаты с карты с помощью кораблика.... для новых остравов |
ALexusB |
Jul 14 2009, 08:21
Сообщение
#151
|
Разработчик ВМЛ-КВЛ Группа: Admin Сообщений: 16,241 Регистрация: 2-November 04 Пользователь №: 3 |
новую можель нужно езе где-то проприсать в switch, посмотри поиском по другим моделям. Наличие файла в папке - мало.
Координаты снять повешеным новым прерыванием на свою кнопку (ф12, например), и выводить в лог (кусок скрипта из моей дебуг панели) Код //////////////////////////////////////////////////////////////////////// string descF3 = "ID текущей локации +коорд "; void CalculateInfoDataF3() { // --> totalInfo = descF3; ref mc; mc = GetMainCharacter(); float locx, locy, locz; if (bSeaActive && !bAbordageStarted) { if (CheckAttribute(mc, "Ship.pos.x")) { totalInfo = totalInfo + NewStr() + mc.location + " ship(x,z)= "+mc.Ship.pos.x +", "+mc.Ship.pos.z; if (false)//CheckAttribute(mc, "WMShip.Pos.x") && worldMap.island != "") { string sTemp = mc.curIslandId; float r1 = stf(worldMap.islands.(sTemp).GoMapRadius); r1 *= WDM_MAP_TO_SEA_SCALE; float d2 = GetDistance2D(stf(mc.Ship.Pos.x), stf(mc.Ship.Pos.z), stf(worldMap.islands.(sTemp).position.rx), stf(worldMap.islands.(sTemp).position.rz)); totalInfo = totalInfo + " Координаты для карты radius= " + r1 + " GetDistance2D= " + d2 + " "; } } } else { if (IsEntity(loadedLocation)) { GetCharacterPos(GetMainCharacter(), &locx, &locy, &locz); totalInfo = totalInfo + "id = " + mc.location + " (x,y,z)= "+locx + ", " +locy + ", "+locz; totalInfo = totalInfo + NewStr() + "filespath.models = " + loadedLocation.filespath.models; totalInfo = totalInfo + NewStr() + "image = " + loadedLocation.image; totalInfo = totalInfo + NewStr() + "models.locators = " + loadedLocation.models.always.locators; } } //aref rootItems; //makearef(rootItems, worldMap); //Islands[0] //DumpAttributes(rootItems); totalInfo = totalInfo + NewStr() + " MapShipX " + worldMap.playerShipX + " MapShipZ " + worldMap.playerShipZ + " X " + worldMap.island.x + " Z " + worldMap.island.z; // < totalInfo = totalInfo + NewStr() + NewStr() + "Команда отработала успешно!"; SetFormatedText("INFO_TEXT",totalInfo); } Эта штука выводт коорд в любом месте Мы ей пользовались все время, и для новых локаторов через TOOL тоже |
Alexad_D |
Jul 14 2009, 08:41
Сообщение
#152
|
матрос Группа: форумчанин Сообщений: 89 Регистрация: 11-July 09 Из: Беларусь. г. Поставы Пользователь №: 20,710 |
Спасибо! Буду разбираться......
|
Alexad_D |
Jul 14 2009, 12:23
Сообщение
#153
|
матрос Группа: форумчанин Сообщений: 89 Регистрация: 11-July 09 Из: Беларусь. г. Поставы Пользователь №: 20,710 |
Инструкцию по вводу модели нового персонажа. К примеру мы хотим ввести нового женского перса - Катрин. Берем за основу модельку - Daniellе.gm - и через поиск находим все что с ней связано.
1. Daniellе.gm 2. h_Daniellе.gm 3. Daniellе.tga.tx 4. h_Daniellе.ani 5. h_Daniellе.an 1. Копируем/вставляем Daniellе.gm, h_Daniellе.gm, Daniellе.tga.tx, h_Daniellе.ani, h_Daniellе.an каждую в свою папку соответственно и переименовываем (главное чтобы в названиях новой модели, букв было столько же сколько и в шаблонах) все копии в Katerine.gm, h_Katerine.gm, Katerine.tga.tx, h_Katerine.ani, h_Katerine.an 2. В Katerine.gm и h_Katerine.gm прописываем новую текстуру - Katerine.tga.tx, в h_Katerine.ani - в строке меняем на - animation = Heads\AN\h_Katerine.an 3. Новую текстуру с помощью TX-Convertor конвертим в tga, перекрашиваем фотошопом одежду, волосы и вклеиваем лицо (однокласницы...шутка) и конвертим обратно в tx. 4. Проверяем (смотрим) Katerine.gm и h_Katerine.gm в GM_view.... Все есть новая текстурированая моделька с головой..... Делаем скрин (например с помощью ирфан фьюс) экрана gm_view и делаем иконки face_75 - 64, 128, 256 соответственно и расскладываем их по местам. 5. Прописываем новую модель в characters_init.c и quests_reaction.c - получается так - case "Katerine": rCharacter.FaceId = 75; break; } rCharacter.headModel = "h_" + rCharacter.model; 6. В \INI\INTERFACES в pictures.ini вставляем строки: [FACE128_75] sTextureName = portraits\128\face_75.tga wTextureWidth = 128 wTextureHeight = 128 picture = face,0,0,128,128 7. Теперь делаем ее (модельку) - Персом - например, будущего нанимаемого в таверне офицера (Но можно и целый квест с ней прописать.... ) В LandEnc_init.c находим строку - LandEncounters[n].id = "ENC_OFFICER"; и подней меняем на: //пока, на время проверки только одного LandEncounters[n].char1.modelQuantity = 1; LandEncounters[n].char1.model1 = "Katerine"; LandEncounters[n].char1.model1.ani = "woman"; LandEncounters[n].char1.cont = true; LandEncounters[n].char1.pistol = false; LandEncounters[n].char1.sword = true; //Так-как сидеть Данька не может, то пусть крутится возле стола... LandEncounters[n].char1.type = "Citizen"; LandEncounters[n].char1.Dialog = "Enc_Officer_dialog.c"; (правда сейчас будут накладки c текстом в диалоге, ну и с мужскими именами но это можно потом подправить, если понадобиться но лучше сделать отдельного перса с отдельным диалогом ) 8. Ну и меняем анимацию в диалоге //аналогично Головы с Данькой case "Node_1": Dialog.defAni = "dialog_stay1"; Dialog.defCam = "1"; Dialog.defSnd = "dialogs\0\017"; Dialog.defLinkAni = "dialog_1"; Dialog.defLinkCam = "1"; Dialog.defLinkSnd = "dialogs\woman\024"; Dialog.ani = "dialog_stay2"; Dialog.cam = "1"; Dialog.snd = "dialogs\0\009";case "Node_1": Все.... Запускаем игру...... |
Alexad_D |
Jul 14 2009, 19:38
Сообщение
#154
|
матрос Группа: форумчанин Сообщений: 89 Регистрация: 11-July 09 Из: Беларусь. г. Поставы Пользователь №: 20,710 |
ладно тогда такой вопрос ватерлинию можна динамично изменять? япробывал писать Код mc = GetMainCharacter(); mc.ship.WaterLine = (mc.ship.WaterLine) + 0.1; то не катит и еще sti, stf - это как в делфи strtoint, strtofloat ? и ешё хочу зделать отравленый кинжал а то от обычного мало толку, противоядие есть значит можна отравлять, как зделать может есть свойство такое? Для начала пара вопросов..... Тебе зачем кинжал отравленый и что значит "а то от обычного мало толку" Если чтобы валить всех нафиг то это очень просто... в initItems пишешь строчки makeref(itm,Items[n]); itm.id = "blade28"; // ID должен быть своим Для того чтобы у других не появлялось itm.groupID = BLADE_ITEM_TYPE; itm.name = "itmname_blade28"; itm.describe = "itmdescr_blade28"; // в ItemsDescribe.txt описание твоей супер заточки itm.folder = "items"; itm.model = "blade22"; //может быть любая тебе понравившаяся itm.picIndex = 13; itm.picTexture = "ITEMS_8"; itm.price = 12000; itm.dmg_min = 835.0; // тут Мах. наносимяый урон от твоего ножичка - ставь от души itm.dmg_max = 750.0; // здесь Min. itm.piercing = 100.0; //здесь пробой брони itm.minlevel = 10; itm.rare = 0.01; itm.block = 100.0; //а здесь защита itm.param.time = 0.1; itm.param.colorstart = argb(64, 64, 64, 64); itm.param.colorend = argb(0, 32, 32, 32); n++; Вуаля..... Аналогично можно и над пистолем поизгаляться, и над пушками, и карабликами Главное cоздавай свои ID чтобы не нарваться ненароком на свое же оружие в дурных руках |
ALexusB |
Jul 14 2009, 20:03
Сообщение
#155
|
Разработчик ВМЛ-КВЛ Группа: Admin Сообщений: 16,241 Регистрация: 2-November 04 Пользователь №: 3 |
2Alexad_D
Инфу не постиг, многа букаф, а времени вникать нет. Головы из ПКМ не помню, тк было давно, в КВЛ уже не было голов. Но точно можно, делал же. Делай, как у всех и все будет ок. Как последний совет - 1 у тебя может быть своя модель, которую не ест двиг, потому нет 2 в .ани файле нужно приписать модель, тк при копировании там старая. Это все, что вспомнил. |
Alexad_D |
Jul 15 2009, 10:27
Сообщение
#156
|
матрос Группа: форумчанин Сообщений: 89 Регистрация: 11-July 09 Из: Беларусь. г. Поставы Пользователь №: 20,710 |
2Alexad_D Инфу не постиг, многа букаф, а времени вникать нет. Головы из ПКМ не помню, тк было давно, в КВЛ уже не было голов. Но точно можно, делал же. Делай, как у всех и все будет ок. Как последний совет - 1 у тебя может быть своя модель, которую не ест двиг, потому нет 2 в .ани файле нужно приписать модель, тк при копировании там старая. Это все, что вспомнил. Сама то модель роботает в игре.... Да и у Моргановских Данек1,2,3 в ани прописана стандартная Даниель. Да ладно как нибудь разберусь |
korsar-fan |
Jul 17 2009, 07:27
Сообщение
#157
|
юнга Группа: форумчанин (*) Сообщений: 13 Регистрация: 29-June 09 Пользователь №: 20,612 |
Прописываю локаторы через TOOL. x, y, z - это потятно. А вот xx.xz.xy и т.д.
Я так понял они отвечают куда смотрит чел, только все равно не понятно, какие из них изменять, чтобы поменять положение. |
ALexusB |
Jul 17 2009, 08:55
Сообщение
#158
|
Разработчик ВМЛ-КВЛ Группа: Admin Сообщений: 16,241 Регистрация: 2-November 04 Пользователь №: 3 |
Копировать из других локаторов в этой локации само надежное, ну и подбирать дальше тыком. Это тангенсы чего-то, не разбирался, всегда хватало примера других локаторов.
|
Alexad_D |
Jul 19 2009, 13:32
Сообщение
#159
|
матрос Группа: форумчанин Сообщений: 89 Регистрация: 11-July 09 Из: Беларусь. г. Поставы Пользователь №: 20,710 |
Скачал пару дней назад ВМЛ (или КВЛ короче ту что на ПКМ ставят) и вот что надыбал. В свою игру, можно внести изменения несмотря на то что код закрыт! Особенность сохранение игры дает такую возможность это сделать через сейв. Я вчера ночь покапался, поэксперементировал ..... короче уплывал я из перврго города (Кюрасю кажется) на мановаре с 999 орудий на борту и скорость перезарядки 0.1 сек, 99999 - вместимость трюма, 67 - прямая скорость и 130 - на развороте, с 2000 чел командой, и прочность -99999 (караблик этот можно и продать на любой верфи - бешеных денег стоит), благородным рыцарем, с 9999 НР (только польза от этого только с разной шантропой типа охотников за головами и им подобных), с pistol5 и blade34 (не помню как называется), всеми картами, полным набором перков и с 999.999.999 денег. Главное битность (или байтность) при редактировании не нарушить.... Думаю если хорошо и не спеша покапаться можно не только это поменять, Жаль только что правда в дальнейшей игре а не сразу при старте (а то уж очень нудно нужные секции в сейве искать).... А вот еще кстати, не знаю это только у меня так или.... Короче в начале игры, когда тебя высаживают, по пути в город надо защитить честь девушки. если вступиться за нее и быстренько перескочить в другую локацию (вход в пещеру) а потом тут-же назад то репутация повышается О как!
|
delfin_ |
Jul 19 2009, 14:02
Сообщение
#160
|
Защитнег Бакланаф Группа: форумчанин Сообщений: 5,186 Регистрация: 5-December 04 Пользователь №: 174 |
Цитата Я вчера ночь покапался, поэксперементировал То что ты сделал называется "ломать сейв" (читерство), и здесь это не приветствуется. Тем более что таким способом ничего толкового не сделать (не добавить новые предметы, не добавить квестов). Вообщем когда сделаешь что то хорошее - напиши. По второму вопросу, это у всех так, но это уже в отдельную |
Текстовая версия | Сейчас: 26th April 2024 - 19:56 |