diff options
| author | bculkin2442 <bjculkin@mix.wvu.edu> | 2017-02-05 18:18:19 -0500 |
|---|---|---|
| committer | bculkin2442 <bjculkin@mix.wvu.edu> | 2017-02-05 18:18:19 -0500 |
| commit | 51c30f65f5962823c05cceb75b6a1f20d055abe7 (patch) | |
| tree | 1102dd53de7a6451f63e366ff82ad1d49140fc38 /RGens/src/main/java | |
| parent | cdbc0c547bb9d9d2aff2087940430f83f15f3aa8 (diff) | |
Switch grammar syntax, and add more samples
Diffstat (limited to 'RGens/src/main/java')
34 files changed, 2581 insertions, 741 deletions
diff --git a/RGens/src/main/java/.DS_Store b/RGens/src/main/java/.DS_Store Binary files differnew file mode 100644 index 0000000..c5a38b7 --- /dev/null +++ b/RGens/src/main/java/.DS_Store diff --git a/RGens/src/main/java/bjc/.DS_Store b/RGens/src/main/java/bjc/.DS_Store Binary files differnew file mode 100644 index 0000000..86e50e6 --- /dev/null +++ b/RGens/src/main/java/bjc/.DS_Store diff --git a/RGens/src/main/java/bjc/RGens/.DS_Store b/RGens/src/main/java/bjc/RGens/.DS_Store Binary files differnew file mode 100644 index 0000000..918453d --- /dev/null +++ b/RGens/src/main/java/bjc/RGens/.DS_Store diff --git a/RGens/src/main/java/bjc/RGens/ZadronsPouch.java b/RGens/src/main/java/bjc/RGens/ZadronsPouch.java index 5fbc5c8..22c869e 100644 --- a/RGens/src/main/java/bjc/RGens/ZadronsPouch.java +++ b/RGens/src/main/java/bjc/RGens/ZadronsPouch.java @@ -22,7 +22,7 @@ public class ZadronsPouch { ZadronsPouch zp = new ZadronsPouch(); for (int i = 0; i < 100; i++) { - IList<String> ls = zp.grammar.generateListValues("<item>", " "); + IList[String] ls = zp.grammar.generateListValues("[item]", " "); StringBuilder sb = new StringBuilder(); @@ -32,7 +32,7 @@ public class ZadronsPouch { } } - private RandomGrammar<String> grammar; + private RandomGrammar[String] grammar; /** * Create a new instance with a grammar @@ -40,10 +40,10 @@ public class ZadronsPouch { public ZadronsPouch() { grammar = new RandomGrammar<>(); - addRule("<item>", - "<egg>", "<glove>", "<crys-sphere>", "<rock>", - "<figurine>", "<vial>", "<mini-weapon>", "<bag>", - "<card>", "<rope>", "<box>", "<wand>"); + addRule("[item]", + "[egg]", "[glove]", "[crys-sphere]", "[rock]", + "[figurine]", "[vial]", "[mini-weapon]", "[bag]", + "[card]", "[rope]", "[box]", "[wand]"); addEggRules(); addGloveRules(); @@ -62,123 +62,123 @@ public class ZadronsPouch { } private void addBagRules() { - addRule("<bag>", - "bag of <bag-type>", "<sack-type> sack", "<purse-type> purse"); - addRule("<bag-type>", + addRule("[bag]", + "bag of [bag-type]", "[sack-type] sack", "[purse-type] purse"); + addRule("[bag-type]", "holding", "tricks", "useful items", "devouring", "dwarf-kind", "invisible cloth", "monster summoning"); - addRule("<sack-type>", + addRule("[sack-type]", "lunch", "recursive"); - addRule("<purse-type>", + addRule("[purse-type]", "everfull"); } private void addBoxRules() { - addRule("<box>", - "<box-type> box", "cube of <box-type>"); - addRule("<box-type>", + addRule("[box]", + "[box-type] box", "cube of [box-type]"); + addRule("[box-type]", "limited-force", "frost-resisting", "morphing", "self-destructing", "pandora", "panicking"); } private void addCardRules() { - addRule("<card>", - "card of <card-type>", "<card-type> card"); - addRule("<card-type>", + addRule("[card]", + "card of [card-type]", "[card-type] card"); + addRule("[card-type]", "fate", "teleporting", "elusive treasure", "spell-storing", "many-things", "imprisoning", "messaging", "bounty"); } private void addCrysSphereRules() { - addRule("<crys-sphere>", - "<sphere-type> spheres", "<sphere-type> sphere", - "lens of <lens-type>", "<crystal-type> crystal", - "crystal of <crystal-type>", "crystal ball", - "crystal ball of <crys-suffix>"); - addRule("<sphere-type>", + addRule("[crys-sphere]", + "[sphere-type] spheres", "[sphere-type] sphere", + "lens of [lens-type]", "[crystal-type] crystal", + "crystal of [crystal-type]", "crystal ball", + "crystal ball of [crys-suffix]"); + addRule("[sphere-type]", "microphonic", "seeing-eye"); - addRule("<lens-type>", + addRule("[lens-type]", "detection"); - addRule("<crystal-type>", + addRule("[crystal-type]", "prison", "radar"); - addRule("<crys-suffix>", + addRule("[crys-suffix]", "jumping"); } private void addEggRules() { - addRule("<egg>", - "<egg-type> egg"); - addRule("<egg-type>", + addRule("[egg]", + "[egg-type] egg"); + addRule("[egg-type]", "copper", "stone", "golden", "white", "white/pink", "glass"); } private void addFigurineRules() { - addRule("<figurine>", - "<fig-material> <fig-animal>"); - addRule("<fig-material>", + addRule("[figurine]", + "[fig-material] [fig-animal]"); + addRule("[fig-material]", "golden", "onyx", "serpentine", "ivory", "marble", "bronze", "jade", "limestone"); - addRule("<fig-animal>", + addRule("[fig-animal]", "lion", "dog", "owl", "goat", "elephant", "warrior", "palace", "leprechaun"); } private void addGloveRules() { - addRule("<glove>", - "gauntlets of <gauntlet-type>", - "gloves of <glove-type>", - "<glove-type> gloves"); - addRule("<gauntlet-type>", + addRule("[glove]", + "gauntlets of [gauntlet-type]", + "gloves of [glove-type]", + "[glove-type] gloves"); + addRule("[gauntlet-type]", "dexterity", "power"); - addRule("<glove-type>", + addRule("[glove-type]", "pushing", "choking", "bigby", "stunning"); } private void addMiniWeaponRules() { - addRule("<mini-weapon>", - "minature <weapon-type>", "small <weapon-type>", - "tiny <weapon-type>", "<sling-type> sling", - "<weapon-type>"); - addRule("<weapon-type>", + addRule("[mini-weapon]", + "minature [weapon-type]", "small [weapon-type]", + "tiny [weapon-type]", "[sling-type] sling", + "[weapon-type]"); + addRule("[weapon-type]", "boomerang", "arrow", "net", "catapult", "hammer", "sword", "club"); - addRule("<sling-type>", + addRule("[sling-type]", "seeking"); } private void addRockRules() { - addRule("<rock>", - "<pebble-type> pebble", "stone of <stone-type>", - "<stone-type> stone", "brick of <brick-type>", - "<geode-type> geode"); - addRule("<pebble-type>", + addRule("[rock]", + "[pebble-type] pebble", "stone of [stone-type]", + "[stone-type] stone", "brick of [brick-type]", + "[geode-type] geode"); + addRule("[pebble-type]", "inscribed", "elemental control"); - addRule("<stone-type>", + addRule("[stone-type]", "good-luck", "weight", "blind-defense", "metal-clinging"); - addRule("<brick-type>", + addRule("[brick-type]", "flying"); - addRule("<geode-type>", + addRule("[geode-type]", "ioun"); } private void addRopeRules() { - addRule("<rope>", - "<rope-type> rope", "rope of <rope-type>", - "ball of <string-type> <string-kind>"); - addRule("<rope-type>", + addRule("[rope]", + "[rope-type] rope", "rope of [rope-type]", + "ball of [string-type] [string-kind]"); + addRule("[rope-type]", "trick", "entangling", "climbing", "dancing", "tripping", "snaring", "levitating", "self-entangling"); - addRule("<string-type>", + addRule("[string-type]", "endless"); - addRule("<string-kind>", + addRule("[string-kind]", "string", "yarn"); } private void addRule(String rule, String... cases) { - IList<IList<String>> cses = new FunctionalList<>(); + IList[IList<String>] cses = new FunctionalList<>(); for (String strang : cases) { cses.add(FunctionalStringTokenizer.fromString(strang).toList(s -> s)); @@ -188,32 +188,32 @@ public class ZadronsPouch { } private void addVialRules() { - addRule("<vial>", - "vial of <vial-type>", "<vial-type> vial", - "<bottle-type> bottle", "<flask-type> flask"); - addRule("<vial-type>", + addRule("[vial]", + "vial of [vial-type]", "[vial-type] vial", + "[bottle-type] bottle", "[flask-type] flask"); + addRule("[vial-type]", "holding", "trapping", "experience", "unnatural regeneration"); - addRule("<bottle-type>", + addRule("[bottle-type]", "ever-smoking", "wheezing", "blank potion"); - addRule("<flask-type>", + addRule("[flask-type]", "iron"); } private void addWandRules() { - addRule("<wand>", - "<wand-type> wand", "wand of <wand-type>", - "canceling <wand-type> wand"); - addRule("<wand-type>", - "magic missile", "<spell-1>", "<spell-2>", + addRule("[wand]", + "[wand-type] wand", "wand of [wand-type]", + "canceling [wand-type] wand"); + addRule("[wand-type]", + "magic missile", "[spell-1]", "[spell-2]", "gusting", "life-detecting", "zadron"); - addRule("<spell-1>", + addRule("[spell-1]", "frost", "fire", "lightning", "fear", "illumination", "polymorphing", "conjuration", "paralyzing"); - addRule("<spell-2>", - "<spell2-type> detecting"); - addRule("<spell2-type>", + addRule("[spell-2]", + "[spell2-type] detecting"); + addRule("[spell2-type]", "magic", "enemy", "secret door/trap"); } } diff --git a/RGens/src/main/java/bjc/RGens/parser/.DS_Store b/RGens/src/main/java/bjc/RGens/parser/.DS_Store Binary files differindex 76d2657..0f90c6a 100644 --- a/RGens/src/main/java/bjc/RGens/parser/.DS_Store +++ b/RGens/src/main/java/bjc/RGens/parser/.DS_Store diff --git a/RGens/src/main/java/bjc/RGens/parser/GrammarSyntax.txt b/RGens/src/main/java/bjc/RGens/parser/GrammarSyntax.txt deleted file mode 100644 index db9a158..0000000 --- a/RGens/src/main/java/bjc/RGens/parser/GrammarSyntax.txt +++ /dev/null @@ -1,18 +0,0 @@ -Each line consists of either a comment, a pragma, a rule, or a case for a previously mentioned rule. - * Anything after a # on a line is considered a comment - * A pragma is indicated by the word 'pragma' followed by the pragma name and any parameters. - * List of pragmas - * uniform: toggle uniform weighting of grammar options. The default state of this is off. - * subordinate: create a new grammar and set the rules of the current grammar as a subgrammar - of the new grammar with the name given as a parameter to the pragma - * promote: Pick a subgrammar with the given name, and then subordinate this grammar to that one. - * remove-sub-grammar: remove a designated subgrammar - * remove-rule: remove a designated rule from this grammar - * load-sub-grammar: load a designated subgrammar from a file - * new-sub-grammar: create a new subgrammar and start editing it - * edit-sub-grammar: switch to editing the designated subgrammar - * edit-parent: switch to editing the parent of the current grammar - * save-sub-grammar: save the current subgrammar under a certain name - * A rule is defined by saying its name, then following it with a bunch of case definitions. - * A case definition is defined by an optional probability if uniformity is toggled off, then a series of tokens for the rules. - More case definitions are indicated by a leading tab.
\ No newline at end of file diff --git a/RGens/src/main/java/bjc/RGens/parser/sample-grammars/.DS_Store b/RGens/src/main/java/bjc/RGens/parser/sample-grammars/.DS_Store Binary files differindex 47dc88f..db7be62 100644 --- a/RGens/src/main/java/bjc/RGens/parser/sample-grammars/.DS_Store +++ b/RGens/src/main/java/bjc/RGens/parser/sample-grammars/.DS_Store diff --git a/RGens/src/main/java/bjc/RGens/parser/sample-grammars/24hr-rpg.gram b/RGens/src/main/java/bjc/RGens/parser/sample-grammars/24hr-rpg.gram new file mode 100755 index 0000000..7c4eadf --- /dev/null +++ b/RGens/src/main/java/bjc/RGens/parser/sample-grammars/24hr-rpg.gram @@ -0,0 +1,205 @@ +[rpg] [rpg-part] , [rpg-part] and <rpg-part> + [rpg-part] and <rpg-part> + [rpg-part] the <rpg-part> + +pragma initial-rule [rpg] + +[rpg-part] tits + teeth + claws + fluff + crunch + tools + guns + treachery + post-apocalyptic + underwater + terror + fast food + military + fortress + pirates + metalhead + genies + insects + environmentalism + voodoo + pitchforks + inventors + bomb technicians + zombies + vampires + the 70s + ninjas + cards + rebellion + cannibals + beast men + dancing + monty python + energy crisis + orchestra + summer + trolls + medical + time manipulation + hitchhiking + meteors + the meaning of life + literary figures + wrestlers + tournament + imaginary friends + world leaders + exploration + fish + gods + trading + rap battles + creation + blurring boundaries + animals + bounty hunters + organized crime + high school + cybernetics + aliens + contemporary world + urban fantasy + nazis + robots + surfers + gentlemen + haberdashery + zeppelins + demons + rapscallions + memory loss + repetition + martial arts + conquistadors + winter + mummies + orcs + reinterpreted myths + machinery + harmony + motorcycles + horses + limited time + ancient + sleepovers + submarines + ambition + colors + marshmallows + the 90s + neckbeards + unicorns + clothing + hunting + world war I + trees + magical girls + gameshow + dragons + recursion + musicians + construction + plants + cats + drugs + surgery + politics + cartoons + athletics + disease + computers + cowboys + cars + cooking + samurai + spaceships + dinosaurs + candy + krakens + chainsaws + fists + crowbars + lava + elf + emperor + loch ness monster + knights + celebrities + video games + elves + the 2000s + rush hour traffic + spandex + stand-up comedy + nano-machines + mutation + dice + soft drinks + labyrinth + totalitarianism + prostitutes + cell phones + death + the line at the DMV + office + mars + the sun + survival + autumn + portals + world war II + the internet + brewing + alternate universe + tanks + jewelry + marketplace + dungeon building + business + coins + crustaceans + plumbing + parasites + rockets + electricity + speed + reincarnation + theatrics + storm chasers + curiosity + horror + tragedy + big damn heroes + SCIENCE! + transhumanism + spring + scandal + desert + laboratory + hipsters + obscure + dwarves + outer space + trains + religion + espionage + small scale + unicycles + airplanes + werewolves + fashion + JUSTICE! + suburbs + art + skies + madness + economy + the 60s + diff --git a/RGens/src/main/java/bjc/RGens/parser/sample-grammars/ZadronsPouch.gram b/RGens/src/main/java/bjc/RGens/parser/sample-grammars/ZadronsPouch.gram deleted file mode 100644 index 2e19182..0000000 --- a/RGens/src/main/java/bjc/RGens/parser/sample-grammars/ZadronsPouch.gram +++ /dev/null @@ -1,205 +0,0 @@ -<item> <egg> - <glove> - <crys-sphere> - <rock> - <figurine> - <vial> - <mini-weapon> - <bag> - <card> - <rope> - <box> - <wand> - -<bag> bag of <bag-type> - <sack-type> sack - <purse-type> purse - -<bag-type> holding - tricks - useful items - devouring - dwarf-kind - invisible cloth - monster summoning - -<sack-type> lunch - recursive - -<purse-type> everfull - -<box> <box-type> box - cube of <box-type> - -<box-type> limited-force - frost-resisting - morphing - self-destructing - pandora - panicking - -<card> card of <card-type> - <card-type> card - -<card-type> fate - teleporting - elusive treasure - spell-storing - many-thing - imprisoning - messaging - bounty - -<crys-sphere> <sphere-type> spheres - <sphere-type> sphere - lens of <lens-type> - <crystal-type> sphere - crystal of <crystal-type> - crystal ball - crystal ball of <crys-suffix> - -<sphere-type> microphonic - seeing-eye - -<lens-type> detection - -<crystal-type> prison - radar - -<crys-suffix> jumping - -<egg> <egg-type> egg - -<egg-type> copper - stone - golden - white - white/pink - glass - -<figurine> <fig-material> <fig-animal> - -<fig-material> golden - onyx - serpentine - ivory - marble - bronze - jade - limestone - -<fig-animal> lion - dog - owl - goat - elephant - warrior - palace - leprechaun - -<glove> gauntlets of <gauntlet-type> - gloves of <glove-type> - <glove-type> gloves - -<gauntlet-type> dexterity - power - -<glove-type> pushing - choking - bigby - stunning - -<mini-weapon> minature <weapon-type> - small <weapon-type> - tiny <weapon-type> - <sling-type> sling - <weapon-type> - -<weapon-type> boomerang - arrow - net - catapult - hammer - sword - club - -<sling-type> seeking - -<rock> <pebble-type> pebble - stone of <stone-type> - <stone-type> stone - brick of <brick-type> - <geode-type> geode - -<pebble-type> inscribed - elemental control - -<stone-type> good-luck - weight - blind-defense - metal-clinging - -<brick-type> flying - -<geode-type> ioun - -<rope> <rope-type> rope - rope of <rope-type> - ball of <string-type> <string-kind> - -<rope-type> trick - entangling - climbing - dancing - tripping - snaring - levitating - self-entangling - -<string-type> endless - -<string-kind> string - yarn - -<vial> vial of <vial-type> - <vial-type> vial - <bottle-type> bottle - <flask-type> flask - -<vial-type> holding - trapping - experience - unnatural regeneration - -<bottle-type> ever-smoking - wheezing - blank potion - -<flask-type> iron - -<wand> <wand-type> wand - wand of <wand-type> - canceling <wand-type> wand - -<wand-type> magic missile - <spell-1> - <spell-2> - gusting - life-detecting - zadron - -<spell-1> frost - fire - lightining - fear - illumination - polymorphing - conjuration - paralyzing - -<spell2> <spell2-type> detecting - -<spell2-type> magic - enemy - secret door/trap - diff --git a/RGens/src/main/java/bjc/RGens/parser/sample-grammars/anime.gram b/RGens/src/main/java/bjc/RGens/parser/sample-grammars/anime.gram new file mode 100755 index 0000000..1a695c8 --- /dev/null +++ b/RGens/src/main/java/bjc/RGens/parser/sample-grammars/anime.gram @@ -0,0 +1,96 @@ +[initial-name] [two-name] + [three-name] + +pragma initial-rule [name] + +[two-name] [first-name] [third-name] + [second-name] [third-name] + +[name] [first-name] [first-name] + [first-name] [second-name] + [second-name] [first-name] + [second-name] [second-name] + +pragma suffix-with [name] [third-name] + +[first-name] Vampire + Cat + Death + Mermaid + Infinite + Quantum + Endless + Bravo + Magical + Neon + Omega + Robo + Gothic + Peach + Ghost + Rhinestone + Mini + Blood + Bubblegum + Tokyo + Lucky + Soul + Cowboy + Awkward + Lucid + Space + +[second-name] Princess + Planet + Blade + Bride + Squad + Soldier + Waitress + Handkerchief + Goddess + Sushi + Star + Moon + Zombie + Banana + Dragon + Rocket + Fist + Chef + Robot + Psychic + Boogie + Power + Hamster + Tennis + Ballerina + Blackout + Phantom + +[third-name] Forever + Detectives + Memories + Outlaw + Chaos + Go! + Overture + 9000 + Super! + Zero + Genesis + Eternal + X + Revolution + Cowboy + Academy + Jellyfish + Club + Girl + Hunter + Arcade + Fantasy + Ultimate + Sudoku + Alchemy + Champion diff --git a/RGens/src/main/java/bjc/RGens/parser/sample-grammars/art-objects.gram b/RGens/src/main/java/bjc/RGens/parser/sample-grammars/art-objects.gram new file mode 100755 index 0000000..0a97edb --- /dev/null +++ b/RGens/src/main/java/bjc/RGens/parser/sample-grammars/art-objects.gram @@ -0,0 +1,93 @@ +[treasure] [gemstones] + [art-object] + [art-object] as well as [gemstones] + [gemstones] as well as [art-object] + +pragma initial-rule [treasure] + +[art-object] [common-art] + [uncommon-art] + [rare-art] + [legendary-art] + [epic-art] + [mythic-art] + +[gemstones] [common-gem] + [rare-gem] + [legendary-gem] + [epic-gem] + +[common-gem] amber + amethyst + garnet + moonstone + jade + pearl + peridot + turquoise + +[rare-gem] alexandrite + aquamarine + black pearl + topaz + +[legendary-gem] emerald + fire opal + sapphire + +[epic-gem] diamond + jacinth + ruby + +[common-art] gold ring with [common-gem] + bone/ivory statuette + gold bracelet + silver necklace + bronze crown + silver-plated sword + silk robe + +[uncommon-art] gold ring with [legendary-gem] + gold/silver necklace + gold bracelet studded with [rare-gem] + gold necklace adorned with [common-gem] + silver tiara/crown decorated with [common-gem] + ivory comb with embedded [rare-gem] + gold vestments + +[rare-art] gold/platinum ring with [legendary-gem] + gold/silver statuette adorned with [rare-gem] + gold necklace adorned with [rare-gem] + gold crown with [rare-gem] + gold chalice dusted with [common-gem] + ceremonial gold chest-plate + enormous [common-gem] + +[legendary-art] platinum ring with [epic-gem] + gold statuette with [legendary-gem] + mithral necklace with [legendary-gem] + adamantine crown with many [legendary-gem] + adamantine box containing [art-element] + black tunic woven of pure [art-element] + enormous [rare-gem] + +[epic-art] mithral ring with an astral diamond + gold statuette with eyes of [epic-gem] + gold necklace adorned with [epic-gem] + mithral tiara studded with [epic-gem] + cup of celestial cold that glows with inner light + silvery cloak of astral thread + enormous [legendary-gem] + +[mythic-art] bracelet formed of cold elemental [art-element] + gown woven of elemental [art-element] + brass ring with bound elemental [art-element] + celestial gold statuette with astral diamonds + royal attire of astral thread loaded with [epic-gem] + enormous [epic-gem] + +[art-element] shadow + lightning + flame + fire + water diff --git a/RGens/src/main/java/bjc/RGens/parser/sample-grammars/awe-names.gram b/RGens/src/main/java/bjc/RGens/parser/sample-grammars/awe-names.gram new file mode 100755 index 0000000..5ecc898 --- /dev/null +++ b/RGens/src/main/java/bjc/RGens/parser/sample-grammars/awe-names.gram @@ -0,0 +1,39 @@ +[name] [part] + [part] [part] + +pragma initial-rule [name] + +[part] battle + blade + blast + blood + claw + cold + cyber + dark + death + far + fire + force + hammer + hunt + ice + max + over + pain + shard + shot + siege + spike + star + storm + strike + stroke + sun + sword + ultra + war + wave + whip + wild + wolf diff --git a/RGens/src/main/java/bjc/RGens/parser/sample-grammars/4ed&d/.DS_Store b/RGens/src/main/java/bjc/RGens/parser/sample-grammars/diablo-ii/.DS_Store Binary files differindex 5008ddf..5008ddf 100644..100755 --- a/RGens/src/main/java/bjc/RGens/parser/sample-grammars/4ed&d/.DS_Store +++ b/RGens/src/main/java/bjc/RGens/parser/sample-grammars/diablo-ii/.DS_Store diff --git a/RGens/src/main/java/bjc/RGens/parser/sample-grammars/diablo-ii/diabloii.gram b/RGens/src/main/java/bjc/RGens/parser/sample-grammars/diablo-ii/diabloii.gram new file mode 100755 index 0000000..d16b4f9 --- /dev/null +++ b/RGens/src/main/java/bjc/RGens/parser/sample-grammars/diablo-ii/diabloii.gram @@ -0,0 +1,46 @@ +# Load other files +pragma load-sub-grammar [item-act] diabloiiitems.gram +pragma load-sub-grammar [perishables] diabloiiperish.gram +pragma load-sub-grammar [prefix] diabloiiprefixes.gram +pragma load-sub-grammar [suffix] diabloiisuffixes.gram + +[base-treasures] [base-treasure] + [base-treasure] as well as [base-treasure] + [base-treasure] or [base-treasure] + [base-treasure] , and [base-treasure] as well as [base-treasure] + [base-treasure] , [base-treasure] or [base-treasure] + +pragma initial-rule [base-treasures] + +[base-treasure] a(n) [item] + [non-item] + +[non-item] [money] + [money] + nothing + +[money] [amount] [money-type] + +[amount] 1 + 5 + 10 + 20 + 50 + 100 + 200 + 500 + 1000 + +[money-type] [metal-type] coin(s) + +[metal-type] copper + silver + gold + platinum + +[item] [item-act] + [item-act] of [suffix] + [item-act] of [suffix] and [suffix] + +pragma prefix-with [item] [prefix] +pragma prefix-with [item] [prefix] diff --git a/RGens/src/main/java/bjc/RGens/parser/sample-grammars/diablo-ii/diabloiiitems.gram b/RGens/src/main/java/bjc/RGens/parser/sample-grammars/diablo-ii/diabloiiitems.gram new file mode 100755 index 0000000..c6abc09 --- /dev/null +++ b/RGens/src/main/java/bjc/RGens/parser/sample-grammars/diablo-ii/diabloiiitems.gram @@ -0,0 +1,202 @@ +[item-act] [armor] + [headgear] + [accoutrements] + [shields] + [knives] + [swords] + [clubs] + [spears] + [polearms] + [axes] + [bows] + [crossbows] + [wands] + [staves] + [accessories] + [gems] + [inscriptions] + [perishables] + +[armor] cape + rags + cloak + robe + quilted armor + leather armor + hard leather armor + studded leather armor + ring mail + scale mail + chainmail + breast plate + light plate + splint mail + plate mail + field plate + ancient armor + gothic plate + full plate mail + +[headgear] cap + helm + mask + crown + +[headgear-kind] full + great + bone + +pragma prefix-with [headgear] [headgear-kind] + +[accoutrements] gloves + sash + boots + bracers + belt + gauntlets + girdle + +[acc-kind] leather + chain + plate + +pragma prefix-with [accoutrements] [acc-kind] + +[shields] buckler + shield + [shield-size] shield + [shield-type] shield + [shield-size] [shield-type] shield + +[shield-size] small + large + huge + +[shield-type] kite + spiked + bone + tower + gothic + +[knives] dagger + throwing knife + kris + +[swords] sword + sabre + blade + scimitar + falchion + claymore + +[sword-kind] long + broad + short + bastard + two-handed + +pragma prefix-with [swords] [sword-kind] + +[clubs] club + spiked club + mace + morning star + flail + war hammer + maul + malus + +[spears] javelin + spear + pilum + glaive + trident + pike + brandistock + +[polearms] bardiche + scythe + poleax + halberd + +[axes] axe + [axe-size] axe + [axe-type] axe + [axe-size] [axe-type] axe + +[axe-size] small + large + giant + +[axe-type] throwing + broad + battle + great + +[bows] arrow ( [amount] count) + bow + [bow-size] bow + [bow-type] bow + [bow-size] [bow-type] bow + +[bow-size] short + long + +[bow-type] hunter’s + composite + battle + war + +[crossbows] bolt ( [amount] count) + crossbow + [crossbow-type] crossbow + +[crossbow-type] light + repeating + heavy + +[wands] wand + [wand-type] wand + torch + scepter + [wand-type] scepter + +[wand-type] bone + yew + +[staves] staff + +[staff-type] short + long + gnarled + composite + battle + war + +pragma prefix-with [staves] [staff-type] + +[accessories] charm + ring + flag + orb + amulet + +[gems] [gem-type] + +[gem-quality] chipped + flawed + flawless + perfect + +[gem-type] amethyst + diamond + emerald + ruby + sapphire + topaz + +pragma prefix-with [gems] [gem-quality] + +[inscriptions] scroll + rune + book diff --git a/RGens/src/main/java/bjc/RGens/parser/sample-grammars/diabloii/diabloiiperish.gram b/RGens/src/main/java/bjc/RGens/parser/sample-grammars/diablo-ii/diabloiiperish.gram index 6f641d3..26117d6 100644..100755 --- a/RGens/src/main/java/bjc/RGens/parser/sample-grammars/diabloii/diabloiiperish.gram +++ b/RGens/src/main/java/bjc/RGens/parser/sample-grammars/diablo-ii/diabloiiperish.gram @@ -1,8 +1,8 @@ -<perishables> <perishable-type> of <perishable-effect> - <perishable-effect> <perishable-type> - <bodypart> of <perishable-effect> +[perishables] [perishable-type] of [perishable-effect] + [perishable-effect] [perishable-type] + [bodypart] of [perishable-effect] -<bodypart> heart +[bodypart] heart brain jawbone eye @@ -15,21 +15,21 @@ spleen soul -<perishable-type> potion +[perishable-type] potion oil herb elixir resin -<perishable-effect> <restore-effect> - light <restore-effect> - full <restore-effect> +[perishable-effect] [restore-effect] + light [restore-effect] + full [restore-effect] detox restoration flaming explosive fulminating - <gas-type> gas + [gas-type] gas acidic energizing strengthening @@ -98,11 +98,11 @@ permanence enchantment -<restore-effect> healing +[restore-effect] healing mana rejuvenation chi -<gas-type> rancid +[gas-type] rancid choking - strangling
\ No newline at end of file + strangling diff --git a/RGens/src/main/java/bjc/RGens/parser/sample-grammars/diabloii/diabloiiprefixes.gram b/RGens/src/main/java/bjc/RGens/parser/sample-grammars/diablo-ii/diabloiiprefixes.gram index d551af2..e9f2072 100644..100755 --- a/RGens/src/main/java/bjc/RGens/parser/sample-grammars/diabloii/diabloiiprefixes.gram +++ b/RGens/src/main/java/bjc/RGens/parser/sample-grammars/diablo-ii/diabloiiprefixes.gram @@ -1,18 +1,18 @@ -<prefix> <armor-class> - <saving-throw> - <foe-reaction> - <skill-improve> - <cursed> - <visibility> - <castability> - <magical-effect> - <personal-stat> - <to-hit> - <extra-damage> - <to-hit+damage> - <item-charges> +[prefix] [armor-class] + [saving-throw] + [foe-reaction] + [skill-improve] + [cursed] + [visibility] + [castability] + [magical-effect] + [personal-stat] + [to-hit] + [extra-damage] + [to-hit+damage] + [item-charges] -<armor-class> sturdy +[armor-class] sturdy fine strong grand @@ -24,7 +24,7 @@ holy godly -<saving-throw> tawny +[saving-throw] tawny azure crimson ocher @@ -54,8 +54,9 @@ obsidian topaz prismatic + bond -<foe-reaction> subduing +[foe-reaction] subduing wearying phasing depleting @@ -66,7 +67,7 @@ exhausting overwhelming -<skill-improve> fletcher’s +[skill-improve] fletcher’s slayer’s summoner’s monk’s @@ -77,7 +78,7 @@ priest’s arch-angel’s -<cursed> rusted +[cursed] rusted vulnerable glass hyena’s @@ -92,14 +93,14 @@ dull clumsy -<visibility> glowing +[visibility] glowing oracular unseen hidden veiled stalking -<castability> lizard’s +[castability] lizard’s spider’s raven’s snake’s @@ -112,12 +113,12 @@ fortified vulpine -<magical-effect> extending +[magical-effect] extending chrono augmenting catalyzing -<personal-stat> blue +[personal-stat] blue red orange white @@ -133,7 +134,7 @@ muscular healthy -<to-hit> bronze +[to-hit] bronze iron silver steel @@ -143,7 +144,7 @@ meteoric weird -<extra-damage> jagged +[extra-damage] jagged deadly vicious heavy @@ -153,7 +154,7 @@ ruthless merciless -<to-hit+damage> sharp +[to-hit+damage] sharp fine warrior’s soldier’s @@ -164,7 +165,7 @@ champion’s king’s -<item-charges> plentiful +[item-charges] plentiful jester’s bountiful -
\ No newline at end of file + diff --git a/RGens/src/main/java/bjc/RGens/parser/sample-grammars/diabloii/diabloiisuffixes.gram b/RGens/src/main/java/bjc/RGens/parser/sample-grammars/diablo-ii/diabloiisuffixes.gram index 2d051fc..66e264e 100644..100755 --- a/RGens/src/main/java/bjc/RGens/parser/sample-grammars/diabloii/diabloiisuffixes.gram +++ b/RGens/src/main/java/bjc/RGens/parser/sample-grammars/diablo-ii/diabloiisuffixes.gram @@ -1,46 +1,44 @@ -<suffix> of <suffix-act> - -<suffix-act> <damage-reduction> - <defense-effect> - <durability> - <hitpoints> - <ability-scores> - <cursed> - <recovery> - <memorization> - <combat-action> - <treasure-finder> - <light-source> - <hazard-reduction> - <damage-increase> - <min-damage> - <attack-speed> - <attack-effect> - <attack-restore> - <item-damage> - <weapon-proficency> - <weapon-use> - <spell-casting> - -<damage-reduction> health +[suffix] [damage-reduction] + [defense-effect] + [durability] + [hitpoints] + [ability-scores] + [cursed] + [recovery] + [memorization] + [combat-action] + [treasure-finder] + [light-source] + [hazard-reduction] + [damage-increase] + [min-damage] + [attack-speed] + [attack-effect] + [attack-restore] + [item-damage] + [weapon-proficency] + [weapon-use] + [spell-casting] + +[damage-reduction] health protection absorption life deflection -<defense-effect> thorns +[defense-effect] thorns spikes blocking -<durability> sturdiness +[durability] sturdiness structure the ages bonding unity -<hitpoints> the <hitpoints-act> +[hitpoints] the [hitpoints-act] -<hitpoints-act> jackal +[hitpoints-act] jackal fox jaguar wolf @@ -51,7 +49,7 @@ whale colossus -<ability-scores> vitality +[ability-scores] vitality dexterity magic strength @@ -82,7 +80,7 @@ the heavens the zodiac -<cursed> tears +[cursed] tears pain brittleness decay @@ -113,38 +111,38 @@ snail fool -<recovery> regeneration +[recovery] regeneration regrowth -<memorization> warding +[memorization] warding the sentinel guarding negation osmosis -<combat-action> the apprentice +[combat-action] the apprentice the magus balance stability harmony -<treasure-finder> greed +[treasure-finder] greed chance wealth fortune -<light-source> light +[light-source] light radiance the sun -<hazard-reduction> the thief +[hazard-reduction] the thief warmth remedy amelioration defiance purging -<damage-increase> craftsmanship +[damage-increase] craftsmanship quality maiming slaying @@ -154,19 +152,19 @@ carnage slaughter -<min-damage> measure +[min-damage] measure worth excellence performance -<attack-speed> readiness +[attack-speed] readiness alacrity swiftness quickness speed haste -<attack-effect> frost +[attack-effect] frost flame shock blight @@ -185,7 +183,7 @@ the bear the grizzly -<attack-restore> the leech +[attack-restore] the leech the claw the bat blood @@ -193,21 +191,21 @@ the vampire the lamprey -<item-damage> piercing +[item-damage] piercing breaking puncturing smashing bashing -<weapon-proficency> ease +[weapon-proficency] ease simplicity -<weapon-use> many +[weapon-use] many plenty -<spell-casting> <spell-number> magic +[spell-casting] [spell-number] magic -<spell-number> 1st +[spell-number] 1st 2nd 3rd 4th @@ -215,4 +213,4 @@ 6th 7th 8th - 9th
\ No newline at end of file + 9th diff --git a/RGens/src/main/java/bjc/RGens/parser/sample-grammars/diabloii/RGens.jar b/RGens/src/main/java/bjc/RGens/parser/sample-grammars/diabloii/RGens.jar Binary files differdeleted file mode 100644 index ce6a299..0000000 --- a/RGens/src/main/java/bjc/RGens/parser/sample-grammars/diabloii/RGens.jar +++ /dev/null diff --git a/RGens/src/main/java/bjc/RGens/parser/sample-grammars/diabloii/diabloii.gram b/RGens/src/main/java/bjc/RGens/parser/sample-grammars/diabloii/diabloii.gram deleted file mode 100644 index 5018377..0000000 --- a/RGens/src/main/java/bjc/RGens/parser/sample-grammars/diabloii/diabloii.gram +++ /dev/null @@ -1,238 +0,0 @@ -# Load other files -pragma load-sub-grammar <perishables> diabloii/diabloiiperish.gram -pragma load-sub-grammar <prefix> diabloii/diabloiiprefixes.gram -pragma load-sub-grammar <suffix> diabloii/diabloiisuffixes.gram - -pragma import-rule <suffix-act> <suffix> -# This first segment adds things to the collection - -<base-treasure> <item> - <non-item> - -<non-item> <money> - <money> - nothing - -<money> <amount> <money-type> - -<amount> 1 - 10 - 100 - 1000 - -<money-type> <metal-type> coins - -<metal-type> copper - silver - gold - platinum - -<item> <item-act> - <item-act> <suffix> - <item-act> <suffix> and <suffix-act> - -pragma prefix-with <item> <prefix> -pragma prefix-with <item> <prefix> - -<item-act> <armor> - <headgear> - <accoutrements> - <shields> - <knives> - <swords> - <clubs> - <spears> - <polearms> - <axes> - <bows> - <crossbows> - <wands> - <staves> - <accessories> - <gems> - <inscriptions> - <perishables> - -<armor> cape - rags - cloak - robe - quilted armor - leather armor - hard leather armor - studded leather armor - ring mail - scale mail - chainmail - breast plate - light plate - splint mail - plate mail - field plate - ancient armor - gothic plate - full plate mail - -<headgear> cap - helm - mask - crown - -<headgear-kind> full - great - bone - -pragma prefix-with <headgear> <headgear-kind> - -<accoutrements> gloves - sash - boots - bracers - belt - gauntlets - girdle - -<acc-kind> leather - chain - plate - -pragma prefix-with <accoutrements> <acc-kind> - -<shields> buckler - shield - <shield-size> shield - <shield-type> shield - <shield-size> <shield-type> shield - -<shield-size> small - large - huge - -<shield-type> kite - spiked - bone - tower - gothic - -<knives> dagger - throwing knife - kris - -<swords> sword - sabre - blade - scimitar - falchion - claymore - -<sword-kind> long - broad - short - bastard - two-handed - -pragma prefix-with <swords> <sword-kind> - -<clubs> club - spiked club - mace - morning star - flail - war hammer - maul - malus - -<spears> javelin - spear - pilum - glaive - trident - pike - brandistock - -<polearms> bardiche - scythe - poleax - halberd - -<axes> axe - <axe-size> axe - <axe-type> axe - <axe-size> <axe-type> axe - -<axe-size> small - large - giant - -<axe-type> throwing - broad - battle - great - -<bows> <amount> arrow(s) - bow - <bow-size> bow - <bow-type> bow - <bow-size> <bow-type> bow - -<bow-size> short - long - -<bow-type> hunter’s - composite - battle - war - -<crossbows> <amount> bolt(s) - crossbow - <crossbow-type> crossbow - -<crossbow-type> light - repeating - heavy - -<wands> wand - <wand-type> wand - torch - scepter - <wand-type> scepter - -<wand-type> bone - yew - -<staves> staff - -<staff-type> short - long - gnarled - composite - battle - war - -pragma prefix-with <staves> <staff-type> - -<accessories> charm - ring - flag - orb - amulet - -<gems> <gem-type> - -<gem-quality> chipped - flawed - flawless - perfect - -<gem-type> amethyst - diamond - emerald - ruby - sapphire - topaz - -pragma prefix-with <gems> <gem-quality> - -<inscriptions> scroll - rune - book
\ No newline at end of file diff --git a/RGens/src/main/java/bjc/RGens/parser/sample-grammars/diabloii/diabloii.res b/RGens/src/main/java/bjc/RGens/parser/sample-grammars/diabloii/diabloii.res deleted file mode 100644 index 06a69ee..0000000 --- a/RGens/src/main/java/bjc/RGens/parser/sample-grammars/diabloii/diabloii.res +++ /dev/null @@ -1,100 +0,0 @@ -nothing -1 copper coins -100 gold coins -knight’s heavy tower shield -1 silver coins -kite shield -nothing -1 platinum coins -nothing -nothing -augmenting bountiful small axe of of the mind and of puncturing -vulpine scroll of of the sun -nothing -1000 platinum coins -vulpine brandistock of of breaking -nothing -nothing -1 gold coins -1000 copper coins -nothing -fine long war bow of of slaying and of guarding -nothing -soldier’s bountiful staff of of spikes and of the jaguar -useless crysolite crown -10 copper coins -1000 silver coins -jester’s buckler -nothing -mighty massive spleen of omniscient -girdle of of ease -overwhelming tail of rejuvenation of of thorns and of deflection -100 copper coins -tough crossbow -1000 copper coins -drake’s long bow of of the bat -100 platinum coins -10 silver coins -10 platinum coins -1000 platinum coins -10 platinum coins -bronze buckler of of protection -nothing -vulnerable mask -nothing -nothing -plentiful bountiful bone mask -10 gold coins -1000 copper coins -1 copper coins -hidden slayer’s throwing knife of of simplicity -javelin of of regeneration -nothing -fine light crossbow of of thorns and of the leech -jasmine helm of of spikes -devious red mace -cloak of of the bat -10 copper coins -10 copper coins -iron jester’s staff of of smashing and of bashing -jester’s extending chipped emerald of of the lion and of absorption -10 gold coins -100 copper coins -10 silver coins -nothing -king’s cap of of the wolf -burgundy heavy crossbow -dagger of of the talon and of craftsmanship -veiled emerald of of structure -10 gold coins -1 gold coins -fletcher’s gold long staff -extending heavy crossbow of of blight and of the thief -10 platinum coins -gold vicious repeating crossbow of of the night -nothing -100 silver coins -10 silver coins -1 silver coins -spider’s buckler of of slaughter -100 copper coins -large spiked shield of of the sun and of haste -nothing -nothing -nothing -1000 bolt(s) of of measure -veiled 100 bolt(s) -fletcher’s howling sharpness oil -1 gold coins -10 gold coins -composite bow -drake’s flawless diamond of of fortune and of thorns -rusted bracers -subjugating scroll -ebony great crown of of plenty and of fortune -necromancer’s bracers of of fortune -1000 gold coins -nothing -oracular 100 bolt(s) of of health -snake’s great crown of of the eagle -archer’s jawbone of arcane of of the jester diff --git a/RGens/src/main/java/bjc/RGens/parser/sample-grammars/dungeon-enviroment.gram b/RGens/src/main/java/bjc/RGens/parser/sample-grammars/dungeon-enviroment.gram new file mode 100755 index 0000000..6ac9858 --- /dev/null +++ b/RGens/src/main/java/bjc/RGens/parser/sample-grammars/dungeon-enviroment.gram @@ -0,0 +1,140 @@ +[enviroment] [man-made] + [cave] + [natural] + [aquatic] + [aerial] + [supernatural] + +pragma initial-rule [enviroment] + +[man-made] a stone room + a spiral staircase surrounding a giant pit + an old dusty library + an aging unadorned altar + a power plant full of gears and pistons + a giant stone staircase + a room made of large timbers + a factory with neglected machines + an ancient battlefield littered with skeletons and rusted weapons + a stone bathroom + a kitchen with a tall ceiling + a room whose walls are covered with drawings + an abandoned theatre + a garbage dump filled with trash + a colossal statue that was abandoned before it was completed + a great hall decorated with murals and tapestries + a metro khan railway + a gallery displaying paintings and busts + a tomb lined with stone sarcophagi + a gate whose door is covered in rust + an abandoned prison + +[cave] a cave with nothing but bare rock + a cave filled with bats and flying bugs + an abandoned mineshaft + somebodys campsite + a cave filled with so many boulders they obscure vision + a cave that belches smoke + a limestone grotto echoing with the sound of running water + a cavern filled with faint, eerie starlight + a cave full of quicksand + smooth tunnels dug out by some kind of animal + a cave filled with cold water + a crack between giant boulders + a cave whose walls are covered with paintings of animals and hunters + a natural bridge spanning a vast chasm + a cave that has been filled in almost to the ceiling + a precipice overlooking a bottomless pit + a cavern whose walls are obscured by swarms of crawling bugs + a cave with numerous fossils buried in it + a cave filled with hot, flowing lava + a cavern made of crystal + the lair of some creature, scattered with skeletons + +[natural] a room covered in moss + a secret forest reverberating with the calls of animals + a corridor made of vines + a field of flowers filled with hollows + a room with tree branches growing through the walls + farmland stretching across an entire cave + a forest overgrown with weeds + a tall cavern with a giant tree whose trunk twists and turns + a cave with a seal breeding ground spread through it + a room whose walls are covered in mold + a room dotted in cacti + a patch of giant mushrooms + a cave with a giant tree growing in the middle of it + corridors filled with roaming herds of horse lizards + a room with piles of fallen leaves + a hedge maze + an overgrown bamboo grove + a room with suddenly falling pine trees + a room filled with tall, overgrown grass + a withered forest + rooms and corridors that feel like the inside of a giant tree + +[aquatic] a bridge crossing a roaring river + the inside of a rainbow colored coral reef + a room filled with waist high water + a water fountain and watering hole + a boiling lake + a room whose floor has turned into a tidal flat + a cistern thats filling with water + a room obscured by hot steam + a swamp that spreads throughout a cave + a ship whose rigging and hull have been neglected + an aquarium filled with tanks + a foul smelling sewer + a submerged cavern with ruins at the bottom + a pier and harbor + a lake with rafts and barges + a gient pit and waterfall + an incomplete aqueduct + a frozen lake swarming with penguins + a steamy hot spring + an old well covered with strange engravings + a room whose walls are covered with shellfish and barnacles + +[aerial] a room where its raining + a cave made of cheese + gardens piled up towards the sky + clotheslines covered in pristine white clothing that stretch forever + a giant beanstalk stretching towards the ceiling + a giant pit with dangling rope ladders and chains + a room where a fierce wind blows + on top of a cloud + a cave obscured by thick mist + a room with zero gravity + a room where snowfall is quickly accumulating + a skyway where space-time is warped + a corridor where you can hear the sounds of a windmill for keeping monsters away + a cave with ruins on its ceiling + a massive, roaring ventilation shaft + a room with occasional lightning flashes + a room where bird feathers flutter to the ground + a cave whose walls are painted to look like the sky + a room where one wall is a mirror + a cave with a shimmering aurora + a room with variable gravity + +[supernatural] an old six tatami mat room + a cramped karaoke box + a town where time has stopped + a gymnasium with a single ball rolling around + a room covered in hair + some sort of waiting room + the inside of a living creature + a small park with swings and a slide + a cheap-looking prefabricated bathroom + a room with a noisy upstairs neighbor + a room made of human bones + a room that breathes + a room built on an angle + a room in a love hotel + a room where someone is spying on you + a room where you can hear voices talking loudly + a room growing tentacles + an interrogatin room with a table and chair + an empty classroom + a room whose ceiling is a giant human + aa room that is constantly swaying diff --git a/RGens/src/main/java/bjc/RGens/parser/sample-grammars/fantasy-locations.gram b/RGens/src/main/java/bjc/RGens/parser/sample-grammars/fantasy-locations.gram new file mode 100755 index 0000000..63a7dca --- /dev/null +++ b/RGens/src/main/java/bjc/RGens/parser/sample-grammars/fantasy-locations.gram @@ -0,0 +1,231 @@ +pragma uniform + +[location-name] 4 [name1] [name2] + 2 [name1] [name1] [name2] + +pragma uniform + +pragma initial-rule [location-name] + +[name1] amber + angry + ardent + azure + bittersweet + black + blasted + brass + brilliant + broken + bronze + burnt + cornsilk + crimson + cold + dagger + dark + diamond + dreaming + drowsy + dry + dusty + [black-color] + emerald + fleet + fire + [gold-color] + good + grace + grand + gray + great + green + hammer + hasty + hazy + helm + high + holy + honey + hot + [ice-type] + iron + ivory + lilac + little + kings + maple + mighty + night + [oak-type] + onyx + peaceful + pearl + prancing + quartz + queens + [rain-type] + red + [rose-type] + royal + ruby + sable + sacred + sage + sand + sapphire + screaming + shale + shininh + short + [silk-type] + silver + sleeping + small + snow + solid + steel + sterling + storm + strong + summer + swift + sword + tawny + thunder + topaz + tranquil + vast + verdant + vile + violet + virgin + whisper + white + wicked + wild + wind + winter + xanthous + +[name2] beach + bear + boar + bluff + brook + butte + castle + cave + circle + cliff + crag + creek + crescent + crevasse + crow + crown + coast + dale + dark + dragon + dunes + eagle + elk + field + fist + ford + forest + fountain + fox + gale + gauntlet + glade + goose + griffin + grove + gulf + hall + hedge + hill + hold + hole + isle + keep + lake + light + lion + lord + maiden + march + marsh + mare + maze + meet + mark + mine + mirror + oasis + orchard + owl + path + peak + plain + point + pony + pool + prison + quest + reach + reef + ridge + ring + river + road + rock + rush + sea + serpent + shell + shield + shore + sky + square + stag + star + steed + stone + stream + sun + tear + tiger + tower + unicorn + vale + valley + wall + wash + water + way + wolf + wood + +[silk-type] silk + silken + +[rose-type] rose + rosy + +[rain-type] rain + rainy + +[oak-type] oak + oaken + +[ice-type] ice + icy + +[black-color] ebon + ebony + +[gold-color] gold + golden diff --git a/RGens/src/main/java/bjc/RGens/parser/sample-grammars/genre-fiction.gram b/RGens/src/main/java/bjc/RGens/parser/sample-grammars/genre-fiction.gram new file mode 100755 index 0000000..09b0850 --- /dev/null +++ b/RGens/src/main/java/bjc/RGens/parser/sample-grammars/genre-fiction.gram @@ -0,0 +1,164 @@ +[genre-fict] in a [setting] a young [person] stumbles across a(n) [place] [genre-fict2] + +pragma initial-rule [genre-fict] + +[genre-fict2] which spurs him into conflict with [antagonist] [genre-fict3] + +[genre-fict3] with the help of a [female] and her [gear] culminating in [genre-fict4] + +[genre-fict4] culminating in [climax] . This is [title] + +[setting] [setting-adj] [setting-dest] + +[setting-adj] néo-noir + alternate-history + ancient + dystopian + metaphorical + anachronistic + leather-clad + coal-powered + dragon-filled + shrill + +[setting-dest] america + japan + soviet russia + victorian Britain + medieval Europe + aztec empire + atlantis + terraformed mars + antartica + one-way spaceflight + outer rim world + set from road warrior + +[person] flying message courier + student of metaphysics + milquetoast office drone + schlub with mild OCD + farm boy with dreams + techno-obsessed geek + brooding loner + wisecracking mercenary + idealistic revolutionary + journeyman inventor + collector of oddities + author self-insert + +[place] [place-pref] [place-suff] + +[place-pref] magic + arcane + dusty + crazy + alien + enchanted + otherworldly + dream-inducing + encrypted + time-traveling + exiled + talking + +[place-suff] diadem + prophecy + tome + old man + artifact + sword + portal + drug + data feed + soldier + angel + fish + +[antagonist] a megalomaniacal dictator + a government conspiracy + a profit-obsessed corporation + a sneering wizard + supernatural monsters + computer viruses made real + murderous robots + an army led by a sadist + forces that encourage conformity + a charismatic politician on the rise + humanity’s selfish nature + his own insecurity vis-a-vis girls + +[female] [female] + [female] [fem-suffix] + [fem-prefix] [female] + [fem-prefix] [female] [fem-suffix] + +[fem-prefix] sarcastic + tomboyish + shape-shifting + leather-clad + bookish + cherubic + +[female] female + girl + +[fem-suffix] techno-geek + mechanic + assassin + in shades + who’s always loved him + scholar with mousy brown hair + with pigtails and spunk + who inexplicably becomes attracted to the damaged protagonist for unstated reasons + +[gear] wacky pet + welding gear + closet full of assault rifles + reference book + cleavage + facility with magic + condescending tone + discomfort in formal wear + propensity for being captured + +[climax] a fistfight atop a tower + a daring rescue preceding a giant explosion + a heroic sacrifice that no one will ever remember + a philosophical argument punctuated by violence + a false victory with the promise of future danger + the invocation of a spell at the last possible moment + eternal love professed without irony + the land restored to health + authorial preaching through the mouths of the characters + convoluted nonsense that squanders the reader’s goodwill + wish-fulfillment solutions to real-world problems + a cliffhanger for the sake of prompting a series + +[title] [tit-1] [tit-2] + +[tit-1] chrono + neuro + aero + cosmo + reve + necro + cyber + astro + psycho + steam + meta + black + +[tit-2] punk + mech + noiac + (o)poli + naut + phage + droid + bot + blade + tron + cancer + War diff --git a/RGens/src/main/java/bjc/RGens/parser/sample-grammars/horror.gram b/RGens/src/main/java/bjc/RGens/parser/sample-grammars/horror.gram new file mode 100644 index 0000000..1e73911 --- /dev/null +++ b/RGens/src/main/java/bjc/RGens/parser/sample-grammars/horror.gram @@ -0,0 +1,33 @@ +[horror] [first] [second] [third] + +pragma initial-rule [horror] + +[first] attack of the + invasion of the + day of the + beware! The + terror of the + death by + curse of the + earth vs. the + return of the + +[second] disco + massive + worrying + flying + flesh eating + windy + mutant + hairy + overly keen + +[third] vampires + swamp beasts + boy bands + muffins + werewolves + zombies + sock puppets + death bots + snuggle badgers
\ No newline at end of file diff --git a/RGens/src/main/java/bjc/RGens/parser/sample-grammars/martial-arts.gram b/RGens/src/main/java/bjc/RGens/parser/sample-grammars/martial-arts.gram new file mode 100755 index 0000000..ac22306 --- /dev/null +++ b/RGens/src/main/java/bjc/RGens/parser/sample-grammars/martial-arts.gram @@ -0,0 +1,39 @@ +[art-name] [art-1] [art-2] + [art-1] [art-3] + [art-2] [art-3] + [art-1] [art-2] [art-3] + +pragma initial-rule [art-name] + +[art-1] running + hungry + angry + naked + drunken + fortunate + lazy + swift + powerful + enlightened + +[art-2] ox + tiger + dragon + crane + monkey + turtle + manticore + serpent + hummingbird + demon + +[art-3] fist + stance + spinning kick + attack + technique + style + dance + movement + touch + fu diff --git a/RGens/src/main/java/bjc/RGens/parser/sample-grammars/mary-sue.gram b/RGens/src/main/java/bjc/RGens/parser/sample-grammars/mary-sue.gram new file mode 100755 index 0000000..b01a3ca --- /dev/null +++ b/RGens/src/main/java/bjc/RGens/parser/sample-grammars/mary-sue.gram @@ -0,0 +1,494 @@ +[mary-sue] she appears to be a normal [normal-desc] . [mary-sue2] + she appears to be a normal [normal-desc] [opt-dress] [mary-sue2] + +pragma initial-rule [mary-sue] + +[normal-desc] schoolgirl + soldier + pirate + nun + nurse + teacher + teenager + martial artist + scientist + singer + artist + student + model + lawyer + journalist + mechanic + raver + woman + girl + cheerleader + sumo wrestler + cook + marine biologist + single mother + +[opt-dress] [except-dress] + [half-dress] + [except-dress] [half-dress] + +[except-dress] except she dress like a [exdress-1] [exdress-2] + except she dress like a [exdress-1] + except she dress like a [exdress-2] + +[exdress-1] gothic lolita + bloody nurse + vampire + raver + gangsta + ninja + princess + pirate + mad scientist + gestapo officer + elf + sorceress + witch + commando soldier + cat-girl + fox-girl + druidess + schoolgirl + j-pop star + skateboarder + skinhead + punk roc + pole dancing + biker + innuit + +[exdress-2] gangsta + raver + princess + gothic lolita + pirate + sorceress + witch + druidess + vampire + cat-girl + mad scientist + skateboarder + bloody nurse + fox-girl + j-pop star + schoolgirl + commando soldier + ninja + gestapo officer + elf + construction worker + shaman + monk + dominatrix + businesswoman + +[half-dress] but this is just to take away attention from the fact that she is a half [hdress] + +[hdress] Vampire. + Unicorn. + Dragon. + Elf. + Orc. + Xenomorph. + Batgirl. + Japanese. + Werewolf. + Android. + Ghost. + Fox-girl. + Slime-girl. + Pixie. + Angel. + Demon. + Fire-elemental. + Stone-elemental. + Dwarf. + Zergling. + Illithid. + Lizard-woman. + Giant. + Zombie. + Na’vi. + +[mary-sue2] She is [desc] and she will fight her enemies with her power to [power-desc] [mary-sue3] + +[desc] [desc-req] + [desc-req] [desc-opt] + +[desc-req] a megalomaniac + a secret super-soldier + an interdimensional traveler + a space traveler + a scientific experiment gone wrong + the last of her kind + chosen by destiny + a rumored demo-goddess + a misunderstood genius + created to be the next step in mankind’s evolution + unknowingly the queen of her kind + an amnesiac + a secret agent + the leader of a ninja clan + wanted in another galaxy + a fortune teller + the daughter of the president + a living time-bomb + a holographic projection + a chaos cultist + one of a hundred nearly identical clones + a mysterious orphan + the living key to open up hell + a goddess cast down to earth to become mortal + +[desc-opt] who is the last of her kind + born from a scientific experiment gone wrong + who reincarnates in a new body every 666 years + with a mysterious past + from another dimension + worshipped by a small cult + raised by wild animals + from another planet + working for the church + destined to save the world + falsely accused of murdering her father + created by nazi scientists by world war II + devoted to the gods of chaos + who is part of a secret organization + megalomaniac + with no memory of her childhood + created to be the next step in mankind’s evolution + foretold in ancient prophesies + who is also rumored to be a demo-goddess + who has lived for over 1000 years + in search of true love + and her blood is the cure for cancer + in search of her kidnapped sister + cursed by god + traveling through time + +[power-desc] [power-1] + [power-1] and [power-1] + +[power-1] [power-p1] [power-p2] + +[power-p1] summon + transform others into + incinerate + talk to + absorb the power of + shape-shift into + destroy + corrupt + seduce + befriend + heal + construct + banish + disintegrate + devour + control + frighten + ride + freeze + shrink + become invisible to + command + follow the scent of + magically imprison + +[power-p2] demons + gods + blood + angels + robots + dinosaurs + ghosts + wild animals + xenomorphs + mechas + vampires + werewolves + unicorns + adamantium + weapons + slime + elementals + retards + pedophiles + clones of herself + computers + centaurs + dragons + regular humans + plants + +[mary-sue3] . Her friends and enemies call her [name] [mary-sue4] + +[name] [name1] + [name1] [name2] + +[name1] star + angel + demon + sparkle + magic + mecha + power + peace + soul + blood + awesome + raven + unicorn + light + dark + summer + dragon + fire + night + day + shadow + thunder + mystery + love + cancer + +[name2] hair + eyes + face + claw + fur + fang + flower + lover + beast + girl + woman + princess + murderer + bringer + mistress + caller + singer + creator + lips + tits + thighs + hammer + dream + ender + stealer + +[mary-sue4] . Her constant companion is a [comp] . + +[comp] [comp-name] + +pragma suffix-with [comp] [comp-also] +pragma suffix-with [comp] [comp-weapon] + +[comp-also] who is also [compal-desc] + +[comp-weapon] . His/her favored weapon is a(n) [comp-weapon1] + +[comp-name] [comp-name1] + [comp-prefix] [comp-name1] + +[comp-prefix] [comp-prefix1] + [comp-prefix2] + [comp-prefix1] [comp-prefix2] + [comp-prefix2] [comp-prefix1] + +[comp-name1] dragon + mecha + vampire + doll + white wolf + fox + zombie + space-marine + werewolf + robot + cat + dog + spaceship + faerie + vietnam veteran + unicorn + demon + angel + xenomorph + super saiyan + miniature elder god + fertility goddess + neck bearded man + wizard + giant + +[comp-prefix1] psychic + mexican + over-analytical + enslaved + mysterious + catatonic + angsty + depressed + spirit + friendly + young + ancient + flying + living + talking + intelligent + hyperactive + befriended + magical + sparkling + brain-washed + special needs + huge + murderous + amorous + +[comp-prefix2] young + talking + sparkling + living + intelligent + spirit + friendly + brain-washed + befriended + angsty + special needs + magical + psychic + enslaved + murderous + over-analytical + flying + catatonic + amorous + mysterious + ancient + invisible + mexican + huge + depressed + +[compal-desc] her lover + secretly her nemesis + her legal guardian + a projection of her evil self + secretly in love with her + her means of transport + her guardian angel + her best friend forever + destined to die by her hand + the reason she lives + herself from the future + her mentor + part of her soul + one of her failed experiments + a figment of her imagination + her father + her superior officer + her stalker + her mother + both her mother and father + soulmate + personal trainer + economic consultant + the phylactery of her soul + her bondage slave + +[comp-weapon1] [compweap-prefix] [compweap-type] + +[compweap-type] chainsaw + spear + katana + magnum + throwing star + dagger + mallet + machine gun + minion + axe + club + razor + whip + guitar-axe + knuckle iron + sword + staff + bow + javelin + charm + poleax + sniper rifle + flamethrower + rapier + scissors + +[compweap-prefix] [compweap-1] + [compweap-2] + [compweap-1] [compweap-2] + [compweap-2] [compweap-1] + +[compweap-1] poisoned + blessed + holy + legendary + burning + glowing + golden + silver + steam-powered + demonic + conscious + magical + huge + two-handed + dragonbone + adamantium + bio-mechanical + ancient + acidic + self-replicating + dark steel + freezing + spirit + shining + unbreakable + +[compweap-2] glowing + magical + legendary + acidic + silver + huge + demonic + blessed + bio-mechanical + poisoned + dragonbone + spirit + cursed + self-replicating + burning + darksteel + shining + conscious + unbreakable + freezing + steam-powered + ancient + holy + adamantium + two-handed diff --git a/RGens/src/main/java/bjc/RGens/parser/sample-grammars/part-creature.gram b/RGens/src/main/java/bjc/RGens/parser/sample-grammars/part-creature.gram new file mode 100755 index 0000000..d729e44 --- /dev/null +++ b/RGens/src/main/java/bjc/RGens/parser/sample-grammars/part-creature.gram @@ -0,0 +1,77 @@ +[full-creature] [creature-choice] + +[creature-choice] [creature] + [characteristic] [creature] + [ability] [creature] + [ability] [characteristic] [creature] + +pragma initial-rule [full-creature] + +[ability] flying + invisible + silent + ethereal + telepathic + eye beams + swallow whole + poisonous + regenerating + fire breathing + anti-magic + petrifying + soul-eating + frightful presence + confusing + flesh grinding + radioactive + rust + acidic + nauseating + [ability] and [ability] + +[characteristic] zombie + vampire + swarm + samurai + barbarian + wizard + ninja + were [characteristic] + robot + rabid + demonic + awakened + feral + pirate + half-dragon + gelatinous + dire + shadow + rich + [characteristic] and [characteristic] + +[creature] shark + bear + lion + badger + wolf + ape + squid + snake + weasel + tyrannosaurus + crocodile + bee + spider + [elemental] + mimic + dire penguin + giant mini space hamster + camel + little girl + classy kobold + +[elemental] fire + earth + water + air diff --git a/RGens/src/main/java/bjc/RGens/parser/sample-grammars/pokeattacks.gram b/RGens/src/main/java/bjc/RGens/parser/sample-grammars/pokeattacks.gram new file mode 100755 index 0000000..7f943ba --- /dev/null +++ b/RGens/src/main/java/bjc/RGens/parser/sample-grammars/pokeattacks.gram @@ -0,0 +1,70 @@ +[attack] [word-1] [word-1] + [word-2] [word-2] + [word-1] [word-2] + [word-2] [word-1] + +pragma initial-rule [attack] + +pragma prefix-with [attack] [word-1] +# pragma prefix-with [attack] [word-2] + +# pragma suffix-with [attack] [word-1] +pragma suffix-with [attack] [word-2] + +[word-1] acid + aerial + air + ancient + aqua + aura + aurora + baton + beat + belly + blast + blaze + body + bone + comet + confuse + cotton + cross + dark + destiny + diamond + dizzy + doom + dragon + dream + dynamic + earth + egg + electric + energy + +[word-2] terrain + ball + impulse + bomb + speed + lock + wind + stinger + dance + gambit + blast + fang + punch + spin + burst + charge + wheel + blitz + cannon + drink + eye + shot + sun + slap + wrath + blade diff --git a/RGens/src/main/java/bjc/RGens/parser/sample-grammars/rune.gram b/RGens/src/main/java/bjc/RGens/parser/sample-grammars/rune.gram new file mode 100755 index 0000000..05332e9 --- /dev/null +++ b/RGens/src/main/java/bjc/RGens/parser/sample-grammars/rune.gram @@ -0,0 +1,109 @@ +[rune-string] [rune-2] + [rune-1] [rune-2] + [rune-1] [rune-2] [rune-3] + [rune-2] [rune-3] + +pragma initial-rule [rune-string] + +pragma prefix-with [rune-string] [rune-1] +pragma suffix-with [rune-string] [rune-3] + +[rune-1] a dagger plunged into + vines growing out of + a crown perched atop + crossed swords over + a pair of hands surrounding + demonic eyes peering out of + blue lightning arcing out of + an axe thrust into + a hand bursting from + a tentacle reaching out of + a spear thrust through + a trumpet thrust through + tiny stars surrounding + a jewel within + a hand inside + a sword inside + a hand within + an arrow piercing + a hand clutching + +[rune-2] a skull + a treasure chest + a circle cut into three parts + a pyramid + a triangle + a mushroom + a grinning mask + a clenched fist + a giant human eye + a shield + a circle + a pentagram + a pentacle + a flagon + a circle cut in half + a semicircle + a heart + a large star + a wave + a diamond + an octagon + a scroll + a spiral + a tree + a rose + a helmet + a book + a staff + a hammer + a bone + a cat’s face + a wolf’s head + a large mouth + an upward-pointing arrow + a downward-pointing arrow + an arrow pointing two directions + a circle cut into four parts + a ship + a six-pointed star + a seven-pointed star + a pentagon + +[rune-3] girded by laurels + sheathed in flames + glowing like the sun + emblazoned with a demonic face + flanked by catlike wings + in the coils of a serpent + swaddled in tentacles + flanked by feathered wings + inscribed within a red circle + inscribed within a magic circle + inscribed within a long rectangle + covered with spikes and spines + haloed in light + half in shadow + with coins all around it + with curved knives all around it + wrapped in a pair of rings + atop a tower + next to a writhing snake + atop a mountain + next to a crescent moon + made of thin red lines + made of thin blue lines + made of thin green lines + made of thin black lines + all done as a silhouette + wrapped in a cloud + dripping with blood + flanked by swords + flanked by skulls + flanked by arrows + within a ring made by a whip + within a ring made by a snake, eating its own tail + atop crossed bones + above a trident + below two spears + covered in insects diff --git a/RGens/src/main/java/bjc/RGens/parser/sample-grammars/superhero.gram b/RGens/src/main/java/bjc/RGens/parser/sample-grammars/superhero.gram new file mode 100755 index 0000000..c4f6e15 --- /dev/null +++ b/RGens/src/main/java/bjc/RGens/parser/sample-grammars/superhero.gram @@ -0,0 +1,142 @@ +[superhero] [first-part] [second-part] + [second-part] [first-part] + +pragma initial-rule [superhero] + +pragma suffix-with [superhero] [third-part] +pragma suffix-with [superhero] [fourth-part] + +[first-part] Captain + Yellow + Star + Incredible + Lightning + Silver + Phoenix + Wonder + Super + Green + Courageous + Iron + Black + Invisible + Professor + Night + Silent + Red + Thunder + General + Time + Scarlet + Grand + Arcane + White + [gender-title] + +[gender-title] Mr + Ms + Mister + Miss + Dr + Doctor + Professor + Lord + Lady + King + Queen + Prince + Princess + +[second-part] Hawk + Phantom + Fist + Hex + Soldier + Raven + Patriot + Hope + Stallion + Chimera + Archer + Raptor + Lord + Ninja + Eagle + Bolt + Boulder + Knight + Brain + Fusion + Crusader + Shepherd + Flame + Orchid + Rider + Torch + +[third-part] The [third-part-act] + +[third-part-act] Champion + Protector + Wielder + Marksman + Fated + Lover + Celebrated + Prodigy + Guardian + Inquisitor + Legend + Returned + Light + Warrior + Sacred + Victor + Triumphant + Mystic + Amazing + Incomparable + Lord + Mysterious + Face + Divine + Magnificent + Virtuous + Survivor + Courageous + Steward + Keeper + Squire + +[fourth-part] of [fourth-part-act] + +[fourth-part-act] the [fourth-part-the] + Destiny + Justice + Humanity + Men + Women + Freedom + Knowledge + Earth + Eternal Fire + +[fourth-part-the] Realm + Chalice + Law + Future + Tides + Poor + Trees + Universe + Seven + Past + Isles + Gauntlet + Dominion + Living + Galaxy + Ancients + Archive + + diff --git a/RGens/src/main/java/bjc/RGens/parser/sample-grammars/tarotcard.gram b/RGens/src/main/java/bjc/RGens/parser/sample-grammars/tarotcard.gram index 4a203fc..9fd68a8 100644..100755 --- a/RGens/src/main/java/bjc/RGens/parser/sample-grammars/tarotcard.gram +++ b/RGens/src/main/java/bjc/RGens/parser/sample-grammars/tarotcard.gram @@ -1,25 +1,30 @@ -<card> <title> - <noun> - <title> <adjective> - <noun> <adjective> - <title> <adjective> <noun> +[card] [adjective-of] [title] + [adjective-of] [noun] [title] + [noun] + [noun] [adjective] + [noun] [title] + [noun] [adjective] [noun] + [title] [adjective] + [title] [adjective] [noun] -<title> <male-title> - <female-title> +pragma initial-rule [card] -<male-title> emperor +[title] [male-title] + [female-title] + +[male-title] emperor king knight priest -<female-title> empress +[female-title] empress queen princess priestess -<adjective> of <adjective-of> +[adjective] of [adjective-of] -<adjective-of> shimmering +[adjective-of] shimmering blazing infinite whispering @@ -30,7 +35,7 @@ dancing lost -<noun> darkness +[noun] darkness light waters stars @@ -41,4 +46,4 @@ moons winds hearts - spirits
\ No newline at end of file + spirits diff --git a/RGens/src/main/java/bjc/RGens/parser/sample-grammars/technobabble.gram b/RGens/src/main/java/bjc/RGens/parser/sample-grammars/technobabble.gram index 28c6697..451f1f8 100644..100755 --- a/RGens/src/main/java/bjc/RGens/parser/sample-grammars/technobabble.gram +++ b/RGens/src/main/java/bjc/RGens/parser/sample-grammars/technobabble.gram @@ -1,13 +1,17 @@ -<main> <part-prefix> <part-suffix> <part-problem> +[main] [part-prefix] [part-suffix] [part-problem] + [part-prefix] [part-problem] + [part-suffix] [part-problem] -<part-prefix> primary +pragma initial-rule [main] + +[part-prefix] primary compression grav hydraulic reg power -<part-suffix> boot +[part-suffix] boot coupling housing stabilizer @@ -16,7 +20,7 @@ converter feed -<part-problem> cracked +[part-problem] cracked wedged collapsed bent @@ -25,4 +29,4 @@ seized jammed burnt - exploded
\ No newline at end of file + exploded diff --git a/RGens/src/main/java/bjc/RGens/parser/sample-grammars/zadrons-pouch.gram b/RGens/src/main/java/bjc/RGens/parser/sample-grammars/zadrons-pouch.gram new file mode 100755 index 0000000..48b6e07 --- /dev/null +++ b/RGens/src/main/java/bjc/RGens/parser/sample-grammars/zadrons-pouch.gram @@ -0,0 +1,213 @@ +[items] [item] + [item] and a [item] + [item] and a [item] as well as a [item] + [item] or [item] + [item] or [item] or maybe [item] + +pragma initial-rule [items] + +[item] [egg] + [glove] + [crys-sphere] + [rock] + [figurine] + [vial] + [mini-weapon] + [bag] + [card] + [rope] + [box] + [wand] + +[bag] bag of [bag-type] + [sack-type] sack + [purse-type] purse + +[bag-type] holding + tricks + useful items + devouring + dwarf-kind + invisible cloth + monster summoning + +[sack-type] lunch + recursive + +[purse-type] everfull + +[box] [box-type] box + cube of [box-type] + +[box-type] limited-force + frost-resisting + morphing + self-destructing + pandora + panicking + +[card] card of [card-type] + [card-type] card + +[card-type] fate + teleporting + elusive treasure + spell-storing + many-thing + imprisoning + messaging + bounty + +[crys-sphere] [sphere-type] spheres + [sphere-type] sphere + lens of [lens-type] + [crystal-type] sphere + crystal of [crystal-type] + crystal ball + crystal ball of [crys-suffix] + +[sphere-type] microphonic + seeing-eye + +[lens-type] detection + +[crystal-type] prison + radar + +[crys-suffix] jumping + +[egg] [egg-type] egg + +[egg-type] copper + stone + golden + white + white/pink + glass + +[figurine] [fig-material] [fig-animal] + +[fig-material] golden + onyx + serpentine + ivory + marble + bronze + jade + limestone + +[fig-animal] lion + dog + owl + goat + elephant + warrior + palace + leprechaun + +[glove] gauntlets of [gauntlet-type] + gloves of [glove-type] + [glove-type] gloves + +[gauntlet-type] dexterity + power + +[glove-type] pushing + choking + bigby + stunning + +[mini-weapon] minature [weapon-type] + small [weapon-type] + tiny [weapon-type] + [sling-type] sling + [weapon-type] + +[weapon-type] boomerang + arrow + net + catapult + hammer + sword + club + +[sling-type] seeking + +[rock] [pebble-type] pebble + stone of [stone-type] + [stone-type] stone + brick of [brick-type] + [geode-type] geode + +[pebble-type] inscribed + elemental control + +[stone-type] good-luck + weight + blind-defense + metal-clinging + +[brick-type] flying + +[geode-type] ioun + +[rope] [rope-type] rope + rope of [rope-type] + ball of [string-type] [string-kind] + +[rope-type] trick + entangling + climbing + dancing + tripping + snaring + levitating + self-entangling + +[string-type] endless + +[string-kind] string + yarn + +[vial] vial of [vial-type] + [vial-type] vial + [bottle-type] bottle + [flask-type] flask + +[vial-type] holding + trapping + experience + unnatural regeneration + +[bottle-type] ever-smoking + wheezing + blank potion + +[flask-type] iron + +[wand] [wand-type] wand + wand of [wand-type] + canceling [wand-type] wand + +[wand-type] magic missile + [spell-1] + [spell-2] + gusting + life-detecting + zadron + +[spell-1] frost + fire + lightining + fear + illumination + polymorphing + conjuration + paralyzing + +[spell-2] [spell2-type] detecting + +[spell2-type] magic + enemy + secret door/trap + |
