|
||
|
|||||||
| Custom Script Releases This forum is where you can release your custom scripts for other users to use. Please note: By releasing your scripts here you are submitting them to the public and as such agree to make them public domain. The RunUO Team has made its software GPL for you to use and enjoy you should do the same for anything based off of RunUO. |
![]() |
|
|
Thread Tools | Display Modes |
|
|
#1 (permalink) |
|
Forum Expert
Join Date: Apr 2003
Location: Georgia
Age: 31
Posts: 392
|
Beholder 2.0
All credit goes to TBird for his reflection script. Found Via http://www.runuo.com/forums/showthre...ght=reflection The reflection script is also a valid 2.0 mobile. This is a Beholder Boss that will transform into what ever he is fighting of course being slightly stronger. He drops a pair of artifact glasses called "Eyes of the beholder" that can be worn if put on before a helmet. If worn under bonehelmets ect... look like a pair of glowing eyes. They use layer.Talisman and have these stats. MONDAINS LEGACY REQUIRED For Graphics of glasses Code:
"Eyes of the Beholder";
Hue = 1157;
Weight = 1.0;
Layer = Layer.talisman;
Attributes.BonusInt = 5;
Attributes.CastRecovery = 2;
Attributes.CastSpeed = 1;
Attributes.LowerManaCost = 10;
Attributes.LowerRegCost = 17;
Attributes.Luck = 100;
Attributes.NightSight = 1;
__________________
Last edited by otimpyre; 07-06-2006 at 04:44 PM. Reason: Typos |
|
|
|
|
|
#2 (permalink) |
|
Forum Novice
Join Date: Jun 2006
Posts: 145
|
Nice script, but one little problem, the damage that I do to him at first is decent but after a few hits only takes out 1 per hit with a Kryss
and sometimes will one hit kill my character I looked in the script to see if I could make some changes but this script goes beyond me can you point me in the right direction on how to change his one hit kills?I attach a pic so you can see, the fireball did 6 damage and my Kryss only did 1 . DamageLast edited by Shadow_Storm; 07-10-2006 at 11:20 PM. |
|
|
|
|
|
#3 (permalink) |
|
Forum Expert
Join Date: Apr 2003
Location: Georgia
Age: 31
Posts: 392
|
The mobile itself isnt my script. But, remember this mobile is a reflection of you & + so if you are godly he is godly +. If you sick a pet on him he will be your pet +. So it is best to go at him with some friends. But, I believe you can tone him down by reducing the numbers in red. Try 2, 1, 1,
Code:
this.Str = subject.Str * 3; // this will help to make it a more difficult fight.
this.Dex = subject.Dex * 2; // this will help to make it a more difficult fight.
this.Int = subject.Int * 2; // this will help to make it a more difficult fight.
__________________
|
|
|
|
|
|
#4 (permalink) |
|
Forum Novice
Join Date: Jun 2006
Posts: 145
|
I did that, and still he did one hit kills, the problem is that at first I am doing regular damage to him, however, when he turns into me I am doing 1 to 2 damage per hit. Now couple of times I did armor ignore and for wherever reason the damage reflected and instant kill me
also some of his moves are instant kill when my armor is all 65 my skill are:120 fencing 100 tactics 100 anatomy 100 healing 100 Resis 100 chiv 90 poison As you can see no reason to one hit kills a player ![]() |
|
|
|
|
|
#5 (permalink) |
|
Forum Expert
Join Date: Apr 2003
Location: Georgia
Age: 31
Posts: 392
|
When this creature chooses a target, it becomes an almost exact duplicate of the target. Keep in mind he/she (depends on the target) will , and should be hard to kill since you are supposed to be fighting a mirror image of yourself.
It will : Duplicate the targets appearance. Dupe items, including base item attributes, and base AOS attributes. Set its skills the same as the target Adjust its stats based on target fame and karma which are 1/8 yours str 3x target, and int, dex are 2x target (this is to compensate for your magic, pots, etc.). The original creator TBirds mobile reflection can be found here Reflection.cs Remember this mobiles main ability is "what ever you can do I can do better." Sorry I cant be more help
__________________
|
|
|
|
|
|
#8 (permalink) |
|
Forum Novice
Join Date: Jun 2006
Posts: 145
|
Well I love this script but can not find a way for him to be killable, his setting are to 1 1 1 in the lines you ask me to modify, 3 of us have try to kill this creature, with no luck
we can only get him 3/4 of down and then he heal all the way up while poison. The one hit kills are ridicules no monster should have this type of power hehe, if anybody else has try this monster and has been able to kill it, I would love to get you input maybe something is wrong with my files. |
|
|
|
|
|
#10 (permalink) | ||
|
Forum Expert
Join Date: Jan 2006
Location: Western Kentucky
Age: 41
Posts: 575
|
This Mobile reacts as your players do. After testing it thoroughly (and modding it here and there), I found the best settings are the default settings at download. The main thing I have noticed is that if you cast Divine Fury, he assumes it too. This results in the HIGH SPEED/POWER strike he delivers, resulting in a typical "one hit kill". Personally, I find this to be awesome. It forces players to use their head and realize that divine fury is their demise. If you do Blood Oathe, you have a solid chance of really hurting it. IT CAN BE KILLED. I have solo'd it many times. Use your head and develop some "out of the box" tactics.
This script is G R E A T.
__________________
Mo Khan - Senior Compubonics Interpreter Acrid Garden - owner/administrator Quote:
Quote:
_
|
||
|
|
|
|
|
#11 (permalink) |
|
Lurker
Join Date: May 2008
Posts: 5
|
This guy is an exact mirror image. As explained it assumes everything you do. But it cant assume a blood oath because once a blood oath is linked with a creature another one cannot be made until it is broken. Also. A very good strategy is to have yourself be a target. Then have friends armor ignore it. I have done this myself. Eventually it dies because the armor ignore isnt making it cast anything. If you have someone to distract it and then have other people to armor ignore. It wont copy the armor ignores because it isnt that person. Another thing. I have seen many people tame a weak animal. And then use it to kill it. Trust me. It does not work. At 3x strength it can make a mongbat look strong. And right after your mongbat friend is dead. Hes you. It wouldnt take long for him to kill a mongbat. Thats like a human VS Superman. I hope this tactic will help. Other than that. This is a positively awesome script.
|
|
|
|
|
|
#13 (permalink) |
|
Forum Novice
Join Date: Nov 2006
Posts: 110
|
This guy is bugged, not all the time but I checked him today after having a few complaints from players and found him sitting there with the following resists.
62740/63250/60000+/60000+/60000+ Stats were through the roof as well, he would not only kill people in one hit with a magic arrow but it would kill them so good it would actually kick them out of UO as well, it was one hell of a magic arrow let me tell you! I also did think maybe he was copying my admin character so I left the dungeon and logged into a test account I created with zero admin abilities. I ran there as a ghost and watched people fight him and they would do fine for 10 or so and then suddenly I would see them start running like hell and get slaughtered lol Then the IM's would roll in letting me know there is a bugged Beholder in the dungeon again ![]() I can't kill the uber ones with my admin supped up char and my mare that is supped up and I can take down the harrower in 3 hits for crying out loud. The mare can kill the Harrower in 2 hits, lol any help on this would be appreciated! Here is the code I am using for him as I did modify it slightly but only to give him more hp and modify his loot! Unless I accidentially goofed something else up ![]() Code:
using System;
using System.Collections;
using System.Reflection;
using Server.Items;
using Server.Targeting;
namespace Server.Mobiles
{
[CorpseName( "a beholder" )]
public class TheBeholder : BaseCreature
{
[Constructable]
public TheBeholder() : base( AIType.AI_Mage, FightMode.Closest, 10, 1, 0.2, 0.4 )
{
Body = 22;
Name = "The Beholder";
Kills = 200;
SetStr( 339, 382 );
SetDex( 100, 115 );
SetInt( 32, 52 );
SetHits( 2700, 3700 );
SetSkill( SkillName.Wrestling, 83, 91 );
SetSkill( SkillName.Tactics, 81, 97 );
SetSkill( SkillName.MagicResist, 77, 102 );
VirtualArmor = 48;
Fame = 15000;
Karma = -15000;
PackGold( 8000, 15000 );
//Add pack info
AddLoot( LootPack.AosSuperBoss, 3 );
}
public override void OnDeath(Container c)
{
base.OnDeath(c);
if (Utility.RandomDouble() < 0.06)
switch (Utility.Random(1))
{
case 0: c.DropItem(new eyes()); break;
}
}
public override void OnActionWander()
{
// Reset TheBeholder
this.Title = "";
this.GuildTitle = "";
this.DisplayGuildTitle = false;
this.NameMod = "The beholder";
this.Guild = null;
this.BodyMod = 0;
this.Body = 22;
this.Name = "The beholder";
this.Kills = 200;
this.SetStr( 339, 382 );
this.SetDex( 100, 115 );
this.SetInt( 32, 52 );
this.SetHits( 400, 700 );
// Set All Skills to 0
for (int i=0;i<this.Skills.Length;i++)
{
this.Skills[i].Base = 0;
}
this.SetSkill( SkillName.Wrestling, 83, 91 );
this.SetSkill( SkillName.Tactics, 81, 97 );
this.SetSkill( SkillName.MagicResist, 77, 102 );
this.VirtualArmor = 48;
this.SetFameLevel( 1 );
this.SetKarmaLevel( 1 );
}
public override void OnGotMeleeAttack( Mobile attacker )
{
base.OnGotMeleeAttack( attacker );
Mobile subject = Combatant;
if (this.Combatant == null)
return;
// Set Major Attributes Like Subject
this.VirtualArmorMod = subject.VirtualArmorMod;
this.NameHue = subject.NameHue;
this.Title = subject.Title;
this.Fame = subject.Fame / -8; //this reduces, and reverses the fame
this.Karma = subject.Karma / -8; //this reduces, and reverses the fame
this.Str = subject.Str * 3; // this will help to make it a more difficult fight.
this.Dex = subject.Dex * 2; // this will help to make it a more difficult fight.
this.Int = subject.Int * 2; // this will help to make it a more difficult fight.
this.HueMod = subject.HueMod;
this.Hue = subject.Hue;
this.Female = subject.Female;
this.GuildTitle = subject.GuildTitle;
this.DisplayGuildTitle = subject.DisplayGuildTitle;
this.NameMod = subject.NameMod;
this.Name = subject.Name;
this.Guild = subject.Guild;
this.BodyMod = subject.BodyMod;
this.Body = subject.Body;
// Set All Skills Like Subject
for (int i=0;i<subject.Skills.Length;i++)
{
this.Skills[i].Base = subject.Skills[i].Base;
}
// ToDo: Set AI Based On Skills
// Copy All Subject Items
ArrayList copy = new ArrayList( subject.Items );
for (int i=0;i<copy.Count;i++)
{
//Handle Etheral Mount.
if ( (Item)copy[i] is EtherealMount )
{
// ToDo: Add Etheral Mount
}
else
{
//copy item
Item cp = (Item)copy[i];
Type t = cp.GetType();
ConstructorInfo[] info = t.GetConstructors();
foreach ( ConstructorInfo c in info )
{
ParameterInfo[] paramInfo = c.GetParameters();
if ( paramInfo.Length == 0 )
{
object[] objParams = new object[0];
object o = c.Invoke( objParams );
if ( o != null && o is Item )
{
Item newItem = (Item)o;
CopyProperties( newItem, cp );
if ( cp is BaseWeapon )
{
AosAttributes cpaosattrs = ((BaseWeapon)cp).Attributes;
AosAttributes newItemaosattrs = ((BaseWeapon)newItem).Attributes;
CopyAOSAttributes( newItemaosattrs, cpaosattrs );
// ToDo: Add AosElementAttributes Here
// ToDo: Add AosSkillBonuses Here
// ToDo: Add AosWeaponAttributes Here
}
else if ( cp is BaseArmor )
{
AosAttributes cpaosattrs = ((BaseArmor)cp).Attributes;
AosAttributes newItemaosattrs = ((BaseArmor)newItem).Attributes;
CopyAOSAttributes( newItemaosattrs, cpaosattrs );
// ToDo: add AosArmorAttributes Here
// ToDo: add AosElementAttributes Here
// ToDo: add AosSkillBonuses Here
}
else if ( cp is BaseJewel )
{
AosAttributes cpaosattrs = ((BaseJewel)cp).Attributes;
AosAttributes newItemaosattrs = ((BaseJewel)newItem).Attributes;
CopyAOSAttributes( newItemaosattrs, cpaosattrs );
// ToDo: add AosElementAttributes Here
// ToDo: add AosSkillBonuses Here
}
newItem.Parent = null;
newItem.LootType = LootType.Blessed;
this.AddItem(newItem);
}
}
}
}
}
}
private static void CopyAOSAttributes( AosAttributes dest, AosAttributes src )
{
dest.RegenHits = src.RegenHits ;
dest.RegenStam = src.RegenStam ;
dest.RegenMana = src.RegenMana ;
dest.DefendChance = src.DefendChance ;
dest.AttackChance = src.AttackChance ;
dest.BonusStr = src.BonusStr ;
dest.BonusDex = src.BonusDex ;
dest.BonusInt = src.BonusInt ;
dest.BonusHits = src.BonusHits ;
dest.BonusStam = src.BonusStam ;
dest.BonusMana = src.BonusMana ;
dest.WeaponDamage = src.WeaponDamage ;
dest.WeaponSpeed = src.WeaponSpeed ;
dest.SpellDamage = src.SpellDamage ;
dest.CastRecovery = src.CastRecovery ;
dest.CastSpeed = src.CastSpeed ;
dest.LowerManaCost = src.LowerManaCost ;
dest.LowerRegCost = src.LowerRegCost ;
dest.ReflectPhysical = src.ReflectPhysical;
dest.EnhancePotions = src.EnhancePotions ;
dest.Luck = src.Luck ;
dest.SpellChanneling = 1;
dest.NightSight = src.NightSight ;
}
private static void CopyProperties ( Item dest, Item src )
{
PropertyInfo[] props = src.GetType().GetProperties();
for ( int i = 0; i < props.Length; i++ )
{
try
{
if ( props[i].CanRead && props[i].CanWrite )
{
props[i].SetValue( dest, props[i].GetValue( src, null ), null );
}
}
catch
{
Console.WriteLine( "Denied" );
}
}
}
public override void AddNameProperties( ObjectPropertyList list )
{
base.AddNameProperties( list );
}
public TheBeholder( 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();
}
}
}
Last edited by peepeetree; 08-15-2008 at 01:09 AM. |
|
|
|
|
|
#17 (permalink) |
|
Forum Master
|
one of the problems is most people do not realize is that a monster when it gets armor equiped, that AC is added to his Current AC - it does NOT take the better of the 2 - it stacks
i.e. phy resists of 50 +plate mail of 5 phyical = 55 total phy add in all the other peices and his armor goes over 100 and that means only armor ignor can do anything more than 1 hit point of damage probably also not removing any before more are added on - ot sure if with critters csan place more than 1 thing in a layer, but since most do not display them, might be able to plus it is probably += on skills instead of replacing them - that would explain high skill values into the 1000's i would look at the clone spell from lucids spell system and see about adjusting the script to match up that way
__________________
http://www.AoAUO.com
:) ..... Come for the Customs, Play for the Fun. Return to see your new Friends ..... :) |
|
|
|
|
|
#18 (permalink) | |
|
Forum Novice
Join Date: Nov 2006
Posts: 110
|
Quote:
|
|
|
|
|
|
|
#20 (permalink) | |
|
Forum Novice
Join Date: Nov 2006
Posts: 110
|
Quote:
Once this happens it is impossible to kill, even if it morphs into someone/thing else it retains the crazy high stats/skills. The creature becomes invincible and kills everything it goes near in one hit without warning. I explained this above, guess I will need to get a picture so people understand what happens when this creature spawns. |
|
|
|
|
|
|
#21 (permalink) |
|
Newbie
Join Date: Jan 2006
Posts: 81
|
well seeing this is a old script and i've had him on my shard for sometime and working just fine!!! it does reflect the attacker with alittle higher stats of course.. i found that necro works the best on him or it but i just let my players fined that out on there own
i give out no clues on how to kill my mobs ( try necro curse weapon) |
|
|
|
|
|
#23 (permalink) |
|
Lurker
Join Date: Sep 2008
Age: 15
Posts: 23
|
60000+str, 60000d+dex, 60000+int, 6000+skills, etc, etc, etc.
Once this happens it is impossible to kill, even if it morphs into someone/thing else it retains the crazy high stats/skills. The creature becomes invincible and kills everything it goes near in one hit without warning. |
|
|
|
![]() |
| Bookmarks |
| Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
| Thread Tools | |
| Display Modes | |
|