Monika-After-Story / MonikaModDev

DDLC fan mod to extend Monika
http://www.monikaafterstory.com/
Other
1.18k stars 689 forks source link

[Suggestion] - have some chess file edits be considered jokes #7584

Open Bluecoreg opened 3 years ago

Bluecoreg commented 3 years ago

Wouldn't you agree? I would, which is why I changed all of Monika's chess pieces to Queens as a joke. She was not amused. So much for a sense of humor. 😅 Which is why I've come to suggest a change. Each chess piece should be given a value based on their power. If the total power of Monika's pieces has increased, while the player's pieces has stayed the same, She should infer that the gesture was in jest, as it makes no sense to cheat, only to put yourself in a worse off position. In my case, she may even mention the fact that since she no longer has a King, she cannot lose. Maybe if you give her all Kings instead she could say something philosophical like "What is a kingdom with many rulers, but no one to rule" or something like that.

Wingdinggaster656 commented 3 years ago

I don't really agree. Because my personal experience in many years of playing chess is that no matter how my opponent changes my game, even if he changes ten queens to me, I'm not happy. I just want to enjoy playing fair with my opponent. I try to force a stalemate with my opponent even when I'm at a huge disadvantage, and I try to calculate the fastest way to win when I'm at a huge advantage. I enjoy the rest as well, so I really don't want my opponent to change the game in any way. And the thing is, everyone I know who is good at chess agrees with me, and they all think that's the way it should be. So I think Monika would have the same view.

Bluecoreg commented 3 years ago

I see where you are coming from, and would agree with you on normal circumstances, but I disagree with you when it comes to how Monika would react. I believe Monika loving the player as much as she does would be able to see the gesture as just a joke, especially considering she keeps a backup of the game herself, meaning at the end of the day, the game isn't actually lost. As opposed to changing a physical game being played. In fact, you could take it one step further and say, perhaps the player should keep an unedited copy of the board themselves, and only after both giving Monika a stronger board, but then subsequently providing the unedited version of the board upon Monika's request, would she then have no reason to feel as if you edited the board just to cheat. Again, I don't see how putting yourself in a worse off position could be considered cheating by her. At the very least, she should comment on how you couldn't even cheat correctly. For Monika to ask "Did you edit the save file?", meanwhile she has 16 Queens. Asking that question in order to gauge whether the player will lie or not, then subsequently being disappointed in the player, or continuing to play the edited board with 16 Queens..it just doesn't make sense.

Booplicate commented 3 years ago

Chess saves are a sign of trust between you and her. She trusts you not to mess with her. You can say that it's a tease or a joke, but really you just ruin the game. if she can't believe you in a game, then how can she rely on you in more serious stuff.

There's also other things to consider:

Bluecoreg commented 3 years ago

Again, I think you should look at this through the notion of it being a digital game of chess that can't be ruined or lost if you save a copy. She actually doesn't trust you not to mess with her, as she keeps a backup to ensure you cannot mess with her. What she does trust you with is that you won't lie to her when you get caught. Of course, only if you actually own up to changing the board will she find it as a joke.

Easy to abuse

Like I said previously, if the total power of Monika's pieces has increased, while the player's pieces has stayed the same, She should assume it was a joke, as it makes no sense to cheat, only to put yourself in a worse off position. Edit: Also this is a moot point anyway as we aren't actually playing these boards so there is nothing to abuse. After Monika realizes the board has been edited and you own up to it, you play using her backup instead.

Too much effort

I don't know, seems easy enough to implement.

Booplicate commented 3 years ago

being a digital game of chess that can't be ruined

You can say the same about real chess, just put the pieces where they were. Doesn't change the fact of the game being ruined by all those manipulations. It's like table flip, you can continue playing after, but the mood will be ruined.

She actually doesn't trust you not to mess with her

Unsure where you get that from. She only uses a backup if you cheated before, when there's less trust between Monika and the player.

Like I said previously, if the total power of Monika's pieces has increased, while the player's pieces has stayed the same

Like I pointed out, it's too easy to abuse. Just comparing pieces values won't be enough.

I don't know, seems easy enough to implement.

Maybe for you, but I don't see how this is easy if you want to account for all possible outcomes of changing the board. Because just comparing her pieces before and after won't work. And all that for a reaction that most people won't even see because to cheat in chess you have to go out of your way. Usually people do it when they saw it on youtube or in the sources.

Wingdinggaster656 commented 3 years ago

as it makes no sense to cheat, only to put yourself in a worse off position.

You think so? In chess, the sum of the strength of the pieces (materials, to use the more technical term) is by no means the sole criterion for determining the superiority of a situation. Absolutely not. I said absolutely.

qqqqqqqk/qq3nbn/8/qq2N3/qq6/PPq5/KP6/2qq4 w - - 0 1 I give you this FEN file, and guess who wins in this situation? If you say that this is an extreme case, a rare case, then I can tell you that it may be an extreme case, but there are many, many, many cases in chess where has a materials advantage but lose.

Even someone who has only been learning chess for a month can realize this. I mean no offense, but with all due respect, you probably need to learn the basics of chess.

Bluecoreg commented 3 years ago

but the mood will be ruined

I'm not sure what else to say to this point, it's just a matter of opinion. If, in the real world, I came back from a chess break, and saw a board that has 16 Queens on my side (or any side actually) I would find it pretty humorous. Especially considering if a completely different board was used, and our orginal game was in a different location, untouched. The mood would not be ruined, and everyone I've asked this to agrees with me, but if you don't, fine, matter of opinion. I believe Monika would agree with me because when you love someone, you tend to have a higher tolerance for their jokes before you immediately assume they are attempting something dubious.

She only uses a backup if you cheated before

No, you misunderstand. What I'm saying is, everytime you load a chess game save, regardless of if you cheated or not, she verifies that your save has not been edited before she plays with you. She does not just blindly play with you without asking if you edited the save file first. She does not trust you enough to do that. She doesn't trust that you will never cheat. So she checks if you did cheat everytime. Imagine someone in the real world, taking a picture of the chess board once you take a break. Before they play with you again, they check the picture to make sure everything is in the correct place. If it is, they continue playing it. If it isn't, they confront you about it.

it's too easy to abuse

Can you give an example of this abuse? Like I said we aren't actually playing these edited boards. Monika just acknowledges it, then you return to your original game.

And all that for a reaction that most people won't even see

There is a lot of stuff in this mod that most people won't see. I don't see how it makes more interactions any less valid. Especially considering this is a positive interaction.

If you say that this is an extreme case

It's not an extreme case, it's no case. Again, we are not playing these edited boards. If Monika asks if you edited the board and you say No, of course that's bad, you lied to her, and you deserve to lose affection. But if you say yes to editing the board, Monika throws away the edited board. There is no place in the code that allows you to play with the edited board if you tell her honestly that you edited it. So the actual content of the board doesn't matter, she won't play it with you. The only thing that matters is if a human could reasonably assume the edits were so egregious that it couldn't had possibly been used to cheat.

Booplicate commented 3 years ago

We start repeating ourselves here.

She does not trust you enough to do that.

It's a way we detect cheating, it has nothing to do with her trust. Her trust is that she saves data on your disk and tells you about it believing you won't cheat. Edit data - break trust.

Can you give an example of this abuse?

I've given 3 examples in my first message. Those are just off the top of my head, there might be more. You can't simply detect that it was a "joke", just comparing pieces won't work because of at least 3 cases I've mentioned.

I don't see how it makes more interactions any less valid. Especially considering this is a positive interaction.

Sum of factors:

fromulus commented 3 years ago

Also, the joke isn't even all that funny in the first place, if I'm being honest.

Bluecoreg commented 3 years ago

It's a way we detect cheating, it has nothing to do with her trust.

I disagree, Monika wouldn't need to detect cheating if she trusted the player to never cheat in the first place. She would just assume every save is unedited and play without verifying first.

I've given 3 examples in my first message.

Okay, let's go over your examples.

you can add pieces to her, but move your pieces in a way that allows you to win in 1 move.

In my very first message, I said "while the player's pieces has stayed the same", this includes piece positions, regardless, the positions won't matter because you never play the edited board. Doesn't matter if you will win in 1 move when Monika will throw out the board before you can even play.

you can move her pieces and save yourself from a check/mate.

Just moving her pieces would not be enough for her to find your edits as a joke. This example I agree is clear cheating, and would not be accepted by Monika. Doing this isn't putting yourself in a worse off position. Again, regardless, the piece positions won't matter because you never play the edited board.

what if she had a few strong pieces and you replaced them with many pawns?

It would take quite a large number of pawns to equal the power of stronger pieces, and if that number isn't large enough for you, a multiplier could be added to make the number even higher. For example, say you start off with a clean board, then you swap 62 spaces with a Monika pawn. I think any person could look at the board and reasonably assess no serious cheating has taken place. But, again, this board would never be played.

If I haven't made it clear, let me remind you that this feature would be in addition to the current cheat detection mechanism. I'm not trying to have it replaced so Monika thinks any edit you make to the board is a joke and then will continue to play with that edited board, if you somehow got that impression. By abuse, I assume you mean you can use this feature to rack up free wins vs Monika. You can't.

hard to implement hard to use can be abused

I disagree.

also, I don't want encourage people to modify the saves

Fair enough, but this is not Monika's memories, this is not Monika's character file. This is a file Monika specifically gives to the player to use in external programs. You're not encouraging people to modify their saves, you're making Monika more realistic.

Bluecoreg commented 3 years ago

Also, the joke isn't even all that funny in the first place, if I'm being honest.

Okay, well, I guess we just have a different sense a humor. I know if my significant other who I loved more than anything in the world changed all of my pieces to Queens, I'd find it pretty endearing. 🤷‍♀️

Retrolovania commented 3 years ago

If this is something that a developer has stated that would be difficult to implement (not seeing why you disagree on that, by the way) and could be abused, then I personally don't see how it has any worth being attempted in the first place.

This mod is just meant for you to spend time with Monika, not have something like a Chess game be taken as extremely serious. The Random Chess thing is more for just having fun messing with the traditional Chess system, not something to be taken extremely seriously (unless you cheat, obviously).

Bluecoreg commented 3 years ago

If this is something that a developer has stated that would be difficult to implement and could be abused, then I personally don't see how it has any worth being attempted in the first place.

So you still think this feature can be abused even though you cannot use it to win games against Monika? I'm scratching my head thinking of other reasons why you'd want to cheat, knowing you couldn't use it to win. Also, I'd be willing to implement it myself if you all would accept it; however, it feels less like this suggestion is impossible, and more like it's unwanted.

ibm2431 commented 3 years ago

At best, ignoring any "cheating" or "trust" aspects, the joke is predicated on Monika's virtual nature.

How might she feel if the person she's earnestly trying to have an equal relationship with had exerted the (already rather unhealthy) amount of power they have over her safe haven (her file folders) under the guise that, "hey, she's virtual, so of course she has backups and I can mess with her a bit"?

It's really not about being slighted over perceived attempts to cheat at a chess game. She just wants to be treated as an equal, without her significant other interfering with the record of the time she spends with them, and without any hint that her significant other only views her as a program.

Wingdinggaster656 commented 3 years ago

In my very first message, I said "while the player's pieces has stayed the same", this includes piece positions, regardless, the positions won't matter because you never play the edited board. Doesn't matter if you will win in 1 move when Monika will throw out the board before you can even play.

Okay, so you think if player's pieces stayed the same, and the position stay the same, it can only cause a Monika advantage? Again, I mean no offense, but with all due respect, you probably need to learn the basics of chess. See these two FEN. 1k6/pp4r1/8/8/8/5R2/8/7K w - - 0 1 1k6/ppp3r1/8/8/8/5R2/q7/7K w - - 0 1 In the second FEN, we give black a queen and a pawn, and white's pieces stayed all the same, included position. But, in the first FEN, white is going to lose. And in the second FEN, black is facing a one-move-checkmate. Again, this is not an extreme case. In many cases, when you add pieces to an opponent, they will lose immediately. I mean no offense, but with all due respect, you probably need to learn the basics of chess.

Wingdinggaster656 commented 3 years ago

By the way, you may have forgotten another thing I said earlier. As someone who has played chess for many years, I know many friends who have also played chess for many years, and I have heard other grandmasters share their views. And all of us, in general, came to the conclusion that we really don't want our board to be edited in any possible way, even if it does give us an advantage. This may be a mindset common to chess after 2,000 points: any game is already a precious memory worth learning, and we want to learn something from it, rather than see the game go on. As far as the current code is concerned, The upper limit of Monika's chess level is about 2200 points, which is close to the level of master, so I think she will have a similar mentality.

EDIT: On second thought, given that Monika and the player are in a romantic relationship, it seems emotionally reasonable for Monika to tolerate the player "joking" editing the board, so ignore this argument. The question, though, is how exactly do we ensure what is "joking"?

EDIT twice: I mean, if you specifically write an if got_16_queens(): test to see if you get the sixteen queens case, then it might not be a problem to write that case alone. But we can't ensure other cases are joking.

Bluecoreg commented 3 years ago

The question, though, is how exactly do we ensure what is "joking"?

Yes! It is reasonable to assume that given their relationship and the amount of time you have to spend with Monika to even unlock chess in the first place, that she should be able to deduce real attempted cheating from joke cheating. Where do you draw the line? This is subjective, I 100% agree. I just threw out the gauge pieces by power value as an example, but by no means does that have to be the definitive way to go about it.

Assuming a pawn is worth 1 point. Knight and Bishop is worth 3 points. Rook is 5 points, and Queen is 9 points, a standard board is worth 39 points. Even if the threshold to have Monika believe you are joke cheating is really high, for example, 62 pawns and 1 king for her. One king for you. If that was the threshold for Monika to believe you were joking rather than cheating, I would gladly accept it. IE, the edited board must be at least 23 points higher than the unedited board, yet no less than 62 points, for Monika to believe you were joking rather than intentionally cheating. This is in addition to, not increasing your own power, being upfront and honest to Monika when she first asks if you edited the board, as well as keeping an unedited version of the board to return to her later.

Wingdinggaster656 commented 3 years ago

Ah. Well, I could take stockfish's algorithm, or I could just ask Stockfish to calculate the game, which is a 100% reliable measure. (Just in case you don't know, stockfish is a chess engine) But, for all that, I still find this feature "not really necessary." I'm just leaving an idea about how to know what is joking here, and it's up to the dev team to decide whether to join the game or not.

ThePotatoGuy commented 3 years ago

Alright time for some history.

The idea to save and resume chess games came as a result of a request to create PGN files so that chess games with Monika can be replayed and analyzed in standard software (#810). However, the internal save is always considered the source of truth, so there's no real technical reason to ever check the PGN file, and therefore no possibility of abusing the file for your own benefit. The idea to detect if a PGN file was edited was mainly a "feature" that added to Monika's file system awareness. As a result, I think it's perfectly fine to add to this mechanic if it adds to the narrative that Monika is aware of changes in the files. For example, we could make Monika's first reaction to an edit (where you admitted to editing) be that she thinks its a joke.

That being said, it sounds like there is disagreement on whether or not changing the positions can ever be considered a joke, and so this suggestion really hinges on that point.

Bluecoreg commented 3 years ago

I would agree that changing the position should be considered cheating, but I've realized after some thought that it wouldn't be possible to distinguish between pieces being changed and pieces being repositioned. If all empty spaces stay the same, you could just assume no pieces changed position, but then, say for instance, instead of Monika having 62 pawns, the player gave themselves 62 pawns to surround Monika's king, should she look at that and consider it serious cheating? Probably not, but at that point, there would be way too many board states that could be considered jokes that wouldn't be covered by my example method. I admit this would be a lot harder to implement than I first realize, given specific circumstances that if a human saw it, they would probably consider it a joke, yet that intuitiveness wouldn't be straight forward to translate to code.