Skip to content

Commit

Permalink
Rename hash field to _hash and document it properly
Browse files Browse the repository at this point in the history
  • Loading branch information
LizzyFleckenstein03 committed Mar 9, 2021
1 parent 88a1a5d commit fe97d1b
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 1 deletion.
6 changes: 6 additions & 0 deletions doc/lua_api.txt
Expand Up @@ -2040,6 +2040,12 @@ Some of the values in the key-value store are handled specially:
* `palette_index`: If the item has a palette, this is used to get the
current color from the palette.

Item metadata is usually not fully sent to client (except the client has
local map saving enabled or it is disabled globaly by the server). Only
the fields `description`, `short_description`, `color`, `palette_index`
and `tool_capabilities` are always sent. If there are any other fields,
they will be hashed into an additional `_hash` field.

Example:

local meta = stack:get_meta()
Expand Down
2 changes: 1 addition & 1 deletion src/itemstackmetadata.cpp
Expand Up @@ -78,7 +78,7 @@ void ItemStackMetadata::serialize(std::ostream &os, InventoryOptimizationOption
}
std::string hash_str = os_hash.str();
if (! hash_str.empty()) {
os2 << "hash" << DESERIALIZE_KV_DELIM
os2 << "_hash" << DESERIALIZE_KV_DELIM
<< murmur_hash_64_ua(hash_str.data(), hash_str.length(), 0xdeadbeef) << DESERIALIZE_PAIR_DELIM;
}
os << serializeJsonStringIfNeeded(os2.str());
Expand Down

0 comments on commit fe97d1b

Please sign in to comment.