000
21.03.2002, 21:58
KönigSarubDasZweit
|
Moin, ich hab mir ne Map zusammengebastelt und wollte sie dann nach einigen Veränderungen mal wieder kompilieren. Doch als die Map dann gestartet werden sollte, erfreute mich die HL-Konsole mit dieser freudigen Botschaft --> Host_Error: PF_setview_I: not a client
Hat irgend wehr ne Ahnung was das ist und wie ich dass beheben kann?
Thx im voraus MfG Sarubaro
--
Rammstein roX
|
|
Profil || Suche
|
001
22.03.2002, 12:41
Tubgirl
|
*threadnachobenschieb*
Helfen kann ich zwar nicht, aber ich hatte bzw. habe das selbe Prob mit der HL-TC "Chemical Existece"... wär wirklich ganz cool wenn irgendwer wüsste wie man das beseitigt.
CE ist im übrigen die einziege Mod die bei mir mit dieser Meldung streikt, alles andere geht :/
--
|
|
Profil || Suche
|
002
22.03.2002, 15:21
Prefect
|
Gleiches Problem hat auch Redemption und (hatte) Poke646. Das Problem lag IIRC an Kameras, die zu früh getriggert werden. TTT dürfte den Fix evtl. noch wissen...
cu, Prefect
--
Widelands - Gemütliche Aufbaustrategie, Free Software Noch ein Blog - Lerne, wie die Welt wirklich ist, aber vergiss niemals, wie sie sein sollte.
|
|
Profil || Suche
|
003
23.03.2002, 21:05
TheTinySteini
|
Nun, Valve ist nie wirklich drauf eingegangen... Aber laut meinen Nachforschungen ist seit HL 1.1.0.8 der Player-Spawn-Code in der Engine oder so anders getimed. Der Spieler spawnt deshalb später. Nun gibt's ein Problem mit trigger_autos. Ich denke mal, diese habt ihr verwendet. Das Problem ist, dass diese direkt beim Mapstart getriggert werden. Zu diesem Zeitpunkt war früher auch der Spieler schon da (jedenfalls sein edict...). Seit 1.1.0.8 aber nicht mehr. Das Problem tritt nun auf, wenn man mit dem trigger_auto ein trigger_camera aktiviert. Wenn ihr andere Entities habt, sagt mir bitte Bescheid, dann wird's interessant! trigger_camera nimmt automatisch den Spieler, der den trigger aktiviert hat. Da trigger_camera in dem Fall von trigger_auto aktiviert wurde, ist der Spieler == NULL. Für diesen Fall nimmt trigger_camera einfach das Entity mit Index 1. Im Normalfall (Singleplayer) ist das der Spieler. Nur existiert der zum Zeitpunkt nicht, EntityOfEntIndex liefert also keinen gültigen Zeiger. Jetzt führt trigger_camera _keine_ weiteren Checks mehr aus. Der Zeiger wird direkt an SET_VIEW (oder ähnlich) weitergegeben. Und dann entsteht dieser Fehler. Man könnte jetzt in trigger_camera überprüfen, ob der Zeiger gültig ist. Aber dann funktioniert trigger_camera nicht, wenn man es per trigger_auto startet. Die andere Möglichkeit, die zumindest bei mir gut zu funktionieren scheint, ist, trigger_auto zu verzögern. Ich hab's so gemacht:
void CAutoTrigger::Precache( void ) { pev->nextthink = gpGlobals->time + 0.1; }
void CAutoTrigger::Think( void ) { //TTT: HACK - seems like valve changed something in the player spawn code, // now gpGlobals->time + 0.1 is not enough to catch the player. // Wait for a valid player here. if( !(g_engfuncs.pfnPEntityOfEntIndex( 1 )) ) { pev->nextthink = gpGlobals->time + 0.1; return; }
if ( !m_globalstate || gGlobalState.EntityGetState( m_globalstate ) == GLOBAL_ON ) { SUB_UseTargets( this, triggerType, 0 ); if ( pev->spawnflags & SF_AUTO_FIREONCE ) UTIL_Remove( this ); } }
--
TheTinySteini Coder Poke646 "Don't Panic" - Hitchhiker's Guide to the Galaxy
|
|
Profil || Suche
|
004
24.03.2002, 22:52
KönigSarubDasZweit
|
Herzlichen Danke
--
Rammstein roX
|
|
Profil || Suche
|