Class: S2M_HEARTBEAT2_Packet Deprecated
- Inherits:
-
Object
- Object
- S2M_HEARTBEAT2_Packet
- Includes:
- SteamPacket
- Defined in:
- lib/steam/packets/s2m_heartbeat2_packet.rb
Overview
This class represents a S2M_HEARTBEAT2 packet sent by game servers to master servers
It is used to signal the game server’s availability and status to the master servers.
Constant Summary collapse
- DEFAULT_DATA =
Default data to send with a S2M_HEARTBEAT2 packet
{ :appid => 320, :bots => 0, :challenge => nil, :dedicated => 0, :gamedir => 'hl2mp', :gameport => 27015, :gametype => 'ctf', :lan => 1, :map => 'null', :max => 24, :os => 'l', :password => 0, :players => 0, :product => 'hl2dm', :protocol => 7, :region => 255, :secure => 0, :specport => 0, :type => 'd', :version => '1.0.0.0' }
Constants included from SteamPacket
SteamPacket::A2M_GET_SERVERS_BATCH2_HEADER, SteamPacket::A2S_INFO_HEADER, SteamPacket::A2S_PLAYER_HEADER, SteamPacket::A2S_RULES_HEADER, SteamPacket::A2S_SERVERQUERY_GETCHALLENGE_HEADER, SteamPacket::C2M_CHECKMD5_HEADER, SteamPacket::M2A_SERVER_BATCH_HEADER, SteamPacket::M2C_ISVALIDMD5_HEADER, SteamPacket::M2S_REQUESTRESTART_HEADER, SteamPacket::RCON_GOLDSRC_CHALLENGE_HEADER, SteamPacket::RCON_GOLDSRC_NO_CHALLENGE_HEADER, SteamPacket::RCON_GOLDSRC_RESPONSE_HEADER, SteamPacket::S2A_INFO2_HEADER, SteamPacket::S2A_INFO_DETAILED_HEADER, SteamPacket::S2A_LOGSTRING_HEADER, SteamPacket::S2A_PLAYER_HEADER, SteamPacket::S2A_RULES_HEADER, SteamPacket::S2C_CHALLENGE_HEADER, SteamPacket::S2C_CONNREJECT_HEADER, SteamPacket::S2M_HEARTBEAT2_HEADER
Instance Method Summary collapse
-
#initialize(data = {}) ⇒ S2M_HEARTBEAT2_Packet
constructor
Creates a new S2M_HEARTBEAT2 packet object based on the given data.
-
#to_s ⇒ String
Returns the raw data representing this packet.
Constructor Details
#initialize(data = {}) ⇒ S2M_HEARTBEAT2_Packet
Creates a new S2M_HEARTBEAT2 packet object based on the given data
51 52 53 54 55 56 57 58 59 60 61 62 63 |
# File 'lib/steam/packets/s2m_heartbeat2_packet.rb', line 51 def initialize(data = {}) data = DEFAULT_DATA.merge data if data[:challenge].nil? raise SteamCondenserError, 'You have to provide a challenge number when sending a heartbeat to a master server.' end bytes = 0x0A.chr data.each { |k, v| bytes += "\\#{k}\\#{v}" } bytes += 0x0A.chr super S2M_HEARTBEAT2_HEADER, bytes end |
Instance Method Details
#to_s ⇒ String
Returns the raw data representing this packet
68 69 70 |
# File 'lib/steam/packets/s2m_heartbeat2_packet.rb', line 68 def to_s [@header_data, @content_data.string].pack('ca*') end |