You’re right, they don’t go in the DB.
This is what I got in the vardefs when creating the field with a value (given in Studio, not in the Edit view):
cache/modules/PGR_PgrCustomModule/PGR_PgrCustomModulevardefs.php
'html_c' =>
array (
'inline_edit' => '',
'labelValue' => 'html',
'required' => false,
'source' => 'non-db',
'name' => 'html_c',
'vname' => 'LBL_HTML',
'type' => 'html',
'massupdate' => '0',
'default' => '<p>Some value.</p>',
'no_default' => false,
'comments' => '',
'help' => '',
'auto_new' => '',
'auto_edit' => '',
'importable' => 'true',
'duplicate_merge' => 'disabled',
'duplicate_merge_dom_value' => '0',
'audited' => false,
'reportable' => true,
'unified_search' => false,
'merge_filter' => 'disabled',
'len' => '255',
'size' => '20',
'default_value' => '<p>Some value.</p>',
'studio' => 'visible',
'dbType' => 'text',
'id' => 'PGR_PgrCustomModulehtml_c',
'custom_module' => 'PGR_PgrCustomModule',
So, there’s the answer to your original question: the field only has a default value, not a variable value, and it is set in Studio, and saved in the vardefs.
EDIT: For some reason, I don’t see the value being shown in the Detail view. But it’s there in the Edit view (non-editable). This is likely a bug…