exapunks吧 关注:44贴子:148
  • 25回复贴,共1

Trash World News 《垃圾世界杂志》 第一期翻译

只看楼主收藏回复

EXAPUNKS世界里《垃圾世界杂志》是一款黑客们发行的地下杂志,与前作SHENZHEN I/O中的手册类似,包含教程,指令说明,关卡资料和背景说明等内容,作为游戏内关卡描述和剧情的补充。
杂志里包含了大量游戏内不会告诉你的内容,游戏内的文字还是剧情居多,而关于游戏系统的讲解到具体的实用技巧都被放到了杂志里。为帮助英文不够好但是想上手EXAPUNKS的玩家,翻译下其中重要的内容还是挺有意义的。
开个坑慢慢填,大概会按游戏流程需要关注的顺序来翻译,先翻译P8~P11的教程部分,翻译速度随缘,如果真能都翻译完的话可以另开个贴整理下。


IP属地:北京1楼2018-08-12 13:24回复

    P8~9 Ghast带你学
    我真的相信任何人都可以学会EXA编程。这就是我为什么建立了几个附有教程的网络供你尝试。即使你不是个程序员你也该试试,你可能会给自己一个惊喜。

    教程1 基础
    【关卡介绍】学习如何探索网络并不留下痕迹(Leave no trace)
    【任务描述】将文件200移至outbox
    这个任务,与大多数任务一样,要求你不留下任何痕迹。你不能在目标网络中留下任何EXA或是外来文件,也不能在目标网络中做出任务要求以外的改动。
    在杂志的第一期“Ghast带你学”中可以找到完成这项任务的帮助。
    【对应内容】在第一项教程中你的目标是将一个ID为200的特定文件从名为“inbox”的主机移动到名为“outbox”的主机中。你需要通过ID为800的连接进行移动。
    启动EXODUS并连接到教程网络。一个新的空白解答会自动为你创建。(一个“解答”是在你在你按下运行按钮后就会开始执行的一些EXA。)
    你会在屏幕左侧看到一个有空白代码窗口的EXA。将以下五行代码输入到EXA中:
    LINK 800 通过链接800进入网络
    GRAB 200 拿起文件200
    LINK 800 通过链接800从“inbox”前往“outbox”
    DROP 放下持有的文件
    HALT 终止此EXA运行
    按下步进(step)按钮以每次一条指令的方式来一步一步的执行程序。在你觉得无聊了之后你可以按下运行(run)按钮来看着它自己运行。
    一旦你确认了程序按你预期运行,你可以按快进(fast-forward)按钮让你的程序运行至完成测试。恭喜,你编出了你的第一个EXA。


    IP属地:北京2楼2018-08-12 13:55
    收起回复
      2026-03-07 05:35:45
      广告
      不感兴趣
      开通SVIP免广告

      教程2 读写文件
      【关卡介绍】学习修改文件与操作数值
      【任务描述】将文件200中前两个值相加之和乘以第三个值,再减去第四个值。将运算的结果追加在文件的末尾,并将文件移动到outbox。
      你可以在任何时候按下“SHOW GOAL”(显示目标)按钮(或F1)以预览任务完成后的结果。
      在杂志的第一期“Ghast带你学”中可以找到完成这项任务的帮助。
      【对应教程】OK,下一个任务合第一个很类似,但除了移动文件你还要进行读写。完整解释请阅读EXODUS中的要求。现在就读。
      要想读写EXA持有的文件,我们需要使用F寄存器。我们还会使用X寄存器在运算过程中存储中间值。在默认的空EXA中输入以下代码:
      LINK 800 通过链接800进入网络
      GRAB 200 拿起文件200
      COPY F X 从F中读取并将值写入X
      ADDI X F X 计算 X + F 并将结果写入X
      MULI X F X 计算 X × F 并将结果写入X
      SUBI X F X 计算 X - F 并将结果写入X
      COPY X F 从X中读取并将值写入F
      LINK 800 通过链接800从“inbox”前往“outbox”
      DROP 放下持有的文件
      HALT 终止此EXA运行
      在你逐步执行程序并执行GRAB指令的过程中,观察文件200的窗口是如何在持有它的EXA的窗口下出现的。
      同时注意文件窗口里的“文件光标”,高亮了文件中的第一个值。当EXA从F寄存器中读取时它会读取文件光标指向的值。类似的,写入F寄存器会替换掉光标当前指向的值。如果文件指针位于文件的末尾,它会追加新值而不替换掉已有的值。
      还有一点,读取或写入F寄存器会使文件光标自动移动到文件中的下一个值。有时这很方便,有时相反。


      IP属地:北京3楼2018-08-12 14:18
      回复

        教程4 循环与条件语句
        【关卡介绍】学习多次执行同一件事
        【任务描述】文件200包含一个数字,N。在outbox里创建一个包含从N降序数到0的数字的新文件。在你完成之后,删除文件200。
        在杂志的第一期“Ghast带你学”中可以找到完成这项任务的帮助。
        【对应教程】你的最后一项任务是创建一个有一序列数字的文件。要想实现,你需要用一种称为循环(loop)的东西,即重复执行几行代码直到一个终止条件得到满足。这里有一些提示:
        ——你可以使用TEST指令比较寄存器和/或值,例如测试X是否等于38(TEST X = 38)。若测试结果为真,T寄存器会设为1。若测试结果为假,T寄存器会设定为0。
        ——仅仅TEST指令单打独斗还没有那么有用,但如果你在此基础上结合条件跳转指令(TJMP和FJMP)你就能根据测试的结果跳转到程序的不同部分中。TJMP(为真时跳转)当T寄存器为1时工作。FJMP(为假时跳转)当T寄存器为0时工作。看到联系了吗?你需要使用MARK在程序的其他地方指定一个跳转目标。
        ——下面是一个循环的例子。比如说你想要向一个文件写入10次9999。你可以这么做,使用X寄存器追踪程序经过循环的次数:
        COPY 0 X 将X寄存器复位到0
        MARK LOOP 定义一个名为LOOP的标签
        COPY 9999 F 向持有的文件中写入9999
        ADDI X 1 X 将X的值增加1
        TEST X = 10 测试X是否等于10并将结果存入T中
        FJMP LOOP 如果X还不为10则跳转到LOOP
        ——当TJMP和FJMP指令访问T中的值时,它们不关心这个值是TEST指令放在这的还是你自己将值写入的。你可以把你想存的任何数据存储在T寄存器中,只要下次你执行TEST指令时它被抹掉不是个问题就行。
        好了,你现在已经完成了教程。恭喜。把你自己看作一个真正的EXA程序员吧。这里总有更多可以学的,但基础内容都在这里了。


        IP属地:北京5楼2018-08-13 22:43
        收起回复
          这游戏好像比黑客net有意思,要是有中文就好了


          IP属地:黑龙江6楼2018-08-14 23:17
          回复(4)
            我记得楼主好像还参与过群星1.0的汉化


            IP属地:山东来自iPhone客户端23楼2018-08-16 06:57
            收起回复

              P12~13 运行时错误 以及如何利用它们
              有时候EXA试图做一些它们不能去做的事。这种情况发生时,EXA就会自动被主机终止运行。这与执行HALT指令功能上是相同的。尽管大多数错误都很无聊也没什么用,仍有一些可以为你所用。
              让我们从一些无聊的开始:
              ——零作除数
              你不能在计算机上用零作除数,出于某些数学原因。别管为什么,别这么做就是了。
              ——对关键词进行数学运算
              你不能对关键词进行加法,减法,乘法等操作。数学运算只适用于数值。
              ——无效的F寄存器访问
              如果你的EXA在没有持有文件时向F寄存器读写,它会出错并死去。别忘了先拿起一个文件。
              ——无效的硬件寄存器访问
              与前一个相似。在你尝试读写之前,先保证你和你想访问的硬件寄存器在同一个主机内。
              在你编程过程中你会经常在你的代码里发现并修复很多这些错误。不过下面让我们来谈谈更有意思的一类错误。
              有时候你不知道你在进行工作的主机中的所有细节。连接可能变化,文件可能消失。有些关于***作环境的事只能通过试图执行你的代码并通过可能的失败才能了解到。这可能会让你感到麻烦,但你至少不用像在一些大型软件公司里一样需要为这团乱麻发愁(如果你在,我感到很抱歉,也许该想想做出什么改变了)。这里唯一重要的事就是把事干成。
              这里是一些更可以利用的:
              ——无效文件访问
              比如说你在寻找特定的文件。进行尝试的EXA会终止运行,但你现在知道文件不在那里了。
              ——无效连接通行
              比如说你在寻找特定的连接。进行尝试的EXA会终止运行,但你现在知道连接不在那里了…发现规律了吗?
              说真的,别害怕让你的EXA出错,崩溃,死掉,无论你是怎么称呼的。你可能觉得它们还挺可爱的,但别忘了它们生命的目的就是不断地产生,计算然后死掉。你可以在你的程序中利用这一点。


              IP属地:北京24楼2018-08-16 22:28
              回复(4)