### Godot version

4.1.dev4

### System information

Windows 10 - Godot 4.1.dev4 - Compatibility

### Issue description

When you syncronize 2 variables and both are in watched mode (taking out the "sync" property too) the server crashes

### Steps to reproduce

Create a MultiplayerSynchronizer, export 2 variables from a script, connect the server and the client and the server will crash instantly

In the project I give, the server and client are connected automatically when you use 2 debug instances when pressing play

### Minimal reproduction project

[minimalproject.zip](https://github.com/godotengine/godot/files/11665652/minimalproject.zip)

List<uint32_t> sync_ids;
	for (uint32_t i = 0; i < sync_len; i++) {
		sync_ids.push_back(decode_uint32(&p_buffer[ofs]));
		ofs += 4;
	}
	ERR_FAIL_COND_V_MSG(name_len < 1, ERR_INVALID_DATA, "Zero spawn name size.");
	
	const String name = String::utf8((const char *)&p_buffer[ofs], name_len);
	ERR_FAIL_COND_V_MSG(name.validate_node_name() != name, ERR_INVALID_DATA, vformat("Invalid node name received: '%s'. Make sure to add nodes via 'add_child(node, true)' remotely.", name));
	ofs += name_len;
	
	Node *parent = spawner->get_node_or_null(spawner->get_spawn_path());
	ERR_FAIL_COND_V(!parent, ERR_UNCONFIGURED);
	ERR_FAIL_COND_V(parent->has_node(name), ERR_INVALID_DATA);
	Node *node = nullptr;
	if (scene_id == MultiplayerSpawner::INVALID_ID) {
		
		ERR_FAIL_COND_V(p_buffer_len - ofs < 4, ERR_INVALID_DATA);
		uint32_t arg_size = decode_uint32(&p_buffer[ofs]);
		ofs += 4;
		ERR_FAIL_COND_V(arg_size > uint32_t(p_buffer_len - ofs), ERR_INVALID_DATA);
		Variant v;
		Error err = MultiplayerAPI::decode_and_decompress_variant(v, &p_buffer[ofs], arg_size, nullptr, false);
		ERR_FAIL_COND_V(err != OK, err);
		ofs += arg_size;
		node = spawner->instantiate_custom(v);
	} else {
		
		node = spawner->instantiate_scene(scene_id);
	}