Types
60 archives dans cette catégorie
-
Where an entity stands and which way it faces, optionally naming who is carrying it. Kind struct Area Game.Common Named by beta, gamemapping The positional half of ActorPositionInformation, and also sent on its own - as a bare list - to reposition entities already on the map. cell_id IS A SINGLE GRID INDEX, NOT A COORDINATE PAIR. Everything in the map protocol addresses cells this way. THREE OF THE FOUR MEMBERS HAVE EXPLICIT PRESENCE, SO ABSENT AND ZERO ARE DIFFERENT. Absent means unchanged;
- summary: Where an entity stands and which way it faces, optionally naming who is carrying it.
- area: Game.Common
- confidence: 0.93
- 0 commentaires
- 4 vues
-
How to draw an entity: its skeleton, layered art, colour overrides, scale and attached sub-entities. Kind struct Area Game.Common Named by beta The appearance record, shared by Character, ActorPositionInformation and every other message that shows an entity. MOST SCRIPTS DO NOT NEED TO DECODE THIS. It is rendering data. What it IS good for is telling entities apart cheaply - bones_id distinguishes a monster species from a player without resolving anything. indexed_colors IS PACKED, NOT A PLA
- summary: How to draw an entity: its skeleton, layered art, colour overrides, scale and attached sub-entities.
- area: Game.Common
- confidence: 0.91
- 0 commentaires
- 8 vues
-
The failed branch of a character selection. It carries no payload at all. Kind struct Area Game.Character.Management Named by beta THE BRANCH ITSELF IS THE WHOLE MESSAGE. It carries nothing: no code, no reason, no text. The client only observes that this branch was taken and runs its selection-error path. So there is nothing to inspect and nothing to report to a user beyond "the server refused". Do not go looking for an error code that is not there, and do not read the success branch to find
- summary: The failed branch of a character selection. It carries no payload at all.
- area: Game.Character.Management
- confidence: 0.96
- 0 commentaires
- 3 vues
-
One captioned group of items inside an action-item announcement. Kind struct Area Game.Inventory Named by beta A caption and the items it describes, as carried by GameActionItemListEvent. title is a localisation key, not display text. Resolve it against the client's own string table; printing it raw shows the reader an identifier. Not sent on its own — it is only ever reached inside GameActionItemListEvent. inferred Fields #FieldTypeMeaningYou set it 1titlestringThe caption for this group
- summary: One captioned group of items inside an action-item announcement.
- area: Game.Inventory
- confidence: 0.97
- 0 commentaires
- 4 vues
-
A character's gender, as the two-valued enum the protocol carries. Kind enum Area Game.Common Named by beta The gender of a character, carried by CharacterRemodelingInformation when you create or remodel one and by CharacterBaseInformation when the server describes one. THE VALUES ARE NOT NAMED HERE. No client behaviour dumped so far says which of the two means male; the client only ever turns the value into a yes/no by comparing it with 1. What the game data does show: each class has exactly
- summary: A character's gender, as the two-valued enum the protocol carries.
- area: Game.Common
- confidence: 0.94
- 0 commentaires
- 4 vues
-
Whether a haven bag room list is the complete set or an amendment to the set you already hold. Kind enum Area Game.Haven.Bag Named by beta Two states, and reading the wrong one loses rooms silently rather than raising an error. DISPATCH means the accompanying list is everything: replace what you hold with it. UPDATE means the list is a delta: keep what you hold, match each entry by room id, and overwrite only that room's theme, appending any room id you have not seen. The real client impleme
- summary: Whether a haven bag room list is the complete set or an amendment to the set you already hold.
- area: Game.Haven.Bag
- confidence: 0.93
- 0 commentaires
- 3 vues
-
One room of the player's haven bag: which room it is, and the theme currently applied to it. Kind struct Area Game.Haven.Bag Named by beta A room and its theme. Both members are plain integers and they are easy to swap, so the distinction matters: the room is WHICH ROOM, and the theme is WHAT IT LOOKS LIKE. THE ROOM IS THE IDENTITY, THE THEME IS THE PAYLOAD. When the server amends the list rather than resending it, the real client finds the room it already holds with the matching room id and
- summary: One room of the player's haven bag: which room it is, and the theme currently applied to it.
- area: Game.Haven.Bag
- confidence: 0.92
- 0 commentaires
- 3 vues
-
The account's role in the staff hierarchy, from ordinary player up to administrator. Kind enum Area Game.Account Named by beta Carried by AccountCapabilitiesEvent. On any ordinary account this is the player role and never changes. It is worth reading for one reason: it tells you when you are talking to a staff account, and staff accounts see and can do things ordinary ones cannot. Nothing in the protocol is gated on it from your side. Not sent on its own — an enum is never sent on its own.
- summary: The account's role in the staff hierarchy, from ordinary player up to administrator.
- area: Game.Account
- confidence: 0.97
- 0 commentaires
- 3 vues
-
Which section of guild data a request is asking for. Three of its six values were renumbered in Dofus 3. Kind enum Area Game.Guild Named by beta THE VALUES WERE RENUMBERED IN DOFUS 3. DO NOT REUSE THE OLD NUMBERS. The reference build declared seven sections: GENERAL=0, MEMBERS=1, BOOSTS=2, PADDOCKS=3, HOUSES=4, RECRUITMENT=5, LOGBOOK=6. The current protocol has DROPPED the paddocks section and packed the rest densely, so everything after BOOSTS shifted down by one: unchanged GENERAL 0 M
- summary: Which section of guild data a request is asking for. Three of its six values were renumbered in Dofus 3.
- area: Game.Guild
- confidence: 0.94
- 0 commentaires
- 3 vues
-
One interactive map object - a resource node, door, zaap or workshop machine - and the actions it currently offers. Kind struct Area Game.Common Named by beta Everything the client knows about one interactive object. This is the record a harvesting script actually reasons over. DO NOT TRUST FIELD NUMBERS FOR THE TWO SKILL LISTS. The current build declares disabled_skills at 3 and enabled_skills at 4 - THE EXACT REVERSE of the reference build. A script that carried the old numbering across sho
- summary: One interactive map object - a resource node, door, zaap or workshop machine - and the actions it currently offers.
- area: Game.Common
- confidence: 0.90
- 0 commentaires
- 8 vues
-
One action an interactive element offers: the harvest gesture on a field, open on a door, use on a zaap. Kind struct Area Game.Common Named by beta An action offered by an interactive object. THE TWO IDS ARE SWAPPED ON THE CURRENT BUILD relative to the reference one - skill_instance_uid is declared at 1 and skill_id at 2. Read by name, and be careful which one you send: they are both int32 and they mean completely different things. skill_id WHAT the action is, as a data-centre ski
- summary: One action an interactive element offers: the harvest gesture on a field, open on a door, use on a zaap.
- area: Game.Common
- confidence: 0.87
- 0 commentaires
- 4 vues
-
A display-only item description: its effects, plus integral members that are deliberately left unnamed. Kind struct Area Game.Inventory Named by beta The item description used in announcements rather than in the inventory. ONLY effects IS NAMED HERE, AND THAT IS DELIBERATE. The record carries integral members whose values the client does pass into its item factory, but telling the template id apart from the quantity needs a role proof this signature does not have. Historical field order would
- summary: A display-only item description: its effects, plus integral members that are deliberately left unnamed.
- area: Game.Inventory
- confidence: 0.99
- 0 commentaires
- 6 vues
-
The structured links attached to a chat line - items and monster groups - as opposed to the line's words. Kind struct Area Game.Chat Named by gamemapping What rides ALONGSIDE a chat line's text. When a player shift-clicks an item or a monster group into chat, the visible words stay in the message's content and the structured link data comes here, so the recipient's client can render the link and show a tooltip on hover. It is referenced by the four chat messages that can carry a link, and it
- summary: The structured links attached to a chat line - items and monster groups - as opposed to the line's words.
- area: Game.Chat
- confidence: 0.90
- 0 commentaires
- 6 vues
-
A creature family together with a count, as the monster-count branch of an item effect. Kind struct Area Game.Inventory Named by beta Two integers: which creature family, and how many. It is easy to confuse with ObjectEffectMinMaxValue - both are two-integer messages in the same oneof - so branch on which member of ObjectEffect is set rather than on shape. Not sent on its own — it is only ever the monster_count branch of ObjectEffect. inferred Used by ObjectEffect Fields #FieldTypeMea
- summary: A creature family together with a count, as the monster-count branch of an item effect.
- area: Game.Inventory
- confidence: 0.97
- 0 commentaires
- 5 vues
-
One monster inside a group: what it is, its grade, an optional level override, and its appearance. Kind struct Area Game.Common Named by beta The compact per-monster entry inside a monster group - the record a script reads to decide whether a group on the map is worth fighting. grade IS ONE-BASED. The client subtracts one before indexing its grade list, so grade 1 is the first grade, not the second. Off-by-one here silently reads the wrong difficulty. level IS AN OVERRIDE, NOT ALWAYS THE LEV
- summary: One monster inside a group: what it is, its grade, an optional level override, and its appearance.
- area: Game.Common
- confidence: 0.96
- 0 commentaires
- 3 vues
-
Why a character name was refused. Kind enum Area Game.Character.Management Named by beta WHY THE NAME WAS REFUSED, when CharacterCreationResult says the name was the problem. NAME_OK means the name itself is fine - so seeing it here does NOT mean the creation succeeded; read the result first and only consult this when the result blames the name. Most of these are client-checkable before you ever send: length, alphabet, forbidden characters, dash placement, capitalisation, runs of identical l
- summary: Why a character name was refused.
- area: Game.Character.Management
- confidence: 0.85
- 0 commentaires
- 4 vues
-
One item and what it currently sells for on average. Kind struct Area Game.Exchange Named by beta One entry of ObjectAveragePricesEvent, declared nested inside it. READ BOTH MEMBERS BY NAME. Their field numbers and their declared types move between builds: across the seven dumped builds the gid is number 1, 2 or 3 and the price is 1, 2 or 3, and on four of them a decoy of the SAME scalar type sits next to the real member. Position, number and type are all worthless here; only the recovered na
- summary: One item and what it currently sells for on average.
- area: Game.Exchange
- confidence: 0.91
- 0 commentaires
- 5 vues
-
One effect on an item, as a oneof over every shape an effect's value can take. Kind struct Area Game.Inventory Named by beta One rolled or intrinsic effect. action says WHICH effect this is; the oneof says what its value looks like. BRANCH ON THE ONEOF. NEVER READ A MEMBER POSITIONALLY. In protobuf an unset branch reads back as a zero, not as an absence, so a script that reads value_int unconditionally sees 0 for every string, dice and date effect and cannot tell that apart from a genuine zer
- summary: One effect on an item, as a oneof over every shape an effect's value can take.
- area: Game.Inventory
- confidence: 0.99
- 0 commentaires
- 10 vues
-
An effect expressed as a dice roll: how many dice, how many sides, plus a flat constant. Kind struct Area Game.Inventory Named by beta The dice branch of ObjectEffect, read as num dice of side sides plus const. num IS DECLARED 64-BIT ON THIS BUILD even though the client stores it in a narrower slot. Read the declared width, not the client's. The record declares a fourth integer that neither direction of the client's own conversion touches. It has no recovered meaning - it may be a decoy or a
- summary: An effect expressed as a dice roll: how many dice, how many sides, plus a flat constant.
- area: Game.Inventory
- confidence: 0.97
- 0 commentaires
- 3 vues
-
The low and high bounds of an effect that rolls within a range. Kind struct Area Game.Inventory Named by beta The min_max branch of ObjectEffect. Two numbers, in semantic order: the lower bound first. The order is recovered from where the client copies each value, not from the field numbers, so read by name. Nothing guarantees min <= max on the wire; the server has never been observed sending them inverted, but a script that subtracts them should not assume a non-negative result. Not sen
- summary: The low and high bounds of an effect that rolls within a range.
- area: Game.Inventory
- confidence: 0.97
- 0 commentaires
- 3 vues
-
One item stack: which item it is, how many, its unique handle, and the effects rolled onto it. Kind struct Area Game.Inventory Named by beta One item instance. The same record is reused across the inventory, exchange and storage protocols, so everything below applies wherever it appears. THE TWO IDS ARE BOTH INT32 AND ARE TRIVIAL TO SWAP. THIS IS THE EASIEST BUG TO WRITE AGAINST THIS PROTOCOL. gid the TEMPLATE id - WHAT KIND of item this is. Every copy of the same item in the game sh
- summary: One item stack: which item it is, how many, its unique handle, and the effects rolled onto it.
- area: Game.Inventory
- confidence: 0.93
- 0 commentaires
- 7 vues
-
One item as it sits in the inventory: the item itself, where it is, and how the player tagged it. Kind struct Area Game.Inventory Named by beta The element type of InventoryContentEvent.objects. It wraps an ObjectItem with the three things that are true of the item HERE rather than of the item in general. position IS NOT A BAG INDEX. It is the equipment slot when the item is worn, and a bag marker otherwise. Do not treat it as an ordinal you can iterate: two unequipped items can carry the sam
- summary: One item as it sits in the inventory: the item itself, where it is, and how the player tagged it.
- area: Game.Inventory
- confidence: 0.90
- 0 commentaires
- 4 vues
-
Why an inventory stack changed; the client only acts on the quest origin. Kind enum Area Game.Common Named by beta The origin carried by ObjectQuantityEvent (and by the item-added event). WHAT THE CLIENT DOES WITH IT. Exactly one thing: when the origin is ORIGIN_QUEST it announces the gained amount in chat. Every other value - ORIGIN_UNDEFINED and the two unnamed ones - is treated identically: the inventory is updated silently. TWO VALUES HAVE NO NAME. The protocol has grown: two values in t
- summary: Why an inventory stack changed; the client only acts on the quest origin.
- area: Game.Common
- confidence: 0.91
- 0 commentaires
- 3 vues
-
Which of the character's storages a per-item count belongs to: bag, bank, or haven bag. Kind enum Area Game.Common Named by invented This name is not Ankama's. It was chosen for this documentation from proven client behaviour, and is a label rather than protocol documentation. THE TYPE NAME AND ALL FOUR VALUE NAMES ARE OURS. Nothing here is attested by any naming oracle. THE NUMBERS ARE THE REAL CONTRACT and are what this signature pins; the labels are descriptions of what each number provabl
- summary: Which of the character's storages a per-item count belongs to: bag, bank, or haven bag.
- area: Game.Common
- confidence: 0.83
- 0 commentaires
- 3 vues
-
How many of one item sit in one of the character's storages, so a single stack can be reported per location. Kind struct Area Game.Common Named by invented This name is not Ankama's. It was chosen for this documentation from proven client behaviour, and is a label rather than protocol documentation. WE CHOSE EVERY NAME HERE. The record, both members and ObjectStorageKind with all of its values are our descriptive labels, derived from proven client behaviour. Beta, the 3.2 name map and the cur
- summary: How many of one item sit in one of the character's storages, so a single stack can be reported per location.
- area: Game.Common
- confidence: 0.86
- 0 commentaires
- 5 vues