Project Dollhouse Protocol

THIS PAGE IS OUTDATED AND DOES NOT REFLECT THE CURRENT STATE OF FREESO OR PROJECT DOLLHOUSE IN ANY WAY - IT WILL BE UPDATED IN DUE COURSE.

Due to Project Dollhouse's rapid development, this article is subject to change and may not always be up to date.

This page presents a dissection of the current Project Dollhouse protocol.

If you're having trouble, check out the Project Dollhouse forum for more help.

Field names have not yet been added (this is intentional) and will be added in due course. = Packet format = Each individual packet may have a different packet format to the last. Therefore, the only similarity is the "0x-" which the packet will always begin with. Packets may be compressed or uncompressed; if the latter is the case, the packet header will be "3" but if the former is true then the packet header will be "5". There can be no mixture of uncompressed and compressed data in the packet. Some of the packets may also use additional functions specified in the GonzoNet files (specifically PacketStream.cs, PacketHandlers.cs, PacketHandler.cs).

= Packets = Here you will find all of the current packets for Project Dollhouse.

Invalid version error
Sent when the client has a different version to the login server.

City server packets
This could be "CityInfoRequest" as specified here.

This is sent when a new city server came online.

Sent when entering the city was a success.

Sent when entering the city failed.

Character packets
This could be CharacterInfoRequest as specified here.

Sent when a character is created with information about the character.

Presumably sent by the client when a character is retired.

This is the start of many packets which does not follow the same "0x0--" pattern as before.

Session packets
Sent when a player joined a session (game) in progress.

Message / letter packets
This is sent by the client to the server and then turned into PLAYER_RECV_LETTER to be sent to the user with the GUID specified,

This packet will be sent by the client and then sent to all connected clients.

The server will return this packet if the player is already online.

Time packet
The time packet sends the client the time when it has been changed.

Lot packets
Sent by the client to buy a lot.

Sent when a lot purchase was successful.

Sent when a lot is already occupied.

Sent when a lot can't be built on.

Sent with the cost, position, lot ID, and lot name.

= Where do the packets go to? =

LoginPacketHandlers.cs
Recieves: Sends:

CityServerPacketHandlers.cs
Receives: Sends:

LoginPacketHandlers.cs
Receives:

Sends:

ClientPacketHandlers.cs
Receives:

Sends: