Halion 6 Working with REX Files

Hello,
i work a lot with rx2 Files.
In Halion 3 is was able to drag and drop a rx2 file straight to the key where i want the REX Loop to start, in the mapping window.
In Halion 6 now, the Loop always starts at C3 and all keys below contain transposed Version of the whole Loop.
Can i somehow disable this Behaviour in Halion 6 and restore the ability to drag the rx2 loop to whatever key i want the loop to start at?
Or configure the Start Key to be C1 instead of C3?
I’m not a very experienced Halion User and i guess this can be achieved somehow, but i couldn’t find anything in the Manual either.
Thx!

Hi @mono6020
You can do this manually. Select the Slice Player in program tree and open Parameter List. Then change the HighKey, FirstSliceKey, CenterKey parameters.

You also need to remap the samples in Mapping editor. Don’t forget to also change the rootkey. There is an option to move the root key when moving zones.

Alternatively you could use a script to do this. If you want you can try to add a Lua Script module and paste this:

firstSliceKey = 36 -- C1
slicePlayer = this.program:findMidiModules(true, "Slice Player")[1]

if slicePlayer then
	numKeys = slicePlayer:getParameter("NumKeys")
	slicePlayer:setParameter("HighKey", firstSliceKey - 1)
	slicePlayer:setParameter("FirstSliceKey", firstSliceKey)
	slicePlayer:setParameter("CenterKey", firstSliceKey - 12)
	
	local zones = this.program:findZones(true)
	for i, zone in ipairs(zones) do
		local newKey = firstSliceKey + (i - 1) % numKeys
		zone.keyHigh = newKey
		zone.keyLow = newKey
		zone:setParameter("SampleOsc.Rootkey", newKey)
	end
	local megaTrigs = this.program:findMidiModules("MegaTrig")
	for i, megaTrig in ipairs(megaTrigs) do
		megaTrig:setParameter("ConditionLine0.MegatrigCondMin", firstSliceKey)
	end	
end

--this:removeFromParent()

Bad news is you need to do this every time you import rx2 files.

1 Like

Thx @misohoza that helped a lot.
If drag and drop onto individual keys in the mapping window is not possible, does this also mean that i can’t have multiple rex-loops arranged next to each other in a single program?

You could import multiple loops into single program. Put each loop in its own layer. But it will be tricky to set up.