When writing a Secret in the Secrets.txt File there is an opportunity to define what the Secret will do to the maze when things happen with the Secret.   It is possible to write one Secret and use it in many maze rooms.   It is possible to write many Secrets and use each Secret in it's own maze room.
In the Challenge Maze Software, Secrets take the form of objects that can be 'recovered' by a player.   Secrets are automatically 'recovered' if a player enters a room with a Secret in it and the Secret has already been 'revealed'.  
Secrets can be in a room without being 'revealed' to a player.   This means a player can walk right through the room where the Secret is located and the player would not be able to 'recover' the Secret or perhaps not even know that the Secret was there.
When a Secret is 'recovered' by a player the Secret can take actions like making entries in maze files.   The entries are generally entries that control passages and CutScenes.   The entries add passages, remove passages, lock passages, or unlock passages.   The entries can also show CutScenes in rooms that are inside of a maze and rooms at the end of a maze.
A Secret is in a room if the Secret's name is written in the Secret Name Of The Secret Kept In This Room Entry and 'Here' is written in the Secret Status Entry.   Secrets are invisible to a player until the player has solved some pre-selected challenges.   Those Challenges are pre-selected by writing in the Secret Challenges Entry.   Once those Challenges have been solved the Secret becomes 'revealed'.   Once a Secret is 'revealed' the word 'Revealed' is written by the Challenge Maze Software to the Secret Challenges Entry.   Once a Secret is 'revealed', it is automatically 'recovered' when a player enters the room in which it is kept.
Secrets can make passages become locked, unlocked, open, closed, hidden, or divulged.   A secret can even add a passage to a room where there was no passage before.   However, a Secret cannot write the room number that tells the Challenge Maze Software which room passage leads to.   That information must already be written by a Maze Maker in the (room number).txt File for the passage to work properly.
When a secret makes or changes a passage, it does so by writing to the (Passage North Entry, Passage East Entry, Passage South Entry, or Passage West Entry in the (room number).txt File.   Secrets can write to those entries just as a Maze Maker could.   The difference being that a secret can do this while a player is trying to find their way through a maze.
CAUTION ~ Adding passages to rooms where the secrets are 'recovered' may not work as expected.   The passages will not be shown immediately.   A player must re-enter a room to see the new passage(s) unless a CutScene is written that will simulate the appearance of the passage.   Alone, Secrets were not meant for this purpose, but Challenges will do something similar.   For information about how to make passages visible immediately following a Challenge, please visit the Passages Section. ~ CAUTION
There are many CutScenes involved in the presentation of secrets.   CutScenes related to secrets can be shown when:
To control whether or not the CutScenes will show at these optional times, a Maze Maker can write entries in textfiles.
For more information about the Secrets file visit the Secrets.txt File page.
For more information about the (room number) file visit the (room number).txt File page.
Secret Status Secret Name Of The Secret Kept In This Room Passages To Add To Other Rooms When A Secret Is Recovered In This Room CutScene - Secret Recovered In This Room Name Of The Secret That Unlocks Passages In This RoomFor more information about the Single Maze Finish And Start file visit the Single Maze Finish And Start.txt File page.
Ending Scene Order Secrets Types Completed Threshold Highest CutScene - Secrets Types Completed Threshold Highest Secrets Types Completed Threshold Middle CutScene - Secrets Types Completed Threshold Middle Secrets Types Completed Threshold Lowest CutScene - Secrets Types Completed Threshold Lowest