succubus.qsrc 33 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835
  1. # succubus
  2. !!The verious calls for succubus specific events
  3. !!Varible identification:
  4. !! scfwon; a flag to indicate that a call is from a fight that was won or you were hunting, set at the calling location
  5. !! scpopt; a flag to indicate that a call is optional for some reason, set at the calling location: 0: No, 1: Yes, 2: option taken
  6. !! $sclocrt; a string to indicate where a call came from if $loc may not have been set, set at the calling location when needed
  7. !! $scargrt; a string to set by the $ARGS from the calling location if $metca may not have been set, set at the calling location when needed
  8. !! $scsubloc; a string to allow a sub-routine in this location to call another and still get back to the first
  9. !! suceatinit; a flag to indicate that the initiation sub-routine was done
  10. !!*********
  11. !!This is the initiation sub-routine and is called by every event
  12. if $ARGS[0] = 'init':
  13. if succubusQW = 5 and scpopt = 1 and succhungry < 1:
  14. 'You sense <<$sucself1>> perk up, ready to spring forth...'
  15. act 'Call your power and feed (takes a lot of time)': scpopt = 0 & gt 'succubus', 'init'
  16. act 'Refrain from feeding, you don''t have the time now':
  17. cla
  18. 'You try to contain <<$sucself1>>...'
  19. if pcs_willpwr >= rand(20,40) + (40 * succublvl):
  20. !!the willpower check values are based on a willpowermax of 200
  21. 'And you''re successful, <<$sucself1>> returns to your core.'
  22. act 'Continue': scpopt = 2 & gt $sclocrt, $scargrt
  23. else
  24. 'And you fail, <<$sucself1>> continues rising toward the surface of your being.'
  25. succonfail = 1
  26. scpopt = 0
  27. xgt 'succubus', 'init'
  28. end
  29. end
  30. elseif succubusQW = 4:
  31. gt 'succubus', 'firsttime'
  32. else
  33. if succonfail ! 1: 'You call <<$sucself1>> up from its resting place'
  34. 'It fills you completely, suffusing you being with power...'
  35. '<font color="red"><b>and hunger</b></font>'
  36. '<center><img <<$set_imgh>> src="images/pc/body/succubusself.jpg"></center>'
  37. suceatinit = 1
  38. succonfail = 0
  39. act 'Continue': gt 'succubus', $scsubloc
  40. end
  41. end
  42. !!*********
  43. !! This is used if the called event is the first time it has happened (ie succubusQW = 4)
  44. if $ARGS[0] = 'firsttime':
  45. if scfwon = 1:
  46. 'As the exhilaration from the fight won and the fear of what could have happened fully sets in time seems to stop.'
  47. elseif scfwon = 0:
  48. 'As the fear of what is about to happen to you fully sets in time seems to stop.'
  49. end
  50. 'You feel, from the same core of power that has been in you since you embraced fairy''s energy, something start to...'
  51. ''
  52. '<i>uncoil...</i>'
  53. ''
  54. if scpopt = 1 and succhungry < 1:
  55. cla
  56. act 'Let go...': scpopt = 0 & succubusQW = 5 & xgt 'succubus', 'init'
  57. act 'Push it back down':
  58. cla
  59. 'You try to contain <<$sucself1>>...'
  60. if pcs_willpwr >= rand(20,40) + (40 * succublvl):
  61. !!the willpower check values are based on a willpowermax of 200
  62. 'And you''re successful, <<$sucself1>> returns to your core.'
  63. act 'Continue': scpopt = 2 & gt $sclocrt, $scargrt
  64. else
  65. 'And you fail, <<$sucself1>> continues rising toward the surface of your being.'
  66. succonfail = 1
  67. scpopt = 0
  68. succubusQW = 5
  69. xgt 'succubus', 'init'
  70. end
  71. end
  72. else
  73. cla
  74. act 'Continue': scpopt = 0 & succubusQW = 5 & xgt 'succubus', 'init'
  75. end
  76. end
  77. !!*********
  78. !!This is the 'park' and 'street' call
  79. if $ARGS[0] = 'RapistFight':
  80. gs 'stat'
  81. $scsubloc = $ARGS[0]
  82. if suceatinit = 0: gt 'succubus', 'init'
  83. suceatinit = 0
  84. cls
  85. gs 'stat'
  86. '<center><img <<$set_imgh>> src="images/pc/body/succubusself.jpg"></center>'
  87. 'Instinctively you are barely aware of causes your power to reach out and take hold of your would-be rapist''s mind.'
  88. 'You see fear fill his eyes even as lust fills his loins and you feel his mind fighting your hold.'
  89. pcs_horny = 100
  90. act 'Continue':
  91. cla
  92. scrand = rand(0,3)
  93. if RapistFight = 1 and scfwon = 1:
  94. scrand -= 1
  95. scfwon = 0
  96. RapistFight = 0
  97. if rikudo > 10:rikudo += 100
  98. pcs_dom += 1
  99. Win += 1
  100. elseif RapistFight = 1:
  101. RapistFight = 0
  102. SUB += 1
  103. Loss += 1
  104. if rikudo > 10:rikudo -= 10
  105. else
  106. scrand -= 1
  107. scfwon = 0
  108. end
  109. if scrand < succublvl:
  110. scfeed = succublvl + rand(1,4)
  111. if scfeed = 2:
  112. $scxcum = 'twice'
  113. else
  114. $scxcum = 'multiple times'
  115. end
  116. $orgasm_or = 'no'
  117. gs 'arousal', 'vaginal', 10, 'dom'
  118. gs 'arousal', 'end'
  119. 'You quickly drag him out of sight, then rip off his pants and expose your now hungry pussy.'
  120. 'You force him to the ground and immediately mount him, your now hair-trigger snach sending you into orgasm.'
  121. ''
  122. 'You ride him for some time, your power forcing him to cum <<$scxcum>> pulling every drop of energy out of each eruption, with the rush causing you to orgasm as he does...'
  123. ''
  124. act 'Continue':
  125. cla
  126. 'Finally, when your instincts tell you he has nothing left to give, you get off him and fix your clothes.'
  127. 'As you make ready to leave, you look down upon your would-be-rapist-turned-meal as he lays there utterly exhausted and wonder if this experience will discourage him from such activities in the future...'
  128. guy += 1
  129. pcs_horny = 0
  130. pcs_dom += scfeed
  131. orgasm += 1 + scfeed
  132. pcs_willpwr += 15 * (1 + scfeed)
  133. succubxp += 6
  134. sexnutrition += 30 * scfeed
  135. sucabscum = 1
  136. minut += 15 + (20 * scfeed) / succublvl
  137. killvar 'scfeed' & killvar 'scrand'
  138. gs 'stat'
  139. act 'Leave': gt $loc, $metka
  140. end
  141. else
  142. ''
  143. 'And you feel his fear overcome his lust and your hold...'
  144. 'By the time you pull yourself back to the physical world he is long gone.'
  145. minut +=5
  146. gs 'stat'
  147. act 'Continue': gt $loc, $metka
  148. end
  149. end
  150. end
  151. !!*********
  152. !!This is for feeding in PavRes
  153. if $ARGS[0] = 'pavResfeed':
  154. cla
  155. *clr
  156. '<center><img <<$set_imgh>> src="images/locations/pavlovsk/community/dk_night.jpg"></center>'
  157. 'The disco is in full swing, which means a lot of adolescents going to and from the community center. You find a spot down the street from the community center to lie in wait for your prey.'
  158. 'You hide for a few minutes watching groups of students pass you by as you wait for a lone victim to pounce on. You lie in wait for almost thirty minutes, thinking about the meal ahead, your hand finding its way between your legs a few times.'
  159. act 'Continue':
  160. *clr & cla
  161. gs 'stat'
  162. '<center><img <<$set_imgh>> src="images/pc/body/succubusself.jpg"></center>'
  163. 'Just as you were starting to think no one would walk by alone, a young guy in a tracksuit walks right past you into the bushes. He pulls his pants down to take a piss.
  164. "Wow, what do we have here?" you say from the darkness causing him to jump.
  165. "Who the hell is there," he says as he pulls up his pants and searches for you in vain.
  166. "Exposing yourself in public? What a pervert!"
  167. "Says the girl watching. Where are you?"
  168. "Right here," you say as sneak up behind him and reach around and stick a hand into his pants. You spend some time groping him and trying to find out what he is packing.
  169. "Find something you like?" he asks in a cocky tone. You don''t know why. He doesn''t have anything that impressive down there.'
  170. act 'Warm him up':
  171. *clr & cla
  172. '<center><img <<$set_imgh>> src="images/shared/sex/blowjob/boybj2.jpg"></center>'
  173. '"Meh, it will have to do," you tell him. He drags you into the bushes and pushes you down to your knees. You decide to play along for now and place your lips around his cock and work your magic. Literally. You give him the kind of blowjob only a succubus like yourself can give. It isn''t long before he cums in your mouth. You swallow it, savoring the appetizer before the main course with a smile on your face. He grabs your chin and looks at you with contempt.
  174. "What a slut, if you enjoy cum that much, maybe I should call my friends to give you all you can eat. Would you like that, whore?"'
  175. '<center><img <<$set_imgh>> src="images/pc/body/succubusself.jpg"></center>'
  176. 'Your contented smile turns into a confident grin as you pull the guy''s legs out from under him. He tries to get up, but you push him back down with unnatural strength. You let instict take over as you undress and lower yourself on top of his hardening member. You ride him hard, trying to milk him as fast as you can. He cums once, then twice, then three times, then more. He begs you to stop, but you aren''t listening.'
  177. 'Eventually he runs out of energy to give, and you lift yourself off of him. He lies on the ground unconscious with a pained expression on his face. Now to make him pay for that whore comment. You check his pockets for valuables and find a cellphone and some loose change.'
  178. 'You pocket the money and crush the phone in your hand. Then, after making sure the coast is clear, you drag him back to the sidewalk and leave him there, unconscious with no pants for someone to find. He won''t remember this punishment or most of the night, but you sure had fun.'
  179. money += rand(250,500)
  180. scfeed = succublvl + rand(1,4)
  181. $orgasm_or = 'no'
  182. gs 'arousal', 'vaginal', 10, 'dom'
  183. gs 'arousal', 'end'
  184. guy += 1
  185. pcs_horny = 0
  186. pcs_dom += scfeed
  187. orgasm += 1 + scfeed
  188. pcs_willpwr += 15 * (1 + scfeed)
  189. succubxp += 6
  190. sexnutrition += 30 * scfeed
  191. sucabscum = 1
  192. minut += 15 + (20 * scfeed) / succublvl
  193. killvar 'scfeed' & killvar 'scrand'
  194. gs 'stat'
  195. act 'Continue': gt 'pavResidential'
  196. end
  197. end
  198. end
  199. !!*********
  200. !!This is where you ask Tatiana about what you are
  201. if $ARGS[0] = 'tatianaask':
  202. gs 'stat'
  203. if night_mode = 1:
  204. fcolor = rgb(255, 255, 255)
  205. bcolor = rgb(0, 0, 0)
  206. lcolor = rgb(106, 90, 205)
  207. elseif night_mode = 2:
  208. fcolor = rgb(255, 255, 255)
  209. bcolor = rgb(20, 20, 20)
  210. lcolor = rgb(106, 90, 205)
  211. else
  212. fcolor = rgb(0, 0, 0)
  213. bcolor = rgb(255, 255, 255)
  214. lcolor = rgb(106, 90, 205)
  215. end
  216. '<center><b><font color="maroon">Tatiana</font></b></center>'
  217. If sucpcinfo = 2:
  218. minut += 10
  219. '<center><img <<$set_imgh>> src="images/locations/city/citycenter/lab/event/main1.jpg"></center>'
  220. 'You undress and lie down on the couch and Tatiana begins to examine you.'
  221. 'This time, as she uses her charms and strange devices, you actually feel her power reach into you and move around inside, poking and prodding.'
  222. if succubusQW = 4: 'Something in you panics at this and the fear overtakes your mind.'
  223. 'Distantly you hear Tatiana mutter, "Huh, what''s this?" and her power pokes <<$sucself1>>.'
  224. $sclocrt = 'succubus' & $scargrt = 'tatianaask'
  225. $scsubloc = 'tatianasex' & scpopt = 1
  226. sucpcinfo = 3
  227. act 'Continue': xgt 'succubus', 'init'
  228. exit
  229. elseif sucpcinfo = 3:
  230. '<center><img <<$set_imgh>> src="images/locations/city/citycenter/lab/event/main1.jpg"></center>'
  231. scpopt = 0
  232. If tatisucsex ! 0:
  233. 'Once you finish that unintended feeding and Tatiana has pulled herself back together, she says "Well, that was unexpected, go ahead and get dressed."'
  234. else
  235. 'Looking flushed once she has finished, Tatiana says "Well, that was interesting, go ahead and get dressed."'
  236. end
  237. sucpcinfo = 4
  238. sucinfoday = daystart + 10 + rand(0,7)
  239. act 'Get dressed': gt 'succubus', 'tatianaask'
  240. exit
  241. end
  242. minut += 10
  243. '<center><img <<$set_imgh>> src="images/pre/shared/karinpre.jpg"></center>'
  244. if sucpcinfo >= 4 and ARGS[1] = 0:
  245. '"You are a Succubus. Now, the succubae are not demons that impression is a byproduct of the masking spell; they are instead a type of Fae, like that Fairy you told me about, and they are native to this plane of existence. As Fae, Succubae have nothing to do with "souls", but they do feed on the energy released during sex. The most efficient means of getting this energy is semen taken internally, but a lot is gained by lesbian orgasm if the Succubus is in sexual contact with the woman as she cums."'
  246. if tatisucsex ! 0:
  247. 'She then gives you a coy smile and says, "I can tell you that sex with a willing Succubus is an <i>amazing experience</i>."'
  248. else
  249. 'She then gives you a searching look as she says, "I''m told that sex with a willing Succubus is an amazing experience."'
  250. end
  251. '"Succubae only reproduce by converting normal humans, and by "normal", I mean non-mages. Whatever that Fairy did, it cannot be the normal Succubus conversion, but I don''t know <i>what</i> the normal method is.'
  252. '"They can and should eat normal food as they use more energy just staying alive than a human, but they need sexual energy to survive as well, so you can''t just eat more and not have sex.'
  253. if sucskill < 1:
  254. '"And I will be able to teach you how to tell what your energy levels are."'
  255. end
  256. end
  257. if sucpcinfo >= 5 and (ARGS[1] = 0 or ARGS[1] = 1):
  258. minut += 5
  259. '"Succubae can exceed normal human limitations in a way similar to the way Juugo does, but unlike Juugo since they are Fae the masking spell ignores them.'
  260. '"They automatically store sexual energy in excess of what they need to survive internally and when this energy builds up enough, let''s call that point 100 units, their body will automatically use this energy to improve itself; increasing their physical and mental abilities, keeping itself young looking, and providing a reserve in case she can''t find food.'
  261. '"While lower level Succubae lose any energy not used for improvements, higher level Succubae can store this unused energy in excess of that 100 unit mark.'
  262. if sucskill >= 2:
  263. '"As you know, they can learn to store energy before their body uses it as well as increase their storage capacity, as long as they have some reserves."'
  264. else
  265. '"And," she adds with a grin, "I can teach you to store energy before your body uses it and to increase your storage capacity, as long as you have some reserves! Just make sure your reserves are full before we try to teach you."'
  266. end
  267. end
  268. if sucpcinfo >= 6 and (ARGS[1] = 0 or ARGS[1] = 2):
  269. if sucskill >= 3:
  270. '"Also learning, as you have to be more efficient with the sexual energy, increasing the amount of energy they have available for survival and storage."'
  271. else
  272. minut += 5
  273. '"They have found, after what she described as a "multiday sex bender", that a Succubus can learn to be more efficient with the energy; increasing the amount of energy they have available for survival and storage. She then worked out how they did it and passed that to me. In order for this training to not take several days of non-stop sex, I''ll need to buy several components worth 5000 <b>₽</b> and I will need 7 days to build up my own power reserves and you will need to have at least 3 days of reserve and have at least 100 units of stored energy.'
  274. '"Even with these preparations the training is still going to take 8 to 10 hours of... Non... Stop... Sex..."'
  275. if tatisucsex <= 0:
  276. 'She says those last three words in a tone that is equal parts anticipation and trepidation and the look in her eyes mirror this.'
  277. else
  278. 'She says those last three words in a tone that is pure seduction with a look that is equal parts anticipation and lust.'
  279. !! Hopefully can add an arousal call here
  280. end
  281. end
  282. end
  283. if sucpcinfo >= 7 and (ARGS[1] = 0 or ARGS[1] = 3):
  284. minut += 5
  285. '"Succubae are somewhat territorial when hungry, but when sated the impulse is weak enough to suppress easily. They seem to have established neutral territories in the flesh-pots of the world, like Amsterdam, Morocco, and Las Vegas. Places like that are claimed by not one Succubus, instead groups of them have made their homes there.'
  286. '"A Succubae''s body can learn to expend a bit of power to accommodate nearly any size of... implement." She gives you a smug grin with that.'
  287. if sucskill < 4: 'And I can teach you, just go get the biggest dildo they sell at that shop down the street, then bring it and 100 units of stored energy back here.'
  288. end
  289. if ARGS[1] = 0:
  290. '"They likely have other abilities and weaknesses, but the few succubae I have encountered were not that willing to part with information, though I have put out requests for more information from my contacts.'
  291. '"As far as I know, you are the only Succubus in the region."'
  292. act 'Ask if she knows more':
  293. cla
  294. 'You ask her if she knows anything else.'
  295. 'She replies, "No, that''s all I know."'
  296. act 'Continue': gt 'lab', 'Tatiana'
  297. end
  298. end
  299. gs 'stat'
  300. act 'Finish': gt 'lab', 'Tatiana'
  301. end
  302. !!**********
  303. !!This is sex with Tatiana
  304. if $ARGS[0] = 'tatianasex':
  305. gs 'stat'
  306. $scsubloc = 'tatianasex'
  307. if suceatinit = 0: gt 'succubus', 'init'
  308. suceatinit = 0
  309. cls
  310. gs 'stat'
  311. '<center><img <<$set_imgh>> src="images/pc/body/succubusself.jpg"></center>'
  312. if sucpcinfo < 4:
  313. tatisucsex -= 2
  314. 'Your power reaches through the connection to Tatiana, enflaming her lust even as <<$sucself1>> grabs ahold of her power.'
  315. 'At this point you gain some control back and cause her power to cycle through you, as <<$sucself1>> cycles through her making her passion and yours move together.'
  316. 'Tatiana quickly strips down and moves between your legs...'
  317. else
  318. 'You take control of <<$sucself1>> and, as you softly kiss her, <<$sucself1>> gently flows into Tatiana even as you coax her power to flow into you.'
  319. 'With her power and <<$sucself1>> fully intertwined, you set up a gently flowing cycle, making her passion and yours move together.'
  320. 'Tatiana then kisses her way down your body, taking up position between your legs.'
  321. end
  322. act 'Continue':
  323. cls
  324. cla
  325. '<center><img <<$set_imgh>> src="images/characters/city/tatiana/sex/karinsucsex1.jpg"></center>'
  326. 'As she licks you out, she feels the same things you do until you both have your first orgasm.'
  327. 'You then move her around into a "69" position.'
  328. act 'Continue':
  329. cls
  330. cla
  331. '<center><img <<$set_imgh>> src="images/characters/city/tatiana/sex/karinsucsex2.jpg"></center>'
  332. 'You pleasure each other for some time, orgasming together and then at some point you flip over.'
  333. act 'Continue':
  334. if sucpcinfo >= 6 and sucskill < 3 and sctrainprep = 1: gt 'succubus', 'training3sex'
  335. cls
  336. cla
  337. '<center><img <<$set_imgh>> src="images/characters/city/tatiana/sex/karinsucsex3.jpg"></center>'
  338. 'You continue this way for some time, flipping back and forth; having multiple simultaneous orgasms, until you sense her body is tiring even though her power level is a bit higher than when you two started.'
  339. act 'Finish':
  340. cla
  341. scfeed = 2 + succublvl + rand(1,4)
  342. lesbian += 1
  343. if tatianaSex = 0: tatianaSex = 1 & girl += 1
  344. $orgasm_or = 'no'
  345. gs 'arousal', 'cuni', 20
  346. gs 'arousal', 'end'
  347. pcs_horny = 0
  348. orgasm += scfeed
  349. pcs_willpwr += 15 * scfeed
  350. sexnutrition += 25 * scfeed
  351. suclezsex = lesbian
  352. succubxp += 6
  353. sucabslez = 1
  354. minut += 20 + (20 * scfeed) / succublvl
  355. tatisucsexday = daystart + 1 + scfeed / 3
  356. killvar 'scfeed'
  357. if sucpcinfo < 4: gt 'succubus', 'tatianaask' & exit
  358. tatisucsex += 1
  359. if tatisucsex = 0: tatisucsex = 1
  360. 'As you both put yourselves back together, Tatiana says, "That was intense, Thank You!"'
  361. act 'Continue': gt 'lab', 'Tatiana'
  362. end
  363. end
  364. end
  365. end
  366. end
  367. !!**********
  368. !!Trainging sex ending
  369. if $ARGS[0] = 'training3sex':
  370. cls
  371. cla
  372. '<center><img <<$set_imgh>> src="images/characters/city/tatiana/sex/karinsucsex3.jpg"></center>'
  373. 'You continue this way for hours, changing position occasionally, and the whole time you both are causing the massive amount of energy between you to cycle faster and faster, until it almost feels as if you and Tatiana are sharing one body that is having a continuous orgasm.'
  374. 'You lose track of time and are only barely able to perform the tasks Tatiana said you needed to do.'
  375. 'Eventually you sense that the excess energy is depleted, your energy handling channels are significantly improved, and Tatiana, while exhausted, has had a major boost to her own power.'
  376. act 'Finish':
  377. cla
  378. sucskill = 3
  379. killvar 'sctrainprep'
  380. lesbian += 1
  381. suclezsex = lesbian
  382. if tatianaSex = 0: tatianaSex = 1 & girl += 1
  383. $orgasm_or = 'no'
  384. gs 'arousal', 'vaginal', 15 * rand(1,8), 'dom'
  385. gs 'arousal', 'end'
  386. tatisucsex += 1
  387. if tatisucsex = 0: tatisucsex = 1
  388. pcs_willpwr = willpowermax
  389. sucexcess -= 100
  390. succhungry += 1
  391. succubxp += 10
  392. tatisucsexday = daystart + rand (5,10)
  393. pcs_hairbsh = 0
  394. if pcs_makeup > 1: pcs_makeup = 0
  395. pcs_energy = 100 & pcs_sleep = 40
  396. gs 'stat'
  397. 'As you both put yourselves back together, Tatiana says, "Wow... just wow! That was... indescribable! I have never felt <i>anything</i> like that!" She gives you a gentle kiss before adding, "Thank You!"'
  398. 'She then lays down on the couch and immediately drops off to sleep, you toss the blanket over her and prepare to leave.'
  399. act 'Leave': gt 'down'
  400. end
  401. end
  402. !!**********
  403. !!This is the computer search
  404. if $ARGS[0] = 'kompresearch':
  405. gs 'stat'
  406. minut += 10 * rand(3,6)
  407. sucpcinfo = 1
  408. '<center><img <<$set_imgh>> src="images/shared/accessories/computer/succresrch.jpg"></center>'
  409. 'Other than a host of internet stories, the thing you find that matches closest to what you have been feeling is a succubus, a demonic creature that destroys or corrupts men''s souls through sex.'
  410. 'However, you don''t feel like you have been corrupting anything and the match isn''t that great...'
  411. 'Maybe you should go ask Tatiana...'
  412. act 'Continue': gt 'Komp', 'brows'
  413. end
  414. !!**********
  415. !!This is the start of the Succubus "Sleepwalking" code
  416. if $args[0] = 'sucwalkinginit':
  417. !!This checks for a valid location and sets the zone
  418. !!Zone 1;
  419. !!'bedr' = Apartment on St. Petersburg Residential street
  420. !!'tanspalnya' = Tanya''s apartment downtown
  421. !!'dom_gor' = Hostel downtown
  422. !!'obroom' = Dorm downtown
  423. !!Zone 2;
  424. !!'bedrPar' = Parent's apartment in Pavlovsk
  425. !!'HotelRoom' = Hotel next to train station in Pavlovsk
  426. !!Zone 3; 'ybedr' = Mansion outside city
  427. !!Zone 4; 'bedr2x' = Apartment in "Old Town" (aka Pushkin)
  428. !!Zone 5; 'Gadhouse' = Grandmother's house in Gadukino
  429. if $loc = 'bedr' or $loc = 'tanspalnya' or $loc = 'dom_gor' or $loc = 'obroom':
  430. sucslpzone = 1
  431. elseif $loc = 'bedrPar' or $loc = 'HotelRoom':
  432. sucslpzone = 2
  433. elseif $loc = 'ybedr':
  434. sucslpzone = 3
  435. elseif $loc = 'bedr2x':
  436. sucslpzone = 4
  437. elseif $loc = 'Gadhouse':
  438. sucslpzone = 5
  439. else
  440. exit
  441. end
  442. !!Vibrator and Panty handling (pun intended)
  443. if succublvl <= 2:
  444. if $pantyworntype ! 'none': gs 'underwear', 'remove'
  445. else
  446. if bedpanty = 1:
  447. gs 'underwear', 'remove'
  448. else
  449. gs 'underwear', 'wear'
  450. end
  451. end
  452. if analplugIN = 1: analplugIN = 0
  453. if vibratorIN = 1: vibratorIN = 0
  454. !!This is the simple method for the base level succubus
  455. if succublvl = 1 and $lastwornclothingtype ! 'nude':
  456. gs 'clothing', 'wear_last_worn'
  457. gt 'succubus', 'sucwalkinggo'
  458. end
  459. !!This is to put all owned and wearable clothing in 2 large arrays
  460. x = 0
  461. i = 1
  462. :loopexhibit
  463. if exhibit[i] = 1 and exhibitS[i] = 0 and exhibitH[i] > 0 and exhibitB[i] >= (pcs_hips - 8) and exhibitB[i] <= (pcs_hips + 8):
  464. $succlolistn[x] = 'exhibit' & succlolisti[x] = i & x += 1
  465. end
  466. i += 1
  467. if i <= 57:jump 'loopexhibit'
  468. i = 1
  469. :loopfetish
  470. if fetish[i] = 1 and fetishS[i] = 0 and fetishH[i] > 0 and fetishB[i] >= (pcs_hips - 8) and fetishB[i] <= (pcs_hips + 8):
  471. $succlolistn[x] = 'fetish' & succlolisti[x] = i & x += 1
  472. end
  473. i += 1
  474. if i <= 94:jump 'loopfetish'
  475. i = 1
  476. :loopexpensive
  477. gs 'clothing_attributes', 'expensive', i
  478. if CloStyle ! 5:
  479. if expensive[i] = 1 and expensiveS[i] = 0 and expensiveH[i] > 0 and expensiveB[i] >= (pcs_hips - 8) and expensiveB[i] <= (pcs_hips + 8):
  480. $succlolistn[x] = 'expensive' & succlolisti[x] = i & x += 1
  481. end
  482. else
  483. if expensive[i] = 1 and expensiveS[i] = 0 and expensiveH[i] > 0: $succlolistn[x] = 'expensive' & succlolisti[x] = i & x += 1
  484. end
  485. i += 1
  486. if i <= 425:jump 'loopexpensive'
  487. i = 1
  488. :loopaverage
  489. gs 'clothing_attributes', 'average', i
  490. if CloStyle ! 5:
  491. if average[i] = 1 and averageS[i] = 0 and averageH[i] > 0 and averageB[i] >= (pcs_hips - 8) and averageB[i] <= (pcs_hips + 8):
  492. $succlolistn[x] = 'average' & succlolisti[x] = i & x += 1
  493. end
  494. else
  495. if average[i] = 1 and averageS[i] = 0 and averageH[i] > 0: $succlolistn[x] = 'average' & succlolisti[x] = i & x += 1
  496. end
  497. i += 1
  498. if i <= 522:jump 'loopaverage'
  499. i = 1
  500. :loopcheap
  501. gs 'clothing_attributes', 'cheap', i
  502. if CloStyle ! 5:
  503. if cheap[i] = 1 and cheapS[i] = 0 and cheapH[i] > 0 and cheapB[i] >= (pcs_hips - 8) and cheapB[i] <= (pcs_hips + 8):
  504. $succlolistn[x] = 'cheap' & succlolisti[x] = i & x += 1
  505. end
  506. else
  507. if cheap[i] = 1 and cheapS[i] = 0 and cheapH[i] > 0: $succlolistn[x] = 'cheap' & succlolisti[x] = i & x += 1
  508. end
  509. i += 1
  510. if i <= 413:jump 'loopcheap'
  511. i = 1
  512. :loopoffice
  513. if office[i] = 1 and officeS[i] = 0 and officeH[i] > 0 and officeB[i] >= (pcs_hips - 8) and officeB[i] <= (pcs_hips + 8):
  514. $succlolistn[x] = 'office' & succlolisti[x] = i & x += 1
  515. end
  516. i += 1
  517. if i <= 101:jump 'loopoffice'
  518. i = 1
  519. :loopschool
  520. if school[i] = 1 and schoolS[i] = 0 and schoolH[i] > 0 and schoolB[i] >= (pcs_hips - 8) and schoolB[i] <= (pcs_hips + 8):
  521. $succlolistn[x] = 'school' & succlolisti[x] = i & x += 1
  522. end
  523. i += 1
  524. if i = 6: i = 7
  525. if i <= 62:jump 'loopschool'
  526. i = 1
  527. :loopexercise
  528. if exercise[i] = 1 and exerciseS[i] = 0 and exerciseH[i] > 0: $succlolistn[x] = 'exercise' & succlolisti[x] = i & x += 1
  529. i += 1
  530. if i <= 113:jump 'loopexercise'
  531. i = 1
  532. :loopformal
  533. if formal[i] = 1 and formalS[i] = 0 and formalH[i] > 0 and formalB[i] >= (pcs_hips - 8) and formalB[i] <= (pcs_hips + 8):
  534. $succlolistn[x] = 'formal' & succlolisti[x] = i & x += 1
  535. end
  536. i += 1
  537. if i <= 168:jump 'loopformal'
  538. i = 1
  539. :loopuniform
  540. if uniform[i] = 1 and uniformS[i] = 0 and uniformH[i] > 0 and uniformB[i] >= (pcs_hips - 8) and uniformB[i] <= (pcs_hips + 8):
  541. $succlolistn[x] = 'uniform' & succlolisti[x] = i & x += 1
  542. end
  543. i += 1
  544. if i <= 49:jump 'loopuniform'
  545. killvar 'i'
  546. x -= 1
  547. if succublvl <= 2:
  548. !! This picks any outfit at random
  549. :oops
  550. clopickrand = rand(0,x)
  551. if $succlolistn[clopickrand] = '': jump 'oops'
  552. gs 'clothing', 'wear', $succlolistn[clopickrand], succlolisti[clopickrand]
  553. dynamic $succlolistn[clopickrand] + 'W[<<succlolisti[clopickrand]>>] = 1'
  554. killvar '$succlolistn' & killvar 'succlolisti' & killvar 'x'
  555. gt 'succubus', 'sucwalkinggo'
  556. else
  557. !! This picks a random outfit by "looks"
  558. $succlocat[0] = 'exhibit'
  559. $succlocat[1] = 'fetish'
  560. $succlocat[2] = 'expensive'
  561. $succlocat[3] = 'average'
  562. $succlocat[4] = 'cheap'
  563. $succlocat[5] = 'office'
  564. $succlocat[6] = 'school'
  565. $succlocat[7] = 'exercise'
  566. $succlocat[8] = 'formal'
  567. $succlocat[9] = 'uniform'
  568. scbimbochk = 1
  569. y = 0 & z = 0
  570. scclocatcnt = 0
  571. :randpoploop
  572. if scbimbochk = 1 and $succlocat[scclocatcnt] = $succlolistn[y]:
  573. gs 'clothing_attributes', $succlolistn[y], succlolisti[y]
  574. if CloBimbo = 1: $succlorandn[z] = $succlolistn[y] & succlorandi[z] = succlolisti[y] & z += 1
  575. elseif $succlocat[scclocatcnt] = $succlolistn[y]:
  576. $succlorandn[z] = $succlolistn[y] & succlorandi[z] = succlolisti[y] & z += 1
  577. end
  578. y += 1
  579. if y <= x: jump 'randpoploop'
  580. scclocatcnt += 1 & y = 0
  581. if scbimbochk = 1:
  582. if scclocatcnt <= 3: jump 'randpoploop'
  583. if z < 1 or scpckrnd > 0:
  584. if z < 1: scpckrnd = 1
  585. if scclocatcnt <= 6: jump 'randpoploop'
  586. end
  587. else
  588. if scclocatcnt <= 3: jump 'randpoploop'
  589. if z < 1 or scpckrnd > 1:
  590. if z < 1: scpckrnd = 2
  591. if scclocatcnt <= 6: jump 'randpoploop'
  592. if z < 1 or scpckrnd > 2:
  593. if z < 1: scpckrnd = 3
  594. if scclocatcnt <= 9: jump 'randpoploop'
  595. end
  596. end
  597. end
  598. if z < 1 and scbimbochk = 1: scclocatcnt = 0 & scbimbochk = 0 & jump 'randpoploop'
  599. z -= 1
  600. :oops
  601. clopickrand = rand(0,z)
  602. if $succlorandn[clopickrand] = '': jump 'oops'
  603. gs 'clothing', 'wear', $succlorandn[clopickrand], succlorandi[clopickrand]
  604. dynamic $succlorandn[clopickrand] + 'W[<<succlorandi[clopickrand]>>] = 1'
  605. killvar '$succlolistn' & killvar 'succlolisti' & killvar '$succlorandn' & killvar 'succlorandi'
  606. killvar '$succlocat' & killvar 'scbimbochk' & killvar 'scclocatcnt' & killvar 'scpckrnd'
  607. killvar 'x' & killvar 'y' & killvar 'z'
  608. !! This covers a high level succubus doing complex activities
  609. if succublvl >= 4:
  610. if pcs_hairbsh = 0: pcs_hairbsh = 1
  611. if lipbalm > 0 and pcs_lipbalm <= 0:
  612. lipbalm -= 1
  613. lipkoef += rand(0, 1)
  614. if lipkoef > 50:
  615. lipkoef = 0
  616. pcs_lip += 1
  617. end
  618. pcs_lipbalm += 8
  619. end
  620. if pcs_makeup <= 1 and kosmetica > 0:
  621. pcs_makeup = 4
  622. if kosmetica < 3 and pcs_makeup = 4: pcs_makeup = 3
  623. if kosmetica < 2 and pcs_makeup = 3: pcs_makeup = 2
  624. if kosmetica < 1 and pcs_makeup ! 1:
  625. pcs_makeup = 1
  626. else
  627. if pcs_makeup = 2: kosmetica -= 1
  628. if pcs_makeup = 3: kosmetica -= 2
  629. if pcs_makeup = 4: vidageday -= 1 & kosmetica -= 3
  630. end
  631. end
  632. gt 'succubus', 'sucwalkinggo'
  633. else
  634. gt 'succubus', 'sucwalkinggo'
  635. end
  636. end
  637. end
  638. !!This sets the results of the "sucwalking" event and picks the final location
  639. if $args[0] = 'sucwalkinggo':
  640. !!Here is what the PC sees
  641. cls
  642. clr
  643. '<center><img <<$set_imgh>> src="images/shared/home/bedroom/dream/sucrandream3.jpg"></center>'
  644. if succublvl < 3:
  645. $sucselftmp = 'a personification of <<$sucself1>> in your core'
  646. else
  647. $sucselftmp = $sucself1
  648. end
  649. 'You dream that you are arguing with <<$sucselftmp>>.'
  650. 'You don''t know what it''s about, but you think you <b><i>lost</i></b>...'
  651. killvar '$sucselftmp'
  652. !!This is the results, time, and sleep variable clearing section
  653. sucencntrand = (1 + succublvl)/2 + rand(0,succublvl)
  654. scfeed = (succublvl * sucencntrand) + rand(1,(4 * sucencntrand))
  655. minut += 360 + ((scfeed * 10) / succublvl)
  656. pcs_health += 5 * (360 + ((scfeed * 10) / succublvl))
  657. pcs_sleep += 15 * ((360 + ((scfeed * 10) / succublvl)) / 60)
  658. gs 'stat'
  659. clr
  660. Insleep = 0
  661. pcs_horny = 0
  662. orgasm += scfeed
  663. pcs_willpwr += 15 * scfeed
  664. succubxp += 3 * sucencntrand
  665. sexnutrition += 25 * scfeed
  666. scwalkmon = rand (50,(100 * sucencntrand))
  667. money += scwalkmon
  668. sucwalkday = daystart + sucencntrand + rand(0,5)
  669. sctemp = rand(1,10)
  670. if sucencntrand > 1:
  671. if sctemp <= 6:
  672. sucabscum = 1
  673. elseif sctemp = 7:
  674. sucabslez = 1
  675. else
  676. sucabslez = 1 & sucabscum = 1
  677. end
  678. else
  679. if sctemp <= 7:
  680. sucabscum = 1
  681. else
  682. sucabslez = 1
  683. end
  684. end
  685. killvar 'sctemp'
  686. killvar 'scfeed' & killvar 'sucencntrand'
  687. !!This picks the location where you end up and how you got there
  688. if succublvl >= 4 and car > 0 and wrek ! 1:
  689. if benz <= 4:
  690. if money < (30 * (40 - benz)):
  691. if kanistra > 0:
  692. benz += 5 & kanistra -= 1
  693. else
  694. money = 0
  695. scwalkmon = 0
  696. benz += rand(10,40)
  697. end
  698. else
  699. money -= (30 * (40 - benz))
  700. benz = 40
  701. end
  702. end
  703. sctemp = rand(1,11)
  704. if sctemp = 1: cardrive = 1
  705. if sctemp = 2: cardrive = 2
  706. if sctemp = 3: cardrive = 3
  707. if sctemp = 4: cardrive = 19
  708. if sctemp = 5: cardrive = 4
  709. if sctemp = 6: cardrive = 5
  710. if sctemp = 7: cardrive = 13
  711. if sctemp = 8: cardrive = 14
  712. if sctemp = 9: cardrive = 20
  713. if sctemp = 10: cardrive = 23
  714. if sctemp = 11: cardrive = 24
  715. killvar 'sctemp'
  716. benz -= rand(1,4)
  717. teh -= rand(3,6)
  718. !! This forces the dynmanic at the top of carF to load in case it had not
  719. gs 'carF'
  720. sccarflag = 1
  721. else
  722. sctemp = rand(1,5)
  723. if sucslpzone = 1:
  724. if sctemp = 1: $sucgoloc = 'Nord' & $sucgometka = ''
  725. if sctemp = 2: $sucgoloc = 'street' & $sucgometka = ''
  726. if sctemp = 3: $sucgoloc = 'down' & $sucgometka = ''
  727. if sctemp = 4: $sucgoloc = 'park' & $sucgometka = 'start'
  728. if sctemp = 5: $sucgoloc = 'lake' & $sucgometka = 'start'
  729. elseif sucslpzone = 2:
  730. if sctemp = 1: $sucgoloc = 'pavCommercial' & $sucgometka = ''
  731. if sctemp = 2: $sucgoloc = 'pavResidential' & $sucgometka = ''
  732. if sctemp = 3: $sucgoloc = 'gskver' & $sucgometka = 'start'
  733. if sctemp = 4: $sucgoloc = 'pavtrain' & $sucgometka = ''
  734. if sctemp = 5: $sucgoloc = 'gLake' & $sucgometka = ''
  735. elseif sucslpzone = 3:
  736. if sctemp = 1: $sucgoloc = 'Nord' & $sucgometka = ''
  737. if sctemp = 2: $sucgoloc = 'park' & $sucgometka = 'start'
  738. if sctemp = 3: $sucgoloc = 'pavCommercial' & $sucgometka = ''
  739. if sctemp = 4: $sucgoloc = 'pavtrain' & $sucgometka = ''
  740. if sctemp = 5: $sucgoloc = 'motel' & $sucgometka = ''
  741. elseif sucslpzone = 4:
  742. if sctemp = 1: $sucgoloc = 'liam' & $sucgometka = ''
  743. if sctemp = 2: $sucgoloc = 'liames' & $sucgometka = ''
  744. if sctemp = 3: $sucgoloc = 'parks' & $sucgometka = ''
  745. if sctemp = 4: $sucgoloc = 'pavtrain' & $sucgometka = ''
  746. if sctemp = 5: $sucgoloc = 'Nord' & $sucgometka = ''
  747. elseif sucslpzone = 5:
  748. if sctemp = 1: $sucgoloc = 'gadukino' & $sucgometka = ''
  749. if sctemp = 2: $sucgoloc = 'pavtrain' & $sucgometka = ''
  750. if sctemp = 3: $sucgoloc = 'motel' & $sucgometka = ''
  751. if sctemp = 4: $sucgoloc = 'Nord' & $sucgometka = ''
  752. if sctemp = 5: $sucgoloc = 'park' & $sucgometka = 'start'
  753. end
  754. killvar 'sctemp' & killvar 'sucslpzone'
  755. end
  756. !!This is the wake up action
  757. act 'Wake Up':
  758. cla
  759. minut += 15
  760. gs 'stat'
  761. $scwrdtmp = '.'
  762. ''
  763. 'You wake up and realize that you''re not in your bed...'
  764. if pcs_hairbsh = 1 and pcs_makeup > 1: $scwrdtmp = ', your hair is brushed, and you''re wearing makeup.'
  765. 'Instead, you are fully dressed<<$scwrdtmp>>'
  766. if scwalkmon > 0: 'You find <<scwalkmon>> <b>₽</b> stuffed in your cleavage (which you place in your wallet)'
  767. 'And you feel aboslutly <i>bursting</i> with energy.'
  768. ''
  769. 'After a moment, you start wondering where you are...'
  770. killvar 'scwalkmon' & killvar '$scwrdtmp'
  771. act 'Look around to see where you are':
  772. if sccarflag = 1:
  773. killvar 'sccarflag'
  774. dynamic $enddrive
  775. else
  776. gt $sucgoloc, $sucgometka
  777. end
  778. end
  779. end
  780. end
  781. !!**********
  782. --- succubus ---------------------------------