Content: Slate Blackcurrant Watermelon Strawberry Orange Banana Apple Emerald Chocolate Marble
Background: Slate Blackcurrant Watermelon Strawberry Orange Banana Apple Emerald Chocolate Marble
Pattern: Blank Waves Notes Sharp Wood Rockface Leather Honey Vertical Triangles
Welcome to TerraFirmaCraft Forums

Register now to gain access to all of our features. Once registered and logged in, you will be able to contribute to this site by submitting your own content or replying to existing content. You'll be able to customize your profile, receive reputation points as a reward for submitting content, while also communicating with other members via your own private inbox, plus much more! This message will be removed once you have signed in.

  • Announcements

    • Dries007

      ATTENTION Forum Database Breach   03/04/2019

      There has been a breach of our database. Please make sure you change your password (use a password manager, like Lastpass).
      If you used this password anywhere else, change that too! The passwords themselves are stored hashed, but may old accounts still had old, insecure (by today's standards) hashes from back when they where created. This means they can be "cracked" more easily. Other leaked information includes: email, IP, account name.
      I'm trying my best to find out more and keep everyone up to date. Discord (http://invite.gg/TerraFirmaCraft) is the best option for up to date news and questions. I'm sorry for this, but the damage has been done. All I can do is try to make sure it doesn't happen again.
    • Claycorp

      This forum is now READ ONLY!   01/20/2020

      As of this post and forever into the future this forum has been put into READ ONLY MODE. There will be no new posts! A replacement is coming SoonTM . If you wish to stay up-to-date on whats going on or post your content. Please use the Discord or Sub-Reddit until the new forums are running.

      Any questions or comments can be directed to Claycorp on either platform.
Vampire737

COOKING RE-DO

37 posts in this topic

@chocmerc - while it's true everyone has different tastes, this is usually cultural, which is a good case for randomizing based on seed at least. I just don't want to over-complicate the system is all; one thing at a time, you know?

 

@trancengopher - As above, I can see where that would work, but I'd call it more of a bonus feature than a good base line feature. It would be far better to balance the taste experimentation in general first, then move on to individual preferences and moving targets, no matter how minor.

 

@AllenWL - My described system is mostly complicated when looking at how the computer handles it; it looks like massive arrays of numbers and boring statistics. It would play out not unlike the system you describe in practice. I'm open to other ideas, but giving every food a compatibility with every other food? You do realize that's somewhere around 380 value ranges total, right? Assuming 20 ingredients, with 19 values each, that is. Under the system I recommended of 5 fixed tastes, that would be 100, and as new foods are added, it would be scaling linear as opposed to exponential.

 

 

Another thought; it was brought up before that player-specific preferences are a highly exploitable aspect; why not re-roll till you get a common food type or combo attached to you for example? Player-taste is a whole extra set of new code over what we have now, whereas seed-varied recipes based on a taste system would be relatively little coding, and mostly design work (which us non-java-literate moochers can actually contribute to with research and number-crunching). 

 

Honestly, I'd just like to see Taste-based cooking period. And knowing indie development, we honestly should be happy with that for now (This is nothing against Bioxx/Dunk: this is coming from someone who has done mod work in the past for other games; it takes time and effort, of which very little is really 'fun', so I always try for 'better' first, 'ideal' later, and am appreciative of whatever I get, no matter how small). Personalized taste is an extra layer on top of the proposed system functionally, and would require more code. You may notice that most ideas which actually get implemented in decent are the ones which add the most to the game, with the least amount of work. (also whatever the modder likes most, which, it's their time, so I think it's completely appropriate). I'd like to avoid 'feature creep' as we call it in the biz, lol.

 

A final note: I call it Taste rather than Flavor because Flavor is scent-based, and Taste is what you sense with your tongue. There are over 25 known scents which impact taste perception, so yeah. That's also why loosing your smell kills your perceived sense of taste usually.

 

EDIT: wow, am I a broken record much? Sorry, I'll have to re-write this later to be less repetitive...

0

Share this post


Link to post
Share on other sites

@AllenWL - My described system is mostly complicated when looking at how the computer handles it; it looks like massive arrays of numbers and boring statistics. It would play out not unlike the system you describe in practice. I'm open to other ideas, but giving every food a compatibility with every other food? You do realize that's somewhere around 380 value ranges total, right? Assuming 20 ingredients, with 19 values each, that is. Under the system I recommended of 5 fixed tastes, that would be 100, and as new foods are added, it would be scaling linear as opposed to exponential.

Well, we have 55 food we can use to make a meal(well around) so yes, that is a lot, but seeing we have well over 600 combinations for meals, I don't think it will be much more complicated then it is now.

 

And really the main point is "meals should not a game of chance with a 600+ sided dice" right?

 

If food has comparability that doesn't change (say, steak and potatoes and wheat bread) then after some experimentation, you know what makes a non-terrible meal, so after that, it's a simple matter of remembering that. Also, if comparability with food doesn't change, it means that we can have comparability that makes sense, like steak and potatoes and wheat bread are compatible, but eggs, cheese, and lemon aren't, so we can try to guess what makes a good meal, rather then just toss in everything and try to remember what combination we tried out.

 

Also, by simply having the comparability rate change, we can make getting non-terrible meals a simple matter of remembering and what was compatible, but still have making great meals a matter of experimentation.

 

I'd say it would work fine, and not be as annoying as it was before

0

Share this post


Link to post
Share on other sites

Well, we have 55 food we can use to make a meal(well around) so yes, that is a lot, but seeing we have well over 600 combinations for meals, I don't think it will be much more complicated then it is now.

 

And really the main point is "meals should not a game of chance with a 600+ sided dice" right?

 

It's 685,795... not 600. So you're off by just a little bit. :P

 

Edit: It should also be noted that in my testing, meals that have all 4 ingredients are at about a 50/50 chance of being non-terrible.

1

Share this post


Link to post
Share on other sites

If food has comparability that doesn't change (say, steak and potatoes and wheat bread) then after some experimentation, you know what makes a non-terrible meal, so after that, it's a simple matter of remembering that. Also, if comparability with food doesn't change, it means that we can have comparability that makes sense, like steak and potatoes and wheat bread are compatible, but eggs, cheese, and lemon aren't, so we can try to guess what makes a good meal, rather then just toss in everything and try to remember what combination we tried out.

 

 

your idea DOESN'T support personal tastes at all... you might think that steak and potatoes is compatible since you like it, but not everyone like right? what if a person form some country never tasted steak and potatoes , and therefore never knew that they are compatible, so to him it's just like the same current system. a slot machine. and therefore it's impossible to make fixed compatible food types that everyone would know, but everyone have tasted the 5 different tastes, an there for knows that sweet taste good to him (for most people) 

0

Share this post


Link to post
Share on other sites
@AllenWL - As mentioned, the numbers are off slightly. Now that I've had a chance to look up all the food types available, you would have to MANUALLY set values for all other ingredients with each ingredient. this is 55 value ranges set by-hand for 55 ingredients, which is around 1500 values you have to set by hand. The next ingredient you add to TFC will need 55, the next will need 56, and the next will need 57, etc. In the current system, no value ranges for anything are set by-hand; a code blindly, randomly crunches out if a combo is good or bad. The model I propose would take 275 value ranges, and the next ingredient will take only 5 more, and so on. Also, note that TFC devs (and many players) actually very much like that recipies are not fixed; you cant load up a new world and look for meat and potatoes every single time. This is just part of TFC, and asking it to be different than that isnt really on the table right now as far as the devs are concerned, and I more or less agree.
 
I'd like to also point out that TFC marginally benefits you for using common knowledge. But advanced knowledge will give you a great leg up (how do you shape metal? What rocks do you find iron in? how do you make leather? etc). Similarly, how everyone in America would know steak and potatoes go well together, few would know WHY.
 
@Kittychanly - good to know about the 4-ingredients. Ultimately though, I don't think the issue/suggestion is concerned with the difficulty to find good recipies, but the lack of interesting mechanics attatched. Even if the slot machine pays out 50/50, you still are just pulling a leaver, not using your brain ;)
 
As always, let me know if I could be of help in making this a reality, should Bioxx/Dunk approve of it. I am an experienced python/C++/C# coder, but am rather inexperienced with Java. Never the less, I do have experience modding and working on game design documents and indie projects.
0

Share this post


Link to post
Share on other sites

your idea DOESN'T support personal tastes at all... you might think that steak and potatoes is compatible since you like it, but not everyone like right? what if a person form some country never tasted steak and potatoes , and therefore never knew that they are compatible, so to him it's just like the same current system. a slot machine. and therefore it's impossible to make fixed compatible food types that everyone would know, but everyone have tasted the 5 different tastes, an there for knows that sweet taste good to him (for most people) 

It was a random food I could think of, and a example would you rather I said food 1 and food 2?

And frankly, I dislike steak and potatoes. You can't make it fit for everyone, you just have to try to make it fit for as much people as you can.

And same thing goes with tastes.

What if I hate sweet things? What if I dislike 'savory' and rather like bitter or sour?

Just because that idea uses the tastes of foods, and another idea uses the foods themselves, doesn't make one better or worse.

I mean, one idea is basically make certain foods make non-terrible meals, and another idea is basically give food tastes, then make certain tastes make non-terrible meals

If steak, potatoes, and apples make a good meal, and a meal with 'savory' 'savory' 'sweet' make a good meal, and potatoes and steaks are savory and apples are sweet, at the end of day, it's the same thing

 

 

 

 

@AllenWL - As mentioned, the numbers are off slightly. Now that I've had a chance to look up all the food types available, you would have to MANUALLY set values for all other ingredients with each ingredient. this is 55 value ranges set by-hand for 55 ingredients, which is around 1500 values you have to set by hand. The next ingredient you add to TFC will need 55, the next will need 56, and the next will need 57, etc. In the current system, no value ranges for anything are set by-hand; a code blindly, randomly crunches out if a combo is good or bad. The model I propose would take 275 value ranges, and the next ingredient will take only 5 more, and so on. Also, note that TFC devs (and many players) actually very much like that recipies are not fixed; you cant load up a new world and look for meat and potatoes every single time. This is just part of TFC, and asking it to be different than that isnt really on the table right now as far as the devs are concerned, and I more or less agree.

True, that would be much simpler, and probably a better system than mine, which is basically meat, bread, fruit makes non-terrible meals. with what specific foods make a great meal and ok meals and whatnot shuffled. 

 

So, we make meals, and depending on the flavor used, we get the quality of the meal, and depending on the flavors used and the quality of the meal, we see what flavors(what ingredients) we should add, subtract, or add more/less of.

Yea, better then my idea.

You know I'd like it if we had spices we could use to add to the flavor of the meal. that would be nice

0

Share this post


Link to post
Share on other sites

Another thought; it was brought up before that player-specific preferences are a highly exploitable aspect; why not re-roll till you get a common food type or combo attached to you for example?

Because we can easily make this approach not feasible by hashing player name or another unique parameter into the value. With the proposed Mojang's highly anticipated feature of displayNames this might become exploitable, but even then I would really like to see a minmaxer that would reroll his character name several hundred times just to get a miniscule taste preference adjustments to work in his favour.

0

Share this post


Link to post
Share on other sites

Because we can easily make this approach not feasible by hashing player name or another unique parameter into the value. With the proposed Mojang's highly anticipated feature of displayNames this might become exploitable, but even then I would really like to see a minmaxer that would reroll his character name several hundred times just to get a miniscule taste preference adjustments to work in his favour.

Hashing with the player name and not using the seed would solve the issue, but then make it the same every time. Hash the player name with the seed and you only prevent sharing of seeds, not re-rolling. And, as mentioned before, you have now added another level of complexity to the implementation by developing said name retrieval and hashing, in addition to the base requirement of the taste system and personal taste variant system. Not saying it can't be done, or ultimately that I personally care if you want to minmax RNG. I'm just saying 'one step at a time.' So Taste system first, then personal tastes IMHO.

1

Share this post


Link to post
Share on other sites

Hashing with the player name and not using the seed would solve the issue, but then make it the same every time. Hash the player name with the seed and you only prevent sharing of seeds, not re-rolling. And, as mentioned before, you have now added another level of complexity to the implementation by developing said name retrieval and hashing, in addition to the base requirement of the taste system and personal taste variant system. Not saying it can't be done, or ultimately that I personally care if you want to minmax RNG. I'm just saying 'one step at a time.' So Taste system first, then personal tastes IMHO.

Wait, what complexity, where? 

PreferenceMap base = parsePreferences(World.getSeed(), PreferenceMode.BASE) //base == 1PreferenceMap player = parsePreferences(player.getPlayername().hashCode(), PreferenceMode.PLAYER) //player == 0.05mergePreferences(base, player)  //merge player to basereturn base;

Above is pretty much the jist of additional complexity it is required to add player tastes. Mode is affecting the boundaries preferences fluctuation is going to occur, and could itself be just a multiplier of base wrapped in an enumeration for convenience and parameters consistency as shown in pseudocode's comments.

 

Regarding your concerns about world rerolls:

I see absolutely no problem with that. There's no way to avoid world rerolls unless you make ALL prefernces based on player entity (which will, for one thing, screw a bunch of people up, for another eliminate the sence of discovery from cooking because preferences will become static pretty much). And even then, world gets rerolled for a great deal more reasons than just wanting to get more convenient meal recipes - ores, terrain, maybe even you spawn on a desert island surrounded by ocean spanning five thousands blocks in every direction.

And then, you seem to think that player-specific preferences is something that is geared towards SSP, where rerolls generally happen. Which is not true at all - you wouldn't even notice something like this unless you are playing with other people. And SMP worlds don't generally get rerolled because of something like meal seed values.

0

Share this post


Link to post
Share on other sites

I agree, in single player you have no way of knowing if this mean is good because it's a great meal but has flavors your character doesn't like, or if it's a ok meal and has flavors your characters likes, etc, etc

And anyways, by the time you get to make meals and find out your characters tastes, you'll have to be at least starting the copper age, or almost out of the stone age.

Would you really reroll your world just because the food you have won't make a great meal because the food you found does not have a flavor that your character likes?

I don't think so

1

Share this post


Link to post
Share on other sites

Ah, I see. I wasn't aware the pieces needed were already present. In that case, yeah, I see no problem with it. It will take more balancing, but it's managable. 

0

Share this post


Link to post
Share on other sites

 it means that we can have comparability that makes sense, like steak and potatoes and wheat bread are compatible, but eggs, cheese, and lemon aren't, 

 

Someone hasn't had a great cheesy  hollandaise sauce i see... <3

1

Share this post


Link to post
Share on other sites