专栏首页Opensource翻译专栏Lutris: 让Linux游戏管理变得简单【Gaming】

Lutris: 让Linux游戏管理变得简单【Gaming】

使用此开源游戏平台,从单个界面安装、配置和启动所有Linux游戏。

图片来源:Jason Baker的截图。CC BY-SA 4.0

如果你使用Linux并且喜欢玩电脑游戏,那么最近您的生活就相当不错了。Valve、Unity、Unreal Engine和其他大牌力量已经将视频游戏行业彻底拉入Linux兼容的行列,如果你使用Steam,你可能拥有的Linux兼容游戏可能都玩不完(用Proton和Steam play,这个数字还会增加)。

如果你是indie游戏的粉丝,那么Itch.io和各种各样的游戏sprint(比如Open Jam)可以让你很容易找到真正优秀的Linux游戏。像GOG.com和Humble Bundle这样的供应商提供了很多新的和旧的游戏。最后,您可以在发行版的存储库中找到大量的用于旧控制台的游戏模拟器以及在线游戏。

多年来,Linux用户第一次感受到游戏太多带来的“尴尬”,这就提出了一个问题:你如何管理它们?开源的答案是Lutris。

Lutris桌面客户端

Lutris桌面客户端

Lutris是一个开放源码的桌面客户端,可以管理您的各种游戏库。无论一个游戏采取什么形式,如果它在你的电脑上,你就可以把它添加到Lutris。这意味着当你想玩一个游戏,你不需要记住游戏是否安装到~/GOG Games, ~/Games,你的应用程序菜单,或/usr/games,或者如果它只存在于浏览器中,它是在Steam中,或者它需要在模拟器中启动。你所有的游戏都在一个地方:你的Lutris app。

安装Lutris

Lutris可能可以从您的软件存储库中获得,但如果不能,您可以把它直接作为tarball来下载。想要获得更多信息,请参阅How to install software applications on Linux

在Lutris.net中添加游戏

事实上,您不需要在Lutris上安装游戏;您可以添加它们,尽管在某些情况下,Lutris可以帮助您进行安装。

有几种不同的方法可以将游戏添加到您的Lutris库中。最简单的方法是利用Lutris游戏库:只需搜索你拥有的游戏并找到它可用的安装程序即可。许多游戏都有几种安装方式,具体取决于您最初购买它们的方式。例如,如果您在HumbleBundle中购买了游戏,请使用HumbleBundle安装程序;如果您从GOG.com购买了游戏,请使用GOG安装程序。

单击打开安装程序文件。根据安装方法,可能会要求您将安装程序指向您购买的安装文件。Lutris负责其余的工作,默认情况下将游戏安装到~/Games(您可以在Lutris的首选项中修改游戏安装的位置)。

如果你正在安装的游戏不需要登录或购买就可以使用,Lutris会简单的下载并安装游戏。

如果无法通过网络下载游戏,Lutris将提示您找到游戏的安装程序文件,然后根据您提供的本地文件继续安装。

一旦安装,游戏的条幅就会添加到您的Lutris客户机中,并准备好让您启动和开始玩。

导入游戏

如果在安装Lutris之前您的系统中已经有游戏,或者您希望手动安装游戏,可以这样做。

手动添加游戏

首先,单击Lutris窗口顶部的加号(+)图标。在出现的“添加新游戏”窗口中,输入要安装的游戏的名称,这是仅供参考的;它的条幅,将出现在您的Lutris客户端下。

Lutris和运行它的Linux系统一样,可以作为几个不同平台编写的游戏而运行,而不仅仅是Linux。Lutris将用于运行游戏的子系统称为“runner”-如果要安装Linux本机游戏,请选择Linux runner。

接下来,选择“添加新游戏”窗口顶部的“游戏选项”选项卡。在这里,您必须向Lutris显示可启动游戏(游戏的可执行文件)的位置。在许多情况下,您要启动的文件是一个shell脚本,通常称为start、launch或类似的脚本,它设置重要的环境变量和库路径,以便游戏按预期运行。其他时候,游戏是直接启动的。如果您不确定,请在将其输入到Lutris之前对其进行测试(如果您搞错了,您总是可以在稍后对其进行编辑)。

配置启动选项

所有其他字段都是可选的,很大程度上取决于游戏提供的内容。例如,有些游戏可以使用--fullscreen--windowed参数来启动,以控制它们是全屏启动还是在窗口中启动,因此您可以在Arguments 字段中输入您的选择,以控制Lutris启动游戏方式。

添加游戏后,它将显示在库中,并带有通用游戏横幅。要自定义游戏横幅,请右键单击并选择“配置”在出现的配置窗口中,您可以添加自己的标题和图标,并编辑启动属性。如果没有游戏横幅,可以在SteamgridDB和其他网站上找到游戏社区的集合。

Runners

Lutris的一个杀手级功能是将不同的游戏系统无缝集成到一个客户机中。Lutris库可以包含本地Linux游戏,与旧的NES游戏和平共处,在WINE中运行的Windows游戏,以及您在Steam上购买的游戏。

要查看Lutris提供的模拟器和子系统,请转到“文件”菜单,然后选择“管理跑步者”。这个窗口列出了每一个可用于Lutris的模拟器,甚至可以为您安装它们,一旦你安装了一个Runner,它就可以作为你添加游戏时的启动选项。

请注意,大多数仿真器覆盖不同系统的整个主机,并且大多数都需要对键盘控件进行单独配置。当然,Lutris不提供任何在模拟器中运行的游戏,所以如果你想玩超级马里奥兄弟、Sonic或任何其他经典游戏,你必须自己拥有ROM文件(从盒带或磁盘中提取)。有一些非常好的开源自制游戏,你可以也应该去看看,包括POWDER, Warcraft Tower DefenseXRick

编写自己的安装程序

在Lutris.net上有很多游戏安装脚本,但世界上也有很多游戏。如果你发现一个游戏还没有在Lutris.net上列出,你可以自己编写和共享一个安装程序。

因为它都是开源的,所以您可以从现有的安装程序中学习。转到Lutris网站并选择一个游戏,然后单击游戏安装按钮右侧的下拉箭头并选择查看安装脚本。

安装程序文件是用YAML(一种简单的配置文件格式)编写的。脚本往往非常简单,因为它们通常需要做的就是调用内置的Lutris函数。下面是一个名为myGreatGame的虚拟游戏的简单安装脚本:

exe: myGreatGame files: - file1: 'N/A: Select the ".run.bin" install file downloaded from http://humblebundle.com' installer: - chmodx: $file1 - execute: args: --destination=$GAMEDIR file: $file1

指定设置可执行文件的名称。这相当于在Lutris客户端手动添加游戏时设置可执行字段。

文件属性未知,因为安装程序文件位于用户计算机上的某个位置。如果可以直接从Internet下载该文件,则在此提供URL;否则,Lutris将提示用户查找安装程序文件变量存储对文件进行引用。

最后,上一步中的文件被授予可执行权限,这样Lutris就可以启动启动程序本身。添加一个参数以确保游戏安装在适当的目标中(该变量表示用户定义的默认游戏目录),并将要启动的安装程序设置为下载的文件。

从Lutris的角度来看,安装过程是而且应该是有限的。理想情况下,安装脚本只需要将Lutris指向一个文件,授予该文件运行权限,然后运行该文件。Lutris负责一切。

如果需要,安装程序脚本可能会更复杂一些。例如,有些游戏附带32位和64位版本,安装程序脚本应该知道用户打算启动哪个版本。Lutris中没有内置的东西来处理这个问题,所以这里有一个安装程序版本,它创建了一个特殊的文件来检测系统架构并启动相应的游戏版本:

 files:
    - file1: N/A:Please select the Humble archive
    game:
      exe: $GAMEDIR/start.sh
    installer:
    - chmodx: $file1
    - extract:
        dst: $GAMEDIR
        file: $file1
    - write_file:
        content: '#!/bin/sh if (uname -m | grep "64"); then ARCH="x86_64"; else ARCH="x86";
          fi; ./myGreatGame_$ARCH.bin'
        file: $GAMEDIR/start.sh
    - chmodx: $GAMEDIR/start.sh

如果你写了一个安装程序,别忘了把它提交给Lutris.net,这样其他玩家就可以从你的努力工作中受益。

开源游戏

Lutris可能不是一个必备的应用程序,但它肯定是很好的。它让你可以自由地管理你想要的库,它帮助你重新发现你可能藏在某个被遗忘的小文件夹里的游戏。它是开源的,使用起来很有趣,所以试试吧!

原文链接:https://opensource.com/article/18/10/lutris-open-gaming-platform

原文作者:Seth Kenlon

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 你的开源生涯是从电子游戏开始的吗?【Gaming】

    许多人最初把计算机作为游戏设备而迷恋它,后来把这种迷恋变成了一种技术职业道路。你是他们中的一员吗?

    五月Rambo
  • 5款街机风格的Linux游戏

    开坑Linux开源游戏的新系列!下面我们还会讨论的游戏类型:桌游和纸牌游戏,益智,RPG等。。。

    五月Rambo
  • 5款Linux开源角色扮演游戏【Gaming】

    传统上,游戏一直是Linux的弱点之一。近年来,由于Steam、GOG和其他将商业游戏引入多个操作系统的努力,这种情况有所改变,但这些游戏通常不是开源的。当然,...

    五月Rambo
  • 获取没有设置TTL的key

    在运维Redis的时候,总会遇到使用不规范的业务设计,比如没有对key设置ttl,进而导致内存空间吃紧,通常的解决方法是在slave上dump 出来所有的k...

    用户1278550
  • python基础教程:错误处理和异常处理

    在前面介绍Python语法的过程中,我们已经接触到了解释器给的错误和异常,但并没有详细讲解它们。现在我们就全面的来学习Python是对语法错误等错误进行定义和处...

    一墨编程学习
  • 基于逻辑的关系学习方法:OntoILPER系统(cs AI)

    关系抽取(relationship Extraction, RE)是检测和描述文本中实体之间的语义关系的任务,在过去二十年中得到了很大的重视,主要是在生物医学领...

    RockNPeng
  • 微软亚洲研究院20年推重磅研讨会,量子计算、混合现实、人工智能成为关键词

    有趣的是,学术圈大佬的庆生活动总是独出心裁,就在20岁生日的第二天,微软亚洲研究院在北京办了“二十一世纪的计算”研讨会,纳德拉、洪小文、沈向洋,以及四位图灵奖获...

    镁客网
  • 硬纪元干货 | appMagics伏英娜:优质IP和直播内容嫁接,带来全新AR体验

    镁客网
  • iOS 后台任务

    仅当你的app是真的提供给用户音频播放功能,你才能使用音频后台模式。 若我们抱有侥幸心理,为了获得CPU更多时间而利用该模式播放一段无声的音频,apple将会拒...

    剑行者
  • Python数据类型详解-字符串#学习猿地

    # vars = '岁月是把杀猪刀,\n\n但是它拿长得丑的人一点办法都没有。。。'

    学习猿地

扫码关注云+社区

领取腾讯云代金券

玩转腾讯云 有奖征文活动