This system will allow characters to keep a list of locations and targets that they may then view remotely from a Scrying Device or Teleport to.
Please read the documentation for setup and usage. *.erf contains all the required scripts. Sample module shows how the system works.
System is flexible and allows the builder to designate objects that are scying devices with different levels of power - some may provide travel and might even be set to certain locations.
Character's use a widget called the "scrying journal" to select locations and targets they wish to record for scrying later on. Other objects may allow that character to "learn" about a distant target and record that to their journal.
When scrying, the character takes control of a "Sensor" at the viewing location. Their body is still back at the device and may be interacted with - usually resulting in the session ending.
-------------
v.0.5 is the first released version but should still be considered beta. I have tested it just about as much as one person can mess with it. It should work for multi-player games without trouble.
-------------
v.0.6 Adds immunities to the "Sensor" while scrying. Now the scrying PC won't (shouldn't) be triggering traps or hit by AOE spells.
-------------
v.0.7 Adds a number of inventory and item related modifications, improved conversation options, and the option to allow a certain amount of communication to the scry location
This system is fully functional. The persistence process I have added below is supplemental to the Scry System.
5/2012 0.7.1 fixed a couple of small bugs.
..........
v.0.8.2 Hides and protects associates. Teleportation options. Improved Device Items that can move from module to module. Hopefully fixed a few other annoying bugs.
-------------
0.9 Combined Teleport conversation into Scry Conversation.
Added conversation elements to check for needed items and allow creation of Written Accounts of already Recorded Objects or Locations.
Adding copies of Associates, gave them conversation options
-------------
"scry_data" update adds persistence to the system. It is pretty down and dirty, but it works! Recorded Target lists are restored after resets/restarts. If non-unique targets are to be stored, the reset may return another object with the same tag. If you see any glaring errors, let me know - this is my first stab at a persistence script of my own.
Thanks!
Persistence Update. 5 scripts (3 edited, 2 new). To setup, wrap "scry_get_data" into your Module OnEnter event (or put it in a trigger or something so PCs will run the script). Add the variable INT "SCRY_PERSIST" = "1" to your module. This allows the persistence to be turned off if needed.
If you want the persistence to be campaign-wide (not tested) instead of module oriented, add the variable STR "Campaign" to your module with the name you want.
If I could find a way to save the journal item persistantly, I could make the persistence work much better - right now, non-unique items may return the wrong item on reload. However, I seem to be clueless on how to properly save the object - StoreCampaignObject and RetrieveCampaignObject seem to do nothing for me. The scripts claim to store the object, but nothing is there to be retrieved. It may be that I am missing a step, or missing the process by which PW are saving inventory across resets. (NWNx? maybe) Any suggestions would be helpful. Thanks for trying this out!
Posted by Mannast at 2011-05-0407:28:02
lordofworms - I was re-reading your question and realized I didn't understand what you were asking about. My first shot at persistence is using a database write just after recording a new target. So every time one adds a new target, the script writes all of the targets recorded to the database. In your question, you talk about saving the recorded targets to the journal item - and that these keep the data even over resets - maybe skipping the need for database storage. I'm guess in your PW, the characters inventory is maintained across resets, and so the item would be - but variables on the PC are lost... Sorry I am just a bit slow on the uptake and went a different route... thinking... Let me look at how the information is stored and get back to you.
Posted by Mannast at 2011-05-0219:05:46
I will see what I can do about the journal and database storage - It should be possible and strangely enough I was looking at persistance the other day. Glad you love the little touches!
Posted by lordofworms at on04/26/11
p.s. I enjoyed that extra touch of casting before kneeling when beginning a scry , heres to the little touches! _________________________ [Seasonal Forest Tileset] [Fantasy Dungeon Tileset][Scorched Earth Tileset] [Mirkwood Swamp Tileset] [Cypress Bayou Tileset] [Undersea Tileset] [Reworked Werewolf Model] [Helmet Pack] [Remodeled Night Hag][WoRm Head Hands Model][Goblins Override][Zombies Override][Ghouls Override] [Werewolves and Fire Giants remodels][Bugbears Facelifts][Minotaurs Facelift][Wagon Interiors][Arbor Falls~ Downloadable Persistant World]
Posted by lordofworms at on04/26/11
Yep me again. I love it. My only concern...my only one...is it doesn't look to be persistent? or is it and I am not utilizing it correctly. but in my PW setting when resetting server all my 'stored' locations are lost.. I havent looked too deeply into your code, but if your storing info on the PC how hard would it be to store it on the journal item itself? luckily items keep any stored data even across resets so its an easy solution for persistency.. just hoping, I wouldnt mind taking a crack at it but I thought to ask you since being the creator it might be easier to know where to start. still a 10 for me though. _________________________ [Seasonal Forest Tileset] [Fantasy Dungeon Tileset][Scorched Earth Tileset] [Mirkwood Swamp Tileset] [Cypress Bayou Tileset] [Undersea Tileset] [Reworked Werewolf Model] [Helmet Pack] [Remodeled Night Hag][WoRm Head Hands Model][Goblins Override][Zombies Override][Ghouls Override] [Werewolves and Fire Giants remodels][Bugbears Facelifts][Minotaurs Facelift][Wagon Interiors][Arbor Falls~ Downloadable Persistant World]
Posted by Mannast at 2011-04-2809:57:13
Updated to v.0.7 - lordofworms, thanks for the spot in the documentation - I think that fix actually made it into this latest version. Version 7 includes: communication options - allowing for the character to send a "thought" to the scry location for a certain period of time; Scry Devices in character inventories; Options in the conversation to record the scry devices or learning objects as targets; and improved animations (at least added some animations... whether they improve...).
Posted by lordofworms at on04/26/11
excellent work in updating! I have since merged it with my own PW and it was pretty much plug and play after initial setup. one thing of note. in your README under setup you have something like "to make a placeable scryable set "SCRyING_DEVICE" as an INT to 1" this is wrong and should be.. "SCRY_DEVICE" INT set to 1 just FYI, in found it out by opening your module and looking since when I followed your steps in your README I was unable to converse with my 'scrying' placeable because of having the wrong variable INT name. other than that, docs were simple and well written. if I havent voted a 10 earlier, I have now. _________________________ [Seasonal Forest Tileset] [Fantasy Dungeon Tileset][Scorched Earth Tileset] [Mirkwood Swamp Tileset] [Cypress Bayou Tileset] [Undersea Tileset] [Reworked Werewolf Model] [Helmet Pack] [Remodeled Night Hag][WoRm Head Hands Model][Goblins Override][Zombies Override][Ghouls Override] [Werewolves and Fire Giants remodels][Bugbears Facelifts][Minotaurs Facelift][Wagon Interiors][Arbor Falls~ Downloadable Persistant World]
Posted by Mannast at 2011-04-2205:57:10
Updated the scripts to v.0.6 today. When scrying, the "Sensor" (the actual PC) will have a number of immunities added to it. I guess the main issue is that if they have these immunities from some other source, those will be removed at the end of the process as well. I have been adding checks for removing only permanent duration effects, but that is not a complete solution. On the familiar suggestion by Sethan - I will look at that - but it would mean adding a familiar to the PC (even if they are of a class not using familiars), possessing them, making the familiar immune to effects and transporting them... it might be cleaner though.
Posted by Sethan at 2011-04-2120:14:23
Perhaps use a possessed familiar as the sensor, instead of the actual PC? _________________________ PW Story server Narfell - Since 2002
Posted by Mannast at 2011-04-2112:20:01
Thanks for the great comments! The primary issue is in the stage where a PC is working the main scry section. The Following script initiates the Cutscene concept lordofworms mentioned in the forum - which makes the PC "plot" and invulnerable. But when just scrying, currently the PC is just invisible and paralyzed. I am playing with adding Immunity to Spells and Immunity to Traps while scrying. This seems to work, but it may still be possible there are other forms of damage they may incur. I will post my current fix after a little more testing and continue playing with it.