Registration - or - Enter
CthulhuCthulhu

Модификация по рассказу Говарда Лавкравта...

24/02/2006

Вот от нечего делать я решил немножко изменить стиль игры в оригинальной хл.


  • Description
  • Link and installation

Quake strafing & DoD bobing styles

Вот от нечего делать я решил немножко изменить стиль игры в оригинальной хл.


Author/s of lesson : Ku2zoff
Views : 1418 ( +1 )
Uploaded by : Streit
Created : 04/07/2011 6:20:49 PM
Source : http://www.hlfx.ru/forum
Rating :
 ( 5 ) 
Share :


Available following translations : | russian |

Всем превед! Вот от нечего делать я решил немножко изменить стиль игры в оригинальной хл. Сделать его динамичнее. Вобщем, это несложно, но после этого играть становится приятнее. Итак вот вам тутор по наклонам во время стрейфов и стилю качания оружия как в Day of Defeat. Вся работа проводится на клиентской стороне.

Откройте view.cpp в cl_dll и спуститесь до функции V_CalcViewRoll. В её начало добавьте две новые сторчки:

Code:

extern cvar_t *cl_rollspeed;
extern cvar_t *cl_rollangle;

Затем удалите строчки:

Code:

float side;

и

Code:

side = V_CalcRoll ( viewentity->angles, pparams->simvel, pparams->movevars->rollangle, pparams->movevars->rollspeed );

после замените строку

Code:

pparams->viewangles[ROLL] += side;

на

Code:

pparams->viewangles[ROLL] = V_CalcRoll (pparams->viewangles, pparams->simvel, cl_rollangle->value, cl_rollspeed->value ) * 4;

Теперь при стрейфах экран будет наклоняться в стиле Quake или DMC. Число 4 вы можете изменить по своему вкусу, это коэффициент наклона, то есть чем больше это значение, тем сильнее наклоняется экран.

Осталось только задекларировать две новые переменные cl_rollspeed и cl_rollangle.

Идите в hud.cpp и где-нибудь после заголовочных файлов добавьте две новые строки:

Code:

cvar_t *cl_rollspeed;
cvar_t *cl_rollangle;
Потом промотайте вниз до void CHud

Init( void ) и воткните туда

Code:

cl_rollangle = gEngfuncs.pfnRegisterVariable ( "cl_rollangle", "0.65", FCVAR_CLIENTDLL|FCVAR_ARCHIVE );
cl_rollspeed = gEngfuncs.pfnRegisterVariable ( "cl_rollspeed", "300", FCVAR_CLIENTDLL|FCVAR_ARCHIVE );

На этом наклоны закончены. Переходим к качанию оружия, так называемому cl_bob.

Откройте view.cpp и в функции void V_CalcNormalRefdef ( struct ref_params_s *pparams ) замените:

Code:

// Let the viewmodel shake at about 10% of the amplitude
gEngfuncs.V_ApplyShake( view->origin, view->angles, 0.9 );

for ( i = 0; i < 3; i++ )
{
   view->origin[ i ] += bob * 0.4 * pparams->forward[ i ];//viewmodel раскачивается вперёд-назад
}
view->origin[2] += bob;

На вот это:

Code:

// Let the viewmodel shake at about 10% of the amplitude
gEngfuncs.V_ApplyShake( view->origin, view->angles, 0.9 );

for ( i = 0; i < 3; i++ )
{
   view->origin[ i ] += bob * 0.4 * pparams->right[ i ];//viewmodel раскачивается вправо-влево
}
view->origin[2] += bob;

Число 0.4 это амплитуда раскачивания. Для тех, кто не знает физику это насколько сильно модель оружия будет отклоняться в сторону.

Вот и всё. Теперь осталось скомпилить client.dll и насладиться большей динамичностью игры.



Similar1. Исходный код ножа - weapon_knife (Нож) с двумя режимами атаки: Slash и Stab.
2. Спрыгивающий Headcrab - Наверняка каждый, кто поиграл в Half-Life2 хотел, чтобы хедкрабы спрыгивали с зомбяков и в первом Half-Life
3. Летающие бочки и trigger_push - Все, кто хотя бы один раз прошел Hl1 наверняка знает, что на карте c2a5 (там где плотина) есть такие прикольные бочки, которые подскакивают вверх и там взрываются.
4. Цвет HUD - Цвет HUD
5. Сохранение анимаций - как сделать так чтобы анимации на оружии(допустим) сохранялись, например все помнят КС вот там был Usp
6. Создание КООП,смена карт аля сингл - Сдесь я расскажу как разрешить синглплеерные скрипты в мултиплеере!
7. Изменение цвета HUD'а(полное)! - Изменение цвета HUD'а(полное)! Но прицелы придётся переделывать вам самим! Сдесь я перевевёл туториал с twhl.info на русский язык!
Ссылки на объект
Полная ссылка на текущем языке :
Короткая ссылка :
Ссылка на превью-картинку :
Ссылка на картинку в полном размере :
Ссылка для вашего форума или сайта
BB код ссылка:
BB код ссылка с картинкой :
BB код картинки :
HTML код ссылка:
HTML код ссылка с картинкой :
HTML код картинки :
Neoner 11/02/2011, 4:32:14 PM is writing :
#1
Автор, выложи пожалуйста cpp что ты изменял, а то у меня при компиляции ошибку пишет(
stepanium 01/22/2016, 10:02:57 AM is writing :
#2
Отличный туториал, спасибо, помог.
You cannot comment, because you are not registered.
    Default Silver Colts
    The SpecialistsDefault Silver Colts
    OldQUAD Colt 1911 (5 skins)
    The SpecialistsOldQUAD Colt 1911 (5 skins)
    Jo's Desert Eagles (Bakuretsu Tenshi)
    The SpecialistsJo's Desert Eagles (Bakuretsu Tenshi)
    Лифт
    Half-Life 2Лифт