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

RunUO Post Archive The Archvie

Reply
 
Thread Tools Display Modes
Old 07-19-2004, 02:52 AM   #1 (permalink)
Forum Novice
 
Halciet's Avatar
 
Join Date: Jan 2004
Location: Chapel Hill, NC
Age: 26
Posts: 165
Send a message via ICQ to Halciet Send a message via AIM to Halciet
Default Resurrection Bind Point System

My first submission, this is just a simple script that allows you to add "bind stones" to your world, which players may return to upon dying (kinda like Asheron's Call, or FFXI).

Use is simply "[add bindstone"

Players may set their bind point by double clicking on a bind stone and selecting "ok." Upon death, a player will be presented with a gump that asks if they'd like to return to their bind point; if they say yes, they're warped back to that particular location and resurrected (you may remove the resurrect option by commenting out the "from.Resurrect();" code on line 64 of BindReturnGump.cs). Otherwise, they remain where they are and must find another way to get ressed.

Just unzip the files in the "BindPoint" folder to your custom directory and replace your current PlayerMobile.cs with the one provided. If you've already altered your PlayerMobile.cs file for another system, please follow the instructions listed in the Readme file to see what changes you'll need to make to it.

And that's it! I hope you all enjoy it - I've gained so much knowledge from this community in both UO scripting and coding in general that I just wanted to contribute something back, even if it is just a simple little system like this.

God bless,

-Hal


************
Update History
************

September 5, 2004 7:26 RDT:

Finally got around to updating the gumps. Now newer and more attractive.

July 28, 2004 3:37 AM EST:

Updated with better descriptions for serialization/deserialization method alterations.

July 21, 2004 11:05 PM EST:

-Fixed a HORRIBLE serialization error I left in the PlayerMobile included in the script. This only matters for people who replaced their old PlayerMobile with the one included in the package. Do-it-yourselvers have nothing to worry about.

July 21, 2004 12:13 AM EST:

-Fixed misplaced serialization of variables in the included PlayerMobile.cs file, which caused faulty deserializations on boot. Sorry about that one, guys, I wasn't looking where I typed.

July 20, 2004 4:25 am EST:

-Replaced BindMap with more appropriate variable, and likewise trimmed out useless code as a result. All previous users might want to download the newest version of the script, as these are the FINAL changes to the PlayerMobile variables; any future updates will only affect the gumps.

July 19, 2004 3:48 PM EST:

-Removed BindX, BindY, and BindZ variables, replacing them with Point3D BindPoint, as suggested by ASayre8 (thanks!).

-Included a modified version of the default PlayerMobile for people who have not already altered their PlayerMobile.cs file.

July 19, 2004 6:01 AM EST:

-Rearranged code a bit; now, players who do not have a bind point set will not get the return gump when killed.

July 19, 2004 4:37 AM EST:

-Added support for cross-facet death transportation; As my server is restricted to one facet, I didn't think to make it check the map when placing the player. This led to players being set in blackness if they died in Ilsh/Malas/Trammel and tried to go back to their Felucca bindstone.

************
Attached Files
File Type: zip BindPointSystem.zip (14.8 KB, 51 views)
Halciet is offline   Reply With Quote
Old 07-19-2004, 03:11 AM   #2 (permalink)
Forum Expert
 
Khaz's Avatar
 
Join Date: Mar 2003
Location: where I belong
Posts: 1,784
Default

Very nice script. Great idea, and thank you for the contribution. It will definitely be handy.
__________________
"Misfortune shows those who are not really friends." -Aristotle
"A multitude of words is no proof of a prudent mind." -Thales
Khaz is offline   Reply With Quote
Old 07-19-2004, 03:58 AM   #3 (permalink)
Forum Novice
 
Halciet's Avatar
 
Join Date: Jan 2004
Location: Chapel Hill, NC
Age: 26
Posts: 165
Send a message via ICQ to Halciet Send a message via AIM to Halciet
Default

Thanks a lot Khaz

I just updated to provide support for servers with multiple facets; as my shard only has one, I didn't have to worry about it, but it just dawned on me that not every server is like mine, so I upgraded support for it. Kinda sloppy, but it works!

Oh, and Wraith, nice work on the Dereth map, I like that you included the Dark Majesty expansion island too (which was the last time I played). What kind've scale are you going to run the map at? Around that of the real AC?

-Hal
Halciet is offline   Reply With Quote
Old 07-19-2004, 11:48 AM   #4 (permalink)
Forum Expert
 
Join Date: Nov 2003
Location: Buckhannon, WV
Age: 34
Posts: 409
Send a message via ICQ to iZJokersWild Send a message via Yahoo to iZJokersWild
Default

Quote:
Originally Posted by wraith
Well being that Dereth is 500 square miles, hehe and UO is like 1/2 that I have to go with what I can get to fit but if you mean what time period, then I think Im going to have to say hit and miss, there is no way to fit all the cool dungeons in or even 1/2 of them for that matter, but I think Ill use ones like the Anceint Queens Hive out on ML for some Realy Nice armor. I also Loved the Frore quest. cool robe heheh. and maybe Ill try to work in the Atlan weapon quest with the stones. Im going to just pick and chose the things I want. heheh
But you have 4 maps you can replace. Could you not use the Dereth map as base "Topside" map, use that to replace the Trammel or Felucia map, then still have 3 other maps that can be replaced with dungeon maps and such.
iZJokersWild is offline   Reply With Quote
Old 07-19-2004, 11:57 AM   #5 (permalink)
Tru
Forum Expert
 
Tru's Avatar
 
Join Date: Jan 2003
Location: California
Age: 39
Posts: 3,260
Default

Quote:
Originally Posted by iZJokersWild
But you have 4 maps you can replace. Could you not use the Dereth map as base "Topside" map, use that to replace the Trammel or Felucia map, then still have 3 other maps that can be replaced with dungeon maps and such.
Actually theres only 3 maps you can replace as Tram and Fel use the same one
Tru is offline   Reply With Quote
Old 07-19-2004, 03:23 PM   #6 (permalink)
RunUO Developer/Demise Person
 
ASayre's Avatar
 
Join Date: Mar 2003
Location: California
Age: 20
Posts: 1,700
Default

Good, script, also reminds me a bit of Everquest. Anyways, Instead of serializing the x, y, & z, You can Serialize things of type Point3D.

To create 'em, you have Point3D SomeVariable = new Point3D( x, y, z); (replace it with the correct locations of course) There are also serialization & deserialization methods for 'em
__________________
Andre Sayre, Core Developer
The RunUO Software Team

The day we are born is the day Death inches ever closer...
E-mail: ASayre ( AT ) RunUO ( Dot ) c o m
I'm as graceful as a gazelle galloping over glistening green grass with it's head on fire.
ASayre is offline   Reply With Quote
Old 07-19-2004, 03:35 PM   #7 (permalink)
Forum Expert
 
Pyro-Tech's Avatar
 
Join Date: Oct 2003
Location: Carbondale, IL
Age: 24
Posts: 1,805
Send a message via MSN to Pyro-Tech
Default

Shadowbane also had this with the whole tree of life deal
__________________

Pyro-Tech is offline   Reply With Quote
Old 07-19-2004, 03:58 PM   #8 (permalink)
Forum Novice
 
Halciet's Avatar
 
Join Date: Jan 2004
Location: Chapel Hill, NC
Age: 26
Posts: 165
Send a message via ICQ to Halciet Send a message via AIM to Halciet
Default

Quote:
Originally Posted by ASayre8
Good, script, also reminds me a bit of Everquest. Anyways, Instead of serializing the x, y, & z, You can Serialize things of type Point3D.

To create 'em, you have Point3D SomeVariable = new Point3D( x, y, z); (replace it with the correct locations of course) There are also serialization & deserialization methods for 'em
ASayre:

That's EXACTLY what I was wanting to do originally, but I wasn't sure on the serialization/deserialization methods for Point3D. You got me thinking about it though, and so I've went back and fixed it. Thanks a lot!


Wraith:

I'll look into adding an "unbind" option to the Bind Stone, I just didn't think anyone would ever really want to unbind, since if they didn't want to return they could just click cancel or right-click out. I'll look into adding one as soon as I get the chance though; I'll just rebuild the gump system entirely.

As for the "res on arrival" thing, it's very easy to do actually; you just need to add:

from.Resurrect();

after the "from.PlaySound( 0x202 );" line (or anywhere in that final "else" clause) in BindReturnGump.cs. Then the player will auto-res when they arrive at the stone; I was just getting around this by placing them near healers, but that's actually a pretty good idea, I might make it default.


Thanks for the great feedback guys!

-Hal
Halciet is offline   Reply With Quote
Old 07-19-2004, 04:46 PM   #9 (permalink)
Forum Novice
 
Halciet's Avatar
 
Join Date: Jan 2004
Location: Chapel Hill, NC
Age: 26
Posts: 165
Send a message via ICQ to Halciet Send a message via AIM to Halciet
Default

Thanks a lot man I updated the download version to include that resurrect option, as well as the Point3D change mentioned by ASayre; you might wanna get the new version and make the changes listed (very small) just to have the most efficient version.

-Hal
Halciet is offline   Reply With Quote
Old 07-19-2004, 04:49 PM   #10 (permalink)
 
Join Date: Jun 2004
Age: 29
Posts: 10
Default Does this work with RC0

Ive put everything where I think its suppose to go. I say this because this is the first time I edit the playermobile.cs script. I keep getting a serialize error message. I dont know if I'm placing the lines in the correct place or not. Here is the error that is thrown.

System.Exception: Load Failed <items=False, mobiles=True, guilds=False, regions=False, type=Server.Mobiles.PlayerMobile, serial=0x000041B4> -------> System.Exception: ***** Bad serialize on Server.Mobiles.PlayerMobile *****
at Server.World.Load<>
--- End of inner exception stack trace ---
at Server.World.Load<>
at Server.ScripCompiler.Compile<Boolean debug>
at Server.Core.Main<String[] args>
This exception is fatal, press return to exit


Im just starting to learn c# and have yet to catch on to serialize and deserialize. Any help greatly appreciated.
ocalit is offline   Reply With Quote
Old 07-19-2004, 05:01 PM   #11 (permalink)
Forum Novice
 
Halciet's Avatar
 
Join Date: Jan 2004
Location: Chapel Hill, NC
Age: 26
Posts: 165
Send a message via ICQ to Halciet Send a message via AIM to Halciet
Default

Yes, it works with RC0, as I only work on supporting the most current distro.

If this is the first time you've edited the PlayerMobile script, just replace your old one with the one I have provided in the most recent version of the System. Make sure you back up your old one somewhere just incase.

If you do want to try editing it yourself, just open up the version I have included in the download to see where the changes are placed. Ctrl+F and seach for "Bind Point System Start" to find each specific location (there are four total), and then add the block to your own PlayerMobile.

-Hal
Halciet is offline   Reply With Quote
Old 07-20-2004, 05:16 AM   #12 (permalink)
Forum Novice
 
Halciet's Avatar
 
Join Date: Jan 2004
Location: Chapel Hill, NC
Age: 26
Posts: 165
Send a message via ICQ to Halciet Send a message via AIM to Halciet
Default

Glad to hear it's working for you now buddy, but I have some good news and some bad news for you:

The bad news is that I've updated the script once more, with changes to the PlayerMobile, which means your characters will have to be wiped to update to this version. =/

The GOOD news is that the changes to PlayerMobile are now FINALIZED, and much more efficient. Any future updates will only alter the gump scripts, and as such, you'll never have to delete Players as a result of upgrading a version of this script again. Sorry that it took me two days to get it optimized =/

-Hal
Halciet 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