From 0da3ef63d75e773d8c78e38b4317a24ff92c9259 Mon Sep 17 00:00:00 2001 From: Rakeela Windrider Date: Fri, 26 Sep 2025 04:01:19 +0000 Subject: [PATCH] Hunger System and Eateries To-Do: make food cost something. Make hunger status display on the status bar. --- story.ni | 200 +++++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 196 insertions(+), 4 deletions(-) diff --git a/story.ni b/story.ni index e9bd96c..a0b7934 100644 --- a/story.ni +++ b/story.ni @@ -24,8 +24,9 @@ A city record is a kind of value. The city records are defined by the Table of [Ethriel, Edge of Paradise, Kylon, Galrien, Nowhere, Norvsiik, Comptichrak, Myrhigh, Korltian, Akaveach, Whinge, Kantin, Rhaltin, Dartroveiln, Kravakaneke, Woodwall, Kreskechrak, Nerevehn, Asere, Mosdenechrak, Zyrine, Inrakaveach, Rhakanin, Suvkeyanin, Hiakoreska, Corvuseach, Hyvaline, Wyranine, Vishen, Ghost Farm, Mivsiik, Baunt, Fishergon's Retreat, Stone River, Sea's Bounty, Viviveyrm, Sovesviik, Xanasal, Raldrani, Moriskiik, Ediveyrm, Izaeyaranth, Polser, Mania, Ztornaranth, Borochrak, Iron Hills, Shraneyrm, Isoss, Shibanyet, Korjek, Sorjek, Wild Edge, Norickhum, Phoenix Sea, Theoma's Limit, Zyaket, Inevrae, Iyanti, Mundanity, Rodrimor, Onayraye, Uskadi, Skrend, Oriaryo, Tearvek, Irovek, Kyvsiveiln, Memory of Esseri, Memory of Tesam, and Memory of Chakocha.] Amenities are a kind of value. The amenities are bathhouses, theatres, cardhouses, master artists, museums, brothels, and bowling alleys. +Restaurants are a kind of value. The restaurants are Taigahane's, Korloave's Greenhouse, Cakeshapes, and S&S Flatbreads. -A culture name is a kind of value. The culture names are Kelkaithian, Tachamundi, Kanjamundi, and Memorian. +A culture name is a kind of value. The culture names are Kelkaithian, Tachamundi, Kanjamundi, and Memorian. [Niazion is a Kanjamundi culture. Reytas is a Kelkaithian culture. Ormeri is a Tachamundi culture.] Table of Cities City Record Local Amenities Special Amenity Culture @@ -52,6 +53,8 @@ A person has a number called sleepinghour. Sleepinghour is usually 3. A person has a number called workinghour. Workinghour is usually 1. A person has a room called a preferred hangout. +A person has a number called Hungernum. + An aquatic semblance is a kind of value. The aquatic semblances are fish-like, orca-like, dolphin-like, vrash-passing, and not fishy. A person has an aquatic semblance. The aquatic semblance of a person is usually not fishy. The list of veserus aquatic semblances is always {fish-like, orca-like, dolphin-like, vrash-passing}. @@ -64,6 +67,28 @@ Displaying sheet is an action applying to nothing. Understand "sheet" as displa say "This command has mostly not yet been implemented."; tabulate the skills of the player; say "Your top three skills are: [line break][row 1 in Table of Extracted Skills][line break][row 2 in Table of Extracted Skills][line break][row 3 in Table of Extracted Skills]" + +A person has a number called strength. The strength of a person is usually 1. +A conveyance is a kind of value. A person has a conveyance. The conveyances are defined by the Table of Conveyances. The conveyance of a person is usually a backpack. + +Table of Conveyances +Conveyance Bulk Limit Strength Requirement +a pfod 1 1 +your hands 2 1 +a backpack 4 2 +a greatpack 7 4 +a flightpack 9 5 +an izerah cart 40 10 +a myrghon wagon 200 1 +a wagon 200 35 +a flying wagon 200 2 +a grandwagon 400 55 +a grand flying wagon 600 5 + +Instead of taking inventory: + let conveyance be the conveyance of the player; + say "You are using [conveyance] for carrying capacity. It has [the bulk limit corresponding to a conveyance of conveyance in the Table of Conveyances] units of carrying capacity."; + say "Debug. Inventory not yet implemented."; Displaying skillbook is an action applying to nothing. Understand "skillbook" as displaying skillbook. Instead of displaying skillbook: tabulate the skills of the player; @@ -105,6 +130,7 @@ A person has a truth state called PostTFTrans. PostTFTrans is usually false. A person has a number called fantasizeCooldown. The fantasizeCooldown of a person is usually 0. A person has a number called theatreCooldown. The theatreCooldown of a person is usually 0. A person has a number called cardhouseCooldown. The cardhouseCooldown of a person is usually 0. +A person has a number called eatingCooldown. The eatingCooldown of a person is usually 0. DateDayKelkaith is a number that varies. DateDayKelkaith is usually 25. DateMonthKelkaith is a number that varies. DateMonthKelkaith is usually 3. @@ -273,6 +299,12 @@ This is the turnpass rule: say "You're really running on fumes now. The world is getting noisy and harder to perceive as your brain struggles with your lack of sleep."; If a random chance of 1 in 2 succeeds: follow the zombiesleep rule; + Otherwise if Tiredness > 11: + say "Your body is starting to hurt all over, and you feel sick. You've been awake long enough to start dying of it. You're suffering spellwrack, and what a waste of necromantic potential."; + If a random chance of 1 in 2 succeeds: + now geomInterface of the player is geomInterface of the player - 1; + If a random chance of 1 in 2 succeeds: + follow the zombiesleep rule; Now the TirednessVar of the player is the TirednessVar of the player + 1; If the entertainNum of the player > 10: now the entertainNum of the player is 10; @@ -298,6 +330,53 @@ This is the turnpass rule: Otherwise: say "Every passing hour fills you with horror at the prospect of living in an eternity as dull as this one."; now the securityNum of the player is the securityNum of the player - 1; + If the eatingCooldown of the player > 0: + now the eatingCooldown of the player is the eatingCooldown of the player - 1; + Let Undeath Check be maxGeomInterface of the player - geomInterface of the player; + If Undeath Check is at least 12: + Now the hungerNum of the player is the hungerNum of the player + 1; + If the hungerNum of the player > 60: + say "You are in food deficit by over fifteen days. The emotional difficulty of the fast has maxed out and even receded, but it's starting to cause wasting to afflict your body even if you don't eat compulsively. Your innate magic is sustaining your body as you continue to act without natural fuel, but this is a slow-burn exercise of innate necromancy, and it will surely kill you."; + If a random chance of 1 in 3 succeeds: + now the entertainNum of the player is the entertainNum of the player - 1; + say "You really miss food. Life is greyer and duller without it."; + If a random chance of 1 in 29 succeeds: + say "You are no longer capable of fasting. You rush out to acquire food and binge on something easy and quick from a street cart or grocery store. After that, you feel quite sick to your stomach, and cripplingly weak. The attack passes slowly, leaving some lingering pain behind."; + now the hungerNum of the player is the hungerNum of the player - 8; + now eatingCooldown of the player is 1; + now the geomInterface of the player is the geomInterface of the player - 1; + Otherwise if a random chance of 1 in 5 succeeds: + say "Your pain levels surge as spellwrack hits you. Your body becomes sicker and more fatigued. Down this path is an uncontrolled slide into undeath. Are you a good enough necromancer to survive that? Do you really want to be undead? Maybe you should eat something."; + now the geomInterface of the player is the geomInterface of the player - 1; + Otherwise if the hungerNum of the player > 44: + say "You have accumulated an eleven day deficit of nutrients. This is becoming an impressive feat of self-control. However, it's utterly miserable and in fact rather dangerous. If you eat compulsively at this point, you'll suffer spellwrack."; + If a random chance of 1 in 2 succeeds: + now the entertainNum of the player is the entertainNum of the player - 1; + say "You really miss food. Life is greyer and duller without it."; + If a random chance of 1 in 2 succeeds: + now the securityNum of the player is the securityNum of the player - 1; + say "Whether or not you could be eating, the prolonged lack of food is starting to add desperation to your emotional range."; + If a random chance of 1 in 10 succeeds: + say "You are no longer capable of fasting. You rush out to acquire food and binge on something easy and quick from a street cart or grocery store. After that, you feel quite sick to your stomach, and cripplingly weak. The attack passes slowly, leaving some lingering pain behind."; + now the hungerNum of the player is the hungerNum of the player - 8; + now eatingCooldown of the player is 1; + now the geomInterface of the player is the geomInterface of the player - 1; + Otherwise if the hungerNum of the player > 16: + say "You have accrued a four day food deficit. Prolonged hunger is starting to negatively affect your morale. This isn't physically unhealthy yet, but it's becoming emotionally unhealthy. Food wasn't made as an enemy of dragonkind; enjoying it will not cost you an iota of immortality. Eat something!"; + If a random chance of 1 in 3 succeeds: + now the entertainNum of the player is the entertainNum of the player - 1; + say "You really miss food. Life is greyer and duller without it."; + If a random chance of 1 in 4 succeeds: + now the securityNum of the player is the securityNum of the player - 1; + say "Whether or not you could be eating, the prolonged lack of food is starting to add desperation to your emotional range."; + If a random chance of 1 in 8 succeeds: + say "You are no longer capable of fasting. You rush out to acquire food and binge on something easy and quick from a street cart or grocery store."; + now the hungerNum of the player is the hungerNum of the player - 8; + now eatingCooldown of the player is 1; + Otherwise if the hungerNum of the player > 4: + say "You have over a day of food deficit. You can go a few days without food with no ill effect, but if you were delaying to have the best effect out of your next meal, you're hungry enough to have hunger as a spice. You're hungry enough to regularly remember that you're hungry..."; + Otherwise: + now the hungerNum of the player is 3; If the securityNum of the player > 10: now the securitynum of the player is 10; If a random chance of 1 in 30 succeeds: @@ -313,6 +392,10 @@ This is the turnpass rule: If the entertainNum of the player > 0: now the entertainNum of the player is the entertainNum of the player - 1; say "So beset are you by anxiety that you're questioning the value of immortality. Do you really want to feel this way forever?"; + If the entertainNum of the player is 0: + If a random chance of 1 in 2 succeeds: + say "Madness claws at your essence, a desperate desire to leave this world fracturing your connection to Theoma as surely as any necromantic spell."; + now geomInterface of the player is geomInterface of the player - 1; If the securityNum of the player > 0 and a random chance of 1 in 100 succeeds: say "[daydreaming]"; Now the entertainNum of the player is the entertainNum of the player + 1; @@ -1684,6 +1767,11 @@ Relaxing in an Ethriel Bathhouse "relax" "[relaxing in a bathhouse in Ethriel]" Fantasizing at Home in Ethriel "fantasize" "[fantasizing in Ethriel]" Cardhouses Link in Ethriel "cardhouses" "[cardhouses in Ethriel]" Playing Games in Ethriel "play games" "[playin da games]" +Seeking Food in Ethriel "Seek food" "[seeking food in Ethriel]" +Eatin at Taigahane's "Taigahane's" "[Food at Taigahane's]" +Eatin at Korloave's Greenhouse "Korloave's Greenhouse" "[Food at Korloave's Greenhouse]" +Eatin at Cakeshapes "Cakeshapes" "[Food at Cakeshapes]" +Eatin at S&S in Ethriel "S&S Flatbreads" "[Food at S&S Flatbreads in Ethriel]" To say cardhouses in Ethriel: try visiting a cardhouse; @@ -1698,6 +1786,12 @@ To say seeking rest in Ethriel: Otherwise: playerport to Your Room in an Ethriel Inn; +To say seeking food in Ethriel: + if the location is Food Options in Ethriel: + stop the action; + Otherwise: + playerport to Food Options in Ethriel; + To say visiting a theatre in Ethriel: try visiting a theatre. @@ -1718,7 +1812,7 @@ To say relaxing in a bathhouse in Ethriel: try relaxing; To say Location Command Block in Ethriel: - say "'[EthrielLink Seeking Entertainment in Ethriel]' will bring you to the entertainment options for your current city, '[EthrielLink Going Home in Ethriel]' will take you to your home, or to your room at a local inn if you haven't got a home in this town, 'seek work' will take you to the daywork options screen, 'seek cargo' will take you to a mercantile clearinghouse (also the destination for delivering cargo), or 'seek nature' to go hunting, gathering, or just relax in nature (doesn't work in some cities). 'Seek food' will give you the civilized restaurant and grocery options (if available). You can also 'depart' to go to another city if your preparations are adequate.[run paragraph on]". + say "'[EthrielLink Seeking Entertainment in Ethriel]' will bring you to the entertainment options for your current city, '[EthrielLink Going Home in Ethriel]' will take you to your home, or to your room at a local inn if you haven't got a home in this town, 'seek work' will take you to the daywork options screen, 'seek cargo' will take you to a mercantile clearinghouse (also the destination for delivering cargo), or 'seek nature' to go hunting, gathering, or just relax in nature (doesn't work in some cities). '[EthrielLink Seeking Food in Ethriel]' will give you the civilized restaurant and grocery options (if available). You can also 'depart' to go to another city if your preparations are adequate.[run paragraph on]". To say Personal Command Block in Ethriel: say "You can always '[EthrielLink Accessing the Calendar in Ethriel]' to see the current date in all three calendars or check the 'sheet' to see your own stats and skills. '[EthrielLink Sleeping in Ethriel]' will automatically move you to your housing in the current city, either a home (if you have one locally) or a room at an inn (if you don't).[run paragraph on]". @@ -1739,6 +1833,12 @@ Understand "seek entertainment" as seeking entertainment. Seeking entertainment Otherwise: playerport to Entertainment Options in Ethriel. +Understand "seek food" as seeking food. Seeking food is an action applying to nothing. Instead of seeking food when current city is Ethriel and chargencondition is false: + If the location is Food Options in Ethriel: + Stop the action; + Otherwise: + playerport to Food Options in Ethriel; + To say seeking entertainment in Ethriel: If the location is Entertainment Options in Ethriel: Stop the action; @@ -1786,7 +1886,8 @@ Fantasizing is an action applying to nothing. Understand "fantasize" as fantasi say "You've been doing that a lot lately. Are you sure you want to?"; If player consents: let fantasizechance be a random number between 1 and the fantasizeCooldown of the player; - If a random chance of 1 in fantasizechance succeeds: + let creativity be the writing level of the player plus a random number between 1 and 26; + If a random chance of creativity in fantasizechance succeeds: say "[daydreaming]"; now entertainNum of the player is entertainNum of the player + 1; now the fantasizeCooldown of the player is 56; @@ -2023,6 +2124,95 @@ playyear playtitle play 1227 "Nura's Abyss" "Nura's Abyss. It's a fantastical adventure with wild sets and costumes, and a bunch of staged fights with fake blood and illusions. It's one of the showiest plays in local theatres and a big hit, but expensive to perform. You've seen it before, but it retains its imaginative character." 1227 "Fiddling Lizards" "Fiddling Lizards. This romantic comedy romp features a failed polyamorous romance and several energetic musical numbers. The actual story is tell-y and obvious, but the musical numbers make the whole performance worthwhile." +Food Options in Ethriel is a room. "Ethriel's touristgon economy gives it a thriving food culture as well. Locals often eat at [EthrielLink Eatin at Taigahane's], which offers cheap spiced reindeer, cabbage, and bread. More popular with visitors, at least if they can afford it, is [EthrielLink Eatin at Korloave's Greenhouse], a hot restaurant with an herbacious menu. Also famous, if not exactly a place for a balanced meal, is Cakeshapes in the third dome. [EthrielLink Eatin at Cakeshapes] sells sweets in unusual shapes. It is, as far as you know, the only place in Theoma where you can buy a meal in which the plate and cutlery are intended to be eaten as well. Lastly, there's [EthrielLink Eatin at S&S in Ethriel], which is a chain restaurant with outlets in many Kelkaithian cities that sells flatbreads topped with cheese plus tomato or cream sauce, and then a variety of specific options. There's also several grocery stores around the city. + +Local commands: The 'visit ' or 'eat at ' commands will order food from specific places. This does not consume a time block unless you're attending with someone. 'Visit grocery store' will instead move to a grocery store. If using keyboard, omit apostraphes in place names." + +Table of Restaurant Foods +Eatery Description of Food +Taigahane's {"the default meal option without modifications. Spiced reindeer, cabbage, and bread. It's filling, if basic. It comes with unlimited small beer to wash it down", "the spiced reindeer alone. This way, you can better appreciate the sweet spicy rub applied to the meat. It's really the only part of Taigahane's menu that stands out. It comes with unlimited small beer to wash it down", "a savory reindeer stew, a thick, rich brown stew, served in a bread bowl that is quite delicious when it's soaked in these flavors. It comes with unlimited small beer", "a reindeer sandwich. It's not that different from the default meal option, but the meat is chopped up so it's easier to shear through the sandwich without so much pressure that it falls apart, and on the whole it's a little faster and more convenient to eat as a result. The unlimited small beer is the same with every item from Taigahane's, and decent though mostly just meant for hydration rather than flavor"} +Korloave's Greenhouse {"a chickpea and kale salad with sun-dried tomato vinaigrette. The crisp, roasted chickpeas offer a nutty flavor while the cilantro, mint, and scallions give it a cool herbal spice, an impression magnified by the fact that the dish is served cool. It actually comes to the table quite quickly. Good restaurants use divinations to start preparing food before it's ordered, but in this case you suspect the speed was because these salads are left to sit in the cooler overnight. That's no insult, but recommended handling for the recipe. The dish comes with a crystal glass bowl of white wine to drink", "a citrus noodle salad with tofu and fresh herbs. This intense, complex dish comes in with sweet tartness from its fruit, salt and a touch of smoke from its thin dark sauce, and a bright herbaciousness from the large leaves of minimally processed herbs. You're not a vegetarian, but vegetarians in Ethriel know that Korloave's is a good place to get a professionally prepared vegetarian meal. The dish comes with a crystal glass bowl of grapefruit juice to drink", "a sliced steak salad. The tomato, scallion, mint, and basil is all very welcome, but there are two stars to this dish. The first is the meat, thin-sliced but ample in quantity. The second is the spicy dressing, derived of fish sauce and livened up with a bit of lime, garlic, and sugar. The scallion in the salad is specifically the white parts of the scallion, making the ingredient function as a stand-in for onion. The dish comes with a crystal glass bowl of a tannic red wine", "onion basil beef. The name of the dish elides the heavy dose of chilies in the recipe. This extremely spicy dish does not come with a salad. It's mostly meat, and is particularly popular with kalla attending at Korloave's, even though by a quirk of the kalla tongue they can't taste the raw heat of the dish. To a kalla, this is a sweet onion beef. To any other dragon, this is a meat and onion dish served with basil and fire adorning it. The chilis are imported all the way from Reytas"} +Cakeshapes {"a set of blunt woodworking tools, you pay at the counter, buying a glossy edible plate and its associated softening sauce while you're there. Despite superficially convincing appearances, the tools are shells of recolored locuseen with cream and candyfloss inside of them. When you've finished your tools, you break the plate apart and dip it in the sweet softening sauce that is provided, then drink the remaining sauce and eat the waxy-sweet bowl in which it was provided.", "a realistic dragon's egg and an edible spoon, you pay at the counter. Taking your egg back to a table in the mall, you break it open and scoop out the sweet paste inside it. The egg is empty; the semblance of cannibalism is not taken to the extent of including a fetal dragon sculpture inside the egg. You crunch up the pieces of the shell [beakcheck 1] and lick them apart with your tongue, then you finish by manually breaking up the spoon and holding the pieces in your [beakcheck 2] until they likewise dissolve away. It's all very sweet.", "a small treasure chest full of coins. Each coin is a sweet that melts in your [beakcheck 2], and the treasure chest itself is a brittle sweet that functions only until you strain it with your fingers.", "a cake shaped like a heavy tome and an edible fork. Sitting open to a double-spread of illuminated pages, you spend a few moments reading about a land made of sweets in which life is easy and everything is delicious, then you dig in. The brittle tines of the fork break partway through, so you go up and buy another one; it's not the expensive part of this meal.", "an arid rocky landscape and a bowl of softening sauce. The 'rocks' would melt in your mouth if you were very patient, and you could well break up this whole dish and eat it that way, but the softening sauce starts them dissolving on contact, which is much faster. The 'rocks' fizz and melt in your mouth, revealing a mix of caramel or cream flavors depending on the color of the 'rock'. When you're done, you lick out the last drops of softening sauce (there isn't much left), then bite into the slightly waxy bowl itself."} +S&S Flatbreads {"cheese, garlic, spinach, and a heavy cream sauce. The flatbread is assembled before your eyes and slid into the oven. You wait ten minutes in the sitting area outside of the establishment, until they call your name and you come forward to pick up your plated flatbread. The rich, creamy, savory thing is still hot and ever so slightly sweet in crust and sauce, with the creamy sauce muting the bitterness of the spinach", "tomato sauce, pork, and cheese. The flatbread is assembled before your eyes and slid into the oven. You wait ten minutes in the sitting area outside of the establishment, until they call your name and you come forward to pick up your plated flatbread. The rich, savory thing is still hot and ever so slightly spicy from something in the meat, with a bright and tangy taste from the sauce and a gooey, salty flavor contributed by the cheese", "olives, pork, and tomato sauce. The flatbread is assembled before your eyes and slid into the oven. You wait ten minutes in the sitting area outside of the establishment, until they call your name and you come forward to pick up your plated flatbread. The rich, salty thing is still hot and ever so slightly spicy from something in the meat, with a piquant and luxurious flavor from the imported olives. The pricetag on this is surprisingly good for using so many olives", "fish, broccoli, garlic, cheese, corn, and tomato sauce. The flatbread is assembled before your eyes and slid into the oven. You wait ten minutes in the sitting area outside of the establishment, until they call your name and you come forward to pick up your plated flatbread. The only fish used at S&S Flatbreads is a small, salty fish with an intensely flavored oil whose flavor is not moderated at all from the preservation process it goes through before being shipped inland. It's a bit challenging to come up with a dish that uses the fish at this place and still tastes good, but it's rewardingly different from the other flavors you consume. The broccoli and corn have a moderating influence on the flavor. The flatbread as a whole is still rich and savory as every flatbread from S&S flatbreads is", "shredded quema, a salting of crumbled fatty pork, spinach, cheese, and a heavy cream sauce. The flatbread is assembled before your eyes and slid into the oven. You wait ten minutes in the sitting area outside of the establishment, until they call your name and you come forward to pick up your plated flatbread. The richness of the cream and pork is mediated by the gentle bitterness of the spinach and the gooey savoriness of the cheese. The cream and the crust contribute a little bit of sweetness.", "a giant cookie. If you want to eat a giant cookie, you can. This kind of dissolute meal scandalizes flux worlders, but where are those on Theoma? Immortality has its rewards. The cookie is put into the oven as though it were a flatbread, and a few minutes later it is pulled back out and plated for you. Gooey chips of melted locuseen candy are only the start; when you dig into the cookie, you discover it contains a thin, molten layer of locuseen in it. The cookie is dense and flavorful, very sweet and slightly bitter, with vanilla and caramel coming from the locuseen."} + +To say beakcheck 1: + If species of the player is kalla: + say "with the tip of your beak"; + Otherwise: + say "in your teeth". + +To say beakcheck 2: + If species of the player is kalla: + say "beak"; + Otherwise: + say "mouth". + +Understand "visit Taigahanes" as visiting Taigahane's. Visiting Taigahane's is an action applying to nothing. Instead of visiting Taigahane's when current city is Ethriel: + If the hungerNum of the player < 1: + say "You're not hungry at all. You can't go out to eat like this."; + stop the action; + Otherwise if the eatingCooldown of the player is not 0: + say "You juste ate; if you haven't eaten in a long time, you might still need food, but you can't eat more right now."; + stop the action; + Otherwise: + choose row 1 in the Table of Restaurant Foods; + say "Taigahane's is a very modest place with homely decor, kept clean and faintly comical with its insistence on a fake half-timbered look despite being buried deep inside a metallic swaivshon city dome. There's a nice open fireplace around which the dining area is set. You take a seat, finding a short woodblock menu on the table you pick. A servergon soon approaches. Reviewing the block of wood with the menu burned onto it, you opt for [a random item from Description of Food entry]."; + now the hungerNum of the player is the hungerNum of the player - 6; + if the hungerNum of the player < 0: + now the hungerNum of the player is 0; + now the eatingCooldown of the player is 1. + +To say Food at Taigahane's: + Try visiting Taigahane's. + +Understand "visit Korloaves Greenhouse" or "visit Korloaves" or "visit greenhouse" as visiting Korloave's Greenhouse. Visiting Korloave's Greenhouse is an action applying to nothing. Instead of visiting Korloave's Greenhouse when current city is Ethriel: + If the hungerNum of the player < 1: + say "You're not hungry at all. You can't go out to eat like this."; + stop the action; + Otherwise if the eatingCooldown of the player is not 0: + say "You juste ate; if you haven't eaten in a long time, you might still need food, but you can't eat more right now."; + stop the action; + Otherwise: + choose row 2 in the Table of Restaurant Foods; + say "Korloave's Greenhouse greets you with a tropical heat. The main eating area is two stories tall and covered in glass. Surrounding it is a small park likewise surrounded by a second shell of glass. The open kitchen in the middle is abuzz with roasting meat and the rapid chopping of a knife in the hands of a muscular kalla chefgon as an endless supply of vegetable and herbal ingredients is prepared to feed the dragons flocking to the warm green restaurant. Above the two floors holding the seating and kitchen, a fat three-floored building clings to the ceiling of this level of the dome. The proprietors, being the eponymous Korloave the Herbgon for whom the place was named as well as zir three mates, live up there above their restaurant. [line break]You are met at the entrance by a waitgon who guides you to an open seat and hands you a paper menu. Reviewing the options, you select [a random item from Description of Food entry]."; + now the hungerNum of the player is the hungerNum of the player - 6; + now the eatingCooldown of the player is 1. + +To say Food at Korloave's Greenhouse: + Try visiting Korloave's Greenhouse. + +Understand "visit Cakeshapes" as visiting Cakeshapes. Visiting Cakeshapes is an action applying to nothing. Instead of visiting Cakeshapes when current city is Ethriel: + If the hungerNum of the player < 1: + say "You're not hungry at all. You can't go out to eat like this."; + stop the action; + Otherwise if the eatingCooldown of the player is not 0: + say "You juste ate; if you haven't eaten in a long time, you might still need food, but you can't eat more right now."; + stop the action; + Otherwise: + choose row 3 in the Table of Restaurant Foods; + say "Cakeshapes has a smooth white aesthetic with curving lines and glass cases holding an eclectic range of inedible-looking things on pedestals with price cards and descriptions next to them talking about the flavors of their cake and icing components, or else specifying what kind of sweet they're actually made of (and what texture that implies). Each card says how long the item will keep. Most of them say they'll last only two weeks, but a few of them claim they'll remain edible for years if kept clean and cool. One entire wall is lined with shelves behind glass bearing still more of these dubiously-appetizing delicacies. If you wanted to buy tools and eat them, this place offers several flavors for that fantasy. A counter with a servergon behind it waits for you to make a selection, and a small eating area in the surrounding mall is there to provide eating arrangements if you want to eat your acquisition immediately. [line break]You browse the shelves looking for something that would be appealing right now. Picking out [a random item from Description of Food entry]. You are left with no sign of your meal and the energized sensation of having eaten way too much sugar in one sitting."; + now the hungerNum of the player is the hungerNum of the player - 6; + now the eatingCooldown of the player is 1. + +To say Food at Cakeshapes: + Try visiting Cakeshapes. + +Understand "visit S&S" or "visit S&S Flatbreads" or "visit S&S" as visiting S&S Flatbreads. Visiting S&S Flatbreads is an action applying to nothing. Instead of visiting S&S Flatbreads when current city is Ethriel: + If the hungerNum of the player < 1: + say "You're not hungry at all. You can't go out to eat like this."; + stop the action; + Otherwise if the eatingCooldown of the player is not 0: + say "You juste ate; if you haven't eaten in a long time, you might still need food, but you can't eat more right now."; + stop the action; + Otherwise: + choose row 4 in the Table of Restaurant Foods; + say "S&S Flatbreads is a simple lunch counter outlet. There's one in each of Ethriel's five city-domes. Boxes of ingredients sit open behind a glass front along the counter, a large oven behind the counter has topping-laden flatbreads cooking in it, and a platter of sandwich cookies stands next to the check-out register. S&S offers good prices and ample serving sizes. Although they're a large, impersonal organization, some dragons are obsessed with them. The food is very tasty. [line break]You approach the counter after standing in line briefly, and put in an order for a flatbread topped with [a random item from Description of Food entry]. You also pick up a beer or cider; although the main meal is reasonably priced, S&S insists on selling surprisingly upscale bottled import beverages. They are at least tasty. The serving size of the main dish is customized for your species, but it's still sized to be a lot of food. Nevertheless, it's so palatable that your appetite holds until you've finished it."; + now the hungerNum of the player is the hungerNum of the player - 6; + now the eatingCooldown of the player is 1. + +To say Food at S&S Flatbreads in Ethriel: + Try visiting S&S Flatbreads. + Table of Interests Personal Interest Culture Career Possibilities Conversations Economics Kelkaithian {haulergon, haulergon, haulergon, haulergon, philosophygon, mental dissolutionist, smithgon, authorgon, farmgon, charitygon} {"the price of hogs", "the price of sheep", "the price of vegetables", "food prices", "vrash armor", "the weather", "the economy the local land god wants to see built", "their daily divinations", "a book of production technologies", "the difficulty of making the latest goods available even to the poor", "exotic luxuries available in distant places", "the importance of the general savings rate", "cheap, resilient architecture", "their long-term investments", "other, very wealthy dragons", "the importance of long-term planning", "how and why prices vary between cities in the region", "the origins of common local goods", "the design of irrigation systems", "economics"} @@ -2036,10 +2226,12 @@ Religion Kelkaithian {holygon, holygon, holygon, holygon, charitygon, physical d Sex Kelkaithian {sex pest, sex pest, sex pest, sex pest, mental dissolutionist, petgon, sportsgon, lutragon, physical dissolutionist, physical dissolutionist} {"inventive sex positions", "inventive sex positions", "a sexual dream they once had", "the infamous vrash-myrghon problem in sexuality", "a book about sex", "Baunt, a city known for its bathhouses", "Wyranine, a Tachamundi city known for its bathhouses", "Ethriel, a city known for its bathhouses", "a myth about the exploits of the otter-like tesam", "an amusing anecdote of something that happened at an orgy", "a description of a weird species said to have existed in a prior world", "fetishes", "the way the world was supposedly made to make dragons happy", "an uncomfortable sexual experience they once had", "sex"} Necromancy Kelkaithian {holygon, authorgon, philosophygon, haulergon, mental dissolutionist, rangergon, flygon, huntgon, farmgon} {"gossip about material summoners in the city", "controversial decisions of the land gods", "the nature of the consensus of the land gods", "sexual reassignment magics", "past world divinations", "past life divinations", "the importance of balancing piety and independence when studying necromancy", "the divine principle of Hydra", "the divine principle of Rift", "the divine principle of Dissolution", "a grandiose dream they once had", "a fun dream they once had", "a personal desire to be a ghost", "necromancy"} Plants Kelkaithian {farmgon, farmgon, farmgon, huntgon, rangergon, rangergon, rangergon, haulergon} {"common flowers", "popular flowers", "rare flowers", "the parts of flowers", "the price of vegetables", "the weather", "rare fruits", "rare vegetables", "the effects of climate on plantlife", "the crops of a distant place", "glowing plants", "edible plants that can be gathered in the wilderness", "the difficulty of getting most kalla to eat plants", "a fun dream they once had", "the use of plants in adornment", "garden ornaments", "the design of irrigation systems", "botany", "a plant kaiju from a novel"} -Sports Kelkaithian {sportsgon, sportsgon, sportsgon, sportsgon, smithgon, farmgon, huntgon, rangergon, haulergon, physical dissolutionist, lutragon, flygon} {"a common local sport", "A common local sport", "an aerobatic trick", "endurance-maintenance strategies for heavy exertion", "a sport played in a distant place", "a sport from a prior world", "the difficulty of wrangling dragons to play a game together", "a strong local dragon", "a fast local dragon", "the inherent piety of play", "the divine principle of Hydra", "a fun dream they once had", "cheap entertainments", "a sports team", "a renowned sportgon", "rumors of necromantic cheating in local sports", "sports", "swimming"} +Sports Kelkaithian {sportsgon, sportsgon, sportsgon, sportsgon, smithgon, farmgon, huntgon, rangergon, haulergon, physical dissolutionist, lutragon, flygon, sex pest} {"a common local sport", "A common local sport", "an aerobatic trick", "endurance-maintenance strategies for heavy exertion", "a sport played in a distant place", "a sport from a prior world", "the difficulty of wrangling dragons to play a game together", "a strong local dragon", "a fast local dragon", "the inherent piety of play", "the divine principle of Hydra", "a fun dream they once had", "cheap entertainments", "a sports team", "a renowned sportgon", "rumors of necromantic cheating in local sports", "sports", "swimming"} Technology Kelkaithian {smithgon, smithgon, smithgon, smithgon, smithgon, authorgon, philosophygon, mental dissolutionist, charitygon} {"a clock they once bought", "welding", "welding", "smithing", "smithing", "metallurgy", "metallurgy", "common tools", "a book of production technologies", "past world divinations", "the divine principle of Weld", "models of printing press", "the history of pens", "the importance of advanced tools in providing even the most basic assets of modern life", "the difficulty of making the latest goods available even to the poor", "the importance of trying new things", "neophilia", "a daydream they once indulged at length", "a work of past-world fiction depicting a more advanced world", "a fun dream they once had", "an account of the life of an inventor", "an account of the life of a wealthy and neophilic dragon", "a mayorgon in a distant town who is a renowned modernizer", "cheap, resilient architecture", "the design of irrigation systems", "mansion architecture", "an exotic theory about causality", "technology"} Accumulating Wealth Kelkaithian {pottergon, haulergon, haulergon, haulergon, lumbergon, lumbergon, smithgon, smithgon, farmgon, farmgon, huntgon} {"food prices", "living cheaply", "past experiences at work", "cheap entertainments", "the importance of living humbly", "the price of beef", "the price of mutton", "the price of vegetables", "the importance of advanced tools in providing even the most basic assets of modern life", "the difficulty of making the latest goods available even to the poor", "the weather", "a daydream they once indulged at length", "their favorite card game", "cheap recipes", "the divine principle of Chime", "efficiency", "the importance of saving money", "a fantasy of being ludicrously wealthy", "mansion architecture", "cheap, resilient architecture", "minimizing maintenance costs", "a fun dream they once had", "cheap edible plants", "the importance of savings", "other, very wealthy dragons", "a daydream they once indulged at length", "a personal desire to be a ghost", "accumulating wealth"} +[Ideas for further interests: Freedom and status.] + Understand "visit bathhouse" or "visit a bathhouse" as visiting a bathhouse. Visiting a bathhouse is an action applying to nothing. Instead of visiting a bathhouse in Entertainment Options in Ethriel: playerport to Your Favorite Bathhouse in Ethriel;