Day 2357 动漫渔场/东方小镇大事记

动漫渔场(www.comicfishing.com),是由Fish(统称费总、费湿等,帐号名airzhangfish、comicfishing,小镇名sgaki)牵头建立的、中国大陆地区最早、规模最大的私人东方Project系列讨论论坛,建立于2003年12月,渔场时期至2009年1月9日止。其下共有东方幻想乡、渔场大水塘、东方步行街、东方小吃店及事务处五大板块,曾分设以下分区:

  • 同人新闻(同人新闻区,曾用名:东方新闻)
  • 美图驿站(同人图片创作区)
  • 东方音乐长廊(同人音乐创作区)
  • 东方同人故事(同人故事创作区)
  • REPLAY交流区(东方系列游戏录像交流区)
  • 同人游戏创作(同人游戏制作讨论区,曾用名:游戏程序创作讨论区)
  • 东方推广计划讨论(东方推广区,此分区后来消失)
  • Cosplay交流区
  • 同人企画区
  • 同人激流(同人资料分享区)
  • 东方大鱼塘(水区,曾用名:大鱼塘、大大大鱼塘)
  • 技术风暴(技术问题咨询及资料分享区,曾用名:技术寒流)
  • 东方第一超市(下载资源分享区,曾用名:东方大鱼群)
  • 求物场(求物区)
  • 漫画发布区(东方小吃店汉化作品发布区)
  • 小黑屋(东方小吃店工作协调区)
  • 汉化区(渔场年代的游戏汉化加密分区,名为「东方后宫」,以密码进行保护)
  • C70工作站(加密临时分区,存在于2006年6月至2007年7月之间)
  • 事务中心(论坛事务公告及提问区,曾用名:渔场事务处)
  • 事务投诉区
  • 时〇管理局(版主议事区,曾用名:斑竹议事区)
  • 财务区(论坛财务公示区,小镇时期起存在,管理员及捐款会员可见)
  • 幻葬の白玉楼(回收站)

最高峰时期(2009年1月10日前夕),动漫渔场共计拥有约5万余名会员,6-7万余主题帖,回复数已不可考。主题最大值出现在2008年5月,当时东方系列第11作《东方地灵殿》发布;回复最大值出现在2009年1月,渔场关闭并迁移到东方小镇。

继续阅读 “Day 2357 动漫渔场/东方小镇大事记”

Day 2349 东方小镇,2009.01.09 – 2012.07.07

昨天下午听说小镇被入侵了,还以为是个笑话,管理层又不是第一次玩这种游戏了。

7月1日去的时候帖吧也有个帖子, 当时还当笑话拿到饭否上去贴来着。

结果,按照这个帖子69楼BorisX的说法,论坛是真的被端了。

据说反正就算不这样论坛9月也得关,那关了就关了吧,冷了那么久,之前又那么官僚。

动漫渔场,2004.1.1 – 2009.1.9

东方小镇,2009.1.9 – 2012.7.7

再见。

更新:「东镇颠覆委员会」的这个帖子恶心到我了。

更新2:小镇重开,回档到2010年5月。

Day 2324 [转]《南方周末》:中国字体行业调查:本来我们该有更多种「汉字」

图为南方周末字体版权范围内的字体,作为使用汉字最大量的国家,我们可用的汉字字库只有421种,而日本有2973种。 (何籽/图)

图为南方周末字体版权范围内的字体,作为使用汉字最大量的国家,我们可用的汉字字库只有421种,而日本有2973种。 (何籽/图)

中国汉字字库有421款,而日本的字库则有2973款。

“飘柔”判决让整个字体行业心头一凉,不少字体企业悲观地认为这会助长本已严重的字库盗用风气,甚至哀叹“字体设计已死”。

盗版挤占字体行业的生存空间,字库厂商从几十家减少到几家,真正具有生产规模的只有方正和汉仪。但从2002年至2010年,汉仪却没有一款新字库上市。 继续阅读 “Day 2324 [转]《南方周末》:中国字体行业调查:本来我们该有更多种「汉字」”

Day 2317 VB.Net URLEncode for OAuth

之前一直用自己写的URLEncode方法,但对于UTF-8的字符处理不太好,勉强能用,最近测试饭盒的搜索功能时发现勉强能用就等于不能用(对汉字的编码完全不对),只好重新把HTTPUtility.URLEncode引入进来,然后对其不正确的处理进行修正。
以下为相应代码,有两点要注意:
1. 需要先行添加System.Web的引用,如果找不到这个引用,检查目标Framework是不是用了Client Profile。
2. 最后一次将%253D替换为%3D用于将二次编码的「=」符号(编码后为%3D,二次编码后为%253D)替换回一次编码。理论上按照RFC 5849和饭否自己的文档,GET方法的QueryString应当经过一次URL Encode,然后在生成Base String然后签名的时候被二次编码,但饭否的API如果在Base String中检测到%253D时,将会返回Invalid Signature错误,并且给出认可的Base String中「=」显示为%3D,不知道是不是部署时出现的问题。

Private Function doURLEncode(ByVal s As String) As String
        'URLEncode function with corrections for OAuth Basestr making
        s = HttpUtility.UrlEncode(s).Replace("+", "%20")
        'Make the lowercased percent-encoded codes into uppercase
        s = RegularExpressions.Regex.Replace(s, "(%[0-9a-f][0-9a-f])", Function(c) c.Value.ToUpper)
        'Encode the chars RFC requested to encode but the HTTPUtility.URLEncode didn't
        s = s.Replace("(", "%28").Replace(")", "%29").Replace("$", "%24").Replace("!", "%21").Replace("*", "%2A").Replace("'", "%27")
        'Decode the char [~] RFC requested NOT to encode but HTTPUtility.URLEncode did
        s = s.Replace("%7E", "~")
        'Both the RFC and API document did not say [=] is a special character, but the API won't accept %253D.
        s = s.Replace("%253D", "%3D")
        Return s
    End Function

Day 2314 无题

  不知怎么回事,沉寂了将近半年的「东方Project页面」突然冒出来很多熟悉的名字撰写的评论,一下子就把「10条评论」的条件给满足了。
  本来因为已经将近半年没有碰过东方系列,准备用不批准显示的方法一直隐藏下去,后来仔细一想违背诺言终究不是好事,于是完成了那个页面。
  虽然如此,我现在已经连星莲船的UFO是Undefined Fantastic Object的缩写都记不清,打包的时候甚至发现好些汉化版在上次格式化中连我自己都没有存,似乎当时是准备忘记过去所以没有备份吧,离开幻想乡的世界有段日子了,一切都显得陌生起来。
  不过人总是要向前看的嘛。
  小吃店最后的勾心斗角并没有给我留下太深的印象,我现在已经全然不记得很多细节了(虽然我的记忆力一向很差),真正让我不想再与这个圈子有关系的,是天下无敌的帖吧汉化组和血色嘉年华偶像的真相,我被你们给恶心透了。
  好在我已经不在乎这些事情了,这会儿只是突然想起来,然后随口说说而已。
  小镇也没人去了,如果我没记错,似乎服务器会在今年的10月到期,而且就现在这个不翻墙几乎上不去的情况……
  不说了,「东方Project」页面填充完毕,如无特殊情况,不再更新。
  需要者请自行将鼠标上移。

Day 2294 U盘关机检测脚本

放在自己办公机上的,用来在关机的时候检测已登记但尚未移除的USB存储设备。
不过,若是处于充电模式而未通知系统Plugged-in事件的设备就没办法了。

'USB可移动磁盘检测脚本
'Nov.3 2011 by Lucsiro Touka
'参考脚本: http://www.codeguru.com/forum/showthread.php?t=408639
'
'本脚本用于检测系统中已装载的USB存储类设备,初衷是为了在关机时提示用户有未拔下的U盘、移动硬盘等。
'将本脚本保存为vbs,加入注销脚本列表(组策略—本地计算机策略—用户配置—Windows设置—脚本(登录/注销)—注销)即可达到关机提示的效果。

strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colDiskDrives = objWMIService.ExecQuery("SELECT * FROM Win32_DiskDrive WHERE InterfaceType = 'USB'")

i=1

For Each objDrive In colDiskDrives
	sExistDevice = sExistDevice & i & ". " & objDrive.Caption & vbCrlf
	i = i + 1
Next

If sExistDevice <> "" Then Msgbox "下列USB移动存储设备尚未卸载。" & vbCrlf & "请手动移除其中需要卸载的设备后,单击确定继续关机。" & vbCrlf & sExistDevice, vbInformation, "有尚未卸载的USB移动存储设备"

使用效果:

Day 2284 Mabinogi(中国大陆)宠物储物价值表

手工整理,虽然不可能会有,还是要说转载请注明出处。

名称 储物X 储物Y 储物格 价格 储物价值
47 翠绿蜥蜴 6 6 36 90 40%
61 白色金多犬 4 9 36 100 36%
46 黑曜蜥蜴 4 7 28 80 35%
40 阿富汗猎犬 6 9 54 170 32%
26 皇帝企鹅 6 7 42 139 30%
62 拉不拉多猎犬 6 9 54 180 30%
24 梅花鹿 6 7 42 149 28%
68 日本短尾猫 4 7 28 100 28%
25 阿德利企鹅 6 6 36 129 28%
36 八色鸟 6 8 48 179 27%
4 圆脸猫头鹰 7 9 63 239 26%
51 暹罗猫 6 7 42 160 26%
23 角鹿 6 5 30 119 25%
5 尖耳猫头鹰 6 9 54 219 25%
45 跳跳鼠 4 8 32 130 25%
63 萨摩犬 6 8 48 200 24%
64 边境柯利牧羊犬 5 8 40 170 24%
11 苏格兰折耳猫 4 9 36 159 23%
10 喜马拉雅猫 5 9 45 209 22%
52 黑猫 6 6 36 170 21%
33 爱斯基摩犬 6 7 42 199 21%
35 小熊猫 6 6 36 179 20%
29 金宝箱 6 9 54 269 20%
1 火山探险家小鬼 6 8 48 249 19%
2 丛林探险家小鬼 6 8 48 249 19%
13 白色小象 6 7 42 219 19%
53 黑色雪貂 4 6 24 130 18%
54 白色雪貂 4 6 24 130 18%
20 青色泡泡蟹 6 6 36 199 18%
39 变异蜘蛛 6 6 36 200 18%
48 白色雷犬 6 6 36 200 18%
56 灰狗 4 7 28 160 18%
6 白色海狗 6 6 36 209 17%
30 木宝箱 6 6 36 209 17%
49 花色雷犬 6 6 36 210 17%
67 奶牛 4 5 20 120 17%
12 蓝色小象 6 8 48 289 17%
19 红色泡泡蟹 6 7 42 259 16%
34 阿拉斯加白雪橇犬 6 5 30 189 16%
57 西伯利亚雪橇犬 6 6 36 230 16%
59 乌鸦 5 5 25 160 16%
37 月夜狼人 6 6 36 239 15%
66 白羊 4 6 24 160 15%
14 绿色光羽 6 5 30 209 14%
32 棕鸵鸟 6 8 48 339 14%
3 虎宝宝 6 7 42 299 14%
38 猫女 4 8 32 229 14%
7 黑色海狗 4 6 24 179 13%
42 红色眼镜蛇 6 4 24 180 13%
44 幸运草药猪 5 5 25 190 13%
21 横扫 6 6 36 279 13%
31 黑鸵鸟 5 9 45 349 13%
15 黄色光羽 6 4 24 189 13%
43 幸运草药牛 4 6 24 200 12%
18 白色陆行鸟 5 7 35 299 12%
8 踏雪 6 7 42 360 12%
58 4 6 24 210 11%
27 鹈鹕 6 6 36 319 11%
50 金鬃 6 6 36 320 11%
41 红色半月熊 5 6 30 280 11%
65 火焰白蜘蛛 4 4 16 150 11%
16 棉布魔毯 6 6 36 339 11%
9 赤兔 5 7 35 350 10%
17 黑色陆行鸟 4 8 32 339 9%
22 彗星 5 6 30 339 9%
60 迷你熊 4 6 24 280 9%
55 熊猫 4 6 24 300 8%
28 大鹏 4 6 24 349 7%