Willkommen ~Gast!
Registrieren || Einloggen || Hilfe/FAQ || Staff
Probleme mit der Registrierung im Forum? Melde dich unter registerEin Bild.
Autor Beitrag
000
22.02.2002, 17:01
Da_Invader



Was mich an HL und anderen Spielen immer nervt ist das man einem in den kleinen Zeh schiesst und der trotzdem nach ein paar schüssen stirbt obwohl das jeder normale Mensch überleben würde!

Nun meine Frage : Ist es möglich es in einem HL Mod so einzustellen das man einem in bestimmten Trefferzonen nur einen bestimmten Anteil an Health abziehen kann. Dann is das Körperteil halt kaputt ?

geht das ?

--

Operation Peacekeeper

zum Seitenanfang zum Seitenende Profil || Suche
001
22.02.2002, 17:05
Exec



ja sicher

--

"selbermachen rockt am meisten :D" - -LeJean-

zum Seitenanfang zum Seitenende Profil || Suche
002
22.02.2002, 19:35
R2-D2



in hl gibt es 8 koerpertrefferzonen
head
chest
stomach
leftarm
rightarm
leftleg
rightleg
generic

--

®2-D2
Believe in Retrieve :)

Projects:
Monkey-Strike (Leader/Coder)
Water Wars (Head Coder)
Mixed Mod (Coder)

zum Seitenanfang zum Seitenende Profil || Suche
003
23.02.2002, 14:23
[GOD]ShadowLord



sogar im normalen hl werden -begrenzt- trefferzonen genutzt.
(kopftreffer machen 3-fachen schaden)

--

they come in peace - and go in pieces

zum Seitenanfang zum Seitenende Profil || Suche
004
23.02.2002, 14:25
[GOD]ShadowLord



sogar im normalen hl werden -begrenzt- trefferzonen genutzt.
(kopftreffer machen 3-fachen schaden)
nimm dir mal die difficulty.txt bzw. den entsprechenden code vor - da kannst du die modifiers einstellen.

--

they come in peace - and go in pieces

zum Seitenanfang zum Seitenende Profil || Suche
005
23.02.2002, 14:26
[GOD]ShadowLord



?? sorry,doublepost war nicht beabsichtigt.

--

they come in peace - and go in pieces

zum Seitenanfang zum Seitenende Profil || Suche
006
23.02.2002, 14:38
Da_Invader



Ich mein eigentlich das man einem wenn man einem in den Fuß schiesst man dem dann nur bis ca. 70% was abziehen kann und dann nichts mehr.
Egal wie oft man drauf schiesst.
Dann ist halt schluss.

--

Operation Peacekeeper

zum Seitenanfang zum Seitenende Profil || Suche
007
23.02.2002, 18:52
R2-D2



das meinen wir auch.
die stelle haettste ja suchen koennen, jetz wo du weisst, dass es trefferzonen gibt.
such mal in der combat.cpp(fuer npcs) und der player.cpp(fuer spieler) nach der TraceAttack funktion.
da kannste deinen code ansetzen

--

®2-D2
Believe in Retrieve :)

Projects:
Monkey-Strike (Leader/Coder)
Water Wars (Head Coder)
Mixed Mod (Coder)

zum Seitenanfang zum Seitenende Profil || Suche
008
24.02.2002, 14:20
Da_Invader



k!
danke

--

Operation Peacekeeper

zum Seitenanfang zum Seitenende Profil || Suche
009
24.02.2002, 14:39
Mexil



Quellcode:
void CBasePlayer :: TraceAttack( entvars_t *pevAttacker, float flDamage, Vector vecDir, TraceResult *ptr, int bitsDamageType)
{
if ( pev->takedamage )
{
m_LastHitGroup = ptr->iHitgroup;

switch ( ptr->iHitgroup )
{
case HITGROUP_GENERIC:
break;
case HITGROUP_HEAD:
flDamage *= gSkillData.plrHead;
break;
case HITGROUP_CHEST:
flDamage *= gSkillData.plrChest;
break;
case HITGROUP_STOMACH:
flDamage *= gSkillData.plrStomach;
break;
case HITGROUP_LEFTARM:
case HITGROUP_RIGHTARM:
flDamage *= gSkillData.plrArm;
break;
case HITGROUP_LEFTLEG:
case HITGROUP_RIGHTLEG:
//************************
// HIER DER ENTSCHEIDENE TEIL!!!
//************************
if(pev->health > 30)
flDamage *= gSkillData.plrLeg;
else
flDamage = 0;
break;
default:
break;
}

SpawnBlood(ptr->vecEndPos, BloodColor(), flDamage);// a little surface blood.
TraceBleed( flDamage, vecDir, ptr, bitsDamageType );
AddMultiDamage( pevAttacker, this, flDamage, bitsDamageType );
}
}

So sollte da funzen, dass wenn man jemanden ins Bein schiesst, dass er nur bis auf 30 Health runter geht und weiter nicht, hab's nicht getestet, sollte aber funzen....

--


Move In!

VISIT US Move In!


Dieser Beitrag wurde am 24.02.2002 um 14:39 von Mexil bearbeitet.
zum Seitenanfang zum Seitenende Profil || Suche
010
24.02.2002, 15:23
Da_Invader



danke
Prob. ich gleich mal aus.
Sowas nenne ich kompetente Hilfe !!!!

--

Operation Peacekeeper

zum Seitenanfang zum Seitenende Profil || Suche
011
24.02.2002, 16:44
Mexil



Sowas nenn ich Mundgerechte-Haepchen-vor-die-Fuesse-schmeissen *ggg* aber ich hatte ja grad nichts besseres zu tun, dann mach ich sowas doch gerne = ) hab ja auch mal angefangen = )

--


Move In!

VISIT US Move In!

zum Seitenanfang zum Seitenende Profil || Suche
012
24.02.2002, 18:47
[RMen]OneStone



Noch besser wäre in die CGameRules ein
virtual int AllowDamage(entvars_t *pevVictim, float flDamage, int iHitgroup);
zu packen das dann diese Entscheidung durchführen würde.

[code]
int CGameRules::AllowDamage(entvars_t *pevVictim, float flDamage, int iHitgroup)
{
switch(iHitgroup)
{
case HITGROUP_GENERIC:
if(pevVictim->health > 90)
return true;
break;

case HITGROUP_LEFTLEG:
case HITGROUP_RIGHTLEG:
case HITGROUP_LEFTARM:
case HITGROUP_RIGHTARM:
if(pevVictim->health -> 30)
return true;
break;

default:
return true;
}

return false;
}

ICH WILL WIEDER CODE-EINRÜCKUNGEN !!!!!!!!!!!!

--

georg-wicherski@pixel-house.net | http://www.pixel-house.net/ - Coding Resource| http://www.google.de/


Dieser Beitrag wurde am 24.02.2002 um 18:47 von [RMen]OneStone bearbeitet.
zum Seitenanfang zum Seitenende Profil || Suche
013
25.02.2002, 17:39
Da_Invader



Da kann man sich ja kaum entscheiden bei der Auswahl !!! *g*

--

Operation Peacekeeper

zum Seitenanfang zum Seitenende Profil || Suche
014
26.02.2002, 09:29
hausi



Das zweite ist besser, ausser dem Schreibfehler in der zweiten Selektion ;)

--

zum Seitenanfang zum Seitenende Profil || Suche
015
26.02.2002, 11:02
Tschieses



Sehr schöner Denkansatz.
Leider absolut unrealistisches Ergebniss.

Annahme :
Wir haben einen Gegner, ballern dem die ganze Zeit auf Körperteile abgesehen vom Bein, bis sein Health auf <30 runter ist.

Nun schießen wir das erste mal auf das Bein.
Was passiert? Nichts.

Die beste Lösung ist es, für jedes Körperteil einen eigenen Healthparameter zu erstellen.
Der Health-Wert des Gegners wird dann aus der Summe aller Healthparameter errechnet.

Ergebniss : Ein nahezu perfektes und realistisches DamageSystem.

P.S.: Dieses und andere Feature wird es auch in meiner SP-Mod geben. Stay tuned :)

--

theDigiTales - GamedevelopmentSupport

zum Seitenanfang zum Seitenende Profil || Suche
016
26.02.2002, 11:09
hausi



Um es noch ein bisschen zu verbessern sollte man dann noch:
Verbluten lassen (mit Blutlachen *g*)
Dem Kopf und dem Körper spezielle Funktionen zuteilen (wenn eines dieser "Teile" zerstört wird, muss er ganz tot sein)
Wenn die Beine getroffen wurden, muss er langsamer werden
Wenn die Arme getroffen wurden, muss er ungenauer schiessen und kann HGs etc. nicht mehr so weit werfen...
usw.
Ev. mache ich mal ein Tutorial, das genau diese Dinge macht (relistisches Schadensmodell)

--

zum Seitenanfang zum Seitenende Profil || Suche
017
26.02.2002, 11:41
Tschieses



Das Schadensmodel ist nun zu 90% perfekt.
Wird Zeit, daß wir die KI der Gegner erweitern :)

--

theDigiTales - GamedevelopmentSupport

zum Seitenanfang zum Seitenende Profil || Suche
018
26.02.2002, 14:24
Da_Invader



da hab ich mir was vorgenommen !!! Meine Herrn das kann dauern bis ich alles in dem Mod drin hab was ich will .

--

Operation Peacekeeper

zum Seitenanfang zum Seitenende Profil || Suche