忍者ブログ
はじかきれんしゅうちょう いろいろ
Admin  +   Write
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。


コードが見えにくいので新しい記事は↓に書くことにしました。

移動先
PR
タイトルの通りです!!!!

ブラウザ版、パソコンとipadだとUIは通常のままなんですが
スマフォで見るとモバイル版UIになってるんですね。

ゲームの画面サイズをいじっている場合は
この辺も見たほうがいいかもな感じです。

・gui画像
・screen.rpy
・gui.rpy

モバイル設定ってかいてあるところ

とはいえ何が何を設定してるか解読できなくて
てきと~にいじってはマスター出し直してアップロードしなおして
・・・とかいう頭悪いことをやっていました。
ぷりし~さんごめんなさい(1日10回までアップロードできるよ)

↑追記:
メニューの「アクション」左の「Android」
の右にあるエミュレータを使えばパソコン上で
モバイルUIの見え方を確認できまするぞ!と教えてもらいました・・・

メッセージボックスがとにかく崩れる。ってことで
メッセージボックスの座標とかの設定→gui.rpy
メッセージボックスのボタン(スキップとか)の設定→screens.rpy

gui.rpyで
        gui.name_xpos = 77#名前ボックスの座標
        gui.text_xpos = 175#メッセージボックスの座標
とかの座標がうまくいかなかったとき
        gui.dialogue_xpos = 200
        gui.dialogue_ypos = 90
        gui.name_xpos = 60
        gui.name_ypos = 43

↑こっちで書いたらうまくいきました。
原理不明!!!!
この記事はver7.5対応なので注意。8以降についてはこっちに記載しています。

■やると思わなかった
やると思わなかった……
自分のipadで動いたらいいなーという気持ちがあってやりました。

■方法・・・偉大な先人の記録を見ればOKってことよ
crAsm様 「Ren'Pyブラウザゲームの投稿方法、ほか」  
​How to post a Ren'Py browser game

ここを見れば解決すると思います!!!!
懇切丁寧でありがたい限りです・・・

で、このブログ記事は何のためにあるかというと自分用メモです。
過去の自分が失敗したことは未来の自分も失敗しやすいので!(学習しないの?)

■つまづいたことの記録
ver7.4.4ぐらいの安定バージョンを使っていたのですが、plicyに
ブラウザ版投稿後、サムネを選ぼうとするターンでJavascriptエラーが出て止まる。

Web版を出力するには開発版(自分は7.5.0にしました)を入手するのがいい
アドバイスいただき、試したところすんなりできました。
多分時間がたつとブラウザの仕様とかも変わるので、あくまで今の状況の話です。
(この記事は2022/6/11に書いています)
各ブラウザの仕組み?になにか変化があると、どうしても影響を
うけてしまうようです(※何もわかっていない人間の精一杯の状況理解による)

開発版はDL版ゲームのビルドに向かないだとか書かれているのですが、
好きな時にボタン1つで元の安定バージョンに戻せますので
他の作業がまだあるんだけど・・・って場合も安心です!!!

①ブラウザ出力する
 「Web(Beta)」→「ウェブアプリケーションをビルドする」→出力される
②出てきたファイル群を、既にzipになってるところも全部まとめて圧縮してzipにする

③zipをplicyにアップロードする
 各方面向けに手厚くQ&Aとかがついててすごい。

④↓このメッセージがでます。wait!!!!!!!!!!!
 「現在ゲームのコンバートをしております。
 しばらくお待ちください。」
15分~1時間だそうです。 
終わっても通知とかが来ないので、もういいかなと思ったら
いったん別のページ行って戻ってくるといいかも。
(黙って待ってたら実は思ったよりすぐ終わってたケースあり・・・)

⑤フレンド限定公開とやらに設定すると実質クローズドでテストプレイが
 できるっぽいのでそうしてみる
(公開状態+フレンド限定公開にしました。)

⑥ログインID(登録メールからコピペしとくと便利)とフレンド用パスワードを入れ
ゲーム画面へ。
サムネ画面を右下のボタンで選択して(テストしながら撮影、かなり便利)確定させる

⑦完成だ!
容量圧縮が完全でないとか(めんどくさがるから…)
UIがモバイル用にしては押しづらいとか多分なんかいろいろあるので
戦いは終わらないんじゃないか説あります

読み込み画像のカスタムがたぶんできるんじゃないかと思う。
デフォルトのやつのパロ画像みたいなのをつっこんでみたいですね。
(Ren'pyユーザーにしかわからんギャグすな)

ところでplicy、ノベルタイプゲームの場合はジャンル「ADV」でいいのかな?
ノベコレのようになにもかもをつつみこむ「ノベル」もあることだしまあ・・・
※すみません③のところif-elseを追記しました。(2022/6/8)

********************************
1周のプレーでためた変数=例:変身回数 とかを
記録していって、積み重ねて加算してって
累計で何回!とかやりたかったやつです(せ、説明が下手~~)


■①永続変数もラベル前のとこで初期設定(define)しておく
これをやらないと「ない変数に足し算できないぜ!」と言われます

default persistent.win = 0#こっちが永続
re_win = 0

■②本編中でre_winに任意の値を入れる
label sample:
    $ re_win += 1

■③ゲームクリアだぜ。永続変数に今回のre_winの値を足す
label clear:

    if not persistent.finished: #エンドみてないならそのまま数値入れる
        $ persistent.win =  re_win
    else: #エンドみてるなら入ってる数値に足す
        $ persistent.win +=  re_win

→これでゲームメニューのおまけスクリーンとかで累計値が呼び出せるぜ
 回数に合わせて称号みたくできる。
 

        hbox:
                if persistent.win >= 50:    
                    text _("・戦闘勝利数………[persistent.win] / {size=-3}{color=#5ba66a}生態系破壊者{/color}{color=#d4d9d5}>熟練の狩人>山あらし>ごめんあそばせ{/color}{/size}")
                elif persistent.win >= 30:  
                    text _("・戦闘勝利数………[persistent.win] / {size=-2}{color=#d4d9d5}???>{/color}{color=#5ba66a}熟練の狩人{/color}{color=#d4d9d5}>山あらし>ごめんあそばせ{/color}{/size}")
                elif persistent.win >= 15:    
                    text _("・戦闘勝利数………[persistent.win] / {size=-2}{color=#d4d9d5}???>???>{/color}{color=#5ba66a}山あらし{/color}{color=#d4d9d5}>ごめんあそばせ{/color}{/size}")
                else:
                    text _("・戦闘勝利数………[persistent.win] / {size=-2}{color=#d4d9d5}???>???>???>{/color}{color=#5ba66a}ごめんあそばせ{/color}{/size}")
ボ、ボイス関係(もう使わないかもだけど)まとめダヨ

■普通にゲーム内で再生(話者設定は省略、define kh = です)

    voice "audio/v45.ogg"
    kh "先輩。"

audioフォルダのv45.oggが「せんぱい」って読んでいるボイスデータです。(一応)
ボイスは次のボイスが重なるとかの次の動作が始まると停止します。
公式によると voice sustain を挟んで使えば
次の動作にもまたがってボイスの再生を続けるらしい(試さんかった)。

■初回起動時の音量(音量の初期設定)
ボイスつけるとバランスが気になるから・・・
「options.rpy」の## 環境設定のデフォルト とかに足します。

## 初回起動時の音量
define config.default_music_volume = 0.5
define config.default_sfx_volume = 0.9


■カスタム:メッセージボックスにボイスリピートボタン

「screens.rpy」の## Quick Menu(クイックメニュー)スクリーン に

            textbutton _("repeat") action VoiceReplay() text_size 17

をセーブロードとかと同列に足すだけ。


■カスタム:そのほか
実際には試してないのでご紹介にとどめます。
・バックログにボイスリピート機能を付けたり
・コンフィグにボイススキップを付けたり
 → https://h9o6.blog.fc2.com/blog-entry-6.html
できるみたい?です。現行のverでもやれるのだろうか(試していない)


■ボイスタグについて
1キャラしかいないしボイスが主みたいなもんだったのでつけなかったんですが
ボイスタグを設定するとキャラごとオンオフができるみたい。

define kh = Character('後輩', color="#66cdaa", voice_tag="kho")

「kho」のとこがボイスタグ。一応つけるだけつけておいた…
(実際はこれに立ち絵用のimageも定義してましたが割愛)


■コンフィグにボイステストを設置
設置というかすでにある機能のコメントアウトを無効にして動かすみたいなやつですね。

「options.rpy」のここをコメントアウトします。
この場合、audioファイルにv67.oggを入れて用意してあります。

## サウンドやボイスの設定画面で、ユーザーがテストサウンドを再生可能にする場合、
## 以下の行をアンコメントしてサンプルサウンドを指定します。
# define config.sample_sound = "sample-sound.ogg"
define config.sample_voice = "audio/v67.ogg"

「screens.rpy」の環境設定スクリーンのボイスのところの記述が働いて
勝手にサンプルボタンが出るようになります。
                    if config.has_voice:
                        label _("VOICE")
 
                        hbox:
                            bar value Preference("voice volume")
                            $ musi3 = _preferences.get_volume('voice')#※ここから
       # 現在のSE音量を取得する変数を追加
                            text _(" [musi3:.0%]")
       # フォーマット化タグで囲って100%表示に置き換える#※ここまで
 
                            if config.sample_voice:
                                textbutton _("♪") action Play("voice", config.sample_voice)

サンプルボタンの文字列を変えたいときは"♪"のところをいじる。
(同じく環境設定スクリーンのボイスのところにあります)

・音量バーに%表示を付ける方法は→「音量のパーセント表示」を参考に
 使用させていただいています。(コード中の※の部分)


■↑を応用して、ボイス再生部屋を作ったよ

*前提:使うボイスをdefineしときます。
「options.rpy」のどこかに
define omake_voice01 = "audio/v01.ogg"
define omake_voice02 = "audio/v02.ogg"
define omake_voice03 = "audio/v03.ogg"
define omake_voice04 = "audio/v04.ogg"

で、実際の画面をつくる。「screen.rpy」です。
ヘルプスクリーンを改造したのでヘルプのままになっているが
よい子は別の名前を付けたほうがいいでしょうね・・・
変にいじくってエラーでるのもアレなのでそのまま載せます!
差し替えだとヘルプのかわりにここに飛ぶので、メニュー名は変える。
(→「screen.rpy」のメニュースクリーン)

## メインメニュースクリーンとゲームメニュースクリーン
## Navigation(ナビゲーション)スクリーン ####################################################
        textbutton _("…voice") action ShowMenu("help")

押すとhelpスクリーンにとぶボタンです。ボタンのテキストは「...voice」です。(の意味)
任意のスクリーンにした場合はhelpのとこを変えるんじゃ。
エンド後に足したいとかはこの記事で。

## Help(ヘルプ)スクリーン ##############################################################
screen help():
    tag menu
    use game_menu(_("voice"), scroll="viewport"):
        style_prefix "help"
        vbox:
                text _("ボイスコレクションです。\n押すと再生されます。\n\n")
                textbutton _("「暇じゃないし」") action Play("voice", omake_voice01)
                textbutton _("「なんでもないよ」") action Play("voice", omake_voice02)
                textbutton _("「喜ばないでください」") action Play("voice", omake_voice03)
                textbutton _("「やめてくださいね」") action Play("voice", omake_voice04)

#ここからはスタイルの設定                
style help_button is gui_button
style help_button is gui_button
style help_button_text is gui_button_text
style help_label is gui_label
style help_label_text is gui_label_text
style help_text is gui_text
style help_button:
    properties gui.button_properties("help_button")
    xmargin 7
style help_button_text:
    properties gui.button_text_properties("help_button")
style help_label:
    xsize 209
    right_padding 17
style help_label_text:
    size gui.text_size
    xalign 1.0
    text_align 1.0

  *HOME*   次のページ ≫
ブログ内検索
このブログについて
ゲーム作りたい人のメモ。
講座というほどのものでもないおぼえがきです。
何か参考になるところがあればご自由にどうぞ。
ほぼ自分用なので、日本語いきあたりばったりでごめんなまし。

※ここに書いたことは全体的に
「本当はなんとかする方法があるかもしれないけど、私にはわからない」が多く…
あんまり仕組みを理解していないし誤解もあるかもしれません。
というわけで責任は負いません。ごめんなさい!

リンク:ゲーム作ってる本館
material by bee  /  web*citron
忍者ブログ [PR]