Jump to content

Issue with scripts when converting an ESP to an ESM


Otellino

Recommended Posts

Hey all,

I finally finished up the final version of my New Vegas mod "For The Enclave", and when I went through FNVEdit to convert it to a .esm as I have done with the previous two releases, I tested the whole thing as usual to be sure. Everything from the previous versions still worked fine, all quests and scripts fired fine. However, in the final part there is a section where the player walks through a big hallway, with trigger zones that enable lights when the player walks through.

When the player walked through it while it was a .esp, it worked perfectly fine. However now that it is a .esm, it doesn't seem to do anything at all. Here is the script:

ScriptName ZZEnclaveMQ05LightEnablerFinaleSCRIPT

Begin OnTriggerEnter Player

Disable
PlaySound OBJTurretGeneratorDisable
ZZEnclaveMQ05Boss1REF.StartCombat Player

End

The lights are set to use the trigger as the enable parent, with their state set to opposite. As I said, this worked fine when it was a .esp, but not literally does nothing as a .esm. If I convert it back to a .esp, it'll work fine again. Any ideas as to what may be happening and how to fix it?

Thanks
Link to comment
Share on other sites

I've looked through that thread, but I'm still not too sure what to do. I also saw it's to do with refs, but I thought that if there's a problem with the ref, it would still at least play the sound in the script?

Link to comment
Share on other sites

Something similar happened to me once and I think that the problem was that the trigger was being disabled before the rest of the script was fired. Try this instead:

ScriptName ZZEnclaveMQ05LightEnablerFinaleSCRIPT

Begin OnTriggerEnter Player

PlaySound OBJTurretGeneratorDisable
ZZEnclaveMQ05Boss1REF.StartCombat Player
Disable

End
 

That may fix it.

Edited by Hopper31
Link to comment
Share on other sites

Hey Hopper31,

Thanks for the suggestion, but it doesn't seem to have made any difference at all. :/ Once again it seems to work fine as a .esp, but when converted to a .esm it seems to do nothing.

Link to comment
Share on other sites

Make sure the trigger, lights, and ZZEnclaveMQ05Boss1REF have the 'persistent' box checked. And use a brand new save that never 'saw' the mod as an esp.

Link to comment
Share on other sites

Hey Rickerhk,

Thanks for the suggestion - The persistent box on all of them has been checked (I un-checked and checked again to make sure), and I tried by using "coc" straight from the main menu, but sadly still no dice. :/

Link to comment
Share on other sites

You need to check every REF in the script, not just in the OnTriggerEnter block. If the code tries to use even one non-persistent ref ANYWHERE in the script, NONE of the script will ever fire. I once had a single line of code in the GameMode block of a fairly big script that was making use of a non-persistent REF. It compiled and worked just fine as an ESP, but when I converted it to ESM the OnActivate block wasn't firing and the default activation for the object was happening. I beat my head against the wall for quite a while, until I figured out the problem wasn't any of the REFs in the OnActivate block, it was that one REF in the GameMode block that prevented it from working as an ESM.

Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...