DAZZLE'S UPGRADE PACK

If you haven't already done so, upgrade your game by downloading Dazzle's all-in-one upgrade pack. It comes with everything you need for today's servers. Does your blue bar freeze when joining servers? Do you lag in games? Do you get an annoying siren in Phobik's Servers? This is what you need. CLICK HERE TO DOWNLOAD.

Scripting Tank Datablocks: Balanced Tank Ideas

Modding questions, answers, help.....

Moderators: Warfare, Moderator, Admin

User avatar
TMG Leader
Veteran Light
Veteran Light
Posts: 962
Joined: Mon Jun 25, 2007 10:31 am
Location: In my refrigerator....

Post by TMG Leader »

heres one of my very popular tanks that is in my TMG server
the racing tank

Code: Select all

datablock TankData(RaceTank : MediumTank)
{
   shapeFile = "~/data/shapes/TMG Server/tank01.dts";
   brainShapeFile = "~/data/shapes/tanks/brainjar02.dts";

   maxSpeed = 40.9;          // meters per second (in forward direction)
   accelRate = 41.0;         // increase velocity this many meters per second
   deccelRate = 35.0;        // when breaking, decrease velocity
   turnRate = 50.0;          // degrees per second
   antiSlideRate = 6.0;

   turretHorRange = 53.5;    // range in +/- degrees of turret horizontally
   turretAutoLevel = 0.92;

   damageAmount = 3.0;      // total amount of damage tank can withstand
   suspensionRange = 1.1;    // proportion of wheel size for wheel to move up/down

   damageScale = 15.0;        // multiply damage we do to others by this amount
   armorScale = 1.0;         // multiply damage we take by this amount (note: smaller better)
   fireScale = 0.0;

   defaultProjectile = "LightProjectile";
   ai = GoldLightAI;
   
};
has a fair speed, shoots very fast, but very low health.
Kill average: around 10 tanks per spawn.
code /race
First to fall, last man standing.
User avatar
Downgrade
Need Major Repair
Need Major Repair
Posts: 1307
Joined: Thu Dec 28, 2006 9:40 pm

Post by Downgrade »

thanks to you guys(hhal and disturbo) i have been inspired to also make new tanks even though i dont know much about scripting.
my tank idea is a doubledecker lighttank( i already have it in my mod, but i will modify it) since its 2 light tanks ontop of eachother it will be 2 times as fast ( or slower cause its 2 tanks on top of eachother)as lighttank , does twice more damage than original lighttank, twice more durable, shoots 2 times faster, breaks slower and i will edit later if i have more ideas


*EDIT* it turns slower

current code is /light2( i may change it)
so what do you guys think?(i mean you guys are like way better then me so give me tips)
The memories will never die.
User avatar
Downgrade
Need Major Repair
Need Major Repair
Posts: 1307
Joined: Thu Dec 28, 2006 9:40 pm

Post by Downgrade »

ok here it is

Code: Select all

datablock TankData(Light2Tank : MediumTank)
{
   shapeFile = "~/data/shapes/tanks/tank01.dts";
   brainShapeFile = "~/data/shapes/tanks/tank01.dts";
   camera = "DefaultTankCamera";
   fx = "DefaultTankFx";
   misc = "DefaultTankMisc";

   maxSpeed = 31.8.9;          // meters per second (in forward direction)
   accelRate = 30.0;         // increase velocity this many meters per second
   deccelRate = 2.0;        // when breaking, decrease velocity
   turnRate = 10.0;          // degrees per second
   antiSlideRate = 10.9;

   turretHorRange = 360.5;    // range in +/- degrees of turret horizontally
   turretAutoLevel = 0.92;

   damageAmount = 9.5;      // total amount of damage tank can withstand
   suspensionRange = 1.8;    // proportion of wheel size for wheel to move up/down

   damageScale = 15.0;        // multiply damage we do to others by this amount
   armorScale = 0.9;         // multiply damage we take by this amount (note: smaller better)

   defaultProjectile = "LightProjectile";
   ai = GoldLightAI;
};
The memories will never die.
User avatar
Downgrade
Need Major Repair
Need Major Repair
Posts: 1307
Joined: Thu Dec 28, 2006 9:40 pm

Post by Downgrade »

this is my medic tank

Code: Select all

datablock TankData(HealBoss : MediumTank)
{
   shapeFile = "~/data/shapes/tanks/tank05.dts";
   brainShapeFile = "~/data/shapes/Common/rehealed.dts";
   fx = "BabyBossFX";

   maxSpeed = 20.0;          // meters per second (in forward direction)
   accelRate = 22.0;         // increase velocity this many meters per second
   deccelRate = 16.0;        // when breaking, decrease velocity
   turnRate = 61.0;          // degrees per second
   antiSlideRate = 10.2;

   turretHorRange = 33.5;    // range in +/- degrees of turret horizontally
   turretAutoLevel = 0.92;

   damageAmount = 10.0;      // total amount of damage tank can withstand
   suspensionRange = 1.8;    // proportion of wheel size for wheel to move up/down

   damageScale = -10.0;        // multiply damage we do to others by this amount
   armorScale = 0.0;         // multiply damage we take by this amount (note: smaller better)

   defaultProjectile = "LightProjectile";
   ai = GoldLightAI;

};
The memories will never die.
Disturbo
A Few Broken Fenders
A Few Broken Fenders
Posts: 178
Joined: Thu Mar 22, 2007 12:46 pm

Post by Disturbo »

Thanks everyone for chipping in! Brandon, what is your double-light tank's balancing drawback supposed to be?

BTW, your medic tank seems to be somewhat of an over-heal since 10 damageAmount + -10 damageScale + LightProjectile = what the...?! It's like a constantly-available health powerup, and the medic tank concept, IMO, is to give a boost in health to your teammates so that they can make it to the scrum goal or get out of a tough firefight alive, not get a total re-heal and become nigh-invincible!

Of course, it's still a legitimate medic tank datablock, just not balanced.
Hhal wrote:^I'm working on a different EC: a red UFO. So far it's a bit harder to use but works better than the orginal Charger.

EDIT: Turn the acceleration wayyyyyyyyyyy down. If you set the acceleration to 168, your tank will take off at 168 before reaching 42. Same with the brakes.
I revised the EC datablock yesterday a little while after making the help post. It's not so 'electric' any more, but now has more fluid, controllable handling, with the turn rate taken from the Heavy Tank. Also, you were right about the burst-accel thing, an error that caused the old EC to blast off into oblivion at the touch of a button. The changes are:

-More precise, fluid turning: the turn rate has been brought down to 82 degrees/second.
- Lower top speed, so as to make it more controllable during fights on unsuited terrain. It's still quicker than RapidTank.
- 2 days worth of fog-proofing, done by setting the armor to 100000 and the armorscale up to 10000 so as to keep the effective armor the same.

The blast-acceleration has not been changed, since something must be lightning-quick about this tank. The fog-proofing has been done so that the blast-accel is not a problem. BTW, the tank is physically a black UFO with the RapidTank's brain and brainjar.

The electric weapon is still in development - I've got the concept, but I need to refine the emitter settings and choose a projectile shape and explosion.

datablock TankData(ElectricCharger : MediumTank)
{
shapeFile = "~/data/shapes/Electric/Electric.dts";
brainShapeFile = "~/data/shapes/Electric/brainjar01.dts";
turnRate = 82.0; // degrees per second
accelRate = 168.0; // increase velocity this many meters per second
deccelRate = 168.0; // when breaking, decrease velocity
// this many meters per second
coastDeccelRate = 10.0; // rate of decceleration when coasting...
antiSlideRate = 42.0; // dissipate sideways velocity by this many meters
// per second
maxSpeed = 30.0; // meters per second (in forward direction)
turretVerCenter = 0.0; // vertical resting angle of turret in degrees
turretHorRange = 0.0; // range in +/- degrees of turret horizontally
turretVerRange = 60.0; // range in +/- degrees of turret vertically
turretAutoLevel = 0.5;
suspensionRange = 0.1; // proportion of wheel size for wheel to move up/down
springRangeX = 0.01;
springRangeY = 0.01;
springVelScale = 0.1;
springCorrectScale1 = 2.0;
springCorrectScale2 = 0.99;
damageAmount = 100000.0; // total amount of damage tank can withstand
damageScale = 0.5; // multiply damage we do to others by this amount
armorScale = 10000.0; // multiply damage we take by this amount (note: smaller better)
fireScale = 0.1; // adjust inter-fire interval by scale (2 means twice as slow)
defaultProjectile = "LaserProjectile";
ai = GoldHeavyAI;
};


Test runs will be done in two stages: One round of tests on ideal terrain, and another round on totally unsuited terrain.
The ideal terrain maps are CB's Afghan Flats, Napalm's Face Off, Napalm's Christmas map and Dash's G2. The totally unsuited terrain maps are Napalm's Peppermint Point, Napalm's Emerald Clove and Napalm's Easy Street. Napalm's maps rule! :rockon:
Image

Visit the ThinkTanks tank factory!
User avatar
Downgrade
Need Major Repair
Need Major Repair
Posts: 1307
Joined: Thu Dec 28, 2006 9:40 pm

Post by Downgrade »

^ as i said i dunno much so im doing best i can( you could have at least say thank you for trying to make a new tank)
The memories will never die.
User avatar
TMG Leader
Veteran Light
Veteran Light
Posts: 962
Joined: Mon Jun 25, 2007 10:31 am
Location: In my refrigerator....

Post by TMG Leader »

@ Brandon I noticed that your medic tanks tank data was named healboss i didnt know if u wanted it to heal itself if u didnt know how to to this heres the code add it at the end of the tanks data.

Code: Select all

repairRate = 0.7; 
repairs per second i would leave the number from 0.1-0.7 or else if it goes any higher your tank will take for ever to die.
First to fall, last man standing.
Disturbo
A Few Broken Fenders
A Few Broken Fenders
Posts: 178
Joined: Thu Mar 22, 2007 12:46 pm

Post by Disturbo »

^Wow, thanks TMG leader. I didn't know about tanks having self-repair capabilities! This gives me a new idea: an awesomely powerful tank that only lasts for 2-3 minutes, so that you must score as many kills as possible in that time until the tank self-destructs because of negative repair rate.

^^Thank you.

Now for some news on the Electric Charger project. I got the weapon working, and it's rapid-burst-firing blue laser with low strength and a slow burst-loading rate. I did two test runs at Afghan Flats and Medulla Mesa, and the results were good, with the tank performing decently and proving competitive. It's a little hard to target light tanks using the EC's signature weapon-aided ramming attack, but heavies, endurance tanks and mediums are excellent targets for charging. Against light tanks, I find it most effective to use the tight turn rate and fast laser weapon to kill them, but the laser is too weak for use against heavy/medium/endurance tanks.

Also, as Hhal said, the tank blasts off to 168m/s over the first second of acceleration before slowing down to 30m/s over the next second, and this allows for a tactical trick to come up close to a heavy/medium/endurance tank and charge into them, hitting them in that first second to send them flying off far away...

I'm now going to do test runs at Face-Off and G2, and see if it's safe to turn up the maximum speed all the way to 60m/s.
Image

Visit the ThinkTanks tank factory!
Hhal
Need Major Repair
Need Major Repair
Posts: 620
Joined: Sat Jan 06, 2007 1:23 pm

Post by Hhal »

^Sounds awesome Disturbance! Very good job! While you're working on the EC, I'll start on a Medic. I already have one, but I'd like to take another shot at it.
Disturbo
A Few Broken Fenders
A Few Broken Fenders
Posts: 178
Joined: Thu Mar 22, 2007 12:46 pm

Post by Disturbo »

^Thanks, but I don't know how to improve upon a medic tank. :?

Meanwhile, the ElectricCharger project has reached a fork: I have two datablocks. A more controllable but slower EC(if you can call it that), and a much faster but very hard to control EC(which would need a user's manual :razz: ). Here they are, I'll let you all vote:

This is the older, more conservative datablock, version 0.1:

Code: Select all

datablock TankData(ElectricCharger : MediumTank)
{
   shapeFile = "~/data/shapes/Electric/Electric.dts";
   brainShapeFile = "~/data/shapes/Electric/brainjar01.dts";
   turnRate = 82.0;          // degrees per second
   accelRate = 168.0;         // increase velocity this many meters per second
   deccelRate = 168.0;        // when breaking, decrease velocity
                             // this many meters per second
   coastDeccelRate = 10.0;   // rate of decceleration when coasting...
   antiSlideRate = 42.0;      // dissipate sideways velocity by this many meters
                             // per second
   maxSpeed = 30.0;          // meters per second (in forward direction)
   turretVerCenter = 0.0;    // vertical resting angle of turret in degrees
   turretHorRange = 0.0;    // range in +/- degrees of turret horizontally
   turretVerRange = 60.0;    // range in +/- degrees of turret vertically
   turretAutoLevel = 0.5;
   suspensionRange = 0.1;    // proportion of wheel size for wheel to move up/down
   springRangeX = 0.01;
   springRangeY = 0.01;
   springVelScale = 0.1;
   springCorrectScale1 = 2.0;
   springCorrectScale2 = 0.99;
   damageAmount = 100000.0;      // total amount of damage tank can withstand
   damageScale = 0.5;        // multiply damage we do to others by this amount
   armorScale = 10000.0;         // multiply damage we take by this amount (note: smaller better)
   fireScale = 0.1;          // adjust inter-fire interval by scale (2 means twice as slow)
   defaultProjectile = "LaserProjectile";
   ai = GoldHeavyAI;
};
And this is the newer, wilder version 0.2 datablock that came as a result of all that testing:

Code: Select all

datablock TankData(ElectricCharger : MediumTank) // Version 0.2
{
   shapeFile = "~/data/shapes/Electric/Electric.dts";
   brainShapeFile = "~/data/shapes/Electric/brainjar01.dts";
   turnRate = 80.0;          // degrees per second
   accelRate = 168.0;         // increase velocity this many meters per second
   deccelRate = 168.0;        // when breaking, decrease velocity
                             // this many meters per second
   coastDeccelRate = 168.0;   // rate of decceleration when coasting...
   antiSlideRate = 42.0;      // dissipate sideways velocity by this many meters
                             // per second
   maxSpeed = 63.0;          // meters per second (in forward direction)
   turretVerCenter = 0.0;    // vertical resting angle of turret in degrees
   turretHorRange = 0.0;    // range in +/- degrees of turret horizontally
   turretVerRange = 60.0;    // range in +/- degrees of turret vertically
   turretAutoLevel = 0.5;
   suspensionRange = 0.1;    // proportion of wheel size for wheel to move up/down
   springRangeX = 0.01;
   springRangeY = 0.01;
   springVelScale = 0.1;
   springCorrectScale1 = 2.0;
   springCorrectScale2 = 0.99;
   damageAmount = 100000.0;      // total amount of damage tank can withstand
   damageScale = 0.5;        // multiply damage we do to others by this amount
   armorScale = 10000.0;         // multiply damage we take by this amount (note: smaller better)
   fireScale = 0.1;          // adjust inter-fire interval by scale (2 means twice as slow)
   defaultProjectile = "LaserProjectile";
   ai = GoldHeavyAI;
};
Version 0.1 is more balanced and does averagely on both suitable and unsuited terrains. Version 0.2 is powerful on correct terrain, but is slightly worse than 0.1 on rougher turf. My vote goes to 0.2! 8) But I'm still divided 60-40 between the two. Here's a picture of the two tank's performance on Dash's G2 map, under the control of my noobish TBM skills:

Version 0.1
Image

Version 0.2
Image

Here's a picture of me ramming Blue bots into a fog pit on Napalm's Face-Off map, using ElectricCharger Version 0.2.

Image

And a pic of me after having sawed UFO-bot Target Practice's brain off with my laser.

Image

And a pic of me ramming Ri bot off into the fog on Face-Off, resulting in me also falling in, and Fud bot chasing after me. However, my ElectricCharger is fog-proof(via the armor-armorscale gimmick), and those Light bots are not.

Image

The EC also has a weird-looking bright blue twin-beam muzzleflash imported from Dazzle's Rollerball laser reticle, but I can't get a pic of the flash because the EC is a UFO and has no big flashing cannon. BTW, the EC is not a very good gun platform, since it has no 'turret', and can only turn it's laser gun up or down.
Image

Visit the ThinkTanks tank factory!

Who is online

Users browsing this forum: ClaudeBot [Bot] and 20 guests