Here is another way of looking at things.
1) Players make statements.
2) Statements are interpreted by the Gamestate (Rules + Rules defined
stuff) and the human beings that play the game (~Players).
3) The statement in 1) may or may not change the game state depending
on the interpretation in 2)
or,
(Gamestate + Players)
|
V
(Statement) => (Interpretation) => (Change in Gamestate)
Now statements of 1) are normally phrased as the actual change in Gamestate.
E.g.
"I vote FOR" is an attempt to cause a change in the Gamestate that
would reflect directly. Namely the Gamestate is changed to register
that "I have voted FOR". Obviously as described above that attempt may
or may not have the desired consequence depending on how it is
interpreted.
Now what do we mean when we ask if "I vote FOR" is true?
Some possible ways to look at it.
1) It is true if it changed the Gamestate as intended.
2) The statement is really "I attempt to vote FOR" and is true regardless.
3) The statement can not be assigned a truth value. It is neither true
nor false. It is simply a construct or depending on how you look at it
an "action". An action that may or may not change the Gamestate
depending on how it is intepreted.
How do these work with a knave?
1) Difficult to work out.
a) Could be considered that there is a circular contradiction
b) It is TRUE and the Gamestate is changed accordingly. There may
be some other mess rule violations etc.
2) A knave can not do anything.
3) A knave can go about their business as normal as "action
statements" are neither true not false.
Hope this helps to separate out the arguments a little.