Recordings
The packet console shows what a game is sending and receiving, live, and old messages fall off the end. A recording saves what the console is holding for a game to a file, so you can open it again after a restart, scrub through it, filter it and search it.
Saving
Phantom keeps each game's recent messages while it plays, dropping the oldest as new ones come in. Save in the Packets header writes them to a recording. There's no record button to press first: you save after the thing you want has happened.
How far back a recording goes depends on Settings › Packets › Messages kept for each game. The default is 5,000 per game and the maximum is 50,000, which on a busy account covers a good part of an evening and takes about a megabyte on disk.
If several games are in view, Save takes all of them, and each message is marked with the account it came from.
Reading one back
Saved recordings are listed down the left of Packets, under Reading. Open one and the console reads it instead of the live games, with the same rows, command list, filters, search and inspector. Live at the top of the list, or the button in the header, switches back to the games, which kept playing meanwhile.
The transport under the header:
- Play runs the recording at the speed it happened, filling the list as it goes.
0.25×to20×change the speed. Playing from the end starts again from the beginning. - The bar is the recording's traffic over time, each slice as tall as the number of messages in it and split into sent and received. Busy moments stand out, so you can drag straight to them.
- Step moves one message at a time and selects it, which is useful for reading a handshake.
- Into the game plays the recording into a running game. See Playing one into the game.
| Key | Does |
|---|---|
| Space | Play or pause |
| ← → | Step back or forward |
| ↑ ↓ | Move through the rows |
| Enter | Open a row in the inspector |
| / | Search |
Rename and delete a recording from its row in the list.
What's in the file
A recording holds the frames themselves: rooms, items, trades, buddies and chat, both what the account did and what the server sent back. Treat it like a screen recording of the same session before you share it.
Some things never reach the log, so they're never in a recording:
- the Animal Jam auth token, which is the account's sign-in;
- the game session id and this computer's device fingerprint, which the client sends in the login;
- the account's email addresses, including one typed into the email confirmation popup (for a younger player, usually a parent's);
- a player wall's service token.
Each is replaced in the frame by a word saying what was there, so the message still reads properly.
Leave out what people wrote, in the save dialog, drops chat and Jam-A-Gram messages entirely instead of blanking their text. Everything else is kept.
Playing one into the game
Into the game, at the right of the transport, plays a recording into a game on this computer. The game acts the session out: rooms load, animals walk about and chat appears, at the transport's speed.
Pick the game to play it into. It doesn't have to be the account that was recorded, so you can play someone else's session, or your own from last week, into whatever is open. If the recording holds more than one account, pick which one to play, since two at once in one window can't be followed.
Nothing is sent to Animal Jam
Only messages the server sent are played, and only to the Flash player on your screen. The server hears nothing and your account does nothing.
Messages your client sent are never replayed. Firing thousands of stale commands at a live account is what a banned account looks like, so the replay can't do it: it only reaches the call that hands a frame to the client. To send a recorded message to the server, open it in the composer and send it by hand. See Sending a message back.
The game will end up in a mess
Phantom warns you about this in the dialog too. A frame belongs to the session it was recorded in, and its room ids, user ids and item ids mean nothing in yours. The client believes all of it, so after a replay the screen shows a session that isn't happening: animals in a room the server never put you in, items that aren't in your inventory, chat from people who aren't there. Moving, chatting and trading won't work properly.
None of it touches your account or lasts. When the replay ends, the banner under the transport offers Start the game again, which closes the game and signs it back in.
Phantom lets you replay into a game that's playing because that's the only state a game is ever in: the client joins a world as soon as it connects. So it asks first, says what will happen, and offers to fix it afterwards.
While it plays
- The usual transport controls work, and the list scrolls in step with the game.
- Stop stops at once, mid-message if need be. Scrubbing, stepping, Home, End and Space stop it too.
- Closing the game, or losing its connection, stops the replay.
- Messages the game won't accept out of their session are counted as refused beside the progress and skipped.
- Only one replay runs at a time. Starting another stops the first.
- Replayed messages go through that game's log too, marked Sent by Phantom, so a long replay pushes the game's own recent messages out of the log. Save anything you want from it first.
Sending a message back
Open a recorded message in the composer, pick a game that's playing, change what you want and send it. This is the only way to send something from a recording to the server: one message at a time, by hand.
Where they're kept
In Phantom's own folder, one gzipped file per recording with a small index beside them. Phantom keeps 50 recordings and up to half a gigabyte; past either limit, the oldest are deleted.