Hunting Rifle

Тема в разделе "Оружие", создана пользователем F4TAL1ST, 29 янв 2011.

  1. Папка01

    Папка01 ۞ Всевидящее око форума ۞

    Так, значит от этого ствола отказываемся. Спасибо за ответ.
     
  2. Dr_Killjoy

    Dr_Killjoy Заблокированные

    Шершень, может поможешь?) Не у него только такой косяк. У меня тоже хантинг глючный, а очень нужен на сервер.
     
  3. LLIePLLIeHb

    LLIePLLIeHb Guest

    А это точно последняя , белая версия , просто я в стиме играл с белой такой пушкой там бегали , вроде норм все было. :yes:
     
  4. Dr_Killjoy

    Dr_Killjoy Заблокированные

    Хз. Где можно нарыть нормальную версию?
     
  5. Lexass

    Lexass Капо

    в паке с Оружиями ICG
     
  6. Папка01

    Папка01 ۞ Всевидящее око форума ۞

    Все стало хорошо само по себе. Запустил по новой и все внезапно стало ок:
    [​IMG]
     
  7. BAHO

    BAHO Fresh Meat

    Долго я парил мозг что бы совместить ее с IJC WP и в итоге разобрался, так как на форуме не нашел инфы пишу сюда! http://sendfile.su/608262 Нехватает вот этого и я так и не понял почему IJC не запихали в архив с мутатором это...
     
  8. Flame

    Flame -Заслуженый кодер форума-

    Ссылка на шапку
    Начал я потихоньку восстанавливать старые темы
    И кроме того меня вечно спрашивают про то, как объединять ресурсы в один пакет
    Распишу это в данном сообщении и заодно сделаю версию Hunting Rifle только с ukx пакетом
    Потом будет частью статьи

    Итак, есть у нас файлы HuntingRifleA.ukx, HuntingRifle_Snd.uax, HuntingRifleS.usx, HuntingRifleT.utx
    А так же пакет с кодом BDHuntingRifleFinal.u

    0. Декомпилируем код BDHuntingRifleFinal. Он нам понадобится для замены ссылок на новые ресурсы
    Напоминаю содержание bat файла для декомпиляции кода:
    Код:
    UCC.exe BatchExport BDHuntingRifleFinal Class uc ..\BDHuntingRifleFinal\Classes
    
    Получаем 9 файлов в папке ПутьКВашемуСерверу\BDHuntingRifleFinal\Classes
    Класс KFHRLevelRules.uc можете сразу удалить - данный подход добавления пушек в магазин устарел.

    1. Объединим ukx,uax,usx,utx в одном файле ukx. То есть все ресурсы положим в файл анимации.
    Открываем KFEd, выбираем браузер анимаций и открываем HuntingRifleA.ukx
    [​IMG]

    Любуемся. В данном случае мы не будем править никакие Notify, не будем ничего никуда переносить.

    Переходим на вкладку текстур
    [​IMG]
    Тут ещё косяк с прозрачностью у автора. Я поправил текстуры HR_selected и HR_Unselected. Так как это частная проблема этой пушки - я не буду на этом останавливаться - покажу только один скрин.
    [​IMG]

    Итак, начинаем переносить текстуры в пакет анимаций. Кликаем правой кнопкой мыши на любую текстурку и переименовываем пакет:
    [​IMG]
    HuntingRifleT заменяем на HuntingRifleA. Повторяем процесс до тех пор пока в пакете HuntingRifleT не останется ни одной пушки.
    (При самом первом переименовании вас перебросит в HuntingRifleA пакет, вернитесь обратно в HuntingRifleT и продолжайте)

    Теперь займёмся статик мешами.
    Переходим на вкладку Static Meshes, открываем пакет HuntingRifleS.usx
    Выделяем меш, идём в пункт меню Edit и жмём Rename. Заменяем HuntingRifleS на HuntingRifleA
    [​IMG]

    Переходим на вкладку звука.
    (Перед этим желательно сохранить промежуточный вариант - со звуком бывает такая беда, что он косячно переносится и игра вылетает при попытке достать пушку)
    Открываем HuntingRifle_Snd:
    (Тут лежит моно и стерео звук выстрела. В общем то вряд ли кому нужен стерео эффект - он слышен на всю карту. В принципе можете его не переносить и везде заменить на моно. Я так и сделаю, пожалуй.)
    Кликаем правой кнопкой мыши на звук и выбираем Rename. Опять же меняем HuntingRifle_Snd на HuntingRifleA
    [​IMG] [​IMG]

    Всё. Переходим на вкладку анимаций и сохраняем HuntingRifleA.ukx
    Теперь он содержит все ресурсы игры
    Перезайдём в KFEd и откроем вкладку звуков для HuntingRifle. Убедимся, что нет вылетов из редактора. В противном случае берём сохранённую ранее версию и ещё раз перекидываем туда звуки.

    Для ленивых заснял видео:

    2. Поправим код пушки, чтобы она ссылалась на новый пакет HuntingRifleA.ukx
    Переносим получившийся пакет HuntingRifleA.ukx в папку Animations. И для чистоты эксперимента и вообще для соблюдения порядка удаляем utx, usx, uax файлы из соотв. папок. Они нам больше не понадобятся.

    Открываем все файлы получившиеся при декомпиляции. Кроме Hunting_RifleMut и KFHRLevelRules (если вы его до сих пор не удалили).
    - HUNTING_RIFLE.uc
    Заменяем
    Код:
    #exec OBJ LOAD FILE="..\textures\HuntingRifleT.utx"
    
    на
    Код:
    #exec OBJ LOAD FILE=HuntingRifleA
    
    Далее пользуясь автозаменой заменяете 7 текстур HuntingRifleT на HuntingRifleA

    - Hunting_RiflePickup.uc
    Заменяем статикмеш HuntingRifleS на HuntingRifleA

    - Hunting_RifleFire.uc
    Заменяем звуки HuntingRifle_Snd.awp1_stereo и HuntingRifle_Snd.awp1_mono на HuntingRifleA.awp1_mono
    Как я уже говорил - нахрен не надо, чтобы винтовку было слышно на всей карте)

    Больше нигде ничего заменять не надо.
    Ну почти нигде. Ещё надо поменять код мутатора на такой:
    Код:
    class Hunting_RifleMut extends Mutator;
    
    function ModifyPlayer(Pawn Player)
    {
        Super.ModifyPlayer(Player);
        Player.GiveWeapon("BDHuntingRifleFinal.HUNTING_RIFLE");
    }
    
    defaultproperties
    {
        bAddToServerPackages=True
        GroupName="KF_Hunting Rifle Final"
        FriendlyName="Hunting Rifle by Braindead (Final)"
        Description="Adds a bolt action, precision scoped hunting rifle"
    }
    
    Мутатор добавляет пушку всем игрокам при старте игры. Удобно чтобы поглядеть на саму пушку. Так то он практической пользы не имеет. В принципе можете просто удалить его.

    Компилируем BDHuntingRifleFinal:
    Напоминаю, для компиляции пакета надо открыть KillingFloor.ini, найти секцию [Editor.EditorEngine] и дописать
    Код:
    EditPackages=BDHuntingRifleFinal
    
    После этого удалить старый BDHuntingRifleFinal.u из System и запустить скрипт с содержанием
    Код:
    ucc make
    
    Получаем BDHuntingRifleFinal.u
    Добавляем в магазин BDHuntingRifleFinal.Hunting_RiflePickup

    Ну и важно не забыть прописать эти ресурсы в ServerPackages - иначе получите невидимую винтовку:
    Открываем KillingFloor.ini, секцию [Engine.GameEngine] и дописываем
    Код:
    ServerPackages=BDHuntingRifleFinal
    

    Замечание 1:
    В идеале нам надо переименовать и u пакет и ukx пакет. Игроки могли ранее закачать эту пушку в Steamshop'е и она у них будет конфликтовать с нашей новой версией.
    Ну тут всё просто:
    - Переименовывайте HuntingRifleA.ukx в HuntingRifle_A.ukx, например.
    - В коде правите все ссылки на HuntingRifleA, заменяете на HuntingRifle_A

    Замечание 2:
    Старайтесь избавляться от выражений, типа,
    Код:
    Class'BDHuntingRifleFinal.HUNTING_RIFLE'
    
    Если у вас среди других используемых пакетов нет аналогичных по названию классов, то нет никакой необходимости в текущем пакете писать полный путь. Более того, если вы будете потом переименовывать пакет - вам удобнее просто краткая версия
    Код:
    Class'HUNTING_RIFLE'
    
    В первом случае вам придётся менять все пути, например, Class'HuntingRifle.HUNTING_RIFLE', а во втором ничего не надо делать.

    Версия учитывающая оба этих замечания:
    (И с небольшим наведением порядка в коде и ресурсах)

    Ссылка
    Сама пушка: HuntingRifle.HuntingRifle
    В магазин добавлять (PickUp класс): HuntingRifle.HuntingRiflePickup
    Мутатор: HuntingRifle.HuntingRifleMut
    В ServerPackages: ServerPackages=HuntingRifle
     
    Последнее редактирование: 25 окт 2016
    WipeMaster нравится это.