Title:forfeit_ball_busting
Sex: Female F Male T Trans F
Require:
Limits:
; forfeit_ball_busting (task to be used for forfeits)
call:startBallBustingForfeit
;----------------------------------------------------------------
function:startBallBustingForfeit
;----------------------------------------------------------------
assign:allowChickenOut:true
call:doBallbusts
end:
;----------------------------------------------------------------
function:exampleHowToUseTheseBallBustingFunctionsInAnotherTask
; This is an example how to use this in another task, if you would copy the individual functions there.
;----------------------------------------------------------------
assign:allowChickenOut:true
show:I will now send you to Runa to oversee your ball busting.
button:Thank you, DTITLE
assign:requestedRounds:10
call:doBallbusts
;log:The slave has completed $completedRounds of $requestedRounds rounds.
;if: !$hasAllItems
;log:The slave did not have all items required to build a ball buster and thus has to run this task again.
;fi:
end:
;----------------------------------------------------------------
function:buildBallBuster
;----------------------------------------------------------------
image:taskimg/tasks/ball_busting/ball_buster_4.jpg
show:Get the following items:- 5-7 rubber bands (get regular thin ones, like shown in the photo)
- a shoestring
- two paper towels
- a short piece of duct tape
In the end it will look like this, but I'll guide you through all of the steps to build it.
choice:Show me the steps,I DON'T have all items
if: LASTASK == 2
assign:hasAllItems:false
image:taskimg/sets/runa/runa_blue_bikini24.jpg
log:The slave did not have all the needed items to build a ball buster and thus has to run the task again once all items are available.
dmsg:0:Runa:Remember to get 5-7 rubber bands (get regular thin ones), a shoestring, two paper towels, and a short piece of duct tape. Then run the task again!
show:Ok, then get the items and meet me again once you have them. I will now show you how to build it. You don't have to remember anything, I will guide you through the steps again next time we meet.
button:Thank you, Runa
fi:
label:startOfBuildBallBuster
image:taskimg/tasks/ball_busting/ball_buster_1.jpg
show:(1/4) Assemble a daisy chain of around 5 rubber bands. Before you do it, stretch all the rubber band so that they have their final lentgh.
button:Done
image:taskimg/tasks/ball_busting/ball_buster_2.jpg
show:(2/4) Put the two paper towels on top of each other and fold them 3 times in the middle to get a long strip.
button:Done
image:taskimg/tasks/ball_busting/ball_buster_3.jpg
show:(3/4) Roll the paper towel strip tightly around the center of the daisy chain and fixate it with some duct tape.
button:Done
image:taskimg/tasks/ball_busting/ball_buster_4.jpg
show:(4/4) Put the shoestring through the outer rubber bands.
button:Done
if: $hasAllItems
show:Now your ball buster is ready and should look like this. If not, I can explain the steps again, and you can start over.
choice:Looks like that,Please explain again
if: LASTASK == 2
goto:startOfBuildBallBuster
fi:
else:
show:This is how the ball buster will look like at the end. So meet me again once you have all the items ready:- 5-7 rubber bands (get regular thin ones, like shown in the photo)
- a shoestring
- two paper towels
- a short piece of duct tape
button:Yes, I will
fi:
end:
;----------------------------------------------------------------
function:showNextBallBustingPic
;----------------------------------------------------------------
if: $curPic == 1
image:taskimg/sets/runa/runa_blue_bikini15.jpg
fi:
if: $curPic == 2
image:taskimg/sets/runa/runa_blue_bikini13.jpg
fi:
if: $curPic == 3
image:taskimg/sets/runa/runa_blue_bikini25.jpg
fi:
if: $curPic == 4
image:taskimg/sets/runa/runa_blue_bikini26.jpg
fi:
if: $curPic == 5
image:taskimg/sets/runa/runa_blue_bikini49.jpg
fi:
if: $curPic == 6
image:taskimg/sets/runa/runa_blue_bikini50_1.jpg
fi:
if: $curPic == 7
image:taskimg/sets/runa/runa_blue_bikini51.jpg
fi:
if: $curPic == 8
image:taskimg/sets/runa/runa_blue_bikini52.jpg
fi:
if: $curPic == 9
image:taskimg/sets/runa/runa_blue_bikini53.jpg
fi:
if: $curPic == 10
image:taskimg/sets/runa/runa_blue_bikini52.jpg
fi:
if: $curPic > 10
image:taskimg/sets/runa/runa_blue_bikini53.jpg
assign:curPic:7
fi:
assign:curPic:$curPic+1
end:
;----------------------------------------------------------------
function:doInitialBallBust
;----------------------------------------------------------------
call:showNextBallBustingPic
if: $isCaged
show:After you've pushed the button, you have 10 seconds to get into that position and wait for my command. As soon as I give the command release the grip on the ball buster! Afterward stand up straight, because at the end I want to see the ballbuster hanging a few inches above your knees again.
else:
show:After you've pushed the button, you have 10 seconds to get into that position and wait for my command. While you wait keep your cock hard. As soon as I give the command release the grip on the ball buster! Afterward stand up straight, because at the end I want to see the ballbuster hanging a few inches above your knees again.
fi:
button:Getting into position
call:doTheActualBallBust
end:
;----------------------------------------------------------------
function:doAnotherBallBust
;----------------------------------------------------------------
call:showNextBallBustingPic
if: $isCaged
settemp1:'Get ready for round $round/$requestedRounds: Ball buster between heels, knees apart, and wait for my command! After you've clicked the button, you have 10 seconds to get into that position.'
else:
settemp1:'Get ready for round $round/$requestedRounds: Ball buster between heels, knees apart, and keep your cock hard! After you've clicked the button, you have 10 seconds to get into position.'
fi:
if: $allowChickenOut
show:TEMP1
Or do you want to chicken out? But then you would have failed.
choice:Getting into position,Chicken out
else:
show:TEMP1
button:Getting into position
fi:
if: LASTASK == 1 || !$allowChickenOut
call:doTheActualBallBust
else:
show:Do you really want to chicken out, or do you want to do the next ball bust?
choice:Chicken out,Do the next ball bust
if: LASTASK == 2
show:Ok, then get into position.
button:Getting into position
call:doTheActualBallBust
else:
image:taskimg/sets/runa/runa_blue_bikini48.jpg
show:That's disappointing, you have failed.
assign:hasChickenedOut:true
settemp1:$round-1
settemp2:$requestedRounds
log:The slave has only completed TEMP1/TEMP2 rounds and thus HAS FAILED!
button:I'm sorry, Runa
fi:
fi:
end:
;----------------------------------------------------------------
function:doTheActualBallBust
;----------------------------------------------------------------
show:Get into postion
speakjen:Get into position!
wait:10
if: $isCaged
show:Stay in position and wait for my command
speakjen:Stay in position, and wait for my command!
else:
show:Stay hard and wait for my command
speakjen:Stay hard, and wait for my command!
fi:
wait:10
settemp1:Math.floor((Math.random() * 15) + 1)
wait:TEMP1
settemp1:Math.floor((Math.random() * 100) + 1)
vidrec:0
wait:2
show:NOW
speakjen:Now!
wait:6
vidstop:0
wait:1
assign:completedRounds:$completedRounds+1
end:
;----------------------------------------------------------------
function:takePictureWithCamDelay
;----------------------------------------------------------------
button:Take picture (4 sec delay)
show:4...
wait:1
show:3...
wait:1
show:2...
wait:1
show:1...
wait:1
show:0!
cam:
sound:bell.wav
wait:1
end:
;----------------------------------------------------------------
function:doBallbusts
;----------------------------------------------------------------
capture:hide
assign:round:1
assign:curPic:1
assign:completedRounds:0
assign:hasAllItems:true
assign:hasChickenedOut:false
if: '$requestedRounds' == '\$requestedRounds'
assign:requestedRounds:0
fi:
if:INCHASTITY
assign:isCaged:true
else:
assign:isCaged:false
fi:
image:taskimg/sets/runa/runa_blue_bikini15.jpg
if: $requestedRounds == 0
asknumber:SNAME, you were sent to me, so that I can oversee your ball busting. How many ball busts are you required to do?
assign:requestedRounds:LASTASK
log:The slave claims that $requestedRounds ball busts were requested.
if: $requestedRounds <= 0
assign:requestedRounds:5
show:It looks like you've accidentally entered a wrong number. Unfortunately I don't know the correct number. You probably need to do at least 1. But let's stay on the safe side and do $requestedRounds.
button:Thank you, Runa
log:Since this doesn't seem to be correct, Runa has corrected it to $requestedRounds.
fi:
else:
show:SNAME, you were sent to me, so that I can oversee your ball busting. It was requested that you have to do $requestedRounds ball busts.
button:Yes, Runa
fi:
image:taskimg/tasks/ball_busting/ball_buster_4.jpg
show:Do you have this ballbuster? Or do you need to build a new one?
choice:I have it,Let's build one
if: LASTASK == 2
call:buildBallBuster
fi:
if: hasAllItems
image:taskimg/tasks/ball_busting/ball_buster_4.jpg
show:Then get naked and tie the shoestring around your balls so that the rubber bands start left and right of your balls. The paper towel ball buster has to hang a little bit above your knees, if not add or remove rubber bands. And make sure that the loose ends of the shoestring are not interfering with the ball buster, so either cut them short, or tie them behind your back.
button:Done
image:taskimg/sets/runa/runa_blue_bikini3.jpg
if: $isCaged
show:Show yourself to me at least from knees to cock. I want to see the ball buster hanging a few inches above your knees.
log:Ball buster dangling a few inches above the knees. The ball buster consists of 2 sheets of paper towel folded and rolled around a daisy chain of rubber bands.
else:
show:Show me how much you are looking forward to getting your balls busted. Get your cock hard and then take your hands off and show yourself to me from knees to hard cock. I want to see the ball buster hanging a few inches above your knees.
log:Showing hard cock with hands not touching it and ball buster dangling a few inches above the knees. The ball buster consists of 2 sheets of paper towel folded and rolled around a daisy chain of rubber bands.
fi:
call:takePictureWithCamDelay
image:taskimg/sets/runa/runa_blue_bikini9.jpg
show:Pull down the ball buster and hold it between your heels. Then stand up straight again, but keep your knees spread apart a little. So that the ball buster will fly into your balls as soon as you release the grip from your heels. This is your ball busting position. Adjust the cam, so that I can at least see you from feet to cock.
button:Understood
if: $isCaged
log:In all of the videos the slave has to initially hold the ball buster between the heels. The knees have to be spread apart a little to have a clear path between ball buster and balls. Then the grip from the heels has to be released, so that the ball buster flies into the balls. At the end it has to again dangle a few inches above the knees.
else:
log:In all of the videos the slave has to initially keep the cock hard and hold the ball buster between the heels. The knees have to be spread apart a little to have a clear path between ball buster and balls. Then the grip from the heels has to be released, so that the ball buster flies into the balls. At the end it has to again dangle a few inches above the knees.
fi:
log:The slave will do $requestedRounds ball busts
call:doInitialBallBust
label:startOfBallBustingLoop
assign:round:$round+1
call:doAnotherBallBust
if: $round < $requestedRounds && !$hasChickenedOut
goto:startOfBallBustingLoop
fi:
if: !hasChickenedOut
show:That's enough, you have completed all requested $requestedRounds rounds.
log:The slave has completed all requested $requestedRounds rounds.
button:Thank you, Runa
fi:
fi:
end:
;