boygirl.qsrc 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382
  1. # boygirl
  2. !!'<<$boydesc>> <<$boybody>> <<$boybod>> <<$boyface>>. <<$boydesc>> <<$boyClo>>'
  3. !! For a boy: gs 'boygirl', 0, 'A Male', age, region
  4. !! For a girl: gs 'boygirl', 1, 'A Woman', age, region
  5. if $ARGS[0] = '':
  6. !! Random age
  7. if ARGS[2] = 0: ARGS[2] = rand(18, 35)
  8. !! Random Name
  9. if $ARGS[1] = '':
  10. if ARGS[2] <= 25:
  11. $ARGS[1] = iif(ARGS[0] = 0, 'A Male', 'A Girl')
  12. else
  13. $ARGS[1] = iif(ARGS[0] = 0, 'A Male', 'A Woman')
  14. end
  15. end
  16. !! Determine region
  17. if ARGS[3] = 0:
  18. if $region = 'pav':
  19. temp_bg_region = 1
  20. elseif $region = 'city':
  21. temp_bg_region = rand(3, 4)
  22. end
  23. end
  24. !! {The NPC generator is now the primary system of creating new characters.}
  25. gs 'npcgeneratec', ARGS[0], $ARGS[1], ARGS[2], ARGS[3]
  26. gs 'boyStat', $npclastgenerated
  27. gs 'boygirl', 'details'
  28. end
  29. if $ARGS[0] = 'details':
  30. !Select Photos
  31. loverGenderTmp = npc_gender[$npclastgenerated]
  32. silaVag = npc_sexskill[$npclastgenerated]
  33. $npc_usedname[$npclastgenerated] = $npc_firstname[$npclastgenerated]
  34. $boydesc = $npc_usedname[$npclastgenerated]
  35. hairBoy = npc_haircol[$npclastgenerated]
  36. titBoy = npc_bust[$npclastgenerated]
  37. vneshBoy = npc_apprnc[$npclastgenerated]
  38. !!appearance
  39. gs 'boygirl', 'set_boybody'
  40. !!Variables responsible for any features like
  41. !!security, is responsible for the money and requirements
  42. gs 'boygirl', 'set_finance'
  43. gs 'boygirl', 'set_preferences'
  44. end
  45. if $ARGS[0] = 'set_boybody':
  46. boybodyrand = rand(1, 3)
  47. if boybodyrand = 1:
  48. $boybody = 'short'
  49. $boybody_pref = 'a short'
  50. elseif boybodyrand = 2:
  51. $boybody = 'average'
  52. $boybody_pref = 'an average'
  53. else
  54. $boybody = 'tall'
  55. $boybody_pref = 'a tall'
  56. end
  57. boybodrand = rand(1, 4)
  58. boyfacerand = rand(1, 3)
  59. if npc_gender[$npclastgenerated] = 0:
  60. if boybodrand = 1:
  61. $boybod = 'thin'
  62. $boybod_pref = 'a thin'
  63. elseif boybodrand = 2:
  64. $boybod = 'athletic'
  65. $boybod_pref = 'an athletic'
  66. elseif boybodrand = 3:
  67. $boybod = 'chunky'
  68. $boybod_pref = 'a chunky'
  69. else
  70. $boybod = 'fat'
  71. $boybod_pref = 'a fat'
  72. end
  73. if boyfacerand = 1:
  74. $boyface = 'black'
  75. elseif boyfacerand = 2:
  76. $boyface = 'brown'
  77. else
  78. $boyface = 'blond'
  79. end
  80. else
  81. if boybodrand = 1 and boybodyrand = 1:
  82. $boybod = 'petite'
  83. $boybod_pref = 'a petite'
  84. elseif boybodrand = 1 and boybodyrand = 2:
  85. $boybod = 'slender'
  86. $boybod_pref = 'a slender'
  87. elseif boybodrand = 2:
  88. $boybod = 'toned'
  89. $boybod_pref = 'a toned'
  90. elseif boybodrand = 3:
  91. $boybod = 'average'
  92. $boybod_pref = 'an average'
  93. else
  94. $boybod = 'chubby'
  95. $boybod_pref = 'a chubby'
  96. end
  97. if boyfacerand = 1:
  98. $boyface = 'black'
  99. elseif boyfacerand = 2:
  100. $boyface = 'brunette'
  101. else
  102. $boyface = 'blond'
  103. end
  104. end
  105. end
  106. if $ARGS[0] = 'set_finance':
  107. harakBoy = rand(0, 2)
  108. finance = npc_finance[$npclastgenerated]
  109. if npc_finance[$npclastgenerated] = 0:
  110. !!Gopnik beggar or a hard worker
  111. !!check in appearance Primary
  112. if harakBoy = 0:
  113. npc_apprnc[$npclastgenerated] = rand(0, 8)
  114. elseif harakBoy = 1:
  115. npc_apprnc[$npclastgenerated] = rand(0, 16)
  116. else
  117. npc_apprnc[$npclastgenerated] = rand(0, 32)
  118. end
  119. $boyClo = 'wearing a tracksuit.'
  120. elseif npc_finance[$npclastgenerated] = 1:
  121. !!middle_peasant
  122. !!check in appearance
  123. if harakBoy = 0:
  124. npc_apprnc[$npclastgenerated] = rand(0, 16)
  125. elseif harakBoy = 1:
  126. npc_apprnc[$npclastgenerated] = rand(0, 24)
  127. else
  128. npc_apprnc[$npclastgenerated] = rand(0, 32)
  129. end
  130. $boyClo = iif(npc_gender[$npclastgenerated] = 0, 'wearing jeans and a sweater.', 'wearing jeans and a blouse.')
  131. elseif npc_finance[$npclastgenerated] = 2:
  132. !!middle_peasant
  133. !!check in appearance
  134. if harakBoy = 0:
  135. npc_apprnc[$npclastgenerated] = rand(16, 32)
  136. elseif harakBoy = 1:
  137. npc_apprnc[$npclastgenerated] = rand(24, 32)
  138. else
  139. npc_apprnc[$npclastgenerated] = rand(32, 40)
  140. end
  141. $boyClo = iif(npc_gender[$npclastgenerated] = 0, 'wearing an expensive suit.', 'wearing an expensive dress.')
  142. end
  143. end
  144. if $ARGS[0] = 'set_preferences':
  145. !!requirements of the figure, chest size, hair color.
  146. !!0 - ass less 80, 1 back from 80 prior_to 100, 2 ass over 100
  147. figurBoy = rand(0, 2)
  148. !character 0 - soft, 1 - norm, 2 - aggressor
  149. temp_rand = rand(0, 100)
  150. if temp_rand < 80:
  151. izvrat = 0
  152. elseif temp_rand < 90 and npc_gender[$npclastgenerated] = 1:
  153. izvrat = 0
  154. else
  155. izvrat = 1
  156. end
  157. !! trying to make the preference section
  158. !! Variables here are clotTypePrefTmp, clotQualPrefTmp, clotTopPrefTmp, bottShorPrefTmp, clotThinPrefTmp, bimbPrefTmp, pierPrefTmp, tattPrefTmp, lipsPrefTmp, bodyPrefTmp, makePrefTmp, IQPrefTmp.
  159. !!This is for clothing type preference
  160. !! If you notice how rare it is to get a preference that is intentional
  161. !!0 - none, 1 - cheap, 2 - average, 3 - formal, 4 - fetish.
  162. clotTypePrefTmp = 0
  163. if rand(0, 4) = 4:
  164. if izvrat = 1 and rand(0, 1 + npc_finance[$npclastgenerated] mod 2) = 0:
  165. clotTypePrefTmp = 4
  166. elseif npc_finance[$npclastgenerated] = 0:
  167. clotTypePrefTmp = rand(1, 2)
  168. elseif npc_finance[$npclastgenerated] = 1:
  169. clotTypePrefTmp = rand(1, 3)
  170. elseif npc_finance[$npclastgenerated] = 2:
  171. clotTypePrefTmp = rand(2, 3)
  172. end
  173. end
  174. !!This is for the quality of clothing
  175. !! 0 - no preference, 1 - 1 to 4 units cheap to average (Locked if formal chosen), 2 - 5 to 7 units expensive to ballroom quality (Locked if fetish is chosen)
  176. clotQualPrefTmp = 0
  177. if rand(0, 5) = 0:
  178. if npc_finance[$npclastgenerated] = 0:
  179. clotQualPrefTmp = 1
  180. elseif npc_finance[$npclastgenerated] = 1:
  181. clotQualPrefTmp = rand(1, 2)
  182. temp_rand = rand(0, 1)
  183. if temp_rand = 0 and clotTypePrefTmp ! 3:
  184. clotQualPrefTmp = 1
  185. elseif temp_rand = 1 and clotTypePrefTmp ! 1:
  186. clotQualPrefTmp = 2
  187. end
  188. elseif npc_finance[$npclastgenerated] = 2:
  189. temp_rand = rand(0, 2)
  190. if temp_rand = 2 and clotTypePrefTmp ! 1:
  191. clotQualPrefTmp = 2
  192. end
  193. end
  194. end
  195. !!This is for the clothing top cut for the clothing
  196. !!Need to add modifiers based on breast size, where larger breasts end up forcing the player to show more cleavage than those with smaller breasts.
  197. !! 0 - no preference, 1 - 1 to 2 or neckline to moderate, 2 - 3 to 4 or heavy to severe, 3 - 5 to 7 or buldging to outpouring
  198. !! The breast size must be adjusted either when the action is being calculeted or we can base it on their ideal breast size :npc_bust[$npclastgenerated] + 0/3 depending on the players breast size
  199. !!0 - no preference, 1 - 1 neckline , 2 - 2 or moderate, 3 - 3 to 4 or heavy to severe
  200. !! It doesn''t matter if your poor or rich, everyone loves tits.
  201. slutConstant = 0
  202. if izvrat = 1 and rand(0, 1 + npc_gender[$npclastgenerated]) = 0: slutConstant = 1
  203. clotTopPrefTmp = 0
  204. if rand(0, 2) = 0:
  205. temp_rand = rand(0, 5) - npc_gender[$npclastgenerated]
  206. if temp_rand < 2 and clotTypePrefTmp ! 4:
  207. clotTopPrefTmp = 1 + slutConstant
  208. elseif temp_rand < 4 and clotTypePrefTmp ! 4:
  209. clotTopPrefTmp = 2 + slutConstant
  210. elseif temp_rand >= 4 and clotTypePrefTmp ! 3:
  211. clotTopPrefTmp = 3
  212. end
  213. if clotTopPrefTmp ! 0 and npc_bust[$npclastgenerated] = 2:
  214. if clotPref ! 3:
  215. clotTopPrefTmp += 1
  216. end
  217. end
  218. end
  219. !! This is for pants and skirt shortness and will be grouped together as such.
  220. !! 0 - no preference, 1 - 1 to 2 units or ankle to calf length, 2 - 3 to 4 units or knee to miniskirt, 3 - 5 units to 6 or slut to hoe.
  221. bottShorPrefTmp = 0
  222. if rand(0, 2) = 0:
  223. temp_rand = rand(0, 5) - npc_gender[$npclastgenerated]
  224. if temp_rand < 2 and clotTypePrefTmp ! 4:
  225. bottShorPrefTmp = 1
  226. elseif temp_rand < 4:
  227. bottShorPrefTmp = 2
  228. elseif temp_rand >= 4:
  229. bottShorPrefTmp = 3
  230. end
  231. if slutConstant = 1 and rand(0, 1) = 0 and clotTypePrefTmp = 4:
  232. bottShorPrefTmp = 3
  233. end
  234. end
  235. !! This is for clothes thinness.
  236. !! 0 - no preference, 1 - 0 to 2 (Conservative), 2 - 3 to 4 (Moderate), 3 - 4 to 6 (really thin)
  237. !! I see the moderate to really thin overlapping. Its intentional.
  238. clotThinPrefTmp = 0
  239. if rand(0, 2) = 2:
  240. temp_rand = rand(0, 5) - npc_gender[$npclastgenerated]
  241. if temp_rand < 2:
  242. clotThinPrefTmp = 1 + slutConstant
  243. elseif temp_rand < 4:
  244. clotThinPrefTmp = 2 + slutConstant
  245. elseif temp_rand > 4 and clotTypePrefTmp ! 3:
  246. clotThinPrefTmp = 3
  247. end
  248. end
  249. !!This is to find out if they want you to wear bimbo clothing
  250. !! 0 - no preference, 1 - Prefers bimbo clothing.
  251. bimbPrefTmp = 0
  252. if rand(0, 2 + 8 * npc_gender[$npclastgenerated]) = 0 and clotTypePrefTmp ! 3: bimbPrefTmp = 1
  253. !!This is to find out if they want you to wear piercings.
  254. !! 0 - no preference, 1 - 0 to 2 piercings, 2 - 3 to 5 piercings, 3 - 6 or more piercings.
  255. pierPrefTmp = 0
  256. if rand(0, 3) = 3:
  257. temp_rand = rand(0, 2)
  258. if temp_rand = 0:
  259. pierPrefTmp = 1 + slutConstant
  260. elseif temp_rand = 1:
  261. pierPrefTmp = 2 + slutConstant
  262. elseif temp_rand = 2:
  263. pierPrefTmp = 3
  264. end
  265. end
  266. !!This is to find out if they want you to have tattoos.
  267. !! 0 - no preference, 1 - 0 to 2 tattoos, 2 - 3 to 5 tattoos, 3 - 6 or more tattoos.
  268. tattPrefTmp = 0
  269. if rand(0, 3) = 0: tattPrefTmp = rand(1, 3)
  270. !!This is to find out how big they want your lips.
  271. !! 0 - no preference, 1 - 2 to 3 units (average) , 2 - 4 units (THIC lips)
  272. lipsPrefTmp = 0
  273. if rand(0, 2 + npc_gender[$npclastgenerated]) = 0:
  274. temp_rand = rand(0, 2)
  275. if temp_rand = 0:
  276. lipsPrefTmp = 1 + slutConstant
  277. elseif temp_rand = 2:
  278. lipsPrefTmp = 2
  279. end
  280. end
  281. !!This is to find out how big they want YOU.
  282. !! 0 - no preference, 1 - 1 to 3 units (Skinny) , 2 - 3 to 6 units (Average), 3 - 6 + units (THIC)
  283. !! Notice how this one overlaps. I believe that it should because changing ones weight is very hard.
  284. bodyPrefTmp = 0
  285. if rand(0, 3) = 0: bodyPrefTmp = rand(1, 3)
  286. !!This is to find out how much makeup they want you to wear.
  287. !! 0 - no preference, 1 - 1 (light makeup) , 2 - 2 (moderate makeup), 3 - 3(heavy makeup)
  288. !! Plan to make a way for you to set what you makeup you want to wear at your bedside and giving into his wishes would automatically change the automated setting.
  289. makePrefTmp = 0
  290. if rand(0, 1) = 0:
  291. temp_rand = rand(0, 5) - npc_gender[$npclastgenerated]
  292. if temp_rand < 2:
  293. makePrefTmp = 1 + slutConstant
  294. elseif temp_rand < 4:
  295. makePrefTmp = 2 + slutConstant
  296. elseif temp_rand >= 4 and clotTypePrefTmp ! 3:
  297. makePrefTmp = 3
  298. end
  299. end
  300. !! This is to see if they like a ditz, average, or a smartypants
  301. !!0 - no preference, 1 - 1 to 30 intelligence, 2 - 30 to 85 intelligence, 3 - 85 + intelligence.
  302. IQPrefTmp = 0
  303. if rand(0, 4) = 0:
  304. if npc_gender[$npclastgenerated] = 0:
  305. IQPrefTmp = rand(1, 3)
  306. else
  307. !! IQPrefTmp is capped at 3. With old code: rand(1, 2) + rand(1, 2) + rand(0,1) => 1/8 chance for 2 else 3 (or more)
  308. IQPrefTmp = min(rand(2, 9), 3)
  309. end
  310. end
  311. killvar 'temp_rand'
  312. end
  313. --- boygirl ---------------------------------