私設SoS2オーナー応援BBS

新規発言一覧最新記事過去一覧検索ダウンロードページHOME

スレッド

└◇63:
Re[3]:Casino System Ver. 2.1について [moon] 09/25 21:49

 └◇64:Re[4]:Casino System Ver. 2.1について [初心者] 09/25 22:11
  ├◇65:Re[5]:Casino System Ver. 2.1について [初心者] 09/25 22:20
  │└◇67:Re[6]:Casino System Ver. 2.1について [moon] 09/25 22:31
  └◇66:Re[5]:Casino System Ver. 2.1について [moon] 09/25 22:26
   └◇68:Re[6]:Casino System Ver. 2.1について [初心者] 09/25 23:17
    ├◇69:Re[7]:Casino System Ver. 2.1について [初心者] 09/25 23:22
    │└◇71:Re[8]:Casino System Ver. 2.1について [moon] 09/25 23:36
    └◇70:Re[7]:Casino System Ver. 2.1について [moon] 09/25 23:34
     └◇72:Re[8]:Casino System Ver. 2.1について [初心者] 09/25 23:48
      └◇73:Re[9]:Casino System Ver. 2.1について [moon] 09/26 00:14
       └◇74:Re[10]:Casino System Ver. 2.1について [初心者] 09/26 00:21
        └◇75:Re[11]:Casino System Ver. 2.1について [moon] 09/26 08:40
         └◇76:ここだけは変更が必要 [moon] 09/26 08:53
          └◇77:Re:ここだけは変更が必要 [初心者] 09/26 17:22
           └◇78:景品としてのお金 [moon] 09/26 19:02<-last


63● Re[3]:Casino System Ver. 2.1について[ moon ] 2002 09/25 21:49
> 改造は行っていませんが、SoS本体といっしょにしました。
> ちなみに本体といっしょにする前は、メニューだけ表示されて
> その他は何も表示されませんでした。

それでは、関係ありそうな箇所を書きます。
・Perlのバージョンが5以上か?(エラーではないのでこれではないと思います)
・アスキーモードで転送をしたか?(これも違う気がする)
・設定部分の、
my @cards = (
  1,1,1,1,1,1,1,1,1,1,1,1,1, # クローバー
  1,1,1,1,1,1,1,1,1,1,1,1,1, # ダイヤ
  1,1,1,1,1,1,1,1,1,1,1,1,1, # ハート
  1,1,1,1,1,1,1,1,1,1,1,1,1, # スペード
  1 # ジョーカー
);

配布版でテストプレイをしてみましたが正常に動作しました。
上記に当てはまらない場合は再度ダウンロードして試してください。

# そもそも「山札の再構築に失敗」はデバッグ用に付いているだけのような物なので通常では絶対そこの処理に行かないはずなのです。(プログラムが間違っている場合を除く)
スレッド一覧


64● Re[4]:Casino System Ver. 2.1について[ 初心者 ] 2002 09/25 22:11
> それでは、関係ありそうな箇所を書きます。
> ・Perlのバージョンが5以上か?(エラーではないのでこれではないと思います)
> ・アスキーモードで転送をしたか?(これも違う気がする)
> ・設定部分の、
> my @cards = (
>   1,1,1,1,1,1,1,1,1,1,1,1,1, # クローバー
>   1,1,1,1,1,1,1,1,1,1,1,1,1, # ダイヤ
>   1,1,1,1,1,1,1,1,1,1,1,1,1, # ハート
>   1,1,1,1,1,1,1,1,1,1,1,1,1, # スペード
>   1 # ジョーカー
> );
>
> 配布版でテストプレイをしてみましたが正常に動作しました。
> 上記に当てはまらない場合は再度ダウンロードして試してください。
>
> # そもそも「山札の再構築に失敗」はデバッグ用に付いているだけのような物なので通常では絶対そこの処理に行かないはずなのです。(プログラムが間違っている場合を除く)
そうなんですか???
よっぽど珍しいんですねぇ〜・・・。
さてどうなんでしょうか・・・。
設定部分の、
my @cards = (
1,1,1,1,1,1,1,1,1,1,1,1,1, # クローバー
1,1,1,1,1,1,1,1,1,1,1,1,1, # ダイヤ
1,1,1,1,1,1,1,1,1,1,1,1,1, # ハート
1,1,1,1,1,1,1,1,1,1,1,1,1, # スペード
1 # ジョーカー
);
は変えなくてもいいんですよね?
そのままのはずですが・・・(汗
プログラムの間違いでしょうか?
たぶんSoS本体への追加と変更部分は間違いではないんだろうと想うんです。
早速もう一度ダウンロードしてやってみます。
スレッド一覧


65● Re[5]:Casino System Ver. 2.1について[ 初心者 ] 2002 09/25 22:20
ところで、本体への追加部分は
Main Programに
if($Fm{'mode'} eq 'casino'){&play_form;}を追加。
sub play_formのnormal_action;を
if($Fm{'mode'} ne 'casino'){&normal_action;}else{&casino_action;}に書き換え。
フラグ$csを追加。
normal_actionに
&input('radio','mode','casino','','カジノへ<br>');を追加。
質問なんですが、
ゲーム中でコイン($csの最初の部分)が手に入るようにする。
とはどういったことをすればいのでしょうか?
っと上の部分を残してはすべてOKですよね?
スレッド一覧


67● Re[6]:Casino System Ver. 2.1について[ moon ] 2002 09/25 22:31
> ところで、本体への追加部分は
> Main Programに
> if($Fm{'mode'} eq 'casino'){&play_form;}を追加。
> sub play_formのnormal_action;を
> if($Fm{'mode'} ne 'casino'){&normal_action;}else{&casino_action;}に書き換え。
> フラグ$csを追加。
> normal_actionに
> &input('radio','mode','casino','','カジノへ<br>');を追加。
> 質問なんですが、
> ゲーム中でコイン($csの最初の部分)が手に入るようにする。
> とはどういったことをすればいのでしょうか?
> っと上の部分を残してはすべてOKですよね?
>
OKだと思います。
コインは、例えば一定額買い物した場合に額に応じて増やすとか、ステラツィオのように探索中に低確率で見つかるとか、専用のアイテムを用意して増やすとかいろいろ出来ます。
スレッド一覧


66● Re[5]:Casino System Ver. 2.1について[ moon ] 2002 09/25 22:26
> 設定部分の、
> my @cards = (
> 1,1,1,1,1,1,1,1,1,1,1,1,1, # クローバー
> 1,1,1,1,1,1,1,1,1,1,1,1,1, # ダイヤ
> 1,1,1,1,1,1,1,1,1,1,1,1,1, # ハート
> 1,1,1,1,1,1,1,1,1,1,1,1,1, # スペード
> 1 # ジョーカー
> );
> は変えなくてもいいんですよね?
> そのままのはずですが・・・(汗
変えてないんですよね。何がおかしいのかわからない・・・。

> プログラムの間違いでしょうか?
> たぶんSoS本体への追加と変更部分は間違いではないんだろうと想うんです。
> 早速もう一度ダウンロードしてやってみます。
これでもまた同じ症状になる場合は、sub get_cardのforeach(1..$number){の上に以下の文を追加してエラー出力を連絡して欲しいのですが。
  &error("$number,$#cards,$cards[0],$cards[1],$cards[2],$#exist_cards,$exist_cards[0],$exist_cards[1],$exist_cards[2]");
スレッド一覧


68● Re[6]:Casino System Ver. 2.1について[ 初心者 ] 2002 09/25 23:17
> これでもまた同じ症状になる場合は、sub get_cardのforeach(1..$number){の上に以下の文を追加してエラー出力を連絡して欲しいのですが。
>   &error("$number,$#cards,$cards[0],$cards[1],$cards[2],$#exist_cards,$exist_cards[0],$exist_cards[1],$exist_cards[2]");
2,-1,,,,-1,,,
と表示されましたが・・・(汗
なんのことやらさっぱり・・・(汗
スレッド一覧


69● Re[7]:Casino System Ver. 2.1について[ 初心者 ] 2002 09/25 23:22
ごめんなさい、追加です。
選んだゲームによって文字が違うようです。
ブラックジャックの場合2,-1,,,,-1,,,で
ポーカーの場合5,-1,,,,-1,,,で
ビンゴの場合25,-1,,,,-1,,,で
ミニバカラの場合BANKER TIE PLAYER が表示されいずれも選択すると2,-1,,,,-1,,,表示されます。
スレッド一覧


71● Re[8]:Casino System Ver. 2.1について[ moon ] 2002 09/25 23:36
> ごめんなさい、追加です。
> 選んだゲームによって文字が違うようです。
> ブラックジャックの場合2,-1,,,,-1,,,で
> ポーカーの場合5,-1,,,,-1,,,で
> ビンゴの場合25,-1,,,,-1,,,で
> ミニバカラの場合BANKER TIE PLAYER が表示されいずれも選択すると2,-1,,,,-1,,,表示されます。

あ、これは-1が含まれているかが重要なのでそれ以外の数字はそれほど気にしなくても良いです。(本当は,,の間も数字になるはず。)
スレッド一覧


70● Re[7]:Casino System Ver. 2.1について[ moon ] 2002 09/25 23:34
> > これでもまた同じ症状になる場合は、sub get_cardのforeach(1..$number){の上に以下の文を追加してエラー出力を連絡して欲しいのですが。
> >   &error("$number,$#cards,$cards[0],$cards[1],$cards[2],$#exist_cards,$exist_cards[0],$exist_cards[1],$exist_cards[2]");
> 2,-1,,,,-1,,,
> と表示されましたが・・・(汗
> なんのことやらさっぱり・・・(汗
>

上からわかること、@cardsの配列が空。(あってはならないことなんだけどな〜)
応急処置として、sub casino_action{の前の変数設定を全てsub casino_action{の下の行に移動(コピーではなく)して移動してきたもののmyを消してみてください。
そして、その後に先ほどの&error("〜");の出力を確認。(-1の数字が無ければとりあえずはOK)

最後に駄目元で、require 'casino.pl';を現在位置から&casino_action;の前に移動してみてください。
スレッド一覧


72● Re[8]:Casino System Ver. 2.1について[ 初心者 ] 2002 09/25 23:48

> 上からわかること、@cardsの配列が空。(あってはならないことなんだけどな〜)
> 応急処置として、sub casino_action{の前の変数設定を全てsub casino_action{の下の行に移動(コピーではなく)して移動してきたもののmyを消してみてください。
> そして、その後に先ほどの&error("〜");の出力を確認。(-1の数字が無ければとりあえずはOK)
>
> 最後に駄目元で、require 'casino.pl';を現在位置から&casino_action;の前に移動してみてください。

今度は2,51,1,1,1,51,0,1,2 などのように表示されました。
require 'casino.pl';ってどこにあります?
スレッド一覧


73● Re[9]:Casino System Ver. 2.1について[ moon ] 2002 09/26 00:14
> 今度は2,51,1,1,1,51,0,1,2 などのように表示されました。
これが正常な状態です。

> require 'casino.pl';ってどこにあります?
require 'casino.pl'を追加しませんでしたか?(casino.plの説明では記述が抜けているのに今気付きましたが、動いているということは足してありますよね・・・)

とりあえず、myを取った場合で動いたようなのでmyだったところをlocalに変更して確かめてください。(動いただけで正しい動作かはわかりませんが・・・)
でも、サブルーチン外のmyを認識しないのはどうしてなのだろう・・・。Perlのバージョンで違うとも思えないし。

# 遅いので今日はこれまでとします。
# 環境が特殊なのでなければ解決すると思いますのでほどほどにがんばってください。
スレッド一覧


74● Re[10]:Casino System Ver. 2.1について[ 初心者 ] 2002 09/26 00:21

> とりあえず、myを取った場合で動いたようなのでmyだったところをlocalに変更して確かめてください。(動いただけで正しい動作かはわかりませんが・・・)
> でも、サブルーチン外のmyを認識しないのはどうしてなのだろう・・・。Perlのバージョンで違うとも思えないし。
>
> # 遅いので今日はこれまでとします。
> # 環境が特殊なのでなければ解決すると思いますのでほどほどにがんばってください。
動いたようです♪♪
しかし、もう一つ普通な質問ですけど、
探索にてコインを発見する設定はどうやったらいいんでしょうか?
アイテムのスキル等がよくわかりません。
まったく初心者なのでよろしくお願いします。
スレッド一覧


75● Re[11]:Casino System Ver. 2.1について[ moon ] 2002 09/26 08:40
> 動いたようです♪♪
> しかし、もう一つ普通な質問ですけど、
> 探索にてコインを発見する設定はどうやったらいいんでしょうか?
> アイテムのスキル等がよくわかりません。
> まったく初心者なのでよろしくお願いします。
>

ふと思ったのですが、もしかして、sos2.cgiにcasino.plをコピペして追加したのではないですか?(これならmyが働いていないのも納得できるのですが)
一応、casino.plはsos2.cgiからrequire 'casino.pl';で呼び出して使用するように出来ているので。
(動いたのなら現状でも大丈夫かもしれませんが・・・)

コインを探索時に出す場合は、例えばお金の判定を利用して以下のように変更。(アイテムスキルを使用しない方法)
if ($idt !~ /Gl/) { push(@items,"$inm△$idt"); &joinitem('i') }
else { $mn += substr($idt,0,4) }
を、
if ($idt !~ /Gl/) { push(@items,"$inm△$idt"); &joinitem('i') }
elsif(rand(1000)<1){$inm = int(substr($idt,0,4)).'コイン'; $cs += $inm;} # お金の確率の1/1000でコインが手に入る。
else { $mn += substr($idt,0,4) }

探索は回数が出来るので、確率が高いとコインが大量に手に入ってしまい好ましくないです。
スレッド一覧


76● ここだけは変更が必要[ moon ] 2002 09/26 08:53
my $casino_item = './itm.dat';
の、./item.datを自分で用意した景品ファイルに変更してください。
スレッド一覧


77● Re:ここだけは変更が必要[ 初心者 ] 2002 09/26 17:22
その景品のことですが、
アイテム名<>ステータス<>コインの枚数<>ですよね?
10G<>00100000Gl<>1<>
のように設定をしたらなぜか、
10Gはお金ではなく、アイテムとして交換してしまったのです・・・。
どうなんでしょうか?
スレッド一覧


78● 景品としてのお金[ moon ] 2002 09/26 19:02
> その景品のことですが、
> アイテム名<>ステータス<>コインの枚数<>ですよね?
> 10G<>00100000Gl<>1<>
> のように設定をしたらなぜか、
> 10Gはお金ではなく、アイテムとして交換してしまったのです・・・。
> どうなんでしょうか?

ええと、デフォルトではお金は設定できません。
お金に交換したい場合は、sos2のsub find_itemのお金の処理を参考にしてください。(たぶん、数行追加するだけ)
スレッド一覧

CGIROOM