The Network tool shows the messages going between a bot and the game: what the server sends, and what the bot or your Dofus client sends back. Open it from the bot's Tools tab. It has three panels: Traffic lists the messages, Settings chooses which ones, and Send a game message sends one by hand, which Send messages by hand covers.
Why Traffic starts empty
A bot exchanges a lot of messages. Asterobot sends none of them to Asteroboard until you choose which ones you want, so on a new bot Traffic says "No message mirrored yet. Pick some in Settings."
What you choose only changes what Asteroboard shows. The bot's script receives every message either way, and the game plays the same.
Live chat on the Console tab and Live inventory on the Inventory tab are shortcuts: they tick messages in the same list.
Choose the messages
The Settings panel holds every message Asterobot can name, with a box to tick for each.
Caution
On a MITM bot, where the bot relays the game session of your Dofus client (man-in-the-middle), ticking IdentificationRequest shows the first message your client sends. It contains the ticket that opens your game session. Never share a screenshot or a copy of that message.
- On the bot's page, click Tools, then Settings in the Network tool.
- Type part of a message name in Filter messages... to narrow the list.
- Tick the messages you want. The Select the button, which shows how many messages the filter lets through (such as Select the 12 shown), ticks all of them, and Deselect the shown unticks them.
- Click Apply. The button shows how many messages are ticked, such as Apply (3).
A notification confirms how many message types the bot now mirrors, and the line next to the button shows how many are selected out of how many exist. Apply stays greyed out while nothing has changed, and Revert, which appears as soon as you change something, puts the list back as it was last applied.
The selection belongs to the bot. It's saved with it, stays after Asterobot restarts, and is the same in every browser that opens this bot. After a game update, messages that Asterobot no longer knows by name are removed from the selection the next time Asterobot starts.
When the list can't be loaded, or Apply fails, the alert Couldn't load the message catalog appears with the reason, such as unknown game protocol message names: [...] for names Asterobot doesn't know.
Also mirror unrecovered messages
Some messages have no name Asterobot knows yet, so they can't be ticked one by one. The Also mirror unrecovered messages switch covers all of them at once: "They arrive under their obfuscated name, decoded from the schema when it describes them." Apply it like the list. Expect many of them.
Dropped messages
When messages come faster than Asterobot can pass them on to Asteroboard, it skips some rather than slow the bot down. A badge next to Apply then shows how many, such as "12 message(s) dropped - the stream couldn't keep up". The count covers this bot since Asterobot started, and nothing is lost for the bot or its script. If it keeps growing, tick fewer messages.
Watch the messages
Open Traffic. The messages you chose appear as they pass, the oldest at the top.
Each row shows, from left to right:
| Part | Meaning |
|---|---|
| Colored bar and icon | The kind of message: green for an event the server announces, red for a request, blue for a response to a request, grey when the kind is unknown. |
| Time | When the bot's connection saw the message, in UTC, down to the millisecond. |
| Name | The message's name. A message without a known name shows its obfuscated name in italics. |
| Schema or Raw | Only for messages without a known name. Schema: its fields could still be read, under obfuscated names. Raw: nothing could be read but its bytes. |
| In or Out | In comes from the game server. Out goes to it, from the bot or from your Dofus client. |
# and a number |
The message's sequence number on this connection. |
uid and a number |
Shown for requests and responses, to match an answer with its request. |
| Decode error | Asterobot couldn't fully read the message. |
Under that, a one-line preview of the message's content. Click a row, or the arrow at its start, to open it: you get all its fields as JSON, the decode error if there's one, and for a message nothing could read, its raw bytes. Fields with a default value are shown too, and large numbers appear as text in quotes. The Dofus protocol reference explains what the fields mean.
Named requests and events also have a paper plane button, Send this message again. It's meant to copy the message into Send a game message, but in this version that panel opens without it: open Send a game message, choose the same message and copy its fields from here.
Follow, pause and clear
- While you're at the bottom, the list scrolls with each new message. Scroll up and it stops; the Follow button takes you back to the newest message.
- Pause freezes the list for this bot. Messages that arrive while it's on are not kept, even though the notice says "Paused - new messages are still recorded.": they don't show up when you turn it off. Chat lines on the Console tab stop too.
- Clear empties the list for this bot, including the chat lines on the Console tab.
What's kept
Asteroboard collects the messages as soon as it opens, whichever page you're on, and keeps about the last 2,000 per bot. They're lost when you reload or close Asteroboard: Asterobot keeps no history of them.
On a MITM bot, the relay of your game can also skip messages when it can't pass them on fast enough. Your game isn't affected, but a badge above the list then says how many messages the bot's session discarded and that the list is incomplete.
Search
The box "Search, or filter with name:Ping direction:inbound" filters the list as you type. The count next to it shows how many messages match out of how many.
- Separate words with spaces: a message must match all of them. Case doesn't matter, and part of a word is enough.
field:valuelooks in one field only:name,wirename,kind,direction,bot,uid,sequence,errororpayload. The kinds areevent,request,responseandunspecified, the directionsinboundandoutbound.- A
-in front of a word or afield:valueexcludes what matches it. - A number alone finds it in any field, such as a character's id, without knowing which field holds it.
| Search | Shows |
|---|---|
Chat |
Every message with "chat" anywhere in it. |
name:ChatChannelMessageEvent |
Only that message. |
kind:request |
The requests. |
direction:inbound -kind:event |
What the server sent, except events. |
When nothing matches, the list says "No message matches this search."
To go further with messages, script authors can read Finding messages and Traffic.
Where to go next
- Send messages by hand
- The tutorial See what your game sends