summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBenjamin Culkin <scorpress@gmail.com>2024-01-31 20:01:17 -0500
committerBenjamin Culkin <scorpress@gmail.com>2024-01-31 20:01:17 -0500
commite940640b8a42d2203bbedcc2e296a4f279a9e1dc (patch)
treeeb4a69f6fa74b2e9aa8e7d7e59a533e3764d5c11
parent0f1e9c56ffc745ce01890e834f97c48039a3e7b4 (diff)
Add a new grammar and tweak a few things
-rw-r--r--data/new-sample-grammars/artificers-handbook.gram666
-rw-r--r--data/server-config-sample.gcfg2
-rwxr-xr-x[-rw-r--r--]dotest.sh0
-rw-r--r--pom.xml19
4 files changed, 685 insertions, 2 deletions
diff --git a/data/new-sample-grammars/artificers-handbook.gram b/data/new-sample-grammars/artificers-handbook.gram
index a951479..2ecb8ae 100644
--- a/data/new-sample-grammars/artificers-handbook.gram
+++ b/data/new-sample-grammars/artificers-handbook.gram
@@ -2,6 +2,8 @@
[magic-item-purpose]
[magic-item-loss]
+pragma export-rule [magic-item]
+
[magic-item-creation] [name1] [name2] originally made the item as a gift for [hero1] [hero2]
The item was made by [name2] [title1] for a [group1] [group2]
Crafted by [nameless], the item was later stolen by [hero1] [title2]
@@ -27,3 +29,667 @@
Alexis
Alicia
Asha
+ Augustus
+ Averyn
+ Beeker
+ Bimpottin
+ Caduceus
+ Clarissa
+ Colin
+ Cornelius
+ Dierdre
+ Dolen
+ Dominic
+ Ebenezer
+ Farooq
+ Felix
+ Fitz
+ Griswald
+ Gwendolyn
+ Humphrey
+ Isaac
+ Isabel
+ Jebeddo
+ Jed
+ Khalid
+ Lars
+ Maleficent
+ Melir
+ Mordecai
+ Morgan
+ Natasha
+ Orson
+ Oskar
+ Rain
+ Sabrina
+ Sand
+ Seraphina
+ Tabitha
+ Talien
+ Thaddeus
+ Tijan
+ Tucker
+ Ulfgar
+ Vickers
+ Welby
+ Xing
+ Yoshi
+ Zook
+
+[name2] Abrahms
+ Alabama
+ Alkene
+ Ambrose
+ Backbiter
+ Blackavar
+ Blackburn
+ Blackstone
+ Carmichael
+ Coldwind
+ Copperbeard
+ Cottingham
+ Davenport
+ Diamondheart
+ Featherblade
+ Foehammer
+ Frithindril
+ Garrick
+ Goldwind
+ Goodman
+ Greenthumb
+ Greyson
+ Grimalkin
+ Hawkmoon
+ Hearthstone
+ Horvath
+ Ironhammer
+ Ironhand
+ Jayinthi
+ Jebediah
+ Kingfisher
+ Mason
+ Melkos
+ Ravenwing
+ Redfern
+ Rocktooth
+ Serovar
+ Silvermoon
+ Smithers
+ Steeltongue
+ Stonefist
+ Sweetwater
+ Thorn
+ Underwood
+ Vileback
+ Farseer
+ Sagewood
+ Seasprite
+ Zuljin
+ Luckwarden
+
+[title1] the Sage
+ of the Ice
+ of the Marsh
+ of the Plains
+ of the Rock
+ of the Trees
+ of the Winds
+ the Alchemist
+ the Conjurer
+ the Black
+ the Calm
+ the Contemplative
+ the Dark
+ the Diabolic
+ the Divine
+ the Dread
+ the Enchanter
+ the Evoker
+ the Fey
+ the Fiendish
+ the Foul
+ the Learned
+ the Glad
+ the Gray
+ the Grim
+ the Healer
+ the Holy
+ the Illusionist
+ the Just
+ the ight
+ the Mad
+ the Mage
+ the Mindful
+ the Mystic
+ the Necromancer
+ the Unclean
+ the Phobic
+ the Pure
+ the Putrescent
+ the Skilled
+ the Smith
+ the Spry
+ the Summoner
+ the Urgent
+ the Vile
+ the White
+ the Wilder
+ the Wise
+ the Woeful
+ the Zephyr
+
+[hero1] Aki
+ Amber
+ Angelus
+ Aristopheles
+ Arrias
+ Arthur
+ Asmodai
+ Azure
+ Barash
+ Benju
+ Brom
+ Cathryn
+ Cedric
+ Corbin
+ Cord
+ Corwin
+ Cubal
+ Dicham
+ Eric
+ Gabrielle
+ Gavan
+ Gunther
+ Hiram
+ Jacob
+ Katherine
+ Khan
+ Kyriel
+ Lorien
+ Lucas
+ Lynn
+ Magius
+ Maximus
+ Mazyar
+ Michal
+ Nakae
+ Oberon
+ Reddist
+ Sebastian
+ Serrano
+ Sheena
+ Stone
+ Strom
+ Subotai
+ Tatiana
+ Thane
+ Thoth
+ Trevor
+ Uthgar
+ Valin
+ Xander
+
+[hero2] Arrowcatcher
+ Bloodweaver
+ Earthshaker
+ Faithkiller
+ Fiendhunter
+ Foehammer
+ Kinslayer
+ Lightbringer
+ Magebane
+ Oathbreaker
+ Peacemaker
+ Soulcatcher
+ Sunchaser
+ Swordbreaker
+ Truthseeker
+ Vilewarden
+ the Archer
+ the Assassin
+ the Avatar
+ the Avenger
+ the Beastmaster
+ the Biter
+ the Blackguard
+ the Brave
+ the Champion
+ the Clumsy
+ the Deadly
+ the Dreadlord
+ the Frenzied
+ the Gallant
+ the Gladiator
+ the Heroic
+ the Horselord
+ the Knight
+ the Lucky
+ the Mighty
+ the Noble
+ the Outsider
+ the Paladin
+ the Pariah
+ the Ranger
+ the Ravager
+ the Rebel
+ the Savior
+ the Skald
+ the Slayer
+ the Strong
+ the Terrible
+ the Venemous
+ the Villanous
+ the Wanderer
+ the Woebearer
+
+[nameless] a balor
+ a band of fey sorcerers
+ a bugbear rogue
+ a blind grimlock shaman
+ a celestial elven queen
+ a coven of swamp hags
+ a dank sahuagin cleric
+ a dark and brooding vampire
+ a diminutive kobold sorcerer
+ a disgraced pit fiend
+ a divine solar
+ a doppleganger infiltrator
+ a drider cleric
+ a fallen planetar
+ a fiendish dwarven clan leader
+ a fierce vampire hunter
+ a fiery noble salamander
+ a formian queen
+ a gnoll druid
+ a goblin cleric
+ a grove of dryads
+ a half-dragon sorcerer
+ a harpy spellslinger
+ a hobgoblin loremaster
+ a learned priest-king
+ a lesser deity
+ a medusan sorceress
+ a mountain hermit
+ a naga sorceress
+ a nameless wanderer
+ a noble djinni
+ a planetar
+ a rakshasan mage
+ a righteous zealot
+ a school of merfolk adepts
+ a troglodyte necromancer
+ a storm giant cleric
+ a svirfneblin artificer
+ a plane traveling bard
+ a titan wizard
+ a owlbear shaman
+ an efreeti
+ an elder druid
+ an ancient dragon
+ an azer elementalist
+ an eldritch lich
+ an elven mage
+ a half-celestial cleric
+ an ogre mage
+ an orc necromancer
+
+[slayers] a band of sinister frost giants
+ a blackguard bent on destruction
+ a bugbear berserker
+ a cluster of twisted phase spieders
+ a corrupt monk
+ a covey of nighthags
+ a culk of kobolds
+ a cursed nymph
+ a depraved twelve-headed lernean cryohydra
+ a doppleganger prince
+ a evil centaur druid
+ a fiendish captain
+ a great wyrm
+ a group of roving extra-planar assassins
+ a horde of undead ghouls
+ a jet-black bodak
+ a massive troll warrior
+ a mighty locathah barbarian
+ a pack of great black worgs
+ a paladin's ghost
+ a party of meddling evil-doers
+ a plague bearing flesh golem
+ a poisoned elder xorrn
+ a possessed gray render
+ a protean chaos beast
+ a rabid werebear
+ a rampaging gorgon
+ a ravaging nightwalker
+ a renegade solar
+ a repulsive balor
+ a storm giant mohrg
+ a tainted titan
+ a traitorous astral deva
+ a tribe of goblin cultists
+ a troupe of outcast driders
+ a vampire mage
+ a vengeful drow vicar
+ a venemous chimera
+ a vicious ogre magi
+ an ancient lich
+ an angered treant
+ an augmented gibering mouther
+ an elder elemental
+ an emissary from the netherworlds
+ an evil rakshasa cleric
+ an infernal pack of hell hounds
+ an orc clan chiedf
+ an unbound shield guardian
+ an unfettered iron golem
+ the tarrasque
+
+[group1] Aboleth
+ Azer
+ Bugbear
+ Centaur
+ Djinni
+ Doppleganger
+ Dragon
+ Drider
+ Drow
+ Dryad
+ Dwarf
+ Efreeti
+ Elf
+ Fey
+ Formian
+ Giant
+ Gnoll
+ Gnome
+ Goblin
+ Grimlock
+ Hag
+ Half-celestial
+ Half-elf
+ Half-fiend
+ Halfling
+ Harpy
+ Hobgoblin
+ Human
+ Janni
+ Kobold
+ Kyton
+ Lamia
+ Lillend
+ Lizardfolk
+ Locathah
+ Lycanthrope
+ Medusa
+ Merfolk
+ Naga
+ Nymph
+ Ogre
+ Orc
+ Owlbear
+ Rakshasa
+ Sahuagin
+ Salamander
+ Titan
+ Troglodyte
+ Troll
+ Vampire
+ half-[group1]
+ half-[group1] half [group2]
+ quarter-[group1]
+
+[group2] mercenary company
+ clan in exile
+ royal family
+ nomadic tribe
+ rebel milita
+ secret brotherhood
+ elder council
+ adventuring party
+ brotherhood of assassins
+ thieves guild
+ sanctioned slayer band
+ shadow government
+ bastard scions
+ cult of zealots
+ network of spies
+ warband
+ scouting part
+ bounty hunters
+ planar troubleshoots
+ holy order
+
+[purpose1] as a gift for
+ to seal an alliance with
+ to aid in the defeat of
+ as a peace offering for
+ as part of a dowry for
+ at the behest of
+ to slay the leader of
+ as ransom for
+ as a reward for
+ as a commission from
+ as a favor for
+ as directed by
+ with help from
+ for the rival of
+ to help find
+ as part of a trade agreement with
+ to broker a treaty with
+ as a bounty for
+ in exchange for the services of
+ in accordance with the words of
+
+[purpose2] to attract the attentions of a wealthy scion
+ to worm [hisher] way into the royal family
+ to avenge [hisher] parents
+ to seek out a missing heirlom
+ to travel the planes and find a new home
+ to find a cure for [hisher] lycanthropic sibling
+ to trade for an item owned by a rival
+ to win the hand of a widowed ducess
+ to drive [slayers] from [hisher] homeland
+ to aid in {@hisher:=[hisher]} [@hisher] adventures with [@hisher] hisfriends
+ to pacify a demanding [slayers]
+ to establish [himself||herself] as a rightful ruler
+ to trade for the services of an assassin
+ to sell to the highest bidder
+ to kill a vampiric ancestor
+ to satisfy a hag's curse
+ to join [hero1] [hero2]'s [group2]
+ to get an apprenticeship with [name1] [title1]
+ to impress a [nameless] and garner favors
+ to complete a [nameless]'s [geas||quest]
+
+[hisher] his
+ her
+
+[purpose3] seeking a cure for [name1] [name2]'s disease
+ looking for lost tomes and texts
+ killing every [group1] [he||she] comes across
+ running from the [group2] seeking his life
+ hunting for [hisher] lost sibling who left years before and never returned
+ searching for the [slayers] that slew [hisher] mentor
+ hoping to impress a handsome [prince||princess] and convince them to marry [him||her]
+ looking to complete a set of onyx statuettes
+ seeking a missing gemstone, which fits in an empty [ring||necklace||crown||bracelet] fitting to reclaim [hisher] birthright
+ gathering hardened adventurers to conquer a kingdom
+ destroying alters to a [vile||neutral||benevolent] [group1] [god||goddess] and all its followers
+ searching for the missing pieces of a mysterious artifact
+ hoping to claim new lands in the name of the [king||queen] and build a stronghold of [hisher] own
+ searching for [hisher] [son||daughter], kidnapped by raiding [group1] barbarians
+ seeking to gain power and usurp a tyrannical depot
+ traveling about according to [hisher] whims and possessions
+ driving away the demons that plague [hisher] memories
+ escaping from an unwanted betrothal and the responsibilities of family life
+ unearthing lost historical treasures and cultural artificats
+ amassing a fortune of [hisher] own
+
+[purpose4] as a resarch project
+ as a sacrifice to The Powers That Be
+ as a wedding gift for a [group1] [prince||princess]
+ to use during the [group1] war
+ as part of a complicated scheme to bring down [hero1] [hero1]
+ as a piece of a larger set of magical equipment
+ as a centerpiece for a [king||queen]'s collection of magical items
+ to bribe a half-[group1] half-[group1] clan
+ to buy passage across the barrier between life and death
+ to capture a retriever
+ to fulfill a contract with a celestial deva
+ to satisfy a contract with a pit fiend
+ to be used during the storming of [hero1] [name2]'s castle
+ as bounty for the deaths of the leaders of a [group1] [group2]
+ for use in a rebellion against a merchant [king||queen]
+ for use during a vicious and bitter civil war
+ to buy favors from a neighboring [group1] leader
+ to be used in a scheme to bring down a noble merchant [prince||princess]
+ as an aid in a long and arduous journey
+ as a tribute to a great fallen hero
+
+[purpose5] explored the dark caverns and caves of the underground realms
+ tracked down an slew a despicable undead [group1]
+ established a stronghodl deep in hills controlled by [group1] hordes
+ uncovered a plot to replace a [prince||princess] with a demonic shapeshifter
+ brought down a devil-worshipping cult
+ formed a militia to stand against an orc army
+ ferred out the leader of a brutal murderous assassin's guild
+ set out on a quest to destroy an ancient artifact
+ set out on a quest to find an ancient artifact
+ worked to close a hidden protal to the abyss
+ tried to gether enough funds to open a bar
+ searched for missing pieces of a lost tablet
+ searched for and destroyed cursed items made by [nameless]
+ broke the hold an evil [group1] druid had over the land
+ sought after the cure for a deadly and contagious disease
+ worked towards a mutually beneficial treaty with a mighty dragon
+ searched for a way to bring down a [god||goddess]
+ worked woards lifting a curse that plauged the country
+ raced to save their world from an outer-planar invasion
+ trekked across the planes, pursuing a cunning archmage
+
+[lost1] lost in a cave-in
+ stolen by an assassin
+ snatched by an ethereal thief
+ abandoned in a burning building
+ disappeared in an earthquake
+ taken by a retriever
+ traded for a succubus' favors
+ lost overboard during a sea voyage
+ fell into a pit of lava
+ vanished in a flash of light
+ sacrificed for a divine favor
+ crushed under the heel of a titan
+ broken during a fight with a balor
+ destroyed by dragon-fire
+ lost on an outer plane
+ permanently dispelled by a rival
+ crushed by a nightwalker
+ disintegrated by an evil eye
+ turned to ash by an elder fire elemental
+ drained by a nightwing
+
+[lost2] bequethed to an heir
+ buried with its owner's corpse
+ put in a reliquary in a temple
+ stored in a castle vault
+ hung on a wall in its owner's stronghold
+ given to the owner's closest frient
+ laid on an altar in a small church
+ donated to an adventuring party
+ sold to a traveking pawnbroker
+ kept in a glass case on its owner's hearth
+ traded to a [king||queen] for a duchy
+ taken by a dragon for its hoard
+ traded to a wizard for a wish
+ given to a church for use in fiend-hunting
+ left on the battlefield
+ stolen by the owner's foremost rival
+ hidden away by the owner's spouse
+ taken up by the owner's eldest child
+ returned to its original creator
+ sold as part of the owner's estate
+
+[lost3] given to a traveling scholar for study
+ donated to a private collection
+ sold for food and medical supplies for a refugee settlement
+ given to a deity in exchange for one more summer
+ traded to [hero1] [hero2] for his support in a war
+ taken by a tyrannical ruler as "tax payments"
+ given to a loan shark to cover gambling debts
+ sold to a [group1] evil cultist in exchange for vile spells
+ sold to a [group1] good cultist in exchange for sanctified spells
+ stolen from an in room during a diplomatic mission
+ given away as part of a peace treaty
+ set in a stone block as part of the foundation for a new castle
+ given as bounty for the killers who slew the owner's [son||daughter]
+ given to a worthy successor
+ lost during a journey across the sea
+ sold to a collector of strange and unique items
+ gampled away in a rigged game of chance
+ lost to [name1] [hero2] in a game of cards
+ given to a manipulative lover
+ traded away for a false potion of everlasting youth
+ given to a demon, to free a soul from an infernal contract
+
+[killed1] in an ambush
+ by a hired assassin
+ by a poisonous drink
+ during a midnight raid
+ by a jealous lover
+ in a boating accident
+ during a freak lightning storm
+ by a magical diseaase
+ in a frivolous duel
+ during a long voyage
+ facing a dragon in single combat
+ sacrificed to a dark cult
+ by a vicious curse
+ by a rampaging tarrasque
+ by a vengeful vampire
+ in a war with a neighboring baron
+ during a border skirmish
+ by a stray crossbow bolt
+ exploring a deep dungeon
+ traveling on an alternate plane
+
+[killed2] turned to stone by a medusa
+ eaten by a sphinx
+ slain by a bodak
+ brought down by a kyton
+ killed by a pair of dire bears
+ succumbed to mummy rot
+ pulverized by a stone giant warlord
+ lobotomized by a psionicist
+ shopwrecked by a kraken
+ strangled by an invisible stalker
+ assassinated by a doppleganger
+ driven crazy by a night hag
+ digested by an ochre jelly
+ mauled by an owlbear
+ devoured by a remorhaz
+ burnt to a crisp by a salamander
+ slowly devoured by an ooze
+ trampled by a gorgon
+ ripped apart by a gray render
+ betrayed and slain by a rakshasa
+
+[killed3] died in bed, many years later
+ was crippled in a horse-riding accident
+ died heroically during a siege
+ died tragically on a construction site
+ drank himself to death
+ succumbed to a wasting sickness
+ became [lord||lady] of a castle and gave their equipment to their children
+ retired from adventuring and gave [hisher] gear to a squire
+ fled from creditors, leaving [hisher] belongings behind
+ disappeared from {@hisher:=[hisher]} home one night, leaving [@hisher] family behind
+ died from a horrible curse cast on [him||her] years previously
+ fled the country, before an oncoming barbarian horde
+ fell from a horse and broke [hisher] neck
+ died in a war, far from home
+ suddenly vanished, never to be heard from again
+ was chosen as the elected leader for [hisher] people and retired
+ choken on an acorn and collapsed at the dinner table
+ was gored to death in a hunting accident
+ invited to live in an outer plane
+ died while in pursuit of a rival, only to become a tormented specter
diff --git a/data/server-config-sample.gcfg b/data/server-config-sample.gcfg
index 227b48f..e34b0b9 100644
--- a/data/server-config-sample.gcfg
+++ b/data/server-config-sample.gcfg
@@ -102,6 +102,8 @@ load grammar gems new-sample-grammars/gems.gram
load grammar noble-jewlery new-sample-grammars/noble-jewlery.gram
load grammar nonweapon-prof new-sample-grammars/nonweapon-prof.gram
load grammar repinsults new-sample-grammars/repinsult.gram
+load grammar potions new-sample-grammars/potions.gram
+load grammar item-history new-sample-grammars/artificers-handbook.gram
# Drakensang online items
load grammar ds-runes new-sample-grammars/drakensang/runes.gram
diff --git a/dotest.sh b/dotest.sh
index df56c20..df56c20 100644..100755
--- a/dotest.sh
+++ b/dotest.sh
diff --git a/pom.xml b/pom.xml
index 2cbc6db..caa3fb9 100644
--- a/pom.xml
+++ b/pom.xml
@@ -35,8 +35,23 @@
<version>3.0.2</version>
</plugin>
<plugin>
- <artifactId>maven-compiler-plugin</artifactId>
- <version>3.8.0</version>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>build-helper-maven-plugin</artifactId>
+ <version>3.2.0</version>
+ <executions>
+ <execution>
+ <id>add-source</id>
+ <phase>generate-sources</phase>
+ <goals>
+ <goal>add-source</goal>
+ </goals>
+ <configuration>
+ <sources>
+ <source>src/example/java</source>
+ </sources>
+ </configuration>
+ </execution>
+ </executions>
</plugin>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>