Author Topic: Edited vehicle isn't showing up in the addons list  (Read 797 times)

So I edited heed's old AA turret. I made the projectiles do more damage, the gun shoot faster and I made the projectile go faster.
I tried to test it but it won't show up in-game.

Code: [Select]
datablock TSShapeConstructor(AATurretDts)
{
baseShape  = "./AATurret.dts";
sequence0  = "./t_root.dsq root";

sequence1  = "./t_root.dsq run";
sequence2  = "./t_root.dsq walk";
sequence3  = "./t_root.dsq back";
sequence4  = "./t_root.dsq side";

sequence5  = "./t_root.dsq crouch";
sequence6  = "./t_root.dsq crouchRun";
sequence7  = "./t_root.dsq crouchBack";
sequence8  = "./t_root.dsq crouchSide";

sequence9  = "./t_look.dsq look";
sequence10 = "./t_root.dsq headside";
sequence11 = "./t_root.dsq headUp";

sequence12 = "./t_root.dsq jump";
sequence13 = "./t_root.dsq standjump";
sequence14 = "./t_root.dsq fall";
sequence15 = "./t_root.dsq land";

sequence16 = "./t_root.dsq armAttack";
sequence17 = "./t_root.dsq armReadyLeft";
sequence18 = "./t_root.dsq armReadyRight";
sequence19 = "./t_root.dsq armReadyBoth";
sequence20 = "./t_root.dsq spearready"; 
sequence21 = "./t_root.dsq spearThrow";

sequence22 = "./t_root.dsq talk"; 

sequence23 = "./t_root.dsq death1";

sequence24 = "./t_root.dsq shiftUp";
sequence25 = "./t_root.dsq shiftDown";
sequence26 = "./t_root.dsq shiftAway";
sequence27 = "./t_root.dsq shiftTo";
sequence28 = "./t_root.dsq shiftLeft";
sequence29 = "./t_root.dsq shiftRight";
sequence30 = "./t_root.dsq rotCW";
sequence31 = "./t_root.dsq rotCCW";

sequence32 = "./t_root.dsq undo";
sequence33 = "./t_root.dsq plant";

sequence34 = "./t_root.dsq sit";

sequence35 = "./t_root.dsq wrench";
};   





datablock ProjectileData(AATurretProjectile : gunProjectile)
{
 directDamage = 40;
};

datablock PlayerData(AATurretPlayer)
{
ShootOnClick=1;
ShootOnClick_Hold=1;
ShootOnClick_ShootDelay=100;
ShootOnClick_ReShootDelay=100;
ShootOnClick_ProjectileCount=2;
ShootOnClick_RequiredSlot=0;
ShootOnClick_Sound=gunshot1Sound;

ShootOnClick_Projectile[0]= AATurretProjectile;
ShootOnClick_Position[0]="3 -1 1";
ShootOnClick_Velocity[0]="200 0 0";
ShootOnClick_Scale[0]="1 1 1";

ShootOnClick_Projectile[1]= AATurretProjectile;
ShootOnClick_Position[1]="3 1 1";
ShootOnClick_Velocity[1]="200 0 0";
ShootOnClick_Scale[1]="1 1 1";

   renderFirstPerson = true;
   emap = false;
   
   className = Armor;
   shapeFile = "./AATurret.dts";
   cameraMaxDist = 15;
   cameraTilt = 0.261;
   cameraVerticalOffset = 5.3;
   computeCRC = false;
 
   canObserve = true;
   cmdCategory = "Clients";

   cameraDefaultFov = 90.0;
   cameraMinFov = 5.0;
   cameraMaxFov = 120.0;
   
   //debrisShapeName = "~/data/player/debris_player.dts";
   //debris = horseDebris;

   aiAvoidThis = true;

   minLookAngle = -1.5708;
   maxLookAngle = 0;
   maxFreelookAngle = 3.0;

   mass = 200;
   drag = 10;
   maxdrag = 0.52;
   density = 0.7;
   maxDamage = 250;
   maxEnergy =  10;
   repairRate = 0.33;
   energyPerDamagePoint = 75.0;

   rechargeRate = 0.4;

   runForce = 0 * 0;
   runEnergyDrain = 0;
   minRunEnergy = 0;
   maxForwardSpeed = 0;
   maxBackwardSpeed = 0;
   maxSideSpeed = 0;

   maxForwardCrouchSpeed = 0;
   maxBackwardCrouchSpeed = 0;
   maxSideCrouchSpeed = 0;

   maxForwardProneSpeed = 0;
   maxBackwardProneSpeed = 0;
   maxSideProneSpeed = 0;

   maxForwardWalkSpeed = 0;
   maxBackwardWalkSpeed = 0;
   maxSideWalkSpeed = 0;

   maxUnderwaterForwardSpeed = 0;
   maxUnderwaterBackwardSpeed = 0;
   maxUnderwaterSideSpeed = 0;

   jumpForce = 0 * 0; //8.3 * 90;
   jumpEnergyDrain = 0;
   minJumpEnergy = 0;
   jumpDelay = 0;

   minJetEnergy = 0;
jetEnergyDrain = 0;
canJet = 0;

   recoverDelay = 0;
   recoverRunForceScale = 1.2;

   minImpactSpeed = 250;
   speedDamageScale = 3.8;

   boundingBox = vectorScale("2.5 2.5 1.7", 4);
   crouchBoundingBox = vectorScale("2.5 2.5 1.7", 4);
   proneBoundingBox = vectorScale("2.5 2.5 1.7", 4);

   pickupRadius = 0.75;
   
   // Damage location details
   boxNormalHeadPercentage       = 0.83;
   boxNormalTorsoPercentage      = 0.49;
   boxHeadLeftPercentage         = 0;
   boxHeadRightPercentage        = 1;
   boxHeadBackPercentage         = 0;
   boxHeadFrontPercentage        = 1;

   // Foot Prints
   //decalData   = HorseFootprint;
   //decalOffset = 0.25;


   jetEmitter = playerJetEmitter;
   jetGroundEmitter = playerJetGroundEmitter;
   jetGroundDistance = 4;
 
   //footPuffEmitter = LightPuffEmitter;
   footPuffNumParts = 10;
   footPuffRadius = 0.25;

   //dustEmitter = LiftoffDustEmitter;

   splash = PlayerSplash;
   splashVelocity = 4.0;
   splashAngle = 67.0;
   splashFreqMod = 300.0;
   splashVelEpsilon = 0.60;
   bubbleEmitTime = 0.1;
   splashEmitter[0] = PlayerFoamDropletsEmitter;
   splashEmitter[1] = PlayerFoamEmitter;
   splashEmitter[2] = PlayerBubbleEmitter;
   mediumSplashSoundVelocity = 10.0;   
   hardSplashSoundVelocity = 20.0;   
   exitSplashSoundVelocity = 5.0;

   // Controls over slope of runnable/jumpable surfaces
   runSurfaceAngle  = 85;
   jumpSurfaceAngle = 86;

   minJumpSpeed = 20;
   maxJumpSpeed = 30;

   horizMaxSpeed = 68;
   horizResistSpeed = 33;
   horizResistFactor = 0.35;

   upMaxSpeed = 80;
   upResistSpeed = 25;
   upResistFactor = 0.3;
   
   footstepSplashHeight = 0.35;

   //NOTE:  some sounds commented out until wav's are available

   JumpSound = HorseJumpSound;

   // Footstep Sounds
   //FootSoftSound        = HorseFootFallSound;
   //FootHardSound        = HorseFootFallSound;
   //FootMetalSound       = HorseFootFallSound;
   //FootSnowSound        = HorseFootFallSound;
   //FootShallowSound     = HorseFootFallSound;
   //FootWadingSound      = HorseFootFallSound;
   //FootUnderwaterSound  = HorseFootFallSound;
   //FootBubblesSound     = FootLightBubblesSound;
   //movingBubblesSound   = ArmorMoveBubblesSound;
   //waterBreathSound     = WaterBreathMaleSound;

   //impactSoftSound      = ImpactLightSoftSound;
   //impactHardSound      = ImpactLightHardSound;
   //impactMetalSound     = ImpactLightMetalSound;
   //impactSnowSound      = ImpactLightSnowSound;
   
   //impactWaterEasy      = ImpactLightWaterEasySound;
   //impactWaterMedium    = ImpactLightWaterMediumSound;
   //impactWaterHard      = ImpactLightWaterHardSound;
   
   groundImpactMinSpeed    = 10.0;
   groundImpactShakeFreq   = "4.0 4.0 4.0";
   groundImpactShakeAmp    = "1.0 1.0 1.0";
   groundImpactShakeDuration = 0.8;
   groundImpactShakeFalloff = 10.0;
   
   //exitingWater         = ExitingWaterLightSound;
   
   observeParameters = "0.5 4.5 4.5";

   // Inventory Items
maxItems   = 10; //total number of bricks you can carry
maxWeapons = 5; //this will be controlled by mini-game code
maxTools = 5;

uiName = "AA Turret";
rideable = true;
   lookUpLimit = 0.6;
   lookDownLimit = 0.1;

canRide = false;
showEnergyBar = false;
paintable = true;

brickImage = horseBrickImage; //the imageData to use for brick deployment

   numMountPoints = 1;
   mountThread[0] = "sit";

   //protection for passengers
   protectPassengersBurn   = true;  //protect passengers from the burning effect of explosions?
   protectPassengersRadius = false;  //protect passengers from radius damage (explosions) ?
   protectPassengersDirect = false; //protect passengers from direct damage (bullets) ?
};





datablock DebrisData(AAturretDebris)
{
   emitters = "jeepDebrisTrailEmitter";

shapeFile = "./AATurret.dts";
lifetime = 3.0;
minSpinSpeed = -300.0;
maxSpinSpeed = 300.0;
elasticity = 0.5;
friction = 0.2;
numBounces = 1;
staticOnMaxBounce = true;
snapOnMaxBounce = false;
fade = true;

gravModifier = 2;
};


datablock ExplosionData(AATurretExplosion)
{
   //explosionShape = "";
   lifeTimeMS = 150;

   soundProfile = vehicleExplosionSound;
   
   emitter[0] = vehicleExplosionEmitter;
   emitter[1] = vehicleExplosionEmitter2;

   debris = turretDebris;
   debrisNum = 1;
   debrisNumVariance = 0;
   debrisPhiMin = 0;
   debrisPhiMax = 360;
   debrisThetaMin = 0;
   debrisThetaMax = 20;
   debrisVelocity = 18;
   debrisVelocityVariance = 3;

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

   shakeCamera = true;
   camShakeFreq = "7.0 8.0 7.0";
   camShakeAmp = "10.0 10.0 10.0";
   camShakeDuration = 0.75;
   camShakeRadius = 15.0;

   // Dynamic light
   lightStartRadius = 0;
   lightEndRadius = 20;
   lightStartColor = "0.45 0.3 0.1";
   lightEndColor = "0 0 0";

   //impulse
   impulseRadius = 15;
   impulseForce = 1000;
   impulseVertical = 2000;

   //radius damage
   radiusDamage        = 30;
   damageRadius        = 8.0;

   //burn the players?
   playerBurnTime = 5000;

};

datablock ProjectileData(AATurretExplosionProjectile)
{
   directDamage        = 0;
   radiusDamage        = 0;
   damageRadius        = 0;
   explosion           = AATurretExplosion;

   directDamageType  = $DamageType::jeepExplosion;
   radiusDamageType  = $DamageType::jeepExplosion;

   explodeOnDeath = 1;

   armingDelay         = 0;
   lifetime            = 10;
};


function Projectile::onAdd(%obj,%a,%b)
{
       if(%obj.dataBlock.getID() == AATurretProjectile.getID())
{

%obj.initialvelocity=vectorscale(vectorNormalize(%obj.initialvelocity),600);
}
Parent::onAdd(%obj,%a,%b);
}

« Last Edit: March 27, 2012, 05:28:04 PM by Mr.jacksaunt »

If it's not showing up in the add on list:
Make sure the namecheck.txt and description.txt are correct. Is the console saying anything about it?

If it's not showing up in game:
Any errors or anything in the console?

If it's not showing up in the add on list:
Make sure the namecheck.txt and description.txt are correct. Is the console saying anything about it?
Both seem fine. After I checked I deleted namecheck.txt because I'm pretty sure that regenerates.
If it's not showing up in game:
Any errors or anything in the console?
I can't get it in game, I'll try a workaround console command.

Did you rename any files.

Did you rename any files.
nope

So I manually loaded it, but whenever you fire it I get this in the console.
Code: [Select]
Add-Ons/Vehicle_AATurret/Vehicle_AATurret/Vehicle_AATurret.cs (0) Unknown command onAdd.




Have you tried

Code: [Select]
datablock ProjectileData(AATurretProjectile : gunProjectile)
{
 directDamage = 40;
 muzzleVelocity= 90+X;
};

instead of function Projectile::onAdd(%obj,%a,%b) ?

EDIT: Nvm, totally wrong, just reread Deoysy:

Code: [Select]
datablock ProjectileData(AATurretProjectile : gunProjectile)
{
 directDamage = 40;
};

package AATurret_modifyPackage
{
function Projectile::onAdd(%obj,%a,%b)
{
       if(%obj.dataBlock.getID() == AATurretProjectile.getID())
{

%obj.initialvelocity=vectorscale(vectorNormalize(%obj.initialvelocity),10);
}
Parent::onAdd(%obj,%a,%b);
}
};
deactivatePackage(AATurret_modifyPackage);
activatepackage(AATurret_modifyPackage);
« Last Edit: March 31, 2012, 11:20:33 AM by Schorle »

Have you renamed the datablocks as well? Just in case, so it won't conflict with an already existing add-on.