Урок по добавлению Flaregun'а в релиз
 

0 Members and 1 Guest are viewing this topic.

  • *
  • Posts: 856
    • View Profile
Так как урок Детлера глючный, я решил написать свой.

Урок написан для одиночной игры, т. к. настроек урона для сетевой игры в коде беты нет.

1. Откройте код ракетницы. Местонахождение:
-Source 2006, на диске: dlls\hl2_dll\weapon_flaregun.cpp
-Source 2007, на диске: game\server\hl2\weapon_flaregun.cpp
-В проекте (2006): server\Source Files\HL2 DLL\unused\weapon_flaregun.cpp
-В проекте (2007): Server Episodic\Source Files\HL2 DLL\unused\weapon_flaregun.cpp
Для удобства можете перенести из unused в HL2 DLL.

2. Удалите #if 0 и #endif в строках 639 и 734 (Source 2006) или 660 и 755 (Source 2007).

3. Откройте код правил игры. Местонахождение:
-Source 2006, на диске: game_shared\hl2\hl2_gamerules.cpp
-Source 2007, на диске: game\shared\hl2\hl2_gamerules.cpp
-В проекте (2006): server\Source Files\HL2 DLL\hl2_gamerules.cpp
-В проекте (2007): Server Episodic\Source Files\HL2 DLL\hl2_gamerules.cpp

4. Раскомментируйте строки 124-126 (2006), 123-156 (2007).

5. Добавьте следующий код в строку 1689 (2006) или 1807 (2007) :
Code: [Select]

def.AddAmmoType("FlareRound",DMG_BURN,TRACER_LINE,"sk_plr_dmg_flare_round","sk_npc_dmg_flare_round","sk_max_flare_round",BULLET_IMPULSE(1500,600),0);


6. Откройте cfg\skill.cfg.

7. Перед строкой 148 добавьте следующий код:
Code: [Select]

sk_plr_dmg_flare_round "12"
sk_npc_dmg_flare_round "2"
sk_max_flare_round "20"


8. Скопируйте scripts\weapon_flaregun.txt из беты в релиз.

9. Скопируйте звуки, текстуры и перекомпилируйте модели.

Ракетница готова!
  • Good Citizen
  • *
  • Posts: 79
    • View Profile
Спасибо SiPlus!
Я не кодер, но если- б ты еще разобрался с молотовым, огнетушитилем и брикбатом(и желательно cguardgun) цены тебе небыло! Очень хочется походить по своим левелам уже с оружием :)
  • *
  • Posts: 856
    • View Profile
Keith, я не кодер на С++, я копипастер.
  • Good Citizen
  • *
  • Posts: 79
    • View Profile
А я помню фиксил хл1 под релизную.
Ммм ну жаль, :(

Нужно кейва попросить или кто тут у нас хорошо с этим разбирается?)
  • *
  • Posts: 856
    • View Profile
Quote from: Keith

А я помню фиксил хл1 под релизную.
Ммм ну жаль, :(

Нужно кейва попросить или кто тут у нас хорошо с этим разбирается?)

Что?
  • Citizen
  • *
  • Posts: 32
    • View Profile
Quote from: SiPlus

Keith, я не кодер на С++, я копипастер.

Хм=) Копипасть из ASW, тебе интереснее будет.
  • Good Citizen
  • *
  • Posts: 79
    • View Profile
что такое asw?

Всмысли SiPlus я имею введу что в бетке было оружие из хл1 и худ и монстры и т.д. и я их хотел в релизную пихнуть, но столкнулся с проблемами( и не смог нефига. А помочь то некому
  • *
  • Posts: 856
    • View Profile
ASw = Alien Swarm.
А что за оружие из ХЛ1 в бетке такое?
  • Citizen
  • *
  • Posts: 32
    • View Profile
Он про \dlls\hl1_dll
  • Good Citizen
  • *
  • Posts: 79
    • View Profile
  • True Citizen
  • *
  • Posts: 237
    • View Profile
Туториал составлен грамотно и работает корректно что и радует глаз ;)
Но чисто от себя я хочу добавить следующее :
Тех кого после запуска движка выбрасывает в консоль с ошибками в классе оружия (или наподобии этого) я рекомендую открыть следующий  файл в клиентской части сорцов : c_weapon__stubs_hl2.cpp
Если кто так и не нашёл этот файл то он находится тут : (game\client\hl2)

И добавить следующий код примерно под эту строку :
STUB_WEAPON_CLASS( weapon_pistol, WeaponPistol, C_BaseHLCombatWeapon );

STUB_WEAPON_CLASS( weapon_flaregun, Flaregun, C_BaseHLCombatWeapon );

p.s. Зел. выделил то что и так есть в коде, белым - то что я рекомендую вставить
p.s.s. Как показывает опыт то вышеописанная ошибка может появится не всегда, но чтобы её избежать то мой небольшой минигайд в помощь :)
p.s.s.s. Сиплюс, на всякий пожарный добавь мои рекоммендации в конец своего тутора, чтобы у народа не было той ошибки которую я описал 8)
Иди за мной и ступай легче ибо это священная земля...
О.Григорий
Some links :
[close]
  • *
  • Posts: 856
    • View Profile
Код этот там и так есть.
  • True Citizen
  • *
  • Posts: 237
    • View Profile
Код то есть, но даже если его раскомментить то результата то не будет, потому что там в строке указано на : WeaponFlaregun а не на Flaregun без префикса Weapon, так что... всё таки этому стоит уделить внимание.
Иди за мной и ступай легче ибо это священная земля...
О.Григорий
Some links :
[close]
  • *
  • Posts: 856
    • View Profile
Ну хз хз. Он вроде там и не закомментирован даже, и указано именно на Flaregun. Не знаю, как в Source 2006.
  • True Citizen
  • *
  • Posts: 237
    • View Profile
Чтож ладно, но всё таки если у кого и будут проблемы то решение я написал.
p.s. Если что то я юзал сорцы 2007ого года и решение написал под эту версию.
Иди за мной и ступай легче ибо это священная земля...
О.Григорий
Some links :
[close]

SimplePortal 2.3.7 © 2008-2026, SimplePortal