Post by popiroshka on Apr 12, 2024 21:52:38 GMT
Before I will start explaining here, I want to say that this is more like part 2 for this guide.
This code allows you cut your song part like FROM second that you want TO another. For example, BTL dynamic uses this code for S transition and lost rank, but always for one segment, and with this code transition is always different(like shorter or longer). This code is also for A, that can play for or with S transition just for a moment or some of the A part. If you will change only one of this code, then only this action will be with your track. For example, if you want to cut only 5 seconds of your segment from the beginning, than you should write -5.00000/-5000 inside the BeginTrimOffset. EndTrimOffset works in two code ways, where the first one with plus and another with minus numbers. If it plus - this is how long duration will be for the song. If it minus - this will cut our song from the end. Changing three of them might be a chance that your duration from this code will be uncorrected with your SourceDuration, and this will mute segment.
AutomationItem/AutomationItems
In a very short language, it's a code that can control volume from second that you set to another. The first GraphPonint is always the same from the original code, but we can use him just for changing volume only for one segment. You can also make FadeIn or FadeOut effect with this code just by changing next two GraphPonint in a seconds and take original code for example how to code this correctly. If you want to disable it, then just change both GraphPonint seconds to 0 and volume for the last one from 0 to 1.
RTPC
This code is interesting because it can increase or decrease the volume for the segment when player is in action. For example, when segment starts playing while the player reaches a higher rank, and when the GraphPoint will hit second that was set, this will increase or decrease volume in that level what we actually set there. If nothing happen before this second, then this code is silence. This code is more for A segments only because sometime A didn't play and just skipped to the S transition, and sometime A might play a little bit before or with S transition. In that case, if is a middle of the any D segment - then A will play a little for S transition, but if it almost the end (or segment just started) of the segment - then A here is skipped.
MusicTrack and TrackSource
This code is more for A what can play with other segments, but in a lover volume. If you set correct SourceID for this code, then you will combine two segments. You need to know that A started playing as always and looping with D segments, and that's why better remove that A silence if you have it.
MusicMarker
Markers for the song might be a more then just two of them. Some of the MusicMarker can be for S lost rank transition, and here's how to understand it. One of the easier way is just remember that the first is always where our song will starts playing, while last one is ending of the segment. In a code language, this is starts segment from the first MusicMarker second that you set, and starting the next one segment that you will set in the last one MusicMarker. If one of the MusicMarker have something like name="ID" value="43573010" - then that code for start or end. If this same code will have 0 as value, then this one for the lost rank transition. It's only about S rank that have more then two MusicMarker and how to cook with it, but what about Subhuman that have same thing with D part? who know.
MusicSequence
This is where we can control loop of the segments or only one segment. What we're do here is playing with Loop and AvoidRepeatCount. If Loop is 0 and AvoidRepeatCount is 0, then our segment will always looping untie Node code will start. Node is a that code what is always checking our action for the changing dynamic state. If SeqPlaylistItem have something like "Children" count="3", then this is Parent of the something with 3 segments what might be effected with him. For example, I want to make always repeating only one segment from the D part what belong to Devil Trigger. To make my idea real, first what I do is finding ID of that segment inside the MusicSegment calling like "name =ID value=49313072" and copy that. After that step, I will search this ID untie will find him inside the SeqPlaylistItem code where the loop control is. Now I will change code Loop and AvoidRepeatCount to 0 and double check it inside the game, just to be sure that I find this segment.
DestinationRule
This code allows us to change transition rules for one segment to another. Take Devil Trigger for example here, where S and D uses only one segment(41). With this code, we can change transition between 106 and 41 to 66 only, and that's how we will ignore 41 segment but for D part. All you have to do, knowing the segment ID, is just set him inside that JumpToID code. Keep in mind that this ID is not the one from the Google Sheets(HEX ID). MusicSegment is that where you can take that ID.
to make it real, just change seconds for this code to 0:
Duration - MusicMarker
we are not cutting here or deleting him, nope, we just change duration into 0, and that's why he will start playing, but will skipped immediately.
A CODING
A doesn't even have own MusicMarker code, and A duration is SourceDuration only what actually working with PlayAt/BeginTrimOffse/EndTrimOffset. For making custom duration just change SourceDuration. EndTrimOffset is that code what allows A looping when it's plus numbers, but if you will write minus numbers, then this code will cut A without loop. Your mission with A here will be to finding her duration that playing somewhere with one of the D segments. In that case, A loop duration should be from the start to the end of the D segment, where's A loop will be restarted. Another way for understanding A is using REF and checking loop beside the 666 and 999 stylish points numbers. What about another easier way with A, it's taking your one of the longest D segment duration seconds for A as file, and write it inside code, for example: I will write inside the SoursecDuration 30000 (because A is about 30 sec. as file) for any A code, but EndTrimOffset always be different with mines numbers, that will cut duration for A just by according one of the D segment duration. I mean, when you find A, scroll down until you will see the first MusicMarker and take its end duration. So, my segment has 6000 durations inside the MusicMarker, then EndTrimOfsset will be -24000 because I want to cut A here without allowing continue in another segment. This is the one of the ways for avoiding A overlaps just by having longer file. If you want to make perfect A loop, then you should work with PlayAt (if one A overlapping in another A) and plus numbers for EndTrimOffset. You can also check my A graphic for Crymson Cloud.
REMOVING A
For making A silence, you should remove her duration inside her code or just make silence files and replace A segments. Next what you will do is taking SourceID of the segment where you want to remove A. After choosing segment, you should find a little down there code RTPC, which belongs to A. Now change number inside this code like "name=To value=-1", what is inside the any GraphPoint to 0.
Hope something from it was close to understand for you all! I'm pretty sure you will understand more after playing with all this stuff that I showed you where it is.
OBJECT TYPE
BeginTrimOffset and EndTrimOffsetThis code allows you cut your song part like FROM second that you want TO another. For example, BTL dynamic uses this code for S transition and lost rank, but always for one segment, and with this code transition is always different(like shorter or longer). This code is also for A, that can play for or with S transition just for a moment or some of the A part. If you will change only one of this code, then only this action will be with your track. For example, if you want to cut only 5 seconds of your segment from the beginning, than you should write -5.00000/-5000 inside the BeginTrimOffset. EndTrimOffset works in two code ways, where the first one with plus and another with minus numbers. If it plus - this is how long duration will be for the song. If it minus - this will cut our song from the end. Changing three of them might be a chance that your duration from this code will be uncorrected with your SourceDuration, and this will mute segment.
AutomationItem/AutomationItems
In a very short language, it's a code that can control volume from second that you set to another. The first GraphPonint is always the same from the original code, but we can use him just for changing volume only for one segment. You can also make FadeIn or FadeOut effect with this code just by changing next two GraphPonint in a seconds and take original code for example how to code this correctly. If you want to disable it, then just change both GraphPonint seconds to 0 and volume for the last one from 0 to 1.
RTPC
This code is interesting because it can increase or decrease the volume for the segment when player is in action. For example, when segment starts playing while the player reaches a higher rank, and when the GraphPoint will hit second that was set, this will increase or decrease volume in that level what we actually set there. If nothing happen before this second, then this code is silence. This code is more for A segments only because sometime A didn't play and just skipped to the S transition, and sometime A might play a little bit before or with S transition. In that case, if is a middle of the any D segment - then A will play a little for S transition, but if it almost the end (or segment just started) of the segment - then A here is skipped.
MusicTrack and TrackSource
This code is more for A what can play with other segments, but in a lover volume. If you set correct SourceID for this code, then you will combine two segments. You need to know that A started playing as always and looping with D segments, and that's why better remove that A silence if you have it.
MusicMarker
Markers for the song might be a more then just two of them. Some of the MusicMarker can be for S lost rank transition, and here's how to understand it. One of the easier way is just remember that the first is always where our song will starts playing, while last one is ending of the segment. In a code language, this is starts segment from the first MusicMarker second that you set, and starting the next one segment that you will set in the last one MusicMarker. If one of the MusicMarker have something like name="ID" value="43573010" - then that code for start or end. If this same code will have 0 as value, then this one for the lost rank transition. It's only about S rank that have more then two MusicMarker and how to cook with it, but what about Subhuman that have same thing with D part? who know.
MusicSequence
This is where we can control loop of the segments or only one segment. What we're do here is playing with Loop and AvoidRepeatCount. If Loop is 0 and AvoidRepeatCount is 0, then our segment will always looping untie Node code will start. Node is a that code what is always checking our action for the changing dynamic state. If SeqPlaylistItem have something like "Children" count="3", then this is Parent of the something with 3 segments what might be effected with him. For example, I want to make always repeating only one segment from the D part what belong to Devil Trigger. To make my idea real, first what I do is finding ID of that segment inside the MusicSegment calling like "name =ID value=49313072" and copy that. After that step, I will search this ID untie will find him inside the SeqPlaylistItem code where the loop control is. Now I will change code Loop and AvoidRepeatCount to 0 and double check it inside the game, just to be sure that I find this segment.
DestinationRule
This code allows us to change transition rules for one segment to another. Take Devil Trigger for example here, where S and D uses only one segment(41). With this code, we can change transition between 106 and 41 to 66 only, and that's how we will ignore 41 segment but for D part. All you have to do, knowing the segment ID, is just set him inside that JumpToID code. Keep in mind that this ID is not the one from the Google Sheets(HEX ID). MusicSegment is that where you can take that ID.
ADVICE
TURNING OFF ONE OF THE SEGMENTSourseDuration - PlayAt/BeginTrimOffse/EndTrimOffset
AutomationItem - all seconds for the GraphPointDuration - MusicMarker
we are not cutting here or deleting him, nope, we just change duration into 0, and that's why he will start playing, but will skipped immediately.
A CODING
A doesn't even have own MusicMarker code, and A duration is SourceDuration only what actually working with PlayAt/BeginTrimOffse/EndTrimOffset. For making custom duration just change SourceDuration. EndTrimOffset is that code what allows A looping when it's plus numbers, but if you will write minus numbers, then this code will cut A without loop. Your mission with A here will be to finding her duration that playing somewhere with one of the D segments. In that case, A loop duration should be from the start to the end of the D segment, where's A loop will be restarted. Another way for understanding A is using REF and checking loop beside the 666 and 999 stylish points numbers. What about another easier way with A, it's taking your one of the longest D segment duration seconds for A as file, and write it inside code, for example: I will write inside the SoursecDuration 30000 (because A is about 30 sec. as file) for any A code, but EndTrimOffset always be different with mines numbers, that will cut duration for A just by according one of the D segment duration. I mean, when you find A, scroll down until you will see the first MusicMarker and take its end duration. So, my segment has 6000 durations inside the MusicMarker, then EndTrimOfsset will be -24000 because I want to cut A here without allowing continue in another segment. This is the one of the ways for avoiding A overlaps just by having longer file. If you want to make perfect A loop, then you should work with PlayAt (if one A overlapping in another A) and plus numbers for EndTrimOffset. You can also check my A graphic for Crymson Cloud.
REMOVING A
For making A silence, you should remove her duration inside her code or just make silence files and replace A segments. Next what you will do is taking SourceID of the segment where you want to remove A. After choosing segment, you should find a little down there code RTPC, which belongs to A. Now change number inside this code like "name=To value=-1", what is inside the any GraphPoint to 0.
Hope something from it was close to understand for you all! I'm pretty sure you will understand more after playing with all this stuff that I showed you where it is.