I have another question: if not all client use the +1 system then how will they get a distinct nonce or could there be a possibility of an input hash not having a nonce
The purpose of a nonce is a variable to vary the block header such that each hash is different. Hence, it wouldn't matter if it is unique or not, so long as the miner isn't hashing the same thing over and over again. Take this oversimplified example, for example 100001 is the entire block header and the nonce is 0000. Not incrementing the nonce would be equivalent to hashing 100001 over and over again, which yields the exact same hash and isn't helpful in helping us to find a valid block. If we were to increment the nonce, we could hash 100011, which yields a completely different block hash and we could change that until we find a valid block.
The nonce can be zero, but it cannot be non-existent.
I get the point that the nonce have got to start with a zero but, I thought it was a number that gets manipulated by means of an increase until you get an unused one that haves it’s start at zero to be used for a block header.
Nonce doesn't have to be unused across everything. It just has to be unused for any given block header, if you were to reuse a nonce, you would be hashing something that has been hashed by you before. It would be a big waste of resources.
All miners should have a unique blockheader, whether it is by varying the extranonce, transaction order, or anything else that would make the block header different.