Willkommen ~Gast!
Registrieren || Einloggen || Hilfe/FAQ || Staff
Probleme mit der Registrierung im Forum? Melde dich unter registerEin Bild.
Autor Beitrag
000
18.09.2001, 23:15
McMapper



aargghl, ich hab schon alles prbiert, dabie will ich das was ganz einfaches, und zwar dass meine kugeln OHNE spread OHNE auto aim ganz gerade zack dorthin fliegen wo ich ziele aaber auch wenn ich die autoaim und spread vectoren auf vector(0,0,0) setzte landen meine einschusslöcher im kakao aussen ! ARGHL ! bitte helft mir !

--

zum Seitenanfang zum Seitenende Profil || Suche
001
19.09.2001, 01:04
The_Overmind



In der weapons.h, so ziemlich am Ende werden die Vectoren definiert, die für die FireBullets benutzt werden. Da kannste dann zum Beispiel reinschreiben:

#define VECTOR_PERFECT_SHOT Vector( 0.00001, 0.00001, 0.00001 )

Das wäre nun der Gerade Schuss den du willst. Das mit 0.0 hat wohl nicht geklappt weil in der FireBullets glaubbisch durch die einzelnen Werte geteilt wird. Division durch 0 = schon immer ein Problem inner Mathematik ;)

--

zum Seitenanfang zum Seitenende Profil || Suche
002
19.09.2001, 07:58
Killing Me Softly



Vector(0,0,0) funktioniert ohne Probleme; aber ich vermute, das du in die Fallen des Client-Side-Weapon-Codings (hübsches Wort) getappt bist. Das Problem ist, das der Trefferpunkt unabhängig voneinander sowohl auf dem Server, als auch auf dem Client berechnet wird. Als Beispiel nehm ich mal die MP5
Quellcode:
aus: void CMP5::PrimaryAttack()
...
PLAYBACK_EVENT( 0, m_pPlayer->edict(), m_usMP5 );
...
m_pPlayer->FireBullets( 1, vecSrc, vecAiming, VECTOR_CONE_6DEGREES, 8192, BULLET_PLAYER_MP5, 2 );
...

PLAYBACK_EVENT(...) löst clientside ein Event aus, welches wiederum dafür sorgt, das 'void EV_FireMP5( event_args_t *args )' aufgerufen wird. Und dort findet man dann den Aufruf von EV_HLDM_FireBullets
Quellcode:
EV_HLDM_FireBullets( idx, forward, right, up, 1, vecSrc, vecAiming, VECTOR_CONE_6DEGREES, 8192, BULLET_PLAYER_MP5, 2, &tracerCount[idx-1] );

Damit die MP5 schnurrstracks gerade aus schießt, muss man VECTOR_CONE_6DEGREES in Vector(0,0,0) ändern. Allerdings sowohl beim Server ( m_pPlayer->FireBullets() ) als auch beim Client ( EV_HLDM_FireBullets() )

--

Der Horizont vieler Menschen ist ein Kreis mit Radius Null - und das nennen sie ihren Standpunkt.

zum Seitenanfang zum Seitenende Profil || Suche
003
19.09.2001, 15:28
McMapper



hm komisch, denn in der mp.dll hatte ich das schon, dann müsste es ufem server richtig berechnen, dann aber falsch anzeigen bei mir, nunja es wurde falsch angezeigt, doch trotzdem hab ich den den snark (mein zielobjekt) net getroffen :/

--

zum Seitenanfang zum Seitenende Profil || Suche
004
19.09.2001, 18:42
[GOD]ShadowLord



ich hab 'ne waffe,die schiesst punktgenau(mit vector(0,0,0)) und zeigt auch
die richtigen einschusslöcher.ich kann dir die datei schicken,wenn du willst.

--

they come in peace - and go in pieces

zum Seitenanfang zum Seitenende Profil || Suche