Please waitโ€ฆ

Loading WASM moduleโ€ฆ

๐ŸŒ™ EOLib WASM Demo
  • Number Codec
  • String Codec
  • Encryption
  • Sequencer
  • RNG
  • Packets
  • Encode Number

    Encoded bytes (hex)

    โ€”

    Negative values are only supported for 4-byte EO ints, in the range -2147483648 to -197815216.

    Decode Number

    Decoded value

    โ€”

    4-byte EO ints decode to a 32-bit bit pattern interpreted as int32_t. Values at or above 0x80000000 will display as negative.

    EO Number Limits
    Type Bytes Max Value Constant
    Char 1 252 EO_CHAR_MAX
    Short 2 64,008 EO_SHORT_MAX
    Three 3 16,194,276 EO_THREE_MAX
    Int 4 4,097,152,080 EO_INT_MAX
    Encode String

    Encoded bytes (hex)

    โ€”

    Encoded as Latin-1 string

    โ€”
    Decode String

    Decoded text

    โ€”
    UTF-8 โ†’ Windows-1252 Conversion

    Characters with no CP1252 mapping are replaced with ?. Replaced characters are shown in red.

    Converted string

    โ€”

    Hex bytes (CP1252)

    โ€”
    Encrypt / Decrypt Packet
    Server Verification Hash

    During the INIT handshake the client must respond with hash(challenge).

    Hash result

    โ€”
    Sequence Generator
    Step Counter Value (start+counter)
    Init Handshake โ€” Recover Start

    Server sends s1, s2 during INIT. Formula: start = s1 ร— 7 + s2 โˆ’ 13

    Recovered sequence start

    โ€”
    Ping Handshake โ€” Recover Start

    Server refreshes the sequence on PING. Formula: start = s1 โˆ’ s2

    Recovered sequence start

    โ€”
    Seed RNG (srand)

    Seed the RNG. Use the same seed to reproduce a deterministic sequence. The original EO client seeded with (uint32_t)time(NULL) on startup.

    Status

    โ€”
    Generate Random Number

    Result

    โ€”
    Generate Random Number in Range

    Result

    โ€”
    Packet Details
    โ€”
    โ€”
    โ€”
    โ€”
    โ€”
    Roundtrip (deserialize โ†’ serialize)
    โ€”

    Loadingโ€ฆ

    EOLib v0.5.0

    Endless Online Protocol