BeatSaber节奏光剑插件开发官方教程1-创建一个插件模板
原文: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-创建一个插件模板的更多相关文章
- BeatSaber节奏光剑插件开发官方教程2-简单的插件示例
原文:https://wiki.assistant.moe/modding/example-mod 一.在开始之前 1 确保你已经看过教你如何添加插件模板的教程,且你已经使用插件模板创建了一个新项目 ...
- BeatSaber节奏光剑双手柄MR教程
一.物料准备: 1 显卡1060及以上的PC主机 2 HTC VIVE头盔一套(头盔直插显卡上的HDMI接口) 3 1080P摄像头一个(插USB3.0) 4 绿幕一套,能覆盖整个摄像头的可拍摄范围即 ...
- google maps js v3 api教程(1) -- 创建一个地图
原文地址 google maps javascript官方文档:https://developers.google.com/maps/documentation/javascript/ 在创建地图之前 ...
- WordPress插件制作教程(一): 如何创建一个插件
上一篇还是按照之前的教程流程,写了一篇WordPress插件制作教程概述,从这一篇开始就为大家具体讲解WordPress插件制作的内容.这一篇主要说一下插件的创建方法. 相信大家都知道插件的安装文件在 ...
- android 自己创建一个凝视模板
android 自己创建一个凝视模板 作为一名程序猿 不仅要有一个写代码的能力,养成一个良好的编写习惯也是非常重要的. 今天给大家具体介绍一下怎样创建凝视模板,给每一个类和方法都自己手动去凝视信息也 ...
- ArcGIS Desktop python Add-in 创建一个插件
1)创建一个项目 首先创建一个插件项目,本节介绍如何利用向导创建一个插件项目. 创建任何一个ArcGIS插件产品的过程都是一样的. 创建一个Python插件项目包括2个步骤: a) 选择一个插件项目文 ...
- (7)nehe教程1 创建一个OpenGL窗口:
不要用那个nehe ndk了 误人子弟! 转自: 一个窗口,代码可真多啊 http://www.yakergong.net/nehe/ 在这个教程里,我将教你在Windows环境中创建OpenGL程序 ...
- 使用 ADD-ON SDK 开发 基于 Html JQuery 和 CSS 的 firefox 插件入门教程1: 创建一个简单的 Add-on
[本文转载自http://sixpoint.me/942/implementing-simple-addon/] 实现一个简单的插件 教程的这个部分带你使用 SDK 来实现, 运行并打包一个插件. 这 ...
- CodeSmith使用总结--创建一个基础模板
问:为什么要用CodeSmith? 答曰:因为我懒的写. Codesmith是一款非常不错的懒人工具,我也经常会用到,因为它在“重复代码”方面能够节省我们很多时间,并且解除了我们重复繁琐并且乏味的“码 ...
随机推荐
- poj 1129(dfs+图的四色定理)
题目链接:http://poj.org/problem?id=1129 思路:根据图的四色定理,最多四种颜色就能满足题意,使得相邻的两部分颜色不同.而最多又只有26个点,因此直接dfs即可. #inc ...
- java的junit測试
在实际的开发中不仅须要断点调试.语句输出的方法进行程序的调试,也须要单元測试. 在java中的junit的測试方法通常是在要測试的方法上面加入@Test.@ Before.@After,@Before ...
- C++获取某个文件夹下的所有文件
获取某个文件夹下的所有文件,返回各文件的路径加文件名 path为某文件夹的路径:eg. char * filePath = "C:\\Users\\WUQP\\Desktop\\test_d ...
- AngularJS 讲解,二 模块
AngularJS允许我们使用angular.module()方法来声明模块,这个方法能够接受两个参数,第一个是模块的名称,第二个是依赖列表,也就是可以被注入到模块中的对象列表. angular.mo ...
- angularjs中的$destroy和$timeout
module.controller("TestController", function($scope, $timeout) { var onTimeout = function( ...
- zookeeper 事务日志与快照日志
zookeeper日志各类日志简介 zookeeper服务器会产生三类日志:事务日志.快照日志和log4j日志. 在zookeeper默认配置文件zoo.cfg(可以修改文件名)中有一个配置项data ...
- instanceof和isInstance(Object obj) 和isAssignableFrom(Class cls)的区别和联系
instanceof和isInstance(Object obj) 和isAssignableFrom(Class cls)的区别和联系 编程的时候可能会遇到一个不知道它属于哪个类的 ...
- 13.php面向对象
1.构造函数 public __construct() {} 2.析构函数 public __destruct() {} 3.对象调用属性 //数以调用时候要用 -> 而不是Java的点. ...
- InnoDB缓存读命中率、使用率、脏块率(%) 缓冲池的读命中率(%) 缓冲池的利用率(%) 缓冲池脏块的百分率(%)
InnoDB缓存读命中率.使用率.脏块率(%) 缓冲池的读命中率(%) 缓冲池的利用率(%) 缓冲池脏块的百分率(%)
- 删除Windows服务
或者开始→运行 ,输入“regedit”,在HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services 下找到需要删除的服务名,直接删除即可.