博客更新

春节开始,就没更新博客了。一方面……懒了点,另一方面……算了就是懒。分类有所更改,404 更智能了一点。

春节过后很高兴地,收到了首要目标的 conditional acceptance。这边算是解放了。

主要猛攻了 CGSS,取得了一定成果(咦这么论文式的措辞?),详见 CGSS 核心反向过程实录

暂时挂起的几篇文章:

  • 安利白箱及其后续
  • CGSS 和 LL 上手
  • 翻译风波
  • WordPress 建站指南(写给小白级别的入门,从选择域名到全站 HTTPS 一条龙。写到一半发现安全配置那里就得扯一长串了,还要解释 vim,一团乱麻。后来村长又不想自己建了,就暂挂了。)
分享到 评论

AlphaGo 与对机器智能的担忧

前记:3月8日的 Steam 更新添加了对 Vulkan 的 overlay 支持;3月12日 NVidia 驱动更新添加了 Vulkan API 支持。


举世瞩目的李世乭对阵 AlphaGo 的围棋之战在今天落下帷幕,最终李世乭以1:4落败。然后我在博客园新闻区看到了这样一篇:《为什么李世石的胜利让我喜极而泣》。下面的评论说“这事让好多文学分子高潮了”,认为这只是算法的胜利,计算机终究会为人类服务,那些担心都是无稽之谈。在这里讲一下我的看法。

如果机器具有了智能,判断对物种的好恶的能力,会展开对人类的“清洗”吗?从逻辑上来说,清洗是更好的选择。有文章提到过,光看人类自己,看看印第安人在美洲的经历,就知道黑暗森林法则实践起来是什么样子。如果它们还懂得沟通,获取它们群体内的最大利益,甚至会重演八国联军的事件。AlphaGo 是设计用来博弈的,正处于“不成熟的理性”的阶段,如果无法判断“整体”的概念,无法理解第零定律的话,就会出现曲别针的例子——所有人都做成曲别针,尝试劝阻的人也被做成曲别针。

等等,刚才不是假定了机器有了智能吗?但是退一步说,即使机器没有智能、只是按部就班行事,也会出现曲别针事故呢。看官知道第一个蠕虫病毒是怎么产生的吗?足够的功能,加上错误的参数。就执行的命令而言,并没有错误,只不过出现了人类不希望的结果。人并不希望比自己先进的生命体出现(同样,黑暗森林)。前面印第安人的例子已经是很仁慈了,因为还没产生生殖隔离,所以还有种群内的“怜悯”。

所以,认为不需要担心的,和担心的,两类人的出发点是不同的。前者从逻辑的角度看问题,而且很乐观地假设了机器总会在人类的控制之下;后者从人性(人类“生存”利益)的角度看问题,而且悲观地认为自律(有足够能力离开人自行活动)地机器有着胜于人类的能力。各位,不妨找一个平衡点吧。这就和养狼一样,给了机器强大的计算能力和与物质互动的工具,相当于给了它们獠牙。这方便了人们的生存,但是就是不知道什么时候会反咬一口——想避免这不幸的情况发生,请拔掉它们的牙,将它们限制在虚拟空间之内吧。

说得容易做起来难,好多人都已经半数字化了呢。

分享到 评论

修正提交给 SharpDX 的 pull request

上次我说,解决了 Matrix.PerspectiveFovLH() 的问题,然后提交了 pull request。

查看更多

分享到 评论

CGSS 核心反向过程实录 | 三、解密方法确认

索引

2017年5月追记:

我探索这些的目的,是以一个玩家的身份,让 CGSS 变得更好玩。私下里我类比过普罗米修斯,将天火——谱面的制作和玩的能力从“天上”分一点出来。其实,修改 CGSS 去作弊是很简单的,无论是客户端还是 MITM。但是我不会去作弊,也不希望这系列文章的读者们将文章内容用在歪门邪道上,不希望去作弊、破坏平衡性。玩过 LLSIFSB69GF(note)Arcaea 之后,我仍然认为 CGSS 的综合指标(游戏性、操作体验、曲目等等)是行业内翘楚,Cy这次比较用心。那么作弊还有什么意思嘛!对了,我不氪金,不冲分,只是闲暇时间来两局,玩得舒心。

当然,まゆさまが見ています。

查看更多

分享到 评论

CGSS 核心反向过程实录 | 二、内容提取初试

索引

2017年5月追记:

我探索这些的目的,是以一个玩家的身份,让 CGSS 变得更好玩。私下里我类比过普罗米修斯,将天火——谱面的制作和玩的能力从“天上”分一点出来。其实,修改 CGSS 去作弊是很简单的,无论是客户端还是 MITM。但是我不会去作弊,也不希望这系列文章的读者们将文章内容用在歪门邪道上,不希望去作弊、破坏平衡性。玩过 LLSIFSB69GF(note)Arcaea 之后,我仍然认为 CGSS 的综合指标(游戏性、操作体验、曲目等等)是行业内翘楚,Cy这次比较用心。那么作弊还有什么意思嘛!对了,我不氪金,不冲分,只是闲暇时间来两局,玩得舒心。

当然,まゆさまが見ています。

查看更多

分享到 评论

CGSS 核心反向过程实录 | 一、摸清目录结构

索引

2017年5月追记:

我探索这些的目的,是以一个玩家的身份,让 CGSS 变得更好玩。私下里我类比过普罗米修斯,将天火——谱面的制作和玩的能力从“天上”分一点出来。其实,修改 CGSS 去作弊是很简单的,无论是客户端还是 MITM。但是我不会去作弊,也不希望这系列文章的读者们将文章内容用在歪门邪道上,不希望去作弊、破坏平衡性。玩过 LLSIFSB69GF(note)Arcaea 之后,我仍然认为 CGSS 的综合指标(游戏性、操作体验、曲目等等)是行业内翘楚,Cy这次比较用心。那么作弊还有什么意思嘛!对了,我不氪金,不冲分,只是闲暇时间来两局,玩得舒心。

当然,まゆさまが見ています。

查看更多

分享到 评论

CGSS 核心反向过程实录

本系列的索引。

声明

The Idolmaster Cinderella Girls Starlight Stage 软件和相关媒体的著作权为 Bandai Namco Entertainment Inc. 所有。本系列文章仅从兴趣出发,研究数据反向过程。在此不会给出完整的反向过程、反向结果和源代码,只给出思路和部分非关键数据。

2017年5月追记:

我探索这些的目的,是以一个玩家的身份,让 CGSS 变得更好玩。私下里我类比过普罗米修斯,将天火——谱面的制作和玩的能力从“天上”分一点出来。其实,修改 CGSS 去作弊是很简单的,无论是客户端还是 MITM。但是我不会去作弊,也不希望这系列文章的读者们将文章内容用在歪门邪道上,不希望去作弊、破坏平衡性。玩过 LLSIFSB69GF(note)Arcaea 之后,我仍然认为 CGSS 的综合指标(游戏性、操作体验、曲目等等)是行业内翘楚,Cy这次比较用心。那么作弊还有什么意思嘛!对了,我不氪金,不冲分,只是闲暇时间来两局,玩得舒心。

当然,まゆさまが見ています。


从2月21日初试,到3月10日,反向结束。提取了谱面信息并成功解码了一首歌曲——song_1004,能听出是《メッセージ》。在将来的一段时间内,我将把部分的反向过程写出来。由于同时在做着毕设,写得会有点慢,但是一定会写完的。(天国的 Bulletproof……写完这个系列……也许就好。)

风格和展现尺度就致敬大神的了。

分享到 评论

两个奇梦

两个奇梦。

查看更多

分享到 评论

准备回老家了

博主今天早上八点左右就要出发回老家了,到那边很可能就没有网用了。所以晚上连夜奋战,将堆积的博文速速码完,发布。

不过在没有网络的情况下,WebStorm(11.0 之后强制通过服务器获得临时授权,序列号破解是不可能的啦,当然还有其他的如 CLion 和 PhpStorm,不提供社区版/教育版的那些)就没辙了,到时如果能躲过走亲戚的话看看能不能反向出什么东西。

在此向我可能没有机会道春节的各位提前说一声:祝各位春节吉祥如意!

分享到 评论

Bulletproof 和 GLantern 更新:抗锯齿与非正常变换

GLantern 的绘制方式更新了!获得了技能:抗锯齿(一般绘制)、绘制效率提高、抗溢出变换。Bulletproof 作为直接继承项目,也得到了特性的更新。

另外,GLantern 的 live preview 也上线了(呃,之前忘了)。请戳:Bulletproof/GLantern

查看更多

分享到 评论

杂事

“破事水”

查看更多

分享到 评论

SharpDX 的 Matrix.PerspectiveFov* 问题

我之前曾经暗笑过,毕设我的题目是一个 Direct3D 的东西,我觉得一个多月就可以搞定。然而,实际上手之后,世界又欺骗了我。今天我讲一下我是如何被几个连锁的问题坑,最终发现并解决了的。

查看更多

分享到 评论

翻译歌词的四个月

本来题目是“翻译歌词的三个半月”的,结果因为本文内容实在是长而且杂,所以拖来拖去半个多月才完稿,从1月16日到2月5日,所以标题就成了“四个月”了。在这半个月内,又有四篇翻译和一个时间轴过审,于是并入原来的表中。

从去年9月开始尝试翻译云音乐的歌词,到现在,已经过去了三个半月。在这段时间,感谢云音乐任劳任怨地做我的试验场,以及碰到的各位。翻译从开始时的生硬、错漏百出,到现在的用词和阅读理解都有了质和速的提高,众位的支持是不可或缺的。

查看更多

分享到 评论

两个吐槽和反思:教务网、云音乐

吐槽昨天两个弄得我哭笑不得的东西,一个是教务处的开题基本信息提交页面,一个是网易云音乐。或许不仅仅是吐槽,而已经加强成评论了。

查看更多

分享到 评论

Bulletproof 的 GitHub Pages 项目页面

今天试用了一下针对项目的 GitHub Pages(本博客是针对用户的),于是 Bulletproof 有了自己的项目展示页面!试试点击“Have a try”吧。

我是从一个传统程序开发者起家的,到今天能在网页上能展示轻量级项目的预览而不再需要经过传统的编译-发布-安装部署,多亏了新的 Web 技术。

  • TypeScript:用传统的面向对象思想(其实算是语法糖吧)写 JavaScript
  • Gulp:自动化构建,生成各种需要的东西
  • Browserify:将用 Node 的方式(CommonJS 模块化规范)写出的 JavaScript 尽可能地放到浏览器里引用,配合 Gulp 食用风味更佳
  • Canvas:没有 <canvas>,就没有便捷统一的2D绘图 API 和 WebGL

这些,还有众多的基础技术……

其实如果学的是 OpenGL,还会有 Emscripten(啊主页应该是这里)这条路,也是很方便的。

分享到 评论

Bulletproof 重获新生

GitHub repo。测试示例已经通过,所以检查了一下就推上去了。在运行示例的时候,请将它们运行于一个服务器上,然后用支持 WebGL 的浏览器浏览;或者使用 NW.js 等 Node+v8 的环境。

这是继去年9月突然无声息之后,试验新路而走出的路。

分享到 评论

翻过了两座网站维护小山

昨天登录 SSH 去看服务器状态的时候,磁盘占用就已经100%了(实际上算了一下,97%差不多),不过基本操作还是没表现出问题,心里就合计着等到某天真出了问题再修吧。结果一觉起来,就有人报告网站又崩溃了。没办法,要做到快速响应,赶快修吧。

这篇文章记录了今日维护碰到的两个问题:

  1. 磁盘占用100%,而且找不到可以删除的文件;
  2. Discuz X3.2 的 forum_threaddisablepos 表“损坏”。

查看更多

分享到 评论

GLantern 绘制效率问题及其解决

在写着架构博文的时候,突然想测试一下动画效果。于是直接就上了 bp.startAnimation(),突然发现帧率才25左右。哦天哪,这效率可比 Pixi 差了不是一点半点。于是返回 GLantern 查看,果然是 GLantern 的问题。大致定位之后就得修补啊……

查看更多

分享到 评论

Bulletproof 的新弹幕对象架构设计

Bulletproof 重构的工作进展不错,主要是花了时间基于 WebGL 写了 GLantern,将基础的绘制剥离了,以此为基础写弹幕相关的就轻松了。

九月份的测试是概念的验证,架构极其混乱。当时 TypeScript 版本还在 1.4,import 语法限制很多(只有 import x = require("file");),而且 TS 和 C# 那一点点微妙的差距我还没很好地体会出来,最后就变大文件乱引用加一堆hack的混合物了。当时也没什么大的目标,能做出一个能执行代码的高级弹幕的原型就可以了,因为自己都不知道能不能做成。——是,有先例,但是看着这么多已有的代码就开始仰望巨大的工程了。

既然验证通过了,就要开始做架构了。(地基打好了,就开始规划柱梁,再装修。)考虑到应用场合,姑且做了一个。

新的源码在通过一些测试用例后会推上来。莽然融合 WebGL 的测试的各种东西放在了 native-webgl-obsolete 分支(看名字就知道是废弃了)。

详情请展开。

查看更多

分享到 评论

GLantern 更新:文字和 Tween

GLantern 更新到 0.3.0-alpha,提供了初步的文本和缓动(tween)支持。

查看更多

分享到 评论