You can introduce masternode feature to keep network alive and clicking. Or introduce active nodes and maintain it on your own.
You just stated what i was thinking about, I think that for the application type (game) masternodes should be the way to go, we should reengineer the architecture to really makes the game playable, enjoyable and more secure.
I was thinking that having some kind of constraint on block generation, that enforce a block to include all transactions that at least 2 or more masternodes aspects to receive, should ensure that clients know if their transaction is received by the net and miners can't cheat during block generation.
Don't know if i made clear my point. I try to explain in a more descriptive way:
MasternodeMasternodes are special kind of nodes that host pending transaction and are linked togheter, in a way that allow them to be redundant and updated.
They apply validation on incomin transactions, to reject invalid ones, and hold a list of pending transaction that they expect to be included in the next block.
They could have a logic to include the transaction that act like "if transaction is valid, and has been received in 30 seconds since last generated block, include in the "next block expected transaction list", otherwise park it for the further block.
Dispatched Messages- If a masternode accepts a transaction, he sends a packet to the network, communicating that he is expecting tx XXXX being included into block YYYY so that any client is aware of that. (and here a client can know if a transaction he sent will be into the next block or not)
- When the time threshold to include transactions in the next block has elapsed (in my example it's 30 seconds) MasterNode sends a packet that include the list of transactions the next block has to generate (this way every miners node knows what they should work on, and every new generated block have to include that transactions in order to be accepted by the network
- Generated blocks must be accepted by Masternodes
What does this mean practically:
When a player sends a move transaction, the transaction is sent to one of masternode and the client will have an async feedback about the sent transaction ACK (IncludedInBlockXXX/Rejected), this way the clients can shows the transaction status clearly.
At the same time, the player know for sure that his transaction will be included in that specific block, without having bad surprises like i had.
Masternodes should have a sort of consensus algo that exclude masternodes that act strangely and of course there must be some kind of elasticity in accepting transactions on different masternodes, because of latency, but every masternode must have the same UTC time.
Whenever a masternode receive a tx, it have to relay it to other masternodes that must agree on including it on the next block, so a clever syncronization alghoritm has to be thought, i'm just stating the bare logic behind
P.S.
I'm pretty sure this will remain in the limbo of the "cool things to do but there aren't people working on it"