How can I customize the profile.bin ?
Closed this issue · 6 comments
How can I customize the profile.bin ? I don't want to use a level 50 attribute profile!
You can customize it in the "initials" icon (my profile) in the home screen (next to the exit icon) or in the "pencil" icon under your name in the pause menu.
You don't need to use a level 50 profile, start without a profile.bin and a new one will be created.
i meam how can i customize the file "profile.bin" .
Yes, the file profile.bin stores your profile data, which can be customized in the place I told you. Other than that, it stores your progress. What exactly do you want to customize?
If you wish to customize the avatar, it's in the "garage" icon.
Zwift.2023-11-14.09-53-27-1.mp4
profile.bin is a serialized PlayerProfile protobuf message
zwift-offline/protobuf/profile.proto
Line 33 in 69a4961
If you want to change fields that are not possible to change in Zwift interface you can do this (run from zoffline source directory):
Read and parse the file
import protobuf.profile_pb2
profile = protobuf.profile_pb2.PlayerProfile()
profile_file = 'storage/1/profile.bin'
with open(profile_file, 'rb') as f:
profile.ParseFromString(f.read())
Change what you want, for example
profile.total_xp = 500000
Serialize and write back to file
with open(profile_file, 'wb') as f:
f.write(profile.SerializeToString())
profile.bin is a serialized PlayerProfile protobuf message
zwift-offline/protobuf/profile.proto
Line 33 in 69a4961
If you want to change fields that are not possible to change in Zwift interface you can do this (run from zoffline source directory):
Read and parse the file
import protobuf.profile_pb2 profile = protobuf.profile_pb2.PlayerProfile() profile_file = 'storage/1/profile.bin' with open(profile_file, 'rb') as f: profile.ParseFromString(f.read())Change what you want, for example
profile.total_xp = 500000Serialize and write back to file
with open(profile_file, 'wb') as f: f.write(profile.SerializeToString())
OK,TKS a lot!