Perception is just a script you put on the item in the sidebar. There's "Puzzle_HiddenPerception" and "Puzzle_HiddenStoryPerception", the difference I believe being that you can add custom character display text to story perception. There's also Puzzle_InvertHiddenPerception, which makes an object disappear when you have the right perception (if you want to have a false wall for example).