Go Back   RunUO - Ultima Online Emulation > RunUO > Custom Script Release Archive

Custom Script Release Archive This is a pre-script database archive of what our users had released.

 
 
Thread Tools Display Modes
Old 02-16-2006, 03:57 PM   #1 (permalink)
Forum Master
 
Lord_Greywolf's Avatar
 
Join Date: Dec 2005
Posts: 7,279
Send a message via Yahoo to Lord_Greywolf
Default Random "Family" Dragons

1st i would like to thank Daat99 for his "Elementals" Script - it gave me the ideas to make this one up

This is a single file - drop in your customs scripts folder
single command also = [add randomdragon

now for the good stuff

it will spawn 1 of 25 different draggons
varying in hues, str, int, etc

and each has a name (deamon name) and a "title" before it

the title denotes how strong it is

from baby sister & baby brother (still slightly better than your common dragon)
Big brother/Sister/cousin Uncle, etc to
to the "Enforcer", " 'Tiny' " and "the God Father" (These 3 are of Boss ranges)

Also adjusts for taming & control slots based on abilites
even adjusts level of TMaps for the higher ones
Loot also goes up too

So 1 spawn will produce a varience from basicaly a normal dragon to a top Boss type

works in spawners just as well too

throw in 5 or so in destard and can be from a solo hunt to a guild hunt - different with each spawning

If you have Daats99 systems installed - then they can also drop reciepies
else if not - you have to comment out 3 lines - they are marked in the script

enjoy !!!!
Attached Files
File Type: zip RandomDragon.zip (1.6 KB, 264 views)

Last edited by Lord_Greywolf; 02-16-2006 at 07:41 PM.
Lord_Greywolf is offline  
Old 02-16-2006, 07:40 PM   #2 (permalink)
Forum Master
 
Lord_Greywolf's Avatar
 
Join Date: Dec 2005
Posts: 7,279
Send a message via Yahoo to Lord_Greywolf
Default

Updated version now posted

only change is a variable was declared but not used
i removed all reference to to

so if all ready have - will not change affect anything except a single warning message of the variable not being used
Lord_Greywolf is offline  
Old 02-16-2006, 09:33 PM   #3 (permalink)
Forum Expert
 
otimpyre's Avatar
 
Join Date: Apr 2003
Location: Georgia
Age: 31
Posts: 392
Question Hues

All the dragons are hued true black when I [add randomdragons. Are you using a custom hues file? I am patched to 5.0.1 This is no biggie I can go in and change the hues of the drags just pointing this out.
otimpyre is offline  
Old 02-16-2006, 11:58 PM   #4 (permalink)
Forum Master
 
Lord_Greywolf's Avatar
 
Join Date: Dec 2005
Posts: 7,279
Send a message via Yahoo to Lord_Greywolf
Default

yes - i am using one of the almost "standard custom" ones there are lol - if there is such a thing

here is a copy of it
Attached Files
File Type: zip hues.zip (119.0 KB, 91 views)
Lord_Greywolf is offline  
Old 03-18-2006, 08:49 PM   #5 (permalink)
Forum Novice
 
Join Date: Feb 2006
Location: Wisconsin USA
Posts: 211
Default Adding Randomloot

I love the Family Dragon Script
But would like to know how i would go about adding random pices of armor as loot
Boulder is offline  
Old 03-19-2006, 09:21 PM   #6 (permalink)
Forum Master
 
Lord_Greywolf's Avatar
 
Join Date: Dec 2005
Posts: 7,279
Send a message via Yahoo to Lord_Greywolf
Default

if you look in the script - see how i did the name with a random number and then the switch command

just duplicate it but change name to addtopack and an item
so the number of items is only limited by your typing


that or find the loot pack for armor, etc in lootpack.cs and add that in as more loot

just depends on the type of drops you want

and thank you your compliment
Lord_Greywolf is offline  
Old 03-20-2006, 04:02 AM   #7 (permalink)
Forum Novice
 
Join Date: Feb 2006
Location: Wisconsin USA
Posts: 211
Default Random Family Dragons

thanks that will work
Boulder is offline  
Old 03-20-2006, 05:19 PM   #8 (permalink)
Forum Novice
 
Join Date: Feb 2006
Location: Wisconsin USA
Posts: 211
Default family dragon

can some look at this tell me if it look right i get error where its highlighted

/*
created by:
Lord Greywolf
with thanks to Daat99 for his "Elementals" script that inspired me to make this
*/
using System;
using Server;
using Server.Items;
using Server.daat99;// remove is no Daat99 installed

namespace Server.Mobiles
{

[CorpseName( "a dragon corpse" )]
public class RandomDragons : BaseCreature
{
[Constructable]
public RandomDragons() : base( AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4 )
{

int i_Resource = 0;
int i_Multiple = 0;
int i_TSlots = 0;
string s_Name;
i_Resource = Utility.RandomMinMax( 1, 25 );

//Name = "a dragon";
Body = Utility.RandomList( 12, 59 );
Hue = Utility.RandomList( 2986, 2999, 2998, 2997, 2995, 2990, 2989, 2980, 2978, 2976, 2975, 2972, 2967, 2957, 2940, 2931, 2862 );
i_Multiple = i_Resource +2;

BaseSoundID = 362;

switch (i_Resource)
{
case 1: default: s_Name = "Baby Dragon ";break;
case 2: s_Name = "Baby Sister ";break;
case 3: s_Name = "Baby Brother ";break;
case 4: s_Name = "Little Dragon ";break;
case 5: s_Name = "Little Sister ";break;
case 6: s_Name = "Little Brother ";break;
case 7: s_Name = "Little Cousin ";break;
case 8: s_Name = "Sister ";break;
case 9: s_Name = "Brother ";break;
case 10: s_Name = "Cousin ";break;
case 11: s_Name = "Big ";break;
case 12: s_Name = "Big Sister ";break;
case 13: s_Name = "Big Brother ";break;
case 14: s_Name = "Big Cousin ";break;
case 15: s_Name = "Aunt ";break;
case 16: s_Name = "Uncle ";break;
case 17: s_Name = "Big Aunt ";break;
case 18: s_Name = "Big Uncle ";break;
case 19: s_Name = "Momma ";break;
case 20: s_Name = "Daddy ";break;
case 21: s_Name = "Big Momma ";break;
case 22: s_Name = "Big Dady ";break;
case 23: s_Name = "Enforcer ";break;
case 24: s_Name = "'Tiny' ";break;
case 25: s_Name = "God Father ";break;
}

Name = s_Name + NameList.RandomName( "daemon" );

SetStr( 800 + (i_Multiple*10), 800 + (i_Multiple*10) );
SetDex( 90 + (i_Multiple*3), 100 + (i_Multiple*3) );
SetInt( 425 + (i_Multiple*3), 460 + (i_Multiple*3) );

SetHits( 500 + (i_Multiple*10), 600 + (i_Multiple*10) );

SetDamage( 5 + (i_Multiple*2), 10 + (i_Multiple*2) );

SetDamageType( ResistanceType.Physical, 80 );
SetDamageType( ResistanceType.Poison, 5 );
SetDamageType( ResistanceType.Fire, 5 );
SetDamageType( ResistanceType.Cold, 5 );
SetDamageType( ResistanceType.Energy, 5 );

SetResistance( ResistanceType.Physical, 50 + i_Multiple );
SetResistance( ResistanceType.Fire, 70 + i_Multiple );
SetResistance( ResistanceType.Cold, 50 + i_Multiple );
SetResistance( ResistanceType.Poison, 40 + i_Multiple );
SetResistance( ResistanceType.Energy, 40 + i_Multiple );

SetSkill( SkillName.EvalInt, 30.0 + (i_Multiple*2) );
SetSkill( SkillName.Magery, 30.0 + (i_Multiple*2) );
SetSkill( SkillName.MagicResist, 50.0 + (i_Multiple*2) );
SetSkill( SkillName.Tactics, 50.0 + (i_Multiple*2) );
SetSkill( SkillName.Wrestling, 50.0 + (i_Multiple*2) );

Fame = 15000;
Karma = -15000;

VirtualArmor = (50 + (i_Multiple*1));

switch (i_Resource)
{
case 1: default: i_TSlots = 3;break;
case 2: i_TSlots = 3;break;
case 3: i_TSlots = 3;break;
case 4: i_TSlots = 3;break;
case 5: i_TSlots = 4;break;
case 6: i_TSlots = 4;break;
case 7: i_TSlots = 4;break;
case 8: i_TSlots = 4;break;
case 9: i_TSlots = 5;break;
case 10: i_TSlots = 5;break;
case 11: i_TSlots = 5;break;
case 12: i_TSlots = 5;break;
case 13: i_TSlots = 6;break;
case 14: i_TSlots = 6;break;
case 15: i_TSlots = 6;break;
case 16: i_TSlots = 6;break;
case 17: i_TSlots = 7;break;
case 18: i_TSlots = 7;break;
case 19: i_TSlots = 7;break;
case 20: i_TSlots = 7;break;
case 21: i_TSlots = 8;break;
case 22: i_TSlots = 8;break;
case 23: i_TSlots = 8;break;
case 24: i_TSlots = 8;break;
case 25: i_TSlots = 9;break;
}

Tamable = true;
ControlSlots = i_TSlots;
MinTameSkill = (100.0 + (i_Multiple*2));

// remove next 2 lines if no Daat99 system installed
if ( Daat99OWLTR.Ops[5].Setting )
PackItem( new ResourceRecipe() );

AddLoot( LootPack.FilthyRich, i_TSlots -1 );
PackItem( new Gold ((i_Multiple*100), (i_Multiple*250)));
case 1: default: p_addtopack = "HavenArms ";break;
case 2: p_addtopack = "HavenBoots ";break;
case 3: p_addtopack = "HavenBracelet ";break;
case 4: p_addtopack = "HavenChest ";break;
case 5: p_addtopack = "HavenGloves ";break;
case 6: p_addtopack = "HavenGorget ";break;
case 7: p_addtopack = "HavenHelm ";break;
case 8: p_addtopack = "HavenLegs ";break;
case 9: p_addtopack = "HavenShield ";break;
case 10: p_addtopack = "HavenRing ";break;
case 11: p_addtopack = "HavenSword ";break;

}
AddLoot = p_addtopack;
public override bool HasBreath{ get{ return true; } } // fire breath enabled
public override bool AutoDispel{ get{ return true; } }
public override int TreasureMapLevel{ get{ if (ControlSlots >= 8) return 6; else if (ControlSlots >= 6) return 5; return 4;} }
public override int Meat{ get{ return 19; } }
public override int Hides{ get{ return 20; } }
public override HideType HideType{ get{ return HideType.Barbed; } }
public override int Scales{ get{ return 10 + ControlSlots; } }
public override ScaleType ScaleType{ get{ return ( Body == 12 ? ScaleType.Yellow : ScaleType.Red ); } }
public override FoodType FavoriteFood{ get{ return FoodType.Meat; } }

public RandomDragons( Serial serial ) : base( serial )
{
}

public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
writer.Write( (int) 0 );
}

public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
int version = reader.ReadInt();
}
}
}
Boulder is offline  
Old 03-20-2006, 06:46 PM   #9 (permalink)
Forum Master
 
Lord_Greywolf's Avatar
 
Join Date: Dec 2005
Posts: 7,279
Send a message via Yahoo to Lord_Greywolf
Default

instead of:

AddLoot = p_addtopack;

try

PackItem( new p_addtopack ());

that should work
Lord_Greywolf is offline  
Old 03-20-2006, 09:57 PM   #10 (permalink)
Forum Novice
 
Join Date: Feb 2006
Location: Wisconsin USA
Posts: 211
Default family dragon

tryed PackItem( new p_addtopack() );
got 4 errors cs1520 line150 column 20
cs1031 line150 column 30
cs1520 line150 column 34 cs1002 line150 colume 48
class, struvt,or interface method must have a return type
Boulder is offline  
Old 03-21-2006, 12:27 AM   #11 (permalink)
Forum Master
 
Lord_Greywolf's Avatar
 
Join Date: Dec 2005
Posts: 7,279
Send a message via Yahoo to Lord_Greywolf
Default

ok - this should work and would be better anyways

remove AddLoot = p_addtopack; completely from it - or what ever you have replaced it with

now for each case # (i.e. case 11: p_addtopack = "HavenSword ";break; )

replace it with:

case 11: PackItem( new HavenSword());break;

and you can remove the p_addtopack variable completely then
Lord_Greywolf is offline  
Old 03-21-2006, 12:55 AM   #12 (permalink)
Forum Novice
 
Join Date: Feb 2006
Location: Wisconsin USA
Posts: 211
Default family dragon

it didnt work

Last edited by Boulder; 03-21-2006 at 02:40 AM.
Boulder is offline  
Old 03-21-2006, 05:46 PM   #13 (permalink)
Forum Master
 
Lord_Greywolf's Avatar
 
Join Date: Dec 2005
Posts: 7,279
Send a message via Yahoo to Lord_Greywolf
Default

ok - i see now why - you have a little bit more wrong - you did not include the switch command - so it does not know what the cases are for ect - make it look more like this:

Code:
PackItem( new Gold ((i_Multiple*100), (i_Multiple*250)));// existing line

	switch (i_Resource)
	{
		case 1: default: PackItem( new (HavenArms );break;
		case 2: PackItem( new (HavenBoots );break;
		case 3: PackItem( new (HavenBracelet );break;
		case 4: PackItem( new (HavenChest );break;
		case 5: PackItem( new (HavenGloves );break;
		case 6: PackItem( new (HavenGorget );break;
		case 7: PackItem( new (HavenHelm );break;
		case 8: PackItem( new (HavenLegs );break;
		case 9: PackItem( new (HavenShield );break;
		case 10: PackItem( new (HavenRing );break;
		case 11: PackItem( new (HavenSword );break; 
	}

} //existing one in there - unless you added an extra one of these
with out the switch command - the case's are useless
Lord_Greywolf is offline  
Old 03-22-2006, 12:21 AM   #14 (permalink)
Forum Novice
 
Join Date: Feb 2006
Location: Wisconsin USA
Posts: 211
Default Random Family Dragons

got one error cs1513 line 151 colum 9
the erro is in red.

/*
created by:
Lord Greywolf
with thanks to Daat99 for his "Elementals" script that inspired me to make this
*/
using System;
using Server;
using Server.Items;
using Server.daat99;// remove is no Daat99 installed

namespace Server.Mobiles
{

[CorpseName( "a dragon corpse" )]
public class RandomDragons : BaseCreature
{
[Constructable]
public RandomDragons() : base( AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4 )
{

int i_Resource = 0;
int i_Multiple = 0;
int i_TSlots = 0;
string s_Name;
i_Resource = Utility.RandomMinMax( 1, 25 );

//Name = "a dragon";
Body = Utility.RandomList( 12, 59 );
Hue = Utility.RandomList( 2986, 2999, 2998, 2997, 2995, 2990, 2989, 2980, 2978, 2976, 2975, 2972, 2967, 2957, 2940, 2931, 2862 );
i_Multiple = i_Resource +2;

BaseSoundID = 362;

switch (i_Resource)
{
case 1: default: s_Name = "Baby Dragon ";break;
case 2: s_Name = "Baby Sister ";break;
case 3: s_Name = "Baby Brother ";break;
case 4: s_Name = "Little Dragon ";break;
case 5: s_Name = "Little Sister ";break;
case 6: s_Name = "Little Brother ";break;
case 7: s_Name = "Little Cousin ";break;
case 8: s_Name = "Sister ";break;
case 9: s_Name = "Brother ";break;
case 10: s_Name = "Cousin ";break;
case 11: s_Name = "Big ";break;
case 12: s_Name = "Big Sister ";break;
case 13: s_Name = "Big Brother ";break;
case 14: s_Name = "Big Cousin ";break;
case 15: s_Name = "Aunt ";break;
case 16: s_Name = "Uncle ";break;
case 17: s_Name = "Big Aunt ";break;
case 18: s_Name = "Big Uncle ";break;
case 19: s_Name = "Momma ";break;
case 20: s_Name = "Daddy ";break;
case 21: s_Name = "Big Momma ";break;
case 22: s_Name = "Big Dady ";break;
case 23: s_Name = "Enforcer ";break;
case 24: s_Name = "'Tiny' ";break;
case 25: s_Name = "God Father ";break;
}

Name = s_Name + NameList.RandomName( "daemon" );

SetStr( 800 + (i_Multiple*10), 800 + (i_Multiple*10) );
SetDex( 90 + (i_Multiple*3), 100 + (i_Multiple*3) );
SetInt( 425 + (i_Multiple*3), 460 + (i_Multiple*3) );

SetHits( 500 + (i_Multiple*10), 600 + (i_Multiple*10) );

SetDamage( 5 + (i_Multiple*2), 10 + (i_Multiple*2) );

SetDamageType( ResistanceType.Physical, 80 );
SetDamageType( ResistanceType.Poison, 5 );
SetDamageType( ResistanceType.Fire, 5 );
SetDamageType( ResistanceType.Cold, 5 );
SetDamageType( ResistanceType.Energy, 5 );

SetResistance( ResistanceType.Physical, 50 + i_Multiple );
SetResistance( ResistanceType.Fire, 70 + i_Multiple );
SetResistance( ResistanceType.Cold, 50 + i_Multiple );
SetResistance( ResistanceType.Poison, 40 + i_Multiple );
SetResistance( ResistanceType.Energy, 40 + i_Multiple );

SetSkill( SkillName.EvalInt, 30.0 + (i_Multiple*2) );
SetSkill( SkillName.Magery, 30.0 + (i_Multiple*2) );
SetSkill( SkillName.MagicResist, 50.0 + (i_Multiple*2) );
SetSkill( SkillName.Tactics, 50.0 + (i_Multiple*2) );
SetSkill( SkillName.Wrestling, 50.0 + (i_Multiple*2) );

Fame = 15000;
Karma = -15000;

VirtualArmor = (50 + (i_Multiple*1));

switch (i_Resource)
{
case 1: default: i_TSlots = 3;break;
case 2: i_TSlots = 3;break;
case 3: i_TSlots = 3;break;
case 4: i_TSlots = 3;break;
case 5: i_TSlots = 4;break;
case 6: i_TSlots = 4;break;
case 7: i_TSlots = 4;break;
case 8: i_TSlots = 4;break;
case 9: i_TSlots = 5;break;
case 10: i_TSlots = 5;break;
case 11: i_TSlots = 5;break;
case 12: i_TSlots = 5;break;
case 13: i_TSlots = 6;break;
case 14: i_TSlots = 6;break;
case 15: i_TSlots = 6;break;
case 16: i_TSlots = 6;break;
case 17: i_TSlots = 7;break;
case 18: i_TSlots = 7;break;
case 19: i_TSlots = 7;break;
case 20: i_TSlots = 7;break;
case 21: i_TSlots = 8;break;
case 22: i_TSlots = 8;break;
case 23: i_TSlots = 8;break;
case 24: i_TSlots = 8;break;
case 25: i_TSlots = 9;break;
}

Tamable = true;
ControlSlots = i_TSlots;
MinTameSkill = (119.9 + (i_Multiple*2));

// remove next 2 lines if no Daat99 system installed
if ( Daat99OWLTR.Ops[5].Setting )
PackItem( new ResourceRecipe() );

AddLoot( LootPack.FilthyRich, i_TSlots -1 );
PackItem( new Gold ((i_Multiple*100), (i_Multiple*250)));

switch (i_Resource)
{

case 1: default: PackItem( new (HavenArms );break;
case 2: PackItem( new (HavenBoots );break;
case 3: PackItem( new (HavenBracelet );break;
case 4: PackItem( new (HavenChest );break;
case 5: PackItem( new (HavenGloves );break;
case 6: PackItem( new (HavenGorget );break;
case 7: PackItem( new (HavenHelm );break;
case 8: PackItem( new (HavenLegs );break;
case 9: PackItem( new (HavenShield );break;
case 10: PackItem( new (HavenRing );break;
case 11: PackItem( new (HavenSword );break;

}





public override bool HasBreath{ get{ return true; } } // fire breath enabled
public override bool AutoDispel{ get{ return true; } }
public override int TreasureMapLevel{ get{ if (ControlSlots >= 8) return 6; else if (ControlSlots >= 6) return 5; return 4;} }
public override int Meat{ get{ return 19; } }
public override int Hides{ get{ return 20; } }
public override HideType HideType{ get{ return HideType.Barbed; } }
public override int Scales{ get{ return 10 + ControlSlots; } }
public override ScaleType ScaleType{ get{ return ( Body == 12 ? ScaleType.Yellow : ScaleType.Red ); } }
public override FoodType FavoriteFood{ get{ return FoodType.Meat; } }

public RandomDragons( Serial serial ) : base( serial )
{
}

public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
writer.Write( (int) 0 );
}

public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
int version = reader.ReadInt();
}
}
}
Boulder is offline  
Old 03-22-2006, 07:24 PM   #15 (permalink)
Forum Master
 
Lord_Greywolf's Avatar
 
Join Date: Dec 2005
Posts: 7,279
Send a message via Yahoo to Lord_Greywolf
Default

what was the error? did it state it was looking for } to be there?
if so - add 1 more below it

but looking at it with out the tabs in place - and counting out the }'s looks like 1 is missing there
Lord_Greywolf is offline  
Old 03-27-2006, 01:11 AM   #16 (permalink)
Forum Novice
 
Join Date: Feb 2006
Location: Wisconsin USA
Posts: 211
Thumbs up family dragon

got it to work this is what i wrote it as

switch (Utility.RandomMinMax (1,11))
{
default:
case 1: PackItem( new HavenArms ()); break;
case 2: PackItem( new HavenBoots ()); break;
case 3: PackItem( new HavenBracelet ()); break;
case 4: PackItem( new HavenChest ()); break;
case 5: PackItem( new HavenGloves ()); break;
case 6: PackItem( new HavenGorget ()); break;
case 7: PackItem( new HavenHelm ()); break;
case 8: PackItem( new HavenLegs ()); break;
case 9: PackItem( new HavenShield ()); break;
case 10: PackItem( new HavenRing ()); break;
case 11: PackItem( new HavenSword ()); break;

}
}


Thanks for your help
Boulder is offline  
Old 03-27-2006, 07:26 PM   #17 (permalink)
Forum Master
 
Lord_Greywolf's Avatar
 
Join Date: Dec 2005
Posts: 7,279
Send a message via Yahoo to Lord_Greywolf
Default

no problem - have fun
Lord_Greywolf is offline  
 

Bookmarks


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are Off
Refbacks are Off



Powered by vBulletin® Version 3.7.0
Copyright ©2000 - 2009, Jelsoft Enterprises Ltd.
SEO by vBSEO 3.2.0 RC5