Overview
Comment: | updates |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA3-256: |
c572c019107a5ba07b30924d6c635069 |
User & Date: | lexi on 2020-10-15 08:07:34 |
Other Links: | manifest | tags |
Context
2020-10-17
| ||
06:26 | updates check-in: ab1b71a07a user: lexi tags: trunk | |
2020-10-15
| ||
08:07 | updates check-in: c572c01910 user: lexi tags: trunk | |
2020-02-04
| ||
11:27 | shit check-in: 401c47f413 user: lexi tags: trunk | |
Changes
Modified monster.ml from [17f0b8d58f] to [a6081fd51c].
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 .. 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 .. 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 |
"verve"; "pulchritude"; "beneficence"; "dismay"; "wit"; "cheer"; "glee"; "malevolence"; "wickedness"; "cruelty"; "sagacity"; "splendor"; "pride"; "rage"; "fury"; "snazz"; "foolishness"; "sleepiness"; "curiosity"; "brevity"; "lust"; "confidence"; "bashfulness"; "awkwardness"; "terror"; "accuracy"; "insanity"; "sorrow"; "gladness"; "weariness"; "depression"; "passion"; "dread"; "popularity"; "vulgarity"; "madness"; "compassion"; |] let mods = [| "filled"; "overcome"; "shining"; "vivacious"; "burning"; "blazing"; "morose"; "gleeful"; "mad"; "shaking"; "howling"; "snarling"; "gruesome"; "helpless"; "vibrant"; "desperate"; |] let advs = [| "cruelly"; "angrily"; "madly"; "hopelessly"; "thoughtlessly"; "wickedly"; "hopefully"; "quickly"; "speedily"; "furiously"; "kindly"; "maniacally"; "tearfully"; "bashfully"; "angrily"; "wondrously"; "splendidly"; "tremendously"; "badly"; "terribly"; "foolishly"; "snazzily"; "toplessly"; "balefully"; "beautifully"; "kindly"; "thoughtfully"; "cautiously"; "severely"; "wisely"; |] let adjs = [| "cheerful"; "wondrous"; "overwhelming"; "adorable"; "snazzy"; "hopeful"; "desperate"; "lustful"; "dour"; "sad"; "sorrowful"; "hopeless"; "all-consuming"; "mad"; "cruel"; "dreadful"; "terrible"; "fearsome"; "inescapable"; "thoughtless"; "vile"; "bashful"; "topless"; "naked"; "dire"; "baleful"; "vulgar"; "beautiful"; "horrid"; "cautious"; "violent"; "wise"; "supreme"; "marvelous"; |] let verbs = [| "shines"; "toots"; "honks"; "mutters"; "whispers"; "growls"; "roars"; "whuffles"; "warbles"; "howls"; "screams"; "shrieks"; "quivers"; "dances"; "hops up and down"; "grins"; "mumbles"; "counsels you"; "glares"; "stares at you"; "looks up"; "gazes at you"; "marvels"; "laughs"; |] let pick a = a.(Random.int (Array.length a)) type rule = R of string array | S of string | B of rule list | A of rule array | O of rule;; let rec eval r : string = match r with | R x -> pick x | S x -> x ................................................................................ let obs = A [| stop; fric; vstop; nasal; liq; |] in let v = R [| "a"; "e"; "u"; "o"; "i"; "ee"; "oo"; "au"; "ai";"oi";|] in let sr = A [| B[obs; v; O obs]; B[A [|stop;vstop;fric;vfric;|]; O liq; v; O obs]; |] in eval sr ;; let prefixes = [| "ur-"; "dire "; "dire ur-"; "super " |] let name () = let size = 1 + (Random.int 3) in let rec loop n acc = if n = 0 then acc else loop (n-1) (acc^(syl ())) in (if Random.int 2 = 0 then (pick prefixes) else "") ^ loop size "";; let isvowel c = match c with | 'a' | 'e' | 'i' | 'o' | 'u' -> true ................................................................................ A [| B[ R verbs; S " "; A [| B[ S "with "; O(B[R adjs; S" "]); R nouns;]; R advs; |]; ]; B[S"is "; O(B[R advs;S" ";]); R mods; O(B[ S " with "; O(B[R adjs; S" "]); R nouns;]); ]; |]; S "!"; ] in (pick msgs)^" "^(indef (name()))^"! " ^ (eval kinds);; let rec times n a = if n = 0 then () else (a (); times (n-1) a);; let () = Random.self_init (); (* times 20 (fun () ->*) print_string ((encounter ()) ^ "\n") (* )*) |
| | > | | | > > > > | | |
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 .. 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 .. 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 |
"verve"; "pulchritude"; "beneficence"; "dismay"; "wit"; "cheer"; "glee"; "malevolence"; "wickedness"; "cruelty"; "sagacity"; "splendor"; "pride"; "rage"; "fury"; "snazz"; "foolishness"; "sleepiness"; "curiosity"; "brevity"; "lust"; "confidence"; "bashfulness"; "awkwardness"; "terror"; "accuracy"; "insanity"; "sorrow"; "gladness"; "weariness"; "depression"; "passion"; "dread"; "popularity"; "vulgarity"; "madness"; "compassion"; "tact"; |] let mods = [| "filled"; "overcome"; "shining"; "vivacious"; "burning"; "blazing"; "morose"; "gleeful"; "mad"; "shaking"; "howling"; "snarling"; "gruesome"; "helpless"; "vibrant"; "desperate"; "triumphant"; "glum"; "sorrowful"; "struck"; |] let advs = [| "cruelly"; "angrily"; "madly"; "hopelessly"; "thoughtlessly"; "wickedly"; "hopefully"; "quickly"; "speedily"; "furiously"; "kindly"; "maniacally"; "tearfully"; "bashfully"; "angrily"; "wondrously"; "splendidly"; "tremendously"; "badly"; "terribly"; "foolishly"; "snazzily"; "toplessly"; "balefully"; "beautifully"; "kindly"; "thoughtfully"; "cautiously"; "severely"; "wisely"; "lustfully"; "tactfully"; |] let adjs = [| "cheerful"; "wondrous"; "overwhelming"; "adorable"; "snazzy"; "hopeful"; "desperate"; "lustful"; "dour"; "sad"; "sorrowful"; "hopeless"; "all-consuming"; "mad"; "cruel"; "dreadful"; "terrible"; "fearsome"; "inescapable"; "thoughtless"; "vile"; "bashful"; "topless"; "naked"; "dire"; "baleful"; "vulgar"; "beautiful"; "horrid"; "cautious"; "violent"; "wise"; "supreme"; "marvelous"; "tactful"; |] let verbs = [| "shines"; "toots"; "honks"; "mutters"; "whispers"; "growls"; "roars"; "whuffles"; "warbles"; "howls"; "screams"; "shrieks"; "quivers"; "dances"; "hops up and down"; "grins"; "mumbles"; "counsels you"; "glares"; "stares at you"; "looks up"; "gazes at you"; "marvels"; "laughs"; "sins"; "whistles"; "whungles"; "jangles"; "twerks"; "blinks"; "blorps"; "flunks"; "planks"; "glitters"; "gleams"; "grumbles"; "grouches"; "bites you"; "gnaws on you"; "glimmers"; "gripes"; "plots"; "wonders"; "whittles"; "plays the fiddle"; "ponders"; "contemplates you"; "scrunches"; "zaps"; "zaps you"; |] let pick a = a.(Random.int (Array.length a)) type rule = R of string array | S of string | B of rule list | A of rule array | O of rule;; let rec eval r : string = match r with | R x -> pick x | S x -> x ................................................................................ let obs = A [| stop; fric; vstop; nasal; liq; |] in let v = R [| "a"; "e"; "u"; "o"; "i"; "ee"; "oo"; "au"; "ai";"oi";|] in let sr = A [| B[obs; v; O obs]; B[A [|stop;vstop;fric;vfric;|]; O liq; v; O obs]; |] in eval sr ;; let prefixes = [| "ur-"; "dire "; "dire ur-"; "super "; "ultra "; "great "; "grand "; "terror-"; "horror-"; "giant "; "evil "; "dark ";|] let name () = let size = 1 + (Random.int 3) in let rec loop n acc = if n = 0 then acc else loop (n-1) (acc^(syl ())) in (if Random.int 2 = 0 then (pick prefixes) else "") ^ loop size "";; let isvowel c = match c with | 'a' | 'e' | 'i' | 'o' | 'u' -> true ................................................................................ A [| B[ R verbs; S " "; A [| B[ S "with "; O(B[R adjs; S" "]); R nouns;]; R advs; |]; ]; B[S"is "; O(B[R advs;S " ";]); R mods; O(B[ S " with "; O(B[R adjs; S" "]); R nouns;]); ]; |]; S "!"; ] in (pick msgs)^" "^(indef (name()))^"! " ^ (eval kinds);; let rec times n a = if n = 0 then () else (a (); times (n-1) a);; let () = Random.self_init (); (* times 20 (fun () ->*) print_string ((encounter ()) ^ "\n") (* )*) |