Looks like on line 2237 is the cause of the freeze to me but I don't know how to fix it. I attached the full section of code that is involved in that line.

Quote Originally Posted by LOG
You remove a black imflass dagger from in your leather longcoat.
>
Using your previous mark as a guide, you cleanly slice the end off the arrow shaft.
Roundtime: 4 sec.
R>
You put a black imflass dagger in your leather longcoat.
>
You remove a bottle of fletching glue from in your leather longcoat.
>
You carefully smear a bit of glue on the arrow shaft.
Roundtime: 15 sec.
R>
You put a bottle of fletching glue in your leather longcoat.
>
You reach for a bundle of fletchings and remove 3 of them.
>
You attempt to attach some fletchings to the arrow shaft, but they refuse to comply, falling off time and again, until the glue is too dry to work with. Luckily, you are able to salvage the shaft.
Roundtime: 21 sec.
R>
[uberbarv: ******** 32 EXP Gained this Pulse ********* (00:07:31)+]
>;k
--- Lich: exec1 has exited.
>
[uberbarv: ******** 32 EXP Gained this Pulse ********* (00:08:19)+]
>;k
--- Lich: uberfletch has exited.
PHP Code:
def refletch_shaft(settings)
    
fput "get my glue"
        
endtime Time.now 6
        loop
{
        
        if 
checkleft =~ /glue/
            break
        
elsif Time.now endtime
            
"Failed to get glue"
            
exit
        else
            
sleep 0.1
        end
        
}
    
        
haste!
        
check dothistimeout "put my glue on my shaft"3, /You carefully smear a bit of glue/
        if 
check.nil?
            echo 
"failed, do something about this later"
            
exit
        
end
        sleep 1
        waitrt
?
        
stow("left",settings['fletch_sack'])
        
fput "get 3 my fletching in my #{settings['fletch_sack']}"
        
endtime Time.now 6
        loop
{
            if 
checkleft =~ /fletching/
                break
            
elsif Time.now endtime
                
"Failed to get fletchings"
                
exit
            else
                
sleep 0.1
            end
        
}
    
        
haste!
        
check dothistimeout "put my fletching on my shaft"3, /You attach your|You attempt to attach some|Unfortunatelythe glue is now too dry to remove them and try againso you discard /
    if 
check =~/You attatch your/
        return
    
elsif check =~/You attempt to attatch some/
        
waitrt?
        
refletch_shaft(settings)
    
end
    check 
matchtimeout 60"The glue on your arrow shaft has dried."
    
if check == false
        refletch_shaft
(settings)
        return
    
end
    waitrt
?
    if 
checkright !~ /shaft/
        
stow("left",settings['fletch_sack'])
        return
    
end
    haste
!
    if 
settings['fletch_flip'] == true
        fput 
"flip my shaft"
    
end
    
if settings['fletch_drilling'] == true
        check 
dothistimeout "get my #{settings['fletch_drill']} from my #{settings['fletch_sack']}" ,2, /You remove/
        if 
check == false
            
echo "failure!! you didnt get  your drill out"
            
exit
            
end
        check 
dothistimeout "turn my #{settings['fletch_drill']}" 6, /and look at your now drilled shaft/
        
waitrt?
        if 
check == false
            
echo "you didnt drill the shaft"
            
exit
            
end
        fput 
"put my #{settings['fletch_drill']} in my #{settings['fletch_sack']}"
        
check dothistimeout "get my #{settings['fletch_arrowhead']} from my #{settings['fletch_sack']}" ,3, /You remove/
        if 
check == false
            
echo "you dont have any arrowheads"
            
exit
            
end
        check 
dothistimeout "turn my #{settings['fletch_arrowhead']}" ,3,/As you turn the arrowhead into the shaft/
        
waitrt?
        if 
check == false
            
echo "unable to find you turning the arrowhead into the shaft"
            
exit
            
end
        
return
        else
            
get_knife(settings)    
            
put "cut my shaft with my  #{settings['fletch_knife']}"
            
put "cut my shaft with my  #{settings['fletch_knife']}"
            
check matchtimeout 6"With a few quick cuts,""Working a bit too hastily, you slice the end right off!"
            
if check == false
                
echo "didnt see you cut the shaft for some reason, stopping"
            
exit
            
end
    end
    
    waitrt
?
    
stow("left",settings['fletch_sack'])
    

end