Go Back   RunUO - Ultima Online Emulation > RunUO > RunUO Post Archive

RunUO Post Archive The Archvie

Reply
 
Thread Tools Display Modes
Old 03-10-2003, 10:17 PM   #1 (permalink)
 
Join Date: Jan 2003
Location: Mississauga, Ontario, Canada
Age: 33
Posts: 44
Send a message via ICQ to grifter
Default Ethereals

The ethereals that come with the beta releases are the original ones. (horse, ostard, llama). How come the other ones haven't been added in and being included when the betas are released? (swampdragon, beetle, unicorn, etc).
grifter is offline   Reply With Quote
Old 03-11-2003, 11:02 PM   #2 (permalink)
ucc
 
Join Date: Nov 2002
Posts: 394
Send a message via ICQ to ucc
Default

Umm maybe because they dont want to include them but not sure :P
ucc is offline   Reply With Quote
Old 03-12-2003, 10:58 AM   #3 (permalink)
Forum Expert
 
Join Date: Sep 2002
Location: Oregon State
Age: 34
Posts: 471
Send a message via ICQ to Dian Send a message via MSN to Dian
Default

erm.. thats a good answer..
Surly they have just overlooked that one. They will be included in time.
But if you do a search, I know you will find them in the script submisions.
Dian is offline   Reply With Quote
Old 03-12-2003, 12:46 PM   #4 (permalink)
Account Terminated
 
Join Date: Sep 2002
Age: 26
Posts: 3,846
Send a message via ICQ to Phantom Send a message via AIM to Phantom Send a message via MSN to Phantom
Default Re: Ethereals

Quote:
Originally Posted by grifter
The ethereals that come with the beta releases are the original ones. (horse, ostard, llama). How come the other ones haven't been added in and being included when the betas are released? (swampdragon, beetle, unicorn, etc).
Easy Answer...

Nobody wrote them and said Hey Include this.
Phantom is offline   Reply With Quote
Old 03-12-2003, 12:56 PM   #5 (permalink)
Forum Expert
 
Join Date: Sep 2002
Location: Oregon State
Age: 34
Posts: 471
Send a message via ICQ to Dian Send a message via MSN to Dian
Default

Done.
http://www.runuo.com/discussion/viewtopic.php?t=6953
Dian is offline   Reply With Quote
Old 03-12-2003, 12:58 PM   #6 (permalink)
Guest
 
Posts: n/a
Default

Hey add this

ive had them for along time its just that i raarly see a playermade script that goes in the release. i mean for God's sake Quintox's [admin command will almost never get in but it still kicks ass and correct me if im wrong but almost everyone usesit.

[code:1]using System;
using Server.Mobiles;
using Server.Items;
using Server.Spells;

namespace Server.Mobiles
{
public class EtherealMount : Item, IMount, IMountItem
{
private int m_MountedID;
private int m_RegularID;
private Mobile m_Rider;

[Constructable]
public EtherealMount( int itemID, int mountID ) : base( itemID )
{
m_MountedID = mountID;
m_RegularID = itemID;
m_Rider = null;

Layer = Layer.Invalid;

LootType = LootType.Blessed;
}

[CommandProperty( AccessLevel.GameMaster )]
public int MountedID
{
get
{
return m_MountedID;
}
set
{
if ( m_MountedID != value )
{
m_MountedID = value;

if ( m_Rider != null )
ItemID = value;
}
}
}

[CommandProperty( AccessLevel.GameMaster )]
public int RegularID
{
get
{
return m_RegularID;
}
set
{
if ( m_RegularID != value )
{
m_RegularID = value;

if ( m_Rider == null )
ItemID = value;
}
}
}

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

public override bool DisplayLootType{ get{ return false; } }

public override void OnDoubleClick( Mobile from )
{
if ( from.IsBodyMod )
from.SendMessage( "You cannot ride while polymorphed." );
else if ( IsChildOf( from.Backpack ) )
new EtherealSpell( this, from ).Cast();
else
from.SendLocalizedMessage( 1042001 ); // That must be in your pack for you to use it.
}

public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );

writer.Write( (int) 0 ); // version
writer.Write( (int)m_MountedID );
writer.Write( (int)m_RegularID );
writer.Write( m_Rider );
}

public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
LootType = LootType.Blessed;

int version = reader.ReadInt();

switch ( version )
{
case 0:
{
m_MountedID = reader.ReadInt();
m_RegularID = reader.ReadInt();
m_Rider = reader.ReadMobile();

if ( m_MountedID == 0x3EA2 )
m_MountedID = 0x3EAA;

break;
}
}
}

public override DeathMoveResult OnParentDeath( Mobile parent )
{
Rider = null;//get off, move to pack

return DeathMoveResult.RemainEquiped;
}

public static void Dismount( Mobile m )
{
IMount mount = m.Mount;

if ( mount != null )
mount.Rider = null;
}

[CommandProperty( AccessLevel.GameMaster )]
public Mobile Rider
{
get
{
return m_Rider;
}
set
{
if ( value != m_Rider )
{
if ( value == null )
{
Internalize();
UnmountMe();

m_Rider = value;
}
else
{
if ( m_Rider != null )
Dismount( m_Rider );

Dismount( value );

m_Rider = value;

MountMe();

/*Internalize();

new EtherealSpell( this, value ).Cast();*/
}
}
}
}

public void UnmountMe()
{
Container bp = m_Rider.Backpack;

ItemID = m_RegularID;
Layer = Layer.Invalid;
Movable = true;

if ( bp != null )
bp.DropItem( this );
else
MoveToWorld( m_Rider.Location, m_Rider.Map );
}

public void MountMe()
{
ItemID = m_MountedID;
Layer = Layer.Mount;
Movable = false;

ProcessDelta();
m_Rider.ProcessDelta();
m_Rider.EquipItem( this );
m_Rider.ProcessDelta();
ProcessDelta();
}

public IMount Mount
{
get
{
return this;
}
}

private class EtherealSpell : Spell
{
private static SpellInfo m_Info = new SpellInfo( "Ethereal Mount", "", SpellCircle.Second, 230 );

private EtherealMount m_Mount;
private Mobile m_Rider;

public EtherealSpell( EtherealMount mount, Mobile rider ) : base( rider, null, m_Info )
{
m_Rider = rider;
m_Mount = mount;
}

public override TimeSpan GetCastDelay()
{
return TimeSpan.FromSeconds( 2.0 );
}

public override int GetMana()
{
return 0;
}

public override bool ConsumeReagents()
{
return true;
}

public override bool CheckFizzle()
{
return true;
}

public override bool CheckDisturb( DisturbType type, bool checkFirst, bool resistable )
{
if ( type == DisturbType.EquipRequest || type == DisturbType.UseRequest || type == DisturbType.Hurt )
return false;

return true;
}

public override void OnDisturb( DisturbType type, bool message )
{
//m_Mount.UnmountMe();
}

public override void OnCast()
{
if ( !m_Mount.Deleted && m_Mount.Rider == null && m_Mount.IsChildOf( m_Rider.Backpack ) )
m_Mount.Rider = m_Rider;

FinishSequence();
}
}
}

public class EtherealHorse : EtherealMount
{
[Constructable]
public EtherealHorse() : base( 0x2124, 0x3EAA )
{
Name = "an ethereal horse";
}

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

public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );

writer.Write( (int) 0 ); // version
}

public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );

int version = reader.ReadInt();
}
}

public class EtherealLlama : EtherealMount
{
[Constructable]
public EtherealLlama() : base( 0x20F6, 0x3EAB )
{
Name = "an ethereal llama";
}

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

public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );

writer.Write( (int) 0 ); // version
}

public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );

int version = reader.ReadInt();
}
}

public class EtherealOstard : EtherealMount
{
[Constructable]
public EtherealOstard() : base( 0x2135, 0x3EAC )
{
Name = "an ethereal ostard";
}

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

public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );

writer.Write( (int) 0 ); // version
}

public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );

int version = reader.ReadInt();
}
}

public class EtherealSilverSteed : EtherealMount
{
[Constructable]
public EtherealSilverSteed() : base( 0x259D, 0x3EA8 )
{
Name = "an ethereal silver steed";
}

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

public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );

writer.Write( (int) 0 ); // version
}

public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );

int version = reader.ReadInt();
}
}

public class EtherealNightmare : EtherealMount
{
[Constructable]
public EtherealNightmare() : base( 0x259C, 0x3EB7 )
{
Name = "an ethereal nightmare";
}

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

public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );

writer.Write( (int) 0 ); // version
}

public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );

int version = reader.ReadInt();
}
}

public class EtherealUnicorn : EtherealMount
{
[Constructable]
public EtherealUnicorn() : base( 0x25CE, 0x3EB4 )
{
Name = "an ethereal unicorn";
}

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

public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );

writer.Write( (int) 0 ); // version
}

public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );

int version = reader.ReadInt();
}
}

public class EtherealKirin : EtherealMount
{
[Constructable]
public EtherealKirin() : base( 0x25A0, 0x3EAD )
{
Name = "an ethereal kirin";
}

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

public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );

writer.Write( (int) 0 ); // version
}

public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );

int version = reader.ReadInt();
}
}

public class EtherealRidgeback : EtherealMount
{
[Constructable]
public EtherealRidgeback() : base( 0x2615, 0x3E9A )
{
Name = "an ethereal ridgeback";
}

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

public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );

writer.Write( (int) 0 ); // version
}

public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );

int version = reader.ReadInt();
}
}

public class EtherealSwampDragon : EtherealMount
{
[Constructable]
public EtherealSwampDragon() : base( 0x2619, 0x3E98 )
{
Name = "an ethereal swamp dragon";
}

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

public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );

writer.Write( (int) 0 ); // version
}

public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );

int version = reader.ReadInt();
}
}

public class EtherealSkeletalMount : EtherealMount
{
[Constructable]
public EtherealSkeletalMount() : base( 0x2617, 0x3EBB )
{
Name = "an ethereal skeletal mount";
}

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

public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );

writer.Write( (int) 0 ); // version
}

public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );

int version = reader.ReadInt();
}
}

public class EtherealBeetle : EtherealMount
{
[Constructable]
public EtherealBeetle() : base( 0x260F, 0x3EBC )
{
Name = "an ethereal beetle";
}

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

public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );

writer.Write( (int) 0 ); // version
}

public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );

int version = reader.ReadInt();
}
}
}[/code:1]
  Reply With Quote
Old 03-12-2003, 05:27 PM   #7 (permalink)
Forum Expert
 
Join Date: Nov 2002
Location: Shawinigan, Québec, Canada
Age: 25
Posts: 344
Default

I can tell you a lot of player made script did got include in RunUO. They perhaps have not included them when you would have liked it neither do they shooted out loud who did the script first.

Take my chat script. It did go in a release even if it was modified on the go.

But as krrios already in another post:

Quote:
Originally Posted by krrios
Quote:
Originally Posted by ZixThree
Phantom, Sure. I'll be happy to even though the only material I'll release will be the kind to help RunUO with technical stuff or feature to feel like OSI, but the thing that makes me hesitate about releasing stuff is that it feels like your work is never considered until about a month or two. It is as if devs were waiting for bugs to arise before adding submissioned scripts that help advancing their OSI clone idea. Like the community and the devs were going at really different paces.
To include a script or set of scripts into the default distributions requires a developer look over the entire script for any possible crash issues or bottlenecks. For this reason, it is often smaller or simpler scripts which are included from the script submissions, where larger or more extensive scripts are saved for a slow day or in some cases use as a base/reference point for a rewrite.

Related, another thing which can slow down processing extensive scripts is lack of knowledge in that area. I know very little about the underlying chat system protocol, so it would require that much more effort for me to verify your script.

That said, from just skimming through it, your script seems very good. It is nicely commented and well structured. I will work towards getting this included into the main release.
So it all depends on how well the script is written but also how much time devs can dedicate to verify it. I must remind you that Quinox admin script did have its share of bugs.

Anyway...

ZixThree
ZixThree is offline   Reply With Quote
Reply

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 - 2008, Jelsoft Enterprises Ltd.
SEO by vBSEO 3.2.0 RC5