普通视图

发现新文章,点击刷新页面。
昨天以前Livid

DOSBox Pure

作者 Livid
2021年2月20日 08:00

DOSBox Pure 是一个可以用于在 RetroArch 里模拟 DOS 游戏的插件。关于 RetroArch 的配置,可以看之前的这篇文章:

相比之前的其他 DOSBox 的 fork,DOSBox Pure 除了可以支持 RetroArch 的状态保存及 Shader 功能外,还可以支持:

  • 直接从 zip 文件包中加载游戏
  • 自动挂载 zip 文件包里的 CD Image,考虑到之前的很多老 DOS 游戏使用 CD 作为音乐源
  • 加载一个外部的 SF2 文件,来提供更好的 MIDI 音乐效果

用来体验老游戏真的是非常不错的体验。比如这是 DOS 下的经典游戏《仙剑奇侠传》在 DOSBox Pure 里运行的截图(加上了 CRT Caligari Shader 的效果):

KOEI 的大航海时代 II:

Maxis 的 SimCity 2000:

甚至当年 id Software 的 3D 大作 Quake:

性能

在摩尔定律尚还非常有效的 1990 年代,不同的 DOS 游戏对于性能的需求非常不一样。Bullfrog 的 Theme Park 需要 DOSBox 模拟一台 386 电脑,否则就会因为一切动画过快而造成游戏根本没法玩。而 Quake 这样的游戏则需要 DOSBox 尽可能快地运行。

因此,你可能需要在游戏开始运行之后,根据具体的游戏选择需要的性能级别:

目前 DOSBox Pure 还不能支持读取 zip 包中的 dosbox.conf 配置文件。如果将来能够支持的话,那么就可以通过 dosbox.conf 来为不同的游戏提供不同的定制选项了。

获取 DOS 游戏

现在是 2021 年了,但是合法地获取 DOS 游戏文件依然是可能的。比如你可以通过以下渠道买到 DOS 游戏:

  • GOG - 可以找到大部分在欧美发行过的 DOS 游戏
  • Origin - EA Origin 上提供的 SimCity 2000 SE 其实就是基于 DOSBox 模拟的,可以在安装目录里找到 DOS 游戏的文件

Dark Mode

作者 Livid
2019年9月5日 08:00

大概是由于这两年新的显示器的亮度越来越高,支持 Dark Mode,从操作系统到 App,再到网站,都已经变成一件用户和开发者都有强烈需求去做的事情。

最近花了一些时间,对这个博客的 CSS 进行了一些小小的调整,现在也可以根据操作系统的设置,自动支持 Dark Mode 了。只是这样的支持,相比那些从一开始设计时就考虑到 Dark Mode 的设计,大概并不完美。Dark Mode 并不只是简简单单地把颜色 invert,而是需要考虑对比度及新设备(OLED)特性,全盘考虑的新设计。

最近几年,在 Can I Use 上追踪最新的浏览器标准的进化,对我而言是一件非常有乐趣的事情。能够将这些新特性以恰当的方式在 V2EX 上实施,是一件非常有意思的事情。一个网站如果能够在前端和后端的技术上,都时刻保持更新,那么保持更新这个动作本身,无论是对于网站还是做这件事情人,都是有价值的。

说到对新技术的支持,最近在 V2EX 上完成部署的一个新更新,就是现在 V2EX 可以支持通过 JSON Feed 将节点的最新内容输出。然后就可以通过支持 JSON Feed 的 RSS 阅读器,比如 NetNewsWire 5.0 或者 Feedbin 来订阅指定节点的最新内容。NetNewsWire 5.0 是新近发布的一款 RSS 阅读器,实现得简直就像是来自 Apple 的作品。

下图是用 NetNewsWire 5.0 订阅 V2EX 的分享创造节点的效果:

分享创造节点的 JSON Feed 地址:

https://www.v2ex.com/feed/create.json

这种阅读 V2EX 内容的方式会和直接访问网站很不一样:所有的内容以创建时间排序,不会受到排序算法的影响。用户可以使用一款自己喜欢的 Native App 来指定订阅自己真正感兴趣的内容,很多杂音会在这个过程中被排除。同时 JSON Feed 的输出中也不会有广告。是的,我想我永远不会去在 JSON Feed 中加广告,我希望就去保持一个尽可能纯粹的内容输出格式。如果有一天有更多的人通过这种方式来阅读 V2EX 上的内容,我会觉得这些选择帮助他们节省了时间,会很有意义。

用 Docker 运行 Jekyll

作者 Livid
2018年12月31日 08:00

很喜欢 Jekyll 这个静态网站生成框架,这个站就是用 Jekyll 做的。但是总感觉 Jekyll 的安装是一件很麻烦的事情。直接安装到 Host OS 上是一种污染环境的方法,而我又不想去花时间研究到底怎样才是管理 Ruby 依赖包的最科学的方式。所以用 Docker 来让这个网站可以在本地跑起来,是最好的方式了。而且 Docker 这样的方式也通吃 macOS 和 Windows。

首先是获取 Jekyll 的最新 Docker 镜像:

docker pull jekyll/jekyll

然后切换到你的 Jekyll 网站所在目录,执行这条命令启动 Jekyll:

docker run --mount type=bind,source=$(pwd),target=/srv/jekyll \
-p 4000:4000 --name blog -it jekyll/jekyll \
jekyll serve

然后就可以通过 localhost:4000 访问到这个 Jekyll 的动态生成结果了。

因为我们给这个 Container 赋予了名字 blog,所以之后如果再次需要这个 Container 的话,只需要这样就可以启动:

docker start -i blog

参考文档 https://github.com/envygeeks/jekyll-docker/blob/master/README.md

Gran Turismo Sport

作者 Livid
2018年6月18日 08:00

最近几个月,GT Sport 这款游戏对于我而言,已经不仅是一款游戏,简直就成为某种可以称之为生活方式的事物。此时此刻,当我在书房的电脑上敲打这篇文字的时候,旁边桌子的桌面上就放着 PS4 Pro,上面运行的 GT Sport 提供了房间中变化的光线和音乐。

我想这可能也是其功能之一——作为房间的背景光和声音。因为 GT Sport 在游戏进入之后,如果你什么都不做的话,那么默认的显示画面就是一个隐去了所有 UI(这样大概可以防止 LED burn-in),然后不停变换的幻灯片。幻灯片的内容包括各种重大的历史事件,及游戏中的各种车在现实中的场景的照片。我猜想大概 Polyphony 公司的入口就会悬挂这样的一块大屏幕,然后只要让其始终运行 GT Sport 的这个 idle 模式即可源源不断地提供各种几乎不会重复的视觉和听觉刺激。

视觉肯定是这个游戏最大的一个优点。只要显示硬件支持,游戏可以以 4K HDR 的方式输出。各种颜色和对比度非常不同,确实是一种享受。那个桌面就是我平时写代码的桌面,所以上面的支持 4K HDR 的 Dell U2718Q 一共接了 3 台设备,包括一台 Windows PC 和一台 Mac,及 PS4 Pro。U2718Q 可以自动检测输入信号源,因此只要不是同时开了多台设备的话,那么显示信号是可以自动切换的,非常方便。无论是关闭 PS4 打开 PC,或是关闭 PC 打开了 PS4,然后显示信号就自动进行了切换,中间的几秒的时间对于大脑的上下文切换也恰到好处。而最近 Asus 和 Acer 刚刚推出了支持 144Hz G-Sync 的 4K HDR 显示器,不过还没有在 Micro Center 看到实物,很期待去看看在色彩的表现上是否能够超过 Dell U2718Q。

然后说说 GT Sport 的音乐。这也是一件让我一直觉得很有趣的事情,就是为什么 Forza 和 Project CARS 2 在菜单和游戏中所选择的音乐都是各种恢弘(或者莫不如说是苦大仇深也可以)的交响乐,而 GT Sport 系列一直在音乐的选择上要更柔和、轻松,或者说 hip。所以我无法接受 Forza 和 Project CARS 系列的一个重要原因或许就是他们的音乐太严肃了。

虽然这代 GT 提供了增强的在线和 Sport 模式,但是这个游戏目前对于我而言就是一个孤独的,自己和自己较劲的游戏。每天找到一段合适的时间和心情,然后挑战 campaign 中的某个模式,或是试着让自己在 Nurburgring Nordschleife 上单圈时间时间能够减少几秒。

这种情况下的游戏体验是一种接近于 zen 的体验。你必须忘掉一切,忘掉手机上的 300 个提醒,忘掉白天说错的话,忘掉明天要赴的约,把自己的全部注意力放到游戏中。在这个过程中,满足自己在开始时升起的那个微小的念头,可能是通关 campaign 中的一个模式,或是得到一辆新车,或是减短时间,然后关掉游戏,继续生活。

❌
❌