原文:https://wiki.assistant.moe/modding/intro

一、简介

  Beat Saber 开发环境:unity2018、C#、.NET framework 4.6。

  此教程教你如何使用Visual Studio创建一个插件开发模板。

  1 下载最新版Visual Studio

  2 下载最新插件模板“BS.Plugin.Template.zip”

  https://github-production-release-asset-2e65be.s3.amazonaws.com/164500300/d8a9d300-1cd9-11e9-9e97-59fa48084c2c?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A%2F20190123%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20190123T063620Z&X-Amz-Expires=300&X-Amz-Signature=a7bca54f93c7cb3427e0d811d02fc7a96d84b170a819404746183a5592e8ac50&X-Amz-SignedHeaders=host&actor_id=0&response-content-disposition=attachment%3B%20filename%3DBS.Plugin.Template.zip&response-content-type=application%2Foctet-stream

  (或Q群810303476,群文件下载)

二、安装模板

  1 打开ProjectTemplates目录

  一般路径:C:\Users\<Username>\Documents\Visual Studio 2017\Templates\ProjectTemplates

  2 将前面下载的插件模板文件“BS.Plugin.Template.zip”放入ProjectTemplates目录(注意直接放入zip文件,不要解压)

  3 打开VS,创建一个新项目,此时你应当可以在C#选项中看到“Beat Saber Plugin Template”,使用此模板创建项目

三、查看代码

  在右侧“解决方案”浏览框中,双击“Plugin.cs”来打开代码文件,你应该能看到如下图所示的内容:

  画红线的地方表明项目没能找到相关的引用,下面我们添加一下项目引用。

四、添加引用

  在右侧的“解决方案”浏览框中右键“引用”,选择“添加引用”

  在打开的引用管理窗口中你可以添加一下缺失的dll文件,这些dll一般都在“\<Beat Saber directory>\Beat Saber_Data\Managed”目录中

  部分dll文件在游戏的Plugins目录中(也就是说,某些情况下你需要引用通过ModManager下载的dll文件,比如Async Twitch、Beat Saber Utils、CustomUI)

五、编译插件

  如果所有引用问题都解决了,你可以试试编译一下(生成解决方案)

  编译生成的dll文件就会出现在项目路径的“\Bin\Debug”目录下

  将生成的dll文件放入游戏目录下的Plugins目录即可使用该插件了

六、一个简单的插件教程

  https://www.cnblogs.com/cation/p/10309157.html

请务必关注我们的公众号获取最新资源和信息:

更多资源在我们的讨论Q群:

810303476

BeatSaber节奏光剑插件开发官方教程1-创建一个插件模板的更多相关文章

  1. BeatSaber节奏光剑插件开发官方教程2-简单的插件示例

    原文:https://wiki.assistant.moe/modding/example-mod 一.在开始之前 1 确保你已经看过教你如何添加插件模板的教程,且你已经使用插件模板创建了一个新项目 ...

  2. BeatSaber节奏光剑双手柄MR教程

    一.物料准备: 1 显卡1060及以上的PC主机 2 HTC VIVE头盔一套(头盔直插显卡上的HDMI接口) 3 1080P摄像头一个(插USB3.0) 4 绿幕一套,能覆盖整个摄像头的可拍摄范围即 ...

  3. google maps js v3 api教程(1) -- 创建一个地图

    原文地址 google maps javascript官方文档:https://developers.google.com/maps/documentation/javascript/ 在创建地图之前 ...

  4. WordPress插件制作教程(一): 如何创建一个插件

    上一篇还是按照之前的教程流程,写了一篇WordPress插件制作教程概述,从这一篇开始就为大家具体讲解WordPress插件制作的内容.这一篇主要说一下插件的创建方法. 相信大家都知道插件的安装文件在 ...

  5. android 自己创建一个凝视模板

    android  自己创建一个凝视模板 作为一名程序猿 不仅要有一个写代码的能力,养成一个良好的编写习惯也是非常重要的. 今天给大家具体介绍一下怎样创建凝视模板,给每一个类和方法都自己手动去凝视信息也 ...

  6. ArcGIS Desktop python Add-in 创建一个插件

    1)创建一个项目 首先创建一个插件项目,本节介绍如何利用向导创建一个插件项目. 创建任何一个ArcGIS插件产品的过程都是一样的. 创建一个Python插件项目包括2个步骤: a) 选择一个插件项目文 ...

  7. (7)nehe教程1 创建一个OpenGL窗口:

    不要用那个nehe ndk了 误人子弟! 转自: 一个窗口,代码可真多啊 http://www.yakergong.net/nehe/ 在这个教程里,我将教你在Windows环境中创建OpenGL程序 ...

  8. 使用 ADD-ON SDK 开发 基于 Html JQuery 和 CSS 的 firefox 插件入门教程1: 创建一个简单的 Add-on

    [本文转载自http://sixpoint.me/942/implementing-simple-addon/] 实现一个简单的插件 教程的这个部分带你使用 SDK 来实现, 运行并打包一个插件. 这 ...

  9. CodeSmith使用总结--创建一个基础模板

    问:为什么要用CodeSmith? 答曰:因为我懒的写. Codesmith是一款非常不错的懒人工具,我也经常会用到,因为它在“重复代码”方面能够节省我们很多时间,并且解除了我们重复繁琐并且乏味的“码 ...

随机推荐

  1. 蓝桥杯 第三届C/C++预赛真题(10) 取球游戏(博弈)

    今盒子里有n个小球,A.B两人轮流从盒中取球,每个人都可以看到另一个人取了多少个,也可以看到盒中还剩下多少个,并且两人都很聪明,不会做出错误的判断. 我们约定: 每个人从盒子中取出的球的数目必须是:1 ...

  2. HTTP请求的过程&HTTP/1.0和HTTP/1.1的区别&HTTP怎么处理长连接

    http://www.cnblogs.com/GumpYan/p/5821193.html

  3. SPAF模板

    #include <iostream> #include <cstring> #include <queue> #include <cstdio> #d ...

  4. 面试题思考:java中快速失败(fail-fast)和安全失败(fail-safe)的区别是什么?

    一:快速失败(fail—fast) 在用迭代器遍历一个集合对象时,如果遍历过程中对集合对象的内容进行了修改(增加.删除.修改),则会抛出Concurrent Modification Exceptio ...

  5. Android无线测试之—UiAutomator UiScrollable API介绍一

    UiScrollable类介绍 一.UiScrollable类说明: 1.UiScrollable是UiCollection的子类,因此它可以使用UiCollection和Uiobject类的所有公共 ...

  6. 如何使用HTTP压缩优化服务器

    鉴于互联网上的宽带有限,网络管理人员任何旨在加速接入速度的努力都是有价值的.其中的一个方法就是通过HTTP压缩技术实现接入速度的加速,它通过减少在服务器和客户端之间传输的数据量,显著地提高网站的性能. ...

  7. 涨姿势UWP源码——IsolatedStorage

    前一篇涨姿势UWP源码分析从数据源着手,解释了RSS feed的获取和解析,本篇则会就数据源的保存和读取进行举例. 和之前的Windows Runtime一样,UWP采用IsolatedStorage ...

  8. npm and node 的一些问题

    1. node 安装 n 模块 用来管理 node的版本 2.  初始化项目出现这个问题 Error: Attempt to unlock XXX, which hasn't been locked ...

  9. 【文章阅读】详解MySQL数据类型

    详解MySQL数据类型 - 五月的仓颉 - 博客园 http://www.cnblogs.com/xrq730/p/8446246.html 注:对于MySQL的数据类型做了详细的讲解,这是我看过的最 ...

  10. ZOJ 3331 Process the Tasks(双塔DP)

    Process the Tasks Time Limit: 1 Second      Memory Limit: 32768 KB There are two machines A and B. T ...