Variables being initialized BEFORE Awake ()?? How is it possible?

This is driving me crazy, and I’m not being able to debug it!!

A few variables declared in a class I’ve created for a game I’m developing are already initialized IN THE FIRST LINE OF AWAKE, before any code is run in that class!! How is that possible at all?
I don’t know what I have done wrong, but as an example I have declared an int variable [HideInInspector] public int m_NumberOfPlayers, which is set to “3” and also an Array called [HideInInspector] public PlayerCap m_PlayerCaps, which already has a count of “3” when Awake () kicks off.

How is this even possible? Can someone give me a clue or even some kind of hint on how I can debug this?

public variables are initialised with values assigned in the inspector, not with values set in code.
Take off the [HideInInspector] decoration and you’ll be able to change that value.