Go Back   RunUO - Ultima Online Emulation > RunUO > Server Support on Windows

Server Support on Windows Get (and give) support on general questions related to the RunUO server itself.

Reply
 
Thread Tools Display Modes
Old 08-07-2008, 04:12 PM   #1 (permalink)
Forum Novice
 
Arkryal's Avatar
 
Join Date: Jan 2003
Location: Rochester NY
Age: 27
Posts: 208
Default Falconry 2 script - Need testers, advice

EDIT: sorry, meant this for script support thread, not server support.

This isn't really a "How do I..." request. I plan to release the final script soon, but wanted some feedback on it. I prefer a solid release make it's way to the Releases thread to avoid any emergency support issues from people who use a preliminary build on a big server and encounter problem. If this is in the wrong place, feel free to move it.

Falconry Beta 2

Included in this release:

A pair of flaconer's gloves is used to call a falcon to you (by double clicking)

Evolution and leveling
The bird begins as a hatchling, and grows through 4 additional stages (juvinile, normal, elder, and legendary), as well as gaining in some skills and learning special abilities.

Fighting abilities: (each requires a significant skill level for both you and the bird)
Eye gouge - lowers opponent stamina to 0
Eviscerating Talons - bleeds opponent
Bomber - Takes greater explosion potions from your pack and drops them on their target.

Deliveries: (the falcon takes items to people or places)
Bank runs - doubleclicking the gloves stables the falcon and sends everything in it's pack to the bank.
Send to player - using the command [Fsend <playername> will allow you to sen one item to the listed player.

Hide skinning:
as the bird feeds on fallen corpses, Hides, scales, feathers & bones are stripped from the corpse. (no more trying to doubleclick the edge of that katana for skinning, a pain if you use a high res).

Hunting: the bird can find small hidden rabbits and prey on them, just say "hunt".

Other features:

verbal "pack" command to open it's pack. Birds are notorious for not staying still while trying to click them.
"Come here" command to tele them to you

Tested, working, but not in this release

MUL patches to correct the animations on tamed birds. They should fly to you, not walk behind you. Added art for a bird perch to place in your house, when the bird's with you the perch is empty, when he's stabled, he appears there.

Stuff I'm still working on

Quests for leveling the bird (currently it uses a random chance onHit). I want it difficult and non-grindable
Quest for obtaining the bird.
In-game book documenting how to use the commands
Message delivery (seperate from item delivery as a more realistic chat method)
Package new artwork
Finish coding bird stand
Add in summon and fly away routine (bird maps outside of screen and "flies" in or out for more realism.
De-Buff the bird, (I made it strong for testing purposes)
Add in "Tracking code" - falcon flies to you alerting you of nearby players up the road, potential monsters etc.
Track player - a command that will make the bird fly to a player named in the command if within the same map and 30 screens away or less (to be used for bounty system)


Potential annoyances
Skinning code can flag the bird as criminal, so presently, it waits for the 2 min timer to expire before attempting. Need to fix it so valid kills don't flag criminal.

Deleting the bird or gloves once linked will throw a null exception and crash (only if deleted by admin commands)


Usage
Copy scripts as normal, fire up the server, use [add falconersgloves.
equip the gloves and double click them in the paperdoll to spawn a falcon.
__________________________________________________ __________________________________

Any ideas, suggestions, comments, bugs found etc... Please let me know and I'll work them out.
Thanks everyone.
Attached Files
File Type: zip Falcon.zip (9.5 KB, 15 views)
__________________
•¤•¤•Arkryal •¤•¤•

Last edited by Arkryal; 08-07-2008 at 04:18 PM.
Arkryal is offline   Reply With Quote
Old 08-07-2008, 04:25 PM   #2 (permalink)
Forum Novice
 
Arkryal's Avatar
 
Join Date: Jan 2003
Location: Rochester NY
Age: 27
Posts: 208
Default

For those intrested (and already know how to use mul patcher) here is the artwork currently in use (working on improved version for final release)

Patch the contents of the fly animations folder over the eagle (default #5)
Inside the falconer's gloves.cs, you'll find the locations used for the bird stand.
Attached Files
File Type: zip Fly animations.zip (291.2 KB, 1 views)
__________________
•¤•¤•Arkryal •¤•¤•
Arkryal is offline   Reply With Quote
Old 08-07-2008, 06:03 PM   #3 (permalink)
Forum Novice
 
Join Date: Dec 2003
Posts: 143
Default

Awsome work im testing it out right now and love it . Question how do you cancel a job that you gave the bird when clicking the gloves to make bird go away says it is busy doing another job

also what other skills do i need to do these commands?

Fighting abilities: (each requires a significant skill level for both you and the bird)
Eye gouge - lowers opponent stamina to 0
Eviscerating Talons - bleeds opponent
Bomber - Takes greater explosion potions from your pack and drops them on their target.
__________________
&lt;a href="http://wappyworld.com/phpBB2/portal.php"&lt;/a>
mikeymaze is offline   Reply With Quote
Old 08-07-2008, 07:22 PM   #4 (permalink)
Forum Novice
 
Arkryal's Avatar
 
Join Date: Jan 2003
Location: Rochester NY
Age: 27
Posts: 208
Default

If you send the bird to another player, it takes 20 seconds before you can call it back or give another command. This is the "FLY-Time" timer in the script, meant to simulate the time it would take the bird to fly to another part of the world on an errand. I did this to prevent macro spamming to a list of players, or giving a huge advantage in PvP to players with friends (instant potions etc would be very unbalancing).

As for skill requirements:

Eye gouge attack:
Bird requires 50 wrestling minimum
Player must have 80 in taming and Lore
If req. is met, 8% chance onHit of doing special move.

Eviserating Talons
Require player to have 80 in taming and Lore
If req. is met, bird has a chance equal to 10% of it's wrestling skill (10% at GM for example)

Bomb Attack
Requires player to have 80 Taming and 80 Alchemy and have greater explosion potions in their pack
Say "Bomb on" to enable the skill, "Bomb off" to disable (so the bird won't waste all your potions in small battles)
If Bomb On is set and req is met, and potions are in your pack, there is a 20% chance they will use them. Damage is fixed at 35 for each bomb, but no collateral damage to player or bird.

Skinning is automatic, but delayed for 2 min after kill to prevent accidental criminal action. This needs to be fixed.

Bank runs are free now, but will have a requirement in the final release along with a delay.

the Hunt skill is activated by saying "Hunt". It serves no purpose now, but I have plans to expand it when other, more pressing issues are addressed.

All this is likely to change. Requirements and methods of interacting with the bird are just thrown togeather for now. There will be formal documentation upon official release.
__________________
•¤•¤•Arkryal •¤•¤•
Arkryal is offline   Reply With Quote
Old 08-07-2008, 08:24 PM   #5 (permalink)
Master of the Internet
 
Anti-Basic's Avatar
 
Join Date: Dec 2005
Age: 20
Posts: 12,927
Default

Few ideas.

Death. There could be a smallish percent chance of the bird dying in transit and not delivering its message. If the birds owner is in a faction or warring guild or chaos/order or any other situation in which the player might be in more danger than normal, the bird should be too, so increase the percentage for those circumstances. You could choose to notify the player of this or not (more realistic) and hed have to wait till the bird doesn't return to realize the bird died and the message was not sent.

Rent. Instead of actually owning a bird themselves there could be shops that have several birds to rent, which could be cheaper and if you are planning on requiring a taming (or custom falconry skill) in order to own one, such skill prerequisites would not be required.

A custom Falconry Skill, or a subset of taming skill (like masonry and glassblowing). This would create a need for falconers in guilds and such, and open up a lot of other opportunities.

Attachment. The bird can become more than utility and become attached to you, which could have a lot of rewards, such as flying the contents of your corpse to your bank in case you cant get resurrected before decaying, or if in a guild, he could lead other guild members to loot your corpse for you, for the same reason (I assume there is a weight limit for the bird itself to carry)

Theres probably more ideas for this in my brain somewhere, but scattered in areas I can't reach quickly atm
__________________
Quote:
Originally Posted by madmadmax3 View Post
I didn't insult anyone dumpass
Anti-Basic is offline   Reply With Quote
Old 08-08-2008, 12:25 AM   #6 (permalink)
Forum Novice
 
Arkryal's Avatar
 
Join Date: Jan 2003
Location: Rochester NY
Age: 27
Posts: 208
Default

Anti-Basic, your reading my mind here, I've considered much of what you suggest, but I'm focusing on a more generic script initially for distribution. But excellent Ideas, and some interesting variations I hadn't considered.

Quote:
Death. There could be a smallish percent chance of the bird dying in transit and not delivering its message. If the birds owner is in a faction or warring guild or chaos/order or any other situation in which the player might be in more danger than normal, the bird should be too, so increase the percentage for those circumstances. You could choose to notify the player of this or not (more realistic) and hed have to wait till the bird doesn't return to realize the bird died and the message was not sent.
I had originally considered the idea, specifically with PvP in mind. When I began revisiting this script a few days ago, it was with global pathing in mind, so the bird would have actually flow within the map area. The potential for death along the way was assumed. This proved troublesome to script (I'm not much of a programmer), so the idea scrapped in favor of simply internalizing the bird for a fixed duration. I hadn't really re-examined the idea of death since making that choice, but now the more I think about it, the more sense it makes. Perhaps a 100-(50+(mean average of skills)/2) = % chance to die en route, with a +10% in if sender or recipient is in a dungeon or within 4 screens of an elite monster.

Quote:
Rent. Instead of actually owning a bird themselves there could be shops that have several birds to rent, which could be cheaper and if you are planning on requiring a taming (or custom falconry skill) in order to own one, such skill prerequisites would not be required.

A custom Falconry Skill, or a subset of taming skill (like masonry and glassblowing). This would create a need for falconers in guilds and such, and open up a lot of other opportunities.
Interesting ideas. Though the script has gone a bit astray with some of the features taking precident over the original intent, I would like to get back on track and do something like this. The original concept was to require very high Taming and Animal Lore of the player in order to level up the bird (no gains if player taming skill is sub 95.0), the bird would naturally gain intelligence through combat or successfully completing a task, and then require X int + X player skill to learn skills. The idea was that a bird should take a week or two to max out. Then the glove are transferable, and the bird with it, taking what it has learned to the new player. In that way there is a market not just for the bird, but also it's training. This would lead some guilds to have a designated falconer to train them for the guild, or for sale as a source of revenue.

Quote:
Attachment. The bird can become more than utility and become attached to you, which could have a lot of rewards, such as flying the contents of your corpse to your bank in case you cant get resurrected before decaying, or if in a guild, he could lead other guild members to loot your corpse for you, for the same reason (I assume there is a weight limit for the bird itself to carry)
Interesting. I recall my old squire script from years back. I did something of a bond skill, where it would bond with the player for X timespan averaging skill and stat values + 20% with a health loss penalty at the end. While I wouldn't do that exactly in this case, I could see many functional equivalents. Perhaps a bird that's become attached to you can help reveal hidden enemies with it's superior eye sight. Claiming corpses could be good too, but I would write in an admin toggle for that so people could easily disable it for their shard, it might interfere with valid PvP and PK looting rights. Some shards want protection from that, others want more of it, but it would be a nice option. I've also considered a number of other special skills that would be randomly available. A bird at maximum level gets one of 5 bonus skills, but you don't know which until it's trained.

Expanding on that last idea, I've given some thought to a pedigree system, where the bird may have certian fixed attributes and behaviors:

Pure Bred - The Nobel Bird. Would Gain Int and skills slightly faster than others, making it easier to train.
Skill: A good candidate for loot recovery from a player corpse.

Half-Bred - The Rougish Bird. Would gain int and skills slightly slower than a pure bred but faster than others,
would have a few more Strength points than a pure bred.
Skill: Better Hunter than others

Wild - The Common Bird. would have lower int and slower skill gains, but much more strength and higher
beginning combat skills.
Skill: Moves faster when sending items and messages (40% reduced delays)

Feral - The Sinister Bird. Similar to Wild but does more damage per hit with a lower hit rate.
Skill: 2% chance of inflicting lesser poison on hit

Retarded - The Comedic Bird. A goofy bird with a clumsy manner and humorous personality
Skill: likes to steal shiny objects, may get it's owner in trouble.

These would be inherent and unchangeable properties that may make one type of bird more valuable than another, but allow players a unique choice that fit's their role-play style. Still have a lot to do before I consider a change this drastic, but it would tie in well to a breeding system which I've also been considering, so Time-permitting, I may do this.
__________________
•¤•¤•Arkryal •¤•¤•

Last edited by Arkryal; 08-08-2008 at 12:29 AM.
Arkryal is offline   Reply With Quote
Old 08-08-2008, 11:12 AM   #7 (permalink)
Master of the Internet
 
Anti-Basic's Avatar
 
Join Date: Dec 2005
Age: 20
Posts: 12,927
Default

Quote:
Originally Posted by Arkryal View Post
Anti-Basic, your reading my mind here, I've considered much of what you suggest, but I'm focusing on a more generic script initially for distribution. But excellent Ideas, and some interesting variations I hadn't considered.
The basic idea is enough to make some people happy. Chat systems are very popular, but some people don't like the concept of being able to boom your voice all the way across the world with no explanation. Those people want more of a roleplay twist to their communication. Thats your target audience.



Quote:
Originally Posted by Arkryal View Post
I had originally considered the idea, specifically with PvP in mind. When I began revisiting this script a few days ago, it was with global pathing in mind, so the bird would have actually flow within the map area. The potential for death along the way was assumed. This proved troublesome to script (I'm not much of a programmer), so the idea scrapped in favor of simply internalizing the bird for a fixed duration. I hadn't really re-examined the idea of death since making that choice, but now the more I think about it, the more sense it makes. Perhaps a 100-(50+(mean average of skills)/2) = % chance to die en route, with a +10% in if sender or recipient is in a dungeon or within 4 screens of an elite monster.
Yeah having the bird actually fly across the map and expecting people to actually kill it is kinda unlikely. Altho it would be nice for guilds to be able to intercept each others messages, its just too difficult in UO's environment. Maps too big, birds are too small... also the bird would be have to flying pretty fast or at least faster than the player for some of the advantage.

You're really better off with just having that be an explanation as to the birds death (along with natural causes) instead of it really happening.

As much fun as it would be to add bird interception as an extra layer to pvp, I just don't think its feasible.



Quote:
Originally Posted by Arkryal View Post
Interesting ideas. Though the script has gone a bit astray with some of the features taking precident over the original intent, I would like to get back on track and do something like this. The original concept was to require very high Taming and Animal Lore of the player in order to level up the bird (no gains if player taming skill is sub 95.0), the bird would naturally gain intelligence through combat or successfully completing a task, and then require X int + X player skill to learn skills. The idea was that a bird should take a week or two to max out. Then the glove are transferable, and the bird with it, taking what it has learned to the new player. In that way there is a market not just for the bird, but also it's training. This would lead some guilds to have a designated falconer to train them for the guild, or for sale as a source of revenue.
If you allow birds to be sold, make sure that if the bird has bonded with the selling player, that he behaves poorly with the new owner, even if temporarily. Having the bird itself gain in skills is pretty good, perhaps with more experience he'd be less likely to die/be intercepted by an enemy. And i still think there's a market for rentables along with sold birds. "post offices" would be so awesome. And not near as expensive for new players.
__________________
Quote:
Originally Posted by madmadmax3 View Post
I didn't insult anyone dumpass
Anti-Basic is offline   Reply With Quote
Old 08-08-2008, 12:26 PM   #8 (permalink)
Forum Expert
 
typhoonbot's Avatar
 
Join Date: Dec 2006
Posts: 478
Default

I have awaited the update and fixed falconry script for some time now.

firstly - Thanks very much for the update and re-release.

I will install it a bit later, and do all the testing. With the previous Falconry script, as the falcon attacked something, server crashed. I'm running Runuo 2.0 RC1.

But I like the sound of this one a lot, and look forward to testing / trying it

regards
__________________
legendsofkaine.page.tl
typhoonbot is offline   Reply With Quote
Old 08-11-2008, 03:32 PM   #9 (permalink)
Forum Novice
 
Arkryal's Avatar
 
Join Date: Jan 2003
Location: Rochester NY
Age: 27
Posts: 208
Default

In implementing some of the features listed above, I've hit a few road blocks. I'm relatively inexperienced in C# and made some incorrect assumptions on what the language permitted. Everything is still ofcourse possible and will be done, however to keep the code clean, stable, and maintainable, as well as to implement future features, I will be fundamentally reworking the script. I've added about a thousand lines of code to the above copy, but now it seems better to work from scratch on a more stable copy than to continue adding layers of complexity to a fundamentally flawed script.

Adding more checks against null references
Restructuring so a mobile isn't invoked by an item (however it will be controlled by an item)
Breaking the megascripts into smaller component scripts
Better commenting will be done along the way
General code cleanup (desperately needed) and efficiency improvements.

I will open a new thread under the proper forum section to address any changes in the new scripts.

Thanks everyone.
__________________
•¤•¤•Arkryal •¤•¤•
Arkryal 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