普通视图

Received yesterday — 2026年2月6日

Redis开篇

2021年12月29日 00:00

栏目持续更新中

一、Redis概述

Redis即Remote Dictionary Server(远程字典服务)是完全开源的,使用ANSIC语言编写的,遵守BSD协议的高性能的Key-Value数据库。Redis提供了丰富的数据结构,例如String、Hash、List、Set、ZSet等等。数据是存在内存中的,同时Redis支持事务、持久化、LUA脚本、发布/订阅、缓存淘汰、流技术等多种功能特性,提供了主从模式、Redis Sentinel和Redis Cluster集群架构方案。

Redis的作者是意大利程序员Antirez,作者个人博客:https://antirez.com/latest/

Redis的官网是:https://redis.io,源码位于GitHub上:https://github.com/redis

二、Redis的主要用途

  • 配合关系型数据库快速读取

    主流应用基本都是80%的读取和20%写入,Redis拿来配合MyMQL等实现读写分离,MySQL数据存储在硬盘,关系型数据库需要执行复杂SQL,相比下Redis基于内存按key读取明显效率更高,Redis在一些场景下的使用明显优于MySQL,例如计数器,排行榜,抢红包等。Redis通常用于一些特定场景,需要与MySQL一起配合使用,两者并不是相互替换和竞争关系,而是共用和配合使用

  • 分布式锁

    synchronized关键字和各种锁只能在一个JVM进程中有效,多服务器的集群环境下利用Redis的单线程特点,可以做分布式环境下的并发控制

  • 队列

    Reids提供list和set操作,这使得Redis能作为一个很好的消息队列平台来使用。我们常通过Reids的队列功能做购买限制。比如到节假日或者推广期间,进行一些活动,对用户购买行为进行限制,限制今天只能购买几次商品或者一段时间内只能购买一次,也比较适合适用。

  • 消息中间件

    Reids具有发布订阅消息功能,因此可以作为一个简单的消息中间件来使用,例如修改了数据字典后通知应用程序执行刷新缓存的方法

  • 分布式会话

    将session或token对应的用户信息保存到Redis,实现集群环境下会话共享

三、Redis的优势

  • 性能极高

    Redis能读的速度是110000次/秒,写的速度是81000次/秒

  • 数据类型丰富

    不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储

  • 支持数据的持久化

    可以将内存中的数据保持在磁盘中重启的时候可以再次加载进行使用Redis支持数据的备份,即master-slave模式的数据备份

四、Redis版本历史

  • 2009,诞生
  • 2010,1.0,Redis Data Types
  • 2012,2.6,Lua,PubSub,Redis Sentinel V1
  • 2013,2.8,Redis Sentinel V2,IPv6
  • 2015,3.0,Redis Cluster,GEO
  • 2016,4.0,RDB,AOF
  • 2017,5.0,Stream
  • 2020,6.0,ACLs,SSL,Threaded I/O
  • 2022,7.0,ACLv2,Redis Functions,listpack代替ziplist,Multi-part AOF

五、Redis版本规则

Redis版本号第二位是奇数的为非稳定版本,例如2.7、2.9、3.1。第二位是偶数的为稳定版本,例如2.6、2.8、3.0。当前奇数版本就是下一个稳定版本的开发版本,例如3.0就是2.9的稳定版,2.9就是3.0的开发版。

根据官网安全漏洞提示,升级redis6一定要选择6.0.8以上版本,或者直接升级到7。

六、Redis7新特性

  • 多AOF文件支持

    7.0版本中一个比较大的变化就是aof文件由一个变成了多个,主要分为两种类型:基本文件(base files)、增量文件(incr files),请注意这些文件名称是复数形式说明每一类文件不仅仅只有一个。在此之外还引入了一个清单文件(manifest)用于跟踪文件以及文件的创建和应用顺序(恢复)

  • Config命令增强

    对于Config Set和Get命令,支持在一次调用过程中传递多个配置参数。例如我们可以在执行一次Config Set命令中更改多个参数: config set maxmemory 10000001 maxmemory-clients 50% port 6399

  • 限制客户端内存使用 Client-eviction

    一旦Redis连接较多,再加上每个连接的内存占用都比较大的时候,Redis总连接内存占用可能会达到maxmemory的上限,可以增加允许限制所有客户端的总内存使用量配置项。
    redis.config中可以用两种配置形式:指定内存大小 maxmemory-clients 1g、基于maxmemory的百分比 maxmemory-clients 10%

  • listpack紧凑列表调整

    listpack是用来替代ziplist的新数据结构,在7.0版本已经没有ziplist的配置了(6.0版本仅部分数据类型作为过渡阶段在使用),listpack已经替换了ziplist类似hash-max-ziplist-entries的配置

  • 访问安全性增强ACLV2

    在redis.conf配置文件中,protected-mode默认为yes,只有当你希望你的客户端在没有授权的情况下可以连接到Redis Server的时候可以将protected-mode设置为no

  • Redis Functions

    Redis函数,一种新的通过服务端脚本扩展Redis的方式,函数与数据本身一起存储。

  • RDB保存时间调整

    持久化文件RDB的保存规则发生了改变,尤其是时间记录频度变化

  • 命令新增和变动

    1.ZSet(有序集合)增加ZMPOP、BZMPOP、ZINTERCARD 等命令。
    2.Set(集合)增加SINTERCARD命令。
    3.LIST(列表)增加LMPOP、BLMPOP,从提供的键名列表中的第一个非空列表键中弹出一个或多个元素。

  • 性能资源利用率、安全性等改进

    自身底层部分优化改动:Redis核心在许多方面进行了重构和改进:
    1.主动碎片整理V2:增强版主动碎片整理,配合Jemalloc版本更新,更快更智能,延时更低。
    2.HyperLogLog改进:在Redis5.0中,HyperLogLog算法得到改进,优化了计数统计时的内存使用效率,7.x更好的内存统计报告。
    3.如果不为了API向后兼容,我们将不再使用slave(奴隶)一词(政治正确)

七、Redis基础篇

使用Redis前需要编译安装以及进行基本的配置,Redis的编译安装、运行,基本配置和客户端命令使用具体见:

7.1 数据结构

Redis的数据结构指的是Value的数据结构类型,Key都是字符串。Redis官网的介绍:https://redis.io/technology/data-structures/

截止到目前的7.x版本,Redis共有10大数据结构,常用的经典数据结构类型有String、List、Hash、Set、ZSet

序号文章名概述
1Redis数据结构之String字符串
2Redis数据结构之List列表
3Redis数据结构之Hash哈希表
4Redis数据结构之Set集合
5Redis数据结构之ZSet(SortedSet) 有序集合

Redis进化过程中又陆陆续续推出了GEO、HyperLogLog、Bitmap、Bitfleid、Stream这几种更加高级的数据结构

序号文章名概述
1Redis数据结构之HyperLogLog用来做基数统计的算法
2Redis数据结构之GEO地理空间
3Redis数据结构之Bitmap位图,二进制位的bit数组
4Redis数据结构之Bitfleid位域
5Redis数据结构之Stream流,主要用于消息队列

参考

  1. 尚硅谷Redis零基础到进阶,作者:尚硅谷,哔哩哔哩,2023.02.21

两种困境

2026年2月4日 08:00
上周和前同事一起打球,他跟我讲:他们部门解散了,他自己也已经找了一个月的工作。后来他说不想干软件这行了,干了十多年,干够了,不过转头一想,又不知道能干啥,以前也有过一些想法,但仅仅停留在“想”的层面,没有行动。然后就发现,我俩是两个极...

从“苦读教程”到“听 AI 播客”

2026年2月2日 08:00
我之前写过文章分享怎么学编程。熟悉我的朋友都知道,我是科班出身,写了十几年代码。在以前开始入门的时候,我的学习路径非常“传统”:找视频教程、买书、跟着视频一行行敲代码。那是一个“苦读”的过程,获取知识的门槛很高,需要耐心和热爱去筛选和...

路虽远,行则将至:写在蒋羿抵达山海关之际

2026年2月1日 08:00
上周三晚上打开抖音,刷到了我关注已久的博主——蒋羿。视频里,他站在山海关,宣告自己徒步万里长城的挑战,终于画上了句号。看着他在终点大喊、拍照的那一刻,隔着屏幕,都替这个陌生的四川小伙感到高兴。从嘉峪关到山海关蒋羿今年30岁,是个普通的...

语音输入法的爆发前夜

2026年1月31日 08:00
从去年开始,语音输入法迎来了井喷。我看到了很多语音输入法,有手机上的,有PC上的。PC上我注意到一个输入法,大家估计也都看到过,叫Typeless。这个输入法做得很极端,它是一个国外小团队做的。它的输入法打开非常理想主义,或者说非常绝...

用了一周豆包,我还是换回了微信输入法

2026年1月29日 08:00
用了几天的豆包输入法,我还是决定,换回我的微信输入法。上周我写了一篇文章《微信输入法,越来越香了》,当时是因为觉得它的语音输入进步巨大,就很认真的夸了一下,后来文章被推荐,所以吸引了很多人来观摩和讨论。但收到的一大堆留言里,却有大量留...

死磕两晚:一篇硬核教程背后的“体力活”

2026年1月28日 08:00
昨天的文章很有意思。我写了那篇接近四千字的《国内也能用!ClaudeCode完整上手指南》,发布之后,阅读量其实并不高,到现在还不到两千。但转发量涨得特别快,已经快破200了。这应该是我近期转发率最高的一篇文章。这也印证了一个现象:大...

聊聊 Claude Code:它不是工具,它是实习生

2026年1月27日 08:00
如果是我的老读者,应该发现我的编程工具一直在变。从最早推荐Trae到Gemini,到后来的AIStudio,就像神农尝百草一样,我试了很多AI编程工具。但最近一个月,我几乎只用一个工具:ClaudeCode。经常有朋友问我:“咕咚,C...

国内也能用!Claude Code 完整上手指南

2026年1月27日 08:00
如果你关注AI编程,应该听说过ClaudeCode——Anthropic官方推出的AI编程助手。它很强,但国内用户想用有三个坎:问题Claude官方智谱方案价格$20/月(约145元)20元/月起支付需要国际信用卡支付宝、微信网络需要...

体检、投篮、搞 PC 版同步 - 周六琐记

2026年1月24日 08:00
周末总是让人很期待。今天是周六,其实我觉得一周里最开心的一天,应该就是周六了。因为周六休息,玩一天,心里想着”哎,后面还有一天呢”。周日虽然也能休息,但一想到”明天就要上班了”,那种痛苦感就会隐隐约约地冒出来。今天早晨起得很早。因为约...

开源免费:我的公众号封面图生成器

2026年1月23日 08:00
设计微信公众号的封面图,用它就对了:GudongCover。1.缘起我昨天写了一篇文章,介绍自己如何用AI生成封面图。因为我公众号的封面图都是用AI生成的,不过是让AI生成HTML代码。我自己有一套提示词,所以我的封面图其实都是一个风...

到账 24.87 元

2026年1月21日 08:00
大家好,我是咕咚,今天分享一下最近一次的公众号「巨额收益」💰💰💰昨天打开公众号助手后,看了一眼收益:24.87元对我来说,这确实算是妥妥的”巨款”了1.流量主的日常去年我开通了公众号的流量主功能。简单说,就是在文章底部加个广告位,有人...

devlog:让 Claude Code 帮你记录每一天的工作

2026年1月21日 08:00
VibeCoding时代的新问题不知道你有没有这种感觉:自从用上ClaudeCode,开发效率起飞:早上和AI讨论架构,10分钟搞定方案中午AI帮我修Bug,秒级定位问题下午和AI结对编程,一天写出过去三天的代码但是…周五写周报时,脑...

安装

2026年1月21日 08:00
-VibeCoding时代的新问题不知道你有没有这种感觉:自从用上ClaudeCode,开发效率起飞:早上和AI讨论架构,10分钟搞定方案中午AI帮我修Bug,秒级定位问题下午和AI结对编程,一天写出过去三天的代码但是…周五写周报时,...

用了就回不去

2026年1月20日 08:00
大家可能知道,我是一名Android软件开发工程师。还记得刚开始做安卓开发的那些年,我们的“吃饭家伙”并不是现在的AndroidStudio,而是一直在用一个叫Eclipse的工具。那个工具我用了好多年,当时觉得它简直完美:插件丰富,...

来自自恋狂的瞎折腾

作者obaby
2026年2月5日 09:41

作为一个超级丰满的女子,依然阻挡不住自己的自恋,要把照片放到每一个地方。啊,你问为什么?还不是因为自恋嘛!

 


Moe-Counter Baby版

这个东西其实用了很久了,直到前段时间重建之后才发现这个东西竟然也更新了。并且增加了很多样式,为了拥抱这些样式直接重新构建了一版。原来的版本依赖有点问题,于是顺手给改了以下,提交了一份新的代码:https://gitee.com/obaby/moe-counter

主要问题在于sqllite依赖的问题,修改package.json 改成下面的版本就行了:

"dependencies": {
    "better-sqlite3": "^12.6.2",
    "compression": "^1.8.0",
    "dotenv": "^16.5.0",
    "express": "^4.21.2",
    "image-size": "^0.8.3",
    "mime-types": "^2.1.35",
    "mongoose": "^8.15.1",
    "pug": "^3.0.3",
    "zod": "^3.25.61"
  },

重新编译:

# 1. 配置镜像源
pnpm config set registry https://registry.npmmirror.com
export npm_config_disturl=https://npmmirror.com/dist
export npm_config_node_gyp_mirror=https://npmmirror.com/dist

# 2. 删除旧的依赖并重新安装(使用新版本)
rm -rf node_modules pnpm-lock.yaml

# 3. 重新安装依赖(会自动安装 better-sqlite3@12.6.2)
pnpm install

# 4. 如果安装后还是找不到 bindings,手动编译
cd node_modules/.pnpm/better-sqlite3@*/node_modules/better-sqlite3
npm run build-release
cd ~/Moe-Counter

 

顺手把里面应用的jsdeliver的链接也给换了,毕竟这个东西在国内访问问题还是蛮多的。

示例地址:https://m.h4ck.org.cn

自恋版计数器:

当然啦,为了做这些图也着实废了一番功夫:

最开始是上面的,生成一堆,但是分辨率不高。还有个问题那就是ai不识数,总是会少数字。

后来尝试单个生成,但是ai的数字分辨能力依然跟智障一样。生成了很多乱七八糟的数字:

至于怎么安装主题,那就更简单了,把图片按照0-9整成gif,弄个文件件放到theme下面,重启服务就ok啦。


UserAgent 系统版本号

浏览器的ua在某个时间点之后,操作系统的版本号就固定在了某个特定的值:

windows是Windows NT 10.0

mac是Intel Mac OS X 10_15_7

其实,这个现在已经变成了一个通用的作法,参考:https://bugs.webkit.org/show_bug.cgi?id=216593

这个东西以后大概率也不会更新了,为了让ua显示准确数值,之前修复了win11的识别问题,昨天有点时间,又处理了下osx的识别。但是在mac下目前safari无法获取系统版本信息,暂时没什么解决方案。

主要方法也简单:

1.在提交表单的时候判断操作系统,针对win 和mac 传递一个隐藏字段

////////////////////////////////////////////////////////////////////////////////////////////////
// macOS 主版本号与版本名称映射(15 Sequoia 2024-09-16,26 Tahoe 2025-09-15)
// By:obaby
// 2026-02-04
// https://oba.by
// https://zhongxiaojie.cn
////////////////////////////////////////////////////////////////////////////////////////////////

var macVersionNames = {
    10: "macOS 10",
    11: "Big Sur",
    12: "Monterey",
    13: "Ventura",
    14: "Sonoma",
    15: "Sequoia",
    26: "Tahoe"
};

function setOsVersionInput(elementId, value) {
    var el = document.getElementById(elementId);
    if (el !== null) el.value = value;
}

try {
    navigator.userAgentData.getHighEntropyValues(["platformVersion"])
    .then(ua => {
        var platform = navigator.userAgentData.platform;

        if (platform === "Windows") {
            var major = parseInt(ua.platformVersion.split('.')[0], 10);
            if (major >= 13) {
                setOsVersionInput("comment_windows_version", "win11");
                console.log("Windows 11 or later");
            } else if (major > 0) {
                setOsVersionInput("comment_windows_version", "win10");
                console.log("Windows 10");
            } else {
                console.log("Before Windows 10");
            }
        } else if (platform === "macOS" || platform === "Mac OS") {
            var parts = ua.platformVersion.split('.');
            var major = parseInt(parts[0], 10);
            var minor = parseInt(parts[1] || '0', 10);
            var versionLabel = major >= 11 ? (macVersionNames[major] || "macOS " + major) : "macOS 10." + minor;
            // setOsVersionInput("comment_mac_version", versionLabel);
            setOsVersionInput("comment_windows_version", "Mac OS X " + major + "_" + minor);
            console.log("Value: " + "Mac OS X " + major + "_" + minor);
            console.log("macOS:", versionLabel, "(" + ua.platformVersion + ")");
            // 15 及之后单独标记,便于统计/兼容判断
            if (major >= 15) {
                setOsVersionInput("comment_mac_15plus", "1");
                console.log("macOS 15+ (Sequoia or later):", versionLabel, "(" + ua.platformVersion + ")");
            } else {
                console.log("macOS:", versionLabel, "(" + ua.platformVersion + ")");
            }
        } else {
            console.log("Not Windows or macOS:", platform);
        }
    });
} catch (e) {
    console.log("OS version detection: Not Supported");
}

2.在wp接受到评论的时候,提前针对ua进行处理,针对传递的特殊的ua进行替换

// 钩子函数,在评论提交前调用
add_filter('pre_comment_user_agent', 'block_specific_user_agent');
 
function block_specific_user_agent($user_agent) {
    // 这里设置你想要阻止的用户代理字符串
    // $blocked_ua = 'BadBot/1.0';
 
    // // 如果用户代理匹配,返回一个空字符串来阻止评论
    // if (strpos($user_agent, $blocked_ua) !== false) {
    //     return '';
    // }
    if (isset($_POST['comment_windows_version']) && $user_agent) {
        $raw = trim($_POST['comment_windows_version']);
        // 白名单校验,防止 XSS/脏数据:只允许 'win11' 或 "Mac OS X 主_次" 格式
        if ($raw === 'win11') {
            $user_agent = str_replace('Windows NT 10.0', 'Windows NT 11.0', $user_agent);
        } elseif (preg_match('/^Mac OS X\s+(\d+)(?:[_\.](\d+))?$/i', $raw, $m) && strlen($raw) <= 32) {
            $major = (int)$m[1];
            if ($major > 10) {
                $allowed = true;
                $user_agent = str_replace('Intel Mac OS X 10_15_7', $raw, $user_agent);
            }
        }
    }

    // 否则,返回原始的用户代理字符串
    return $user_agent;
}

显示归属地的插件无需任何修改,会自动显示正确的版本。

The post 来自自恋狂的瞎折腾 appeared first on obaby 𝐢‍𝐧⃝ void.

👗V👗

作者obaby
2026年2月4日 10:40

感觉《2077》在电脑硬盘上已经躺了很长的时间,前几天加载存档的时候发现上个存档竟然还停留在22年,在记忆里似乎并没有那么久没玩过。再次加载完游戏,一切那么陌生又熟悉。似乎V也已经等了我很久了。

这20年发售的游戏,到现在已经6年了。这6年时间里,自己仅仅玩了36个小时,整体进度才不到20%。之前的剧情都已经淡忘了,记不清楚之前经历过什么,连现在的任务都不清楚。只是隐约记得,V出现在这个叫做夜之城的地方,脑子里的芯片里还住着另外一个人-银手。剩下的都记不清楚了,只是直到V要不惜一切代价的活下去,用尽所有的方式。

我的如同金鱼般的的记忆力,无法支撑我写长的游戏记录文章。然而,不管是看电影还是玩游戏,有时候难免会带入到主角的视角,或许从某个程度上来说,rpg游戏的走向也是玩家的游戏走向,甚至不知不觉中就影响了游戏的发展进程。当然有的时候也会刻意选择一些与自己想法完全相反的选项,而这时,多数的目的是为了达成另外一个结局。

6年的时间,我没能让游戏有任何一个结局。年轻的时候,拿到一款游戏总是能快速的达成一个结局,哪怕不是最好的,cod系列的游戏,普通难度的通关时间一般都在80个小时左右,作为一个手残党,能两周左右通关也确实需要付出点努力。当时,玩游戏的时候,有个大学同学总是说,玩游戏当然是选择老兵难度-困难。最高难度,三枪毙命对我来说着实有些扛不住。几年前还能跟朋友一起玩l4d最高难度,通宵的玩,看着那一波波的僵尸袭来,尤其是witcher的笑声,不管听到多少次总是感觉那个快速袭来的僵尸就在身后。如果awp不能远距离解决掉,最后大概率就是别开膛破肚。后来,偶尔还是连线上的服务器,只是再也找不回原来的感觉了。当然,我更喜欢的是里面换的洛丽塔的小裙子,打僵尸的时候都可可爱爱萌萌哒。

现在把她重新拾起来,没有结束,总是有点始乱终弃的感觉。虽然完成了换装游戏,服饰确多数没有达到自己的预期。经过几天的折腾,总算是有能看过眼的了。

这种换装方式,其实依然是属于外挂的范畴了,虽然是叫做mod。内心总是有种感觉,哪怕是游戏里也要打扮的美美哒,如果不美,那就酷酷的。

我在游戏里的选择,决定了V的未来,然而,现实中自己的人生也得自己去选择。多数时候其实跟游戏里区别并不大,在没有攻略的情况下,对于每个选择,并不知道这个选择是对是错。

最近乱七八糟的事情视在太多,甚至连闺蜜圈迭代目前都暂停了。没有时间去维护或者开发更多的功能,公司的屎山代码,每天都在爆出各种问题和bug,处理起来焦头烂额。年关将近,乱七八糟的事情也实在是多。想清闲也是片刻闲暇都没有。

昨天下班的时候,宝子的小姨说,宝子姥姥手疼,都没法正常生活了。下午的时候,宝子的小姨跟她一起去医院检查了以下,抽了积液,注射了药物。晚上带着宝子,从小姨家接姥姥回家。宝子上课外托管回来的时候已经有些晚了,路上提到宝子的晚饭,从餐厅买的水饺。

让姥姥尝试一个,她一口回绝:『我不吃,外面的东西要加各种调料,大油什么的,我不放心不吃!』

『你就试一个』我继续劝。

『不吃,不能顾此失彼,我好不容易降血脂,又吃大油,不吃。本来明天要买里脊的,炸肉,我现在买不了了,等周末吧』

我答复:『没事,不用你管了,我明天去买,全部我自己炸行了,不用你管了』

『本来明天要包水饺的,也不包了吧,现在这个状况,三天不能碰水。等过年能包就行了』

『咱们能不包了吗?直接买现成的?』我问。

『不行,买的不放心,我还是得自己包』她继续坚持。

到门口宝子跟姥姥下车之后,我跟对象去停车。

『现在这个无解了,犟种无药可救』我说。

『现在也没必要可怜她,都是他自己找的』对象答到。

『要不这样吧,咱们买现成的,她自己吃自己包,吃几个包几个。我是无所谓的,我觉得买的速冻的也挺好吃的』

『也只好如此了』

相对于V的宏大叙事,我的生活就在这中鸡毛蒜皮的小事中慢慢蹉跎。你不让她干,她忍不住,自己去干了,又开始埋怨我们不关心她,不带她去看医生。宝子姥姥总是说什么自己小姐身子,丫鬟命。现在没人让她当丫鬟,很多事情也完全可以不用干。只是,可能是出于父母的本能去做了一些事情。

只是现在,我不想在过多干预这种事情了,都是自己的选择。付出自然是令人感动,但是那种自残式的付出,大可不必。自己身体收到残害,还道德绑架自己的子女。

小的时候,总是有各种狂妄的梦想。现在,这些梦想却都成空了。平平无奇,作为一个普通人,在这个泥淖里挣扎,尽量不让沼泽吞没自己。

宝子报了寒假的托管班,第一天就交到了新的朋友。应该在一起也玩的蛮开心的,我经常跟宝子说,咱俩换换吧。我去替你上学,你去上班。真的挺羡慕现在宝子的生活的。有时候虽然慢吞吞的,我也会叨叨。但是,跟自己小的时候完全不一样。

有时候也在想,自己的人生什么时候变得这么无趣了。单调枯燥,一成不变有时候也蛮好的,唯一和游戏里一样的。

那就是充满了利益利用和各种欺骗。只是,自己不用跟V一样真的去出生入死。

而至于游戏的终点,所有人都一样,那就是死亡。

这么一想反而也就释然了,这瞬间的得失又有什么关系呢。未来的路,说长也长,说短也短。

人生,能有几个6年。

The post 👗V👗 appeared first on obaby 𝐢‍𝐧⃝ void.

👠高跟鞋👠

作者obaby
2026年2月2日 15:34

经常看到acves玩各种游戏的记录,虽然很多游戏自己没玩过,看这种游戏记录的时候,敬业多多少少的能直到故事的梗概和大致的时间线。玩游戏这件事情,其实也需要天赋,这个东西,自己确并没有多少。作为一个手残党,多数游戏纯粹就是靠时长耗过去,一次次的失败,一次次读档,最终也就过去了。

不过有的时候,单纯靠读档也解决不了问题,还是得靠搜攻略,或者再退一步那就是上修改器了,《黑神话悟空》通关就是纯粹靠修改器,魂类游戏也着实不是自己的强项(咱就是说,你有擅长的游戏吗?!)。

多年以前买的《2077》只是偶尔进去转悠转悠,硬生生的给完成了换装游戏,有时间就进去跑各种服装店。然而,游戏里面的服装说实话一言难尽,真的挺丑的。那么多商店,竟然连双好看的鞋子都没有。

打开gog看到除了新的dlc,购买之后发现竟然有个redmod支持的功能。过段现在之后,去找各种mod。从3dm下载各种mod 以及管理工具导入之后,却发现貌似没什么效果,启动之后mod列表是空的。后来有试了各种其他的管理工具,依然是同样的问题,但是工具却能显示出来。尝试漩涡,以及mo2之后,忽然发现莫斯mo2是可以的,安装的mod通过指令添加物品之后确实能够看到了。

不过mo2的管理感觉也有问题,后来不知道哪里出问题之后连游戏都进不去了。又花了一个小时重新修复游戏,这80g的安装包,下载也属实是花了不少的时间。修复之后换回漩涡,冲洗安装编译mod,这次看到了编译窗口,貌似感觉是正常了。然而,换了鞋子之后模型出问题了:

小裙子挺好看的,但是有点穿模,没法从前面看。应该用的身体的模型也得换掉。

mod这个东西,的确提供了很多个性化定制的能力,也引入了一些问题。因为开了摸个身体模型,导致游戏直接卡在了加载页面。为了解决这个问题,来回删除重装了无数次的mod包括手工删除。

有时候对于那种喜欢的鞋子,真的挺没抵抗力的。哪怕看别人穿,感觉也是赏心悦目。

有时候甚至让人上瘾,哪怕买了之后从来都没穿过,就那么扔着,甚至很多都从来没机会穿过。

拍写真的时候,化妆师小姐姐说,鞋子好好看啊,不过我穿不了这么高的。

The post 👠高跟鞋👠 appeared first on obaby 𝐢‍𝐧⃝ void.

死缠烂打

作者obaby
2026年1月28日 15:55

有时候其实挺不理解,那些销售们能盯着一个人进行轮番轰炸,哪怕已经被告知自己对这些东西不高兴了。

不知道是不是因为经济形势问题,还是连大厂也没单了,能盯上我这种小人物。并且骚扰电话犹如附骨之蛆,拦都拦不住,如同逐臭的苍蝇一样,赶都赶不走,也可能是因为我就是那臭吧。

这半年陆续街道百度地图的电话,问是不是继续用,在第一次打电话的时候告知他们不用了,答复说如果不用了,那可以把ak什么的删除掉。

后来又打了几次,实在受不了就给删除了,结果天几天又打,这脑子是有毛病还是咋滴?

另外一个就是交通银行信用卡,各种额度提升,让办理分期。每次打电话都是拒绝,结果过不了几天又开始开,最近已经到了拒接之后,第二天接着打,甚至一天打无数个!纯粹就是tmd脑子有病。

妈的,这些傻屌再打直接注销这个破b信用卡,艹!

The post 死缠烂打 appeared first on obaby 𝐢‍𝐧⃝ void.

❌