C# 检查本地文件和服务器上存储的新文件之间的文件差异的游戏修补程序

C# 检查本地文件和服务器上存储的新文件之间的文件差异的游戏修补程序,c#,visual-studio,unity3d,C#,Visual Studio,Unity3d,我目前正在Unity中开发一款游戏,我想知道如何为我的游戏创建补丁。我正在寻找一个类似Steam工作原理的系统,用户在他们的系统上安装了游戏,还有启动器?将游戏的本地文件检查到服务器上的更新文件,并扫描它们的校验和?找出哪些文件已更改,然后仅下载这些文件,并将其替换到本地游戏目录。有人知道这是否可行吗?带编号的版本如何?定义起来似乎不那么麻烦 ver 1.0 = 10 files ver 1.1 = 2 new files, 0 changes ver 1.2 = 4 new files,

我目前正在Unity中开发一款游戏,我想知道如何为我的游戏创建补丁。我正在寻找一个类似Steam工作原理的系统,用户在他们的系统上安装了游戏,还有启动器?将游戏的本地文件检查到服务器上的更新文件,并扫描它们的校验和?找出哪些文件已更改,然后仅下载这些文件,并将其替换到本地游戏目录。有人知道这是否可行吗?

带编号的版本如何?定义起来似乎不那么麻烦

ver 1.0 = 10 files

ver 1.1 = 2 new files, 0 changes

ver 1.2 = 4 new files, 4 changes in 2 files, file 1, line 2:32, file 4, line 5:21 
编辑:

校验和

//Getting the md5 hash
using (var md5 = MD5.Create())
{
    using (var stream = File.OpenRead(filename))
    {
        return md5.ComputeHash(stream);
    }
}

//Comparing
if(thisHash == newVersionHash) 
{
    ;
} 

希望有帮助:)

这是一个有效的答案,为什么要降低分数。。。这太粗鲁了。问题是我正在寻找一种方法来检测哪些文件在新文件和旧文件之间发生了更改。假设你有一个游戏,它有超过200个文件,占用大约2gb的空间,你可以有版本号,例如v1,v1.1,等等。。。您可以下载新文件,但这需要您下载2gb。我正在寻找一种特定的方法,只检测已更改的文件(因为某些文件保持不变),并只将这些文件下载到游戏目录,如果您理解我的意思,这可以将所需下载量减半mean@Seabizkit可能是其他人有这个答案,但他比他抢先一步你可以使用清单。对于任何新的或修改的项目,请在本地更新清单。服务器上也一样。您的清单可以是json、xml或您自己的,然后它只是关于比较值。@CodeCaster OP要求提供我给他的一个代码片段(至少我认为是这样,但仍然有点模糊)。除此之外,我给了他一个关于设计思想的建议,他在实施过程中没有寻求帮助。如果他想要一个完整的系统,他会雇一个程序员。