code: func (m *pendingMessage) priority() int {
  	switch m.t {
  	case
  		// These messages provide context needed for the rest of the tick
  		// and should have the highest priority.
  		int32(dota.NET_Messages_net_Tick),
  		int32(dota.SVC_Messages_svc_CreateStringTable),
  		int32(dota.SVC_Messages_svc_UpdateStringTable),
  		int32(dota.NET_Messages_net_SpawnGroup_Load):
  		return -10
  
  	case
  		// These messages benefit from having context but may also need to
  		// provide context in terms of delta updates.
  		int32(dota.SVC_Messages_svc_PacketEntities):
  		return 5
  
  	case
  		// These messages benefit from having as much context as possible and
  		// should have the lowest priority.
  		int32(dota.EBaseGameEvents_GE_Source1LegacyGameEvent):
  		return 10
  	}
  
  	return 0
  }
docs: // Calculates the priority of the message. Lower is more important.