Jump to content

Birds and Flocks (by Kazoomie)


Roogal

Recommended Posts

  • 3 months later...

Never used it so I can't speak from personal experience but apart from the 'dirty edits', that you can clean, there is still the "issue" of the FXBirdFleeSCRIPT.psc errors.

 

How that actually manifests itself, I'm assuming a massive slowdown in the game engine when you enter the script trigger zone, may be different to different mod setups and systems. Some may see a problem and some may miss it. Since it has been in STEP a while I can only assume most STEP users don't see any issue.

Link to comment
Share on other sites

I looked into this a while back.  It seems like all the errors people report refer to a missing sound property from the FXBirdFleeSCRIPT.  I've never had any problems with this mod myself, but I would suspect that removing just the records using the instance of the script with that missing property (or filling the property with a sound record) would fix those particular problems.

Link to comment
Share on other sites

I've wondered about certain stutter spots in my game while outdoors.  I'm usually fairly sure that it's crossing over a cell boundary, but occasionally I will notice a flock of birds nearby exploding (launching?) from a bush and have wondered then if I'm experiencing this "birds and flocks" problem.  Personally I like the mod for what it adds.  Things like flocks exploding from bushes, and hawks circling overhead definitely makes the place feel more vibrant and alive.

 

Have any of you scripting gods/goddesses (I'm sure you lurk here at least occasionally) ever considered doing a redo?  Knowing with certainty that added birds won't eventually bloat out our saves (whether the mod actually does so seems to still cause some debate) would sure be a lovely thing.

Link to comment
Share on other sites

I had a look at Birds and Flock. Version 2.4 from Nexus Site.

 

The scripts used by this mod are generic. 

 

USKP make a small change to delay the playing of the bird flock sound.

A single animation is played.  

 

The mod makes use of the FXBitdFlockFleePine.nif. A large file at 227kb. A particle effect. 

 

The original activator is used in 67 places for birds and 11 places for bats.

This mod adds 18 bird and 11 more new bat activators. 

 

The mod adds a new activator for birds. The only difference I can see is the addition of an activation sound. The original form has no activation sound in its form. The sound is part of the script.

 

I wonder if someone with a background in nif’s, animations and particles could have a look at the animation file used and see if it is unusually in any way. My background is programming. From what I can tell there is nothing usually in the nif file.

 

A single instance of the bird animation is started and stopped. 

 

Perhaps someone with a better understanding of how Papyrus works could have a look at the fxbirdfleescript.psc script. Again I can see nothing usually in the script.

 

I really don’t think it a problem. The activator does not reset. Unless the cell resets you won’t see the animation again. In the grand scheme of things adding 67+18 animation to a save file seems rather small in its effect.

 

As for save file code bloat, the best example I have seen of this is the Horthgar voice quest. This is a side effect of a seriously over a stressed script engine. To many running and the termination conditions for said scripts not being meet. I once managed to create a 45mb save file before it crashed.  

 

To see the number of scripts running on an actor I used the mfg console mod.

 

A small and I mean small change to the Papyrus setting might offer some aid. I would NOT suggest doing this. Rather look to remove some heavily scripted mods that you can live without.

 

If this mod is adding to a save file and causing bloat it is NOT the cause. Look else were. Too many mods with too many player attached scripts. Just going from STEP Core to STEP Extended, the number of PC scripts goes form ~9 to ~54. Add in Frostfall and RND and script numbers climbs even higher.

 

I ran the Horthgar quest with no problems, using STEP Extended. I have no script numbers for the mangled LO that I used to create the bloated save files. It was a while back, before I knew what I was doing.

 

If you want to see an example of the animation, as you leave Riverwood and cross the bridge, birds will fly from the tree to the right. 

 

Any FPS effect from Birds and Flocks were impossible to detect using the Skyrim Performance Monitor.

 

As to the age of the mod, its original form, I can offer no insight. 

 

As it sits right now I can see no serious problems with this mod.

 

This completed my analysis of Birds and Flocks.

 

Suggestion on how I might improve this analysis are greatly welcomed. 

Link to comment
Share on other sites

TechAngel asked me to step in here and provide some more information as the masterlist that was supplied above is actually my creation and I maintain it on behalf of the community with the information provided to me.

 

The primary problem with the mod is in the esp errors. While the mod claims to be clean and Hearthfires compatible, it is in fact neither. There are still numerous ITMs (which are not normally that serious anyway as you can clean them out with tes5edit easily enough) but the mod also fails to carry over data in the worldspace from hearthfires which means its still at risk of bugs with Hearthfires or other mods that may use this data. Most of the major Hearthfire bugs still don't have a direct known cause or known solutions though as far as I know, such as the bug where houses just don't appear, so it can be hard to test for true compatibility, but the missing data does make it a risky install because of this. The main issue is missing info in the core worldspace entry as seen in tes5edit, but from memory there were also rare issues in individual cells and records as well.

 

As far as the script, one of the things that I check was actually the supposed fix from the skyBirds page. Please keep in mind, my knowledge of Papyrus is still quite limited, and most of my knowledge comes from other programing and scripting languages, so I'm always happy to be corrected if I do state any incorrect information. Also I'm on my other PC at the moment and as such don't have direct access to my scripts so I'm remembering this off the top of my head.

When comparing the vanilla script to the skyBirds script I noticed that the skyBirds version includes checks for if the effect has already played or is being played and also properly attaches and plays the sound effect that is meant to be involved and makes sure that the effect is not already playing before it attempts to play again which if this sort of thing isn't in the vanilla effect by default in properties outside of the core script files, which I am still learning how to read the script properties etc, then it could cause stacking of the effect in certain situations.

I had planned on contacting the author of SkyBirds and asking further about the edits in the script in order to get better understanding on the edits and papyrus in general but I want to get some of my existing mod projects out the way first.

Link to comment
Share on other sites

Thank you for the feedback.

 

I am not sure about what the Skybird mod does. I kept that out of the equation as it is not part of the STEP LO.

 

Yes, the missing height field data in the world space. 

Depending on the load order it gets fixed a number of times by other mods installed after it.

This data field seems to get beaten, deleted, replaces by every other mod that makes worldspace changes. Changes to this would have a serious impact on object placement I suspect. If the original of a given mod used a different set then the effect could be bazar.

 

The version that I used had no error, at least none that were reported by TES5Edit.

Everything appears to be generic. Using the original game scripts and resources with the one exception.

 

The script uses states. Once it runs, that it. The cell would have to be reloaded and the script reattached. As far as I can tell this only happens when a new game is started. I examined a save file using the save file script cleaner to see what was happening. 

 

 

 

If placement can introduce an error I would be curious as to what these might be? Changes to the geometry of the worldspace? Changing the location of other objects? From what I can tell and I am new to this the activator was dropped at a few spots.

How would you detect these changes? I have looked at the TES5Edit output with a very simple LO and with a STEP Extended LO. 

 

Ok. I think I see what you are talking about. It looks like a number of changes were made. It looks like some placed items were moved. Clouds. Leaving the cell touched and in some different state. As the Birds and Flocks mod has no heightfield data I have no idea what this implies for the activators that it places.

 

Here is the code in question.

 


 

 

Scriptname FXBirdFleeSCRIPT extends ObjectReference 

{Triggers birds to fly away}

import debug    ; import debug.psc for acces to trace()

import game    ; game.psc for access to getPlayer()

import utility   ; utility.psc for access to wait()

import sound    ; sound.psc for access to play()

 

sound property BirdFlockSound auto

sound property BirdFlockFleeSound auto

bool property PlayerTriggered = false auto

{check if player is only actor that can trigger - Default FALSE}

int instanceID00

;*************************************************

Event onCellAttach()

;USKP 2.0.1 - Short delay added to let 3D catch up.

Utility.Wait(0.5)

instanceID00 = BirdFlockSound.Play(Self)

gotoState("Waiting")

endEvent

 

;*************************************************

 

State Waiting

Event onTriggerEnter(ObjectReference akActionRef)

  Actor actionRef = akActionRef as Actor

  if(((PlayerTriggered) && (actionRef == game.GetPlayer() as Actor)) || (PlayerTriggered == False))

   gotoState("doNothing")

   Self.PlayAnimation("PlayAnim01")

   int instanceID01 = BirdFlockFleeSound.Play(Self)

   wait (0.5)

   StopInstance(instanceID00)

  endif

endEvent

endState

;*************************************************

State doNothing

;do nothing

endState

;*************************************************

 

 

 

 

 

I am not sure what would happen with a change to load order. 

 

I am using this mod to explore. What makes a good mod or a bad mod. Seeing this mod on the Dangerous Mods List got me interested in what makes a mod dangerous.

 

The changes, as far as I can tell, are all inline with the original source. Some minor edits to a few placed objects. If there is a failure with the script then it is a failure with the original script. Given how programers work, code tends to be templated and repeated. If there an error in the script? Is it replicated by accident into other scripts of a similar type? Do other script of the same type use a different mechanism?

 

To be honest, the mod adds more of what is already in the game. Not a lot more if my count is correct. The user info from the CK gives an accurate count of the added objects. A few other generic activators were placed. All from the FXBird* and FXBat* lists.

I suspect that if this mod was dropped, most folks would have a hard time telling.

 

A fun learning experience. 

 

 

The caveat with this is of course how right or wrong I am about the scripts and how they work. How they get recorded to a save game. The interaction between the various components.

 

In no particular order. 

 

FPS slow down. Save file code bloat. CTD. Missing world items. Broken quests. Missing Textures or meshes. Bad INI settings. 

 

These are the things that make or break a mod. Am I missing any others? I used this as a simple check list.

 

As an example, given that the bird effect is a particle effect it could be possible that an ini setting to change the particle effect could impact performance. Using the STEP instruction as a base no problems were detected. 

 

Do you think it would help if I had a look at the Skybird mod. This is another mod on the dangerous list. I like the list the author did a good job of putting it together and for a good reason. That said I like to understand the underlying cause of something.

 

My love of puzzles.

 

Complicated should never be confused with complex.

 

Feeling my way around mod testing. I have the title but I have a long way to go before I have earned it. 

Link to comment
Share on other sites

I only included information about SkyBirds because of the claim on the SkyBirds page that it fixes the errors with Birds and Flocks, and as such used the new version of the script as a comparative basis to identify any potential issues. Like I said, my Papyrus knowledge is minimal though and I rely on knowledge of other code languages though so I welcome any correction to mistakes I may make :)

I actually didn't see that the USKP also makes corrections to this script (bad me) so I'll have a more in depth look at that as well and see if that would help to qualify to get this off the list once the esp issues are addressed in some way or another (need to contact nexus staff about issuing a patch if the author can't be contacted with the provision that if the author did return I would remove it immediately if asked)

 

Other esp errors in the mod that make it incompatible with Hearthfires is edits to the Whiterun cells that change the 'Location' of the cell as far as the game is concerned, overwrite changes to the water level in the cell etc. Along with that the edits to cells and other records are overwriting fixes to the USKPs and edits from the other DLCs, although I know that can also be an issue with other mods too.

The ITMs are particularly problematic, even though I know they are practically a non issue because they can be cleaned out easily, because they make similar edits such as changing the location of cells, of items in the cells, of weird things like clouds, and its also the worst put together esp I've ever seen because the amount of cells with nothing in them and null records attached that the mod adds are amazing, not that having pointless records is a list-able offense, it just bugs me XD.

 

You're probably write about the thing about states working per cell reset, in which case some of the security edits made by SkyBirds fixed script may be redundant, but I'll still try and get in touch with the author about if the other edits as it appears their edited script may be able to work by itself in the vanilla game without SkyBirds actually installed. I'd provide the script source but I don't want to breach the authors permissions are far as not redistributing their work, but I used a decompiler to get the source myself so you can do that if you'd like.

SkyBirds is on the list because of a different script, which attaches spawning references to the flora in the world for the new birds, which don't get cleaned up and attach to EVERYTHING which causes save bloat, and there's already been discussion about that problem in particular on the skyrimmods subreddit by fadingsignal so look up those discussions if you want to use that to expand your knowledge :)

 

---------------------------------

 

On a more general scale, other issues that can qualify a mod as a risky mod (dangerous mods are rare and 90% of mods on that list are not dangerous, only the six or so in the first category are actually reliably dangerous to save games, other mods are more just risky or purely outdated):

- Script malfunctions that can cause stack dumps - although I'm considering moving all mods that cause this error into the dangerous category because stack dumps will dump any information, even vital game or quest scripts that may be running, which means one mod causing a stack dump can ruin even vanilla game content or vital content from many other mods. Sometimes can be detected by looking at a scripts source, but much easier to detect by forcing the mod to run extreme amounts at once and seeing what happens, such as in the case of Skyrim Encumbrance Mod where if you dump say 500 items into your inventory at once it usually causes a stack dump.

- Scripts that run inefficiently - this isn't just scripts using controversial methods or weaker functions instead of better alternatives, its mods that actually use up too much memory or information, such as scripts that run every update which can lead to stack dumping, high latency, mod malfunctions etc. Can be detected by looking at the script source.

- Breaking core mechanical functions - Locational Damage being a good one in the case of it slowly breaks the entire scripting engine, XCE Scarface breaks the mounted combat functions because of outdated racial editing etc

- Corrupted plugins, although this is not so much an issue now with the CK and Tes5edit being so avalible, its mostly on older mods. Corrupt records in plugins can also be problematic depending on what they edit, especially if in relation to scripts, so look out for errors in tes5edit as well, particularly out of order subrecords

- Unadvertised edits, such as if a house mod has hidden edits to NPCs that the author is hiding references to etc. Obviously this requires some knowledge of the mod and how it is implemented, as well as what sort of edits may be required, but some of these wild edits can be pretty damn obvious at times

Link to comment
Share on other sites

Great feedback. Thank you for taking the time.

 

Having a look at the Skybird script would be interesting. Alternate examples and understanding why folks may have changed something is important, at least to me. I will get my hands on a copy and have a look. 

 

Mixing different features, birds and flora,  in a mod seems like a bad idea. That said, not a lot one can do if that is what the author decides to do. Only have a peak using the tools we have and judge for yourself.

 

I realize that this analysis is after the fact. Birds and Flocks are part of STEP.

 

Thanks for taking the time to pull that list together. 

 

I will most likely pull another example for the list and pull it apart. Any suggestions? 

Link to comment
Share on other sites

If I may... most of your discussion is going over my head, and so I simply ask this: what about this mod is problematic? I've seen it mentioned as such several times, and yet STEP uses it? Either others know something about this mod that somehow STEP has completely missed, or STEP knows something they don't. I see no other possibility. That said - what is the issue with this mod?

Link to comment
Share on other sites

Nothing, that I can tell.

 

The mod turns up on a list indicating some potential problems. I wanted to understand what they might be.

 

At no time have I advocated the removal of this mod from STEP.

 

My work was done as an investigation. If that is not clear from my posts I apologize. 

Link to comment
Share on other sites

If I may... most of your discussion is going over my head, and so I simply ask this: what about this mod is problematic? I've seen it mentioned as such several times, and yet STEP uses it? Either others know something about this mod that somehow STEP has completely missed, or STEP knows something they don't. I see no other possibility. That said - what is the issue with this mod?

Hahaha, sorry, sometimes I get caught up in the technical aspects and forget to make most of my language understandable in general.

 

In short, the script errors at this point are mostly negligable because of the USKP fixes, however it does have some major esp overwrites that nullify fixes from the USKP and even the official esms and DLCs, however some of these issues are fixed by cleaning it and others are fixed by having other mods lower in the load order.

 

One thing to note is that my Masterlist as linked above made on a vanilla testing basis, which means that its about mods that have issues in an of themselves. For STEP things are probably different because you have other mods impacting it so the errors that Birds and Flocks causes in whiterun etc may be fixed by other STEP mods being later in the load order and other such things makes it more complicated when it comes to recommendations.

 

I personally would advise removing it based on its issues in and of itself, especially as the bonus effect it gives is negligable and the errors in its esp are at risk of aggrevating the unknown causes of the Hearthfire bugs and creating problems in other places, however if these issues are being overwritten by other mods in STEP, or I think you guys also have a big patch or something (sorry, I don't use STEP myself so I'm unfamilar with it), you could put fixes into that patch which would then make it usable.

Edited by Nazenn
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site, you agree to our Guidelines, Privacy Policy, and Terms of Use.