Вариант 1: На сервере вы можете отправить JSON (обычный string) (В твоем случае не рекомендую). Но он будет весить по больше в зависимости конечно же от количество полей. В юнити есть JsonUtility который позволит вам работать с данным форматом. У вас должен быть класс только для данных
public class Data {
public int field1 = 1;
public bool field2 = true;
public string field3 = "test"
}
На выходе:
{
"field1": 1,
"field2": true,
"field3": "test"
}
Вариант 2: Вы можете использовать BinaryWriter/BinaryReader и отправить на сервере byte[]. Файлы будут весить меньше. Но сохранять и загружать значения будете в ручную:
using UnityEngine;
public class Data : MonoBehaviour
{
public int field1 = 1;
public bool field2 = true;
public string field3 = "test";
// Methods
public byte[] Save()
{
MemoryStream stream = new MemoryStream();
BinaryWriter writer = new BinaryWriter(stream);
// В каком порядке записываются данные, в таком и нжно будет читать!
writer.Write(field1); // int
writer.Write(field2); // bool
writer.Write(field3); // string
// Output - byte[] который используется для отправки с помощью WWWForm.
return stream.ToArray();
}
public void Load(byte[] data)
{
MemoryStream stream = new MemoryStream(data);
using (BinaryReader reader = new BinaryReader(stream))
{
// Читаем данные.
field1 = reader.ReadInt32();
field2 = reader.ReadBoolean();
field3 = reader.ReadString();
}
}
}