当前位置: 首页 > news >正文

Unity开发——好用的数值概率公式

1、血量、伤害两个因素作用,击杀目标

正常状态下:hp -= attackValue;

特殊状态下:attackValue *=2;        //伤害翻倍

如飞机/坦克大战中,击杀对方;受到伤害时,装备道具磨损失效;

public int hp=10;
private bool isDebuff;public void AttackEnemy(int attackValue)
{if (isDebuff) attackValue *= 2;hp -= attackValue;if (hp <= 0) isDead = true;
}

--*************************************************************************************************--

2、血量(不可变)、伤害、以及随机成功概率三个因素作用,概率性击杀目标

伤害数值设计思路:

targetRate是随机出来的此次目标概率;hp越大越难,attackValue越大越容易;

若各因素叠加后的概率大于目标概率,则能击杀成功。

随机数:targetRate = Mathf.Floor(Random.Range(0,100));

公式1:if (targetRate <=( 50-(hp-attackValue)  )/2 ){isOk = true;}    50表示基础概率;

公式2:if (targetRate <= attackValue*3 - hp/10){isOk = true;}

如捕鱼达人中每次成功攻击鱼时捕获成功的概率;

private bool isOk = false;
public int hp =10;public void CatchItem(int attackValue){int targetRate = Mathf.Floor(Random.Range(0,100));//随机出此次目标概率if (targetRate<=(50-(hp-attackValue))/2){isOK = true;}if (targetRate<= attackValue*3-hp/10){isOK = true;}
}

--**********************************************************************************************--

3、物体的位置,抖动系数确定震动随机范围,实现自然的随机震动

震动大小:andom.Range(0f, 振动系数) - 振动系数* 0.5f

震幅衰减:震动系数= 震动系数 / 1.05f;

停止震动:if ( 震动系数<0.05f )  { 震动系数=0; }

如:被攻击时,画面/玩家晃动。

using UnityEngine;/// <summary>
/// 被攻击时,玩家产生的震动方法
/// </summary>
public class Shake : MonoBehaviour
{public bool isShake= false;                     //是否允许震动private float shakeRate = 5;                    //震动系数void Update(){if (isShake){//x方向移动transform.position = new Vector3((Random.Range(0f, shakeRate)) - shakeRate * 0.5f, transform.position.y, transform.position.z);//z方向移动transform.position = new Vector3(transform.position.x, transform.position.y, (Random.Range(0f, shakeRate)) - shakeRate * 0.5f);shakeRate = shakeRate / 1.05f;        //减小振幅if (shakeRate < 0.05f)                //振幅过小时,停止被撞击效果{shakeRate = 0;                    //振幅系数置0isShake= false;                   //禁止震动}}else shakeRate= 5;                        //不需要震动时,把震动系数还原}
}

数值计算参考来源:siki学院课程

相关文章:

Unity开发——好用的数值概率公式

1、血量、伤害两个因素作用&#xff0c;击杀目标 正常状态下&#xff1a;hp - attackValue; 特殊状态下&#xff1a;attackValue *2; //伤害翻倍 如飞机/坦克大战中&#xff0c;击杀对方&#xff1b;受到伤害时&#xff0c;装备道具磨损失效&#xff1b; public int…...

微信小程序的自定义组件

一、创建自定义组件 &#xff08;1&#xff09;定义&#xff1a; 把页面重复的代码部分封装成为一个自定义组件&#xff0c;以便在不同的页面中重复使用&#xff0c;有助于代码的维护。 &#xff08;2&#xff09;组成&#xff1a; 自定义组件的组成&#xff1a;json文件&a…...

【算法刷题day57】Leetcode:739. 每日温度、496.下一个更大元素 I

文章目录 Leetcode 739. 每日温度解题思路代码总结 Leetcode 496.下一个更大元素 I解题思路代码总结 草稿图网站 java的Deque Leetcode 739. 每日温度 题目&#xff1a;739. 每日温度 解析&#xff1a;代码随想录解析 解题思路 维护一个单调栈&#xff0c;当新元素大于栈顶&a…...

【EXCEL_VBA_实战】两组数据比对是否一致(字符串数组)

工作背景&#xff1a;比对两组数据是否一致&#xff08;位置非一一对应&#xff09; 思路构建&#xff1a;两组数据转换为两组字符串数组&#xff0c;比对所包含元素是否相同 问题点&#xff1a;A数组的第一个元素不一定与B数组的第一个元素对应&#xff0c;此时无法通过公式…...

寻找峰值 ---- 二分查找

题目链接 题目: 分析: 因为题目中要找的是任意一个峰值即可, 所以和<山脉数组的峰值索引>这道题差不多因为峰值左右都小于峰值, 所以具有"二段性", 可以使用二分查找算法如果nums[mid] < nums[mid 1], mid一定不是峰值, 所以left mid 1如果nums[mid] &…...

C语言--输入一个整数代表秒数,将这个数转化为对应的小时数、分钟数、和秒数

#include <stdio.h>int main() {int h,m,s;scanf("%d",&s);ms/60;//计算分钟数ss%60;//剩余的秒数hm/60;//计算小时数mm%60;//剩余的分钟数printf("%d %d %d\n",h,m,s); } //先将分钟数求出&#xff0c;再将多出的秒求出作为最后的打印的s //再用…...

二分搜索技术

非递归算法; #include<iostream> using namespace std; int BinarySearch(int a[],int x,int n) {int right0,leftn-1;while(right<left){int mid(rightleft)/2;if(x<a[mid])leftmid-1;else if(x>a[mid])rightmid1;elsereturn mid;}return -1; } int main() {i…...

docker容器安装nexus3以及nexus3备份迁移仓库数据

一、安装步骤 1.搜索nexus3镜像 docker search nexus3 2.拉取镜像 docker pull sonatype/nexus3或者指定版本 docker pull sonatype/nexus3:3.68.0 3.查看拉取的镜像 docker images | grep "nexus3" 4.启动nexus服务 直接启动 docker run -d --name nexus3 -…...

无线领夹麦克风哪个品牌音质最好,揭秘无线领夹麦哪个牌子好用

​随着社交媒体和内容创作的兴起&#xff0c;清晰可靠的音频捕捉已成为打造高品质作品的关键要素。无线领夹麦克风因其轻巧设计和用户友好的接口而受到青睐&#xff0c;它能够确保你的声音在任何环境下都能被完美捕捉。经过精心测试和对比&#xff0c;以下几款无线领夹麦克风是…...

pcd点云江湖之处处碰壁:点云文件pcd加载02

江湖好汉&#xff0c;休走&#xff0c;废了半天力气把threejs自带的代码搬迁到自己项目中了&#xff0c;高高兴兴给领导看。领导一句话&#xff0c;顿时无奈&#xff1a;领导曰&#xff1a;点云单色太丑&#xff0c;能不能按照分类展示&#xff1f; 一句话难道英雄好汉&#xf…...

【SQL国际标准】ISO/IEC 9075:2023 系列SQL的国际标准详情

目录 &#x1f30a;1. 前言 &#x1f30a;2. ISO/IEC 9075:2023 系列SQL的国际标准详情 &#x1f30a;1. 前言 ISO&#xff08;国际标准化组织&#xff0c;International Organization for Standardization&#xff09;是一个独立的、非政府间的国际组织&#xff0c;其宗旨是…...

15.1数组练习题

&#xff08;1&#xff09;求出数组中的最大值 &#xff08;2&#xff09;j将数组中的值转为字符串&#xff0c;并用"|"分隔 &#xff08;3&#xff09;选出数组中大于10的数 &#xff08;4&#xff09;数组去重 &#xff08;5&#xff09;数组反转 &#xff08;6&am…...

Flink 任务调度策略:Lazy from Sources 深入解析

Apache Flink 的任务调度策略对于优化流处理作业的性能和资源利用率至关重要。其中&#xff0c;“Lazy from Sources”&#xff08;源自源头的惰性调度&#xff09;是一种策略&#xff0c;它在数据实际到达并且准备执行时才启动下游任务。与Eager调度相比&#xff0c;Lazy策略更…...

【NumPy】关于numpy.reshape()函数,看这一篇文章就够了

&#x1f9d1; 博主简介&#xff1a;阿里巴巴嵌入式技术专家&#xff0c;深耕嵌入式人工智能领域&#xff0c;具备多年的嵌入式硬件产品研发管理经验。 &#x1f4d2; 博客介绍&#xff1a;分享嵌入式开发领域的相关知识、经验、思考和感悟&#xff0c;欢迎关注。提供嵌入式方向…...

探寻最强性能云电脑:ToDesk云电脑、无影云、网易云游戏、易腾云横测大比拼

大家好&#xff0c;我是herosunly。985院校硕士毕业&#xff0c;现担任算法研究员一职&#xff0c;热衷于机器学习算法研究与应用。曾获得阿里云天池比赛第一名&#xff0c;CCF比赛第二名&#xff0c;科大讯飞比赛第三名。拥有多项发明专利。对机器学习和深度学习拥有自己独到的…...

回溯法——(2)n皇后问题(C语言讲解)(LeetCode51 N皇后思想)(4皇后棋盘画图举例)(附代码)

目录 一、问题概括 二、算法分析 三、举例&#xff08;4皇后棋盘&#xff09; 四、算法实现 4.1运行结果&#xff1a; 51. N 皇后 - 力扣&#xff08;LeetCode&#xff09; 一、问题概括 n皇后问题是19世纪著名数学家高斯于1850年提出的。 问题是&#xff1a;在nn的棋盘上…...

数据库系统概论(第5版)复习笔记

笔记的Github仓库地址 &#x1f446;这是笔记的gihub仓库&#xff0c;内容是PDF格式。 因为图片和代码块太多&#xff0c;放到CSDN太麻烦了&#xff08;比较懒&#x1f923;&#xff09; 如果感觉对各位有帮助的话欢迎点一个⭐\^o^/...

数仓领域,Serving 是什么概念?

在数据仓库&#xff08;Data Warehouse&#xff09;和更广泛的数据工程领域中&#xff0c;“Serving”通常指的是将处理和优化后的数据提供给最终用户或应用程序的过程。这包括数据的查询、检索、展示等操作&#xff0c;使得数据能够在决策支持、报告、分析、或机器学习等应用中…...

Python筑基之旅-MySQL数据库(三)

目录 一、数据库操作 1、创建 1-1、用mysql-connector-python库 1-2、用PyMySQL库 1-3、用PeeWee库 1-4、用SQLAlchemy库 2、删除 2-1、用mysql-connector-python库 2-2、用PyMySQL库 2-3、用PeeWee库 2-4、用SQLAlchemy库 二、数据表操作 1、创建 1-1、用mysql-…...

(全面)Nginx格式化插件,Nginx生产工具,Nginx常用命令

目录 &#x1f3ab; 前言 &#x1f389; 开篇福利 &#x1f381; 开篇福利 x2 Double happiness # 介绍 # 地址 # 下载 &#x1f4bb; 命令及解析 # 整个文件系统中搜索名为nginx.conf的文件 # 编辑nginx.conf文件 # 重新加载配置文件 # 快速查找nginx.conf文件并使…...

造相-Z-Image-Turbo亚洲LoRA WebUI教程:多分辨率适配(768x1024/1024x1024)

造相-Z-Image-Turbo亚洲LoRA WebUI教程&#xff1a;多分辨率适配&#xff08;768x1024/1024x1024&#xff09; 提示&#xff1a;本文介绍的镜像已预装所有依赖和环境&#xff0c;开箱即用&#xff0c;无需手动配置 1. 开篇&#xff1a;为什么需要这个工具&#xff1f; 如果你正…...

新手必看:AI人脸隐私卫士从部署到使用,完整操作指南

新手必看&#xff1a;AI人脸隐私卫士从部署到使用&#xff0c;完整操作指南 1. 引言&#xff1a;为什么需要AI人脸隐私保护&#xff1f; 在日常生活中&#xff0c;我们经常需要分享照片到社交媒体或工作群聊。但你是否想过&#xff0c;这些照片中可能无意间暴露了他人的隐私信…...

PyJWT与云原生应用集成的终极指南:如何构建安全的微服务架构

PyJWT与云原生应用集成的终极指南&#xff1a;如何构建安全的微服务架构 【免费下载链接】pyjwt JSON Web Token implementation in Python 项目地址: https://gitcode.com/gh_mirrors/py/pyjwt PyJWT&#xff08;Python JSON Web Token&#xff09;是一个功能强大且易于…...

Legcord:革命性Discord轻量级客户端,10大特性全面解析

Legcord&#xff1a;革命性Discord轻量级客户端&#xff0c;10大特性全面解析 【免费下载链接】ArmCord Legcord is a custom client designed to enhance your Discord experience while keeping everything lightweight. 项目地址: https://gitcode.com/gh_mirrors/ar/ArmC…...

Apache NetBeans社区生态解析:如何参与贡献与获取支持

Apache NetBeans社区生态解析&#xff1a;如何参与贡献与获取支持 【免费下载链接】netbeans Apache NetBeans 项目地址: https://gitcode.com/gh_mirrors/ne/netbeans Apache NetBeans作为一个功能强大的开源IDE&#xff08;集成开发环境&#xff09;&#xff0c;拥有一…...

北京做网站SEO优化有什么技巧_北京做网站关键词优化需要多长时间

北京做网站SEO优化有什么技巧 在北京这样一个竞争激烈的市场&#xff0c;做网站SEO优化显得尤为重要。SEO&#xff08;Search Engine Optimization&#xff0c;搜索引擎优化&#xff09;是提升网站在搜索引擎结果中排名的关键手段&#xff0c;而北京的市场竞争尤其激烈&#x…...

2.4G射频微带线设计实战:从阻抗匹配到PCB布局优化

1. 2.4G射频微带线设计基础 搞过Wi-Fi/BLE硬件开发的朋友都知道&#xff0c;射频走线是板上最难伺候的主儿。特别是2.4GHz这个频段&#xff0c;信号波长只有12.5cm&#xff0c;PCB上随便一根走线都可能变成天线。我当年第一次画射频板时&#xff0c;信号强度直接掉了20dB&#…...

嵌入式工程师的中年危机与转型策略

1. 嵌入式工程师的中年危机&#xff1a;一个行业的缩影44岁的梧桐&#xff0c;一位拥有21年嵌入式开发经验的资深架构师&#xff0c;在2023年的寒冬里收到了人生第一封解约通知书。这个场景让我想起公司上周的招聘会——38岁的候选人简历被默默放进了"待定"文件夹&am…...

Unity URP SRP Batcher 完全指南 URP/HDRP 下的核心批处理机制,大幅降低 CPU 开销

SRP Batcher 是 Unity Scriptable Render Pipeline (SRP) 的核心优化技术&#xff0c;通过减少 CPU 与 GPU 之间的数据传输开销&#xff0c;显著提升渲染性能。本文将深入解析其工作原理、使用方法及最佳实践。一、什么是 SRP BatcherSRP Batcher 是 Unity 为 Scriptable Rende…...

论文AI率太高怎么降?去AI化实用技巧与工具避坑指南

“整篇论文都是自己原创的&#xff0c;就用AI顺了下逻辑&#xff0c;结果学校AIGC检测直接飙到73%&#xff0c;当场被打回”“熬了3个通宵手动改&#xff0c;AI率才降了不到12%&#xff0c;离答辩只剩一周根本赶不完”“随便找了个降AI工具&#xff0c;把我专业名词改得乱七八糟…...