Hunger



  • I was bored this morning, so I decided to play my favourite video game, Cythera. I know what you're thinking, moderators, if I was so bored, why didn't I write something? Well- hey is your shoelace untied? No? Oh look it's an airplane! Look! Don't you want to look at the airplane? . . . Please?

    Anyway, I made up a list of how long each food will satisfy you in Cythera, and I thought I'd share that with the board. Each food has a minimum and maximum time, depending on how long you've been hungry. For example, if you eat a piece of flatbread as soon as you get hungry, you will be hungry again in six hours. If you eat the flatbread after you've been hungry for an hour, you'll be hungry again in five hours. If you eat it after you've been hungry for two hours, you'll be hungry again in four hours. And if you eat it when you've been hungry for 3+ hours, you'll be hungry again in three hours. If you eat something else before you get hungry again, just add that food's maximum time to your countdown.

    Flatbread: 3-6
    Bread: 7-10
    Cheese: 5-8
    Grapes: 3-6
    Pomegranate: 1-4
    Meatpie: 13-16
    Kabobs: 7-10
    Fowl: 3-6
    Titan leg: 9-12
    Fish: 7-10
    Ribs: 13-16
    Sausage: 11-14
    Steak: 17-20
    Mushroom steak: 7-10
    Hand-baked flatbread: 13-16
    Nutrient spell: 7-10

    As far as I can tell, these times do not vary among party members, and the nutrient spell works the same among non-party members as well. The strange device is not listed because it's useless for satisfying hunger. You can add butter to flatbread, bread, and hand-baked flatbread, but it does not affect how long you will be full.

    Edit: I'm adding info for the restaurants, which I didn't think of before.
    The Titan's Head, Green Goat, and Two-Tailed Rat meals all seem to satisfy you for 17 hours. It is 17 hours regardless of how hungry you are before eating, though I've gotten it up to 18 hours by eating a steak right before dining.
    Dares' Eatery meals seem by far the best, satisfying you for a full 21 hours. I was unsuccessful in increasing or decreasing that time by overstuffing/starving myself, as far as I can tell it is 21 hours no matter what.
    The Pnyx cafeteria is pretty poor as far as meals go, but what do you expect from a cafeteria? Those meals satisfy for 12 hours. That number does not decrease even if you've been hungry for a while, but I got it to increase by at least a few hours by eating directly beforehand.

    So, does anyone know of anything I missed or any mistakes I made?

    This post has been edited by BreadWorldMercy453 : 12 March 2012 - 04:10 PM



  • @breadworldmercy453_bot, on 12 March 2012 - 10:27 AM, said in Hunger:

    The Titan's Head, Green Goat, and Two-Tailed Rat meals all seem to satisfy you for 17 hours. It is 17 hours regardless of how hungry you are before eating, though I've gotten it up to 18 hours by eating a steak right before dining.
    ...
    That number does not decrease even if you've been hungry for a while, but I got it to increase by at least a few hours by eating directly beforehand.

    Do you mean that, by eating a steak before getting a meal at one of the inns, you're satisfied for 17 to 20 + 17 hours, or that the 18 hours of the steak simply overrides the 17 hours of the inn?



  • I'm guessing the steak overrode the meal, now that you point that out. Probably I'd been hungry for two hours when I ate it, so the steak lasted for 18 hours. That explains why I couldn't increase the satisfaction time for Dares' Eatery meals - they last longer than any single food. Maybe I should try eating multiple things before dining there.

    Although dining out doesn't "stack up" your satisfaction time with what you've already ate (making it wasteful to pay for a meal if you're not hungry), I'm pretty sure it's impossible to decrease the amount of time that they'll satisfy you. I've tried eating a pomegranate before eating at all the establishments, and the meal overrode the pomegranate, rather than the other way around.



  • @breadworldmercy453_bot, on 12 March 2012 - 10:27 AM, said in Hunger:

    Anyway, I made up a list of how long each food will satisfy you in Cythera, and I thought I'd share that with the board. Each food has a minimum and maximum time, depending on how long you've been hungry. For example, if you eat a piece of flatbread as soon as you get hungry, you will be hungry again in six hours. If you eat the flatbread after you've been hungry for an hour, you'll be hungry again in five hours. If you eat it after you've been hungry for two hours, you'll be hungry again in four hours. And if you eat it when you've been hungry for 3+ hours, you'll be hungry again in three hours. If you eat something else before you get hungry again, just add that food's maximum time to your countdown.

    You know, this looks a lot like math.

    Maybe it would be easier to say that you have a nutrition stat; it goes up when you eat food, it goes down by 1 per hour (but never below 0), and you are hungry if it's 0-2.

    So what happens if you eat food when you're not hungry? Does the new food replace the score of the previous if it's higher? Does food ever add together?



  • Personally I don't see why anyone would want to bring math into this, but if you're into that sort of thing...

    In my experiments, the foods always added together. I only did a few experiments though.

    There's a few more tests I want to do, maybe I'll get around to them later.



  • @breadworldmercy453_bot, on 14 March 2012 - 09:35 AM, said in Hunger:

    In my experiments, the foods always added together. I only did a few experiments though.

    I would have thought there was a maximum (otherwise you could eat lots of Emesa's food at the beginning of the game and not have to eat for weeks). Maybe you can't have more than 24 hours of nutrition, or something like that.



  • For how long does an apple fill you?



  • I still have a few ideas I want to test out, but I doubt the results will be very interesting.

    Shorty- Good question! I entirely forgot about the apples on the Tree of Life. (Note to Sely: it would have been a lot easier for me to test this out if you uploaded the save-file in a format that's recognized by OS 9.) The apples satisfied me & my two followers (one just hungry, one had been hungry for over a day, one had just eaten a steak) for 10 days & 12 hours. If my math is correct, that is 252 hours.

    I believe that probably answers Fiery's question too. I think that the maximum fullness time is 252 hours. That makes sense, right? Because it seems like 255 is a common max-value, and there's also three levels of hunger. I don't feel like sleeping for 10 & a half days again to test that out though, so let me know if you think I'm right.

    Also, Meleager was satisfied for 28 hours when I fed him a homemade flatbread at the very beginning of the game (he was hungry at the time) - I have no idea what that means. I tested it because I thought I remembered homemade flatbread lasting longer than I'd recorded, but I don't know why it would matter if you eat it right at the beginning or not...



  • Does it make a difference how long the character is hungry before eating or are the "filling" effects of each item the same?



  • @selax_bot, on 19 March 2012 - 10:58 PM, said in Hunger:

    Does it make a difference how long the character is hungry before eating or are the "filling" effects of each item the same?

    You didn't read the first post, did you?

    @breadworldmercy453_bot, on 12 March 2012 - 10:27 AM, said in Hunger:

    Anyway, I made up a list of how long each food will satisfy you in Cythera, and I thought I'd share that with the board. Each food has a minimum and maximum time, depending on how long you've been hungry. For example, if you eat a piece of flatbread as soon as you get hungry, you will be hungry again in six hours. If you eat the flatbread after you've been hungry for an hour, you'll be hungry again in five hours. If you eat it after you've been hungry for two hours, you'll be hungry again in four hours. And if you eat it when you've been hungry for 3+ hours, you'll be hungry again in three hours. If you eat something else before you get hungry again, just add that food's maximum time to your countdown.



  • Yeah, did I not make that clear? For all the foods on the list in my OP, it matters how long you've been hungry. For apples or complete meals at restaurants, it does not matter.



  • @jehezekel_bot, on 20 March 2012 - 06:54 AM, said in Hunger:

    You didn't read the first post, did you?

    Actually, I did. I just did not reread it before posting.



  • Haha awesome work 453, so now we finally know the secret power of the fruit of the tree of life!



  • Excellent work, BW! Until now, I think we had all assumed that the intended effect of the Tree of Life fruit had not been implemented, but from your findings, it seems like maybe it was. Although, perhaps they were also going to cure ailments such as poison. I wonder why Gandreas never completed that map...

    @breadworldmercy453_bot, on 16 March 2012 - 07:42 PM, said in Hunger:

    I believe that probably answers Fiery's question too. I think that the maximum fullness time is 252 hours. That makes sense, right? Because it seems like 255 is a common max-value, and there's also three levels of hunger. I don't feel like sleeping for 10 & a half days again to test that out though, so let me know if you think I'm right.

    I'm a little confused by this. What are the three levels of hunger?



  • @the-wizard_bot, on 31 March 2012 - 04:05 PM, said in Hunger:

    I'm a little confused by this. What are the three levels of hunger?

    If you've been hungry for more than 3 hours, you're starving:

    @breadworldmercy453_bot, on 12 March 2012 - 10:27 AM, said in Hunger:

    Each food has a minimum and maximum time, depending on how long you've been hungry. For example, if you eat a piece of flatbread as soon as you get hungry, you will be hungry again in six hours. If you eat the flatbread after you've been hungry for an hour, you'll be hungry again in five hours. If you eat it after you've been hungry for two hours, you'll be hungry again in four hours. And if you eat it when you've been hungry for 3+ hours, you'll be hungry again in three hours.



  • I guess really it's four levels of hunger (just hungry, hungry for one hour, hungry for two hours, & hungry for three + hours) and 252 levels of "fullness." My theory is that these 256 levels together correspond to values of a bite in the game (not sure about my terminology here), and that with some effort it would be possible for me to find & change this value using Pandora's Box. I haven't tried yet.

    I do wonder why Gandreas changed his mind about the Tree of Life after getting so far, though I'm not sure it really fits with Cythera anyway.



  • @breadworldmercy453_bot, on 01 April 2012 - 07:36 AM, said in Hunger:

    I guess really it's four levels of hunger (just hungry, hungry for one hour, hungry for two hours, & hungry for three + hours) and 252 levels of "fullness." My theory is that these 256 levels together correspond to values of a bite in the game (not sure about my terminology here), and that with some effort it would be possible for me to find & change this value using Pandora's Box. I haven't tried yet.

    I do wonder why Gandreas changed his mind about the Tree of Life after getting so far, though I'm not sure it really fits with Cythera anyway.

    That's an excellent theory. I think I see where Pallas is going with the nutrition stat:

    Binary__ | Hex | Decimal | Status
    xxxxxxxx | $04+| __4-255 | Not Hungry
    00000011 | $03 | ______3 | Hungry
    00000010 | $02 | ______2 | Hungry (1 hr.)
    00000001 | $01 | ______1 | Hungry (2 hr.)
    00000000 | $00 | ______0 | Hungry (3+ hrs.)

    As Pallas said, each hour $01 is subtracted from the stat, and the character is hungry for less than or equal to $03. Feeding a character adds the food's filling time to the stat. So, if you have been hungry for 3+ hours, and you eat a pomegranate, add $04 to $00, changing the byte to $04. This would make the character hungry again in 1 hr. If instead you had eaten flatbread, the byte would be $06, giving you 3 more hrs. Eating a Tree of Life apple changes the byte to $FF.

    One easy way to test this may be to have a character that has been hungry for under an hour eat a Tree of Life apple. Following this approach, there should be a byte that goes from $03 to $FF. A character who was hungry for one hour and fed grapes should have the byte go from $02 to $08.

    There are many ways that Gandreas might have stored the hunger stat, so this particular approach could be way off, but it is an easy one since the most expensive process is adding a food's filling time to the hunger stat.

    This post has been edited by The Wizard : 04 April 2012 - 03:41 PM



  • Double post!

    BW and Pallas were correct. I tested the theory for finding the nutrition stat using Selax's Tree of Life character, and this is indeed how it is stored in memory. It is easy to alter once you find it, but unfortunately, it is not static. In the Tree character's file, the nutrition stat is at address $7A64, if anyone is curious.



  • I barely understand that, Wizzy. In fact, I don't understand some of it - what do you mean by static? Does Cythera have any static stats?

    I long ago gave up on learning how to hack Cythera. The only program I ever use is Pandora's Box, which does all the work for me. Pandora's Box doesn't use dollars or hexadecimals. It uses real numbers and it is so much easier than HexEdit.



  • Ah, Pandora's Box is a good tool as well.

    By static, I meant that the nutrition stat is not stored in the same place across characters. In the Tree character uploaded by Selax, it is stored at the byte addressed at $7A64 in memory, where the $ indicates the hexidecimal number system. In our number system, this is the 31,332nd byte in the character file.

    To find and edit the nutrition stat using our number system: find a byte that goes down by 1 each hour, is hungry from 0-3, and increases by a food's maximum filling time when you feed the character.


Log in to reply