OBLIVION
zzz_borsBedrolls-v1-4 by aaaBors - ataribaby - jrockfishy - theluckyone17
Oblivion » Items and Objects - Player
Added: 13/01/2009 - 03:25AM
Updated: 20/03/2011 - 06:51PM

148 Endorsements

1.4 Latest version

3,119 Unique D/Ls

4,138 Total D/Ls

17,296 Total Views

Uploaded by theluckyone

Description

Last updated at 18:51, 20 Mar 2011 Uploaded at 3:25, 13 Jan 2009

aaaBors created a Bedroll mod, updating it to version 1.1. This mod was great for those players seeking a higher level of "realism," allowing players to carry around a bedroll. He liberated our characters, allowing them to sleep anywhere a bedroll could be dropped, rather than making us crawl home or the nearest inn.

It wasn't perfect, however. The scripts used to allow the bedroll behavior interfered with the bedrolls located in jails. As a result, going to jail was a life sentence... the character couldn't use the bedroll to serve their jail time. Jrockfishy implemented some changes suggested by ataribaby, and resolved the bug.

The mod still was not perfect, however. Pufthemajicdragon noted that the bedrolls script uses the "PlaceAtMe" and "Disable" commands, which (if I'm understanding everything correctly) never actually deletes the old bedroll item. Over time, these instances add up, and cause save game bloat. That can cause Oblivion to crash and other catastrophes.

After a few bumps and bruises to my ego and intellect (I failed to actually change anything in v1.3), I managed to create a persistent reference to the bedroll and modify the script to eliminate the use of the PlaceAtMe command, relying on the MoveTo command instead. As a result, the OBSE dependency is removed.

The conversion did cause one itty bitty issue... dropping more than one bedroll at a time causes the second bedroll to not display. In short, don't drop a second bedroll without picking the first one up, otherwise you'll lose your bedroll (and have to go hunting to find where you left the first one).

I should add that this is my first attempt at altering a mod. It's a simple change, so nothing should go wrong, but... feel free to let me know if something breaks. If you want to change or add something, feel free. Have fun!

README:

GAME: The Elder Scrolls IV: Oblivion
VERSION: 1.3
PLUGIN: Bedrolls
PLUGIN FILENAME: 7lbsBedrolls-OBSE.esp
PLUGIN VERSION: 1.3
AUTHOR: aaaBors, ataribaby, jrockfishy, theluckyone17
ADDITIONAL FILES:
None.

Sections:
0. Plugin Details
1. Installation
2. Uninstallation
3. Compatability
4. Plugin Notes For The Curious
5. Disclaimer

0. Plugin Details:
v1.3: Edited by theluckyone17 with the help of jrockfishy and pufthemajicdragon to use OBSEv16's DestroyObject command instead of disable when removing the bedrolls.

v1.2: Fixed by Ataribaby to allow bedrolls to be used within jails properly. Note that the light (7lbs.) version of the bedrolls was used here.

v1.1: Added Bedrolls to traders and pawnbrokers across Cyrodiil. Tested withthe Copious Coinpurse in the Imperial City Market District, but they should beavailable at any trader or pawnbroker.

Bedrolls is exactly what its namesake implies: It adds Bedrolls to the Oblivion game world. Or rather, it makes the existing Bedrolls movable. That is to say, you now have the option of picking up a sleeping bag and taking it with you, so
that you can drop it anywhere and use it to sleep (not just "wait") anywhere you would otherwise be allowed to. (For instance, you can't sleep in combat, or while trespassing, or other standard no-no's.)

The Bedrolls functionality will make itself apparent almost immediately after the plugin is installed; when you Activate a Bedroll, the Rest dialog appears as normal. Then, after the Rest dialog is dismissed, (either by Resting or by Canceling), you are presented with the option to pick up the Bedroll.

Placing the Bedroll for sleeping is identical to equipping an item. In your inventory, left-click once on the Bedroll. A dialog will appear, asking you whether you would like to drop the Bedroll. If you say yes, the Bedroll will be removed from your inventory and placed at your feet. The process repeats itself here; you are free to pick it up and take it with you when you are done.

Enjoy!


1. Installation:
Installation is straight-forward and similar to installation of any other Oblivion plugin. Simply extract the aaaBorsBedrolls.esp file into your Oblivion\Data directory, then click "Data Files" in the Oblivion start-up dialog, and check the box next to the aaaBorsBedrolls plugin.


2. Uninstallation:
Uninstallation is a simple matter of deleting (or moving) the
aaaBorsBedrolls.esp file from your Oblivion\Data directory. To remove without deleting, instead un-check the box next to the aaaBorsBedrolls plugin in your Oblivion start-up dialog.


3. Compatability:
This plugin is tested compatable with the following other plugins (listed by
filename and author):
1119-Arch Mages Robe Enchanted-TESSource.esp (Xanthan)
808-Better Water-TESSource.esp (Chris)
aaaBorsFlora.esp (aaaBors)
Beltaine_Gemmakers.esp (Beltaine)
Idj_TG_Dues.esp (aaaBors)
No Worthless Items.esp (Eradicator_Z)
Prox - Arena Loot v1.1.esp (Prox)
TRC's Encounters v1.0.esp (TRC)
Visually Enchanted.esp (DarkTyrian)
za_sparring-1-0.esp (?)
While other plugins have not been tested, as a general rule this plugin should be compatable with any plugin that does NOT modify the settings for the many Bedrolls scattered across Tamriel, except by some freak accident in which someone uses my name, my naming conventions AND my variable, script and object names. But that's a given.


4. Plugin Notes For The Curious
This plugin was supposed to be a simple addition to the Oblivion game world. I couldn't understand why they didn't add something as simple as a sleeping bag to the game. Now, with a better understanding of the game engine, I think I know why. It took several attempts and far too many hours of research, but what
can I say? I'm both stubborn, and a stickler for realism. Therefore, after an arduous journey, I bring you Bedrolls. I suppose I could have given it a more creative name--I can be creative, when I try--but with programming I tend to be a bit more direct, to-the-point; or at least, I like to credit myself with such. So, how exactly does it work, and why does the straight-forward "pick the object up and take it with you" not work? To answer the latter question first, it does not work because beds are Activators, not Items. Items can be moved around; Activators are static. In fact, they seem to be identical in most ways to a static object, with the one exception that they can be Activated, which triggers anything from absolutely nothing to complicated triggers and script actions.

So how does it work if it's not supposed to work? By tricking the game, of course. Picking the Bedroll up does not actually pick it up. It removes it from the game, and adds a Bedroll *item* (basically some random custom object that I
named "Bedroll" and gave the Bedroll NIF image) to your Inventory. Because it is now an Item, I can associate an action with equipping it. The action I associate is to run an OnEquip script, which performs the reverse of before: It removes the Bedroll item from your inventory (discreetly of course), and adds a Bedroll activator (the static kind) to the game world, at your position. The cycle repeats itself.


5. Disclaimer
Yeah, I suppose everyone needs one, just in case. So here it is.

If you want to reproduce my plugin, feel free. Send it to your friends, your brothers, sisters, children, parents, heck even grandparents if you can get them to play Oblivion. (Good luck with that on mine.) Just, please, leave this README intact, and give credit where credit is due. You can modify the code, in whole or in part, to your heart's content, but add a line to your README regarding where you got the original source from.

And of course, don't sue me if your computer fries. For one thing, I doubt this plugin will be capable of that. For another thing, even if it is, I'm not about to take responsibility.

In a line:
Use my code and plugin(s) at your own risk.

With that out of the way, kudos to you for reading this far! Now go play! Enjoy!