Author Topic: explosion not showing up for anyone except host  (Read 1698 times)

see whenever i start up my mod testing server, and people come, when they launch the rocket they do not see the explosion. only me, the host, can see it. they can see the rocket projectile just fine, but they do not see the explosion. why's that??
Code: [Select]
datablock AudioDescription(AudioReallyFar3d) 
   { 
volume = 1.0;
pitch = 1.0;
isLooping = false; 
isStreaming = false;
is3D = true;
referenceDistance = 100;
maxDistance = 600;
type = $SimAudioType;
   }; 
datablock AudioProfile(NukeRocketExplodeSound)
   {
      filename    = "./kaboom.wav";
      description = AudioReallyFar3d;
      preload = true;
   };

  datablock ParticleData(NukeRocketTrailParticle)
   {
      dragCoefficient      = 3;
      gravityCoefficient   = -0.0;
      inheritedVelFactor   = 0.5;
      constantAcceleration = 0.0;
      lifetimeMS           = 7500;
      lifetimeVarianceMS   = 2000;
      textureName          = "base/data/particles/cloud";
      spinSpeed = 10.0;
      spinRandomMin = -150.0;
      spinRandomMax = 150.0;
      colors[0]     = "1.0 1.0 0.0 0.4";
      colors[1]     = "1.0 0.2 0.0 0.5";
      colors[2]     = "0.20 0.20 0.20 0.3";
      colors[3]     = "0.0 0.0 0.0 0.0";

      sizes[0]      = 1;
      sizes[1]      = 3;
      sizes[2]      = 2;
      sizes[3]      = 0.04;

      times[0] = 0.0;
      times[1] = 0.4;
      times[2] = 0.6;
      times[3] = 1.2;

      useInvAlpha = false;
   };
   datablock ParticleEmitterData(NukeRocketTrailEmitter)
   {
      ejectionPeriodMS = 5;
      periodVarianceMS = 1;
      ejectionVelocity = 0.25;
      velocityVariance = 0.0;
      ejectionOffset   = 0.0;
      thetaMin         = 0;
      thetaMax         = 90;
      phiReferenceVel  = 0;
      phiVariance      = 360;
      overrideAdvance = false;
      particles = "NukeRocketTrailParticle";
   };
datablock ParticleData(NukeRocketExplosionParticle)
{
dragCoefficient      = 3;
gravityCoefficient   = -1.5;
inheritedVelFactor   = 0.2;
constantAcceleration = 0.0;
lifetimeMS           = 9800;
lifetimeVarianceMS   = 100;
textureName          = "base/data/particles/cloud";
spinSpeed = 10.0;
spinRandomMin = -50.0;
spinRandomMax = 50.0;
colors[0]     = "0.9 0.1 0.1 1";
colors[1]     = "0.6 0.6 0.6 0.2";
sizes[0]      = 20.0;
sizes[1]      = 200.0;

useInvAlpha = true;
};
datablock ParticleEmitterData(NukeRocketExplosionEmitter)
{
   ejectionPeriodMS = 2;
   periodVarianceMS = 0;
   ejectionVelocity = 50;
   velocityVariance = 1.0;
   ejectionOffset   = 0.0;
   thetaMin         = 0;
   thetaMax         = 0;
   phiReferenceVel  = 0;
   phiVariance      = 360;
   overrideAdvance = false;
   particles = "NukeRocketExplosionParticle";

};
datablock ParticleData(NukeRocketExplosionParticle2)
{
dragCoefficient      = 3;
gravityCoefficient   = -0.8;
inheritedVelFactor   = 0.2;
constantAcceleration = 0.0;
lifetimeMS           = 9800;
lifetimeVarianceMS   = 100;
textureName          = "base/data/particles/cloud";
spinSpeed = 10.0;
spinRandomMin = -50.0;
spinRandomMax = 50.0;
colors[0]     = "0.9 0.1 0.1 1";
colors[1]     = "0.6 0.6 0.6 0.2";
sizes[0]      = 10.0;
sizes[1]      = 100.0;

useInvAlpha = true;
};
datablock ParticleEmitterData(NukeRocketExplosionEmitter2)
{
   ejectionPeriodMS = 1;
   periodVarianceMS = 0;
   ejectionVelocity = 35;
   velocityVariance = 1.0;
   ejectionOffset   = 0.0;
   thetaMin         = 0;
   thetaMax         = 0;
   phiReferenceVel  = 0;
   phiVariance      = 360;
   overrideAdvance = false;
   particles = "NukeRocketExplosionParticle2";

};

datablock ParticleData(NukeRocketOverlayExplosionParticle)
{
dragCoefficient      = 1;
gravityCoefficient   = 5;
inheritedVelFactor   = 0.2;
constantAcceleration = 0.0;
lifetimeMS           = 3000;
lifetimeVarianceMS   = 100;
textureName          = "base/data/particles/cloud";
spinSpeed = 900.0;
spinRandomMin = -50.0;
spinRandomMax = 50.0;
colors[0]     = "0.9 0.1 0.1 0.4";
colors[0]     = "0.9 0.5 0.2 0.06";
colors[0]     = "0.7 0.4 0.1 0.0";
sizes[0]      = 150.0;
sizes[1]      = 5.0;
sizes[2]      = 1.0;
   times[0] = 0.0;
   times[1] = 0.6;
   times[2] = 1.0;


useInvAlpha = true;
};
datablock ParticleEmitterData(NukeRocketOverlayExplosionEmitter)
{
   ejectionPeriodMS = 3;
   periodVarianceMS = 0;
   ejectionVelocity = 90;
   velocityVariance = 0.0;
   ejectionOffset   = 9.0;
   thetaMin         = 0;
   thetaMax         = 180;
   phiReferenceVel  = 0;
   phiVariance      = 360;
   overrideAdvance = false;
   particles = "NukeRocketOverlayExplosionParticle";

};

datablock ParticleData(NukeRocketExplosionRingParticle)
{
dragCoefficient      = 4;
gravityCoefficient   = -1.0;
inheritedVelFactor   = 0.2;
constantAcceleration = 0.0;
lifetimeMS           = 8000;
lifetimeVarianceMS   = 135;
textureName          = "base/data/particles/cloud";
spinSpeed = 25.0;
spinRandomMin = -25.0;
spinRandomMax = 25.0;
colors[0]     = "1 0.3 0.0 0.8";
colors[1]     = "0.2 0.2 0.2 0.3";
sizes[0]      = 20;
sizes[1]      = 24;

useInvAlpha = false;
};
datablock ParticleEmitterData(NukeRocketExplosionRingEmitter)
{
lifeTimeMS = 800;

   ejectionPeriodMS = 2;
   periodVarianceMS = 0;
   ejectionVelocity = 200;
   velocityVariance = 1.0;
   ejectionOffset   = 80.0;
   thetaMin         = 89;
   thetaMax         = 90;
   phiReferenceVel  = 0;
   phiVariance      = 360;
   overrideAdvance = false;
   particles = "NukeRocketExplosionRingParticle";
};

datablock ParticleData(NukeRocketExplosionRing2Particle)
{
dragCoefficient      = 4;
gravityCoefficient   = -1.5;
inheritedVelFactor   = 0.2;
constantAcceleration = 0.0;
lifetimeMS           = 8000;
lifetimeVarianceMS   = 135;
textureName          = "base/data/particles/cloud";
spinSpeed = 25.0;
spinRandomMin = -25.0;
spinRandomMax = 25.0;
colors[0]     = "1 0.3 0.0 0.8";
colors[1]     = "0.2 0.2 0.2 0.3";
sizes[0]      = 18;
sizes[1]      = 22;

useInvAlpha = false;
};
datablock ParticleEmitterData(NukeRocketExplosionRing2Emitter)
{
lifeTimeMS = 300;

   ejectionPeriodMS = 2;
   periodVarianceMS = 0;
   ejectionVelocity = 100;
   velocityVariance = 1.0;
   ejectionOffset   = 60.0;
   thetaMin         = 89;
   thetaMax         = 90;
   phiReferenceVel  = 0;
   phiVariance      = 360;
   overrideAdvance = false;
   particles = "NukeRocketExplosionRing2Particle";
};
datablock ParticleData(NukeRocketExplosionRing3Particle)
{
dragCoefficient      = 4;
gravityCoefficient   = -2;
inheritedVelFactor   = 0.2;
constantAcceleration = 0.0;
lifetimeMS           = 8000;
lifetimeVarianceMS   = 135;
textureName          = "base/data/particles/cloud";
spinSpeed = 25.0;
spinRandomMin = -25.0;
spinRandomMax = 25.0;
colors[0]     = "1 0.3 0.0 0.8";
colors[1]     = "0.2 0.2 0.2 0.3";
sizes[0]      = 15;
sizes[1]      = 20;

useInvAlpha = false;
};
datablock ParticleEmitterData(NukeRocketExplosionRing3Emitter)
{
lifeTimeMS = 300;

   ejectionPeriodMS = 2;
   periodVarianceMS = 0;
   ejectionVelocity = 50;
   velocityVariance = 1.0;
   ejectionOffset   = 40.0;
   thetaMin         = 89;
   thetaMax         = 90;
   phiReferenceVel  = 0;
   phiVariance      = 360;
   overrideAdvance = false;
   particles = "NukeRocketExplosionRing3Particle";
};

datablock DebrisData(NukeRocketBitsDebris)
{
   emitters = "NukeRocketTrailEmitter";

lifetime = 0.6;
minSpinSpeed = -300.0;
maxSpinSpeed = 300.0;
elasticity = 0.5;
friction = 0.2;
numBounces = 0;
staticOnMaxBounce = true;
snapOnMaxBounce = false;
fade = false;

gravModifier = 0.7;
};

datablock ExplosionData(NukeRocketExplosion)
{
   //explosionShape = "";
   //explosionShape = "./explosionSphere1.dts";
soundProfile = NukeRocketExplodeSound;

   debris = NukeRocketBitsDebris;
   debrisNum = 100;
   debrisNumVariance = 0;
   debrisPhiMin = 0;
   debrisPhiMax = 360;
   debrisThetaMin = 0;
   debrisThetaMax = 180;
   debrisVelocity = 125;
   debrisVelocityVariance = 100;
   lifeTimeMS = 3000;

   particleEmitter = NukeRocketExplosionEmitter;
   particleDensity = 26;
   particleRadius = 5;

   emitter[0] = NukeRocketExplosionRingEmitter;
   emitter[1] = NukeRocketOverlayExplosionEmitter;
   emitter[2] = NukeRocketExplosionRing2Emitter;
   emitter[3] = NukeRocketExplosionRing3Emitter;
   emitter[4] = NukeRocketExplosionEmitter2;

   faceViewer     = true;
   explosionScale = "1 1 1";

   shakeCamera = true;
   camShakeFreq = "10.0 10.0 10.0";
   camShakeAmp = "15.0 15.0 15.0";
   camShakeDuration = 5;
   camShakeRadius = 500.0;

   // Dynamic light
   lightStartRadius = 60;
   lightEndRadius = 1000;
   lightStartColor = "0.9 0.8 0.2 1";
   lightEndColor = "0.3 0.1 0.0 1";

   damageRadius = 150;
   radiusDamage = 1000;

   impulseRadius = 275;
   impulseForce = 20000;

   playerBurnTime = 5000;
};

/////////////////
//  Projectile //
/////////////////

   datablock AudioProfile(NukeRocketLoopSound)
   {
      filename    = "./rocketLoop.wav";
      description = AudioDefaultLooping3d;
      preload = true;
   };
   AddDamageType("NukeRocket",   '<bitmap:add-ons/Projectile_NukeRocket/nuked> %1',    '%2 <bitmap:add-ons/Projectile_NukeRocket/nuked> %1',1,1);
datablock ProjectileData(gravityRocketProjectile)
{
   projectileShapeName = "./nukerocket.dts";
   directDamage        = 10000;
   directDamageType = $DamageType::NukeRocket;
   radiusDamageType = $DamageType::NukeRocket;
   impactImpulse    = 1000;
   verticalImpulse    = 1000;
   explosion           = NukeRocketExplosion;
   particleEmitter     = NukeRocketTrailEmitter;

   brickExplosionRadius = 100;
   brickExplosionImpact = false;          //destroy a brick if we hit it directly?
   brickExplosionForce  = 200;             
   brickExplosionMaxVolume = 1750;          //max volume of bricks that we can destroy
   brickExplosionMaxVolumeFloating = 2000;  //max volume of bricks that we can destroy if they aren't connected to the ground (should always be >= brickExplosionMaxVolume)

   sound = NukeRocketLoopSound;

   muzzleVelocity      = 85;
   velInheritFactor    = 1.0;

   armingDelay         = 00;
   lifetime            = 150000;
   fadeDelay           = 10000;
   bounceElasticity    = 0.5;
   bounceFriction      = 0.20;
   isBallistic         = true;
   gravityMod = 0.8;

   hasLight    = true;
   lightRadius = 50.0;
   lightColor  = "1 0.5 0.0";

   uiName = "Nuclear Rocket"; //naming it this way so it's next to the rocket in the alphabetized list
};




I think the same problem was with the duck cannon
Also that's waaaaay too many datablocks for one weapon

Also that's waaaaay too many datablocks for one weapon
Also a bunch of them are duplicates of default add-on datablocks
Read and follow this

I think the same problem was with the duck cannon
what was the problem with the duck cannon and how was it fixed

what was the problem with the duck cannon and how was it fixed
The problem was custom explosion bitmaps not showing and the solution was not giving a stuff

how was it fixed
It was never fixed. It is most likely the game engine's fault.