Форма входа
 
Приветствуем тебя, корсар Юнга!

Гость, мы рады вас видеть. Пожалуйста зарегистрируйтесь или авторизуйтесь!
Логин:
Пароль:


Купить игры
 



Чат
 
500


Статистика
 
Пользователи, посетившие сайт за текущий день:
DPK, ВИТар, Jigan4ik, nkbaka, Andrey__3010, dednick, werter707, Bendiiiiik
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]

Модератор форума: NikK  
Форум » Ад-доны для игр серии Корсары » FAQ по модам - "Сделай мод сам" » Всего по чуть-чуть.
Всего по чуть-чуть.
Джин-БейнДата: Среда, 10.09.2014, 19:13 | Сообщение # 221
Капитан I ранга
Группа: Команда Аддона
Сообщений: 1073
Награды: 40
Репутация: 197
Статус: В открытом море
Цитата Nathaniel ()
Те, кто в школе прилежно учил алгебру

ну что вы за люди а, ведете себя как снобы. я небыл прилежным учеником и что теперь мне идти лесом?


Idler99Дата: Среда, 10.09.2014, 19:26 | Сообщение # 222
Боцман
Группа: Корсар
Сообщений: 213
Награды: 29
Репутация: 234
Статус: В открытом море
Цитата Nathaniel ()
Функцию определения арксинуса

Цитата Mett ()
для каких-нибудь расчетов

Это типа, чтобы движку легче было производить расчёты? Чтобы по графикам функции обратной вычисляла?
Чтобы игра не вылетала от информации, которую нельзя или просто сложно обработать без такой програмки ?
/
Слушайте, как они эту игру делали... Как бедный Шторм такое ест? Может не он виноват вообще, что игра довольно часто вылетает и глючит?
MettДата: Среда, 10.09.2014, 19:31 | Сообщение # 223
Капитан I ранга
Группа: Корсар
Сообщений: 586
Награды: 91
Репутация: 565
Статус: В открытом море
Idler99, это сделано исключительно для расчетов функций, и только потому, что внутри двига (в ГПК, К3, ПКМ) этих функций нет
например, в ККС курсовой угол рассчитывается с использованием функции acos и для того, чтобы перенести код из ККС на ГПК нужно использовать эту функцию
всего-то


Что толку, если не можешь сделать мир лучше.
Idler99Дата: Среда, 10.09.2014, 20:50 | Сообщение # 224
Боцман
Группа: Корсар
Сообщений: 213
Награды: 29
Репутация: 234
Статус: В открытом море
Цитата Mett ()
всего-то

... Знать математику и программирование... И всё понятно
NathanielДата: Среда, 10.09.2014, 22:13 | Сообщение # 225
Контр-адмирал
Группа: Капитан
Сообщений: 8036
Награды: 347
Репутация: 1845
Статус: В открытом море
Цитата Джин-Бейн ()
ведете себя как снобы

При чём тут это? Любая компьютерная игра (даже самая простецкая) строится на математике. Или вы не знаете, что пули, выпущенные из ружья или пулемёта, тоже летят по кривой? А как вы эту кривую ЭВМ объясните? Это вы знаете, что синусоида кривая, а компьютер этого не знает! Вот и нужно описывать всё функциями. Я уж не говорю об играх серии "Корсары", где все процессы описываются функциями в 2D и 3D пространстве. Полёт снарядов, движение кораблей, даже смена дня и ночи, атмосферные явления...

И да... Если лично вам эта тема неинтересна - не проявляйте неуважение к другим, не читайте. Мне бы, в своё время, эти описанные выше функции оказались очень полезными! Но т.к. я сам по образованию компьютерщик, изучал высшую математику в институте, то написал сам. Это не проблема.


Я был на краю земли, на краю бескрайних озёр, за горизонтом и на вершинах самых высоких гор.
Но я не нашёл там никого, кто не был бы моим другом!
korsary4Дата: Среда, 10.09.2014, 22:24 | Сообщение # 226
Адмирал
Группа: Администратор
Сообщений: 5204
Награды: 496
Репутация: 1935
Статус: В открытом море
Nathaniel, я думаю, ты немного не так понял Джин-Бейн'а, он скорее всего имел ввиду, что не обязательно в школе хорошо знать алгебру, геометрию, чтобы понимать какие-то геометрические функции и правила, это можно и самостоятельно догнать и изучить.
Ну и изначально его вопрос, был скорей - "для чего и как применить это(запрограммированные функции) можно".



Единственное, что можно сказать об удаче с уверенностью — она изменит.
--------
NathanielДата: Среда, 10.09.2014, 22:37 | Сообщение # 227
Контр-адмирал
Группа: Капитан
Сообщений: 8036
Награды: 347
Репутация: 1845
Статус: В открытом море
Цитата korsary4 ()
ты немного не так понял Джин-Бейн'а

Ладно, проехали... Да и наспамили мы тут... Прошу модератора раздела потереть весь мой флуд!


Я был на краю земли, на краю бескрайних озёр, за горизонтом и на вершинах самых высоких гор.
Но я не нашёл там никого, кто не был бы моим другом!
ChernozmeyДата: Четверг, 11.09.2014, 16:12 | Сообщение # 228
Капитан II ранга
Группа: Корсар
Сообщений: 461
Награды: 36
Репутация: 323
Статус: В открытом море
Цитата
Мне бы, в своё время, эти описанные выше функции оказались очень полезными!


Nathaniel, согласен с вами. Я тоже программист, но когда впервые увидел программный код Корсаров, не сообразил, что к чему. И именно уроки на этом сайте, как и народ, который делился своими идеями, помогли мне в освоении мододеланья, если можно так выразится. Со временем даже сам стал выкладывать разные мысли, по разным изменениям игры. Так же, выражаю благодарность всем тем, кто нашел время и приложил усилия, развивая этот раздел, объясняя и помогая разобраться, что к чему.
Джин-БейнДата: Четверг, 11.09.2014, 16:24 | Сообщение # 229
Капитан I ранга
Группа: Команда Аддона
Сообщений: 1073
Награды: 40
Репутация: 197
Статус: В открытом море
Цитата Nathaniel ()
И да... Если лично вам эта тема неинтересна - не проявляйте неуважение к другим, не читайте.

Да уж... только оскорблений дождаться.
Цитата Chernozmey ()
объясняя и помогая разобраться, что к чему.

К сожалению не все имеют терпение и умение объяснять.


samovarДата: Пятница, 03.10.2014, 18:59 | Сообщение # 230
Пороховая обезьяна
Группа: Пират
Сообщений: 2
Награды: 0
Репутация: 0
Статус: В открытом море
Цитата Nathaniel ()
Но т.к. я сам по образованию компьютерщик, изучал высшую математику в институте


Вы наверняка знакомы с Асмой

К сожалению нас ,,покинули,, unk1024,
который обещал новый ,,Storm,, написать.

Бегемот, который упростил движок до 300кб.

Отсюда вопрос к знатокам:
Поскольку в storm,е как бы два движка
-как добавить третий !!!

,,Сидит ГГ в таверне, выпил зелья индейца
- и заработали функции из storm v2.7 на
движке storm v2.8 или другие варианты.
Ведь нам современный storm v3.0 не светит.

Прошу, не надо кричать, что это невозможно!
MettДата: Пятница, 03.10.2014, 22:31 | Сообщение # 231
Капитан I ранга
Группа: Корсар
Сообщений: 586
Награды: 91
Репутация: 565
Статус: В открытом море
Цитата samovar ()
Вы наверняка знакомы с Асмой

чтобы ваять шейдеры для Шторма хватит и одних знаний HLSL
в DX9 SDK есть утилита которая преобразует код в asm

Цитата samovar ()
Сидит ГГ в таверне, выпил зелья индейца
- и заработали функции из storm v2.7 на
движке storm v2.8 или другие варианты.
Ведь нам современный storm v3.0 не светит.

Прошу, не надо кричать, что это невозможно!

невозможно jokingly

почему? а потому что в 2.8 порезали всякие фишки из 2.7 и 2.6 версий
тот же КСМ возьмем примером - там динамическое освещения есть, опять же смена освещения на глоб. карте, картинка более "мягкая" без включенных пост-эффектов
и да, набор движковых месседжей, которых нет в ГПК. это те же бортовые залпы в локациях, работа с камерой (радиус камеры, камера направлена из точки в точку (в 2.8 только из точки на перса и никак иначе), и еще много нюансов, которые с ходу и не вспомню)
так что самые вкусные плюшки КСМовского двигла на ГПК не пашут
только если дописывать двигло ручками, имея исходники, поэтому невозможно!


Что толку, если не можешь сделать мир лучше.
NathanielДата: Пятница, 03.10.2014, 23:22 | Сообщение # 232
Контр-адмирал
Группа: Капитан
Сообщений: 8036
Награды: 347
Репутация: 1845
Статус: В открытом море
Цитата samovar ()
Вы наверняка знакомы с Асмой


Если это вопрос ко мне, то отвечу кратко... Нет, я практически не освоил его, так что перекраивать движок с его помощью не имею возможности...


Я был на краю земли, на краю бескрайних озёр, за горизонтом и на вершинах самых высоких гор.
Но я не нашёл там никого, кто не был бы моим другом!
MettДата: Пятница, 03.10.2014, 23:55 | Сообщение # 233
Капитан I ранга
Группа: Корсар
Сообщений: 586
Награды: 91
Репутация: 565
Статус: В открытом море
Цитата Nathaniel ()
так что перекраивать движок с его помощью не имею возможности...

так и сильно не перекроишь
разве что уже готовые шейдеры
можно новые написать, но по больше части шейдеры подключатся через двиг
через скрипты юзают только техники без шейдеров
все шейдерные дефайны в двиге зашиты


Что толку, если не можешь сделать мир лучше.
samovarДата: Суббота, 04.10.2014, 16:44 | Сообщение # 234
Пороховая обезьяна
Группа: Пират
Сообщений: 2
Награды: 0
Репутация: 0
Статус: В открытом море
Цитата Mett ()
а потому что в 2.8 порезали всякие фишки из 2.7


Благодарю - в этом соль вопроса !

Интересно - буржуи прыгали от радости,
получив исходники движка, а столько лет
не мычат не телятса ?
ErranДата: Воскресенье, 23.11.2014, 22:22 | Сообщение # 235
Лейтенант
Группа: Корсар
Сообщений: 358
Награды: 18
Репутация: 144
Статус: В открытом море
Камрады, подскажите пож-та в таком вопросе - как скриптово поставить гербы (изменяемые) на "Летящее сердце"? Желательно пошагово (для чайника).

Спасибо


В любой лжи есть доля правды, в любой правде есть доля лжи, но истина всегда одна.
NathanielДата: Среда, 04.03.2015, 15:01 | Сообщение # 236
Контр-адмирал
Группа: Капитан
Сообщений: 8036
Награды: 347
Репутация: 1845
Статус: В открытом море
Сегодня меня спросили о том, как же сделать в мод-паке или в К:КС так, чтобы на верфи корабли продавались с орудиями, а не без них?
Так вот, всем тем, кому интересен этот вопрос, публикую решение...

Итак, откройте файл ShipsUtilites.c в каталоге \scripts\ и найдите внутри FillShipParamShipyard() - процедуру, с которой и придётся поработать...

Код
void FillShipParamShipyard(ref NPChar, int _iType, string _sShipNum)
{
     aref arTo, arFrom;
      
  DeleteAttribute(NPChar, "ship");
     NPChar.Ship.Type = _iType;
      
  SetRandomNameToShip(NPChar);

     SetBaseShipData(NPChar);
     SetCrewQuantity(NPChar, 0);
     if (sti(NPChar.Ship.Cannons.Type) != CANNON_TYPE_NONECANNON)
     {
      NPChar.Ship.Cannons.Type = CANNON_TYPE_CANNON_LBS6;
     }
      
     // вот эту строчку нужно скрыть (закомментировать по правилам синтаксиса С/С++)
     RemoveAllCannonsShipyardShip(NPChar);
      
     DeleteAttribute(NPChar, "Ship.Cargo");
     SetGoodsInitNull(NPChar);
     RecalculateCargoLoad(NPChar);
      
     FillShipyardShipBack(NPChar, _sShipNum);
}

Вот и всё... Теперь сохраняйте файл, загружайте игру и вновь обращайтесь к начальнику верфи. Новая игра не требуется...


Я был на краю земли, на краю бескрайних озёр, за горизонтом и на вершинах самых высоких гор.
Но я не нашёл там никого, кто не был бы моим другом!
NathanielДата: Понедельник, 23.03.2015, 04:53 | Сообщение # 237
Контр-адмирал
Группа: Капитан
Сообщений: 8036
Награды: 347
Репутация: 1845
Статус: В открытом море
И ещё один урок специально для тех, кто любит менять внешний вид кораблей в игре... Как известно, движок игры "видит" только три набора текстур для корабля в \resource\textures\ships, но и этого будет достаточно, например, чтобы поменять внешний вид своего любимого квестового корабля, не занимаясь заменой текстур вручную. Ведь обычно текстуры квестовых кораблей во всех трёх папках (hull1, hull2, hull3) выглядят абсолютно одинаково...

Итак... Вам понадобится, к примеру, общий диалог верфистов: Common_Shipyard.c.
Открываем его и где-нибудь в верхней части вписываем...

Код

if (RealShips[sti(Pchar.Ship.Type)].BaseType == SHIP_QUEST)
{
        if (RealShips[sti(Pchar.Ship.Type)].ship.upgrades.hull == 1)
        {
               link.l1 = "У меня к вам несколько необычная просьба, " + GetAddress_Form(npchar) + ". Это касается внешнего вида моего корабля...";
               link.l1.go = "Ship_Unique_Upgrade";
               link.l2 = "Нет, спасибо. Я ошибся...";
               link.l2.go = "exit";       
       }

       if (RealShips[sti(Pchar.Ship.Type)].ship.upgrades.hull == 3)
       {
               link.l1 = "Я бы хотел сменить внешний вид корпуса своего корабля.";
               link.l1.go = "Ship_Unique_Return";
               link.l2 = "Нет, спасибо. Я ошибся...";
               link.l2.go = "exit";
       }  
}

В качестве SHIP_QUEST обязательно подставляете любой интересующий вас квестовый корабль. Например, SHIP_FLYINGDUTCHMAN, SHIP_BLACKPEARL или любой другой, от которого вы в полном восторге в игре и который вы, возможно, добавляли в игру самостоятельно!

Значение атрибута ship.upgrades.hull указывает вам текущий номер папки с текстурами для данного корабля:
1 - hull1;
2 - hull2;
3 - hull3;
Больше ставить нет смысла, т.к. распознаются только три папки.

Затем в этом же файле где-нибудь ниже пишем...

Код

case "Ship_Unique_Upgrade":
           dialog.text = "Очень интересно... Продолжайте, " + GetAddress_Form(npchar) + "!";
           link.l1 = "Я бы хотел сделать с корпусом нечто подобное.";
           link.l1.go = "Ship_Unique_Upgrade_1";
break;

case "Ship_Unique_Upgrade_1":
           dialog.text = "Гм!.. Позвольте поинтересоваться, каким же образом?";
           link.l1 = "Сможете сделать это?";
           link.l1.go = "Ship_Unique_Upgrade_2";
break;

case "Ship_Unique_Upgrade_2":
           dialog.text = ""; // тут можно написать про тяжёлую жизнь верфиста  
           link.l1 = "Превосходно! В таком случае поговорим о вашем гонораре за работу.";
           link.l1.go = "Ship_Unique_Upgrade_3";
break;

case "Ship_Unique_Upgrade_3":
           dialog.text = "Отлично, я приступаю к работе!";
           link.l1 = "";
           link.l1.go = "Ship_Unique_Upgrade_4";
           break;

case "Ship_Unique_Upgrade_4":
           DialogExit();
           RealShips[sti(Pchar.Ship.Type)].ship.upgrades.hull = 3;
            
           // антураж (можно ещё прикрутить промотку времени и спецэффекты
           Log_Info("Заказ принят и выполнен!");
           PlayStereoSound("interface\notebook.wav");
           PlayStereoSound("interface\notebook.wav");
           NextDiag.TempNode = "Meeting";
break;

case "Ship_Unique_Return":
           dialog.text = "Очень интересно... Продолжайте, " + GetAddress_Form(npchar) + "!";
           link.l1 = "Я бы хотел восстановить прежний внешний вид корпуса своего корабля.";
           link.l1.go = "Ship_Unique_Return_1";
           break;

           // тут пишем какой угодно развесёлый диалог для антуража
           // можно вписать условие оплаты гонорара за работу на верфи или что-попало

case "Ship_Unique_Return_4":
           DialogExit();
           RealShips[sti(Pchar.Ship.Type)].ship.upgrades.hull = 1;
            
           // антураж           
           Log_Info("Заказ принят и выполнен!");
           PlayStereoSound("interface\notebook.wav");
           PlayStereoSound("interface\notebook.wav");
           NextDiag.TempNode = "Meeting";
break;

Примечание... В качестве базового вида корпуса можно взять строго первый. Тогда в кейсе "Ship_Unique_Return" нужно в качестве параметра задать именно "1", а в первом кейсе "Ship_Unique_Upgrade" задать либо "2", либо "3". Или сделать в диалоге выбор между этими двумя, если у вас в ресурсах игры будут три разных набора текстур для корабля. Это уж как удобно и как кому понравится. Можно написать отдельные кейсы для каждого квестового корабля и переписать алгоритм, сделать его глобальным.

Вот, собственно, и всё...


Я был на краю земли, на краю бескрайних озёр, за горизонтом и на вершинах самых высоких гор.
Но я не нашёл там никого, кто не был бы моим другом!
MettДата: Понедельник, 23.03.2015, 07:33 | Сообщение # 238
Капитан I ранга
Группа: Корсар
Сообщений: 586
Награды: 91
Репутация: 565
Статус: В открытом море
Цитата Nathaniel ()
Значение атрибута ship.upgrades.hull указывает вам текущий номер папки с текстурами для данного корабля:
1 - hull1;
2 - hull2;
3 - hull3;
Больше ставить нет смысла, т.к. распознаются только три папки.

поправочка: три типа текстур прописаны для всех кораблей, но можно использовать и свои текстуры из папок hull4, hull5 и т.д.
для этого юзаем такой атрибут для судна
RealShips[pchar.ship.type].ship.upgrades.hull = n;
где n номер папки, т.е. "hulln" (hull5, hull28 и т.д. и т.п.)

ну и примерчик как все это должно выглядеть в функции
Код
void GetShip()
{
  int iShip = GenerateShip(SHIP_LUGGER, 1);
  pchar.ship.type = iShip;
  SetBaseShipData(pchar);
  SetCrewQuantity(pchar, 21);
  DeleteAttribute(pchar, "ship.cargo.load");
  DeleteAttribute(pchar, "ship.cargo");
  pchar.ship.cargo.load = 0;
  pchar.ship.cargo = 0;
  pchar.ship.Stopped = true;
  pchar.ship.Name = "Быстрый вепрь";
  RealShips[iShip].ship.upgrades.hull = 4;
  RealShips[iShip].HP = 560;
  pchar.ship.HP = 560;
  RealShips[iShip].SP = 100;
  pchar.ship.SP = 100;
  RealShips[iShip].Capacity = 585.0;
  RealShips[iShip].SpeedRate = 15.1;
  RealShips[iShip].TurnRate = 58.3;
  RealShips[iShip].WindAgainstSpeed = 9.7;
  RealShips[iShip].MaxCaliber = 12;
  pchar.ship.cannons.type = CANNON_TYPE_CANNON_LBS12;
  pchar.ship.cargo.goods.balls = 100;
  pchar.ship.cargo.goods.grapes = 50;  
  pchar.ship.cargo.goods.knippels = 50;
  pchar.ship.cargo.goods.bombs = 50;   
  pchar.ship.cargo.goods.powder = 250;
  RecalculateCargoLoad(pchar);
  setWDMPointXZ("Pirates_town");
  NullCharacter.SalayPayMonth = sti(environment.date.month);
}


Что толку, если не можешь сделать мир лучше.
NathanielДата: Понедельник, 23.03.2015, 09:37 | Сообщение # 239
Контр-адмирал
Группа: Капитан
Сообщений: 8036
Награды: 347
Репутация: 1845
Статус: В открытом море
Цитата Mett ()
но можно использовать и свои текстуры из папок hull4, hull5 и т.д.

Ух ты, спасибо! Не знал...
Но в любом случае тем, кто захочет сделать универсальный метод, придётся писать ещё кучу условий для отделения квестовых кораблей от обычных. Я-то данный пример только для "Миража" писал.


Я был на краю земли, на краю бескрайних озёр, за горизонтом и на вершинах самых высоких гор.
Но я не нашёл там никого, кто не был бы моим другом!
NathanielДата: Понедельник, 30.03.2015, 13:44 | Сообщение # 240
Контр-адмирал
Группа: Капитан
Сообщений: 8036
Награды: 347
Репутация: 1845
Статус: В открытом море
Публикую здесь ещё один способ решать некоторые проблемы в играх серии "Корсары".

Урок: "Создание скриптов для мгновенного переноса кучи предметов в инвентарь главного героя..."

Цель урока: облегчить игроку рутинную и нудную процедуру перетаскивания сокровищ со дна подводной локации или любой другой части квеста.

Итак, предположим, Вы уже не в первый раз играете в игру и хотите по-прежнему вытащить все сокровища из сундуков в подводной локации ГПК или Острова Справедливости, но таскать рутинно по частям туда-сюда, бегать постоянно к Механику через сложнейшую и нудную цепь локаций вроде барка "Сан-Габриэль" Вам жутко надоело... Как же поступить?..

Предлагаю своё решение этой проблемы...

Шаг 1. Для начала определитесь, что и откуда Вы собираетесь перетащить. Если это подводная локация ГПК (Острова Справедливости), то заполнение сундуков там происходит в файле описания локации. А именно: \locations\init\QuestLocations.c. Именно там находится процедура заполнения сундуков под водой. Открываем файл и находим там такие строки...

Код
locations[n].id = "UnderWater";
locations[n].id.label = "UnderWater";
locations[n].filespath.models = "locations\UnderWater";  
locations[n].image = "loading\UnderWater_" + rand(1) + ".tga";
//Sound  
locations[n].type = "underwater";
locations[n].type.LSC = true; //локация ГПК
locations[n].dolly = 2;
...
...
//в сундуках
locations[n].private1.items.gold_dublon = 154;
locations[n].private1.items.jewelry5 = 166;
locations[n].private1.items.jewelry6 = 211;
locations[n].private1.items.jewelry10 = 3;
...
...
locations[n].private7.key = "key_betancur"; // сундук Бетанкура
locations[n].private7.key.delItem = true;
locations[n].private7.money = 100000;  
locations[n].private7.items.gold_dublon = 500;
locations[n].private7.items.icollection = 12; // чтоб удавиться от жадности
locations[n].private7.items.jewelry5 = 400;
locations[n].private7.items.jewelry6 = 1000;
locations[n].private7.items.jewelry10 = 19;
locations[n].private7.items.talisman1 = 1;
n = n + 1;

Теперь мы знаем, чем заполнены сундуки в подводной локации. Пришло время написать небольшой скрипт для автоматизации процесса переноса всех ценностей в одно место. В данном случае я переношу всё в инвентарь главного героя. Может возникнуть вопрос: "Зачем? И почему именно в инвентарь, а не в сундук?" Отвечаю... Для удобства собственноручной раскладки ценностей по сундукам. Ибо я храню вещи только в главном капитанском рундуке, а Вы, возможно - в рундуке на орудийной палубе или вообще в другом месте.

Шаг 2. Написание скрипта. Для удобства я использую отладчик. Он же debuger.c в подкаталоге interface. Как многие наверняка уже знают - отладчик используется для контроля и отладки написанного кода. Но мы им воспользуемся иначе.

Просмотрите сам файл. Я буду использовать для скрипта функцию CalculateInfoDataF31() - она вызывается при нажатии кнопки F31 в отладчике (в К:КС). Она позволяет получить "Супер корабль, полную прокачку ГГ, все перки, предметы..."

Так вот. Скрываем все строки, начинающиеся ниже строки

mc = GetMainCharacter();

и до конца, до строчки

totalInfo = totalInfo + NewStr() + NewStr() + "Команда отработала успешно!";

Комментирование в С/С++ выглядит так:
// - однострочный комментарий

/*
раз
два
три
*/
это многострочный комментарий.
Скрывайте строки так, как Вам нравится.

Затем где-нибудь под закомментированнным текстом или над ним пишем сам скрипт. Привожу здесь скрипт для игры "Корсары: Каждому Своё"!


Вот и всё... Теперь можно сохранить и закрыть файл. На время неактивности я скрываю этот приведённый выше код в комментариях и вывожу основной код для нужд отладчика.

Шаг 3. Запуск скрипта на выполнение.
Тут всё просто. Обязательно сделайте в игре контрольное сохранение где-нибудь в каюте или на улице ГПК. Выйдите из игры. Включите в файле _LSC_on_off.h отладчик. Запустите игру, загрузите сохранение. Загрузите отладчик и выполните скриптовую команду F31. После успешного выполнения сохраните файл. Выгрузите игру и отключите в указанном выше файле отладчик.

Всё. Можно загружаться и играть как и раньше. Раскладывайте "вытащенные" со дна сокровища в свои сундуки и закрома!
thumbs1 thumbs1

Примечание! Если Вы хотите вместо подводной локации перетащить "экспрессом" любые другие богатства, то просто узнайте их количество и тип по квесту. Пропишите в указанную выше процедуру вместо готового скрипта и сделайте всё то же самое. Если хотите перебросить все вещи сразу в нужное место - просто укажите корректно его в теле процедуры, описанной выше...


Я был на краю земли, на краю бескрайних озёр, за горизонтом и на вершинах самых высоких гор.
Но я не нашёл там никого, кто не был бы моим другом!
Форум » Ад-доны для игр серии Корсары » FAQ по модам - "Сделай мод сам" » Всего по чуть-чуть.
Поиск:

Copyright Pirates-Life.Ru © 2008-2024


Семь Футов под Килем - Бухта Корсаров и Пиратов!