--- title: ArmaRAMDb - Hash Set icon: mdi:file-text-outline excerpt: Set a field value in the current client's hash table in RAMDb. --- # ramdb_db_fnc_hashSet ## Description Sets the value of a specified field in the hash table associated with the current client/player. This function automatically determines the appropriate hash ID based on the caller's identity, making it more convenient than `hashSetId` which requires manually specifying an ID. It allows storing various data types (arrays, strings, numbers, or booleans) in a field of the client-specific hash structure. ## Syntax ```sqf [_keyField, _data] call ramdb_db_fnc_hashSet ``` ## Parameters | Parameter | Type | Description | Default | |-------------|----------------------------------|-------------------------------------------|---------| | `_keyField` | String | Name of the field in the hash to set | "" | | `_data` | Array, String, Number, or Boolean| The value to store in the hash field | [] | ## Return Value None. The operation runs synchronously to store the data. ## Examples ### Store a player's loadout: ```sqf ["loadout", [getUnitLoadout player]] call ramdb_db_fnc_hashSet; ``` ### Store player preferences: ```sqf ["settings", [true, 30, "normal"]] call ramdb_db_fnc_hashSet; ``` ### Store data from a client: ```sqf ["clientInfo", [name player, getPlayerUID player]] remoteExecCall ["ramdb_db_fnc_hashSet", 2, false]; ``` ## Notes - Stores a single field-value pair in the current client's hash table - Both the field name and data parameters are required and validated - If the field already exists, its value will be overwritten - Supports various data types: arrays, strings, numbers, and booleans - This function automatically determines which hash table to use based on the caller's identity - Use `hashSetId` when you need to specify a particular hash table by ID - Complex data structures should be serialized into arrays - The operation is executed immediately and synchronously - All operations are logged for debugging purposes ## Related Functions - `ramdb_db_fnc_hashSetId`: Sets a field value in a specific hash table (when you need to specify the ID) - `ramdb_db_fnc_hashGet`: Retrieves a field value from the current client's hash table - `ramdb_db_fnc_hashGetAll`: Retrieves all fields from the current client's hash table - `ramdb_db_fnc_hashSetBulk`: Sets multiple fields in the current client's hash table - `ramdb_db_fnc_hashDelete`: Removes the current client's hash table ## Links [Hash Delete](hashDelete) | [Hash Delete Field](hashDeleteField) | [Hash Delete ID](hashDeleteId) | [Hash Get](hashGet) | [Hash Get All](hashGetAll) | [Hash Get All ID](hashGetAllId) | [Hash Get ID](hashGetId) | [Hash Set](hashSet) | [Hash Set Bulk](hashSetBulk) | [Hash Set ID](hashSetId) | [Hash Set ID Bulk](hashSetIdBulk)