遊戲中幾種概率設計

2021-07-25 06:14:32 字數 1926 閱讀 5263

遊戲中常見的4種概率設計

1、常規做法,直接配置概率,程式直接判定

2、在1的基礎上,加個保底次數,當連續不發生的次數高於保底時,強制發生

3、設定基礎概率,事件不發生概率翻倍

4、設定陣列,將事件發生概率變成陣列元素

設定預計平均發生概率為1/20(20次發生1次),模擬10w次方案1~3後得結果(方案4就不模擬了)

附上各方案的模擬**

option explicit

sub propty1() '設定概率,直接比對

dim stat(1 to 10000, 1 to 10) as double, i as integer, j as integer

dim a as double, count as long

randomize

a = inputbox("輸入成功率", "成功率", "0.05")

for i = 1 to 10

for j = 1 to 10000

count = 1

do while rnd() > a

count = count + 1

loop

stat(j, i) = count

next j

next i

sheets("直接概率").range("a1:j10000") = stat

end sub

sub propty2() '在1的基礎上,設定保底次數

dim stat(1 to 10000, 1 to 10) as double, i as integer, j as integer

dim a as double, b as integer, count as long

randomize

a = inputbox("輸入成功率", "成功率", "0.035")

b = inputbox("輸入保底次數", "保底次數", "40")

for i = 1 to 10

for j = 1 to 10000

count = 1

do while rnd() > a and count < b

count = count + 1

loop

stat(j, i) = count

next j

next i

sheets("加保底").range("a1:j10000") = stat

end sub

sub propty3() '不成功機率翻倍

dim stat(1 to 10000, 1 to 10) as double, i as integer, j as integer

dim a as double, count as long

randomize

a = inputbox("輸入成功率", "成功率", "0.0038")

for i = 1 to 10

for j = 1 to 10000

count = 1

do while rnd() > count * a

count = count + 1

loop

stat(j, i) = count

next j

next i

sheets("不成功機率翻倍").range("a1:j10000") = stat

end sub

遊戲中任務系統設計

1 任務分類 遊戲中任務可以分為主線任務 支線任務 日常任務 周任務 節日活動任務,其中周任務和節日任務可以根據設定的日期進行開啟關閉,屬於重複性任務。2 遊戲條件 各類任務開啟條件 1 玩家等級 2 玩家攻擊力3 前置任務等等 完成條件 玩家進行任務進度是否達成 任務關閉 1 玩家領取獎勵後關閉任...

遊戲中幾種簡單的追蹤AI

一 基本追蹤ai 實現原理 當追蹤者的x y座標分別小於被追蹤者的x y座標事,追蹤者的x y自增 當追蹤者的x y座標分別大於被追蹤者的x y座標事,追蹤者的x y自減 假設追蹤者的座標是predatorx和predatory,被追蹤者的座標是preyx和prey,基本追蹤的演算法 如下 if p...

欺詐遊戲中的乙個概率問題

這幾天看 欺詐遊戲 為漫畫裡設計的各種情節深深震撼。如果自己進入遊戲中妥妥的被騙還要幫人數錢。看到第三卷時,女主角被騙參加一場賭博。簡化模型如下 雙方多輪對賭,每輪女主角贏的概率為1 3,對方贏的概率2 3,先贏10場者為勝利者。最終女主角輸了。請問女主角贏這場賭博的概率是多少?一開始就覺得女主角會...