jeudi 24 décembre 2009

Wilson Chronicles - Media Special de Noël



La petite équipe de Wilson Chronicles vous souhaite de joyeuses fêtes en cette fin d'année 2009.

Un petit résumé de l'histoire de Wilson Chronicles pour ce qui n'auraient pas suivit :

Vous êtes le Major Darren Wilson, travaillant dans la division recherches militaires du complexe souterrain de Black Mesa.
Puis arrive un accident qui transforme vite Black Mesa en un champ de ruines où militaires et aliens s’affrontent...
En tant que rescapé de ce désastre, vous devez maintenant regagner la surface à tout prix.
Mais vous n’êtes pas au bout de vos surprises...


Maintenant place à la Media Release :

Oubliez tout ce dont vous avez pu voir auparavant à propos de Wilson Chronicles.
Tout ce que vous verrez dans cette Nouvelle Media "Spécial Noël" est tout neuf !
Les maps ont été remaniés avec finesse depuis les précédentes Média, le rendu est quant à lui nettement meilleur.




Pour ce qui est des models du jeu, le joueur s'offre de nouvelles armes (deux d'entre elles sont présenté dans cette Media).
Il pourra être libre de viser grâce à l'ironsight qui a été récemment ajouté par un codeur de passage dans le mod.



La version du mod actuelle est la version "Alpha 5", cette version est beaucoup plus potable que les précédentes versions.
Elle assure une meilleure qualité des maps dont son gameplay, elle dispose aussi d'un meilleur code Source (celui ci à été mis à jour).




Le mod dispose de plusieurs "Easters eggs', déjà présent dans certaines maps comme le model de jeu 'Sackboy' ou encore la fausse marque 'Corsikan Cola' écrite sur le distributeur de cannettes.



Une Foire Aux Questions (FAQ) est disponible ici

La petite équipe du mod a pu accueillir dernièrement la venu de Richard Rohac en tant que programmeur pour le mod.
Celui ci s'occupe actuellement de corriger un maximum de bugs et de rendre au plus près l'ambiance que l'on trouve dans Half-Life comme par exemple le système du longjump, l'ajout des Black Ops et des Alien Grunt.

N'oubliez pas de voter pour votre mod préféré aux Moddb Awards cette année encore !



Restez connectés pour la prochaine Media Release !

Dernière édition : 2011

vendredi 4 décembre 2009

What I Found 2009, à nouveau mais en version Ultimate !

Pour le fun en soirée j'ai édité la dernière musique que j'avais réalisé sur le blog (en octobre), et ça donne ceci :



Elle bouge beaucoup plus que la version d'octobre, personnellement je prefere celle ci mais tout dépend des gouts de chacun.
Certains m'ont signalé le peu de news ces dernières temps mais il y a une raison à ça.

En ce début d'année, le moral était au plus bas à causes de certaines choses lié au modding et à ma vie personnelle alors je reviendrai doublement en 2010 même si en ce fin d'année je vous prépare une surprise, alors restez connecté !

N'hésitez pas à laisser vos questions et vos avis, cela fait toujours plaisir.

Dernière édition le 7 juin 2011.

vendredi 23 octobre 2009

Version 2009 pour What I Found

J'ai pu me permettre avec le temps libre que j'ai de faire un nouveau Mix avec toujours cette fois ci FL Studio.
Cette musique est basé sur "What I Found" de "Solic Inc." avec une durée d'environs 4 minutes.

Après avoir rapidement fait une couverture pour cette nouvelle musique, je me suis vite précipité pour mettre la musique sur Youtube, Dailymotion et le blog.

La musique est disponible ci-dessous, elle ne dure pas moins de 7 minutes :



Dernière édition : 2011

lundi 31 août 2009

City 17 : triste nouvelle

Vous l'aurez peut-être constater mais la nouvelle version de City 17 n'est pas disponible alors qu'elle aurai du l'être pour cette fin du mois.

City 17 ne sortira pas aujourd'hui ni même dans les prochains jours.

La raison de cette pause précipitée est simple. Il est difficile de gérer 2 projets en même temps, c'est à dire à la fois Wilson Chronicles et City 17.
Je n'annonce pas une mort incertaine pour City 17 mais une mise au repos. Lorsque je serai plus libre pour le mod je reviendrai sur ma décision mais en attendant Wilson Chronicles m'attend et 2010 doit être une année pour lui.

A bientôt, j'espère accomplir mes engagements.

Dernière édition : 2011

dimanche 9 août 2009

Wilson Chronicles & son groupe Steam Community



Une courte news annonçant que Wilson Chronicles se refait une petite beauté depuis en ce qui concerne son contenu et son mapping.

Il en va de soit pour le groupe communautaire du mod, pour les intéressés et les anciens membres l'inscription au groupe se passe par ici

A très bientôt pour la prochaine Media-Release, et pour de futures révélations !

Dernière édition : 2011

samedi 25 juillet 2009

Du nouveau pour City 17



Ça bouge pour City 17 et pas qu'un peu !
Après une news où vous étiez informé de l'arsenal du joueur, on peut apercevoir la liste des maps du mod ci-dessous :

* e3_bugbait
* e3_c17_01
* e3_c17_02
* e3_end
* e3_hydra
* e3_industrial
* e3_lab
* e3_meathook (Non déterminée)
* e3_phystown
* e3_prison_2
* e3_prison_4
* e3_seacliff
* e3_seafloor
* e3_strider
* e3_techdemo_6
* e3_techdemo01 (Non déterminée)
* e3_terminal
* e3_town
* e3_under_02
* demo_artic
* demo_material
* demo_matgallery
* demo_rubble

Voici quelques nouvelles captures de City 17, on peut y voir E3_Bugbait dans sa version Orange Box avec le HDR.





Le mod est toujours prévu pour la fin du mois d'Août mais rien n'est sûr, ce n'est qu'une estimation incertaine.

J'espère que vous aimez cette Media, si ce n'est pas le cas faites part de vos mécontentements dans les commentaires.

Dernière édition : 2011

mardi 21 juillet 2009

Wilson Chronicles : le Trailer Officiel

Un petit rappel de Wilson Chronicles :

Vous êtes le Major Darren Wilson, travaillant dans la division recherches militaires du complexe souterrain de Black Mesa.
Puis arrive un accident qui transforme vite Black Mesa en un champ de ruines où militaires et aliens s’affrontent...
En tant que rescapé de ce désastre, vous devez maintenant regagner la surface à tout prix.
Mais vous n’êtes pas au bout de vos surprises...


Comme le dit le titre, le Trailer Officiel qui est le premier Trailer du mod est disponible !
Vous pourrez y voir différente actions du jeu, actions qui pourront être modifié au cours du temps vu que le mod n'est pas encore terminé.



Ce premier trailer de Wilson Chronicles est basé sur le contenu de l'Alpha 4 alors qu'actuellement le mod est en version 4.1
Cette nouvelle inclut de nouveaux monstres, NPC. Aussi, elle fixe un maximum d'erreurs perçu dans la précédente Alpha.

Le Trailer est disponible en HD720p à cette adresse

Dernière édition : 2011

lundi 29 juin 2009

City 17 fait son come-back !

Vous vous souvenez peut-être de «City 17» paru pour la première fois le 27 décembre 2005 ?

Cette version est tellement vieille que j'imagine qu'elle reste introuvable sur la toile.

City 17 est devenu plus sérieux lorsque l'équipe du mod « Taturana's » décida de me donner les éléments de leur mod, c'est à dire models, coding, sons, etc...

C'est alors que City 17, en version 3.0, aurait du apparaitre peu de temps après la version 2 du mod et juste avant la grande sortie de « Smod » que beaucoup doivent connaitre.
Cette version ne put sortir pour cause informatique, les fichiers étant irrécupérables cette version fut enterré rapidement.

La version 4.0 quant à elle est sortie il y a environs 1 an.
Elle utilise le code de « Taturana's » mais cette version a beaucoup de problèmes, elle crash et elle est surtout dépassée par les événements.

Le retour de « City 17 » est annoncé !

L'arrivée prochaine de la nouvelle version du mod est prévue pour bientôt, il ne me reste plus qu'à réglé quelques soucis cotés armes et models.
Ainsi je ferai en sorte que les maps présentés dans la version 4.0 de City 17 puissent fonctionner sans problème dans cette nouvelle version qui utilisera le moteur de la Orange Box.

En attendant, vous pouvez voir le nouveau logo du mod créé par « Eaglesg »



Voici la liste des armes qui est actuellement dans le mod à ce stade :

357
AK47
AR2
PHEROPODE
CMP150
ARBALETE
GRENADE
MAIN
MP5K
OICW
GRAVITY GUN
TAUCANNON
9MM
PYTHON
RPG
FUSIL A POMPE (2 fusils sont disponible)


Pour le moment il y en a pas mal, il se peut qu'il y en est d'autres.

En attendant, le mod n'a toujours pas d'histoire vu que celui ci retrace plus ou moins le parcours vue avec Half-Life 2 Beta.

City 17 devrait quand à lui sortir pendant ces vacances, plus exactement fin Aout.

Dernière édition : 2011

vendredi 12 juin 2009

[TUTO]Mettre un model pour le cadavre du joueur dès sa mort

Ce petit tutorial va vous permettre de mettre un model au joueur, c'est à dire que lorsque le joueur sera mort, dans le jeu vous aurez le model prédéfini qui tombera comme un ragdoll

Un peu comme Half-Life 2 Deathmatch alors que Half-Life 2 ne propose pas ça.

Ce code a été réalisé pour la Orange Box.

Les logiciels requis sont :

Visual Studio C++ 2008 Express Édition (La version Express Édition est amplement suffisante, elle est en français d'ailleurs)
Notepad++ (Notepad++ est un outil sympa pour l'édition rapide de vos fichiers .cpp et .h)

Réglages :

Les réglages pour Visual Studio C++ 2008 Express Édition sont ci-dessous :

Ouvrez Visual Studio c++ 2008 Express Édition, ouvrez ensuite votre projet game_episodic-2005
En haut à droite se trouve une barre avec 'Debug' 'WIN32', (image ci-dessous), maintenant un clic gauche sur 'Debug' ou 'WIN32' (c'est la même chose), 'Gestionnaire de configurations'.



Faites le nécessaire pour que l'image que j'ai mis en dessous soit la même que dans votre tableau.

C'est à dire :

Configuration de la solution active : Release // Plateforme de la solution active : Win32

client_episodic-2005 // Release // Win32 // une case est ici, elle faut qu'elle soit remplit
server_episodic-2005 // Release // Win32 // une case est ici, elle faut qu'elle soit remplit




Une fois terminé, nous pouvons maintenant fixé un problème du code qui est d'ailleurs très connu.
Le problème est connu pour ne pas compilé les .dll, mais il existe une solution et là voici :

A la ligne 348 du fichier client/c_vguiscreen.cpp, vous devriez avoir ceci :

dist = c_x / tan( M_PI * scaled_fov / 360.0 );


Pour ensuite le remplacé par ceci :

float dist_denom = tan( M_PI * scaled_fov / 360.0f );
dist = c_x / dist_denom;




Sauvegardez ensuite.

Partie Coding :


HL2_Player.cpp

Ouvrez dans Visual Studio C++ 2008 Express Édition le fichier HL2_Player.cpp qui se trouve dans Server\Source Files\HL2 DLL de votre fichier server_episodic-2005 du projet game_episodic-2005

Une fois ouvert, repérez ceci :



Pour ensuite ajouté la ligne surligné en rouge comme présenté ci-dessous qui est celle ci :

PrecacheModel( "models/barney.mdl" );




Toujours dans votre HL2_Player.cpp, rendez-vous comme ci-dessous aux lignes suivantes :



Vous pourrez voir 'player.mdl', remplacez le par 'barney.mdl' vu que plus haut on a définit barney.mdl dans PrecacheModel.
Évidement si vous voulez un autre model, remplacez barney.mdl par le model que vous voulez comme par exemple :

breen.mdl
alyx.mdl


Nous allons rajouté de nouvelles lignes de codes qui permettront au joueur d'avoir ses animations lorsqu'on aura la commande thirdperson activé dans le jeu.

Il vous suffit d'ajouté ceci dans votre HL2_Player.cpp :

// Set the activity based on an event or current state
void CHL2_Player::SetAnimation( PLAYER_ANIM playerAnim )
{
int animDesired;

float speed;

speed = GetAbsVelocity().Length2D();

if ( GetFlags() & ( FL_FROZEN | FL_ATCONTROLS ) )
{
speed = 0;
playerAnim = PLAYER_IDLE;
}

Activity idealActivity = ACT_RUN;

// This could stand to be redone. Why is playerAnim abstracted from activity? (sjb)
if ( playerAnim == PLAYER_JUMP )
{
idealActivity = ACT_JUMP;
}
else if ( playerAnim == PLAYER_DIE )
{
if ( m_lifeState == LIFE_ALIVE )
{
return;
}
}
else if ( playerAnim == PLAYER_ATTACK1 )
{
if ( GetActivity( ) == ACT_HOVER ||
GetActivity( ) == ACT_SWIM ||
GetActivity( ) == ACT_HOP ||
GetActivity( ) == ACT_LEAP ||
GetActivity( ) == ACT_DIESIMPLE )
{
idealActivity = GetActivity( );
}
else
{
idealActivity = ACT_GESTURE_RANGE_ATTACK1;
}
}
else if ( playerAnim == PLAYER_RELOAD )
{
idealActivity = ACT_GESTURE_RELOAD;
}
else if ( playerAnim == PLAYER_IDLE || playerAnim == PLAYER_WALK )
{
if ( !( GetFlags() & FL_ONGROUND ) && GetActivity( ) == ACT_HL2MP_JUMP ) // Still jumping
{
idealActivity = GetActivity( );
}
/*
else if ( GetWaterLevel() > 1 )
{
if ( speed == 0 )
idealActivity = ACT_HOVER;
else
idealActivity = ACT_SWIM;
}
*/
else
{
if ( GetFlags() & FL_DUCKING )
{
if ( speed > 0 )
{
idealActivity = ACT_WALK_CROUCH;
}
else
{
idealActivity = ACT_COVER_LOW; //ACT_IDLE_CROUCH;
}
}
else
{
if ( speed > 0 )
{
//alexj - fixed a bug here (walk and run were swapped)
idealActivity = m_fIsSprinting ? ACT_RUN : ACT_WALK;
}
else
{
idealActivity = ACT_IDLE;
}
}
}

//idealActivity = TranslateTeamActivity( idealActivity );
}

if ( idealActivity == ACT_GESTURE_RANGE_ATTACK1 )
{
RestartGesture( Weapon_TranslateActivity( idealActivity ) );

// FIXME: this seems a bit wacked
Weapon_SetActivity( Weapon_TranslateActivity( ACT_RANGE_ATTACK1 ), 0 );

return;
}
else if ( idealActivity == ACT_GESTURE_RELOAD )
{
RestartGesture( Weapon_TranslateActivity( idealActivity ) );
return;
}
else
{
SetActivity( idealActivity );

animDesired = SelectWeightedSequence( Weapon_TranslateActivity ( idealActivity ) );

if (animDesired == -1)
{
animDesired = SelectWeightedSequence( idealActivity );

if ( animDesired == -1 )
{
animDesired = 0;
}
}

// Already using the desired animation?
if ( GetSequence() == animDesired )
return;

m_flPlaybackRate = 1.0;
ResetSequence( animDesired );
SetCycle( 0 );
return;
}

// Already using the desired animation?
if ( GetSequence() == animDesired )
return;

//Msg( "Set animation to %d\n", animDesired );
// Reset to first frame of desired animation
ResetSequence( animDesired );
SetCycle( 0 );
}

HL2_Player.h

Pour finir, rendez-vous dans HL2_Player.h
et cherchez les lignes suivantes :

bool CanZoom( CBaseEntity *pRequester );
void ToggleZoom(void);
void StartZooming( void );
void StopZooming( void );
bool IsZooming( void );
void CheckSuitZoom( void );


Auxquelles vous remplacerez par celle ci :

bool CanZoom( CBaseEntity *pRequester );
void ToggleZoom(void);
void StartZooming( void );
void StopZooming( void );
bool IsZooming( void );
void CheckSuitZoom( void );
void SetAnimation( PLAYER_ANIM playerAnim );


Sauvegardez ensuite.

Compilation :

Phase finale, la compilation

Maintenez un clique droit sur server_episodic-2005 // Générer

Le fichier server.dll se trouvera donc dans src\game\server\bin

Dans le jeu :



L'image présenté représente le model hgrunt.mdl

Dernière édition : 2011

mardi 28 avril 2009

[TUTO]Mettre les mains du joueur comme arme

Je vais donc vous expliquez comment ajouter une nouvelle arme qui s'agit enfaites des mains du joueur, vous pourrez ensuite donné des coups de poings avec ceux là.
Pour commencer je vais vous expliquez quel logiciel est a utiliser.

Ce code a été réalisé pour la Orange Box.


Les logiciels requis sont :

Visual Studio C++ 2008 Express Édition (La version Express Édition est amplement suffisante, elle est en français d'ailleurs)
Notepad++ (Notepad++ est un outil sympa pour l'édition rapide de vos fichiers .cpp et .h)

Réglages :

Maintenant passons au réglage, après avoir mis Visual Studio C++ 2008 Express Édition il faut le régler !
Et oui c'est pas si facile...

Donc ouvrez Visual Studio c++ 2008 Express Édition, ouvrez votre projet game_episodic-2005
En haut à droite se trouve une barre avec 'Debug' 'WIN32', (image ci-dessous), maintenant un clic gauche sur 'Debug' ou 'WIN32' (c'est la même chose), 'Gestionnaire de configurations'.



Faites le nécessaire pour que l'image que j'ai mis en dessous soit la même que dans votre tableau.

C'est à dire :

Configuration de la solution active : Release // Plateforme de la solution active : Win32

client_episodic-2005 // Release // Win32 // une case est ici, elle faut qu'elle soit remplit
server_episodic-2005 // Release // Win32 // une case est ici, elle faut qu'elle soit remplit




Une fois terminé, nous pouvons maintenant fixé un problème du code qui est d'ailleurs très connu.
Le problème est connu pour ne pas compilé les .dll, mais il existe une solution et là voici :

A la ligne 348 du fichier client/c_vguiscreen.cpp, vous devriez avoir ceci :

dist = c_x / tan( M_PI * scaled_fov / 360.0 );


Pour ensuite le remplacé par ceci :

float dist_denom = tan( M_PI * scaled_fov / 360.0f );
dist = c_x / dist_denom;




Sauvegardez ensuite.

Modification des fichiers de votre mod :

Cfg

Maintenant que tout est opérationnelle on passe aux choses sérieuses.
Ouvrez le fichier skill.cfg qui se trouve dans le dossier cfg de votre mod, si il n'est pas crée prenez celui de Half-Life 2 et copiez le dedans pour ensuite l'ouvrir et faire les modifications qui vont suivre.

Une fois dedans, cherchez ceci :

// =================
// WEAPONS
// =================



Ici il vous faudra ajouter ceci :

sk_plr_dmg_hand "5"
sk_npc_dmg_hand "5"



Cela vous donnera a peu près une chose comme ça dans votre fichier skill.cfg :

// =================
// WEAPONS
// =================

sk_plr_dmg_hand "5"
sk_npc_dmg_hand "5"


Sauvegardez.

Ressource

Ouvrez le fichier nom_de_votre_mod_french.txt qui se trouve dans le dossier ressource de votre mod, si il n'est pas crée prenez celui de Half-Life 2 et copiez le dedans pour ensuite l'ouvrir et faire les modifications qui vont suivre.

Une fois dedans, cherchez ceci :

"HL2_GravityGun" "PISTOLET ENERGETIQUE"
"HL2_Crowbar" "PIED DE BICHE"


Ajoutez donc :

"HL2_HAND" "MAIN"


Au bon endroit, qu'il soit placé en bout ou au début devant le gravity gun il n'y a aucune importance.

Sauvegardez.

Script

Dans cette partie, vous devez créer un nouveau fichier texte (.txt), assignez lui comme nom weapon_hand.txt
Ensuite, ouvrez le et copiez ceci :

// Hand

WeaponData
{
// Weapon data is loaded by both the Game and Client DLLs.
"printname" "#HL2_Hand"
"viewmodel" "models/weapons/v_hand.mdl"
//"playermodel" "models/weapons/w_crowbar.mdl"
"anim_prefix" "crowbar"
"bucket" "0"
"bucket_position" "1"

"clip_size" "-1"
"primary_ammo" "None"
"secondary_ammo" "None"

"weight" "0"
"item_flags" "0"

// Sounds for the weapon. There is a max of 16 sounds per category (i.e. max 16 "single_shot" sounds)
SoundData
{
"single_shot" "Weapon_Crowbar.Single"
"melee_hit" "Weapon_Crowbar.Melee_Hit"
"melee_hit_world" "Weapon_Crowbar.Melee_HitWorld"
}

// Weapon Sprite data is loaded by the Client DLL.
TextureData
{

"crosshair"
{
"font" "Crosshairs"
"character" "Q"
}
"autoaim"
{
"file" "sprites/crosshairs"
"x" "0"
"y" "48"
"width" "24"
"height" "24"
}
}
}


Sauvegardez.

Models

Coté models, sans ce que je vais vous donner vous allez ne pouvoir rien faire vu que les mains de Half-Life 2 n'ont pas d'animations de coups de poings.
Donc téléchargez les nouveaux models à cette adresse

Une fois téléchargé, il suffit simplement de mettre les models dans models/weapons

Partie Coding de votre Mod :

c_weapon_stubs_hl2.cpp

Ouvrez dans Visual Studio C++ 2008 Express Édition le fichier c_weapon_stubs_hl2.cpp qui se trouve dans Client\Source Files\HL2 DLL de votre fichier client_episodic-2005 du projet game_episodic-2005

Une fois ouvert, repérez la ligne STUB_WEAPON_CLASS( weapon_crowbar, WeaponCrowbar, C_BaseHLBludgeonWeapon ); pour ensuite ajouter dessous cette ligne :

STUB_WEAPON_CLASS( weapon_hand, WeaponHand, C_BaseHLBludgeonWeapon );


Ce qui vous donnera ce résultat :



Player.cpp

Ouvrez dans Visual Studio C++ 2008 Express Édition le fichier player.cpp qui se trouve dans Server\Source Files\HL2 DLL de votre fichier server_episodic-2005 du projet game_episodic-2005

Une fois ouvert, repérez la ligne case 101, du moins effectuez une recherche avec ctrl + f pour ensuite ajouter dessous cette ligne :

GiveNamedItem( "weapon_hand" );


Ce qui donne ce résultat une fois la ligne ajouté :



Sauvegardez ensuite.

Weapon_hand.h

Cliquez sur le clic droit sur server_episodic-2005, ensuite cliquez sur l'onglet ajouté qui à apparu, Nouvel élément...



Ensuite vous avez un tableau, (l'image le représente ci-dessous) cliquez une fois sur Fichier d'en-tête (.h), pour que après dans Nom : vous écrivez weapon_hand pour ensuite cliquez sur ajouter



Maintenant, ouvrez votre fichier weapon_hand.h dans Visual Studio C++ 2008 Express Édition
Vous remarquez que c'est vide, pour cela j'ai un remède.

Il suffit d'ajouter ceci :

//========= Copyright © 1996-2005, Valve Corporation, All rights reserved. ============//
//
// Purpose:
//
//=============================================================================//

#ifndef WEAPON_HAND_H
#define WEAPON_HAND_H

#include "basebludgeonweapon.h"

#if defined( _WIN32 )
#pragma once
#endif

#ifdef HL2MP
#error weapon_hand.h must not be included in hl2mp. The windows compiler will use the wrong class elsewhere if it is.
#endif

#define HAND_RANGE 75.0f
#define HAND_REFIRE 0.4f

//-----------------------------------------------------------------------------
// CWeaponHand
//-----------------------------------------------------------------------------

class CWeaponHand : public CBaseHLBludgeonWeapon
{
public:
DECLARE_CLASS( CWeaponHand, CBaseHLBludgeonWeapon );

DECLARE_SERVERCLASS();
DECLARE_ACTTABLE();

CWeaponHand();

float GetRange( void ) { return HAND_RANGE; }
float GetFireRate( void ) { return HAND_REFIRE; }

void AddViewKick( void );
float GetDamageForActivity( Activity hitActivity );

virtual int WeaponMeleeAttack1Condition( float flDot, float flDist );
void SecondaryAttack( void ) { return; }

// Animation event
virtual void Operator_HandleAnimEvent( animevent_t *pEvent, CBaseCombatCharacter *pOperator );

private:
// Animation event handlers
void HandleAnimEventMeleeHit( animevent_t *pEvent, CBaseCombatCharacter *pOperator );
};

#endif // WEAPON_HAND_H


Sauvegardez ensuite.

Weapon_hand.cpp

Cliquez sur le clic droit sur server_episodic-2005, ensuite cliquez sur l'onglet ajouté qui à apparu, Nouvel élément...
Ensuite vous avez un tableau, cliquez une fois sur Fichier C++ (.cpp), pour que après dans Nom : vous écrivez weapon_hand pour ensuite cliquez sur ajouter
Maintenant, ouvrez votre fichier weapon_hand.cpp dans Visual Studio C++ 2008 Express Édition

Et mettez y ceci :

//========= Copyright © 1996-2005, Valve Corporation, All rights reserved. ============//
//
// Purpose: Hand
//
// $NoKeywords: $
//=============================================================================//

#include "cbase.h"
#include "basehlcombatweapon.h"
#include "player.h"
#include "gamerules.h"
#include "ammodef.h"
#include "mathlib/mathlib.h"
#include "in_buttons.h"
#include "soundent.h"
#include "basebludgeonweapon.h"
#include "vstdlib/random.h"
#include "npcevent.h"
#include "ai_basenpc.h"
#include "weapon_hand.h"

// memdbgon must be the last include file in a .cpp file!!!
#include "tier0/memdbgon.h"

ConVar sk_plr_dmg_hand ( "sk_plr_dmg_hand","0");
ConVar sk_npc_dmg_hand ( "sk_npc_dmg_hand","0");

//-----------------------------------------------------------------------------
// CWeaponHand
//-----------------------------------------------------------------------------

IMPLEMENT_SERVERCLASS_ST(CWeaponHand, DT_WeaponHand)
END_SEND_TABLE()

#ifndef HL2MP
LINK_ENTITY_TO_CLASS( weapon_hand, CWeaponHand );
PRECACHE_WEAPON_REGISTER( weapon_hand );
#endif

acttable_t CWeaponHand::m_acttable[] =
{
{ ACT_MELEE_ATTACK1, ACT_MELEE_ATTACK_SWING, true },
{ ACT_IDLE, ACT_IDLE_ANGRY_MELEE, false },
{ ACT_IDLE_ANGRY, ACT_IDLE_ANGRY_MELEE, false },
};

IMPLEMENT_ACTTABLE(CWeaponHand);

//-----------------------------------------------------------------------------
// Constructor
//-----------------------------------------------------------------------------
CWeaponHand::CWeaponHand( void )
{
}

//-----------------------------------------------------------------------------
// Purpose: Get the damage amount for the animation we're doing
// Input : hitActivity - currently played activity
// Output : Damage amount
//-----------------------------------------------------------------------------
float CWeaponHand::GetDamageForActivity( Activity hitActivity )
{
if ( ( GetOwner() != NULL ) && ( GetOwner()->IsPlayer() ) )
return sk_plr_dmg_hand.GetFloat();

return sk_npc_dmg_hand.GetFloat();
}

//-----------------------------------------------------------------------------
// Purpose: Add in a view kick for this weapon
//-----------------------------------------------------------------------------
void CWeaponHand::AddViewKick( void )
{
CBasePlayer *pPlayer = ToBasePlayer( GetOwner() );

if ( pPlayer == NULL )
return;

QAngle punchAng;

punchAng.x = random->RandomFloat( 1.0f, 2.0f );
punchAng.y = random->RandomFloat( -2.0f, -1.0f );
punchAng.z = 0.0f;

pPlayer->ViewPunch( punchAng );
}


//-----------------------------------------------------------------------------
// Attempt to lead the target (needed because citizens can't hit manhacks with the hand!)
//-----------------------------------------------------------------------------
ConVar sk_hand_lead_time( "sk_hand_lead_time", "0.9" );

int CWeaponHand::WeaponMeleeAttack1Condition( float flDot, float flDist )
{
// Attempt to lead the target (needed because citizens can't hit manhacks with the hand!)
CAI_BaseNPC *pNPC = GetOwner()->MyNPCPointer();
CBaseEntity *pEnemy = pNPC->GetEnemy();
if (!pEnemy)
return COND_NONE;

Vector vecVelocity;
vecVelocity = pEnemy->GetSmoothedVelocity( );

// Project where the enemy will be in a little while
float dt = sk_hand_lead_time.GetFloat();
dt += random->RandomFloat( -0.3f, 0.2f );
if ( dt < dt =" 0.0f;">WorldSpaceCenter(), dt, vecVelocity, vecExtrapolatedPos );

Vector vecDelta;
VectorSubtract( vecExtrapolatedPos, pNPC->WorldSpaceCenter(), vecDelta );

if ( fabs( vecDelta.z ) > 70 )
{
return COND_TOO_FAR_TO_ATTACK;
}

Vector vecForward = pNPC->BodyDirection2D( );
vecDelta.z = 0.0f;
float flExtrapolatedDist = Vector2DNormalize( vecDelta.AsVector2D() );
if ((flDist > 64) && (flExtrapolatedDist > 64))
{
return COND_TOO_FAR_TO_ATTACK;
}

float flExtrapolatedDot = DotProduct2D( vecDelta.AsVector2D(), vecForward.AsVector2D() );
if ((flDot < penemy =" pOperator-">MyNPCPointer() ? pOperator->MyNPCPointer()->GetEnemy() : NULL;
if ( pEnemy )
{
Vector vecDelta;
VectorSubtract( pEnemy->WorldSpaceCenter(), pOperator->Weapon_ShootPosition(), vecDelta );
VectorNormalize( vecDelta );

Vector2D vecDelta2D = vecDelta.AsVector2D();
Vector2DNormalize( vecDelta2D );
if ( DotProduct2D( vecDelta2D, vecDirection.AsVector2D() ) > 0.8f )
{
vecDirection = vecDelta;
}
}

Vector vecEnd;
VectorMA( pOperator->Weapon_ShootPosition(), 50, vecDirection, vecEnd );
CBaseEntity *pHurt = pOperator->CheckTraceHullAttack( pOperator->Weapon_ShootPosition(), vecEnd,
Vector(-16,-16,-16), Vector(36,36,36), sk_npc_dmg_hand.GetFloat(), DMG_CLUB, 0.75 );

// did I hit someone?
if ( pHurt )
{
// play sound
WeaponSound( MELEE_HIT );

// Fake a trace impact, so the effects work out like a player's crowbaw
trace_t traceHit;
UTIL_TraceLine( pOperator->Weapon_ShootPosition(), pHurt->GetAbsOrigin(), MASK_SHOT_HULL, pOperator, COLLISION_GROUP_NONE, &traceHit );
ImpactEffect( traceHit );
}
else
{
WeaponSound( MELEE_MISS );
}
}


//-----------------------------------------------------------------------------
// Animation event
//-----------------------------------------------------------------------------
void CWeaponHand::Operator_HandleAnimEvent( animevent_t *pEvent, CBaseCombatCharacter *pOperator )
{
switch( pEvent->event )
{
case EVENT_WEAPON_MELEE_HIT:
HandleAnimEventMeleeHit( pEvent, pOperator );
break;

default:
BaseClass::Operator_HandleAnimEvent( pEvent, pOperator );
break;
}
}
Sauvegardez ensuite.

Compilation :

On y est presque, c'est presque terminé.
Pour cela il vous reste la compilation du code tout entier.

Maintenez un clique droit sur client_episodic-2005 // Générer
Maintenez un clique droit sur server_episodic-2005 // Générer

Le fichier client.dll se trouvera donc dans src\game\client\bin
Le fichier server.dll se trouvera donc dans src\game\server\bin

Dans le jeu :



Posez vos questions et déposez vos problèmes ou bien contactez moi directement si vous le souhaitez.

Dernière édition : 2011

dimanche 19 avril 2009

De la musique !

J'ai le plaisir de vous présentez ci-dessous 3 nouveaux remix's que j'ai pu réalisé dernièrement.

Il s'agit de "Blake Reary fear. Frere D'Arme - Hanging" et de "Blake Reary fear. Frere D'Arme - Nowhere near (Tempo 110)" , d'ailleurs ce sont les deux premières présenté ci-dessous :





Pour terminé en beauté, je vous laisse découvrir "Solic Inc. & Frere D'Arme - What I Found Again"



Merci à tous d'être ici à suivre les news, soyez plus nombreux la prochaine fois.
A présent, j'aimerai vos avis sur les musiques.

Dernière édition : 2011

samedi 14 février 2009

Nouvelle Année, nouveau logo, nouvelles images pour Wilson Chronicles

Cela faisait un petit moment qu'on entendait plus parler de ce cher Darren Wilson travaillant à la Division Recherches Militaires de Black Mesa.

Vous l'aurez remarqué sur le site officiel, le mod se dote d'un nouveau logo, pour des raisons de "compatibilité avec l'histoire".

Vous remarquerez aussi sur le site officiel de Wilson Chronicles une section dédiée à un futur projet nommé 'Wilson Chronicles 2', Eaglesg ne s'est pas prononcé sur ce sujet.
Plus d'informations devraient arriver bientôt si on se fie à ce qu'il y a écrit sur la page.

Le mod Source Wilson Chronicles: The Second Encounter, quant à lui propose 5 nouvelles images. Nouvelles images que vous trouverez similaires aux précédentes images présentés dans les deux dernières Media Release.
Même si celles-ci montrent un avancement mineur, c'est à dire certains détails ajoutés ou des bugs graphiques et jouables supprimés.





L'équipe du mod Source recherche d'urgence les personnes suivantes:

* Codeur
* Animateur
* Modeleur
* Textureur
* Mappeur


Dernière édition : 2011

dimanche 25 janvier 2009

Un pack de textures pour les mains

Cela fait maintenant une année que le blog est ouvert, alors pour fêter ça je vous propose de télécharger une petite création que j'ai pu réalisé à partir d'un vieux skin de main crée par Antonidos

Le pack contient les couleurs des mains suivantes :
Bleu
Cyan
Vert
Gris
Rouge
Violet
Jaune
Images:






Téléchargement :

H.E.V. 4 hands (7 skins)

Dernière édition : 2011