【SRPG】理想的なダメージ計算
■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。
02/12/31 10:22ID:WNMKk/sT計算式を教えてください。
0002あぼーん
NGNG0003名前は開発中のものです。
02/12/31 12:02ID:QOQm3q7b0004名前は開発中のものです。
02/12/31 12:12ID:av2p0D210005名前は開発中のものです。
02/12/31 16:18ID:5FjExtCd0006名前は開発中のものです。
03/01/03 03:11ID:/nc7Stea/__ \
| | | |
(_) (__)
0007あぼーん
NGNG0008名前は開発中のものです。
03/01/04 23:45ID:LMdbArdlΣ log ( n+1 ) ^ 2
n=0
0009あぼーん
NGNG0010あぼーん
NGNG0011あぼーん
NGNG0012名前は開発中のものです。
03/01/07 08:58ID:xqQZ3H2A0013あぼーん
NGNG0014あぼーん
NGNG0015あぼーん
NGNG0016あぼーん
NGNG0017あぼーん
NGNG0018名前は開発中のものです。
03/01/10 18:45ID:sA5KHB8y0019名前は開発中のものです。
03/01/10 19:11ID:kRXKW7Z10020名前は開発中のものです。
03/01/10 20:54ID:2hvjyTyN0021あぼーん
NGNG0022名前は開発中のものです。
03/01/12 19:51ID:5Tw5MiHq≡≡≡≡≡≡≡ ∧ ∧ / ̄ ̄ ̄ ̄ ̄
U ∩ [] % 曰 (゚Д゚ ;) < こねぇなぁ。
_________|つ∽)_ \_____
―――――――――――
━┳━ ━┳━
 ̄ ┻  ̄ ̄ ̄┻ ̄ ̄ ̄ ̄
0023山崎渉
03/01/13 12:54ID:E42cj5iD0024名前は開発中のものです。
03/01/14 17:28ID:pqsO8Vcn( ´ {}`)のいぽー
l|l|l|l|l|l|
( )
|||
(__)_)
0025あぼーん
NGNG0026名前は開発中のものです。
03/01/16 07:37ID:OEJBzXz2適当な確率分布に従う乱数を発生させる方法が重要かなって思います。
たぶん、普通のゲームだと正規分布とかを使うんでしょうが、
ゲームの味付けとして、
攻撃力→分布の中央値(平均値)に影響を与える
素早さ→分布の分散に影響をあたえる(もしくは分布関数の形自体を変える)
とか、そうゆう感じでやるといいかなって思います。
実際は離散的な処理になるので、おもった通りの確率分布関数に従う乱数を
発生させるのは難しいかもしれません。(連続的な関数を考えて、それに従うようにするには
一旦一様分布に従う乱数を発生させて、それから条件処理などで形に合うものを作るのが現実的かな)
ちょっとスレの意図とちがくなったか。
0027名前は開発中のものです。
03/01/16 10:25ID:bGny01Ek俺は常にこれでやってる
(rand()+rand()+rand()+rand()+rand()+rand()+
rand()+rand()+rand()+rand()+rand()+rand())/6
素早さで分散を変化させる実験をやったけど、あんまり意味が無かったよ。
変化がほとんど実感できないしね。(実感できるようにすると今度はバランスがやばくなる)
実はばらばらのほうが強かったりする場面もあったりして(防御力の高い敵など)、
素早さで分散を変えるのは結構難しいと思うよ。
やはり、ダメージの分散は武器でやるべきだと思う。
選択肢として常に交換できるようなほうがいいんじゃないかな?
0028名前は開発中のものです。
03/01/17 02:05ID:RC6oUTxs| |
0029名前は開発中のものです。
03/01/17 06:33ID:oqgVQwdr正規分布だけでなく、ほかの分布を利用したりするのが戦略的に
面白くなるかもとおもいます。
あるRPGで大ダメージか0かといった武器が有ると思いますが、
それと同じ様に、自分でいろんな要素によるダメージの確率分布を考えながら、
ユニットや武器を選択するようにできると、結構どの武器が確実に強い
という概念がなくなってくるのではと思っています。
素早さで分散を変えるだけでなく、たとえばダメージの上限を変えずに
分布をひずませて、中央値だけ高くなるように設定するとか
そういう風にすれば、防御力の高い敵に大きなダメージを与える
ことがなくなると思います。
まあ、ちょっと面倒くさいかもしれません。
0030名前は開発中のものです。
03/01/17 07:10ID:qFrUFLxe( ´∀`)<http://www.boreas.dti.ne.jp/~keitarou/ten.html
/, つ
( ((_(_, )) )
しし'
003127
03/01/17 10:15ID:kCZSInihう〜ん、そういう方法もあるわけか。
分布をひずませる式で使えそうなのって、
俺にはせん断とガンマ補正くらいしか思いつかないんだけど、
せん断は線形代数の式だしなぁ、ひずませすぎると逆流
(っていう表現で通じるかな?値が一意に定まらなくなるってことです)
しそうな予感もする。やっぱりガンマ補正が適してるかな?
ほかに良いアイデアはがあるなら教えていただけますか?
と、いうことでガンマ補正の実験してみよ〜っと。
良いアイデアthx。
003226と29
03/01/18 00:14ID:KwdA7bi8ひずませるって言うと、ちょっと簡単な方法は思いつきません。
ガンマ補正はなんとなくわかるんですが、定式化するのは面倒かもと思います。
これは単にアイデアですが、
もし、離散的に任意の確率分布をもつ乱数がつくれるならば、正規分布でなくても
それを近似したものや、言ってしまうと2次関数で上に凸のような物(もちろん値域は0以上)でも
ある程度ごまかせると思います。(確率密度関数が二次関数で上に凸です)
すると上限の設定や、中央値の設定は非常に簡単になるかもと思います。
積分して確率が1になるように設定するだけですから、
2次間数をいくつか組み合わせれば不連続でもリーマン積分可能な物で、
その結果が1であれば確率を決定する事が出来ると思います。
(イメージ的には、上に凸の2次関数の山がはえているといった感じですか)
まあ、アイデアで実装した訳でないので簡単かどうかわかりません。
実装に関しては、たぶん一様分布に従う、離散的な乱数を発生させて、
それを設定した関数にあわせて階段状に組み合わせるというイメージで
なんとかなると思います。
0033名前は開発中のものです。
03/01/18 01:13ID:BwLoFhwf与えるダメージが100ポイントとしたら、そこから乱数で
ダメージ値の±20%(最大)の付加をつける、という感じにする。
低脳でスマンが。
0034名前は開発中のものです。
03/01/18 05:44ID:BpNkvBQa/ ・ / ';,
/ '; / ';
/ ;______/ ;
/ \
/ / \ \
/´ ( ) |____| ( ) |
| ///// ( | :| ) ///// |
| ( ) :| | ( ( |
| ) ( | | ) ) |
| ( ) '; / ( ( /
\ ) ( \/ ) ) ../
ヽ ........:::::::<
いいスレだったモナー 〜 お し ま い 〜
0035名前は開発中のものです。
03/01/18 08:28ID:T1dSp7smうん、その乱数の発生方法と加工方法についての議論だよ。
003626と29と32
03/01/20 02:10ID:FMqS9pi7適当にflashで作ってみました。
細かいところはいいかげんに作ってますので、まあ余興程度に。
最初は良いアイデアだと思ったんですが、
普通にもっと簡単な計算式を用いた方が良さそうです。
0037名前は開発中のものです。
03/01/20 06:18ID:pjuQaBtX0038名前は開発中のものです。
03/01/20 06:55ID:aQ3gHXNfxdy(x回y面ダイスを振る)の分散を調べるには
x層の再起呼び出し構造にしないとだめなのかな。
できれば再起呼び出しは使いたくないんだけど…。
0039名前は開発中のものです。
03/01/20 07:13ID:JfkG9jA0ループでは同じプログラムを書けない?
0040名前は開発中のものです。
03/01/20 09:31ID:3I/Bf5vZ/ ・ / ';,
/ '; / ';
/ ;______/ ;
/ \
/ / \ \
/´ ( ) |____| ( ) |
| ///// ( | :| ) ///// |
| ( ) :| | ( ( |
| ) ( | | ) ) |
| ( ) '; / ( ( /
\ ) ( \/ ) ) ../
ヽ ........:::::::<
いいスレだったモナー 〜 お し ま い 〜
004126
03/01/20 23:31ID:5A06PKBjなんだかさみしいですね・・。
それとも受験、試験と関係あるのかな・・。
>>38
上にあるようにループのほうが簡単かもしれないです。
再帰でも可能でしょう、でも使い方としてはループと同じかな・・(たぶん)。
0042名前は開発中のものです。
03/01/21 02:25ID:pd2KrwgN∧w∧ < オワリじゃ
__( ゚π ゚ )__ \________
\ y/ //
〈っ ==_cノ
(_†________)
0043名前は開発中のものです。
03/02/01 21:05ID:nKlZlaoffor(i=1;i<=x;i++){
s+=rand() % y;
}
0044名前は開発中のものです。
03/02/02 21:30ID:QHyJs7PL0045名前は開発中のものです。
03/02/03 16:57ID:2SFMFRGk( ・∋・)
彡、 )
|_ |_
__< `Д´> クケー!
/__ \
| | | |
(_) (__)
0046名前は開発中のものです。
03/02/03 21:12ID:JPJIqU860047名前は開発中のものです。
03/02/04 12:06ID:byf8yUEe/__ \
| | | |
(_) (__)
0048あぼーん
NGNG0049名前は開発中のものです。
03/02/06 16:13ID:TaEDzNps0050名前は開発中のものです。
03/02/06 18:47ID:hJ+VRGMlなんで?
というか、攻撃命中率に何か納得いかない。
これぐらいの命中率なら当たるだろと思ったらはずすし、
これならかわしてくれるだろと思ったら食らうし。
もしや俺開発者の手のひらの上で躍らされてる?
つーかスレ違いスマソ
0051名前は開発中のものです。
03/02/06 19:21ID:0TGi2Mbq/:\.____\
|: ̄\(∩´∀`) \ <先生!こんなのがありました!
|:在 |: ̄ ̄ U ̄:|
http://saitama.gasuki.com/wara/
0052sage
03/02/06 19:36ID:Grc2R/JX100%でなく255%が最大値だったりして
0053あぼーん
NGNG0054名前は開発中のものです。
03/02/27 14:03ID:cqSVIWs70055あぼーん
NGNG0056あぼーん
NGNG0057あぼーん
NGNG0058あぼーん
NGNG0059あぼーん
NGNG0060あぼーん
NGNG0061あぼーん
NGNG0062あぼーん
NGNG0063名前は開発中のものです。
03/05/30 23:22ID:4fOaNFX70064_
03/05/30 23:50ID:rHB/wVmt0065あぼーん
NGNG0066あぼーん
NGNG0067あぼーん
NGNG0068あぼーん
NGNG0069あぼーん
NGNG0070混沌太郎
04/03/07 04:00ID:8OsKSULixdyの分散は、
x*(y^2-1)/12
です。
0071名前は開発中のものです。
04/03/07 14:53ID:zdZbkyy9死ね低脳
0072名前は開発中のものです。
04/03/19 01:31ID:Es9gfikz攻撃力=ダメージ
防御力とか地形とか一切無し
防御すれば1/2になるけど
0073名前は開発中のものです。
04/03/19 06:35ID:QGkp3Hf9今の所まだ入れていないのか、使わないゲームなのかどっち?
後者ならどんなゲームなんだろう。HPと守備を一緒にする感じなのかな。
0074名前は開発中のものです。
04/03/20 13:40ID:X1KH8t8Iマジックギャザのようなものだろうね。
意外と「防御力はダメージの軽減率とする」ってレスが無かったな。
0075名前は開発中のものです。
04/04/03 15:10ID:/VX1eYxWFFTは防御力の概念がない。
防具はHP上昇。
0076名前は開発中のものです。
05/02/06 21:11:09ID:dqLXo3/j0077名前は開発中のものです。
05/02/08 12:20:40ID:7/e+Xm51自分の射程外の見えない所から狙撃される恐怖を演じさせてみたい。
0078えせ壊人
05/02/09 00:43:38ID:UN48S2s5sub R2(VAL){return int((R1(VAL^2))^0.5);}
sub R3(VAL){return (VAL-R2(VAL));}
## int(X)→Xを小数点以下切り捨て
## rand(X)→0〜Xの範囲の乱数
## X^Y→XのY乗
## 加害者攻撃力:ATK_DMG
## 被害者防御力:DEF_DMG
## 加害者素早さ:ATK_SPD
## 被害者残HP:DEF_HP
## 経過ターン数:FIG_TRN
(中略)
TMP_DMG = R2(ATK_DMG)-R3(DEF_DMG);
if ((R2(ATK_SPD+FIG_TRN) >= R3(DEF_SPD)) && (TMP_DMG > 0))
{DEF_HP = DEF_HP - TMP_DMG;}
理解できるよな
■ このスレッドは過去ログ倉庫に格納されています