http://tesnexus.com/downloads/file.php?id=14723
ATTENTION-Crossbows of Cyrodiil REQUIRES http://obse.silverlock.org/ v0015a or later, as well as The Shivering Isles expansion.
Note-A patch is available for users who do not have The Shivering Isles expansion.
Download Source: http://tesnexus.com/downloads/file.php?id=14723
Description
This mod adds a variety of fully functioning crossbows and bolts to Oblivion. They can be found throughout Cyrodiil and the Shivering Isles on NPCs, at vendors, and as loot. Special Thanks goes to HeyYou for providing scripting, and Hel Borne for providing the models. Without them, this mod would never have reached the level it is today. I'd also like to thank Scruggswuggsy the Ferret for devising the first crossbow script, and Sjors Boomschors for the original concept that spawned this mod.
Changes made to v9.4b
- Modified NPC script to accommodate new crossbow list.
- Modified crossbow list to connect with new scripting.
Changes made to v9.4
- Removed unused variables from the NPC script.
- Altered the way in which token crossbows are removed from dead NPCs.
- Added condition to the NPC script to prevent characters from being with a token crossbow.
- Edited the NPC animation controls to prevent animation looping.
- Condensed several sections of the NPC for efficiency.
- Modified the animation reset in the player script to eliminate problems when exiting dialogue menu.
- Added variables to prevent the player's controls from being disabled when not using a crossbow.
- Removed ineffective variable from player script.
- Condensed a few sections of the player script for efficiency.
- Removed messages related to spanning the crossbow while swimming or in the air.
- Updated the ReadMe file.
Changes made to v9.3
- Modified the NPC script to control the NPC crossbow animations directly, thus eliminating the need for individual object scripts. This was done to further reduce the risk of a crash-to-desktop.
- Modified the NPC script to remove token bows from dead NPCs.
- Modified the NPC script to more precisely identify when a clone form is needed.
- Modified the NPC script to prevent NPCs from becoming permanently restrained.
- Modified lists to make use of improved crossbow appropriation.
- Removed all object scripts from crossbows.
- Removed several unused crossbows.
- Removed several unused scripts.
- Modified the player script to control the replacement of NPC crossbows directly, again to eliminate the need for individual object scripts.
- Modified token item names to be more easily recognized when using utilities that make all items playable.
- Updated the ReadMe file.
Changes made to v9.2
- Modified the NPC script to prevent crash-to-desktops upon entering cities.
- Modified the NPC script to no longer take into account whether the NPC is in combat when determining whether they should receive a crossbow.
- Modified the player script to prevent the crossbow from resetting every time they enter the inventory menu.
- Modified the player script to allow crossbows to have the same affect on leveling the Marksman skill as regular bows do.
- Updated the ReadMe file.
Changes made to v9.1
- Modified scripts so that using a crossbow now has a minor effect on leveling the player's Marksman skill. Crossbows will have approximately one-third the impact as regular bows on raising the Marksman skill.
- Modified scripts to correct a bug that prevented some crossbow models from being positioned correctly when viewing the player's inventory.
- Modified scripts to instantly update crossbow stats when viewing the player's inventory. In previous versions you had to exit and reenter the inventory in order to see the correct stats.
- Modified scripts to allow the player's strength to play a role in loading speeds. All crossbows now have a minimum and maximum speed. The more powerful the crossbow the slower it will load. The weakest crossbow (Iron Crossbow) has a maximum speed equal to three-forths a regular bow. The higher the player's strength, the faster the crossbow will load up to the maximum speed. For practical reasons, as well as for realism, the effects of strength are constrained between zero and one-hundred.
- Modified scripts to facilitate slightly better timing for the immobilization of the player while loading the crossbow.
Changes made to v9
- Realigned the crossbows and bolts so that they can be fired correctly from a standing position, rather than a crouch. This meant I had to rewrite all the scripts that dealt with the animation of the crossbows both on NPCs and the player. While I was at it, I also attempted to rebalance the weapons in-game, so they fit better with the other weapons.
- Tweaked the damage calculation scripts slightly. For some reason, when the player raised his stats high enough, the weapons would begin to do less damage. I added a condition that would prevent that from happening. In turn, I also removed the condition that prevented the weapon's health from affecting the damage dealt, and I replaced it with a variable dealing with the player's Luck. I did this primarily for added realism. Crossbows degrade just like any other weapon, and over time are less effective. However, the player's stats will still play a minor role in calculating the crossbow's actual damage still.
- Added conditions that prevent crossbows from increasing the player's Marksman skill. Seeing as crossbows were used almost exclusively by those who had no training in archery, I didn't think it made much sense for them to improve the player's skill with a regular bow. Besides, the only thing you would get better at is pointing the thing. I also added a condition that prevents novice marksmen from losing fatigue when using a crossbow.
- Instituted the model swapping on the crossbows so that they appear correctly whether on the character's back or in their hand. In order to do this, I had to create four versions of each crossbow in the ESP. The first version (CRV) is used in leveled list and scripts so as to make sure the correct items are added to the character. The second version (NPA) is the version used by NPCs when they attack, whereas the third version (NPB) is used when the weapon is on their back. The forth version (PCV) is the one used by the player, thus allowing our scripts to swap models as needed.
- Introduced HeyYou's cloned form script from previous betas so as to make the CoC compatible with companion mods. When the player gives a crossbow to a companion it is automatically replaced with a clone. This gives us the ability to swap models on the clone just as on the player's version. Bloat should never be an issue, unless the player makes the habit of giving numerous versions of the same crossbows to their companions.
- Added a token system that prevents companions and dead NPCs from converting regular bows to crossbows. Any time the player accesses a container a token is now added that prevents the regular scripts from doing a check. This allows the player to give companions regular bows as well, without worrying about them turning into crossbows. Furthermore, it stops the player from "harvesting" crossbows from dead NPCs.
- Revamped the leveled lists to be consistent while maintaining the effect of a random list. While I was doing that, I also added vendor chests to three Shivering Isles locations. This uped the number of vendors to sixteen, but it also added the requirement for Shivering Isles to be installed. I will probably see about making a Vanilla Oblivion version as well.
- Added variables that prevent those with the "Archer" or "GuardArcher" classes from equipping crossbows. I also added conditions that prevent Golden Saints and Dark Seducers from having them. This was requested, and easily implemented.
- Combined the NPC quest script with the primary control script, as well as optimized the way in which they run. I worked to make the NPC animation spell be cast at appropriate intervals so as to prevent using more resources than necessary. While I was at it, I also tweaked a few minor things in the player's animation control script. It's not foolproof, but it is more solid than previous versions.
- At long last, found a way to immobilize the NPC without adding the burdening effect. Strangely enough the answer was indeed in using "SetRestrained". As long as "SetRestrained" was called after the NPC had begun their attack it didn't prevent them from attacking, only from moving. I simply have the scripts check to make sure that when they are done attacking, if they are still restrained, we loose them so that may attack again at will. Really quite simple, but I admit, I ran across the solution entirely by accident. Thankfully, this now makes CoC compatible with Realistic Fatigue.