Jump to content

[HELP] Need Bard to play long custom song on loop


saintgrimm92

Recommended Posts

I'm fastly approaching 24 hours on an all-nighter, so maybe this will be less confusing and easier when I get some sleep, but I'll be up until tonight so I thought I'd ask here and hopefully get some help and get this finished today.

I've got a music track that's about an hour of free-use traditional music on a string instrument. If there's a limit on the length of tracks, I can break that down into multiple, but would prefer to avoid that if possible.

I've made a custom bard, and attempted to look at the bard stuff in CK, but in my current state of mind, all the quests and factions are causing more confusion than giving answers on how to do this.

I want this NPC to stand in 1 spot, 24/7, playing this long track on loop. No requests, no other songs. Just stand there, strum the lute and look pretty.

Would someone be willing to run me through that, or post a tutorial or something?

Edited by saintgrimm92
Link to comment
Share on other sites

Hey, since you want your bard to be playing 24/7, I would use a script on your bard rather than the vanilla bard method. I would split up your track so they're no more than 10 minutes. Loading large audio files can cause CTD sometimes. Make all of your tracks sound markers instead of music tracks. To do that, first make a Sound Descriptor, then in the Sound Marker choose the Sound Descriptor you made. Then put all of your Sound Markers in a formlist and put this script on your bard.

 

Scriptname TestModActorScript extends Actor 

Formlist Property MyBardSongs Auto ;fill with bard song sound markers in the creation kit
Idle Property IdleLuteStart Auto
Int CurrentSong = 0 

Event OnLoad() 
    PlaySongs()
EndEvent 

Function PlaySongs() 
    If Self.Is3dLoaded() 
        Self.PlayIdle(IdleLuteStart)
        (MyBardSongs.GetAt(CurrentSong) as Sound).PlayAndWait(Self) 
        
        CurrentSong += 1
        If CurrentSong == MyBardSongs.GetSize() 
            CurrentSong = 0 
        Endif 
        PlaySongs()
    Endif 
EndFunction

Name the script something more unique. After compiling and attaching to your actor, don't forget to fill the properties. Click on properties and Auto Fill All.

Edited by dylbill
Link to comment
Share on other sites

Thank you! That's a lot easier than recreating all the bard crap for 1 song lol It's a pretty generic track, if I cut it down right, it can be maybe 3-5 mins long and still play the same general loop, maybe miss out on a few odd notes.

Edited by saintgrimm92
Link to comment
Share on other sites

No problem :). If it's only one track, you don't need to use a formlist, you can just use the sound directly like so:

 

Sound Property MyBardSong Auto ;fill with bard song sound markers in the creation kit
Idle Property IdleLuteStart Auto

Event OnLoad() 
    PlaySongs()
EndEvent 

Function PlaySongs() 
    If Self.Is3dLoaded() 
        Self.PlayIdle(IdleLuteStart)
        MyBardSong.PlayAndWait(Self) 
        
        PlaySongs()
    Endif 
EndFunction
Link to comment
Share on other sites

Hm... I've cut it down to 3 minutes as close to a loop as I can.... CK crashes every time I click "Play" in the Sound Descriptor.

Using Yakitori Audio Converter to convert to .wav files. Not sure what the issue could be with that? This is like the 2nd time ever I've worked with sound, so I'm not too smart with it.

EDIT: Straight export from Audacity as .wav also causes crash when hitting the "play" button on audio descriptor

 

 

EDIT2: Found another post that says not to use anything over 3.09. So I'll cut it down more, although it won't loop correctly any less than I have it at 3.27, but I guess a cut-off in the music is better than no music? lol Will edit the audio file more and come back with update.

Edited by saintgrimm92
Link to comment
Share on other sites

Ah, it was stereo not mono. Will test that now. Thanks again :tongue:

 

 

EDIT: That solved it! Appears to all be working correctly now! Can't thank you enough :) Only a minor piece of the mod, but does a LOT for feel of the area.

Edited by saintgrimm92
Link to comment
Share on other sites

  • Recently Browsing   0 members

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