RunUO Community

This is a sample guest message. Register a free account today to become a member! Once signed in, you'll be able to participate on this site by adding your own topics and posts, as well as connect with other members through your own private inbox!

Evolution Creature System

X

Xanthos

Guest
Version 1.15 has been posted. There are a number of changes in this release - most notably the feeding, equipping and incorrect leveling bugs have all been fixed.

Sorry for the mix up. Also note that the utilities have changed. If you have other Xanthos systems you may need to update them to compile with the new Utilities package - i will try to keep them compatible going forward.
 

XenoNeo

Sorceror
Question...

This sounds stupid of me but how do I un/equip my mercs? Paperdoll doesn't work but I didn't know of any other way... Thanks
 

seanandre

Sorceror
You can place the items you want your mercenary to pick up on the ground near it, and say it's name and loot. Example: Bob Loot and it will pick up everything off the ground within 2 or 3 tiles of it in all directions. Then when it has all the items you want it to wear in it's pack, say it's name and Dress. Example: Bob Dress.

Note: Mercenaries will not wear items you craft until it reaches Servant. And it will not wear artifacts until it reaches Avenger level.

Xanthos, I've downloaded the latest version and will update tonight :) Thank you for your hard work on this system, my players LOVE it.
 
X

Xanthos

Guest
XenoNeo said:
This sounds stupid of me but how do I un/equip my mercs? Paperdoll doesn't work but I didn't know of any other way... Thanks
Drop the items on it and it will put them on, If they are blessed or insured and your merc dies they will be in the pack just tell it to dress. ask it for help and it will tell you all of its commands.
 

seanandre

Sorceror
Okay I decided not to post all my errors in 1 thread, makes no sense. Here is my latest error, and this happened after the shard was online for like 2 or 3 hours. I got a crash, and it has something to do with the evo system it looks like.

EDIT: Apparently this is happening when I or my players put stuff in the mercenary packs and tell them to dress, no matter what level they are or what stage they are. I just took an artifact chest plate off of my mercenary who is an Avenger and put it in his pack then told him to dress, and the shard crashed. I have no idea what's causing this, but I'm through testing. My shard is suffering from all the crashes and people are getting pissed. I'm leaving it offline until this gets fixed. It's better that people think it's just currently not online rather than dealing with a bunch of people bitching cause it keeps crashing. Anyways, Here's the error :)

Error:
System.IndexOutOfRangeException: Index was outside the bounds of the array.
at Xanthos.Evo.Mercenary.GetMercTitle(Int32 stage)
at Xanthos.Evo.Mercenary.GetArtifactWielderTitle()
at Xanthos.Evo.Mercenary.OnDragDrop(Mobile from, Item dropped)
at Server.Item.DropToMobile(Mobile from, Mobile target, Point3D p)
at Server.Mobile.Drop(Mobile to, Point3D loc)
at Server.Network.PacketHandlers.DropReq(NetState state, PacketReader pvSrc)
at Server.Network.MessagePump.HandleReceive(NetState ns)
at Server.Network.MessagePump.Slice()
at Server.Core.Main(String[] args)
Crash: Backing up...done
Crash: Generating report...done
Crash: Sending email...failed
Crash: Restarting...done
Warning:
System.Threading.ThreadAbortException: Thread was being aborted.
at System.Threading.Thread.Sleep(Int32 millisecondsTimeout)
at Server.TimerThread.TimerMain()
 
X

Xanthos

Guest
seanandre,

First off, what version of the Evo system is this occurring with? Have you modified the code in any way, be it the MercenarySpec or any of the other Merc or BaseEvo code? What do you have the MercenarySpec.m_ArtifactStage and MercenarySpec.m_MaxTrainingStage set to? How many elements are in your m_Stages array?

The call stack tells me that this merc crashed when it tried to equip an artifact but was not yet at the stage to equip artifacts. This tells me that your statement that it happens with all mercs no matter what stage is incorrect or the code is different from what I released.

The exception is an array out of bounds in code that is attempting to look up the title of the element of the m_Stages array at MercenarySpec.m_ArtifactStage. If MercenarySpec.m_ArtifactStage is less than zero or greater than the number of elements minus one, then you will see a crash. If that is the case then someone has changed the spec or the code incorrectly.

Just to be sure - I tested with mercs at stage -1, 0, 2, and 100. All of them except the -1 handled it as expected. The -1 uncovered a very minor bug - displaying the wrong title but did not crash.

PM me if you uncover any additional details that may help in debugging this.
 

DeepIn

Wanderer
Xanthos said:
Sorry sir! Your request is out of the scope of this system. You want support on how to place custom items on NPC vendors. I suggest you start a new thread for this request.


I think you dont understand me.It is just about your items like the mercenary deed or the dragon eggs.Other items or items that i created are easily to add, but if i try to add your specific items i'm getting error messenges.So i think it is not wrong to ask you in this thread.Please respond and excuse my nagging.
 

nacrom

Wanderer
ok small question

how do i extend the incubation period on the Eggs, seems that they by default are set for 15 minutes, but i owuld like to make people wait longer like 24 hours or so
 

seanandre

Sorceror
In DragonEvoEgg.cs and HiryuEvoEgg.cs I believe you change this:

Code:
		[Constructable]
		public RaelisDragonEgg() : base()
		{
			Name = "a dragon egg";
			[COLOR="red"]HatchDuration = 0.01;[/COLOR]		// 15 minutes
		}

To this for 24 hours:

Code:
		[Constructable]
		public RaelisDragonEgg() : base()
		{
			Name = "a dragon egg";
			[COLOR="red"]HatchDuration = 1.00;[/COLOR]		// 15 minutes
		}

Anybody is welcome to correct me if I'm wrong. :)
 

nacrom

Wanderer
you thats what i thoguht it might be. but being new i needed some confirmation on it =-P that and seeing if 15 minutes =.01 how owuld 24 hours equal 1.00 i came up with like .86 or something in that area =-P i will try the 1.00 and see what happens

thanks
 
multiplying it out - comes to .96

- but the true value for exactly 15 minutes woiuld be : 0.0104166

so it is just under 15 minutes - but close enough :cool:
 
X

Xanthos

Guest
DeepIn said:
I think you dont understand me.It is just about your items like the mercenary deed or the dragon eggs.Other items or items that i created are easily to add, but if i try to add your specific items i'm getting error messenges.So i think it is not wrong to ask you in this thread.Please respond and excuse my nagging.
Ok my guess is you are getting errors about unknown classes or types. In that case use the fully qualified name. For instance a MercenaryDeed is in the Xanthos.Evo namespace, so instead of:

new MercenaryDeed()

you would use:

new Xanthos.Evo.MercenaryDeed()
 

Sunshine

Wanderer
Hello I am in need of your assistance, please. A freind of mine has your package in his shard, now we found the mercs are just so stong that we need to take action to lower them down. I noticed in teh script there is Uber merc and I assume the normal or lower merc ...I am guessing here as I do not have his shard scripts on my comp, but I think he is using the uber one based on the fact nothing can kill the mercs...

Question How can I change it to the lower one. I am very very new at this and my mknowledge is extremely limited soo please be as detailed and patient with me. I know it sucks to have noobies ask for help..but believe me it sucks being the noobie too..

Thanks soo much for your time in this matter
 
X

Xanthos

Guest
Sunshine,

The properties of my evos are controlled in the Spec file for each type of Evo. The GetEvoSpec method in each Evo class tells the system what spec to use.

My package comes with the GetEvoSpec as follows for the merc:
Code:
		public override BaseEvoSpec GetEvoSpec()
		{
			return MercenarySpec.Instance;
		}
If your friend's Mercenary.GetEvoSpec looks like that then the normal merc spec is being used. Using the Uber merc spec, the GetEvoSpec method would like like this:
Code:
		public override BaseEvoSpec GetEvoSpec()
		{
			return UberMercenarySpec.Instance;
		}
If you use the MercenarySpec in place of the UberMercenarySpec and find that the mercs are still too strong, there are two things to consider. First, what version of the Evo system is installed. Not too long ago there was a bug in the Evos where there was no resistance cap on the mercs. Therefore, once you put good armor on them, they were very hard to kill. I recommend you upgrade to the current version if that has not already been done.

Second, all the properties of the Evos, at each stage of their evolution, are set in the Spec. The spec contains a series of stages, one for each stage of the merc's, development. In each stage of the Spec you can set things like the value of virtual armor, resistances and the amount and types of damage they do. You can also set the amount of str, int, dex, and hitpoints they will gain as they level up. You can modify those values to change the properties of the merc at each level. Experiment with these values to arrive at a creature that you want your players to have.

Comparing the UberMercenarySpec and the MercenarySpec would be a good way to see how changes in the Spec change the resulting merc.
 

Sunshine

Wanderer
Thank you very much I think I followed you on all of that. I will ask to remove the files he is using and restart thus riding the shard of all exsisiting ones and then install the latest version you have posted..I will check over the stats of the less uber one and see if it is more to what he is wanting and adjust them if I have to ..thanks soo much...if I have problems getting this script in I will be back..giggles


Thanks again
 

Sunshine

Wanderer
Thank you I testedit on my test shard and it worked great..3 questions though

1. Can I make it where they can not mate? I am using FS taming system and

2. You have included a pet leash and shrink system. On my test shard I notice I know have 2 leashes..may I safely remove the parts that would be dumplicated as I have a shrink system or at least can I remove the leash safely?


3. when I say [kp it says not vaild command ..am I missing something ?

I know very noobish questions and I am embaressed to ask them but then if I do not ask I will never know....sorry

Thanks I will await your response and I thank you
 
X

Xanthos

Guest
Sunshine said:
Thank you I testedit on my test shard and it worked great..3 questions though

1. Can I make it where they can not mate? I am using FS taming system and

2. You have included a pet leash and shrink system. On my test shard I notice I know have 2 leashes..may I safely remove the parts that would be dumplicated as I have a shrink system or at least can I remove the leash safely?


3. when I say [kp it says not vaild command ..am I missing something ?

I know very noobish questions and I am embaressed to ask them but then if I do not ask I will never know....sorry

Thanks I will await your response and I thank you
There is a configuration setting in the Spec that determines whether they can mate or not. There are many other things that can be controlled there as well.

You do not need my shrink system however, the one in FSTaming is quite buggy. Contact member Joeku to find out how he converted the FSTaming system to use my shrink system - it was pretty straight forward as I reacall.

My system uses [EP. [KP is used by the buggy evos.
 

seanandre

Sorceror
Hey Xanthos, just letting you know that changing the value of BlessStatus in ShrinkConfig.xml in the data folder isn't working for some reason. It only works when I change it in the ShrinkConfig.cs file.
 
Top