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



ok,hi erstmal
also zur sache
hab mal wieder ein beschissenes prob also
ich hab das "Half-Life Team System With VGUI Menu"tut haargenau durchgeackert,aber nein,was vorrauszusehen war das es mal wieder bugs gibt,
also langsam nervt das :-((
also wenn ich das hl starte und wie üblich ein langame aufmach läd er ganz brav,aber kurz vorm spawnen brich er ab und bin wieder im windows,mit folgender fehlermeldung."MSG_ONE or MSG_ONE_UNRELIABLE with no targetentity"ich weiss das etwas mit den masseges nich stimmt,ich weis auch welche,nähmlich folgende(auszug aus dem tut)

Now our team message is registered (thanks to Corvidae for this help), we need to send the actual message.
For this, we go to "multiplay_gamerules.cpp" and the InitHUD function. So in that function area, add this
code:

MESSAGE_BEGIN(MSG_ONE, gmsgTeams, NULL, pl->edict());
WRITE_BYTE(2); // Two teams. (You can have up to 4.)
WRITE_STRING(TEAM1_NAME); // You need to pass the teams as literal strings
WRITE_STRING(TEAM2_NAME);
MESSAGE_END();
diese massage ist sicher für das erscheinen des vguimenus verantwortlich,bin net sicher(noch newbie).sobald ich diesen code ausklammer funzt es,aber ich seh kein vguimenü(logisch),das dumme dazu ich kann nun nich das team wählen...tolle show......
ok,wer hat ahnung?bzw wer weiss rat?bitte hilfe,ist echt wichtg
THX!!!

--

FreKeR

zum Seitenanfang zum Seitenende Profil || Suche
001
25.05.2001, 15:16
Eridanus



Ein Fehler in dem Tut ist es, dass meistens TEAM1_NAME bzw. TEAM2_NAME
benutzt wird. Aber an zwei Stellen (weiss nicht genau wie viele) wird TEAMOne bzw. TEAMtwo verwendet.

--

zum Seitenanfang zum Seitenende Profil || Suche
002
25.05.2001, 17:28
[-AoD-]Zeroblaster



poste ambesten mal die addy zum tut!

--

zum Seitenanfang zum Seitenende Profil || Suche
003
25.05.2001, 19:13
FreKeR



da bitte,http://users.pandora.be/dekoffie/teamvgui.html

--

FreKeR

zum Seitenanfang zum Seitenende Profil || Suche
004
25.05.2001, 19:31
Crouching Tiger



Bist du sicher, das du diesen Teil des codes am richtigen Ort hingeschrieben hast?

[/Edit]

Weil das in diesem Tutorial für einen Newbie (keine Beleidigung, ich bin nämlich selbst einer(noch)) ein bisschen ungenau beschrieben ist!

--

CTHD CLAN IS MAIZBROD!!!!!!!!

zum Seitenanfang zum Seitenende Profil || Suche
005
25.05.2001, 20:19
FreKeR



neeee...ich find das tut goil,bis auf den BES.... BUG!!!!
manno,weiss den keiner ne einfache lösung???(will nich alles wieder von vorn anfangen)also ich weiss net was man daran so falsch verstehen kann???
ps.ich kann ganz gut englisch...

--

FreKeR

zum Seitenanfang zum Seitenende Profil || Suche
006
25.05.2001, 20:33
Crouching Tiger



so sollte es in der multiplay_gamerules.cpp aussehen (nur der Teil mit der msg)
// sending just one score makes the hud scoreboard active; otherwise
// it is just disabled for single play
MESSAGE_BEGIN( MSG_ONE, gmsgScoreInfo, NULL, pl->edict() );
WRITE_BYTE( ENTINDEX(pl->edict()) );
WRITE_SHORT( 0 );
WRITE_SHORT( 0 );
MESSAGE_END();

MESSAGE_BEGIN(MSG_ONE, gmsgTeams, NULL, pl->edict());
WRITE_BYTE(2); // Two teams. (You can have up to 4.)
WRITE_STRING(TEAM1_NAME); // You need to pass the teams as literal strings
WRITE_STRING(TEAM2_NAME);
MESSAGE_END();

ShowVGUI (pl, MENU_TEAM);

SendMOTDToClient( pl->edict() );

--

CTHD CLAN IS MAIZBROD!!!!!!!!

zum Seitenanfang zum Seitenende Profil || Suche
007
25.05.2001, 23:50
FreKeR



ok
eben das muss funzen
THX crouching tiger
(arrrghhhh)
dieses tut ist allgemein ungenau geschrieben,lol,wer lässt sowas auf die massen los???
ok,nun dann schreibt mal ein anständiges tut,ihr wisst ja jetzt wies geht *g*

--

FreKeR

zum Seitenanfang zum Seitenende Profil || Suche
008
26.05.2001, 09:02
Crouching Tiger



Ich könnte es eigentlich auf Deutsch übersetzen, wenn ihr wollt!

Aber leider habe ich auch noch ein Problem mit diesem Tut!

Diese s***** Spawnpunkte funzen nicht!

Freker funktionieren die bei dir?

--

CTHD CLAN IS MAIZBROD!!!!!!!!

zum Seitenanfang zum Seitenende Profil || Suche
009
26.05.2001, 11:46
TheVoice



Ja, ich erinnere mich, dass ich mit den Spawnpoints damals auch Probleme
hatte.... beim ersten Spawn startete der Player beim richtigen Spawnpoint,
beim 2. Spawn nicht mehr.... ich habe das Gefühl, dass das etwas
mit einer total global deklarierten Variable oder Funktion zu tun hat.
Ein ähnliches Problem hatte ich nämlich mal mit meinem Multi-Funktions
Grenatenwerfer, den ich komplett selbst geschrieben habe.... erst
als ich die Variable als privates Attribut in meine Klasse eingebunden
hatte, hat es funktioniert, dass beide Player nabhängig voneinerander
schießen konnten, denn im VGUI Tut war es bei mir so:

Immer wenn der Erste Spieler einen Team gewählt hat,
hat es geklappt, kam der zweite und wählte das andere Team
dann starteten beide player beim Team des zweiten Spielers...

mal schaun, ich arbeite das Tutorial gerade nochmal durch...
vielleicht find ich ja diesmal den Fehler (ich bin davon überzeugt)!

--

Against TCPA | Resourcecode.de | Blender 3D | [ Darkzone | Pandorra | Alpine ]

zum Seitenanfang zum Seitenende Profil || Suche
010
26.05.2001, 12:28
static_caster



mit der globalen variable: denke mal, daß globale variablen nur einmal von kontrollfluß erreicht werden (die initialisierung). und dann gibbets auch nur eine kopie dieser variable zur laufzeit, da der gültigkeitsbereich ja nie verlassen wird.
bei ner member-variablen hat jede initialisierung eines objektes der klasse eine eigene kopie.

wenn nu also der erste spawnt, kricht dat teil n wert, welcher beim zweiten spawn überschrieben wird, aber für beide (wenn als globale variable) gütligkeit behält......

bei class member hat jeder player seine eigene...

denke ich mal...

--

zum Seitenanfang zum Seitenende Profil || Suche
011
26.05.2001, 13:38
TheVoice



Eben, genau so war's nämlich.

Okay, ich hab das Tutorial jetzt durch.

bisher gabs keine Probleme..... während des
Umsetzens habe ich (glaube ich) gleich einen Bug ausgebessert.....

und zwar...........gamerules.cpp:

An irgendeiner Stelle sollte man das hier einsetzen:
[/code]
// BigGuy--Teamplay spawn
if (g_pGameRules->IsTeamplay())
edict_t *pentSpawnSpot = EntSelectTeamSpawnPoint( pPlayer );
else
edict_t *pentSpawnSpot = EntSelectSpawnPoint( pPlayer );
// BigGuy--end
[/code]

Darunter kam dann aber schon sofort wieder:

[/code]edict_t *pentSpawnSpot = EntSelectSpawnPoint( pPlayer );[/code]

ich dachte mir, okay kommentierst du aus....
aber war ja quark.... dann fehlt ihm die Struktur.

Also Kopiert einfach den if..else Block unter das

Quellcode:edict_t *pentSpawnSpot = EntSelectSpawnPoint( pPlayer );

..... das wäre so das erste was mir aufgefallen ist...

naja, und dann eben diese "TeamONE", "TeamTWO" Stringkonstanten
durch die TEAM1_NAME, TEAM2_NAME Konstanten austauschen.

Aber iregndwer hatte hier Compilerfehler ?
naja, sollten mir fehler entgangen sein, werde ich sie hier
in spätestens 5 tagen aufdecken :)

--

Against TCPA | Resourcecode.de | Blender 3D | [ Darkzone | Pandorra | Alpine ]

zum Seitenanfang zum Seitenende Profil || Suche
012
26.05.2001, 14:22
Crouching Tiger



Jo! Danke, ich schau mal ob es jetzt funktioniert!

Vielleicht werde ich das Tut ja übersetzen, muss noch schauen!

--

CTHD CLAN IS MAIZBROD!!!!!!!!

zum Seitenanfang zum Seitenende Profil || Suche
013
26.05.2001, 15:43
FreKeR



so ein m...,bei mir iss immer noch der s.... bug,hab mich umsonst gefreut :-((
"MSG_ONE or MSG_ONE_UNRELIABLE with no targetentity"

--

FreKeR

zum Seitenanfang zum Seitenende Profil || Suche
014
26.05.2001, 16:14
Crouching Tiger



Bei mir funktiert dies nicht:

Ich habe beim Level fünf entitys gemacht:

light
info_player_team1
info_player_team2
info_player_deathmatch
info_player_teamplaydetect

Aber wenn ich das level starte, starte ich bei beiden Teams beim Punkt info_player_deathmatch!

?

--

CTHD CLAN IS MAIZBROD!!!!!!!!

zum Seitenanfang zum Seitenende Profil || Suche
015
26.05.2001, 18:05
TheVoice



Hast du denn wirklich schon diesen "TeamONE" Kram durch TEAM1_NAME
ersetzt ?

--

Against TCPA | Resourcecode.de | Blender 3D | [ Darkzone | Pandorra | Alpine ]

zum Seitenanfang zum Seitenende Profil || Suche
016
26.05.2001, 19:35
FreKeR



crouching tiger,du hast den info_player_observer vergessen!!!

LOL mir hilft keiner
nochmal
hier die funktion

die fehlermeldung bein laden des langames
MSG_ONE or MSG_UNRELIABLE with no tagetentity

void CHalfLifeMultiplay :: InitHUD( CBasePlayer *pl )
{
extern int gmsgTeams;

// notify other clients of player joining the game
UTIL_ClientPrintAll( HUD_PRINTNOTIFY, UTIL_VarArgs( "%s has joined the game\n",
( pl->pev->netname && STRING(pl->pev->netname)[0] != 0 ) ? STRING(pl->pev->netname) : "unconnected" ) );

UTIL_LogPrintf( "\"%s<%i>\" has entered the game\n", STRING( pl->pev->netname ), GETPLAYERUSERID( pl->edict() ) );
UpdateGameMode( pl );


// sending just one score makes the hud scoreboard active; otherwise
// it is just disabled for single play
MESSAGE_BEGIN( MSG_ONE, gmsgScoreInfo, NULL, pl->edict() );
WRITE_BYTE( ENTINDEX(pl->edict()) );
WRITE_SHORT( 0 );
WRITE_SHORT( 0 );
MESSAGE_END();

//chip
MESSAGE_BEGIN(MSG_ONE, gmsgTeams, NULL, pl->edict());//brutaler fehler
WRITE_BYTE(2); // Two teams. (You can have up to 4.)
WRITE_STRING(TEAM1_NAME); // You need to pass the teams as literal strings
WRITE_STRING(TEAM2_NAME);
MESSAGE_END();
//wenn ich diese message ausklammer funzt es,nachteil:kein spawnen(logisch)

ShowVGUI (pl, MENU_TEAM);

SendMOTDToClient( pl->edict() );

// loop through all active players and send their score info to the new client
for ( int i = 1; i <= gpGlobals->maxClients; i++ )
{
// FIXME: Probably don't need to cast this just to read m_iDeaths
CBasePlayer *plr = (CBasePlayer *)UTIL_PlayerByIndex( i );

if ( plr )
{

MESSAGE_BEGIN( MSG_ONE, gmsgScoreInfo, NULL, pl->edict() );
WRITE_BYTE( i ); // client number
WRITE_SHORT( plr->pev->frags );
WRITE_SHORT( plr->m_iDeaths );
MESSAGE_END();

}
}

if ( g_fGameOver )
{
MESSAGE_BEGIN( MSG_ONE, SVC_INTERMISSION, NULL, pl->edict() );
MESSAGE_END();

}

}

verdammt,was kann ich da machen?HILFFFEEEE
hab ich woanders einen fehler gemacht???
crouching tiger kannste mir mal deine "multiplay.cpp mailen? bitte
mapFreak@gmx.de

--

FreKeR

zum Seitenanfang zum Seitenende Profil || Suche
017
27.05.2001, 12:31
Crouching Tiger



Ich habe jetzt auch info_player_observer gesetzt, aber man startet immer noch bei beiden Teams beim Punkt: info_player_deathmatch!

Und wenn ich die info_player_deathmatch entity entferne, dann stürzt das Spiel nicht, so wie es dieser Typ vom Tutorial geschrieben hat, sondern man startet einfach beim Nullpunkt des Koordinatensystems!

--

CTHD CLAN IS MAIZBROD!!!!!!!!

zum Seitenanfang zum Seitenende Profil || Suche
018
27.05.2001, 17:19
FreKeR



also bei mir funzt das mit den spawnpoints,bis auf das vgui menu
hab das vgui aktiviert,sämtliche tuts damit durch,funzt trotzdem nich(scheiss vgui)....:-((

--

FreKeR

zum Seitenanfang zum Seitenende Profil || Suche
019
27.05.2001, 17:44
Crouching Tiger



Muss man bei diesem Tutorial die client.dll auch verändern, ich weiss es gerade nicht mehr, vielleicht hast du die noch gar nicht kompiliert....

Und FreKer könntest du mir mal deine player.cpp und subs.cpp schicken (crouching-tiger@gmx.net) Danke!

--

CTHD CLAN IS MAIZBROD!!!!!!!!

zum Seitenanfang zum Seitenende Profil || Suche
020
27.05.2001, 18:24
FreKeR



ja,mach ich,jedenfalls hab ich die schnauze voll,ich pfeffer den mist wieder raus....MSG_ONE or MSG_ONE_UNRELIABLE with no targetentity
LOL
ich bin das tut von oben bis unten nochmal durchgegangen,alles richtig gemacht...
scheinbar weiss hier keiner wo der fehler liegt!!!

--

FreKeR

zum Seitenanfang zum Seitenende Profil || Suche
021
27.05.2001, 19:35
TheVoice



Das Tutorial ist absolut fehlerfrei!

--

Against TCPA | Resourcecode.de | Blender 3D | [ Darkzone | Pandorra | Alpine ]

zum Seitenanfang zum Seitenende Profil || Suche
022
27.05.2001, 21:25
Crouching Tiger



Hey, TheVoice funktioniert bei dir dieses Tutorial einwandfrei?

--

CTHD CLAN IS MAIZBROD!!!!!!!!

zum Seitenanfang zum Seitenende Profil || Suche
023
28.05.2001, 02:52
FreKeR



TOLLE WURST,und warum gibts dann bugs???
beste antwort wär ja "du bist zu blöd für copy&paste"
lol
das bezweifel ich aber sehr stark :-))
ich bekomm einfach das vgui nich hin,hab 2 tuts in der richtung durch,das will einfach nich,deswegen auch die fehlermeldung!!!:-((((
cu

//edit
juhuu,habs geschaft,ANDERS(scheisstut) ;-)
die spawnpiont funzen jetzt und das s...... vgui!!

--

FreKeR

zum Seitenanfang zum Seitenende Profil || Suche
024
28.05.2001, 16:37
TheVoice



Ich will damit sagen, dass das Tutorial bei mir einwandfrei funktioniert hat.
Klar, an manchen Stellen musste man schonmal selber nachdenken
wo der Code jetzt hin muss, weil er das nie soooo genau sagt,
aber ich denke mit etwas erfahrung kommt man dann schon drauf.

--

Against TCPA | Resourcecode.de | Blender 3D | [ Darkzone | Pandorra | Alpine ]

zum Seitenanfang zum Seitenende Profil || Suche