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 11-13-2005, 04:08 AM   #1 (permalink)
 
Join Date: Oct 2002
Age: 23
Posts: 4,689
Default OSI Cold/Fire Radiation Aura

This thread should be removed. This is not supported anymore.

Last edited by XxSP1DERxX; 04-23-2006 at 03:53 AM.
XxSP1DERxX is offline  
Old 11-13-2005, 05:02 AM   #2 (permalink)
 
Join Date: Oct 2002
Age: 23
Posts: 4,689
Default

Added a check to make sure this is only effecting players. The reason why I did this is because the mobiles aura would hit staff, then attack staff. While this may be desired for some, I don't believe it is the norm for the majority.
XxSP1DERxX is offline  
Old 11-13-2005, 05:07 AM   #3 (permalink)
Forum Expert
 
Packer898's Avatar
 
Join Date: Dec 2004
Location: Tulsa, Oklahoma
Age: 35
Posts: 2,378
Send a message via ICQ to Packer898 Send a message via MSN to Packer898
Default

OO awesome I will definately check this out. I have older versions but they dont work for shit. Might even learn something else from this wOOt!
Packer898 is offline  
Old 11-13-2005, 01:17 PM   #4 (permalink)
 
Join Date: Oct 2002
Age: 23
Posts: 4,689
Default

I edited it slightly so that it uses RevealingAction() instead of actually setting their Hidden to false.
XxSP1DERxX is offline  
Old 11-13-2005, 07:48 PM   #5 (permalink)
Forum Novice
 
Peoharen's Avatar
 
Join Date: Dec 2004
Location: USA
Age: 24
Posts: 911
Send a message via Yahoo to Peoharen
Default

Codes different then mine. but I already posted this update. along with the gas attacks from ore elementals and skeletadragon/lichs undead summoning
along with savege riders using bandages. And its all zipped up and posted rather then make mods here and there you can just download it and replace.

Mines does only work when its hit. (or was it when it hits?)
This kept the running timers down. Also without the timers.
I can spawn 400 of them and not a single timer gets saved. Whice can help in the long run.

But hey if it works good job.
Peoharen is offline  
Old 11-13-2005, 09:15 PM   #6 (permalink)
 
Join Date: Oct 2002
Age: 23
Posts: 4,689
Default

Okay I am saying this again, but I guess I have to. It was not my intention to release all of the abilities such as you did so claiming that yours is better because it has everything has nothing to do with it. I didn't even see your thread because I do not check into posts unless they catch my eye and yours didn't until the day I posted mine.

You are forgetting what the ability is supposed to do....

Mobiles with radiation auras are supposed to damage any valid targets within 2 tiles every 5-10 seconds. If the target is hidden, they become visible. Then the mobile will switch to the target.

That is what is known. Now this means that even if things are not moving and are still next to it, it has to damage them every 5-10 seconds also. Now if I were to not use timers, what are my alternatives? I can tell you I have one choice.

OnThink(), loop through all mobiles within 2 tiles, blah blah. (OnThink is done approximately every second). Which is alot of lag.

The reason is, because of the last part of the feature of the aura. Even if mobiles do not move, as long as they are within 2 tiles, they will get damaged. Now think about this, what if they are not a valid target? But after a while (still being within 2 tiles), they become a valid target. You would need to track them in a way to damage them, since they are not moving there are no triggers from OnMovement, and the mobile itself may not be moving, so OnMove() and Move() would not trigger.

So you are left with a timer. Now you have 3 choices on timers. One timer on the Mobile, one timer per target, or a static timer delegating all mobiles which radiate.

We can strike out the third one, cause thats just retarded, laggy, and too much work.
The problem with one timer on the Mobile, is that we are stuck with two options on that. Either have the timer going ALL the time, or we have trigger it for OnMove() and OnMovement(), and then LOOP through all of the mobiles being tracked in our ArrayList (or HashTable, wahtever), blah blah. It ends up being alot more work.

The last method, is the method I took. Now if you think about it... it seems to be the least laggiest, and the best that I could come up with. Now granted what OSI gave us for features, can anyone else come up with something better?
XxSP1DERxX is offline  
Old 11-13-2005, 11:20 PM   #7 (permalink)
Forum Novice
 
Peoharen's Avatar
 
Join Date: Dec 2004
Location: USA
Age: 24
Posts: 911
Send a message via Yahoo to Peoharen
Default

umm I posted here before I knew you posted in mine...
I just seen yours was the last posted and went to it...
But hey atleast we are back up in the top two

I explained mine, you explained yours. atleast ppl are learning things I hope.
(I may have)

OnThink() is what I used in the savage rider, lucky theres not too many riders spawned at once. I had to use it so it whould check to see it is was low on hits. So even if you flee it still tries to aid its self.
But if a timer whould really use less.....

Quote:
can anyone else come up with something better?
winmerge them timer only starts when they get hit and stops when no ones around (ok bad idea, but it whould work for all but rouges...)

P.S. btw I checked stratics I thought they didnt have the range listed. Will under Ice friend and fire gargloy they dont. And I didnt check the others. So the whole unhide and 2 tiles range was just part of the missing info.
Peoharen is offline  
Old 11-14-2005, 05:22 PM   #8 (permalink)
Forum Expert
 
Join Date: Feb 2004
Age: 27
Posts: 1,834
Default

Ive done this too with the onthink method and a datetime check. But what I found out on OSI is that the ice fiend's and lava serpemt's aura damage does not reveal. Only the new named creature's auras do that.
If you don't mind I would post the Pyre as an example here. But your's looks like a lot resources too because of the hashtable and timers it uses.

Always nice to see things worked out properly in another way.
Kamuflaro is offline  
Old 11-15-2005, 10:58 AM   #9 (permalink)
 
Join Date: Oct 2002
Age: 23
Posts: 4,689
Default

Kamuflaro, Onthink uses more resources due to the fact that it has to iteratate through a tile range of mobiles every second (sometimes less). And the hashtable for my method is usually empty. Also with my method, it only iterates through the mobiles when the monster itself is moving meaning if you have player sensitivity, it is never firing. And with player sensitivity, OnMovement isn't firing either by other monsters unless the player is near by, so there aren't any extra timers going off.

I didn't know Lava Serpents had this because stratics didn't even say that they had a fire aura. I also do not play on OSI, therefore I said mine was not going to be 100%, although I have talked to many people to try and get it as close as possible. So if you play on OSI Kamuflaro, I would appreciate it if you could supply as much information as possible. I may also be merging this with BaseCreature, similar to how the breath is so that poeple can make Energy/Fire/Poison/Cold or combination auras.
XxSP1DERxX is offline  
Old 11-15-2005, 09:23 PM   #10 (permalink)
Forum Expert
 
Join Date: Feb 2004
Age: 27
Posts: 1,834
Default

All I can serve with is that the snow elemental did not reveal with the ice aura on TC and the lava serpent beat the crap out of my newbie char on Europa, so I didn't really have the chance to collect the necessary data about the fire aura it had.
The localized 1008111 and 1008112 are overhead at the aura creature.

Can't wait for the next release.
Kamuflaro is offline  
Old 11-16-2005, 02:08 AM   #11 (permalink)
 
Join Date: Oct 2002
Age: 23
Posts: 4,689
Default

Stratics said that the snow elemental and ice elemental specifically were the ones which unhid players and switched targets.... so that is interesting. Then again I know stratics is notorious for old/bad information. Also I was looking for those clilocs and I couldn't find them for some reason. I now know it was due to bad spelling and sentence structure on other peoples part of the information they were giving me. However those clilocs do not make sense if they are over the creature with the aura, since it says " : The intense cold is damaging you!". That would indicate one of two things. Either its a private overhead message, or a system message to that mobile.

Thanks.

Also I guess I didn't read stratics right, but this is what it said -

The hot counterpart of the Giant Ice Serpent. The Lava Serpent is about as tough, but radiates heat, which will cause you damage if you are too close. As with all "radiating" monsters, the damage from the radiation will unhide you if you were hidden.

From Snow/Ice Elementals - As with all "radiating" monsters, the damage from the radiation will unhide you if you were hidden.

From Pheonix - The phoenix will not attack by itself if left alone, come too close and it will most probably kill you. As with all "radiating" monsters, the damage from the radiation will unhide you if you were hidden.

Maybe they changed it to not unhide? Kamuflaro, do you still play OSI, and can you or anyone confirm this?
XxSP1DERxX is offline  
Old 11-16-2005, 02:31 AM   #12 (permalink)
Forum Expert
 
Packer898's Avatar
 
Join Date: Dec 2004
Location: Tulsa, Oklahoma
Age: 35
Posts: 2,378
Send a message via ICQ to Packer898 Send a message via MSN to Packer898
Default

Only thing i can see its missing is the message when you are getting damaged or when you've been revealed. Other then that great job!
Packer898 is offline  
Old 11-16-2005, 02:42 AM   #13 (permalink)
 
Join Date: Oct 2002
Age: 23
Posts: 4,689
Default

Thats what I just asked Kumaflaro about. Because the cliloc gives the impression that it should be a label system message. Similar to the cliloc above it which is " : joined the party." which is sent to the bottom left of the screen of everyone in the party whenever someone joins.
XxSP1DERxX is offline  
Old 11-16-2005, 03:10 AM   #14 (permalink)
 
Join Date: Oct 2002
Age: 23
Posts: 4,689
Default

Updated BOTH aura's to include messages for when the person is damaged.
XxSP1DERxX is offline  
Old 11-16-2005, 06:14 PM   #15 (permalink)
Forum Novice
 
Peoharen's Avatar
 
Join Date: Dec 2004
Location: USA
Age: 24
Posts: 911
Send a message via Yahoo to Peoharen
Default

Quote:
Then again I know stratics is notorious for old/bad information
Quote:
do you still play OSI, and can you or anyone confirm this?
LOL I think its time to buy the new cd.
You dont have to spend as much time patching when you reformat,
and you get a code to play online for 30 days

But maybe thats why osi dont mind us. we still end up buying their cds...
Peoharen is offline  
Old 11-16-2005, 11:09 PM   #16 (permalink)
 
Join Date: Oct 2002
Age: 23
Posts: 4,689
Default

No thanks, I rather not spend money on something that I will not be able to use when I don't have that much anyways. Plus, I won't take my time to build up a character just to confirm the existence an aura of a difficult monster.... and then lose it in 30 days.

Also as a note, I am going to update the message according to what Kamuflaro said if someone can confirm it. I just guessed at how I though it should be used.
XxSP1DERxX is offline  
Old 11-17-2005, 12:01 AM   #17 (permalink)
 
Join Date: Oct 2002
Age: 23
Posts: 4,689
Default

I have updated the message which appears when the person gets damaged by the aura. It now appears above their head, and I believe this is as Kamuflaro was saying.
XxSP1DERxX is offline  
Old 12-10-2005, 03:44 AM   #18 (permalink)
 
Join Date: Dec 2005
Posts: 25
Default

I can verify that both the Snow elemental and the Ice elemental unhide you when their aura hits. Even in the earlier days of Ice dungeon, this was true. I remember because I killed arctic ogre lords in there for hours at a time to get money and fame, and everytime I'd go afk I'd have to leave the dungeon because hiding would get me killed by a wandering snow/ice elemental. In fact, it was one of the reasons why ice was never all that popular of a dungeon.. but those snow elementals, man were they great for gaining parrying.

Great script though, I'm adding it to my Pre-AoS server I'm making.
AngelofApathy is offline  
Old 12-10-2005, 04:14 AM   #19 (permalink)
The noob formerly known as Jakob
 
Serp's Avatar
 
Join Date: Jan 2005
Posts: 316
Default

Quote:
Originally Posted by AngelofApathy
I can verify that both the Snow elemental and the Ice elemental unhide you when their aura hits.
Wasn't that just a biproduct of the fact that you autodefend when something attacks you?
Serp is offline  
Old 12-10-2005, 04:26 PM   #20 (permalink)
 
Join Date: Oct 2002
Age: 23
Posts: 4,689
Default

No cause other aura's don't oddly enough :\


EDIT: I have to fix the message again, everyone please wait for another update. The script was reverted from when the boards went down, so the message may not be correct.
XxSP1DERxX is offline  
Old 12-10-2005, 04:45 PM   #21 (permalink)
 
Join Date: Oct 2002
Age: 23
Posts: 4,689
Default

Updated - 12/10/05
- The output messages from the aura
XxSP1DERxX is offline  
Old 12-10-2005, 07:25 PM   #22 (permalink)
 
Join Date: Dec 2005
Posts: 25
Default

Quote:
Originally Posted by Jakob
Wasn't that just a biproduct of the fact that you autodefend when something attacks you?
If you mean by being damaged by the aura, then I'm not sure. If you mean by them already having you targeted before you hide, then no, they wander around next to you and when they get to close the aura hits you and you become unhidden and become the target of them, and then they freak out and go "OH MY GOD, THERE'S SOMEBODY THERE?" and turn and head to you and attack you.
AngelofApathy is offline  
Old 12-10-2005, 08:13 PM   #23 (permalink)
 
Join Date: Oct 2002
Age: 23
Posts: 4,689
Default

Right Angel, however some with fire aura do not unhide you (Also I believe the ice fiend doesn't... I am not sure). I left it in for both fire and cold aura and since its 1 line, it should be simple enough for someone to comment out of if they do not want that.
XxSP1DERxX is offline  
Old 12-11-2005, 12:36 AM   #24 (permalink)
 
Join Date: Dec 2005
Posts: 25
Default

Yeah, fire auras didn't unhide you because I remember taming Lava Lizards in a one tile area where lava lizards couldn't reach me because I'd have a friend stand in the tile adjacent to it with them targeting me, then he'd hide himself and go AFK while I tamed. Worked like a charm, although thinking back I wonder if that was an illegal thing to do by the games rules. I'm not sure about Ice Fiends though.
AngelofApathy is offline  
Old 02-12-2006, 07:58 PM   #25 (permalink)
Forum Expert
 
Packer898's Avatar
 
Join Date: Dec 2004
Location: Tulsa, Oklahoma
Age: 35
Posts: 2,378
Send a message via ICQ to Packer898 Send a message via MSN to Packer898
Post Crashing...

Just so you know Sp1der i was having an issue with crashing whenever a Staff character was going anywhere near these mobs. Here is the crash report and what I changed to stop this. Maybe you know of a better fix that you would like to add or whatever.

CrashReport:
Code:
Server Crash Report
===================

RunUO Version 1.0.0, Build 35431
Operating System: Microsoft Windows NT 5.1.2600.0
.NET Framework: 1.1.4322.573
Time: 2/12/2006 4:55:25 PM
Mobiles: 11096
Items: 109432
Clients:
- Count: 1
+ 192.168.1.1: (account = Packer898) (mobile = 0x930 'Sin')

Exception:
System.NullReferenceException: Object reference not set to an instance of an object.
   at Server.Mobiles.LavaSerpent.RadiationCallBack(Object state) in c:\Documents and Settings\RunUO 1.0\Scripts\Custom\Modified\Mobiles\Animals\Reptiles\LavaSerpent.cs:line 107
   at Server.DelayStateCallTimer.OnTick()
   at Server.Timer.Slice()
   at Server.Core.Main(String[] args)
LavaSerpent:
Code:
		public void RadiationCallBack( object state )
		{
			Mobile m = (Mobile)state;
			
			if ( Deleted || !Alive || !Utility.InRange( Location, m.Location, 2 ) )
			{
				((Timer)m_Mobiles[m]).Stop();
				m_Mobiles[m] = null;
				return;
			}
			
			if ( this != m && m.AccessLevel == AccessLevel.Player && m_LastRadiated <= DateTime.Now && Server.Spells.SpellHelper.ValidIndirectTarget( m, this ) && CanBeHarmful( m, false, false ) )
			{
				AOS.Damage( m, this, Utility.Random( 10, 10 ), 0, 100, 0, 0, 0, true );
				m.RevealingAction();
				DoHarmful( m );
	<<Line 107>>  	m.NetState.Send( new MessageLocalizedAffix( Serial.MinusOne, -1, MessageType.Label, 0x3B2, 3, 1008112, "", AffixType.Prepend | AffixType.System, m.Name, "" ) );
				m_LastRadiated = DateTime.Now.AddSeconds( Utility.Random( 5, 5 ) );
			}
		}
Here is what I changed the code to:
LavaSerpent.cs:
Code:
			if ( this != m && m.AccessLevel == AccessLevel.Player && m_LastRadiated <= DateTime.Now && Server.Spells.SpellHelper.ValidIndirectTarget( m, this ) && CanBeHarmful( m, false, false ) )
			{
				if ( m.NetState != null )
				{
					AOS.Damage( m, this, Utility.Random( 10, 10 ), 0, 100, 0, 0, 0, true );
					m.RevealingAction();
					DoHarmful( m );
					m.NetState.Send( new MessageLocalizedAffix( Serial.MinusOne, -1, MessageType.Label, 0x3B2, 3, 1008112, "", AffixType.Prepend | AffixType.System, m.Name, "" ) );
					m_LastRadiated = DateTime.Now.AddSeconds( Utility.Random( 5, 5 ) );
				}
				else
				{
					return;
				}
			}
__________________
"We sometimes congratulate ourselves at the moment of waking from a troubled dream; it may be so the moment after death."

~Nathaniel Hawthorne
Packer898 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