Laurence-042's Workshop
  • 首页
  • 文章
  • ProxyOS 半周报
  • 项目展示
  • 关于

Posts

November 6, 2025

Proxyos Weekly 004

TL;DR 概览

又停了一天电,还有一天不舒服咕了,进度延迟……主要进展为进行了完整游玩测试,修了一大堆问题,优化了一堆组件

本期目标

  • 跑一遍以确保基础的存档功能正常工作
  • 把第一章的脚本要写哪些搞清楚
  • 把第一章的切换逻辑搞定

进展速记(Changelog)

新增:

  • 上期新增的支持数据段和链接的文本组件现在支持Markdown了
  • 新增了两个任务之间过渡的动画

变更:

  • 优化任务系统,修正了可能导致稳定性下降与性能下降的不一致逻辑
  • 优化窗口系统,现在打开窗口时窗口大小取决于屏幕大小,更加自然
  • 优化存档系统,需要后台运行的应用现在都使用Manager+Display的模式了,Manager管理存档和数据更新,Display根据更新信号来修改显示
  • 优化通知系统,统一了消息对话框样式
  • 优化链接处理模块,现在它更好配置了

修复:

  • 存档保存异常

  • 存档加载异常

  • 文本查看器不知道啥时候没法滚动

  • 拖动数据段功能在上次更新样式后炸掉了

  • 完成任务时出现了如下异常

    • TaskRequirementNode发出data_dropped信号
    • TaskManager进入submit_data_segment_to_requirement方法
    • submit_data_segment_to_requirement中check_and_update_task_status时,解锁了下一个任务,任务解锁时发出了task_updated信号(下一个任务)
    • submit_data_segment_to_requirement中check_and_update_task_status后的下一句又是发送task_updated信号(当前任务被完成)
    • Pocket在接到下一个任务的task_updated时触发了NavigationWindow的内容更新,创建了一个TaskContent,但因为其初始化方法通过call_deferred调用,新的TaskContent还没有初始化,而旧的TaskContent也还没有删除
    • 新老两个TaskContent接到完成任务的task_updated,因为新TaskContent还没初始化,发生了异常
  • 进入第一章的对话框文本显示异常

主要进展内容

进行了完整游玩测试,修了一大堆问题,优化了一堆组件

没了

本以为上一期已经把地基打牢了,但是游玩测试中发现了远比单元测试更多的问题,比如

  • 任务完成和任务发布之间没有间隔,体验十分怪异
  • 默认的窗口大小(800*400)无法正常显示任务要求访问的网页
  • 任务里的网页链接写错了
  • 有些应用在保存未使用的存档文件,而还有些应用的存档时机不对
  • 在任务完成和任务发布的间隔中,存在时序问题导致创建了异常的任务详情节点
  • 默认的文本框组件单行文本过长时不会换行

除此之外,我发现一开始我把 Desktop 当成主场景有些欠考虑了,因为第一章的场景并不在Desktop上发生,需要一个新的场景(或者直接用TaskManager加载覆盖Desktop的第一章场景?)

下一期我会优先写好剧本,然后按照剧本进行相关功能的检查与开发,避免再次像本期一样把时间浪费在返工上

瓶颈与问题清单

暂无

下期计划(Next)

  • 把第一章的剧本搞清楚
  • 把第一章的切换逻辑搞定

试玩版

暂未达到第一个试玩版的发布标准

read more
November 5, 2025

Proxyos Weekly 003

TL;DR 概览

因为欠考虑的地方太多,想干的事太多,导致工作量太大,本期预定目标未完成。但新增了一些十分关键的基础设施,也对之前的基础设施进行了完善,可维护性有所提升

本期目标

  • 把第二个任务搓出来
  • 跑一遍以确保基础的存档功能正常工作
  • 加个关机(保存并退出)功能
  • 看看能不能找到靠谱的美术资源

进展速记(Changelog)

新增:

  • 正式引入SPIDER应用(浏览器)
  • 提供了浏览器外的基于文本的DataSegment解锁方式

变更:

  • TaskBar和AppIcon使用相同基类,这允许它们动态调整label字号
  • TaskBar现在正式支持按内存占用显示应用图标
  • Browser的地址栏支持从节点外部自定义url映射了
  • OSWindow的header不会再被完全拖到屏幕外面了
  • TextFileViewer不再允许编辑文件
  • 优化存档加载逻辑
  • 优化POCKET样式

修复:

  • OSWindow莫名其妙有个最小宽度(Again),是因为按屏幕大小设置高度的那个组件错误地额外设置了宽度
  • 网页数据段无法正常上报
  • 带侧边栏导航的应用的侧边栏全只有root节点
  • 杂七杂八的修改过程中产生的不一致

主要进展内容

花了太多时间反复修改第二个任务的网页,相关图像的触发也没考虑清楚,周二下午电信的工作人员移箱子还把我网线移断了……

但在缩减fastai学习时间后,还是勉强把最主要的部分搞定了,这次基础架构是真好了(在我发现新的一连串问题之前)

因为有了浏览器外的基于文本的DataSegment解锁方式,现在可以更简单地打开网页、获取数据段了

目前仅作为开网页的快捷方式,但等到了第三章,这个功能会和届时需要实现的文件下载功能配合使用

除此之外还做了大量的修复和优化,底层架构现在更稳了,用户体验更好了,也提前排除了大量的坑

瓶颈与问题清单

  • 本地调网页时不支持使用fetch之类的获取file://的文件,但是游戏内的浏览器因为是使用http://的就可以。也许我需要一个更好的调试手段……或者直接用游戏里的浏览器调试?

下期计划(Next)

  • 跑一遍以确保基础的存档功能正常工作
  • 把第一章的脚本搞清楚
  • 把第一章的切换逻辑搞定

试玩版

暂未达到第一个试玩版的发布标准

read more
November 1, 2025

Proxyos Weekly 002

TL;DR 概览

搓了第一个任务,做了一些界面优化

本期目标

  • 把第一个任务搓出来
  • 修正基准测试程序指南
  • 丰富数据段描述
  • 丰富数据段提交信息并优化其表现
  • 使用更语义化但不容易被猜出来的data-seg-id,或者添加校验机制
    • 我仔细分析了下,只要用合理的语义化data-seg-id就能避免意外被试出来,给哪些闲出屁的大佬留出写脚本硬试的机会也不是啥坏事

进展速记(Changelog)

新增:

  • 为ProxyOS静态资源页新增暗示开发组也十分依赖ProxyOS的段落
  • 添加了应用退出时自动保存的机制
  • 添加了json数据保存特性,现在除了POCKET等核心进度相关应用的数据会使用resource存储,其他常规应用的数据都是使用json保存了。后期玩家会需要自己手改这些json的

变更:

  • 更合适的ProxyOS静态资源页,并简化CSS
  • 直接使用通知的数据格式作为数据段提交响应以简化配置
  • 使用json保存非进度类信息,进度类信息保持使用resource
  • 桌面容器不再显式指定列数了,现在可以保证每个图标分配到的空间都是正方形,避免上下左右出现大面积空白
  • 优化桌面、窗口等常用组件的观感
  • 统一图标风格,设计了ProxyOS的标志

修复:

  • OSWindow莫名其妙有个最小宽度
  • Terminal的背景向下超出一截
  • 优化了一些旧语法

主要进展内容

在前半周,第一个任务的大量内容都是只能算占位符,而且ProxyOS开发组使用赛博风格网页其实不太合适

因此,本期完善了第一个任务所需的各种数据,并处理了各种影响观感的问题,使其看起来像是个廉价游戏了

我还找了些美术资源来试图让它看起来不那么廉价,但是找到的资源尝试后都不是很合适。大多数要么过度整合,要么风格不一致(比如假定按钮都以贴靠左侧的纵列布局展示)

瓶颈与问题清单

暂无

下期计划(Next)

  • 把第二个任务搓出来
  • 跑一遍以确保基础的存档功能正常工作
  • 加个关机(保存并退出)功能
  • 看看能不能找到靠谱的美术资源

试玩版

暂未达到第一个试玩版的发布标准

read more
October 29, 2025

ProxyOS 半周报 #001 — 迟来的半周报

TL;DR

在搞定了基础的系统后,我开始施工具体游戏内容。我觉得类似Ero Hunters的“一周内容、一周功能”的开发计划十分灵活,而且写周报确实有助于我保持专注并整理思路。本周过半,但是内容没搞多少,主要是开始做内容了才发现之前规划的功能不足以支撑内容,于是又开始搞功能……具体情况如下

本期目标

  • 统合上周实现的各个模块
  • 写好第一章剧本
  • 对后续章节有大致规划
  • 把第一个任务搓出来

进展速记(Changelog)

新增:

  • 第一个任务所需的网页
  • Terminal应用
  • 接取任务可以解锁本地文件
  • 正在施工中的运行时真实Python程序编写/执行

变更:

  • 优化了任务发布逻辑

主要进展内容

勉强算是搞定了第一个任务,玩家可以在网页上点击包含data-seg-id属性的dom节点来解锁用于提交任务的信息段

然后发现原本以为第二章才能用到的功能实际上在第二个任务里就需要,而所需的功能还没准备好,就开始继续搞功能了

不过只要这个搞定,那么整个玩法框架都几乎完成了。基本上除了特定的剧情演出,就不需要增加什么新代码了(如果我没再次“欸我有个好点子”的话)

明天《天外世界2》发售了,咕一天

瓶颈与问题清单

  • 当前第一个任务的细节基本完全没有
    • 修正基准测试程序指南
    • 丰富数据段描述
    • 丰富数据段提交信息并优化其表现
  • 玩家可以自己写data-seg-id然后提交,这样的话照样能被接受
    • 别再用0、1、2这样的id

下期计划(Next)

  • 把第一个任务搓出来
  • 修正基准测试程序指南
  • 丰富数据段描述
  • 丰富数据段提交信息并优化其表现
  • 使用更语义化但不容易被猜出来的data-seg-id,或者添加校验机制

试玩版

暂未达到第一个试玩版的发布标准

read more
  • ««
  • «
  • 1
  • 2
  • »
  • »»
© Laurence-042's Workshop 2025