lua 代码是否可以在我的 GMOD 服务器上下载某些文件

Will this lua code work to download certain files on my GMOD server

我最近一直在构建我的 GMOD 服务器,并且越来越受欢迎,但我有兴趣创建一个插件,所以我整理了一些东西,应该在加载屏幕和其他游戏中下载一些 worksop 链接。这是我创造的。

sv_auto_download:

// Write the map download codes below

resource.addworkshop( "" )


function DownloadFiles() 

    // Write the the texture codes below

    resource.addworkshop( "" )
    return ""
end
hook.Add ( "PlayerInitialSpawn", "DownloadFiles" )

不,这行不通。 首先,PlayerInitalSpawn 在 加载屏幕后运行 并且 resource.addworkshop 是一个服务器端函数,它被加载一次,以便服务器知道加载创意工坊文件,这意味着无论如何,插件仍然会在加载屏幕中下载。

你不能"download some worksop links in loading screen and others ingame",你不应该强迫玩家下载 10gigs 的模型,如果他们不想的话。

让玩家下载插件的最佳方式是通过创意工坊。

  1. 在 Steam 创意工坊上为您的插件创建一个 collection,例如 http://steamcommunity.com/sharedfiles/filedetails/?id=1244735564

  2. 前往 http://steamcommunity.com/dev/apikey 并使用您的 服务器的 IP 地址 作为网站并保存您的 api密钥 安全的地方(即不要共享它)

  3. 转到 scrds.exe 的 启动选项 (.bat 文件或在服务器仪表板中)并添加 -authkey 3XAMPL3K3YF0RTH3T3ST3 +host_workshop_collection (collection ID) ,collection ID 是 collection 的 ?id=1244735564 部分 URL

然后,玩家会自动下载服务器内容,你可以很容易地添加更多插件,如果玩家想在你的服务器上玩更长时间,它也可以作为玩家快速永久下载大型模型的一种方式一段时间。

顺便说一下,您忘记将函数委托包含到 hook.Add:

hook.Add ( "PlayerInitialSpawn", "DownloadFiles", DownloadFiles )