Rauch (Effekt) tut nicht das was es sollte

99Pat99
Hallo!


Hätt da mal ne frage, in meiner Map habe ich Rauch eingefügt (smoke), der sollte dann wie es im Effect Editor zu sehen war, (fast) senkrecht nach oben steigen, aber im Spiel selbst sieht das ganze, ...ganz anders aus.



Abgesehen davon das die Schonrsteine etwas viel Rauchen, wird die Halbe Map zugenebelt.

Hat einer von euch ne ahnung was da zu tuhen ist? ...Ich würds gern so haben das er nach oben fliegt/dampft/... wie man das ebend nennt ;P
BadMan
wie heist denn der effekt? dann kann man sich das mal anschauen

ist das ein oneshot effekt oder ein loop effekt und wie hast du ihn eingebunden?
99Pat99
Der Effekt?

Der heist
"thin_black_smoke_L" bzw. "smoke_large"

Das sind zwei effekte, aber bei beiden passiert das gleiche.

In meiner mp_XXXX.gsc sieht das dann so so aus:

level._effect["smoke"] = loadfx ("smoke/thin_black_smoke_L");
maps\mp\_fx::loopfx("smoke", (444, -1000, 404), 3);

Ich hatte das nach der Anleitung aus dem CoD4-wiki gemacht.

oneshoot? loop...? ka was das is. Ich habe den befehl in der gsc und die Koordinaten... usw. mehr hab ich nich gemacht
steinacker

Zitat:

oneshoot? loop...? ka was das is. Ich habe den befehl in der gsc und die Koordinaten... usw. mehr hab ich nich gemacht

du kannst dir im effects editor den effect anschauen
wenn der immer abgespielt wird, dann isses ein loop-effect
und wenn der effect nach ner weile stopt, dann isses ein OneShotEffect, dieser wird dann mit der funktion "loopfx" dauernd abgespielt
"maps\mp\_fx::loopfx("smoke", (444, -1000, 404), 3);"

du könntest mal versuchen den effect von BadMan's tutorial hier im OL-forum zu verwenden
Effekte einfügen (Wetter, Rauch, usw)
Punkt 6 und 7, der part mit dem rauch, und dem ganzen eine richtung geben

so könnte das in deiner mp_XXXX.gsc dann stehen

Code einblendenCode angehängt. Klicke hier zum Ein-/Ausblenden

code:
1:
2:
3:
level._effect["smoke"] = loadfx ("smoke/steam_large_vent");
maps\mp\_fx::loopfx("smoke", (444, -1000, 404), 3, (444, -1000, 804));



oder du versuchst es mal, so wie ich das mit dem feuer gemacht hab
Effekte & Sounds
ohne den "soundanteil"

Code einblendenCode angehängt. Klicke hier zum Ein-/Ausblenden

code:
1:
2:
3:
4:
5:
6:
7:
ent = maps\mp\_utility::createLoopEffect( "smoke" );
ent.v[ "origin" ] = ( 444, -1000, 404 );
ent.v[ "angles" ] = ( 0, 0, 804 ); //winkel, richtung (400 einheiten nach oben)
ent.v[ "fxid" ] = "fire2";
ent.v[ "delay" ] = 1;


bei den angles angaben bin ich mir aber nich so sicher, ob das hinhaut

das aussehen der effecte in-game kann manchal vom aussehen im effects editor abweichen - warum, weiss ich leider nicht
BadMan
oder so

level._effect["smoke"] = loadfx ("smoke/thin_black_smoke_L");
maps\mp\_fx::loopfx("smoke", (444, -1000, 404), 3, (444, -1000, 414));

dann hat der auch die richtige richtung


ok das hat steinacker ja schon geschrieben grosses Grinsen


oder du machst folgendes

dieses Skript

Code einblendenCode angehängt. Klicke hier zum Ein-/Ausblenden

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
#include common_scripts\utility;
#include maps\mp\_utility;
	
init()
{
	randomStartDelay = randomfloatrange( -20, -15);

	
	global_FX( "ose_rauch01", "rauch01", "smoke/thin_black_smoke_L", randomStartDelay);

}

global_FX( targetname, fxName, fxFile, delay, soundalias )
{
	// script_structs
	ents = getstructarray(targetname,"targetname");
	if ( !isdefined( ents ) )
		return;
	if ( ents.size <= 0 )
		return;
	
	for ( i = 0 ; i < ents.size ; i++ )
		ents[i] global_FX_create( fxName, fxFile, delay, soundalias );
}

global_FX_create( fxName, fxFile, delay, soundalias )
{
	if ( !isdefined( level._effect ) )
		level._effect = [];
	if ( !isdefined( level._effect[ fxName ] ) )
		level._effect[ fxName ]	= loadfx( fxFile );
	
	// default effect angles wenn keine vergeben wurden
	if ( !isdefined( self.angles ) )
		self.angles = ( 0, 0, 0 );
	
	ent = createOneshotEffect( fxName );
	ent.v[ "origin" ] = ( self.origin );
	ent.v[ "angles" ] = ( self.angles );
	ent.v[ "fxid" ] = fxName;
	ent.v[ "delay" ] = delay;
	if ( isdefined( soundalias ) )
	{
		ent.v[ "soundalias" ] = soundalias;
	}
}




im Radiant erstelst du ein script_struct mit dem targetname ose_rauch01 du kanst dem script_struct durch drehen eine richtung geben und wenn du noch mehr wilst einfach kopieren dre targetname kann gleich bleiben

Tut findest du auch hier