GithubHelp home page GithubHelp logo

yechentide / dstservermanager Goto Github PK

View Code? Open in Web Editor NEW
64.0 2.0 13.0 13.14 MB

Don't Starve Together dedicated server manager / 饥荒傻瓜式服务器管理脚本 / Bug反馈QQ群927694504

Shell 31.26% Lua 68.74%
dst lua shellscript dont-starve-together dontstarvetogether

dstservermanager's Introduction

DSTServerManager

本脚本已经停止维护

2023年6月6号,我决定停止维护该脚本。
hujinbo23写了一个叫dst-admin-go的服务器管理系统,推荐大家使用这个来管理服务器。
dst-admin-go是用go写的,方便部署(特别是作者提供了Dockerfile),占用内存应该也不高。
最重要的是,网页比脚本用起来简单hhh
在此感谢一直以来使用该脚本的服主们,祝你们的服务器没有鸽子~

目录

基本介绍

这是一个用来管理(Steam版)饥荒联机服务器的脚本!
贴吧置顶教程里的go.sh脚本,已经年久失修,不适合现在版本的饥荒了。
我以前经常用dstserver.sh, 但因为某些原因我决定重写一个。

开服脚本说实话都大同小异。那么说说这个脚本的特点吧。
我觉得有两个:

  • 更好的输出。脚本里写了好几个专门用来输出的函数, 使用不同颜色来让输出更易懂。
  • 扩展性好点。添加选项, 添加设置, 添加新模板, 添加新功能, 都比较方便。

如果你想了解文件夹结构, 请看这里
如果你想了解本脚本并修改, 请看这里

下载使用

系统/用户要求

  • 本脚本只支持64位系统(所以默认使用64位饥荒服务端)
  • 本脚本目前只支持Ubuntu/CentOS, 稍微改下应该可以支持Redhat系列和Debian系列的Linux系统
  • 本脚本禁止root用户执行
  • 推荐由root用户下载完依赖包后, 使用普通用户执行
  • 或者使用有sudo权限的用户执行
    • 如果你可以登陆root用户, 你也可以自己给别的用户加sudo权限
    • Ubuntu: gpasswd -a 用户名 sudo
    • CentOS: gpasswd -a 用户名 wheel

下载脚本

你需要先把脚本放到服务器上面。
在服务器上面使用下面这一行命令就能下载好了:

cd ~ && git clone https://gitee.com/yechentide/DSTServerManager && ln -s ~/DSTServerManager/DSTManager.sh ~/DSTManager.sh
  • 注1: 如果你电脑上有DSTManager.sh文件, 你也可以手动上传。但是版本1.3以前, 更新功能貌似没写好。推荐用上面命令直接下载
  • 注2: 上面的命令使用了gitee的链接。如果你的服务器在国外, 推荐使用github。只需要把上面的gitee改成github就行

执行脚本

执行脚本输入这个就行。

~/DSTManager.sh

注: 第一次运行脚本并安装完依赖后, 重新登录主机即可输入dst并回车来执行脚本!

测试人员

感谢以下人员帮忙测试脚本!mua!

  • RITENU
  • Dr.Toby
  • Mephistopher

功能

想添加的功能

想添加不代表都会添加
shellscript和lua语言我写烦了, 希望有人来帮忙一起写hh...

  • 服务端管理
    • 启动64位服务端
    • 关闭服务器
    • 重启服务端
    • 更新服务端
    • 一次性启动存档内全部世界
    • 单独启动存档内世界
    • 自动更新服务端
    • 进入控制台
    • 提供特定控制台命令的快捷选项
    • 备份log
    • 正式版/测试版切换
    • 通过top/htop查看服务器状态
  • 存档管理
    • 新建存档时可以灵活添加世界(参考了dstserver.sh)
    • 更灵活的编辑cluster.ini
    • 建好存档后修改cluster.ini
    • 更灵活的编辑server.ini
    • 建好存档后修改server.ini
    • 更灵活的编辑worldgenoverride.lua
    • 建好存档后修改worldgenoverride.lua
    • 删除存档
    • 保存自定义世界模板
    • 撤销删除功能
    • 备份存档
    • 还原存档
    • 导入本地存档
    • 白名单/黑名单/管理员名单管理
  • Mod管理
    • 下载Mod
    • 添加Mod到存档
    • 配置特定存档的Mod
    • 更新Mod
    • 删除Mod
  • 脚本相关
    • 后台检测脚本更新
    • 更新脚本
    • 切换远程仓库
    • 切换分支
    • 脚本迁移帮助
  • 其他工具
    • 文件位置结构输出功能(类似tree命令的输出)
    • 玩家上线记录
    • 显示进过服务器的玩家列表
  • 帮助中心(这个大部分以说明为主)
    • 添加帮助函数
    • 端口/防火墙/安全组设置帮助
    • 单主机服务器开服帮助
    • 双主机服务器开服帮助
    • 本地存档上传帮助
    • 其他脚本迁移帮助
    • 其他脚本介绍&下载

界面预览

准备阶段(第一次运行)

  • 下载并运行 下载并运行
  • 下载依赖包 下载依赖包
  • 下载依赖包结束 下载依赖包结束

主面板

主面板

服务器管理

  • 启动 & 关闭服务端 启动 & 关闭服务端
  • 操作控制台 操作控制台

存档管理

  • 新建存档 新建存档
  • 配置cluster.ini 配置cluster.ini
  • 修改cluster.ini设置 修改cluster.ini设置
  • 往存档里添加世界 往存档里添加世界
  • 修改server.ini 修改server.ini
  • 选择世界配置模板
    目前只添加了默认配置的模板和泰拉瑞亚的模板
    要添加新的模板, 可以往templates/world_presets文件夹里面添加 选择世界配置模板
  • 修改世界配置 修改世界配置
  • 删除存档 删除存档

Mod管理

  • 下载Mod 下载Mod
  • 添加Mod到存档 添加Mod到存档
  • 配置Mod 配置Mod
  • 配置Mod 配置Mod

dstservermanager's People

Contributors

yechentide avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

dstservermanager's Issues

在向新存档添加mod时遇到的问题

您好,我在试图添加mod时给出了如下报错,因为不知道具体是哪边的问题所以我向两方都做出了反馈

lua: /home/ubuntu/DSTServerManager/.cache/modinfo/2328604820.lua:101: invalid escape sequence near '"Deal 1.5 times damage to plant-type mobs('
stack traceback:
[C]: in function 'dofile'
/home/ubuntu/DSTServerManager/scripts/mod_manager.lua:85: in function 'generate_installed_mods_table'
/home/ubuntu/DSTServerManager/scripts/mod_manager.lua:246: in function 'add_new_mods'
/home/ubuntu/DSTServerManager/scripts/mod_manager.lua:307: in main chunk
[C]: in ?

其中2328604820对应的mod是

https://steamcommunity.com/sharedfiles/filedetails/?id=2328604820

这个mod有一个设置是“对植物造成1.5倍伤害”

添加的mod不起效

如题,今天开新档添加了几个mod进游戏发现没起作用,用T键看不到模组物品,血条显示类也没有显示,但是用电脑直接创建世界并启用相同mod发现是可以正常工作的_(:з)∠)_

一点建议

最近也找了很多的开服脚本,发现不尽人意的地方很多,个人感觉 dstserver的界面管理+go.sh的功能组合到一起比较合适,目前go.sh和dstserver发现的问题
先说go.sh
1.这个就是针对Ubantu系统写得,没有增加对Centos的支持,里面在装环境的时候默认的是装不了,要把代码对应部分改成Centos的支持库
2.force_install_dir 命令要在login anonymous之前,这个不知道是Steamcmd改的还是以前这样,但是我手动走流程的时候,是这样提示的,但是go.sh的脚本是反过来的(我看网上大多教程都是反过来的,不知道这个有没有影响,反正我第一次跑通的时候是要调整顺序才可以)
3.在某一个版本以后,要想跑通是要把libcurl.so.4重链接的,但是go.sh有这行代码但是不知道为什么给注释掉了(这也是现在go.sh跑不通的绝大多数人遇到的问题)
4.接上条,go.sh注释的地方你单纯的解开是不行,他的跟路径文件夹是带引号的Don't Starve Together Dedicated Server这个名字,不知道出于什么考量,单引号+空格,太容易出问题了,在执行某些命令的时候,最好是全局替换一下
5.解决了以上问题,go.sh 洞穴跑的通,但是世界一直有问题,暂时没有找到问题原因

dstserver.sh
1.这个脚本的mod管理我就没跑通过
2.启动服务器的逻辑不是很好,个人感觉go.sh的逻辑比较好,从存档槽中启动, dst的逻辑是在上次启动的服务器和新服务器之间选择

他俩各自的优点,晚点再说

无法正常启动

====================================================================================================================================================================================================================================================
DST Dedicated Server Manager v1.4.3.1
Github仓库: https://github.com/yechentide/DSTServerManager
Gitee仓库: https://gitee.com/yechentide/DSTServerManager
全部代码上传到以上仓库里了, 有兴趣的伙伴可以来一起改善功能!

[TIP] 如果服务器列表里不显示服务器, 请检查端口和防火墙&云服的安全组设置!
[TIP] 如果你启动游戏时看到有更新的话, 服务端这边也需要更新! 服务端管理界面可以更新服务端。

主面板 <<<<<< <<<<<<
/home/dts/DSTManager.sh:行616: running_cluster_list: 只读变量

对应的shell代码declare -r -a running_cluster_list=$(generate_list_from_tmux -s | tr '\n' ' ')

在存档配置管理&mod添加方面遇到的问题

您好,我刚开始试着用您的脚本搭建一个饥荒的服务器,在存档配置管理&mod添加方面遇到了问题

  1. 设置存档配置时(新建存档时或者对已有存档进行修改时)除了yes/no和配置选项内容之外,所有的提示性文字都是黑色的,只能看见空行,复制到其它地方的确是有文字的。

  2. 下载完mod后试着向已有存档添加mod时会报如下错误:

lua: /home/ubuntu/DSTServerManager/scripts/mod_manager.lua:85: attempt to concatenate a nil value (global 'modinfo_cache_dir')
stack traceback:
/home/ubuntu/DSTServerManager/scripts/mod_manager.lua:85: in function 'generate_installed_mods_table'
/home/ubuntu/DSTServerManager/scripts/mod_manager.lua:246: in function 'add_new_mods'
/home/ubuntu/DSTServerManager/scripts/mod_manager.lua:307: in main chunk
[C]: in ?

服务器是腾讯云租用的,系统是Ubuntu Server 20.04 LTS 64bit,脚本版本是v1.4.2

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.