Missioncodes and towerblocks are at the advanced end of session creation, an area that I have not ventured into.
If all you want to do is use manual driving (no AI) then you don't need to worry about driver commands. Just manually drive your train setting the switches ahead as you go.
Adding driver commands introduces the AI into your operations and sets the switches for you. When the AI works well it can be a "set and forget" operation where you can sit back and watch the operation of your automated train. In reality the AI often has problems when the tasks become more complicated and the level of other traffic (AI or manual) increases. Just like in a real railroad you then need real human signallers, dispatchers and drivers to make "on the spot real time" decisions that keep the railroad operating - how many real railroads with multiple tasks, destinations and loads are fully automated that you know of?
Adding additional objects, like track marks that act as destinations or way points for an AI train, invisible signals to avoid "slow down" problems, is commonly used with driver commands to improve the traffic flow and avoid problems.
In Driver you can start by selecting a consist and adding a few simple driver commands directly into its driver command bar - such as "Driver via Trackmark <name of trackmark>", "Drive to <name of 1st industry>", "Load", "Driver to <name of 2nd industry>", "Unload", etc to see how it works. Obviously, you need to have the industries and the wagons configured for the products being loaded, carried and unloaded.
Once you have a sequence of commands working in Driver load the Session into Surveyor and add those commands into the
Driver Setup Rule so that they will be saved as part of the session. There is a wiki page on using this rule at
How_to_Use_Driver_Setup_Rule.
The key is to experiment and don't be afraid to fail - who is going to know?
Once mastered, there is a whole new area that can open up with other session rules, track triggers, more advanced driver commands, etc.