pub fn field_seed(base_seed: u64, bo4e_name: &str) -> u64
Derive a deterministic per-field sub-seed from a base seed and a field name.
Uses FNV-1a-style hashing so different field names get different seeds.