ChuckYufarley Posted May 17, 2024 Share Posted May 17, 2024 Wow, you guys have been busy! Ha! I'll have to go back and re-read a bunch of stuff to collect my thoughts. The stereo sound thing is definitely doable. The one caveat is if we go with the speakers as radios thing, I'm not sure how responsive dual playback would be when called from a quest. If there's a millisecond or two of latency between the two tracks, that's no big deal, but beyond that, stereo becomes echo. I've never tried it, but that's why we do projects like this, to try things out and learn new tricks. South, when I mentioned syncing the speakers, I didn't mean that they'd would animate in time with the music, but rather that the animation would play only while the music is playing. The animation needs to be called from the script so that it only plays during track playback, so my concern is not being able to control the speakers via script if they are built separately from the recorder. Perhaps Niston has some insight as to how to accomplish that. That is if you want to be able to build the speakers separately. My scripting is somewhere in the range of advanced beginner to intermediate, so any advice would be welcomed. My scripts are like complex Rube Goldberg machines in code form. I haven't investigated volume control beyond what I did when building my second jukebox, but as far as I know, it only works with radios, so implementing an amp for volume control would mean that it would serve as the radio, and would contain the sound nodes. IDk if there's a way for the amp to transfer playback to the sound nodes if they are part of the speaker nif. Another thing to consider when it comes to volume control, from what I've gathered the vanilla volume mechanic is rather feeble. The scale is zero to one, with one being normal volume. I tried to remedy this by increasing the volume of the .wav tracks, so that normal playback would essentially be 11 on the volume knob, but I ended up with a lot of distortion. I'm no sound engineer, however, so maybe there's a better way to boost volume, either by fiddling with the tools in the CK, or by altering the tracks. Basically, without major alterations, the vanilla volume control really only works to decrease volume. Now that I think about it, there may be a way to fake volume control by having duplicate sound descriptors for each track, each with increasingly louder sound output models. The volume would have to be set before playback begins, but it would work to blast music a lot better than by using the radio volume. Niston, the size of the buttons or levers isn't hugely important when it comes to selectability. My second jukebox has 30 buttons roughly a quarter the size of a pack of in game cigarettes, all nestled together, and selecting those is relatively easy. It's the size of the collision that matters more. South, the button collision doesn't need to be animated either. Just a small box that sticks out past the recorder collision. If we do the fake volume control thing, that might make it easier to implement other ideas as we wouldn't be tied to setting one of the objects up as a radio. Link to comment Share on other sites More sharing options...
niston Posted May 17, 2024 Share Posted May 17, 2024 13 minutes ago, ChuckYufarley said: Wow, you guys have been busy! Ha! I'll have to go back and re-read a bunch of stuff to collect my thoughts. The stereo sound thing is definitely doable. The one caveat is if we go with the speakers as radios thing, I'm not sure how responsive dual playback would be when called from a quest. If there's a millisecond or two of latency between the two tracks, that's no big deal, but beyond that, stereo becomes echo. I've never tried it, but that's why we do projects like this, to try things out and learn new tricks. South, when I mentioned syncing the speakers, I didn't mean that they'd would animate in time with the music, but rather that the animation would play only while the music is playing. The animation needs to be called from the script so that it only plays during track playback, so my concern is not being able to control the speakers via script if they are built separately from the recorder. Perhaps Niston has some insight as to how to accomplish that. That is if you want to be able to build the speakers separately. My scripting is somewhere in the range of advanced beginner to intermediate, so any advice would be welcomed. My scripts are like complex Rube Goldberg machines in code form. I haven't investigated volume control beyond what I did when building my second jukebox, but as far as I know, it only works with radios, so implementing an amp for volume control would mean that it would serve as the radio, and would contain the sound nodes. IDk if there's a way for the amp to transfer playback to the sound nodes if they are part of the speaker nif. Another thing to consider when it comes to volume control, from what I've gathered the vanilla volume mechanic is rather feeble. The scale is zero to one, with one being normal volume. I tried to remedy this by increasing the volume of the .wav tracks, so that normal playback would essentially be 11 on the volume knob, but I ended up with a lot of distortion. I'm no sound engineer, however, so maybe there's a better way to boost volume, either by fiddling with the tools in the CK, or by altering the tracks. Basically, without major alterations, the vanilla volume control really only works to decrease volume. Now that I think about it, there may be a way to fake volume control by having duplicate sound descriptors for each track, each with increasingly louder sound output models. The volume would have to be set before playback begins, but it would work to blast music a lot better than by using the radio volume. Niston, the size of the buttons or levers isn't hugely important when it comes to selectability. My second jukebox has 30 buttons roughly a quarter the size of a pack of in game cigarettes, all nestled together, and selecting those is relatively easy. It's the size of the collision that matters more. South, the button collision doesn't need to be animated either. Just a small box that sticks out past the recorder collision. If we do the fake volume control thing, that might make it easier to implement other ideas as we wouldn't be tied to setting one of the objects up as a radio. @ChuckYufarley Im on the collective modding discord. Can you join me there for script and playback model discussion? And re the controls size, good to know. The issue I remember was probably with the collision itself then. @South8028 U ofc invited to join as well :D! But u probably not too interested in intricate details about scripting I take it? Link to comment Share on other sites More sharing options...
ChuckYufarley Posted May 17, 2024 Share Posted May 17, 2024 Just a heads up for you guys, I'm trying to finish my vault farm scenery projector thing ( like from the tv show), and will probably need the next couple days to wrap that up. Link to comment Share on other sites More sharing options...
ChuckYufarley Posted May 17, 2024 Share Posted May 17, 2024 1 minute ago, niston said: @ChuckYufarley Im on the collective modding discord. Can you join me there for script and playback model discussion? Sure thing. Link to comment Share on other sites More sharing options...
South8028 Posted May 17, 2024 Author Share Posted May 17, 2024 (edited) 5 minutes ago, ChuckYufarley said: Just a heads up for you guys, I'm trying to finish my vault farm scenery projector thing ( like from the tv show), and will probably need the next couple days to wrap that up. No problem, Chuck. I'm not in a hurry. As for the project, I think we should limit ourselves to a set of feasible tasks. It is necessary to weed out all unnecessary complications, and leave only what does not require many years to implement. In the end, I just wanted a tape recorder that played music, not a flying saucer (ufo). Edited May 17, 2024 by South8028 Link to comment Share on other sites More sharing options...
South8028 Posted May 17, 2024 Author Share Posted May 17, 2024 8 minutes ago, niston said: @ChuckYufarley Im on the collective modding discord. Can you join me there for script and playback model discussion? And re the controls size, good to know. The issue I remember was probably with the collision itself then. @South8028 U ofc invited to join as well :D! But u probably not too interested in intricate details about scripting It's not that I'm not interested. I just don't understand 99% of your discussions. Besides, I don’t remember my discord account. Unfortunately, where I live, discord is not popular, because most of us use telegram and vk. Link to comment Share on other sites More sharing options...
niston Posted May 17, 2024 Share Posted May 17, 2024 13 minutes ago, South8028 said: not a flying saucer (ufo). I jus wanna make cool stereo sound system. No 3d model or animate good, me. But script well, can prove. One question is: Would you be willing to also model a matching amplifier and a radio tuner? Link to comment Share on other sites More sharing options...
ChuckYufarley Posted May 17, 2024 Share Posted May 17, 2024 South, the animations for all the different elements can be implemented any number of ways, but like Niston said, you can only play one per nif at a time. In theory, you can create the recorder with 100 different animations, each for a different stage of playback, so long as they encompass what each stage needs to accomplish. Like I outlined in the simplified version yesterday, if you have one stage with the lights powering on, the ree-to-reel animation would also need to have the lights on, otherwise they would appear to shut off once the reel animation starts. Do you see where I'm going with this? This might sound crazy, but if you want to go all out, I have an idea for working VU meters. Just make different versions and animate them to the beats per minute of the tracks you want to use. I did that with one of the signs I made a while back, so that the letters lit up to the beat of the song that played when the sign was turned on. Link to comment Share on other sites More sharing options...
South8028 Posted May 17, 2024 Author Share Posted May 17, 2024 Just now, niston said: I jus wanna make cool stereo sound system if possible? No animate good, me. But script well, can prove. There is no problem if they explain to me exactly what needs to be done. I have to understand exactly what I'm doing. The problem is that I don't understand scripts, I don't know papyrus. I can't support certain ideas if they exist in an abstract form and I don't know what exactly I need to do in 3ds. Link to comment Share on other sites More sharing options...
niston Posted May 17, 2024 Share Posted May 17, 2024 12 minutes ago, ChuckYufarley said: [...] the ree-to-reel animation would also need to have the lights on, otherwise they would appear to shut off once the reel animation starts. [...] What I wanted to hint earlier is that I found out this not to be 100% accurate. Check this image: Spoiler The 4 lights you see on the "NISTRON Elevation Master", they're all in the base controller nif (ie, no placeatnode() used). Each has 4 NiAnimationController sequences: Lamp1_Dark, Lamp1_Light, Lamp1_BlinkSlow, Lamp1_BlinkFast. Same for Lamp2, Lamp3, Lamp4. Each lamp's animations ONLY animates the emissive multiple of said lamp and don't touch anything else. This means I can do PlayGamebryoAnimation("Lamp1_Light"") to turn on the power lamp, without affecting any other lamp. Then I do PlayGamebryoAnimation("Lamp3_BlinkFast") when the door guard activates, for example. This will not influence any other lamp. And PlayGamebryoAnimation("Lamp3_Dark") to turn lamp #3 back off when the door guard finally releases. Power lamp remains lit all the while. I found this to be super helpful in the case of the elevator controller, because the controller is refattached to and moves with the cart. And refattaching is notoriously broken in the engine. In fact, I think it's probably the most broken thing of them all. Suffice to say, trying to use PlaceAtNode() in this situation produced extremely bizarre results. Link to comment Share on other sites More sharing options...
Recommended Posts