#优化 #18xx #用户界面 #图形 #GUI

n18tile

定义18xx地图元素和轨道网络

1个不稳定版本

0.1.0 2021年10月8日

#1950 in 算法

Download history 19/week @ 2024-03-11 24/week @ 2024-03-18 46/week @ 2024-03-25 80/week @ 2024-04-01 21/week @ 2024-04-08 20/week @ 2024-04-15 28/week @ 2024-04-22 18/week @ 2024-04-29 25/week @ 2024-05-06 24/week @ 2024-05-13 24/week @ 2024-05-20 27/week @ 2024-05-27 19/week @ 2024-06-03 22/week @ 2024-06-10 19/week @ 2024-06-17 24/week @ 2024-06-24

85 每月下载量
用于 10 个crate(9个直接使用)

MIT/Apache

200KB
4.5K SLoC

Rusty Train

license crates.io docs.rs guide

用于构建18xx地图和识别最佳火车路线的图形用户界面。

示例用法

使用cargo run --release启动Rusty Train

Rusty Train

使用Ctrl+O加载1867_bc示例游戏,该游戏位于./examples/output/1867_bc.game

The 1867_bc example game

r查找公司的最佳路线。选择大西部铁路并点击OK

Select a company

这家公司拥有一列5-train和一列8-train,并且不会获得右侧列出的四个奖励之一。输入这些详细信息并点击OK

Select trains

在搜索最佳路线时,地图将变为禁用状态并淡出

Search for optimal routes

找到最佳路线后,它们将在地图上绘制(绿色和红色突出显示),并在窗口标题中显示净收入

Found optimal routes

使用箭头键(<Left><Right><Up><Down>)循环查看单个路线;火车名称和路线收入将在窗口标题中显示

Show a single route

d显示股息支付

Show dividend payments

EscReturn返回到默认用户界面模式。

用户指南

有四种不同的用户界面模式

  • 默认:选择和旋转地图块,切换到其他模式。
  • 替换地图块:放置和升级地图块。
  • 编辑代币:在地图块上放置和移除代币。
  • 查找路线:识别公司的最佳路线和收入。

每种模式对不同的键组合做出响应(见下文各部分)。

还有一些全局键在任何模式下执行相同的功能

操作
qQ 退出
sS 保存当前地图的屏幕截图
Ctrl+n, Ctrl+N 开始新游戏
Ctrl+o, Ctrl+O 从磁盘加载已保存的游戏
Ctrl+s, Ctrl+S 将当前游戏保存到磁盘
+ 放大
- 缩小

默认模式

使用此模式选择瓦片或六边形空间,并切换到其他模式放置瓦片、放置标记和选择最佳路线。

操作
e, E 切换到替换瓦片模式,选择任何瓦片
u, U 切换到替换瓦片模式,选择一个升级瓦片
t, T 切换到编辑标记模式
r, R 切换到查找路线模式
<> 选择当前六边形的左侧六边形
<> 选择当前六边形的右侧六边形
<> 选择当前六边形的上方六边形
<> 选择当前六边形的下方六边形
任意鼠标按钮 选择光标下的六边形
,, < 逆时针旋转当前瓦片
., > 顺时针旋转当前瓦片
<退格键> 移除当前瓦片
<删除键> 移除当前瓦片
p, P 更改游戏阶段

替换瓦片模式

使用此模式放置和升级瓦片。

操作
Esc 返回到默认模式,忽略任何编辑
返回 返回到默认模式,保存任何编辑
o, O 显示原始瓦片(如果有)
<> 选择下一个可用的瓦片
<> 选择上一个可用的瓦片
,, < 逆时针旋转所选瓦片
., > 顺时针旋转所选瓦片

编辑标记模式

使用此模式放置和从瓦片上移除标记。

操作
Esc 返回到默认模式,忽略任何编辑
返回 返回到默认模式,保存任何编辑
<> 选择活动瓦片上的上一个标记
<> 选择活动瓦片上的下一个标记
<> 将当前标记(如果有)替换为下一个可用的标记
<> 将当前标记(如果有)替换为上一个可用的标记
0 移除当前标记
<删除键> 移除当前标记
<退格键> 移除当前标记

查找路线模式

使用此模式选择一家公司并找到该公司的最佳路线和收入。

用户将被提示选择在地图上放置标记的公司之一。然后,用户将被提示选择此公司的可用火车和任何相关奖金。

这将启动路线查找过程;根据潜在路线的数量,这可能需要几分钟才能完成。

最佳路线将在地图上绘制,并显示最佳收入。用户可以使用箭头键循环查看各个路线。

操作
Esc, Return 返回到默认模式
<Left>, <Up> 显示上一条火车路线
<Right>, <Down> 显示下一条火车路线
d, D 显示股息支付

支持的游戏

以下游戏的地图、瓦片和火车已实现

  • 1830:铁路和强盗大亨
  • 1861:俄罗斯帝国的铁路
  • 1867:加拿大的铁路
  • 1889:四国铁路史(四国1889)

许可协议

在以下任一许可下使用

由您选择。

贡献

除非您明确声明,否则任何根据Apache-2.0许可证定义,有意提交以包含在作品中的贡献,将如上双重许可,不附加任何额外条款或条件。

依赖项

~8.5MB
~180K SLoC