recursal/Fanatic-Fandom huggingface dataset:
Galactic Contention Wiki/Section 1

## Welcome to the Official Galactic Contention Wiki

Created by the Galactic Contention Staff Team and maintained by the community.
The wiki is still under heavy construction, changing often, without warning and may break at times. We'd love your help in building out this community resource! If you'd like to contribute, feel free to do so! If you're a wiki pro, feel free to reach out to our team within our Discord if you notice yourself running into any roadblocks.

We are currently maintaining 395 pages (89 articles).

About Galactic Contention
***Galactic Contention*** is a full, Star Wars conversion mod for the FPS tactical shooter - Squad, published by Offworld Industries - that places you directly into both well-known and original battlegrounds of the Clone Wars. With up to 50 v 50 matches, custom game modes, iconic vehicles and aircraft, Galactic Contention makes for an incredible cinematic expe
rience.

***New to Galactic Contention or Squad?*** Make sure to read our helpful \*\*Community Guides\*\*, *especially* the \*\*Getting started?\*\* guide!
ASEAN SMP Wiki

## **Welcome to the ASEAN SMP Wiki!**

The ASEAN SMP is a Public Minecraft Server which was set up and created by WinsDominoes at April 2022. The server is currently in its second season (which hopefully lasts forever). We're a collaborative website, made by members ASEAN SMP, about ASEAN SMP that anyone, including you, can build and expand. Wikis like this one depend on readers getting involved and adding content. Click the "ADD NEW PAGE" or "EDIT" button at the top of any page to get started! Join the ASEAN SMP's Discord!

## Featured article

**Nyght City** is an ongoing project located in South Island. It will include the construction of multiple skyscrapers, residential buildings, organised roads banks, and shops, based on modern cities. The project idea is planned by Bryght\_Knyght, who is currently managing and handling the resources extraction and construction of the first Coastside Tower. A simple two-storey house is made across the skyscraper as a temporary base for the PT. Nyght Industries.

Read more...

## Featured image

**Gay Bridge** is an arch bridge which connects South Island and Pirates' Retreat. It was named Gay Bridge by Krebs.

## Did you know ...

* ... that **WinsDominoes** almost went crazy because the server went down for an hour?
* ... that **KrebsLovesFiesh** and **MoeChinatsu** are the admins of the server?
* ... that the **infrastructure transport system** is separated into three categories?
* ... that the **Road System** has been very successful by connecting the spawn to every major bases from most players nearby the spawn area?
* ... that **Horses** are necessary to travel through the long Road System?
* ... that all of the Road construction across the map has been done solely by Nyght Industries (Bryght\_Knyght), with the exception for several roads near the spawn?
* ... that the **Nether Highway System** reaches a distance of tens of thousands blocks away in the overworld?
* ... that **GooeyRebel** has implemented a shorter Nether System, linking to crucial spots around the map?

## Navigation

 Members
Level 0.034

**Trudność przetrwania : 2E - Środowiskowy**

Niebezpieczny

zagrożenia nie kreaturowe

1. ↑ To znaczy że na tym poziomie są zagrożenia którymi nie są kreatury

## Opis

Poziom 0.034 rozgrywa się w zakurzonej starej świątyni, pozornie pozbawionej frontowych drzwi i okien. W świątyni ściany są ciemnoczerwone i jest kilka filarów, z sufitu zwisają też słabo oświetlone latarnie. Jest to w większości mała świątynia z zajączkami kurzu i pajęczynami. Wokół pomieszczeń świątyni jest kilka krzeseł i małych podestów, a na tych krzesłach i podium są... pluszowe misie, w rogach są sterty pluszowych misiów, krzesła, podium, a czasem zwisają z sufitu. Chociaż nie ma żadnych istot, pluszowe misie poradzą sobie z niebezpieczeństwami. W świątyni jest około 5 pomieszczeń. W głównym pokoju, w którym się odradzasz, stoi tron, na którym stoi pluszowy miś, w północnym pokoju po lewej stronie znajduje się sala zalana wodą migdałową, w której misie są zmasakrowane, niektóre są spalone, inne dźgnięte nożem, a inne odcięte. . Południowy lewy pokój nie ma… nic, jest pusty. W północnym prawym pokoju dookoła znajdują się pluszowe misie, niektóre zwisają z sufitu. A południowe prawe pomieszczenie jest jedynym pokojem z drzwiami, które mówią „OSTRZEŻENIE: NIE WCHODZIĆ, MIŚ JEST WROGI”, jeśli zdecydujesz się zignorować to ostrzeżenie i wejść do pokoju, duży błąd! Pokój ma misia umieszczonego na środku pokoju, z tym że świeci na czerwono i mówi w nieznanym języku. Miś emituje gaz wystarczająco toksyczny, aby był odpowiednikiem Liquid Pain, chociaż to, co emituje miś, jest obecnie nieznane, jedno jest pewne, nie wchodź do tego pokoju!

## Wejścia i wyjścia

### Wejścia

Zdarza się to niezwykle rzadko, ale jeśli zajdziesz wystarczająco daleko w głąb Poziomu 0, możesz znaleźć pluszowego misia, znoclipować przez niego i trafić tutaj.

Przejdź przez spalone drzwi na poziomie 0.03, aby się tu dostać.

#### Wyjścia

Mówi się, że jeśli weźmiesz misia na tron ​​i umieścisz go na środku pustego pokoju, na podłodze pojawi się lustro, a po drugiej stronie wygląda na Poziom 0. Przejdź przez nie, aby dostać się na Poziom 0.
Sail Barge

## Stats

### **Weapons**

##### Seed Layer

* Pilot - N/A
* Seat 3 & 4 - Laser Turret

##### Live Layer

* Pilot - Dual Barrel AA Gun [Magazines~3], 4 Anti Vehicle Missiles
* Seat 3 & 4 - Laser Turret

### **Hull | Cargo Size**

* Hitpoints - 1500
* Weakpoints
	+ Engine - 1200

* Supply Capacity - [2000]
	+ Initial Supply - [1000] Ammo | [1000] Construction

### **Seat Capacity**

* 1 Pilot
* 1 CoPilot
* 2 Side Gunners
* 11 Passengers
V Wing

## Description

The V-Wing is an Air Superiority Fighter with its High speeds and small body. Can switch to Vtol or Fighter Mode.

```
Currently Only in Dev Layer

```

## Stats

### **Weapons**

* Pilot
	+ Dual Barrel AA Gun [3 Magazines]
	+ 40mm Smoke Grenades

### **Hull | Cargo Size**

* Hitpoints
	+ Hull - 600
* Weakpoint
	+ Engine - 1200

* Supply Capacity - [700]
	+ Initial Supply
		- [700] Ammo

### **Seat Capacity**

* 1 Pilot
* 1 CoPilot
Forklift

## Stats

### **Weapons**

##### Seed Layer

* Pilot - N/A
* Seat 3 & 4 - Laser Turret

##### Live Layer

* Pilot - Dual Barrel AA Gun [Magazines~3], 4 Anti Vehicle Missiles
* Seat 3 & 4 - Laser Turret

### **Hull | Cargo Size**

* Hitpoints - 1500
* Weakpoints
	+ Engine - 1200

* Supply Capacity - [2000]
	+ Initial Supply - [1000] Ammo | [1000] Construction

### **Seat Capacity**

* 1 Pilot
* 1 CoPilot
* 2 Side Gunners
* 11 Passengers
100 Hidden Objects (series)

**100 Hidden Objects** is a series of hidden object games developed and published by Anatoliy Loginovskikh. The games in the series are:

* *100 Hidden Snails*
* *100 Hidden Gnomes*
* *100 Hidden Birds*
* *100 Hidden Eternals*
* *100 Hidden Aliens*
* *100 Hidden Cupcakes*
* *100 Hidden Mice*
* *100 Hidden Snails 2*
* *100 Hidden Mushrooms*
* *100 Hidden Cats*
* *100 Hidden Cats 2*
* *100 Hidden Rams*
* *100 Hidden Cups*
* *100 Hidden Birds 2*
* *100 Hidden Dogs*
* *100 Hidden Frogs*
* *100 Hidden Fish*
* *100 Hidden Hares*
* *1000 Hidden Snails*
LAAT/E

## Description

The LAAT/le [Low Altitude Aerial Transport / Patrol Transport] is a lighter aircraft to its heavier model the LAAT. It carries less supplies and troops but has a small frame and build.

## Stats

### **Weapons**

* Pilot
	+ Dual Barrel AA Gun [Magazines~3]
	+ 2 Anti Vehicle Missiles
	+ 40mm Smoke Grenades

### **Hull | Cargo Size**

* Hitpoints
	+ Hull - 900
* Weakpoint
	+ Engine - 1200

* Supply Capacity - [1000]
	+ Initial Supply
		- [500] Ammo
		- [500] Construction

### **Seat Capacity**

* 1 Pilot
* 1 CoPilot
* 11 Passengers
100 Hidden Objects Wiki

**Welcome to the...**
**100 HIDDEN OBJECTS WIKI**
**22 articles • 2 files • 184 edits**

**ABOUT THE WIKI**

This is the wiki about *100 Hidden Objects* series that anybody can edit. It documents all of the games in the series with their basic info and shows the solutions to all of the games.

**HELPFUL LINKS**

* Getting Started
* How to Contribute
* Managing your new community
* Guides
* All Help articles
AT-XT

## Description

The AT-XT [All Terrain Experimental Transport]

## Stats

### **Weapons**

##### Seed Layer

* Pilot - N/A
* Seat 3 & 4 - Laser Turret

##### Live Layer

* Pilot - Dual Barrel AA Gun [Magazines~3], 4 Anti Vehicle Missiles
* Seat 3 & 4 - Laser Turret

### **Hull | Cargo Size**

* Hitpoints - 1500
* Weakpoints
	+ Engine - 1200

* Supply Capacity - [2000]
	+ Initial Supply - [1000] Ammo | [1000] Construction

### **Seat Capacity**

* 1 Pilot
* 1 CoPilot
* 2 Side Gunners
* 11 Passengers
MTT

## Stats

### **Weapons**

##### Seed Layer

* Pilot - N/A
* Seat 3 & 4 - Laser Turret

##### Live Layer

* Pilot - Dual Barrel AA Gun [Magazines~3], 4 Anti Vehicle Missiles
* Seat 3 & 4 - Laser Turret

### **Hull | Cargo Size**

* Hitpoints - 1500
* Weakpoints
	+ Engine - 1200

* Supply Capacity - [2000]
	+ Initial Supply - [1000] Ammo | [1000] Construction

### **Seat Capacity**

* 1 Pilot
* 1 CoPilot
* 2 Side Gunners
* 11 Passengers
Mini Skiff

## Stats

### **Weapons**

##### Seed Layer

* Pilot - N/A
* Seat 3 & 4 - Laser Turret

##### Live Layer

* Pilot - Dual Barrel AA Gun [Magazines~3], 4 Anti Vehicle Missiles
* Seat 3 & 4 - Laser Turret

### **Hull | Cargo Size**

* Hitpoints - 1500
* Weakpoints
	+ Engine - 1200

* Supply Capacity - [2000]
	+ Initial Supply - [1000] Ammo | [1000] Construction

### **Seat Capacity**

* 1 Pilot
* 1 CoPilot
* 2 Side Gunners
* 11 Passengers
LAAT

## Description

The LAAT/i [Low Altitude Assault Transport] is a Aerial Combat Transport that can quickly insert or extract infantry in and out of the battlefield. It can be used for both combat and logistical purposes.

## Stats

### **Weapons**

##### Seed Layer

* Pilot
	+ 40mm Smoke Grenades
* Seat 3 & 4
	+ Laser Turret

##### Live Layer

* Pilot
	+ Dual Barrel AA Gun [3 Magazines]
	+ 4 Anti Vehicle Missiles
	+ 40mm Smoke Grenades
* Seat 3 & 4
	+ Laser Turret

##### Dev Layer

* Pilot
	+ Dual Barrel AA Gun [3 Magazines]
	+ 4 Anti Vehicle Missiles
	+ 40mm Smoke Grenades
* Seat 3 & 4
	+ Laser Turret [Beam Varient]

### **Hull | Cargo Size**

* Hitpoints
	+ Hull - 1500
* Weakpoint
	+ Engine - 1200

* Supply Capacity - [2000]
	+ Initial Supply
		- [1000] Ammo
		- [1000] Construction

### **Seat Capacity**

* 1 Pilot
* 1 CoPilot
* 2 Side Gunners
* 11 Passengers
World

The world of *CRIMESIGHT* is set in London, 2075. This is a time where, thanks to an analytic data harvesting program, would be able to predict crimes, which has resulted in 90% of criminal activity across the world.

However, the system predicts a crime that could irrevocably plunge the world into an apocalypse, hence needing for the system to act, hence why resources were poured into developing an AI that can investigate and prevent this crime.
Paper Mario Partners Wiki

**Welcome to the Paper Mario Partners Wiki!**
We're a collaborative community website about Paper Mario Partners that anyone, including you, can build and expand. Wikis like this one depend on readers getting involved and adding content. Click the "ADD NEW PAGE" or "EDIT" button at the top of any page to get started!

## Important articles

PlaceholderA page about your topicPlaceholderA Main CharacterPlaceholderThe First EpisodePlaceholderAn Important LocationPlaceholderA Key EventPlaceholderA Crucial Item

*Need help building out this community?*

* Rules of this wiki
* Getting Started
* How to Contribute
* Managing your new community
* Guides
* All Help articles

You can also be part of the larger Fandom family of communities. Visit Fandom's Community Central!

*Community Founders*: Write a good and paragraph-length description for your welcome section about your topic. Let your readers know what your topic is about and add some general information about it. Then you should visit the admin dashboard for more tips.
Playable Races and Classes

Back to Main Page

## Playable Races in Aerus

The following races are allowed in my games subject to any notes included with the entry. If the entry has no notes, then the Race is allowed as per the source book it is found in, with no modifications necessary.

#### Races Allowed

* **Human -** Standard human as default
* **Amani** - Use Human Variant as the template, plus the following:
	+ Must take survival, nature, or history as the bonus skill proficiency
	+ Must assign bonus stat points to Wisdom and Constitution
	+ Automatic Languages: Common, Amani
* **Dwarf**
	+ Mountain - As default
	+ Hill - As default
* **Elf**
	+ Sky Elf - Name change only, default stats as wood elf
	+ High elf - As default
	+ Drow - As default
* **Aarakocra -** As default, except that base fly speed is reduced to 40ft
* **Aasimar**
	+ Protector - As default
	+ Fallen - As Default
* **Firbolg -** As default
* **Genasi -** As default
* **Gnome** - As default
* **Goblin** - As default
* **Goliath -** As default
* **Half-Elf** - As default
* **Orc** - Use the Half-Orc race option default but renamed to Orc
* **Halfling** - As default
* **Kobold** - As default
* **Lizardfolk** - As default
* **Tabaxi -** As default
* **Tiefling** - As default
* **Warforged**
	+ Must choose STR ability score increase
	+ Made of Red Iron, backstory is partially set for you
	+ No elemental affinity

## Playable Classes in Aerus

The following classes are allowed to be played, with necessary modifications noted.

* **Artificer**
* **Barbarian**
* **Bard**
* **Beastheart**
* **Cleric**
* **Druid**
* **Fighter**
* **Illrigger**
* **Monk**
* **Paladin**
* **Ranger**
* **Rogue**
* **Sorcerer** - Any origin except Draconic Bloodline, unless you are a Kobold race.
* **Warlock**
* **Wizard**

Back to Main Page
唐尼玛666/教程主菜单

## 小白必看

前言：教程较长，慢慢看，不过10分钟之内也能解决大部分问题。要我说啊，就是1059写的教程太复杂的，一般的小白怎么看的懂嘛（战术叉腰）。所以针对各种电脑技术基本上只限于打开浏览器的那种小白来说。还是很实用的。话不多说，现在开始。

欢迎大家加入我们：QQ群：271734093

准备
--

* SMUI安装包——没有就去网页下载发行版，下成工程文件的建议关闭页面。
* SMAPI安装包——如果没有就去官网下载，不过考虑到各位的网络，就去自己的组织下载。
* 整合包文件或者一个标准的MOD文件，不过你都看这种教程了。还是老老实实的获取组织给你提供的整合包。

## SMAPI安装

只要你要用MOD，SMAPI就少不了。所以我们把SMAPI放在最前面讲。

不论你从哪里获得的安装包，一般都是命名为【SMAPI-3.X.X-installer.zip】的压缩文件。

这个时候解压这个文件夹，里面就会有三种系统的运行文件。【Linux】【macOS】【Windows】。

根据自己的电脑系统选择‘【install on [你的电脑系统]】。

运行以后，会让你选择你的游戏本体路径，【1】后面的路径有Stardew Valley对吧，无脑选【1】就对了。

接下来会让你选择是安装还是卸载，【1】install——安装【2】uninstall——卸载。所以选择什么就很清楚了。

在你安装成功之后，就会出现一串绿色的路径，恭喜你，smapi就安装成功了。

**如果没有安装成功，那可能有如下问题**：

* 杀毒软件——不论什么杀毒软件，统统关闭（包括系统自带的）
* 输入法——换成第三方输入法，反正就是不要用系统自带的。某狗知道吧，就用这个。
* 运行库——这个问题Windows7很容易出现，解决方法很简单，安装运行库就行了

## SMUI

从网上下载的文件命名应该为【StardewMUI 5 Installer】,双击运行，一般情况下，就不要改变安装目录了，你也不差那点空间对吧。以及同意使用许可。接下来就安装成功了。

点击右上角的设置选项，选择关键路径。不出意外的话，游戏路径已经设置好了，但数据仓库还是空的。选择数据仓库下那三个点。

* 如果你之前**有使用过四代管理器**，那就选择【继续使用第四代产品仓库】。那整合包部分便设置完成。
* 如果你之前**未使用过四代管理器**，那就选择【创建新的模组数据仓库】。然后选择一个空的文件夹，整合包部分便设置完成。

在完成这一部后，记得**点击应用**。以免造成前功尽弃。

## 整合包

```
从组织获得的整合包一般文件格式**【smuipack】**。

```

在管理模组页面下，左上方选择【**子库和分类菜单】**，在页面下选择【导入分类】（其他功能不是一个小白该理解的，就不要乱点）。

将你从组织获取的文件拖入其中，如果组织设置了密码，勾选【使用密码】，同时推荐勾选【完成后关闭控制台】

在下方输入组织提供的密码，如果是中文密码，需要复制粘贴（毕竟无法输入中文）。

点击【开始导入】，程序便会解压。在成功导入后程序会自动保存密码，在下一次的输入中，便可无需输入。

关闭页面，在刚才的子库与分类菜单页面下，点击【刷新分类】，模组列表便出现了。

自此，基础模组安装流程便结束了。
A Reichtous World

**A Reichtous World** is a fictitious mod that takes place in an alternate WWI and Russian Civil War. Where the Central Powers win the war and the RCW ended in stalemate.

## Nations

* Union of Soviet Socialist Republics
	+ Russian Soviet Federative Socialist Republic
	+ German Soviet Socialist Republic
	+ Ukrainian Soviet Socialist Republic
	+ Norwegian Soviet Socialist Republic
	+ British Soviet Socialist Republic
	+ Icelandic People's Republic
	+ Dane Soviet Socialist Republic
	+ Polish Democratic Republic
* German Empire
	+ Kingdom of Poland
	+ German Italy
* Austro-Hungarian Empire
	+ Austrian Italy
	+ Colony of Serbia
	+ Austrian Empire
	+ Kingdom of Hungary
	+ Condominium of Bosnia and Herzegovina
	+ Slovene Lands
* Protected Communes of the Ukrainian People
* Tambov Commune
* Republic of the Isle of Man
ARC-170

## Description

The ARC-170 is an Air Superiority Fighter with its High speeds and Small Height frame.

## Stats

### **Weapons**

##### Live Layer

* Pilot
	+ Dual Barrel AA Gun [3 Magazines]
	+ 2 Anti Vehicle Missiles
	+ 40mm Smoke Grenades
* Rear Gunner
	+ AA Gun

##### Admin Menu

* Pilot
	+ Dual Barrel AA Gun [3 Magazines]
	+ 5 Anti Vehicle Missiles
	+ 5 Bombs
	+ 40mm Smoke Grenades
* Rear Gunner
	+ AA Gun

### **Hull | Cargo Size**

* Hitpoints
	+ Hull [Live] - 900
	+ Hull [AdminMenu] - 1800
* Weakpoint
	+ Engine - 1200

* Supply Capacity
	+ Live Layer
		- Initial Supply [1000]
			* [500] Ammo
			* [500] Construction
	+ Admin Menu
		- Initial Supply [500]
			* [500] Ammo

### **Seat Capacity**

##### Live Layer

* 1 Pilot
* 1 Rear Gunner

##### Admin Menu

* 1 Pilot
* 1 Rear Gunner
* 1 Passenger
World of Aerus

Back to Main Page

## The World of Aerus

The world of Aerus is divided into 3 main continents, and several major island nations.

## Noûrtaven - the Northern Continent

0251

Noûrtaven (prounounced Noor-tay-ven) is an old Dwarven word for 'North Haven' or 'North Bastion'. It came about during a time shortly after the Great Swarm, when the land was broken by the gods. Of the few cities in the New World to survive the Sundering intact, most of them were to the far north. These naturally became beacons for survivors to flock to, and the countries on this continent remain stronger and more populous than those in the south to this day.

## Sûnderlan - the Southern Continent

Another word taken from an ancient Dwarven tongue, Sunderlan (pronounced Soon-der-lun) was known as 'the sundered lands'. During the Sundering, the vast majority of populated regions were decimated, and the survivors scattered into the wilderness. The land itself was scarred, with once fertile forests and plains becoming dead and barren. While a few areas were spared the total destruction, the core of this continent remains a hostile and dangerous desert tundra, known simply as "The Wastes".

## Estenrook - the Eastern Continent

The large continent in the east is known as Estenrook. The name is derived from a dead dialect of the gnomish language, and comes from the phrase "East of the big rock". While it suffered devastation and chaos during the Sundering, it escaped the total destruction that the other continents experienced. Many of the bastion cities during the Great Swarm were located in the east, and a number of them survived relatively intact. Collectively referred to as "the Old World" thanks to these ancient cities and stable civilizations, it is by far the most populous continent. Each of the Kingdoms found on this continent are well established and powerful in their own right, with clearly defined borders and politics throughout.

#### Dwarven Damurs

The mountain holds of the four great dwarven kingdoms.

## Major Islands

#### Starshard Isles

Formed when a titanic battle near the edge of the Elemental Plane of Earth and the Material plane resulted in a huge chunk of bedrock being hurled into Aerus. It impacted in the Great Northern Ocean and shattered into many massive pieces, forming the island chain now known as the Starshard Isles. The Starshard Isles, or the Shards for short, were named so due to the impact seeming to witnesses as though a star had fallen from the night sky.

#### Grinn Desic and Grinn Kastid - The Dancing Isles

Named so for the fact that these islands gradually drift in the ocean, orbiting the Tia'Madin, the Great Maelstrom between the islands.

Back to Main Page
安装 StardewMUI Chromium Embedded Framework

## Chromium Embedded Framework 简称 CEF

这是可选安装内容。NEXUS 已经阻止了 IE 浏览器访问，无法再使用 .NET 自带的 Webbrowser，从各种方面综合考虑，使用 Chromium 代替 IE 是最好的选择。不过 Chromium 的体积相当大，不能直接包含于 SMUI 的安装程序中，所以独立出来做成安装程序。

* **特别注意：必须安装到 SMUI 的安装目录，否则无效**
* **特别注意：必须安装到 SMUI 的安装目录，否则无效**
* **特别注意：必须安装到 SMUI 的安装目录，否则无效**
* 重要的事情说三遍
* **CEF 组件的版本必须和 SMUI 产品版本对应，否则无法使用**
* **CEF 组件的版本必须和 SMUI 产品版本对应，否则无法使用**
* **CEF 组件的版本必须和 SMUI 产品版本对应，否则无法使用**
* 重要的事情说三遍
* 当 CEF 组件版本需要更新时，我会在 SMUI 的新版本中强制提醒
* 如要使用 VPN，请使用网络代理客户端软件，内置浏览器仅提供基本网页浏览，很明显不会支持浏览器插件类型的 VPN

### 下载地址

* 国内下载地址：蓝奏云：https://lake1059.lanzouq.com/b0daefzoh 密码：smui（如果有）
* 国际下载地址：Google Drive：https://drive.google.com/drive/folders/1UDZoHUOibIeFACRkn0ZI\_DzaT\_Zb4sA2?usp=sharing

### 官方吐槽

> 总有人，他就不看，他偏不看，都说了要装到 SMUI 的安装目录，他就是不装到那里去，甚至还觉得程序会自动选过去，其实那只是个默认的路径，还有人连自己 SMUI 装哪儿了都不知道，甚至还有人分不清 SMUI 和 它的浏览器组件是两个东西，你说这种人到底有没有脑子啊
>
>

### 记得清理缓存，它们不会被任何清理软件和安全软件清理掉，只能手动清除

浏览网页过程中产生的缓存位于用户数据文件夹中的 WebCache 文件夹【C:\Users\%username%\AppData\Roaming\1059 Studio\SMUI Client 5 Cache\WebCache】，记得定期清理，可以使用【内容中心】菜单里的【存储管理】功能来快捷清除
模组更新管理操作台

```
此功能于 正式版本 5.1.0 起可用，内测 5.0.116+ 版本可用

```

概述
--

* 此功能是 SMAPI WEB 接口的用户操作实现，用于直接检查模组的更新信息
* 使你可以在不启动 SMAPI 的情况下对任意模组进行检查更新信息
* 更新信息由 SMAPI 的云服务端处理，我无法干预任何结果，并且可能会与 SMAPI 程序中的结果不同

在哔哩哔哩上查看于内测时期的更通俗易懂的图文介绍：https://www.bilibili.com/read/cv19316104

操作
--

* 在【起始页面】点击【模组更新管理操作台】打开窗口
* 当该窗口打开时，分类列表和项列表的右键菜单会多出一个选项【加入检查更新表】
* 使用该功能将模组信息添加到操作台表中，可以多选
* 也可以拖拽任意包含模组的文件夹到其中，程序会自动扫描所有清单信息

在【发送数据选项】栏中，除非你有特殊需求，否则请保持发送全部数据并让接口返回完整数据

* 点击【发送数据：下一步】将数据发送到 SMAPI 服务器，耐心等待返回结果

注意：我没有设计后台线程，这个操作会卡死界面，这里也没有必要设计后台线程，如果你实在等不住想取消，尝试点击一次或几次窗口关闭按钮，在应用程序无响应弹窗中应该会有【尝试恢复应用程序】的选项

* 获取到数据后，程序自动处理并填入步骤二的表中（自动清除步骤二表中内容）
* 同时程序还将自动切换到步骤二的选项卡
* 有更新的条目会显示为蓝色，右键表中任意位置可以选择所有有更新的条目
* 根据这些信息找到项去运行更新

```
步骤三是付费功能，由 DLC4 解锁，售价 6 CNY

```

如果你购买并安装了 DLC4，你会在上方区域看到两个蓝色的按钮，可以用来将条目添加到步骤三的表中

* 转到步骤三，添加好条目后，在左上角【扫描菜单】中选择【开始在当前子库中扫描】
* 左侧的空白区域是扫描日志
* 如果找到了对应的项，那么显示为白色，如果有异常情况，会显示为黄色或者橙色
* 右键单个项选择【直接运行项在线更新流程】来像平时一样更新项
* 如果你购买并安装了 DLC 1，还会有【自由输入 NEXUS ID】的选项
补充项的内容

除了 SMUI 自动读取的信息，你还可以给每个项都添加额外信息

## 添加自定义描述

SMUI 一共支持三种描述，它们的优先级为：RTF 描述 > TXT 描述 > JSON 描述

* RTF 描述：使用富文本文档保存的富文本内容，可以包含各种基本文字格式，也包括图片等
* TXT 描述：纯文本内容，无法保存文字格式，仅保存字符
* JSON 描述：是 SMUI 自动从使用 CDCD 命令的文件夹中的 manifest.json 文件读取得到的

当程序找不到 RTF 描述时则寻找 TXT 描述，如果也没有 TXT 描述，则读取 JSON 描述，如果清单里未提供此信息，则显示为空白

描述功能不提供更改 JSON 描述的功能，若要编辑，请打开文件夹手动操作或者参阅：编辑器功能集合

如果选择保存为 RTF 描述，则自动删除 TXT 描述，反之同理。你可以选择在 Windows 写字板应用中编辑 RTF 描述

如果要删除自定义描述文件，直接清空描述文本框然后点对应保存即可

## 添加预览图

预览图显示在描述栏区域的下方，可以用鼠标滚轮或者将鼠标移至图片框左右端来点击切换上下张

* 如果一个项还没有预览图，那么点击窗口最右下角的【IMG】按钮出现预览图菜单
* 选择打开文件夹，确认创建文件夹，则可以打开该项存放预览图的位置
* 将图片放入其中即可，不需要重命名，程序会根据扫描顺序确定先后顺序
* 支持的格式：jpg\png\bmp\webp\gif
SMUI 5 维基目录

由于改导航栏太费劲了，所以写个目录页面，所有页面均可以从此页面到达

概要
--

* 产品信息和特点
* 常见问题解答

安装
--

* 安装和维护产品
* 安装 StardewMUI Chromium Embedded Framework
* 安装自定义语言文件
* 关联专用文件后缀

## 基础操作

* 初始设置
* 标准流程
* 依赖项表
* 补充项的内容
* 启动加载模组的游戏

原理：SMUI 管理模式原理详解

## 安装命令

* 安装命令
	+ 动作命令
	+ 条件判断命令
	+ 控制命令
	+ 过程命令

技巧：精通安装命令的思维

## 高效管理

* 搜索功能
* 筛选功能
* 批量创建项（开荒利器）
* 存档编辑器
* 全局模组安装检查器

## 联网更新模组

* 在线更新单个项（有可购买内容）
* 一键下载并自动完成新建配置项（购买解锁）
* 模组更新管理操作台（有可购买内容）

## 数据分发

* 导入和导出

生态：建立你自己的 SMUI 管理模式生态

系统
--

* 管理员身份允许拖拽

插件
--

* 插件开发
* 编写 Entry 代码
* 事件列表
* 方法列表
* 加载并发布插件（插件怎么装在这里）

## 第三方产品开发

* 《星露谷 SMUI 模组管理模式生态标准化规定和产品开发技术标准》
* SMUI.Windows.Core
* SMUI.Windows.Nexus
* SMUI.Windows.PakManager
* SMUI.Windows.SmapiWebAPI
* SMUI.MultiPlatform
原理：SMUI 管理模式原理详解

实在理解不了 SMUI 的还有没体验过的都可以来看这一页。

各位 UP 主们啊，我连视频文案都给你们写好了，直接照着稿子念就成了，这要是还讲得到处都是错误可就真是你们自己的问题了。一个专业的 SMUI 教学视频应该让观众知道它的运作方式并正确使用，而不是直接告诉观众点哪里，那样跟没学没什么区别，甚至还会造成无法挽救的重大事故。甚至还有人一篇文章一千字都不到就想把 SMUI 讲清楚的，哥们，我这都写维基了，你觉得一篇文章讲完那可能吗，如果这东西真有那么简单早就已经普及了好嘛。

传统的手动安装方式可以总结为如下流程：

传统的方法不仅在安装卸载上非常消耗时间，而且无法对众多的模组进行直观的管理。这还只是对于 标准 SMAPI 模组而言就已经足够费劲了，那么现今众多的模组类型和安装方式，让传统方式变得更加费时费力。

SMUI 独创的管理模式，将一切烦人的事情全部整合到了一套规范中，可以简单理解为如下流程：

看上去很复杂，其实非常简单。SMUI 使用了本地数据仓库来进行数据管理和中转，而不是直接对游戏文件夹进行操作，这样做的好处是直接拥有了备份。可以在流程图中看到你完全不需要直接操作游戏文件夹，所有操作全部由 SMUI 程序进行处理，你只需按照规范添加你的模组，编写好安装命令，然后正确使用软件即可。

而安装命令这个东西直接就是 SMUI 核心程序的最核心部分，可以说 SMUI 的本体就是对安装命令的执行。是不是像极了写代码，你可能会说这不就是把问题复杂化了吗，我装个模组至于还要写代码嘛。诶，还真的至于，人类科技的发展不就是更好的烧开水嘛，发明更高级的工具就是为了用更高级的方式烧开水，你数控加工也要写程序的吧，总不能让机器给你硬啃个零件出来。扯远了。那么安装命令的作用就是告诉程序要干什么，让程序去完成我们之前手动操作的事情。

那有人又要说了，那这不就更复杂了嘛，为了让程序去做之前手动的简单事情还要去学更复杂的东西，这又是何必呢，还不如那什么 Stardrop、Vortex、Moddrop 来的香。诶，还真的有必要，SMUI 能活到现在并且毫无市场竞争压力可是靠着真本事的，可谓是有备而来。传统管理器只能支持标准 SMAPI 模组，甚至很多就是把文件资源管理器套了个壳，只有简单的启用和禁用、添加和移除，这样的方法别说那些大型模组了，就是连最基本的日常需求都满足不了。而 SMUI 所采用的方案，仅仅是真正做到支持全部类型的模组这一点就足以跟传统管理器拉开无法被超越的距离，并且还不仅仅是模组，很多不是模组的东西也能支持，可谓是嘎嘎乱杀，十分的嚣张。

那么 SMUI 究竟是怎么做到这一点的，前面说的安装命令就是张王牌，安装命令就是纯文本的专用程序代码，需要什么安装方式就直接设计实现对应功能的安装命令，配上参数就可以直接爽起来了。这套方案属实是把原始人的思路发展到了三体人的水平，你传统的手动操作再熟练，速度也必然跑不过电脑的运算，我点一下鼠标一根线程一瞬间就能完成你传统手动操作要大半天才能完成的计算，这效率三体人看了都直呼害怕。

SMUI 的第二张王牌便是它是以纯本地使用而设计并发展其功能的。这话估计很多人不明白，其实不难发现，像 Vortex 和 Moddrop 这种模组管理器是建立在自身平台的基础上进行设计的，如果没网了就直接半残了，要知道因为众所周知的原因 国内绝大多数人是没法愉快地访问外网的，这种依托于平台联网才能有基础体验的管理器自然是在国内没法普及的，在国外的发展也并不好。而你能保证所有人玩单机游戏的时候都连着网么，即便是不要 Steam 时长和成就，也有很多情况要在没有网络的电脑上使用。再说了时长你可以挂机刷嘛，至于成就，诶，我刚好就有个模组能一键激活全部成就，一般人我不告诉他，N网11515。

未写完
一键下载并自动完成新建配置项

此功能为付费功能，由 DLC3 解锁，请到我的赞助平台购买

```
使用此功能需要更新至 5.0.104 版本

```

设计
--

本功能使用了 在线更新单个项 的操作界面，所以熟悉该功能的用户能够立即上手

操作
--

* 在项菜单中选择【下载并新建项】
* 在打开的窗口中输入新建项的名称，选择目标分类，输入目标N网页面ID

就像在 在线更新单个项 功能中所做的操作一样，不过在下载并完成解压后程序将自动新建项并将数据移动到库中，然后扫描解压出的内容，如果所有文件夹都可以使用 CDCD 命令，那么程序自动编写安装命令并保存，然后提示已自动完成新建项。

如果解压出的内容不能全部使用 CDCD 命令，则自动添加到配置队列。
安装和维护产品

## 运行库

如果你的系统是官方的 Windows 10、11 镜像，则已经集成了 .NET Framework 4.8

如果是 Windows 7 或者买电脑时预装的 Windows，则可能没有运行库，请手动下载安装

https://dotnet.microsoft.com/en-us/download/dotnet-framework/net48

## 下载产品

你可以在下列网站中下载产品的安装程序

* 码云 Gitee：https://gitee.com/Lake1059/StardewMUI-5
* GitHub：https://github.com/Lake1059/StardewMUI-5

若浏览器提示安全问题，请选择允许和保留

若被 Windows Defender 拦截，请到安全中心恢复或者在 更多信息 中选择运行

## 安装产品

运行下载的 StardewMUI 5 Installer.exe 文件

不要更改安装路径，可能会造成意外行为，除非你不是在以正常使用为目的的操作
勾选同意协议，点击【安装】即可，完成后可以选择直接运行或直接退出

你在找 StardewMUI Chromium Embedded Framework ？它被移动到新的页面了，去目录里找找

## 维护产品

如果你的 SMUI 安装文件受到损坏，请重新运行对应版本的安装程序，它将进入维护页面，选择【修复】即可完成修复

## 更新产品

你可以直接通过软件内的自动更新功能来更新产品

当新的安装程序自动下载完成时，会提示你退出后自动运行，退出后完成安装即可

## 卸载产品

如果你暂时不需要本产品或者需要移除，请在控制面板进行卸载，或者重新运行对应版本的安装程序并选择卸载

不推荐在软件管家里卸载，更不要使用任何第三方所谓的卸载工具

## 完全清理缓存文件

若要完全清理本软件的缓存数据，请检查以下位置

* C:\Users\%username%\AppData\Roaming\1059 Studio\SMUI Client 5 Cache
* C:\Users\%username%\AppData\Local\1059\_Studio
常见问题解答

# FAQ

在这里找到一些固定常见问题的解答

```
SMUI 是否会过期

```

永远不会，SMUI 支持的是安装方法，不是模组，只要清单的结构以及模组安装方法没有变那么就永远可用

```
为何管理员模式运行下无法拖拽

```

参考：管理员身份允许拖拽

```
为何禁用自动更新的设置不允许用户关闭它

```

在 SMUI 的用户群体到达一定规模之前我不会启用这个设置，修改设置文件也无效。这是防止大量的用户一直在使用旧版本，我无法保证我的代码的绝对稳定性，我不是专业学程序的，我只是业余的

```
为何有些内容一直是中文的，未提供它们的翻译？

```

毕竟我是中国人，SMUI 项目也诞生于中国人的需求。那些内容也只有中国的玩家需要使用，这样一来也没有必要翻译那些内容了

```
启动时发生“创建窗体出错”的“缺少跟元素”异常，无法完成主界面初始化，无法操作

```

由框架生成的设置文件已损坏，建议普通用户直接清除由框架生成的设置数据。先确保退出了软件，在【C:\Users\%username%\AppData\Local\1059\_Studio】下会有【SMUI.GUI.exe】字样的文件夹，如果有多个，直接全部删除，因为我也不知道是哪个，每个文件夹对应一个路径的程序，Url后面的字符是随机的。技术用户可尝试修复XML元素。然后重启软件即可。此操作会丢失用户数据统计日期记录和图标设置
过程命令

过程类命令提供安装约束条件，与条件判断命令类似，但可容纳几乎无限数量的参数

命令以 SUB 开头，必须以 END SUB 单独一行结束，参数写在开头行和结束行的中间行

注意：虽然参数数量近乎无限，但是请不要把所有可能的情况全部加进来，浪费程序计算时间

## SUB D-EX-IN

在安装时检查文件夹排斥，其参数中的所有文件夹一旦存在就阻止安装

此命令专用于检查 Mods 文件夹内的文件夹，而不是全局

### **格式**

`SUB D-EX-IN

[从 Mods 文件夹中算起的文件夹相对路径]

...

END SUB`

### **举例**

比如说在SVE的配套农场中安装 Immersive Farm 2 Remastered 时需要检测 Grandpa's Farm 必须没有安装

则可以这么写

`SUB D-EX-IN

[CP] Grandpa's Farm

[FTM] Grandpa's Farm

END SUB

CDCD

[CP] Immersive Farm 2 Remastered

CDCD

[FTM] Immersive Farm 2 Remastered`
安装自定义语言文件

如果你不使用简体中文或者英语，请按照下面的步骤加载来自第三方的自定义语言

* 你可以在文末的链接中下载到第三方的语言文件
* 请将文件重命名为：CustomLanguage.xml
* 至少运行一次软件，然后直接退出，以生成缓存路径
* 转到此路径：C:\Users\%username%\1059 Studio\SMUI Client 5 Cache
* 将 CustomLanguage.xml 文件放置在此文件夹下
* 然后再次打开软件即可强制使用你的自定义语言

如果不想再使用第三方的语言文件，请删除该文件然后重启软件即可

注意：语言文件也是需要对应版本的，一般来讲如果有语言数据更新时我尽可能使用新的次版本号

但谁知道会有什么意外呢

我们尚不知道有任何组织或个人制作了第三方多语言文件
English Data

请在 Github 上获取最新的多语言数据，如果你要制作你自己的语言文件，只需翻译每个节点的值即可

https://github.com/Lake1059/StardewMUI-5/blob/main/project/SMUI.GUI/Resource/English.xml

```
不准更改任何节点名称、节点属性、节点路径

```

其中 chs 属性是简体中文下的语言数据，你可以根据这些中文的数据来做出更准确的翻译。width 属性是指显示对象的宽度，单位：像素，已经设置好的值是用英语的数据决定的，只有部分元素支持宽度设置，自己添加是没用的。此文件如非必要请不要擅自修改，我不会每次更新都到这里重新拉取，因为这样做风险太大。如果需要校准语言数据，请将所有要更改的地方列出来，发到我的聊天室或者群里
存档编辑器

概述
--

存档编辑器从 5.1.6 版本开始可用。是用于直接编辑游戏存档文件数据的简单工具，由于第四代的此程序运行良好，未记录到任何故障，所以第五代的存档编辑器是直接从四代复制过来的，同时融入了新的元素和可编辑项目。

操作
--

在主界面【起始页面】选项卡左侧的【存档编辑器】按钮打开，也可以从开始菜单启动 SMUI.SaveEditor，如果是 Steam 版则还可以在启动时的 Steam 选择项中选择启动。

* 本应用程序与主产品分离，因为使用了模组的存档文件可能很大，将一个几十 MB 大小的纯文本文件载入内存需要占用大量内存空间，为了便于释放这部分占用，特意做成分离式的
* 应用程序启动时会自动扫描存档列表，当然你也可以选择手动扫描，点击菜单栏的【扫描存档】即可
* 点击【选择存档】会出现存档文件夹列表，选择要编辑的存档，然后程序会将目标存档的数据完整载入内存
* 在列表视图中找到要进行更改值的项目，可以双击项目或者在右键菜单中选择【修改值】来输入新的值
* 完成后，不要忘记点击【保存存档】来将数据写回存档文件

## 扩展项

存档编辑器支持用户扩展项，当首次启动时会自动在用户数据文件夹创建用于放置这些数据的文件夹，位于路径：C:\Users\%username%\AppData\Roaming\1059 Studio\SMUI Client 5 Cache\SaveEditorUserItem

* 在该文件夹中创建任意后缀的文本文档
* 文件的名字（不含后缀）将显示在列表视图中的第一列【属性】中
* 在该文件中写两行文本
	+ 第一行：`SaveGameInfo` 或者 `[game]`，只有这两个值，不允许写其他的
	+ 这表示为要在哪一个文件中寻找数据，存档分为两个文件，一个是文件名为 SaveGameInfo 的小文件，用于在游戏内存档列表中显示信息，另一个文件名为 <农场名字>\_<存档种子> 的大文件是存档的完整数据，如果要在大文件中寻找数据，那么写 [game]，反之同理
	+ 第二行：XML 节点路径（不支持指向数组）
	+ 存档数据本质上是纯文本，也是 XML 格式的数据，你可能需要了解一下 XML 的相关概念才能知道如何写这一行的文本。首先要知道要修改的数据在什么地方，然后找到它的结构路径写在该行即可，请使用专业软件打开存档文件来寻找，例如 Visual Studio Code、Visual Studio、notepad++ 等等，切勿使用记事本，小心你的电脑当场死给你看。
* 保存文件后重启存档编辑器即可在列表视图末尾看到你新增的项目
* 如果显示为【找不到此节点】则表示你所写的节点路径不正确，在当前存档中找不到，请核对正确后再重试
技巧：精通安装命令的思维

很多人都被安装命令所困惑，不管怎么学都学不会。

不妨在这里看看安装命令的设计思路和结构分析，如果再学不会，我也没办法了，当然如果你连这篇内容都嫌字多不想看，那也基本上告别 SMUI 了。

其实这东西对于学理科的人来说更容易理解一些，跟什么数控机床、机器人控制、PLC 等等的原理高度相似，只不过控制的不是机器而是程序罢了。对于学文科的人来说，我确实找不到什么可以用来比喻的东西，即便这样，电脑做账进销存你总听说过吧，Excel 你总知道吧，SMUI 的数据库就像是一张巨大的表格，安装命令就像是宏命令，只不过要简单得多。

早在第一代的时候，安装命令就已经诞生了，也就是说安装命令是 SMUI 最开始的部分，如果没有这东西，SMUI 整个方案都不成立。那么为什么要采用安装命令这种编程控制形式，是因为我觉得一款专业软件可以实现的操作，不应该被开发者的思维所束缚，留给使用者尽可能多的自由发挥的空间，才是一款专业软件最应该做的事。SMUI 虽然从最初是为了给小白用，但是后来发现安装命令在小白操作模式下无法发挥最重要的作用，如果什么都做成全自动，那么安装命令存在的意义又是什么，如果只是简单的启用和禁用，那为什么不去用 Stardrop，到头来，不会装模组的人还是不会装模组，一切又回到了原点，什么也没改变。

不难看出，要想搞懂安装命令，首先要学会原始安装模组的方法，随便拿一个模组，你必须能够独立安装它，只有在这个前提下才能真正精通安装命令。根据要进行的操作选择合适的命令，是使用 SMUI 最基本的能力。事实上却恰恰相反，多数人连基本的独立安装各类型的模组都成问题，也完全谈不上使用 SMUI 了。

如果你已经学会的安装命令，那么你很容易发现这东西和编程其实差不多，没错，真的差不多，这就是编程的形式。命令编写器就像是代码编辑器，情况分析器就像是语法检查，但比真正的程序编程要简化得多，这不仅让使用者更容易学习和阅读，也极大降低了第三方产品的开发者的技术门槛。

所以命令都按照【命令名称】单独一行然后参数紧跟其后行的规则设计。为了实现特定的功能，每个安装命令都是针对不同的需求而设计，比如最常见的标准 SMAPI 模组，只需要将包含 manifest.json 文件的文件夹放入 Mods，而卸载时只需将文件夹删除，根据这个思路，所有以这种方式安装的操作即被汇总成一个命令：CDCD。由于文件夹结构的固定，可以直接实现各种信息的分析功能，而对于使用者来讲，仅需写 CDCD 然后紧跟着下一行写上这个文件夹的名字即可。

还有一个问题，很多人不理解什么叫从当前位置算起的相对路径，我这里科普一下，我们平时所见的路径格式，例如【C:\Users\Public\1059 Studio\SMUI Client 5 Cache】，这种从盘符开始然后指向具体位置的路径叫做【绝对路径】，而【相对路径】就比如【MyData\All Users\Music】这样的，是从不知道的一个什么地方开始的路径*（开头不要带斜杠，虽然系统会自动兼容多写斜杠的情况，但没事别手贱）*，至于是从什么具体的地方开始的，则不是用户需要操心的事，在由其使用的软件中，程序会自动把前面的部分补上，从而使得对路径的访问保持灵活性，学过各种专业软件的人应该知道这种东西，比如你的工程文件夹里有很多的文件，把总的文件夹换个地方也能正常打开，这就是相对路径的应用。那么【从当前位置算起】到底是从哪里算起，从当前项的位置算起，也就是配置队列中【项的数据内容】那个位置算起。
安装命令

安装命令（Install Command）是 SMUI 的核心部分，它向程序提供要如何安装模组的方法信息

概念
--

程序不会凭空知道模组有没有安装以及要怎么进行安装卸载，这不是原力也不是魔法

程序通过读取编写的安装命令才能判断模组有没有安装以及知道如何安装卸载

版本
--

由于其出色的程序实现，从第三代开始安装命令就基本没有再变动过

## 书写格式

* 命令是从上到下顺序执行的代码段，命令的参数紧跟着下一行
* 所有命令都不区分大小写并且也不区分空格，只要你觉得好看你打多少空格都无所谓

* 但是参数不可以，因为参数是路径的一部分，所以不允许有任何字符错误
* 一个命令和另一个命令之间可以空行以帮助增加可读性
* 但是命令与它的参数之间不允许空行，必须紧挨着下一行

语法
--

所有语法都是我自创的，你不需要会任何一门已知的编程语言

## 存放命令的文件

安装命令保存于该项位置下的 Code 无后缀文本文件中

如果你要编辑文件，必须使用 UTF-8 编码（BOM 不影响），必须使用 CRLF 换行符

## 命令的类型

* 动作命令：提供安装卸载的方法
* 条件判断命令：就像编程里的 IF 语句，这些命令用来判断文件或文件夹是否存在
* 控制命令：对核心程序的机制施加影响的命令，一般写在开头第一行
* 过程命令：参数无限多的命令，用于大批量计算

注释
--

```
安装命令的注释支持从 5.1.0 版本开始

```

* 使用 C 系列编程语言通用的双除号【//】来表示注释
* 必须写在该行的最开头，否则不识别，开头之前可带任意数量空格
* 没有范围注释支持的计划
动作命令

源自英文：Command Copy Directory (To Mods)

将文件夹复制到游戏文件夹的 Mods 文件夹，所有的 标准 SMAPI 模组 都使用此命令

[参数1：要复制的文件夹，从当前位置算起的相对路径]

```

不要多套文件夹，也不要不套文件夹

内部机制会自动检查所有对象是否是此项本身的一员

会干扰程序集中的其他计算，从而引发各种自我迷惑行为

比如出现无法读取到前置需求的情况、无法扫描到项的情况等等

`CDCD

ContentPatcher`

Stardew Valley Expanded 1.14.X

`CDCD

StardewValleyExpanded

CDCD

[CP] Stardew Valley Expanded

CDCD

[FTM] Stardew Valley Expanded

CDCD

[JA] Stardew Valley Expanded

CDCD

[SAAT] Stardew Valley Expanded

CDCD

[STF] Stardew Valley Expanded`

CDCD 命令具有最高优先级，不管你前后有什么其他的动作命令，程序都会用 CDCD 命令去显示安装状态

如果没有 CDCD 命令，那么以第一个动作命令为准来显示安装状态

除此之外，第一个 CDCD 命令拥有最高优先级，执行顺序是按照你命令来的

在执行卸载时自动将使用 CDCD 命令的文件夹下的 config.json 文件复制到项位置下的 .config 文件夹

并在下次安装时自动还原，由此实现 config 保留

如果要针对单个项关闭此功能，请参阅 控制命令 页面中的相关命令

源自英文：Command Global Copy Directory

将文件夹复制到游戏文件夹的任意位置

[参数1：要复制的文件夹，从当前位置算起的相对路径]

[参数2：目标文件夹位置，从游戏目录算起的相对路径]

```

源自英文：Command Mods Addition Directory

覆盖 Mods 中已存在的文件夹，程序会自动检查是否存在文件夹

安装状态会显示为紫色的【附加内容】，不支持卸载，请卸载原模组

常用于大批量汉化文件覆盖、其他作者的资源覆盖等

[参数1：要在 Mods 中覆盖的文件夹，从当前位置算起的相对路径，也是从 Mods 文件夹算起的相对路径]

```

`CDMAD

[CP] Stardew Valley Expanded

CDMAD

[JA] Stardew Valley Expanded

CDMAD

[STF] Stardew Valley Expanded`

源自英文：Command Global Replace File

替换整个游戏的任意单个文件，并计算 SHA256 效验值来判断是否已安装

如果文件较大，将会耗费较多时间来计算，可以考虑使用 CDF 命令（代价是没有安装判断）

在此过程中可以另外实现重命名

[参数1：要复制的文件，从当前位置算起的相对路径]

[参数2：目标文件位置，从游戏目录算起的相对路径]

```

当卸载时，程序会在备份文件夹中找寻相同位置的文件

如果找到则还原文件，反之则**会删除目标文件！！！**

源自英文：Command Global Copy File

将文件复制到游戏的任意位置，在此过程中可以另外实现重命名

[参数1：要复制的文件，从当前位置算起的相对路径]

[参数2：目标文件位置，从游戏目录算起的相对路径]

```

只要目标文件存在就判定为已安装，不会计算校验值

```
CDGCF-SHA{-[字节数]}

[参数1：要复制的文件，从当前位置算起的相对路径]

[参数2：目标文件位置，从游戏目录算起的相对路径]

```

从 5.1.16 版本开始支持，计算文件的 SHA256 值来判断是否安装，如果已安装则显示为【文件已复制并验证】，如果未安装则显示为【文件未复制】，可选指定要进行计算的字节数来节约性能和时间，单位是字节byte，不是比特bit，1KB=1024字节，1MB=1048576字节，如果不带字节数就计算整个文件

### **警告**

此命令设计用于游戏原本没有的文件

切勿用于游戏本身就有的文件，在卸载时直接删除目标文件，不会去备份中找

## CDF

源自英文：Command File

将文件复制到游戏的任意位置，在此过程中可以另外实现重命名

如果要替换游戏本身就有的大文件或者你只是不想让程序去判断是否已安装文件那就用这个

### **格式**

```
CDF

[参数1：要复制的文件，从当前位置算起的相对路径]

[参数2：目标文件位置，从游戏目录算起的相对路径]

```

## CDCC\CDVD

覆盖 Content 文件夹

首先创建一个 Content 文件夹，按照游戏 Content 文件夹里的结构放置你的文件

这是给 XNB 模组 设计的，要替换一大堆 XNB 文件的那种

都 TM 2022 年了，还在搞 XNB 替换，真就懒得写 Json

把作者给我揪出来，让我康康是哪个逼

### **格式**

```
CDVD

```
`### **警告**``卸载时程序自动按照你的 Content 文件夹的文件布局到备份文件夹里找备份

如果没找到就**会删除游戏文件！！！**`
批量创建项

用途
--

批量创建从 5.0.67 版本可用，是新用户开荒的高效工具，你不需要一个一个去创建模组项，使用批量创建功能可一键自动新建并自动写安装命令，仅用于标准 SMAPI 模组，并且还不能套娃，这是为了防止意外情况

操作
--

* 在【项菜单】中找到【批量创建】，打开批量创建功能窗口
* 选择操作类型，有两种操作类型，一个是将每个文件夹都作为单独的模组，另一个是将所选的多个文件夹作为一个模组
* 窗口打开时自动扫描已经在 Mods 中安装的模组，其中 SMAPI 自带的模组不会被添加到表中，从根源上解决小白瞎搞的问题
* 在列表中选择你要进行批量操作的模组文件夹，可以使用鼠标框选（在滚动条右侧有一小块空白可用来框选）多个或者按住 Ctrl 键多选
* 如果选择了第二个操作类型，则需要直接填写左下角的文本框，直接设定这个新项的名字
* 选择目标分类，程序必须知道你要在哪个分类里进行创建

* 确认后点击【开始创建】即可开始运行后台线程，调试窗口自动获得焦点
* 然后回到主窗口刷新即可
事件列表

所有事件位于 `DeveloperEvent` 类中，以下是所有事件的说明

```
StartLoadedEvent

```

当 SMUI 启动完成（加载了设置和语言数据）时触发

```
SubLibraryListUpdatedEvent

```

当子库列表完成刷新时触发，删除子库和新建子库不会触发此事件

```
CategoryListUpdatedEvent

```

当分类列表完成刷新时触发，删除分类和新建分类不会触发此事件

```
CategoryListviewSelectedIndexChangedEvent

```

分类列表视图控件的 SelectedIndexChanged 事件触发时触发，选择项改变时触发，变为没有选中的时候也会触发

```
ItemListviewSelectedIndexChangedEvent

```

项列表视图控件的 SelectedIndexChanged 事件触发时触发，选择项改变时触发，变为没有选中的时候也会触发
插件开发

## 什么是插件

插件（Plugin）是让你自由扩展应用程序功能的强力方法，例如：

* 播放一段声音
* 定制你喜欢的图片作为背景图
* 将你的功能添加到某个菜单
* 在特定的日子来一段欢迎语等等

就像游戏的模组一样，但要简单的多，只需要提供一个 dll 文件就可以了

## 插件发布许可证

为鼓励插件创作以及保护创作者权益，你可以选择售卖你的原创插件

你开发的插件的所有权归你所有，引用其他作者的内容除非其作者声明开放许可否则归其作者所有

SMUI 作者方 不负责插件的侵权问题，请自行设置许可证并通过合法手段解决

对于插件盗卖问题，我的观点是，跟傻逼没什么好说的

## 编程语言

你需要使用 C# 或者 Visual Basic，知道基础的语法就行了，不需要像开发模组那样需要多少经验

## 安装开发工具

如果你还没有开发环境，请按照以下步骤操作

* 前往 https://visualstudio.microsoft.com/ 下载 Visual Studio 2022 Community
* 在工作负荷中选择：.NET 桌面开发
* 可选项中确保勾选了 .NET Framework 4.8 开发工具
* 单个组件中确保勾选了 .NET Framework 4.8 目标包和 SDK
* 建议勾选 IntelliCode
* 开始安装，等待安装程序下载并完成安装，需要好几个 GB 的存储空间

如果你已经准备好了，前往下一页：编写 Entry 代码，学习如何使用 C# 和 Visual Basic 编写简单的插件

## 禁止用户擅自制作付费功能解锁程序

当然如果你做了我也懒得来跟你律师函，只要你不发出来我也懒得去找你，但是只要你做了就已经违反了服务条款

我不是在垄断趁机收钱，而是你必须明白：从某种角度上讲，SMUI 本就不该被开发出来，整个设计似乎超出了预期，逐渐往所有人都无法控制的方向发展，一旦 SMUI 的生态乱了，那么将会对模组的生态造成很严重的影响。科技会使人变得懒惰，当你完全掌握了 SMUI 时，你会逐渐发现自己越来越懒，什么都想着快捷，请保持理性。
标准流程

# SMUI 与其他传统管理器有着本质上的区别，所以你不能用传统管理器的思维去思考问题

标准流程包括了你的绝大多数日常操作

现在切换到【管理模组】选项卡

## 选择\创建子库

子库是五代中新增的内容，将原来数据库中的第一层文件夹作为了子库使用，以容纳更多的模组

* 在【子库和分类菜单】中，选择【数据子库操作】
* 将鼠标悬停在【切换数据子库】上
* 有一个默认的子库可以选
* 或者你也可以选择【新建数据子库】来新建立一个

你必须选择一个子库才能继续下一步

## 创建分类

必须要有分类，分类是你整理模组的必要手段

* 在【子库和分类菜单】中，选择【新建分类】
* 在弹出的输入对话框中输入新分类的名字
* 点击【确定】来确定创建
* 新的分类立即出现在分类列表末尾
* 可以在【子库和分类菜单】中选择【刷新分类】来重新扫描以显示到正常的位置
* 我无法干预扫描顺序，所以强迫症们请慢慢折腾

只有一层分类，请合理安排你的模组归类，我的建议是按照此规则进行分类：通用框架、高级程序、普通功能、高危修改、新的材质、新的物品、农场地图、大型主题，等等。

## 创建项

【项】也就是一个【模组项】，每个项 **约等于** 是一个完整的模组

* 选中一个分类，程序需要知道你将在哪个分类里创建项
* 在【项菜单】中，选中【新建项】
* 在弹出的输入对话框中输入新项的名字
* 点击【确定】来确定创建
* 新的项立即添加到项列表末尾并显示为橙色，状态为【请完成配置】
* 如果之前【配置队列】中没有项，那么程序还会自动切换到【配置队列】并自动选中刚创建的项

对于我们简体中文的用户，我建议项的命名格式为【你自己取一个中文名字】+ 空格 + 【原来的英文名字】

## 配置（部署）项

标准词是【配置】，而加上【部署】是因为在英文中这个词需要用【部署】来翻译

* 配置队列一共是5个区域，最顶上的是当前项信息和控制栏，左上角是配置队列列表，右上角是当前项的数据内容，左下角是情况分析器，右下角是编写安装命令
* 项信息和控制栏：提供再次重命名项名称和自定义版本号，保存项的更改以及顺便从队列中移除
* 配置队列列表：你可以添加很多要配置的项到队列列表中，但同一时间你只能配置一个项
* 情况分析器：自动检查你添加的数据是否放置正确，安装命令是否正确，**只有当检查通过时才能保存**
* 安装命令编辑器：编写安装命令，决定要如何安装这个项，程序是按照你写的安装命令办事的

* 首先在队列中选中你要进行配置的项，如果你是从上一步继续的，那么程序已经自动给你选中了
* 添加项的数据内容，对于 标准 SMAPI 模组，请把直接包含 manifest.json 文件的文件夹拖入，不要多套文件夹，也不要把其中的文件拖进去了
* 在这一代产品中，我 不允许 标准 SMAPI 模组 套娃放置，所以你不要想着随便扔进去就行了
* 根据要如何进行安装的操作编写安装命令，所有安装命令的详细文档和举例从 安装命令 页面可进入
* 绝大多数情况下点一下【自动完成】就可以自动写好 **标准 SMAPI 模组** 的安装命令了，大幅节约时间

* 配置完成后点击【保存并从队列中移除】即可，如果移除后队列中没有项了，那么程序自动转到【管理模组】选项卡
* 当然你还有事的话点【仅保存】就只保存不移除了

标准 SMAPI 模组不需要填写【自定义版本号】信息，CDCD 命令会自动计算并比对已安装的内容

安装命令是我自创的，没有乱七八糟的符号，没有乱七八糟的格式，不要害怕自己没学过编程，总共没几个命令，只要计算机技术不是菜到离谱的连压缩文件和路径都不知道的那种，其余都能学会

## 回去刷新

回到【管理模组】选项卡

点击项列表的【刷新】，注意这个刷新的鼠标左右键功能不一样

* 鼠标左键：只刷新状态信息
* 鼠标右键：清除列表，重新扫描分类下的项

现在你可以看到项的状态了

## 安装和卸载

* 选中你要进行操作的项，鼠标右键，选择【安装】来安装，选择【卸载】来卸载
* 在【调试】中你可以看到执行过程，以及每个线程的消息
控制命令

## CR-UN-OFF

指定此项为禁止卸载，写在开头，在安装时不起作用，在卸载时运行到这里会输出一个错误，后续命令不再执行

## CR-UN-CANCEL

当运行卸载时运行到这里就直接结束操作，后续命令不再执行，也不会生成报错，这个命令一般是用于配合 CR-APP-SHELL 系列命令。此命令从 5.1.16 版本开始支持；此命令需要第三方开发者自行实现

## CR-CG-DB

关闭此项的 config 自动保留机制，写在开头，必须写在所有 CDCD 命令的前面。安装时不再自动还原 config.json，卸载时也不再自动备份 config.json，注意已存在于数据仓库中的 config 缓存不会被自动删除，如有需要请手动清除（SMUI 提供了相关功能功能）

## CR-CDS-CDCD-AMD

允许使用 CDCD 命令的文件夹套娃放置，在此命令之后的 CDCD 命令全部支持套娃。此命令需要第三方开发者自行实现

## CR-FILE-ALLOW-ALL

允许除了 SMUI 定义的特定文件之外的所有文件被添加到项的内容中。例如可以借此将 config.json 直接添加到项中来实现对指定的模组配置文件进行替换，或者整些别的。这是定义在 GUI 软件中的命令，核心库里没有。此命令从 5.1.0 版本开始支持；此命令需要第三方开发者自行实现

## CR-APP-SHELL（-P）-IN/UN

在安装或卸载时运行游戏文件夹中的指定可执行程序，此系列命令是由 NCR 这类 ReShade 外部渲染器的模组项为原型需求而设计，同理也可以用于可能出现的其他同类情况。此系列命令共有四个，其中的 `IN` 和 `UN` 表示仅在安装时或卸载时生效，如果不带上 `-P`，那么只有一个参数，指定到从游戏根目录算起的相对路径，如果带上 `-P`，那就有两个参数，第二个参数用来给将要启动的可执行文件传递启动参数。此系列的 4 个命令从 5.1.16 版本开始支持；此命令需要第三方开发者自行实现
The Solarius Academy

The Solarius Academy is the most prestigious institute in all of the Arkadian Republic for those looking to study the arcane arts. You'll find magic users of all sorts there, from more scholarly types like wizards and bards, to more divine servants like clerics, and even more free-spirited types like druids and sorcerers. Anybody who wishes to gain a formal education in their chosen magical path may do so in the Academy.

It has a full course length of 8 years, though many choose to conclude their education in the first 4, and seek apprenticeships and work elsewhere, feeling they've learned enough. It's mostly only those with a true devotion to the study of magic that stay for the full 8 years, looking to take advantage of the wisdom of master spellcasters, and to spend those years utterly devoted to their study.

Those who have been to the Solarius Academy often have many more opportunities in the wider world of magic, due to the prestige and practical knowledge that attending the school gives them during their time there. Many of the powerful wizards within Solarius and the world beyond, as well as some high ranking clerics and famous bards, are all reported to have attended the Academy in their youth.
SMUI.Windows.PakManager

功能
--

包含 SMUI 中使用到的一些对话框界面，可以方便地调用它们

获取
--

* 如果你需要此库的 Windows 版本，可以在 Visual Studio 中的 NuGet 搜索并安装 Lake1059.SMUI
* 也可以直接使用 SMUI 产品自带的文件
* 此库仅支持 Windows

## SingleSelectionDialog 类

多项单选对话框，用于替代 Windows 难看的系统对话框，有很高的自定义程度，但不能更改配色

高 DPI 兼容：*Shared GlobalDpixRatio As Single* 可以用于调整 DPI 倍率，这个值等于目标 DPI 值除以96，默认是1，全局生效

```
New(Title As String, SelectionGroup As String(), Optional Description As String = "", Optional DescriptionPanelHeight As Integer = 77, Optional WindowWidth As Integer = 300)

```
在 New 到新对象的时候设置这些属性。Title 是窗口标题栏显示的内容，可以为空。SelectionGroup 是选项，字符串数组类型，每个元素是一个选项。Description 是描述文字，可以为空。可选 DescriptionPanelHeight 是描述文本的高度，最小值 77，请根据你的描述文字长度进行设置。可选 WindowWidth 是窗口宽度，最小值 300，根据内容进行设置。窗口的高度会根据选项的内容和描述的高度自动生成一个最小值。

```
Function ShowDialog(owner As Form) As Integer
Function ShowDialog() As Integer

```
调用 ShowDialog 来显示对话框，可以给一个类型为 Form 窗口的参数，让对话框基于谁显示，可以自动调整位置，如果没有窗口参数，那么显示在屏幕中心

* 返回值是 -1 时，代表没有选择，直接关闭了窗口
* 返回值从 0 开始等于 SelectionGroup 中的索引

## InputTextDialog 类

输入对话框，Win32 的那个太难看了，所以我重新拼了一个暗黑主题的，强迫症舒适度拉满

```
New(Title As String, Message As String, Optional defaultText As String = "", Optional WindowWidth As Integer = 450, Optional WindowHeight As Integer = 200)

```
在 New 到新对象的时候设置这些属性。Title 是窗口标题栏显示的内容，可以为空。Message 是消息文本，标题和消息不建议都为空，至少消息文本是要有字的，不然看上去不舒服。可选 defaultText 是文本框中的默认文本，可选 WindowWidth 是窗口宽度，最小值 400。可选 WindowHeight 是窗口高度，根据你的消息文本的内容设置合适的值，最小值 200

```
Function ShowDialog(owner As Form) As String
Function ShowDialog() As String

```
显示对话框上同，返回值是用户输入的内容，如果用户什么都没有输入，那么无论按下了什么键都返回空字符串

```
Shared Property UserInputString As String = ""

```
弃用，没有数据

```
Sub TranslateButtonText(OK As String, Cancel As String)

```
你可以自定义确定键和取消键显示的文本，以实现多语言，但注意保持用词简短

```
Sub SetTextBoxForeColor(yourColor As Color)

```
你可以更改文本框中的文字颜色
《星露谷 SMUI 模组管理模式生态标准化规定和产品开发技术标准》

```
此文件为特别重大重要文件，禁止任何转载和任何未授权的讲解，未经许可禁止修改

```

概述
--

由于 SMUI 方案有着巨大的优势和潜力并且非常过头，任由其发展必将导致灾难，为了不惜一切代价尽一切可能避免灾难的发生，我特此编写此文件，用以规范整个生态和所有技术标准。任何接入 SMUI 管理模式的产品以及衍生产品都必须遵守此文件的所有内容，这也是能够得到我的授权的前提。

修订
--

### 权限

* 直接更改权限：仅我本人（1059 Studio）允许直接修订此文件的内容
* 申请修订：申请者必须提供完整且有效的更改信息，包括更改前后的说明

```
任何未经授权的擅自修改都将得到直接封禁的处罚

```

## 基准原则

永远遵循以下原则

* 唯一目的：永远支持星露谷的全部类型的模组安装方法
* 为了达到首要目的可以牺牲计算机能力不足的用户
* 必须保住用户基本体验

## 安装命令

为了让全平台、全系统、全设备的用户能够流畅切换产品：

* 所有 SMUI 产品支持的基础安装命令必须同步
* 现有安装命令绝不轻易修改名称和功能
* 新命令由社区提出，且必须由精通 SMUI 原型的用户共同开会决定
* 除非某种安装方式存在严重故障或漏洞，否则不得宣布删除任何安装命令
* 不准私自创造新命令，也不准用非英文定义任何命令，禁止任何定义私有命令的行为
* 命令功能的实现必须保持简单易开发且全平台可实现，禁止故意给某种开发语言的开发者施加压力（易语言除外）

## 应用程序

开发者可自由设计界面和操作方式

* 不允许有任何直接消灭同类产品的文案
* 不允许有任何贬低、歧视、抵制同类产品的内容
* 不允许摧残用户硬盘寿命
* 不允许浪费用户计算机处理性能
* 必须向用户公开所有缓存数据的路径，不得有任何隐瞒和伪装
* 不允许要求用户具备操作某一开发环境或控制台的能力

生态
--

关于生态

* 除非有作者本人的商用授权，否则全面禁止打包数据的盈利行为
产品信息和特点

## 基本资料

StardewMUI 5（以下和其余全文简称为 “SMUI”）是 Windows 桌面应用程序

运行库为 .NET Framework 4.8，开发语言为 Visual Basic，仅支持 64 位操作系统

起源
--

为什么要创建这个项目，这是直到今天都非常值得讨论的问题。在 SMUI 第一代诞生的时候，它的目的并不是为了解决所有人的模组安装问题，而是因为我当时快被群里的小白们气死了。为什么其他游戏的玩家全是各种技术佬，到了星露谷这里，99%的人都是电脑小白，啥都不会，只会打网游。好了不说了，懂的都懂，说多了都是气。

发展
--

由于当时我技术力有限（虽然现在也菜）第一代没几个月就报废了，不过第二代很快就上线了，这也是首个对外公开的版本，我记得那一代的核心部分还是靠着玄学运行的，我都不知道它为什么能够运行，虽然 bug 一堆，但是能跑，大多数情况还是能够应付。第三代产品才是真正从玄学迈向实在的首个产品，那一代的设计是彩色风格，非常的炫彩，不过后来也因为技术不够而报废了。直到第四代，也是直到 2022 年上半年最多人使用的版本，这一代已经非常稳定，几乎不存在不支持的情况，能完美应对所有模组。那么为什么 SMUI 从第一代之后就转变发展方向为解决所有人的模组安装问题了呢，我只能说，真香！

特点
--

SMUI 拥有以下特点，具有很高的市场竞争力

* 所有模组类型全部支持，快捷高效
* 历经时间的考验，方案成熟稳定
* 基于用户编程实现，自由程度高
* 大量专业玩家认可，值得信赖
* 本体免费、开源、无广告、无捆绑

优势
--

相比于传统管理器以及手动安装，SMUI 拥有以下优势

门槛
--

由于 SMUI 强大的功能，导致其门槛比其他管理器高得多

你至少需要或熟练以下内容：

* 路径的概念
* 压缩文件的概念
* 文件资源管理器的操作
* 计算机其他基本操作
* 固态硬盘与机械硬盘的区别
* Windows 系统常用的路径位置
* 游戏目录的文件结构
* SMAPI 的安装与卸载
* 国内六年级的英语水平
* 一个正常的系统
* 电脑配置不低于下图

我TM服了真的，全是电脑小白，教啥啊教
搜索功能

搜索功能是让你在茫茫数据大海中迅速找到项的强力方法

## 如何使用

* 在项列表的顶部菜单中，点击【搜索】来打开搜索窗口
* 首先你要选择你要搜索的类型，它们的意思如下
	+ 项名称：仅匹配项文件夹的名字
	+ Name 键值：匹配所有清单中的 Name 键值，也就是模组在清单里的名字
	+ Author 键值：匹配所有清单中的 Author 键值，也就是作者信息
	+ UniqueID 键值：匹配所有清单中的 UniqueID 键值，UniqueID 是每个模组的唯一身份标识，也是程序里的对象名称
	+ 依赖项（反向搜索依赖）：匹配所有清单中的依赖项信息，也就变成了反向查找依赖，看看有哪些项需要它
	+ 包含的文件夹：仅匹配项文件夹下的第一级子文件夹的名字，不会搜索子目录
* SMUI 还有完备的模糊搜索机制，你可以自己决定如何进行模糊搜索
	+ 不区分字母大小写：默认启用
	+ 不区分中英文的标点符号：仅限逗号和句号，默认关闭
	+ 逐字拆分搜索：基于单个字符的搜索，最大限度的模糊搜索，需要消耗更多性能和时间，默认关闭
* 在搜索窗口最上方的文本框中输入你要搜索的内容
* 点击【GO】按钮开始搜索
* 点击【...】查看本次启动软件的搜索记录
* 点击【C】清除本次启动软件的搜索记录
管理员身份允许拖拽

## 要解决的问题

管理员身份下不支持拖拽，从而不能用拖拽的方式添加项数据、用拖拽的方式快速导入数据等

## 这种情况具体是怎么样的

极个别用户的系统默认关闭了 UAC（用户账户控制），这些系统来源于多数电脑店、非官方渠道的镜像。UAC 使得普通应用程序不能自动获取管理员权限，而需要用户手动确认，但在 UAC 被关闭的情况下，几乎所有程序都会自动获取管理员权限。

你可以重新打开 UAC 将其调至任意级别来解决

## 如何打开 UAC

* 你可以直接在 Windows 开始菜单旁边的搜索功能中搜索 “UAC”，即可找到 “用户账户控制”
* 或者你可以在控制面板中搜索 “UAC” 来找到 “用户账户控制”
* 将其调至推荐的级别，然后确定

重新打开 UAC 可解决大部分用户的问题，但也有极少数无法解决，目前已有多例在案，请往下看

## 为什么会这样

按照微软的解释：在 .NET 中，为了防止潜在的权限攻击，需要阻止某些功能，而拖拽操作属于高级权限功能

.NET 的机制阻止了 DragEnter 事件 和 DragDrop 事件的发生

## 如何解决

SMUI 使用 Message Filter 解决了这个问题，感谢知乎用户 雨少主 的代码分享，许可证：WTFPL

在管理员模式下，以下列表视图控件的右键菜单会多出一个选项：**激活拖拽**

* 分类列表视图
* 项列表视图
* 配置队列选项卡中的项的数据内容列表视图

点击右键菜单中的激活拖拽即可让当前控件在管理员模式下响应拖拽

注意同一时间只能有一个控件在管理员模式下响应拖拽（勉强能用就行了，完全解决不可能了，拖拽的实现都不一样了）

可能存在潜在的不可预知的异常，目前暂未记录任何问题
依赖项表

依赖项表，是检查单个项的依赖项是否已经安装的重要功能

以前叫做前置表，但是我想把前置这个词从 SMUI 彻底移除，我真是受够了国内这帮小白，TMD前置就那么难理解？

操作
--

选中一个项，看到靠近窗口左下角的【Requirements】按钮，它会显示当前项的依赖项数量

* 显示的内容格式为：C? + R?
* C 代表内容包，R 代表其他依赖项
* 它们之间可能会有重叠的

点击这个按钮，打开或关闭【依赖项表】窗口，这个窗口的列表会显示当前项的所有依赖项关系

* 这个列表去除了重复，内容包的优先级最高
* 点击【刷新】可以重新从内存载入数据（不是重新读取文件的）
* 点击【检查】可以扫描整个 游戏 Mods 文件夹，输出安装状态
	+ 支持套娃，所以检查结果与 SMAPI 和其他工具的结果不同

右键单个项可以选择复制名称
初始设置

## 隐私选项

从正式版 5.1.0 开始，为了兼容世界各国的法律和规定，用户可以自由选择如何参与用户统计

* 如未设置会在启动时自动弹出，后续也可以在设置窗口中打开
* 如果选择不参与，我们不会收到你的任何信息
* 注意：这不是让你用来故意降低用户统计数量的

## 设置游戏路径

* 点击主窗口右上角的【设置选项】打开设置窗口
* 在左侧选择【关键路径】选项卡
* 点击游戏路径文本框右侧的【...】按钮
	+ 弹出对话框选择游戏路径，程序会读取注册表以及扫描默认路径
	+ 如果程序没有找到，请默认选择第一项来手动指定路径
	+ 游戏路径是包含【Stardew Valley.exe】文件的那个文件夹
* 不要忘记点击【应用】或【确定】来保存设置

## 设置模组数据仓库路径

模组数据仓库（简称“仓库”，早期版本叫做“整合包”）是 SMUI 管理方案的核心内容，你所有的模组都储存其中，就是一个大型的仓库，本身具有整理、归类、备份、储存额外信息的作用。作为 SMUI 的使用者，你不需要在游戏 Mods 文件夹中套娃，因为这已经是多此一举，完全没有意义。你甚至再也不需要打开游戏文件夹，SMUI 软件直接提供所有日常操作。

* 上同，打开设置窗口，选择【关键路径】选项卡
* 点击模组数据仓库路径文本框右侧的【...】按钮
	+ 弹出对话框选择数据仓库路径，程序会自动读取第四代产品的设置文件
	+ 如果你正在使用第四代产品的数据仓库，则可以直接选择它，两代标准完全一致
	+ 如果没有使用第四代，请手动指定一个固定位置的空文件夹来作为新的数据仓库
	+ 程序会强制创建一个名为【Default Sub Library】的子库
	+ 原来第四代的【Assets】文件夹作为子库使用
	+ 数据仓库路径是至少包含一个子库文件夹以及【OS】等其他无后缀文件的那个文件夹
* 不要忘记点击【应用】或【确定】来保存设置

## 设置地区和语言

部分用户所在的地区可能无法正常访问更新服务器和在线内容服务器

* 上同，打开设置窗口，选择【地区和语言】选项卡
* 其中 Gitee 位于中国大陆，GitHub 则是国际用户的选择

* 如果你擅长的语言不是简体中文，可以选择其他【界面语言】
* 或者可以安装自定义语言文件

## 选择子库

程序不会自动选子库，你只能同时使用一个子库

* 回到主窗口，切换到【管理模组】选项卡
* 点击【分类和子库菜单】
* 选择【数据子库操作】
* 在【切换数据子库】菜单中选择你要使用的子库
* 当前正在使用的子库的颜色标记为【绿色】
Social Democratic Party of Germany (Emperorreich)

Logo of the Social Democratic Party of Germany

Flag of the Social Democratic Party of Germany

The **Social Democratic Party of Germany** (**SDPG**), often called the **German Social-Democratic Party** is a social-democratic party, and main ruling party of the Social Democratic Republic of Germany. During WWII, members started revolutions and created the state.
加载并发布插件

软件自带一个名为 PluginExample 的插件，是我用来测试的，此插件不会影响你的使用以及软件性能

## 安装/加载插件

将 dll 文件放置在 C:\Users\%username%\AppData\Roaming\1059 Studio\SMUI Client 5 Cache\Plugin 路径下

* 不要套文件夹，不会扫描子文件夹
* 将后缀名更改为 .smui.dll（如果没有打开 文件资源管理器的后缀显示 则忽略.dll）

然后重启 SMUI 即可加载

插件正在使用中时文件处于占用状态，请在关闭 SMUI 后再进行更新或删除操作

## 发布插件

若要公开发布插件，请确保在受信任的网站中发布，例如 NEXUSMODS

但请注明必须依赖本产品，提醒用户这不是模组

是非常牛逼的插件？你可以在这里添加你的下载链接
StardewMUI Wiki

```
此维基正在进行大规模更新！

```

## SMUI Series

SMUI 是由 1059 Studio 开发的用于 Stardew Valley 的超强模组管理器系列软件，以 “真正支持全部类型的模组安装方式” 为目标，核心技术完全自研，抛弃传统设计，以一种全新的方式管理模组，在社区中获得了大量玩家的一致好评。尽管如此，SMUI 的学习成本和门槛要比同行产品要高得多，因为全球仅此一个能真正做到完全支持全部类型的安装方式，而实现的方式就是用户编程，在这一点上会让很多人觉得十分难学。SMUI 目前只适用于 Windows 系统，如果你想开发跨平台，我十分乐意提供各种技术资料。

为保证产品的可持续发展以及后续项目开发，SMUI 采用可选付费买断制来盈利，在销售平台上注册账号然后付款即可获得解锁文件。按照人民币价格，买完必要内容需要 39 CNY，而后续继续推出的付费内容对于超过大半的用户来说根本用不着，所以一般无需购买。当然对 SMUI 或者社区做出了重大贡献的都可以找作者直接要。关于盗版问题：只要你不蹬鼻子上脸那我都懒得管，我不需要靠这个收益来活着，只是当你想起的时候，记得补个票。

## SMUI 6

第六代 SMUI 即将推出，此代产品将远远遥遥领先于同行。在第六代中将有大量技术升级：已宣布编写安装命令的时代正式结束，将由全新的安装规划以全可视化操作呈现，大幅降低学习门槛，当然这也意味着你要重新学习配置；重新设计的核心处理，让运行效率翻倍再翻倍，在 ChatGPT 的帮助下已经对程序进行了众多优化；基于 SunnyUI 以及自绘制的全新暗黑主题，将带来更加舒适的操作体验；将运行框架升级到了 .NET 8，并启用独立运行时。

* 需要 Windows 10 x64 1809（10.0.17763.0） 及以上版本
* 在 Github 下载
* 在 Gitee 下载

点此前往 SMUI 6 的维基目录

## SMUI 5

第五代是现在正在使用的版本。

* 仅提供 Windows 64 位版本
* 在 Github 下载
* 在 Gitee 下载

点此前往 SMUI 5 的维基目录

社区
--

* 开发者Q群：738313040
* KOOK 聊天室服务器：https://kook.top/yW15HU

## 翻译维基

我们欢迎所有愿意帮助社区发展的成员创建任何语言的维基

* English Wiki

## 玩家们的教程

你也可以在这里自由创建你的教程，请在自己的命名空间里创建

* 唐尼玛666
Aerus Wiki

**Welcome to the Aerus Wiki!**
World of Aerus, Adam's D&D homebrew setting

## Tabletop Rules and Information

* Homebrew Rules and Rulings
* Playable Races and Classes
* Special Materials and Resources
* Master List of Potions
* Expanded Wild Magic Table
* Current Player Characters
* Previous Player Characters

## Lore and Setting

* Cosmic Overview
* Origin Mythos
* Great Ages of History
* Humanoid and Playable Races and Creatures
* Monstrous Races and Creatures
* World of Aerus - World maps and country info
* Deities of Aerus - List of active Gods
SMUI 6 了解安装规划的运作原理

```
对于只是日常使用 SMUI 6 来说，你不需要学习此页的内容；这些内容是精通 SMUI 6 所必要的

```

概述
--

SMUI 6 取消了编写安装命令并不代表着安装命令就不存在了，而是全部转移到了程序内部计算中去，毕竟程序必定需要一种方式来保存这些命令代码。我重新制定了所有的命令代码以及语法格式，由于不再需要用户编写它们，命令会变得更加复杂，当然也能够实现更强大的功能。

在 SMUI 6 中，使用 `Code2` 文件来存储命令以便和 SMUI 5 的 `Code` 文件作出区分，同时也是为了方便自动升级。

运作原理如下：

* 文件中依旧采用逐行文本来记录，格式为：`[键]=[值]`，相比 SMUI 5 的设计，这种设计要先进得多
* 其中【键】是安装规划代码也就是安装命令，【值】是参数
* 每个参数用竖线 `|` 符号来隔开，因为竖线不能作为路径的一部分，而且对于其他功能实现也用不着这个符号，所以是最佳选择
* 当程序读取时，先将所有键值转换到 `List(Of KeyValuePair(Of String, String))` 对象中，然后逐个处理
* 当程序保存时，根据安装规划列表视图中的内容生成上述的列表对象，然后逐行保存到文件中
* 使用参数时，对值进行字符串分割即可得到每一个参数
* 当然对于安装和卸载操作，有更加复杂的实现过程