avatar
文章
23
标签
40
分类
0

徇的小站
使用Antlr4来解析P社游戏群星[stellaris]的科技树
发表于2025-05-18
背景群星更新了4.0,然后新版本的科技树不知道长什么样,科技树mod也坏了,就打算自己修一下,顺便学习一下Antlr4 方案1. 解析游戏的配置文件 科技树的配置文件在common/technology/目录下本地化文件在localization/目录下,这次只考虑中文变量在common/scripted_variables目录下还有个scripted_trigger在common/scripted_triggers目录下,这次没有用到每个配置文件的配置项都可以看做是一个对象,对象中有赋值语句和条件计算语句,计划是在grammar中定义整个结构,这样可以在Visitor中读取到每个Property的数据 如 1234567891011121314151617181920212223242526272829303132333435363738394041424344technology_body : technology_body_start ( area | tier | category | icon | modifier | cost ...
在磁盘上安装LiveCD
发表于2025-04-25
安装教程因为目前切换到了Windows,先简要备注一下大概的步骤,后续有机会再补充详细的步骤 准备一个UEFI启动的分区,格式化为FAT32格式,具体大小看想放多少个镜像,我这边是分了10G 将EFI分区挂载到/mnt/efi,然后安装grub,注意需要用removable的方式,这样会把grub所需的模块全部安装到EFI分区 https://wiki.archlinux.org/title/GRUB/Tips_and_tricks#Alternative_installation_methods 安装完之后,可以考虑给grub安装主题,这个参考grub官方的教程,我下面的用例是用的Vimix主题 目录结构123456789101112131415EFIgrub fonts locale themes x86_64-efi grub.cfg grubenvipex //这个目录下放iPXE文件 ipxe-arch.efi netboot.xyz-snp.efiiso //这个目录下放iso镜像 archlinux.iso kubuntu. ...
Steam的P2P联机优化
发表于2024-11-22
背景最近在玩群星,但是多人联机效果非常差,然后网上调研了一下发现可以用组网工具加速提升联机效果。 使用了一段时间之后发现有时候有效果有时候没有效果,所以研究了一下。 P2P实现的原理Steam 数据报中继https://partner.steamgames.com/doc/features/multiplayer/steamdatagramrelay?l=schinese https://partner.steamgames.com/doc/api/ISteamNetworkingSockets#CreateListenSocketP2P https://partner.steamgames.com/doc/api/ISteamNetworkingSockets#ConnectP2P Steam的SDK中提供了可以直接用于P2P的接口,游戏只需要实现接口就实现P2P连接 Steam中的对等网络及共享IP 地址https://help.steampowered.com/zh/faqs/view/1433-AD20-F11D-B71E 参考这篇文章介绍 使用中继进行对等连接在建立直接连接 ...
实现一个能够自动删除的临时文件
发表于2024-08-09
背景前段时间在弄关于文档转图片然后进行处理的工作,其中由于图片内容会多次读取,所以将其持久化在本地。但是由于图片是临时文件,所以需要在使用完之后删除。最初的实现是使用try-with-resource,但是随着流程变得复杂,图片的生命周期变得不可控,所以需要一个更好的解决方案。 思路 利用Cleaner的特性,在文件被GC回收时,进行删除操作。需要注意不要在cleaner中应用this对象,否则会导致内存泄漏。 利用MDC保存当前线程的MDC信息,这样cleaner执行时,用于跟踪上下文的MDC可以保留,使得traceId等信息不会丢失。 实现1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556package com.haizhi.metis.document.parse.common;import java.io.File;import java.io.IOException;import java.lang.ref.Cleane ...
让自定义注解支持配置属性注入
发表于2024-07-15
背景在写代码的过程中需要用到一些自定义annotation,但是annotation中的String类型的value需要字符串常量,于是想是否可以将@Value所支持的表达式移植到自定义注解中。 实现 Spring中的具体实现 org.springframework.beans.factory.support.DefaultListableBeanFactory#doResolveDependency 123456789101112131415161718Object value = getAutowireCandidateResolver().getSuggestedValue(descriptor);if (value != null) { if (value instanceof String) { String strVal = resolveEmbeddedValue((String) value); BeanDefinition bd = (beanName != null && containsB ...
SpringCloudFeign中的超时时间配置
发表于2024-01-24
背景最近在排查一个关于超时时间的bug,跟踪代码发现了一个以前没注意到的点 https://github.com/spring-cloud/spring-cloud-openfeign/issues/324 问题12345# org.springframework.cloud.openfeign.FeignClientFactoryBean#configureUsingPropertiesif (config.getConnectTimeout() != null && config.getReadTimeout() != null) { builder.options(new Request.Options(config.getConnectTimeout(), config.getReadTimeout()));} 在使用配置文件设置feign-client的时候,只有readTimeout和connectTimeout配置同时设置才会起效,具体的判断逻辑在org.springframework.cloud.open ...
windows上游戏加速器与WSL共存
发表于2024-01-14
现象发现在使用加速器之后,WSL相关的应用会出现无法启动的情况,需要重置网络。 参考Github上的解决方案https://github.com/microsoft/WSL/issues/4177#issuecomment-597736482,按照以下步骤即可。 下载NOLSP.exe www.proxifier.com/tmp/Test20200228/NoLsp.exe 以管理员权限执行以下命令 12345NoLsp.exe "C:\Program Files\WSL\wsl.exe"NoLsp.exe "C:\Program Files\WSL\wslservice.exe"NoLsp.exe "C:\Program Files\WSL\wslhost.exe"NoLsp.exe "C:\Program Files\WSL\wslrelay.exe"taskkill -IM "wslservice.exe" /F
conda环境中共享库找不到问题原因及解决方案
发表于2023-10-14
背景今天使用micromamba新建了一个环境来试试latex-ocr+paddle ocr的效果 1micromamba create -n latex-ocr python=3.8 cudatoolkit=10.2 cudnn 环境创建完成之后切换环境并安装依赖 12micromamba activate latex-ocrpip install -r requirements.txt 然后开始跑代码 1python main.py 发现问题在跑代码的时候发现报了一个库没有找到的问题 123456789101112131415161718192021222324252627Error: Can not import paddle core while this file exists: /root/micromamba/envs/latex-ocr/lib/python3.8/site-packages/paddle/fluid/libpaddle.soTraceback (most recent call last): File "main.py" ...
基于语法树对文章中的章节数据进行匹配
发表于2023-10-06
背景之前有尝试过使用正则提取一篇文章中的标题信息,并还原其中的层级,碰到以下几个问题: 正则规则复杂,调试不方便 正则对于匹配到标题中的编号信息需要在代码中进行二次处理,处理的步骤也很麻烦,需要考虑多种边界条件 当正则变动时,对应的代码也需要进行变动 突发奇想是否可以使用ANTLR4通过构建语法树的方式来解决这几个问题 构建语法树标题识别的思路常见标题样式可分为以下两种: (左侧分隔符) 编号 右侧分隔符 正文,比如: 第一章 第一节 1: 2: 左侧分隔符不一定存在,但是右侧分隔符会存在 编号.编号.编号 右侧分隔符 正文,比如: 1 1.1 1.1.1 对于列举式,像带有如下列所述等字眼,通过a 、b、c等序号一条一条列举出来的暂时不在文本考虑范围内。 开始构建语法树123456789101112131415161718192021222324252627282930313233343536373839grammar TitleDetect;//代表整个段落,有3个部分expr:title_begin ? num_seg splite;//代表段落第一部分 ...
hexo将图片发布为网站静态资源
发表于2023-10-01
问题目前部分博客页面所引用的图片存储在图床,存在以下几个问题: 每个图片需要单独上传,流程复杂,并且本地和图床的图片需要单独管理 当使用github作为图床时,存在隐私问题,如不小心上传敏感图片时,需要通过push --force等方式覆盖所有提交 当使用阿里云等对象存储需要付费 想要实现的目标 将图片,如png等和html发布为网站内静态资源,从而摆脱图床的限制 与typora编辑器无缝配合 将hexo仓库放在github private项目管理,将编译后的结果放在github.io进行展示 步骤(2027-08-09)今天发现不需要设置typora-root-url,有一个插件可以解决这个问题https://github.com/cocowool/hexo-image-link 步骤开启hexo自带的文章资源文件夹功能 https://hexo.io/zh-cn/docs/asset-folders.html#%E6%96%87%E7%AB%A0%E8%B5%84%E6%BA%90%E6%96%87%E4%BB%B6%E5%A4%B9 当开启这个功能之后,使用 hexo n ...
123
avatar
codexvn
文章
23
标签
40
分类
0
Follow Me
最新文章
使用Antlr4来解析P社游戏群星[stellaris]的科技树2025-05-18
在磁盘上安装LiveCD2025-04-25
Steam的P2P联机优化2024-11-22
实现一个能够自动删除的临时文件2024-08-09
让自定义注解支持配置属性注入2024-07-15
标签
SSL zeal SpringBoot \@SuperBuilder python TZ mamba hexo wsl Gzip antlr4 JDK EasyExcel Java 游戏 java liveCD 群星 Fiddler \@Builder https microconda NLP ANTLR4 JAVA \@Accessors Steam,P2P,LAN,N2N micromamba lombok mermaid Docker linux JAVA Spring 泰拉瑞亚 stellaris conda RestTemplate GC feign Https docker
归档
  • 五月 20251
  • 四月 20251
  • 十一月 20241
  • 八月 20241
  • 七月 20241
  • 一月 20242
  • 十月 20233
  • 九月 20221
网站资讯
文章数目 :
23
本站访客数 :
本站总访问量 :
最后更新时间 :
©2020 - 2025 By codexvn
框架 Hexo|主题 Butterfly