Minecraft
未读 前言
本文将该 mod 的相关物品合成和使用方法进行了较为细致的讲解,帮助你较快掌握该 mod 的相关特性或者玩法,但是并没有涉及到物品属性的更改,如果你需要对相关物品进行属性修改,或许你可以在我的文章【Simple Animated Guns 枪械属性修改】中找到灵感。
我的环境
平台:Windows11 Pro-23h2
Minecraft 游戏版本:1.20.1
Mod 列表:
其中,Iris Shaders 为光影运行需要,并非必须 mod
Simple Animated Guns (以下将简称为 S.A.G) 版本:1.3
汉化相关物品描述
我自己使用的是 i18n,该 mod 很方便,直接下载对应版本进行安装即可。
该 mod 的 MC 百科地址:[i18n] 自动汉化更新
S.A.G 的相关内容
S.A.G 模组在游戏内将会占据三页内容:
S.A.G Attachments:枪械配件
S.A.G Crafting:制作相关
S.A.G Guns & Ammo:枪械和子弹
新增加的可制作物品
在上述三页内容中的 Crafting 中,可以知道 ...
Minecraft
未读
环境:Windows11、Java"17.0.11" 2024-04-16 LTS 64-Bit、PCL2 或其他启动器
工具:Vscode
前言
本文是对该 mod 进行枪械属性修改,如果你需要这个 mod 的游玩指南或者教程,欢迎你阅读我写的文章:【Simple Animated Guns 游玩指南 / 教程】
正文
省略我半小时的翻看源代码的心路历程,我们直入正题吧… 本文并不复杂,只要不是纯小白,都可一战
在此之前你需要准备的是:
原 mod 项目
一个能用的编辑器,如 Vscode、Sublime
Java17 环境
Clone 或下载原作者项目
原作者项目地址:Simple-Animated-Guns
由于没有官方修改枪械属性的相关教程,所以我的思路是通过开源的源工程文件进行代码审计,修改好属性后将其编译成一个我们的自定义版本。本文仅供学习参考。
赞美原作者!!!Fabric 的枪械 mod 真的很少!
进行以下的步骤前,请先确认你操作的分支是否为你需要的分支:
比如我玩的 BetterMC 是 1.20.1 的,所以我就选择了对应的版本。然后我们需要把 ...
创建 demo 工程
命令为 npx create-react-app react-basic
严格模式
React18 默认创建的工程开启了严格模式。React 应用在开发环境下若使用了 React 的严格模式(<React.StrictMode>),在渲染过程中,所有组件都会被调用两次。这是为了帮助检测不严谨的代码和潜在的问题。
具体在 src\index.js 中将 <React.StrictMode> 标签去掉即可
12345678910import React from "react";import ReactDOM from "react-dom/client";import App from "./App";const root = ReactDOM.createRoot(document.getElementById("root"));root.render( <React.StrictMode> <App /> </React.StrictMode>);
即:
123456import Reac ...
本项目是基于 uni-app 技术栈开发的,能够运行在多端 (微信小程序、h5、ios/Android) 的移动端商城项目。
重点:接口需要 token 的地方,header 中, Access-Token:${token}
重点:接口需要 platform 的地方,header 中,platform: h5 或 mp-weixin
接口调用基础地址:http://smart-shop.itheima.net/index.php?s=/api
关于接口的说明:分为了 http 状态码和接口中 code 对应码
码值
说明
http 状态码 500
服务器端异常
http 状态码 404
服务器端异常
http 状态码 401
授权信息不正确
测试环境,登录短信验证码统一为:246810 (不再提供真实的短信验证服务)
接口文档地址
Vant2 官网地址
本项目使用 ESLint+Standard config 的代码规范标准
项目结构
## 一级路由配置
将每个基础的一级页面以文件夹形式存放于 views 包中。包括:
具 ...
目标:将打包好的 Vue2 | Vue3 项目部署到 github pages 用作项目 demo
我将尽可能的讲述打包前后可能遇到的绝大部分问题和原因,希望能有所帮助。
打包前的问题
打包其实实际上不会碰到什么大问题,我们讨论的问题实际是打包之后想要将打包结果也就是静态页面进行部署而发生的问题:
白屏问题
刷新 404 问题
跨域问题
但要想讨论上述问题,我们得研究好打包前的配置问题,也就是为什么会出现上述问题?
请求地址配置问题
首先我这里默认你的项目中二次封装了 axios 并配置了 base 请求基地址(别告诉我请求地址是 localhost 哈),那么你的请求配置方法可能是:
主动暴露 base
12345base: 'http://your.domain.com'api: '/api/end-point'# The final request form may look like:http://your.domain.com/api/end-point
或者你是这样配置的(环境为 Vue3+vite):
12345base: import.meta.env. ...
题目链接:https://buuoj.cn/match/matches/151/challenges
启动环境之后,玩一会,进行抓包:
得到 score 分数和 checkcode,因为要玩到 1000000 分,所以直接修改分数 score 为目标分数发出看看:
看来行不通,可能还要伪造 checkcode 和 tm 时间戳。
f12 查看 js 代码,ctrl+f 搜索 checkcode,找到定义:
1var checkCode = "DASxCBCTF" + salt;
这里这个 salt 并不知道是什么,还需要查看代码分析。
知道定义之后,再查看另外两个搜索结果:
判断关键信息:
123456body: "score=" + parseInt(e).toString() + "&checkCode=" + md5(parseInt(e).toString() + t) + "&tm=" + (+new Date()).toString().substring(0, 10);
根据抓包结果,我们知道数据格式是:
1score=xxx&am ...
UniApp 常见的页面生命周期
1、onLoad(options)
页面加载时触发。
常用于初始化页面数据,从页面 URL 的参数 options 获取数据。
只在页面首次加载时触发一次。
1234onLoad(options) { // 可以从options中拿到url查询参数 console.log('页面加载', options);}
2、onShow()
页面显示时触发,可能在页面首次加载后,也可能在页面重新显示时(如从后台切回前台)。
常用于刷新页面数据或 UI 状态。
123onShow() { console.log('页面显示');}
3、onReady()
页面初次渲染完成时触发,只触发一次。
页面结构加载和绘制完成后触发,可以在此进行与 UI 相关的操作。
123onReady() { console.log('页面初次渲染完成');}
4、onHide()
页面被隐藏时触发,比如跳转到其他页面或应用切换到后台时。
常用于暂停页面中的定时器或动画。
123onHide() { console.log('页面隐藏');}
5、o ...
为什么需要防抖
防抖主要应用在一些高频率触发的事件中,比如:scroll 滚动、input 输入、resize 缩放等,能显著降低性能开销。
什么是防抖
防抖的核心思想是:高频率触发的事件中,仅保留最后一次操作,之前的操作都会被取消。
举例来说,当你在页面中不断滚动,防抖函数会等待设定的一段时间,如果这段时间内没有再次触发滚动,才会执行处理逻辑;否则会重新计时,直到用户 “安静下来” 再执行操作。
防抖函数的一般形式如下:
12345678910111213function debounce(fn, delay) { // fn为传入的函数名 let timer = null; // 用来保存定时器的 ID return function (...args) { // 返回一个闭包函数 if (timer) clearTimeout(timer); // 若已有定时器则清除它 timer = setTimeout(() => { // 设置一个新的定时器 // 当延时结束时,执行传入的函数,并绑定当前的上下文和参数 fn. ...
1、cd 命令到你想要起服务的目录
12cd /var/www/html/*仅举例*/
2、在终端运行
123python3.8 -m http.server 7777(python3)python3.8 -m SimpleHTTPServer 6666(python2)
请将上面的四位数数字端口号替换成你想要的端口,不出意外你会得到
这样就是正常的了。
3、连接
Linux 系统下:
如果你是虚拟机,请使用 ifconfig 查询到你的 ip,然后用 你查询到的 ip: 端口 进行连接;
如果你是公网服务器,直接使用 你的公网 ip: 端口 即可(请记得开放你所需要的端口)
Win 的话,查询 ip 请使用 ipconfig
连接操作和上面一致
连接效果如下
问题情况
本地预览查看明明使用图床的图片缺无法正常显示,报 403 问题,显示如下
原因
http 请求体的 header 中有一个 referrer 字段,用来表示发起 http 请求的源地址信息,这个 referrer 信息是可以省略但是不可修改的,只能设置是否带上这个 referrer 信息,而不能定制 referrer 里面的值。
服务器端在拿到这个 referrer 值后就可以进行相关的处理,比如图片资源,可以通过 referrer 值判断请求是否来自本站,若不是则返回 403 或者重定向返回其他信息,从而实现图片的防盗链。上面出现 403 就是因为,请求的是别人服务器上的资源,但把自己的 referrer 信息带过去了,被对方服务器拦截返回了 403。
解决
前端可以通过 meta 来设置 referrer policy (来源策略),具体参考这里。浏览器中 referrer 默认的值是 no-referrer-when-downgrade,就是除了降级请求的情况以外都会带上 referrer 信息。降级请求是指 https 协议的地址去请求 http 协议,所以 ...
