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



Hi, ich habe max_clip und max_carry der MP5 von 50 und 150 auf 350 und 2000 gesetzt. Ich bekam beim Compilen lauter Warnungen. Im Spiel stimmte dann auch alles, bis auf die Hud anzeigen. Das Primary Ammo ging dann in der Munitionsanzeige Rauf auf 128 und dann wieder runter - Nachladen, von vorne. Ich schätze mal, in irgendeiner Datei sind die maximalen Munitionsangaben für das Hud definiert und daher der Fehler. Kann mir jemand weiterhelfen?

--

zum Seitenanfang zum Seitenende Profil || Suche
001
07.05.2001, 15:16
Kindergaertner



Wenn es daran liegt was ich glaube dann hatten wir das schon mal.
Und zwar wäre das dann weil die ammo anzeige im Hud als Byte deklariert ist dessen bereich sich nur auf 128 bezieht. Also entweder delarierst du das als integer (wenn das geht) oder machst das Magazin einfach kleiner.
Das wurde hier ohne spezielle forkenntnise vom Coden geschrieben also habt nachsicht wenns net stimmt :-)

--

Kindergaertner

zum Seitenanfang zum Seitenende Profil || Suche
002
07.05.2001, 16:13
Assassinator



Hm...dat gleiche Prob hab ich auch. Meine MP5 kann 100 Muni in nem Clip haben, und man kann maximal 900 Muni mitnehmen. Bei mir geht die Anzeige auf 254, dann bleibt sie da stehen, obwohl ich bis zu 900 Muni habe... bin aber Newbie, und finde leider nich die Initialisierung von dem Kack. Sonst würd ich den Mist zu Integer machen...wenn et geht.

--

Ich weiss, dass ich nichts weiss, aber da bin ich mir noch nicht so sicher...

An die Newbies unter euch: Angst, Fragen zu stellen? Schiss vor der Meckerei der Profis? Mailt mir, dann versuche ich (wenn ihr lieb fragt, und euch vernünftig anstellt) euch zu helfen.

Wenn jemand gute Pages mit C++/DirectX-Tuts kennt: mailen, icqen oder wie auch immer, auf jeden Fall an mich!!!

zum Seitenanfang zum Seitenende Profil || Suche
003
07.05.2001, 22:34
Lorkes



Stimmt, es gibt ja auch keine Waffe in HL, die über 128 Schuss hat. Am nächsten drann wäre noch die Shotgun mit 125...

--

zum Seitenanfang zum Seitenende Profil || Suche
004
07.05.2001, 23:31
e-RZA



Ähm ich kann euch zwar nich helfen (bin noch n blutiger anfänger) aber ich kann 250 schuss mit nehmen und das wird auch angezeigt.

--

zum Seitenanfang zum Seitenende Profil || Suche
005
07.05.2001, 23:35
Lorkes



Ja, aber sicher nur nicht im Clip oder? Ausserdem, ich versuche mich auch erst seit letztem Samstag am SDK.

--

zum Seitenanfang zum Seitenende Profil || Suche
006
05.06.2001, 13:28
Erasor



Gibt es hier inzwischen einen Lösung? Würde das auch gerne hinbekommen =)

--

zum Seitenanfang zum Seitenende Profil || Suche
007
05.06.2001, 14:22
Lorkes



Nein die gibt es nicht. Wenn müsste man glaube ich der Variablen für die Ammoanzeige mehr Speicher reservieren. Ist aber nur so ein Gedanke, ich habe wirklich keine Ahnung.

--

zum Seitenanfang zum Seitenende Profil || Suche
008
05.06.2001, 20:01
Killing Me Softly



Das "Hauptproblem" ist die Kommunikation zwischen Server und Client. Die Munitionsanzahl wird nämlich erst auf 254 'limitiert' und dann als Byte an den Client gesendet. Hierzu einfach mal in der player.cpp nach SendAmmoUpdate suchen; dort findet man folgene Zeilen:

MESSAGE_BEGIN( MSG_ONE, gmsgAmmoX, NULL, pev );
WRITE_BYTE( i );
WRITE_BYTE( max( min( m_rgAmmo[ i ], 254 ), 0 ) );
MESSAGE_END();

Das ist der Grund, warum die Anzeige bei 254 stehen bleibt. Die Lösung:
WRITE_BYTE( max( min( m_rgAmmo[ i ], 254 ), 0 ) );
in
WRITE_SHORT( m_rgAmmo[ i ] );

ändern; die Registrierung von gmsgAmmoX entsprechend ändern und nicht vergessen in der ammo.cpp (dort, wo die Message wieder gelesen wird)

int iCount = READ_BYTE();
durch
int iCount = READ_SHORT();

ersetzen. Das müßte es gewesen sein.

--

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

zum Seitenanfang zum Seitenende Profil || Suche
009
05.06.2001, 20:38
Retro



So, ich hab jetzt in der hl.dll

[c=blue]WRITE_BYTE( max( min( m_rgAmmo[ i ], 254 ), 0 ) );[/c]
zu
[c=blue]WRITE_SHORT( m_rgAmmo[ i ] );[/c]
gemacht,
und in der client.dll

[c=blue]int iCount = READ_BYTE();[/c]
zu
[c=blue]int iCount = READ_SHORT();[/c]
gemacht.

Ich kompiliere das nu und bekommen 0 Fehler 0 Warnungen.
Wenn ich jetzt in HL "impulse 101" benutze kommt folgender Fehler:
[c=red]
User Msg 'AmmoX': 3 bytes written, expected 2
[/c]

Und HL verabschiedet sich...

Ich denke mir das es daran liegt das ich die "Registrierung von gmsgAmmoX" nicht entsprechend geändert hab, aber das liegt daran das ich sie nirgends gefunden hab... *help*

--

shielding people from their own stupidity is an evolutionary step backwards anyway.

/* God is dead!............Nietzsche */
/* Nietzsche is dead!......God */
/* Nietzsche is God!.......The Dead */

zum Seitenanfang zum Seitenende Profil || Suche
010
05.06.2001, 20:46
Erasor



...was übersehen hat ***deleted*** *g*

--

zum Seitenanfang zum Seitenende Profil || Suche
011
05.06.2001, 21:00
Lorkes



Dieses Problem endlich mal zu lösen wäre wirklich äusserst praktisch =)

--

zum Seitenanfang zum Seitenende Profil || Suche
012
05.06.2001, 21:15
Erasor



^Hey Lorkes, du Lorkes, jetzt kann ich net mehr editieren, also muss ich spammen *lol*

Also bei mir kommt dasselbe...*such*

--

zum Seitenanfang zum Seitenende Profil || Suche
013
05.06.2001, 21:25
-DiKoMe-



Ich glaube Killing me softly meint mit der regestrierung das hier:

Im player.cpp, bei void LinkUserMessages( void ) findest du fast am ende der funktion das hier:

gmsgAmmoX = REG_USER_MSG("AmmoX", 2);

das änderst du dann in das hier:

gmsgAmmoX = REG_USER_MSG("AmmoX", 3);

Probiers mal :-)

--

Lebensweisheit: *g*
Wieviel Energie steckt in einem Pfennig?
E=2g*(300.000km/s)^2=1,8*10^14j
Also ca. 180 Billiarden j, damit könnte man Berlin 1 Jahr mit Strom versorgen :)

zum Seitenanfang zum Seitenende Profil || Suche
014
05.06.2001, 21:39
Erasor



Hört sich gut an...würde auch von der Fehlermeldung voll übereinstimmen =)

Juchu! Alle Newbies sagen Danke. OMG *g*

Aber e funzt so, und nun widme ich mich wieder meinem C++ Buch :)

Danke allen

--

zum Seitenanfang zum Seitenende Profil || Suche
015
05.06.2001, 22:13
-DiKoMe-



Ich finde die Anweisung sollte zu einem Tutorial geschnürt werden und an DHCC geschickt werden. :)

--

Lebensweisheit: *g*
Wieviel Energie steckt in einem Pfennig?
E=2g*(300.000km/s)^2=1,8*10^14j
Also ca. 180 Billiarden j, damit könnte man Berlin 1 Jahr mit Strom versorgen :)

zum Seitenanfang zum Seitenende Profil || Suche
016
05.06.2001, 22:21
Erasor



Jup, denke doch! Hmm...komsich, ich bekomm 'nen Fehler wenn ich die Mp5 Einstellungen in der Weapon.cpp auf 200 stelle...shit, keine Zeit mehr, kümmer ich mich Morgen drum, sollte dann ja vielleicht auch da mit rein =)

--

zum Seitenanfang zum Seitenende Profil || Suche
017
05.06.2001, 22:29
Retro



Naja... nen paar Probleme gibts dennoch.

a) Wenn die Anzeige auf über 999 geht, dann gibts vorne nur noch komische Sprites.

b) Die Magazingröße ist immer noch nicht erweitert.

--

shielding people from their own stupidity is an evolutionary step backwards anyway.

/* God is dead!............Nietzsche */
/* Nietzsche is dead!......God */
/* Nietzsche is God!.......The Dead */

zum Seitenanfang zum Seitenende Profil || Suche
018
06.06.2001, 16:52
Erasor



Mehr alls 999 brauch man eigentlich nicht, denke ich, ansonsten muss du versuchen das so zu coden, dass wie in AHL nur angezeigt wird, wieviele Clips man noch hat und nicht wieviel Muni insgesamt.

Die Magazingröße, jup, stellt ich sie auf 200 gibt es ein kompilerror =(

Eines ist mir noch aufgefallen, und zwar steht beim Aufnehmen von Sachen nur noch "1" aufgenommen, klar, ein Clip, aber wirkt ein wenig unfreiwillig =) Dann sollte man es wie bei AHL machen (oder ähnlich ;))

*Davon aber wohl eh nix rallt und sich wieder seinem C++ Buch zuwendet* =)

--

zum Seitenanfang zum Seitenende Profil || Suche
019
06.06.2001, 18:01
Retro



Tja... dieses Clip-anzeige-statt-schuß-system mag ich absolut net! :(

Und für ne Minugun sind 4000 Schuß nicht schlecht...
naja! scheiße!

--

shielding people from their own stupidity is an evolutionary step backwards anyway.

/* God is dead!............Nietzsche */
/* Nietzsche is dead!......God */
/* Nietzsche is God!.......The Dead */

zum Seitenanfang zum Seitenende Profil || Suche
020
14.09.2001, 22:38
Retro



Puh... das waren Zeiten =))

Naja, jetzt habe ich meine Vorstellung von ner Minigun doch geändert, und sie hat 800 Schuß zum nachladen, soll aber 400 Schuß im Magazin haben...

Allerdings steht bei voller Munition und vollem Magazin nur das dort: 112 | 800
Der zweite Wert (Vorrat) ist ja auch in ordnung, nur der erste Wert (Magazin) soll 400 anzeigen. Ich hab mir jetzt das ganze nochmal angeguckt aber in der AmmoUpdate ist nichts vom Clip erwähnt ;(

Aber das sollte sich doch auch machen lassen...
(Und da soll jemand sagen ich benutze nicht die Forensuche *g*)

--

shielding people from their own stupidity is an evolutionary step backwards anyway.

/* God is dead!............Nietzsche */
/* Nietzsche is dead!......God */
/* Nietzsche is God!.......The Dead */


Dieser Beitrag wurde am 14.09.2001 um 22:38 von Retro bearbeitet.
zum Seitenanfang zum Seitenende Profil || Suche
021
15.09.2001, 17:31
[GOD]ShadowLord



nun,man muss in der reload-funktion 'n paar kleinigkeiten ändern.hab leider
keine zeit,das alles aufzuschreiben aber ich weiss,das geht da!

--

they come in peace - and go in pieces

zum Seitenanfang zum Seitenende Profil || Suche
022
15.09.2001, 17:32
[GOD]ShadowLord



von wegen max_clip... notfalls kann man ja 'den munitionsverbrauch pro
schuss umstellen.

--

they come in peace - and go in pieces

zum Seitenanfang zum Seitenende Profil || Suche
023
15.09.2001, 18:20
Retro



Aber ich habe nicht von son scheiß Pfusch zu machen...

Ein Schuß soll immer noch ein Schuß verbauchen, das was du da gesagt hast, ist ziemlicher Blödsinn finde ich. Is nicht böse gemeint.

Eigentlich muss man nur die Msg finden, wo der Clipvorrat an die cl.dll geschickt wird, und dort den Wert auch wieder von BYTE un SHORT ändern (denk ich mal) und dann würde das genauso klappen wie das mit dem Vorrat auch. Nur leider ist das nirgends zu finden.

Was aber absoluter Prusch ist, dass man pro Schuß nur 0,5 oder so abzeiht, dashalb finde ich deine Lösung auch relativer bullshit *sorry*

Ich hab nichts gegen dich, aber solche Lösungen kann ich nicht leiden...

--

shielding people from their own stupidity is an evolutionary step backwards anyway.

/* God is dead!............Nietzsche */
/* Nietzsche is dead!......God */
/* Nietzsche is God!.......The Dead */

zum Seitenanfang zum Seitenende Profil || Suche