|
|
|
Опции темы | Опции просмотра |
08.11.2010, 17:29 | #1 |
Матрос
|
Уроки по кодингу ПКМ
Итак, задача которая перед нами стоит – создать новый предмет на основе имеющейся модели рисунка: Спойлер: . Последний раз редактировалось Yukon; 02.01.2016 в 18:46. |
Реклама | |
08.11.2010, 18:05 | #2 |
Матрос
|
Урок №2: Создание Пушки
Итак наша Задача Создать Новые Орудия В игре.
Для начала идём в папку PROGRAM\CANNONS там есть файл Cannons_init.c заходим и добавляем орудие например 44 калибр пушка makeref(rCannon,Cannon[CANNON_TYPE_CANNON_LBS32]); rCannon.type = CANNON_NAME_SPECIAL_CANNON; rCannon.caliber = 32; - калибр rCannon.ReloadTime = 80; - перезарядка // boal 40 rCannon.Cost = 3500; - цена 1 пушки rCannon.Weight = 72; - размер (в игре пушки увеличиваться не будут) rCannon.FireAngMax = 0.60; rCannon.FireAngMin = -0.35; rCannon.DamageMultiply = 3.0; rCannon.TradeOff = true; - пушка не продаётся InitBaseCannons_CalcSpeedV0(&rCannon,600.0); - Дальность Если Кулеврина изменяем следующее: makeref(rCannon,Cannon[CANNON_TYPE_CULVERINE_LBS44]); rCannon.type = CANNON_NAME_CULVERINE; Далее в этой же папке заходим в файл Cannons.h и пишем следующее: #define CANNON_TYPES_QUANTITY 7 (изменяем число на Кол-во созданных пушек) #define CANNON_TYPE_CULVERINE_LBS12 0 #define CANNON_TYPE_CULVERINE_LBS16 1 #define CANNON_TYPE_CULVERINE_LBS24 2 #define CANNON_TYPE_CANNON_LBS12 3 #define CANNON_TYPE_CANNON_LBS16 4 #define CANNON_TYPE_CANNON_LBS24 5 #define CANNON_TYPE_CANNON_LBS32 6 И пишем по образцу свою пушку допустим #define CANNON_TYPE_CULVERINE_LBS44 7 или CANNON В этом же файле находим строки: case CANNON_TYPE_CULVERINE_LBS12: return 12; break; case CANNON_TYPE_CANNON_LBS12: return 12; break; case CANNON_TYPE_CULVERINE_LBS16: return 16; break; case CANNON_TYPE_CANNON_LBS16: return 16; break; case CANNON_TYPE_CULVERINE_LBS24: return 24; break; case CANNON_TYPE_CANNON_LBS24: return 24; break; case CANNON_TYPE_CANNON_LBS32: return 32; break; и пишем по образцу к примеру case CANNON_TYPE_CANNON_LBS44: return 44; break; Далее в этой же папке заходим в файл Cannons.c и находим если пушки case 12: return CANNON_TYPE_CANNON_LBS12; break; case 16: return CANNON_TYPE_CANNON_LBS16; break; case 24: return CANNON_TYPE_CANNON_LBS24; break; case 32: return CANNON_TYPE_CANNON_LBS32; break; и вставляем свою case 44: return CANNON_TYPE_CANNON_LBS44 break; С этой папкой закончили теперь идём в папку RESOURCE\INI\TEXTS\RUSSIAN и заходим в файл common.ini и находим string = caliber12,"12фунт." string = caliber16,"16фунт." string = caliber24,"24фунт." string = caliber32,"32фунт." и добавляем калибр той пушки которую вы создали string = caliber44,''44фунт." теперь последнее картинка на интерфейсе. заходим в INI\INTERFACE И открываем файл pictures.ini находим строки: picture = culverine12,640,0,768,128 picture = culverine16,512,0,640,128 picture = culverine24,384,0,512,128 picture = cannon12,256,0,384,128 picture = cannon16,128,0,256,128 picture = cannon24,0,0,128,128 picture = cannon32,0,0,128,128 и вставляем своё: picture = cannon44,0,0,128,128 Всё! Последний раз редактировалось Flibustier; 08.11.2010 в 22:09. |
Реклама | |
Зарегистрированным пользователям показывается меньше рекламы! |
08.11.2010, 18:15 | #3 |
Матрос
|
Урок №3: Создание Корабля
Откроем файл Programs/ships/ships_init.c.
Найдите корабль, который наиболее похож на ваш новый корабль(по характеристикам) и скопируйте код в конец описания кораблей. ДО описания фортов! //------------------------------------------------------------------------- // VON !<-------- названия корабля, не играет никакой роли, может быть любым. //------------------------------------------------------------------------- makeref(refShip,Ships Types[SHIP_VON]); <- формат массива - SHIP_названия корабля refShip.Name = "Xebec 1"; <-Может быть любой из существующих кораблей или ваше собственное имя. refShip.Class = 1; <- Класс корабля. Может принимать значения от 1 до 7. refShip.Cannon = CANNON_TYPE_CANNON_LBS32; <-тип установленных орудий. refShip.MaxCaliber = 32; <-максимальный калибр refShip.Weight = Tonnes2CWT(2200);<-масса корабля refShip.Capacity = 3500;<-грузоподъемность refShip.CannonsQuantity = 44;<-количество орудий refShip.MaxCrew = 600;<-максимальная команда refShip.MinCrew = 150;<-минимальная команда refShip.SpeedRate = 17.2;<-скорость refShip.TurnRate = 26;<-маневренность refShip.Price = 50000;<-цена(средняя) refShip.HP = 15000;<-жизни refShip.SP = 100;<-жизни парусов refShip.AbordageLocation = "BOARDING_XEBEC"; <- Локация абордажа. Можно плавать на тартане и поставить локацию абордажа от мановара.. refShip.EmblemedSails.normalTex = "ships\sail_Pirates.tga";<-Текстура парусов refship.WaterLine = 0.0; <- Секция описаний для реалистичного режима плавания. refship.SpeedDependWeight = 0.3; refship.SubSeaDependWeight = 0.9; refship.TurnDependWeight = 0.8; refShip.CanEncounter = false; <- Это делает корабль уникальным. Т.е. в море его встретить нельзя. refship.InertiaAccelerationX = 3.0; refship.InertiaBrakingX = 2.0; refship.InertiaAccelerationY = 14; refship.InertiaBrakingY = 5; refship.InertiaAccelerationZ = 5.0; refship.InertiaBrakingZ = 3.0; refShip.Height.Bombs.Y = 1.0; refShip.Height.Bombs.DY = 0.5; refShip.Height.Grapes.Y = 2.0; refShip.Height.Grapes.DY = 1.0; refShip.Height.Knippels.Y = 10.0; refShip.Height.Knippels.DY = 8.0; refShip.Height.Balls.Y = 1.0; refShip.Height.Balls.DY = 0.5; теперь у нас есть корабль, далее откройте файл ship.h в этой же директории. В первой строке замените #define SHIP_TYPES_QUANTITY 166 На #define SHIP_TYPES_QUANTITY 167 Теперь прокрутите ниже, до описания последнего корабля: #define SHIP_FEARLESS 165 И допишите строку: #define SHIP_VON 165, где SHIP_VON - SHIP_+название вашего корабля. Теперь наш корабль доступен как SHIP_имя_нация. Далее Идём в директорию RESOURCE\MODELS\Ships и вставляем папку с названием нашего Корабля допустим (писать с большой буквы ОБЯЗАТЕЛЬНО!) Von в эту папку вставляем модели нашего корабля и переименовываем ТОЛЬКО НАЗВАНИЕ! Допустим: было: Frigate.gm должно быть: von.gm или допустим было: Frigate_mast3.gm должно быть: von_mast3.gm А потом в папку RESOURCE\Textures\Ships обавляем текстуры корабля который вы создали. ВСЁ! |
08.11.2010, 19:20 | #4 |
Матрос
|
Урок №4: Создание Локации
Итак, задача не из лёгких – добавить новую локацию. А поэтому без лишних слов приступим к делу.
Для начала изучим что же такое локация и из чего она состоит. Для примера откроем любой файл из папки PROGRAM\Locations\init\ Locations[n].filespath.models = "locations\town_Douwesen\port";<--Это указатель на модель, используемую для внутренней части. Locations[n].image = "loading\Douwesen_Port.tga";<--Это картинка загрузки в локацию, распологаютсья в папке \RESOURCE\Textures\Loading\ locations[n].worldmap = "Douwesen"; Locations[n].id = "Douwesen_port";<--Это ID особых локаций locations[n].id.label = "Douwesen port";<--Метка Locations[n].townsack = "Douwesen"; locations[n].type = "port";<-- locations[n].fastreload = "Douwesen"; Locations[n].models.always.locators = "DouPort_l";<--Перегружаем локаторы Locations[n].models.always.seabed = "DouPort_sb";<--Загружаем карту морского дня Locations[n].models.always.seabed.foam = "1";<-- разрешаем пену Locations[n].models.always.l1 = "DouPort"; Locations[n].models.always.l1.foam = "1"; Locations[n].models.always.grasspatch = "DouPort_g"; Locations[n].models.day.rinok = "DouPort_e01"; Locations[n].models.day.charactersPatch = "DouPort_pd"; Locations[n].models.day.fonar = "DouPort_fd"; Locations[n].models.night.fonar = "DouPort_fn"; Locations[n].models.night.charactersPatch = "DouPort_pn"; Locations[n].environment.weather = "true";<--Разрешаем или запрещаем действие погоды в локации Locations[n].environment.sea = "true";<--Разрешаем или запрещаем море в данной локации Locations[n].reload.l1.name = "reload3";<--Локатор перехода в следующую локацию Locations[n].reload.l1.go = "Douwesen_town";<--ID следующей локации Locations[n].reload.l1.emerge = "reload9";<--Имя локатора где появимся Locations[n].reload.l1.autoreload = "0"; Locations[n].reload.l1.label = "Douwesen.";<--Этот текст показывается когда вы смотрите на дверь. Locations[n].reload.l2.name = "reload2"; Locations[n].reload.l2.go = "Douwesen"; Locations[n].reload.l2.emerge = "reload_1"; Locations[n].reload.l2.autoreload = "0"; Locations[n].locators_radius.reload.reload2 = 3; Locations[n].reload.l2.label = "Sea."; Locations[n].reload.l3.name = "reload1_back"; Locations[n].reload.l3.go = "Douwesen"; Locations[n].reload.l3.emerge = "reload_1"; Locations[n].reload.l3.autoreload = "0"; Locations[n].reload.l3.label = "Sea."; Locations[n].locators_radius.reload.reload1_back = 3; Locations[n].reload.l4.name = "reload2_back"; Locations[n].reload.l4.go = "Douwesen"; Locations[n].reload.l4.emerge = "reload_1"; Locations[n].reload.l4.autoreload = "0"; Locations[n].locators_radius.reload.reload2_back = 3; Locations[n].reload.l4.label = "Sea."; Locations[n].reload.l5.name = "reload1"; Locations[n].reload.l5.go = "Douwesen"; Locations[n].reload.l5.emerge = "reload_1"; Locations[n].reload.l5.autoreload = "0"; Locations[n].reload.l5.label = "Sea."; Locations[n].locators_radius.reload.reload1 = 3; n = n + 1; А теперь найдите дом который хотели изменить, смените ID, после чего замените в городе, где хотите свой дом ID перехода. Последний раз редактировалось Flibustier; 08.11.2010 в 22:11. Причина: Добавлено сообщение |
08.11.2010, 19:31 | #5 |
Старший матрос
|
Ответ: Урок №2: Создание Пушки
Пробовал давненько гарпун установить - не получилось
кроме того не знаю как линь создать - может кто знает ???
__________________
Алчных на рею !!! |
08.11.2010, 20:41 | #6 |
Основатель
Corsairs-Harbour.Ru WastelandMutants.Ru
Губернатор
|
Ответ: Уроки по кодингу
Все очень хорошо, а автора материала указывать не надо?
__________________
Гимн Гавани Корсаров |
08.11.2010, 23:01 | #7 | ||
Матрос
|
Ответ: Уроки по кодингу
А как редактировать сообщение? нету кнопки правка!
Последний раз редактировалось Flibustier; 08.11.2010 в 23:09. |
||
12.11.2010, 18:10 | #8 |
Матрос
|
Ответ: Уроки по кодингу
Урок №5: Создание Корабельного товара.
Рассмотрим, как создать новый корабельный товар. Для начала открываем файл PROGRAM\STORE\initGoods.c И пишем Внизу свой товар допустим my11 Goods[GOOD_WHEAT].Name = "my11"; ID товара(обязательно включите в " ") Goods[GOOD_WHEAT].Weight = 1; вес одной единицы товара Goods[GOOD_WHEAT].Cost = 100; цена Goods[GOOD_WHEAT].Units = 1; кол-во в пачке Goods[GOOD_WHEAT].Swim.Model = "sack"; модель предмета Goods[GOOD_WHEAT].Swim.Time = 50; время плаванья далее открываем файл PROGRAM\STORE\goods.h изменяем #define GOODS_QUANTITY 27 // boal на #define GOODS_QUANTITY 28 после каждого нового добавленного товара увеличиваем число на 1 и в этом же файле внизу пишем следующие: #define GOOD_my11 27 Далее расмотрим описание товара. Открываем файл RESOURCE\INI\TEXTS\RUSSIAN\GoodsDescribe.txt и пишем свой my11 {Мой товар} -здесь вписываете название my11_descr { Мой товар. Его найдешь по всем карибам.-здесь описание } открываем файл common.ini и находим string = Balls,"Ядра" string = Grapes,"Картечь" string = Knippels,"Книппели" string = Bombs,"Бомбы" string = Sailcloth,"Парусина" string = Planks,"Доски" string = Wheat,"Пшеница" string = Ebony,"Черное дерево" string = Chocolate,"Какао" string = Sugar,"Сахар" string = Wine,"Вино" string = Linen,"Полотно" string = Rum,"Ром" string = Tobacco,"Табак" string = Coffee,"Кофе" string = Mahogany,"Красное дерево" string = Cinnamon,"Корица" string = Copra,"Копра" string = Paprika,"Паприка" string = Fruits,"Фрукты" string = Ale,"Эль" string = Silk,"Шелк" string = Clothes,"Одежда" string = Cotton,"Хлопок" string = Sandal,"Сандал" string = Leather,"Кожа" string = Oil,"Масло" и пишем своё string = My11,"Мой товар" теперь пропишем слова, которые будут вылезать при съедании крысами или поднятии на борт: открываем в этой же папке файл ShipEatGood.txt и на примере любого товара вставляем: seg_my11 {моего товара}-любое название(только чтобы соответствовало названию из описания! в файле SeaSection.txt находящимся в этой же папке прописываем тоже самое. Все,товар создан! Осталась-иконка. открываем файл RESOURCE\INI\INTERFACES\pictures.ini находим строки: picture = Balls,128,256,256,384 picture = Grapes,256,256,384,384 picture = Knippels,512,256,640,384 picture = Bombs,384,256,512,384 picture = Sailcloth,256,128,384,256 picture = Planks,384,384,512,512 picture = Wheat,0,128,128,256 picture = Ebony,896,256,1024,384 picture = Chocolate,512,0,640,128 picture = Sugar,384,128,512,256 picture = Wine,768,0,896,128 picture = Linen,640,0,768,128 picture = Rum,128,128,256,256 picture = Tobacco,512,128,640,256 picture = Coffee,0,384,128,512 picture = Mahogany,768,256,896,384 picture = Cinnamon,640,256,768,384 picture = Copra,768,128,896,256 picture = Paprika,0,256,128,384 picture = Fruits,384,0,512,128 picture = Ale,128,0,256,128 picture = Oil,256,0,384,128 picture = Silk,896,0,1024,128 picture = Clothes,896,128,1024,256 picture = Cotton,0,0,128,128 picture = Sandal,128,384,256,512 picture = Leather,640,128,768,256 и на основе присутствующих вставляем свое. пример: picture = Rum,128,128,256,256 picture = Tobacco,512,128,640,256 picture = my11,512,128,640,256 picture = Coffee,0,384,128,512 и иконка вашего товара отныне такая же,как и у табака. можно конечно создать и свою текстуру,но только по правде говоря-много замутов, ведь можно обойтись и уже существующими. Товар создан! Он сам появится на прилавках! |
Пользователь сказал cпасибо: | Profit (05.05.2013) |
06.04.2011, 07:24 | #9 |
Матрос
|
Re: Уроки по кодингу
Создал саблю, пистоль, зелье, сделал так, чтобы при взятии мешочков с золотом добавлялось 100000000. Теперь мешочки с золотом вообще не попадаются!!! Сабли нет, пистоля нет, зелья нет, всего что я создал нет!!!
|
06.04.2011, 18:12 | #10 |
Матрос
|
Re: Уроки по кодингу
у меня получалось.
__________________
Если Когда-нибудь Ты Захватишь Вражеский Корабль Не Думай Что с Ним Далеко Уплывёшь... |
06.04.2011, 18:28 | #11 |
Старожил
Капитан-лейтенант
BlackMark Studio
|
Re: Уроки по кодингу
Джеймс Норрингтон, а новую игру начали?
__________________
[Для просмотра данной ссылки нужно зарегистрироваться] |
01.10.2011, 19:33 | #13 |
Салага
|
Re: Уроки по кодингу
работает все, кроме создания корабля. там по любому какая то ошибка
Добавлено через 3 часа 51 минуту а можете пожалста выложить как создать своего персоонажа! в порту оксбэя например. чтоб просто стоял. |
02.10.2011, 10:39 | #14 | |
Мичман
|
Re: Урок №3: Создание Корабля
Цитата:
Допишите в урок как добавить корабль в верфь и как назначить иконку.
__________________
Истина где-то рядом, а молчание-золото за которое отрубают голову. |
|
22.10.2011, 10:44 | #15 | |
Матрос
|
Re: Урок №3: Создание Корабля
Цитата:
Его можно вообще сделать уникальным чтобы он не попадался даже в море Т.е. refShip.CanEncounter = false; поменять false на true.
__________________
Если Когда-нибудь Ты Захватишь Вражеский Корабль Не Думай Что с Ним Далеко Уплывёшь... |
|
25.10.2011, 13:41 | #16 |
Мичман
|
Re: Урок №3: Создание Корабля
Уточните свою мысль пожалуйста, если вы хотите сказать что не знаете как в верфь добавлять, то он автоматически появляется как только попадает в ships.h, а цена на него указывается в ships_init.c, вот здесь.
refShip.CannonerCrew = 204; - канониры refShip.SailorCrew = 800; - матросы refShip.SpeedRate = 14.2; - скорость refShip.TurnRate = 30.0; - маневреность refShip.Price = 750000; - цена Добавлено через 13 часов 13 минут Добавляю не хватающие инсрукции к уроку как создать корабль, ( автор Mett) Спойлер:
__________________
Истина где-то рядом, а молчание-золото за которое отрубают голову. |
Пользователь сказал cпасибо: | Flibustier (25.10.2011) |
27.10.2011, 14:10 | #17 |
Старожил
Старшина
|
Re: Урок №3: Создание Корабля
в ПКМ, чтобы корабли появились в продаже их надо прописывать в диалогах верфистов.
__________________
Что толку, если не можешь сделать мир лучше. |
13.12.2011, 16:43 | #18 |
Салага
|
Re: Урок №3: Создание Корабля
|
07.05.2012, 17:59 | #19 |
Старшина
|
Re: Уроки по кодингу
кто нибудь напишите как сделать так чтобы Черная Жемчужина у меня по морям плавала. А то в конце линейки её встретить можно
Добавлено через 22 часа 29 минут я попытался создать пушки, сделал все как надо. сохранил своё творчество , захожу в игру а он пишет что ошибка. что делать? Добавлено через 1 минуту я попытался создать пушки, сделал все как надо. сохранил своё творчество , захожу в игру а он пишет что ошибка. что делать? |
Метки |
пираты карибского моря, пкм, уроки по кодингу |
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1) | |
Опции темы | |
Опции просмотра | |
|
|