new version only with protobuf and support for file scripts