There is limited information on the Clockwork Exodus, *sigh*.
It is suppose to "spawn" death vortexes, have an aura energy, and a spread gold upon death.

I have the death vortex, but how should I put it in so CE spawns them?

What would be an a good "aura"? Earthquake? (should be energy, but from the limited things I've seen there isn't any animation with the aura)

Also, the alter needs to be able to be place by players, and disappear after it is used.
(only in tram/fel at shrines)

Other than the above, I have this done. :)
 
Last edited:
you could add an animation effect for the energy aura

Spawn Death Vortices:
Code:
public void SpawnVortices( Mobile target )
{
Map map = this.Map;
if ( map == null )
return;
int newVortices = Utility.RandomMinMax( 3, 6 );  //how many
for ( int i = 0; i < newVortices; ++i )
{
DeathVortex dv = new DeathVortex();
dv.Team = this.Team;
dv.FightMode = FightMode.Closest;
bool validLocation = false;
Point3D loc = this.Location;
for ( int j = 0; !validLocation && j < 10; ++j )
{
int x = X + Utility.Random( 3 ) - 1;
int y = Y + Utility.Random( 3 ) - 1;
int z = map.GetAverageZ( x, y );
if ( validLocation = map.CanFit( x, y, this.Z, 16, false, false ) )
loc = new Point3D( x, y, Z );
else if ( validLocation = map.CanFit( x, y, z, 16, false, false ) )
loc = new Point3D( x, y, z );
}
wraith.MoveToWorld( loc, map );
wraith.Combatant = target;
}
}
public void DoSpecialAbility( Mobile target )
{
if ( 0.2 >= Utility.RandomDouble() ) //chance to spawn
SpawnVortices( target );
}
public override void OnGaveMeleeAttack( Mobile defender )
{
base.OnGaveMeleeAttack( defender );  //if it hits you it spawns vortices
DoSpecialAbility( defender );
/*defender.Damage( Utility.Random( 20, 10 ), this );  //random damage & stat adjust
defender.Stam -= Utility.Random( 20, 10 );
defender.Mana -= Utility.Random( 20, 10 );*/
}
public override void OnGotMeleeAttack( Mobile attacker )
{
base.OnGotMeleeAttack( attacker ); //if you hit creature it spawns vortices
DoSpecialAbility( attacker );
}
 
I'm not sure why my post was funny, but I'm glad ya got a laugh. ;) Thanks for pointing me in the right direction.

you said, "Other than the above, I have this done" that's what I thought was funny other then a list of things you have it done, I can relate to that been there many times; and it struck me as funny is all. Cheers
 
you said, "Other than the above, I have this done" that's what I thought was funny other then a list of things you have it done, I can relate to that been there many times; and it struck me as funny is all. Cheers
Wasn't a problem,lol. Yeah the "list" was about 10 things, that grew to about 20 the more I read up on it. :eek: The list is now at 2 things that need to be tweaked. ;)
 
Did you figure the aura part, check this one out this will affect mobiles within a specified range taken from Blackrock Elemental

Code:
using System;
using Server.Items;
using Server.Targeting;
using System.Collections;
using Server;
using Server.Misc;
using Server.Spells;
 
namespace Server.Mobiles
{
	[CorpseName( "a your creature corpse" )]
publicclass yourcreature : BaseCreature
	{
privateDateTime m_Delay = DateTime.Now; //remember this


Then after the loot section add this

Code:
privateDateTime m_NextAbilityTime;
privatevoid DoAreaLeech()
		{
			m_NextAbilityTime += TimeSpan.FromSeconds( 2.5 );
this.FixedParticles( 0x376A, 10, 10, 9537, 33, 0, EffectLayer.Waist );
			Timer.DelayCall( TimeSpan.FromSeconds( 5.0 ), new TimerCallback( DoAreaLeech_Finish ) );
		}
privatevoid DoAreaLeech_Finish()
		{
ArrayList list = newArrayList();
foreach ( Mobile m inthis.GetMobilesInRange( 6 ) )
			{
if ( this.CanBeHarmful( m ) && this.IsEnemy( m ) )
					list.Add( m );
			}
			{
double scalar;
if ( list.Count == 1 )
					scalar = 0.90;
elseif ( list.Count == 2 )
					scalar = 0.50;
else
					scalar = 0.30;
for ( int i = 0; i < list.Count; ++i )
				{
					Mobile m = (Mobile)list[i];
int damage = (int)(m.Hits * scalar);
					damage += Utility.RandomMinMax( -5, 5 );
if ( damage < 1 )
						damage = 1;
					m.MovingParticles( this, 0x36F4, 1, 0, false, false, 32, 0, 9535, 1, 0, (EffectLayer)255, 0x100 );
					m.MovingParticles( this, 0x0001, 1, 0, false, true, 32, 0, 9535, 9536, 0, (EffectLayer)255, 0 );
this.DoHarmful( m );
this.Hits += AOS.Damage( m, this, damage, 0, 0, 0, 0, 100 );  //100% Energy Damage
				}
			}
		}
publicoverridevoid OnThink()
		{
if ( DateTime.Now >= m_NextAbilityTime )
			{
				Mobile combatant = this.Combatant;
if ( combatant != null && combatant.Map == this.Map && combatant.InRange( this, 12 ) ) //within how many tiles will be affected
				{
					m_NextAbilityTime = DateTime.Now + TimeSpan.FromSeconds( Utility.RandomMinMax( 10, 15 ) );
int ability = Utility.Random( 4 );
switch ( ability )
					{
case 1: DoAreaLeech(); break;
					}
				}
			}
if ( DateTime.Now > m_Delay )
			{
				Ability.Aura( this, 10, 20, 2, 3, 0, "The radiating energy emitted from the creature is damaging you!" );  //set your message
				m_Delay = DateTime.Now + TimeSpan.FromSeconds( Utility.RandomMinMax( 5, 10 ) );
			}
base.OnThink();
		}
 
Last edited:
Did you figure the aura part, check this one out this will affect mobiles within a specified range taken from Blackrock Elemental

Lol, nope completely forgot about the aura.

Here is what is done:
Exodus Arch Zealot (quest giver of sorts..more that he just tells you what you will need)

All the items needed can be gotten from Exodus chest, crafted, or random loot from Dupre's peeps/CE peeps:

Dupre's Men:
Squire, Knight, Champion


Exodus' Minion:
just add loot to them

Robe of Rite
DefTailoring
Resources: leather, fire ruby, gold dust, and abyssal cloth

Exodus Sacrificial Dagger
DefBlacksmithy
Resources: ingots, blue diamond, fire ruby, small piece of blackrock

Exodus Summoning Rite
DefInscription
Resources: daemon blood, taint, daemon bone, summon daemon scroll


Exodus Summoning Alter Addon (Only Craftable)
DefCarpentry
Resources: logs, granite, small piece of blackrock, nexus core (75 magery also needed)


DefAlchemy: (Only Craftable)
Resources :gold to make gold dust
Nexus Core:
Resources: mandrake root, spider silk, dark sapphire, crushed glass


Exodus Tome- I made this where all items need to be in your backpack...why wear a robe that'll go *poof* at any minute???

Exodus Chest- for thieves to get items from chest (using xml to make it only appear with detect hidden)

Teleport Scroll to Exodus-
I prefer a scroll with lifespan to give all players a chance to go at one time..or not.

Clockwork Exodus-Champion
Death Vortex- what CE champion spawns when attacked
Energy Aura (will add this in..forgot)

CE Loot:
Asclepius
Bracers of Alchemical Devastation
Clockwork Leggings
Dupre's Sword
Hygieias' Amulet
Scroll of Valient Commendation
(need to test this one via slaying CE)

I'm using a region controller to not allow marking runes in Ver Lor Reg.

Things needed:
kick out timer 10 mins after Clockwork Exodus has been slayed
(this is not a biggy for me, but maybe for diehard "it has to be like OSI" people")

ability for players to place Summoning Alter at shrines, but only certain shrines
( I'm truly leaning to just placing a few at shrines due to frustration,lol)

Only allowing a new group to get teleport scroll if an instance is not currently in progress.
(this one I'm not sure is a big deal, as people can go to any champ spawn at any time)
 
I gotta say this sounds interesting.

1. kick out timer 10 mins after Clockwork Exodus has been slayed
2. Only allowing a new group to get teleport scroll if an instance is not currently in progress.
3. ability for players to place Summoning Alter at shrines, but only certain shrines (any but Chaos)

1 & 2 A similar method is used in peerless (PeerlessAltar.cs)
3 Can be done with xml or maybe this may give you some ideas also
http://www.runuo.com/community/threads/runuo-2-0-rc1-virtue-quest.77261/#post-647775
 
Last edited:
I gotta say this sounds interesting.
1 & 2 A similar method is used in peerless (PeerlessAltar.cs)

Now that's freakin' brilliant! I've been pulled a million different directions these past few weeks. I'm looking into converting it to a Peerless system...just read that it is considered a peerless champ. o_O
You will be getting props for this, has will everyone that has helped. ;)
 
Thank you Redbeard, the peerless system worked much better...and less code. I'm currently looking for the correct bodies for the exodus monsters, (juggernaut, drone, etc).

Edit- But all is complete and seems to be in working order other than the correct bodies.
*WOOT*
 
Pardon me for butting in....

There's a script for AuraCreature already in the distro scripts. Scripts\Mobiles\Abilities\AuraCreature.cs
*Assuming that you're using ServUO or at least Orb 3.0, RunUO doesn't have it

To use it you need to change the ParentClass to AuraCreature

public class ClockworkExodus : BaseCreature <-- Change BaseCreature to AuraCreature

Then in the constructable for the Mobile you'll add this

AuraMessage = "An intense energy force is damaging you!"; // not sure what this should say
AuraType = ResistanceType.Energy; //
MinAuraDelay = 1; // minimum amount of time that the aura will trigger
MaxAuraDelay = 3;
MinAuraDamage = 2;
MaxAuraDamage = 4;
AuraRange = 5;

and yeah, that's all.

let me know if you have any questions.
 
Back