我似乎有点高估我接受辣味食物的能力了🤔那个什么鱼香肉丝料理包,连续吃了三天之后果然开始急性腹泻,草🤔
但和去年相比,今年买的总感觉有点索然无味🤔不清楚它本来就是这种味道,还是我的味觉其实退化了,还是它开始偷工减料了🤔但无论如何,这几天貌似马上就有临期鲜肉月饼了,我寻思做个月饼炒意面(大嘘)都比这垃圾玩意好吃114514倍🤔
另外一方面cuties impact这游戏也越来越接近索然无味了,在我把the catch拉到了90级之后,哪怕元素精通雷电将军都能打出一万九的爆发伤害,所以我一不小心又乳了一次刻晴🤔我估计等精炼材料集齐、dps套刷好之后五六万应该没啥问题,但这样总感觉没啥意思🤔
fischlthonk
kawaii fischl chan一丝不挂的时候都要thonk,然后就被我做成了表情包:
我发现喜欢fischl chan完全是因为小乳房,所以按照那群cancel小将的说法,我大概是一个一个一个一个炼铜术士啊啊啊啊啊🤔
与此同时我以某种申必方式发现了illusion的老游戏将屏幕分辨率藏在哪个配置文件,以及如何将其修改成4k🤔至于那些用了unity的新游戏,它就在注册表里啊,随便修改🤔
具体来说,答案分别是data目录下面的gsd.cfg
,以及二进制修改🤔但发现这玩意的过程极其有意思🤔
首先人工学园2有一个神奇的魔改版本,叫做AA2MiniPPX,它从头实现了一种可以压缩的封包格式,叫做ppx,这样它就能从原来的可能有12GB直接压缩到2.82GB🤔这个版本也可以加载一大堆mod,比如之前没有的第一人称视角mod,当然,它也可以用任何分辨率运行,比如4k🤔所以,我看了下它是怎么将4k分辨率写入配置文件的🤔
它具体来说用一大堆lua脚本来实现魔改操作,比如按照它的mod载入逻辑第一个mod永远是叫做launcher的mod,打开\AAUnlimited\mod\launcher\dlg.lua
,可以看到里面有一个函数是和分辨率有关的:
local function update_res(text)
text = text or "1280x720"
local x,y = text:match("^([0-9]+)x([0-9]+).*$")
if not x or not y then return end
x = tonumber(x)
y = tonumber(y)
if x< 100 or y < 100 or x > 10000 or y > 10000 then return end
local function gcd(m, n)
while m ~= 0 do
m, n = n%m, m
end
return n
end
local factor
local ax
local ay
factor = x / y
if math.abs(factor - 16/9) < 0.1 then
ax = 16
ay = 9
elseif math.abs(factor - 16/10) < 0.1 then
ax = 16
ay = 10
elseif math.abs(factor - 4/3) < 0.1 then
ax = 4
ay = 3
elseif math.abs(factor - 9/16) < 0.01 then
ax = 9
ay = 16
elseif math.abs(factor - 10/16) < 0.01 then
ax = 10
ay = 16
else
factor = gcd(x,y)
ax = x/factor
ay = y/factor
if ax > 128 or ay > 128 then return end
end
gsdconfig.aspectx = ax
gsdconfig.aspecty = ay
gsdconfig.x = x
gsdconfig.y = y
gsdlib.save_gsd(gsdconfig)
_CONFIG["res_"..exe_type] = x .. "x" .. y
Config.save()
end
这个函数的输入参数是一个AAAAxBBBB格式的字符串,分别代表横向和纵向分辨率,所以也有这么一个变量
local reslist = {
"800x480","854x480","960x600","1024x600","1280x720","1280x800","1280x854","1280x960","1366x768",
"1440x900","1440x960","1600x900","1680x1050","1920x1080","1920x1200","2048x1080","2048x1536",
"2560x1600","2560x2048","3840x2160","3840x1600","4096x1716","4096x2160"
}
里面是所有可以在那个魔改版本launcher里面选择的分辨率🤔但它最重要的功能是暗示了一个叫做gsd的东西,在拆分了AAAA和BBBB并且算出宽高比之后它调用一个和gsd相关的玩意将它们写入配置文件,而且同目录里刚好有个叫做gsd.lua
的脚本,这个脚本刚好规定了如何读取和写入一个叫做gsd.cfg
的配置文件🤔
其中format一栏规定了人工学园2的gsd.cfg
应该是什么格式:
local format = {
--"\x03\x00\x00\x00\x00",
"\x03\x00\x00\x00\x00",
{ x=int },
{ y=int },
{ zoom=bool },
{ aspectx=byte },
{ aspecty=byte },
"\xdf\xff\xff\xff\x00\x00", -- mandatory
{ fullscreen=bool },
{ mipmap=byte },
--"\x00\x00\x00",
"\x01\x00\x02",
{ sharp=bool },
{ bilinear=bool },
"\x00",
{ fastrender=bool },
{ svp=bool },
"\x00\x01\x00\x01\x00\x00\x00\x00\x00\x00",
--zero:rep(10),
{ blur=bool },
"\x00",
{ shadowmap=byte },
"\x00",
{ rim=bool },
"\x01", -- shadowmap for body enable?
{ dynlight=bool },
"\x00\x00",
{ outline=bool },
zero:rep(1046),
{ aa=byte }
}
我反正没有看懂它是怎么将分辨率的数值转换为二进制的,但我至少明白怎么将人工学园2的貌似它将分辨率的数值和0xFFFFFFFF做了一次应该是xor运算,然后写了进去,但实在不行直接从人工学园2的gsd.cfg
中和分辨率相关的几个字节替换到另外一款illusion游戏里了🤔gsd.cfg
里复制过去就完事了🤔
我需要修改的游戏是一款叫做Wakeari的游戏,它的gsd.cfg
和人工学园2还是不太一样的,比如开头是01 00 00 00 00
而不是03 00 00 00 00
,而且在DF FF FF FF
之前比人工学园2少了两个字节,少的刚好是aspectx和aspecty🤔复制过去之后它真的便乘了4k,问题是感觉有些按钮没有显示🤔接下来我发现了DF
前面的那个字节在Wakeari里面是干什么的了,它是用来规定宽高比的,取值00时是4:3,取值01时是16:10,取值02时是16:9🤔改成02之后一切正常,外加dgVoodoo也被我配置好了,终于可以impact 4k cuties(大嘘)了🤔
tankeqing
https://cyberdrop.me/a/BecVgIku
现在除了thonkeqing外还有tankeqing,说不定哪天还会有fuckeqing,keqing这名字梗浓度实在是太高了🤔