how this makes sense: Flowey takes the souls of every monster you kill. With every soul he steals, he becomes more and more appalled at the actions you're doing, regaining more and more of himself (asriel) in the process. In the ruins, he swipes toriel's soul and thanks the player for making him more powerful. Once snowdin is finished and papyrus is killed, he becomes more friendly to the player, wanting to hang out. Once you beat undyne the undying, Flowey steals her soul, and starts to become enraged at the player, which causes instability between souls. he is absent for most of hotland, only appearing as a vine to steal the souls. Once Mettaton Neo falls, He tells his story in the end, and Asriel tries to reach out to chara, to no avail. he leaves to reap the souls of the monsters who escaped the human. he kills sans himself, with no words exchanged. Once Asgore is killed, he takes the last soul and the human souls, and a new theme plays, "Battle Against Your Best Friend." Unlike the pacifist route, you can die to asriel. When that happens, he collects your soul and talks about how he "can feel every sould beating as one, and dreaming of one thing..... That this never happen again." And then promptly executes a true reset. However, in the new route, no matter what path you choose, chara will narrate in first person the entire time, encouraging you to spare, and look at all the new text!!! if you choose a genocide route in the ruins, chara will becomes silent, as one last deterrent. This only changes when a monster is spared, and won't bring about the same text as a non genocide path. Flowey also acts different in this route, mentioning the last route frequently. As soon as he notices the start of a genocide route (passing the ruins), he reaps everyones souls beforehand, and makes the player take the longest route possible using a maze of vines. If you make it all the way back, you immediately reenter the boss fight. and about the boss fight, it uses that same hitbox mechanics as sans's fight, only with 10 damage instead of 1, and the same goes for kr. sorry for the long comment, i had an idea and ran with it!