*SPOILER* My attempt to de****** the thing

*SPOILER* My attempt to de****** the thing

A

If you just want to read my conclusion, please go to the conclusion section.

There is a python program to decipher the words at the end of this guide.

My First Thought

As many of you may have noticed, the words in this game actually correspond to English words, and each letter kind of corresponds to a letter of the alphabet.

If you used English for the translation, you would have guessed it easily. For example, the numbers of letters in the words that mean "one," "two," "three," correspond to the ones in the English words "one", "two", "three". Also, the part in "three" where "e" repeats is there in the word in the game. The same is true for "green," "yellow," "success," and so on. The only difficulty is that the "e" in "one" and "three" and the "t" in "two" and "three" refer to different symbols and are not uniform.

Presumably, this is a commutative cipher using shifts and letter substitutions. The shift is the so-called Caesar cipher (like "abcdef" -> "efghij"), and the character substitution is replacing each alphabet with some symbol.

In short, the letters in this game have a sequence like "...VWXYZABCDEFG...", and the letters of English words are probably shifted after being applied to it.

For example, let's consider the word which you may have translated as "container. Let's say "c" is the first letter of the alphabet. If we use the letter "c" as the base, we can determine the positions of the other letters: o:13, n:12, t:18, a:25, and so on. After that, you can get the sequence of the alphabet by finding out the location of the letters in other words in the same way based on the known letters. (I went through this tedious procedure, but later I realized that the dial in the shelf is in ascending order. Ugh.)

There may be some kind of rule in the shifts, but since there are only 26 shift patterns, I can narrow down the candidates to 26 by applying a number to each letter and applying all the shift patterns. Of these, not many should make sense as words, so we should be able to guess the correct answer without any problems. This is the reason why the Caesar cipher is so fragile.

If the shifts were as complicated as Enigma's, I would have given it up, but since I was able to decipher a few words without any particular problem, I guess this is the correct answer.... Perhaps....

It Didn't Work

... I thought that would work, but for some reason, some words don't match the letters while some do without any problems.

For example, "two". The in-game notation of the word is "25 3 20", but that can only be deciphered into "txo" or "swn".

It has to be "25 2 20" or "26 3 21" to be "two". Some other words match "3" without any problem, which means there is an overlap, gap, or further shift rule in the letter sequence.

The letters that appear earlier in the ascending order tend to be misaligned, but it's not uniform. The shift rule must have been changed from ascending order based on some variable.

When randomly deciphered words, I found that the larger the shift from the original word, the more characters were shifted, and even characters that were not young were shifted.

For example, the 4-shift word "many" is "17 5 18 4(3)" in the game, and the "4" is shifted back by one.

On the other hand, the 7-shift word "yellow" is "7(6) 12 19 19 22 5(4)", and the larger numbers such as "5" and "7" are shifted back.

I was also convinced of this when I translated "tranquility", a word that does not appear in the conversation with her.

This word with a 13-letter shift is "8(7) 6(5) 14 2(1) 5(4) 9(8) 22 25 22 8(7) 13(12)", and even "13" is subject to the shift. I didn't notice it easily because the words in dialogs have an average of about 4-shifts.

Now we can assume that the number of shifts from the actual word determines how many letters are shifted back from ascending order of the alphabet in the game .

Conclusion

So, my conclusion is as follows;

The cipher in this game is a commutative cipher using shifts and letter substitutions. In addition to the Caesar cipher-style shifts, the letters are shifted back by one shift from the ascending order of the alphabet in this game, which is determined by the number of shifts from the actual word.

For example, consider the procedure for translating "yellow".

The in-game notation is "7 12 19 19 22 5". If we simply shift this, we can only get strings like "ydkknw" or "zellox". Since the youngest character is 5, now we assume that it is shifted by 5 from the plaintext. The characters younger than 5 are shifted backward one shift from the alphabetic ascending order by the number of shifts, resulting in " 7 12 19 19 22 '4' ". The resulting string is "ydkknv", "zellow", etc., and none of them make sense. Let's look at "7", the next youngest character after "5", and assume it is a 7-shift. Then it becomes " '6' 12 19 19 22 '4' ", which can be deciphered into "yellow". After that, check if the number of shifts actually matches the condition. It has to be at least 7 shifts, and since "12" is not shifted, it has to be 11 shifts or less. If we look at the "e" applied to the "12", the "e" is a "5" in plain text, so this ciphertext has 7 shifts and matches the condition. It's a pain in the ass.

I think that all the words in the game can be deciphered by the above method, but I haven't examined it carefully, so it may be completely different. I'm embarrassed if I'm wrong. Depending on the word and the number of shifts, different letters may be represented by the same symbol so there should be a rule to avoid it. I think they're doing it well or there's a rule I'm not aware of. I also don't know if the number of shifts for each word is random or if there is a rule. It seems to me that the more letters there are, the more shifts there are, so there must be a rule. If you know, please let me know. In this algorithm, "all" and "see" are colliding, so there must be some kind of rule.

By the way, you can also read newspapers if you want to.

Volunteers have already made a guide, but it would be fun to read it by using the above decoding method. It's a good way to understand the settings, and more importantly, it's a good way to forget your feeling for the girl. Aaaaaaa.

.py Code To Decipher


*SPOILER* My attempt to de****** the thing image 31

*SPOILER* My attempt to de****** the thing image 32

I made a script in python to decipher the words.

I'll put the code directly at the bottom.

Type in the numbers of the alphabets separated by spaces and it will list 26 candidates.

I've also included the chart of the letters. I drew it with the mouse, so please forgive me.

#以下コード a=["a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z"] while True: userinput = input("enter \"exit\" to quit\n") if userinput=="exit": break word = [int(i)-1 for i in userinput.split(" ")] for j in range(26): decipherd = "" numbers = str(j)+": " for i in word: xp = i-j if xp >= 26: xp %= 26 if i < j: xp -= 1 numbers += str(i+1)+"("+str(26 if i == 0 else i)+") " else: numbers += str(i+1)+" " decipherd += a[xp] print(decipherd+" "+numbers)

Source: https://steamcommunity.com/sharedfiles/filedetails/?id=2760230299					

More 7 Days to End with You guilds