以前のバージョンまではdefault_macros.jsonからIDEフォントを変更していたのですが、2022.5.0.8から反映されなくなったっぽい…? 代わりに環境設定にあったIDEフォントのタブから日本語対応のフォントに変更できたのですが、その後プロジェクトファイルを開くとフリーズ。そして起動時に必ずクラッシュするように…… とりあえず自分も前のバージョンに戻して作業してます。
なんか挙動がおかしい(変数名を変えても、変更前の変数で実行される)ので、ひとまずバージョンを戻してやってます。 今作ってる部分が動いたら、もう一度バージョンアップさせて様子を見てみるつもりです。
👍
>> 4ですが解決しました。 数値がおかしいのではなくスクリプト中で再生していた効果音の指定先がバグっていました。サウンドリソースの名前を変えたりファイルを指定しなおしたりすると直りました。
steam版ビルドで固まって動かん
スクリプトにargument0で渡した数値で条件分岐していたところの結果があべこべになっている… 自分だけ?
バージョン変更したら一回タブ開き直さないと 変更されませんでした。
常識でしたらすいやせん。。。🙈
ついにマニュアルが日本語化しました!! IDEを日本語にした状態でマニュアルを開くと日本語マニュアルが開くみたいです。 一応リンクはっておきます。 https://manual-ja.yoyogames.com/#t=Content.htm
Ctrl+Tで出てくるGOTOメニューで、 キーコンフィグ設定がサーチ対象になっていますがこれ対象から外すには、 preference > general > goto で search in Redefine Keysのチェックを外します。
自分はコンシューマーを作成するので自動的にサブスクになっちゃいますね...
これから始める人はまず無料版をためすってのがいいかもしれないですね。 一応OperaGXという場所に無料でエクスポートはできるみたいです(OperaGXはChromeのようなブラウザをダウンロードしないと遊べないですが...)
それはちょっとだるいですね...
YoYoGamesでサブスクすると問い合わせないと解約できないんですね。 それは良くないですね。改善して欲しいところです。
やはり永久ライセンスがいつかは廃止される以上、サブスク版で開発していく方が良さげですね。 後者の使い方で使っているのですが公式サイトのサブスクは現状解約に問い合わせが必要なので、気軽に解約できるSteamからサブスクするのが安牌かもしれません… 返答ありがとうございました。
公式からどうなるか発表があってから決めようと思いますが、 今のところは「来年以降に出る新しいランタイムはサブスク版のみで利用可能」という情報を前提にすると、 ・今作ってるゲームについては永久ライセンスが使える限りは使う(つまり現行のGMS2ランタイムで完成させる) ・次に作るゲームから、サブスクに移行して新しいランタイムで制作する というような感じでイメージしてます。
サブスク版では、この使い方ができるかまだ私自身分かってないのですが ・開発中は無料版を使う(無料版はエクスポートができないだけで全機能使えるという理解です) ・エクスポートする段階で有料サブスク版を使ってエクスポートする というのを考えてます。
ありがとうございます!色々出来そうですね!
さらに調べてみたら、DirectInputでもキーマッピングを自分で作れば、GameMakerが持っているXInput対応の関数でキー動作を取得できました。 サンプルと同じ様に処理したいときは、マッピングを自分で作るといいかもしれません。 とりあえずJC-U3613Mだけ動けばいいなら以下のようにすると動きました。
var mapping = gamepad_get_guid(pad_id) + "," + gamepad_get_description(pad_id); mapping += ",platform:windows,"; mapping += "a:b2,b:b3,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b10,leftshoulder:b4,leftstick:b8,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:b7,rightx:a2,righty:a3,start:b11,x:b0,y:b1,"; gamepad_test_mapping(pad_id, mapping);
キーマップ指示用文字列を作って、「gamepad_test_mapping」でそれを適用するという流れです。
プログラムを動かすとmappingに入っているキーマップ文字列は以下のようになりました。
6e050320000000000000504944564944,JC-U3613M - DirectInput Mode,platform:Windows,a:b2,b:b3,x:b0,y:b1,leftshoulder:b4,rightshoulder:b5,lefttrigger:b6,righttrigger:b7,guide:b10,start:b11,leftstick:b8,rightstick:b9,dpup:h0.1,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,leftx:a0,lefty:a1,rightx:a2,righty:a3,back:b10,
キーマッピングは以下のヘルプで説明されていました。 https://manual.yoyogames.com/GameMaker_Language/GML_Reference/Game_Input/GamePad_Input/gamepad_test_mapping.htm
どうしてもDirectInputのコントローラーで対応したいなら、キー設定画面などを作って、ユーザーの設定をmappinng文字列に直してgamepad_test_mappingに渡してあげるようにすれば、どのようなコントローラーでも対応できそうです。
うおおおおお!!ありがとうございます!! 参考にさせて頂きます!!!感謝感激です!!!
DirectInputのコントローラーでキー入力を取得する方法について気になったので、調べてみました。
私も、ぽんでりさんと同じJC-U3613Mを持っているので、DirectInputモードにして動作をチェックしました。
結論から言うと、JC-U3613Mの十字キーは、hatスイッチ=POVキーと呼ばれるもので、ボタンとは別に動作を取得できることがわかりました。 このコントローラーの十字キーは、
gamepad_hat_count(pad_id) でハットスイッチの個数を取得して、
gamepad_hat_value(pad_id, hat_switch_num)
で、取得したいハットスイッチの番号(hat_switch_num)を指定することで、押されたボタンがわかります。 ※hat_switch_numは0から始まるので、先に取得したハットスイッチ個数-1
Up = 1、Right = 2、Down = 4、Left = 8の値が返ってきます。同時押しされたときは右上なら1と2を足した3が返ってきます。
コントローラーのボタンは、
・軸(ぐりぐりのスティック) ・ボタン(AとかYとかLとかRとか普通のボタン) ・ハットスイッチ(十字キーの形が多い?POVキーとも呼ばれる)
の三種類があり、GMSでも取得するために別の関数があります。 今回、ボタンは13個ですが、軸は2つ、ハットスイッチは1つとなります。
このへんに詳しいことが書いてありましたので、参考になりました。 https://manual.yoyogames.com/GameMaker_Language/GML_Reference/Game_Input/GamePad_Input/Gamepad_Input.htm
十字キーが何か反応してたり入れ替わってたり、例えばgp_face1で上とかになってたり、右押すとshoulderrbが反応するとかだったらGameMaker側で置き換え出来るんですが、無反応なので…
・DirectInputコントローラーのマッピングは各メーカーによって異なっている。 (実際にはある程度の類型があるとは思われる) ・マッピングがgamepad_get_mapping()で得られない場合はヒントが無くマッピングのセットができない。 (どのボタンが内部でなんと呼ばれているか不明)得られたとして各メーカーで違う可能性がある b0とかb1とかかもしれないけどその実装もメーカーによって違う可能性 記号を総当たりで探し当てるのはやめたほうがいい
ぐるぐるですじゃー んもうXinputでいきます。
DirectInputのパッド使ってる人はXinputに置き換え出来るドライバ入れて置き換えたりしてる人もいるみたいですし、Steamクライアントも確かにそういうことしてるみたいです。なので時代はXinput。でいいかなって。
置き換え出来るってことは出来るのかも、とも少し思うけど
いったんここまでにしておきます。ありがとうございました。
steamクライアントがなんかしてるのは確かにありそうですね...
↑↑↑ この最大ログイン数の問題はYoYoのアカウントページからセッションの削除が可能で解決しました。
バージョンとっかえひっかえしてたら最大ログイン数の制限(?初めて見たので不明)を超えてしまって入れない。(古いバージョンだから出るもので今はそういうの無い可能性もありますが)
v2.2.3.433 v2.3.1.542 v2.3.3.574 でやってみましたが動作は同じですねえ。DirectInputでは十字キーは使えないです。 GameMaker側のバージョン依存とかではなく、別の所ですかねえ。でも「ElecHead」がXinputだけというので少し安心出来たので、Xinputだけ考えておけば大丈夫かなあとも思い始めました
まじですか!?何回も確認したんですが普通に使えてますよ! 今回ハマってるエレコムのJC-U3613Mというパッドは背面にXinputを使うかDirectInputを使うか切り替える物理スイッチがあって、XinputでもDirectInputでもElecHeadは普通にゲーム出来てます。(さすがにゲーム中に物理スイッチを切り替えると動かなくなりますが、起動時にどっちかにしておくと、どっちも普通に動きます)あ!これもしかするとSteamクライアントが何かしてるかもです(違ったらすいません💦)
ElecHeadはたしかパッドのインデックスは0番目しか指定していませんでした。 ですのでxinputの1番スロットしか動かない状態のはずなんで動いているのが不思議ですね。
試しに古いバージョンのGameMakerにコピペしてやってみます。どうかなあ……
パッドがおかしいのかと思って、試しに「ElecHead」を起動すると、きちんと使えるんですよねえ……これが。
わぁぁぁここに乗るようなことしてるとも思ってないのですがご紹介ありがとうございます! びっくりしましたw
Game Makerで制作しているウマーさんの作業配信。 ドット絵作業、プログラミングなど、いろんな作業を配信で見せてくれます。
ウマーのゲーム制作チャンネル https://www.youtube.com/channel/UCmnjHq9Ovl2PtC3n1DNKCvA
ご回答ありがとう御座います。 ライセンスの状態は維持される事、Steam版もいずれサブスク式に切り替わる事、判りやすいご説明有難う御座いました。
スレ違いの質問に答えていただきありがとう御座いました。 次からはスレ立ても含めて書き込みさせて頂きます。
永久ライセンスを持ってる人は、サブスクライセンスを買っても永久ライセンスは保持され無くなりません。 (ただ「GameMakerがある限りは」と言われていますので、名前を変えて別のソフトに生まれ変わったらどうなるか分かりません) 私は永久ライセンスをYoYoGamesサイトで購入して今も永久ライセンスで使っています。サブスク版は購入していません。一応、GamemakerがGamemakerである限りは心配しなくてもいいらしいですよ。 steam版は現時点ではサブスクライセンスは提供されていませんが今後サブスクになる予定だそうです。
詳細はここをご覧ください https://help.yoyogames.com/hc/en-us/articles/4405059050001-Subscriptions-FAQ
新しい話題の場合は、どうぞ遠慮なく[新しいトピックを作る]ボタン(この掲示板トップページ下部にあります)を押してトピック(スレッドに当たります)を作って投稿してください。この掲示板は誰でもトピックを作れますのでお気軽にどうぞ。
新バージョンについてではないのですが、公式日本語化に伴って購入を考えています。 本家での購入とSteamでの購入ではサブスクになるか買い切り?になるかの違いがあるようですが、 短期でしか使う予定が無いとかの理由が無い限り買い切りの方がいいと思います。 元々買い切りからサブスクに変更があった時点でSteam版がサブスクに出来ない仕様?でSteamだけ 買い切りのままになっているという感じなのでしょうか? なら現状Steamで買った方が得ですよね?何かデメリットがあるのでしたら教えて頂けると助かります。 思いつくのはSteam経由で起動しないといけないくらい? あと、突然Steam版もサブスク変更に伴ってライセンス取り上げられたりする可能性があるとか?
ありがとうございます!やってみます!
バグ報告やリクエストはYoYoGamesのフォームから送信できます。
YoYoGamesのサイトにログインして https://accounts.yoyogames.com/contact-us#bug にアクセスするか、 IDEのメニューからreport bugを選んでフォームを開いて送信します。
私は機械翻訳で英文を作って送っています。 バグ報告なら、期待する動作、実際の動作、再現手順などを簡潔に書くといいと思います。
Shaun Spaldingさんの新しいチュートリアルがあったので。 方法1のやりかたですね。
GameMaker - Simple Pause Tutorial https://www.youtube.com/watch?v=dNiLIX8jNOM
Ctrl+Xでコードが消えるバグを修正したとして v2022.3.0.625 がリリースされましたが 残念ながら直っていませんでした。
ウチでも発生しました。びっくりした…! 1行目でCtrl+Xすると発生です。 そもそも範囲選択してない状態でCtrl+Xした時の挙動がおかしいですね。
sososoさん>あ、やはりMacはまだ日本語未対応なんですかね…残念です😥
私もMacユーザーですが、日本語はありませんでした😥
マニュアル(ver2~2.2.x) マニュアル(ver2.3~) YoYoGames YoYoGames 公式コミュニティ GM関連のYoutubeチャンネル集 解説・資料サイト集(日本語) 解説・資料サイト集(英語)
以前のバージョンまではdefault_macros.jsonからIDEフォントを変更していたのですが、2022.5.0.8から反映されなくなったっぽい…?
代わりに環境設定にあったIDEフォントのタブから日本語対応のフォントに変更できたのですが、その後プロジェクトファイルを開くとフリーズ。そして起動時に必ずクラッシュするように……
とりあえず自分も前のバージョンに戻して作業してます。
なんか挙動がおかしい(変数名を変えても、変更前の変数で実行される)ので、ひとまずバージョンを戻してやってます。
今作ってる部分が動いたら、もう一度バージョンアップさせて様子を見てみるつもりです。
👍
>> 4ですが解決しました。
数値がおかしいのではなくスクリプト中で再生していた効果音の指定先がバグっていました。サウンドリソースの名前を変えたりファイルを指定しなおしたりすると直りました。
steam版ビルドで固まって動かん
スクリプトにargument0で渡した数値で条件分岐していたところの結果があべこべになっている…
自分だけ?
バージョン変更したら一回タブ開き直さないと
変更されませんでした。
常識でしたらすいやせん。。。🙈
ついにマニュアルが日本語化しました!!
IDEを日本語にした状態でマニュアルを開くと日本語マニュアルが開くみたいです。
一応リンクはっておきます。
https://manual-ja.yoyogames.com/#t=Content.htm
Ctrl+Tで出てくるGOTOメニューで、
キーコンフィグ設定がサーチ対象になっていますがこれ対象から外すには、
preference > general > goto で search in Redefine Keysのチェックを外します。
自分はコンシューマーを作成するので自動的にサブスクになっちゃいますね...
これから始める人はまず無料版をためすってのがいいかもしれないですね。
一応OperaGXという場所に無料でエクスポートはできるみたいです(OperaGXはChromeのようなブラウザをダウンロードしないと遊べないですが...)
それはちょっとだるいですね...
YoYoGamesでサブスクすると問い合わせないと解約できないんですね。
それは良くないですね。改善して欲しいところです。
やはり永久ライセンスがいつかは廃止される以上、サブスク版で開発していく方が良さげですね。
後者の使い方で使っているのですが公式サイトのサブスクは現状解約に問い合わせが必要なので、気軽に解約できるSteamからサブスクするのが安牌かもしれません…
返答ありがとうございました。
公式からどうなるか発表があってから決めようと思いますが、
今のところは「来年以降に出る新しいランタイムはサブスク版のみで利用可能」という情報を前提にすると、
・今作ってるゲームについては永久ライセンスが使える限りは使う(つまり現行のGMS2ランタイムで完成させる)
・次に作るゲームから、サブスクに移行して新しいランタイムで制作する
というような感じでイメージしてます。
サブスク版では、この使い方ができるかまだ私自身分かってないのですが
・開発中は無料版を使う(無料版はエクスポートができないだけで全機能使えるという理解です)
・エクスポートする段階で有料サブスク版を使ってエクスポートする
というのを考えてます。
ありがとうございます!色々出来そうですね!
さらに調べてみたら、DirectInputでもキーマッピングを自分で作れば、GameMakerが持っているXInput対応の関数でキー動作を取得できました。
サンプルと同じ様に処理したいときは、マッピングを自分で作るといいかもしれません。
とりあえずJC-U3613Mだけ動けばいいなら以下のようにすると動きました。
キーマップ指示用文字列を作って、「gamepad_test_mapping」でそれを適用するという流れです。
プログラムを動かすとmappingに入っているキーマップ文字列は以下のようになりました。
キーマッピングは以下のヘルプで説明されていました。
https://manual.yoyogames.com/GameMaker_Language/GML_Reference/Game_Input/GamePad_Input/gamepad_test_mapping.htm
どうしてもDirectInputのコントローラーで対応したいなら、キー設定画面などを作って、ユーザーの設定をmappinng文字列に直してgamepad_test_mappingに渡してあげるようにすれば、どのようなコントローラーでも対応できそうです。
うおおおおお!!ありがとうございます!!
参考にさせて頂きます!!!感謝感激です!!!
DirectInputのコントローラーでキー入力を取得する方法について気になったので、調べてみました。
私も、ぽんでりさんと同じJC-U3613Mを持っているので、DirectInputモードにして動作をチェックしました。
結論から言うと、JC-U3613Mの十字キーは、hatスイッチ=POVキーと呼ばれるもので、ボタンとは別に動作を取得できることがわかりました。
このコントローラーの十字キーは、
gamepad_hat_count(pad_id)
でハットスイッチの個数を取得して、
gamepad_hat_value(pad_id, hat_switch_num)
で、取得したいハットスイッチの番号(hat_switch_num)を指定することで、押されたボタンがわかります。
※hat_switch_numは0から始まるので、先に取得したハットスイッチ個数-1
Up = 1、Right = 2、Down = 4、Left = 8の値が返ってきます。同時押しされたときは右上なら1と2を足した3が返ってきます。
コントローラーのボタンは、
・軸(ぐりぐりのスティック)
・ボタン(AとかYとかLとかRとか普通のボタン)
・ハットスイッチ(十字キーの形が多い?POVキーとも呼ばれる)
の三種類があり、GMSでも取得するために別の関数があります。
今回、ボタンは13個ですが、軸は2つ、ハットスイッチは1つとなります。
このへんに詳しいことが書いてありましたので、参考になりました。
https://manual.yoyogames.com/GameMaker_Language/GML_Reference/Game_Input/GamePad_Input/Gamepad_Input.htm
十字キーが何か反応してたり入れ替わってたり、例えばgp_face1で上とかになってたり、右押すとshoulderrbが反応するとかだったらGameMaker側で置き換え出来るんですが、無反応なので…
・DirectInputコントローラーのマッピングは各メーカーによって異なっている。
(実際にはある程度の類型があるとは思われる)
・マッピングがgamepad_get_mapping()で得られない場合はヒントが無くマッピングのセットができない。
(どのボタンが内部でなんと呼ばれているか不明)得られたとして各メーカーで違う可能性がある
b0とかb1とかかもしれないけどその実装もメーカーによって違う可能性
記号を総当たりで探し当てるのはやめたほうがいい
ぐるぐるですじゃー
んもうXinputでいきます。
DirectInputのパッド使ってる人はXinputに置き換え出来るドライバ入れて置き換えたりしてる人もいるみたいですし、Steamクライアントも確かにそういうことしてるみたいです。なので時代はXinput。でいいかなって。
置き換え出来るってことは出来るのかも、とも少し思うけど
いったんここまでにしておきます。ありがとうございました。
steamクライアントがなんかしてるのは確かにありそうですね...
↑↑↑ この最大ログイン数の問題はYoYoのアカウントページからセッションの削除が可能で解決しました。
バージョンとっかえひっかえしてたら最大ログイン数の制限(?初めて見たので不明)を超えてしまって入れない。(古いバージョンだから出るもので今はそういうの無い可能性もありますが)
v2.2.3.433
v2.3.1.542
v2.3.3.574
でやってみましたが動作は同じですねえ。DirectInputでは十字キーは使えないです。
GameMaker側のバージョン依存とかではなく、別の所ですかねえ。でも「ElecHead」がXinputだけというので少し安心出来たので、Xinputだけ考えておけば大丈夫かなあとも思い始めました
まじですか!?何回も確認したんですが普通に使えてますよ!
今回ハマってるエレコムのJC-U3613Mというパッドは背面にXinputを使うかDirectInputを使うか切り替える物理スイッチがあって、XinputでもDirectInputでもElecHeadは普通にゲーム出来てます。(さすがにゲーム中に物理スイッチを切り替えると動かなくなりますが、起動時にどっちかにしておくと、どっちも普通に動きます)あ!これもしかするとSteamクライアントが何かしてるかもです(違ったらすいません💦)
ElecHeadはたしかパッドのインデックスは0番目しか指定していませんでした。
ですのでxinputの1番スロットしか動かない状態のはずなんで動いているのが不思議ですね。
試しに古いバージョンのGameMakerにコピペしてやってみます。どうかなあ……
パッドがおかしいのかと思って、試しに「ElecHead」を起動すると、きちんと使えるんですよねえ……これが。
わぁぁぁここに乗るようなことしてるとも思ってないのですがご紹介ありがとうございます!
びっくりしましたw
Game Makerで制作しているウマーさんの作業配信。
ドット絵作業、プログラミングなど、いろんな作業を配信で見せてくれます。
ウマーのゲーム制作チャンネル
https://www.youtube.com/channel/UCmnjHq9Ovl2PtC3n1DNKCvA
ご回答ありがとう御座います。
ライセンスの状態は維持される事、Steam版もいずれサブスク式に切り替わる事、判りやすいご説明有難う御座いました。
スレ違いの質問に答えていただきありがとう御座いました。
次からはスレ立ても含めて書き込みさせて頂きます。
永久ライセンスを持ってる人は、サブスクライセンスを買っても永久ライセンスは保持され無くなりません。
(ただ「GameMakerがある限りは」と言われていますので、名前を変えて別のソフトに生まれ変わったらどうなるか分かりません)
私は永久ライセンスをYoYoGamesサイトで購入して今も永久ライセンスで使っています。サブスク版は購入していません。一応、GamemakerがGamemakerである限りは心配しなくてもいいらしいですよ。
steam版は現時点ではサブスクライセンスは提供されていませんが今後サブスクになる予定だそうです。
詳細はここをご覧ください
https://help.yoyogames.com/hc/en-us/articles/4405059050001-Subscriptions-FAQ
新しい話題の場合は、どうぞ遠慮なく[新しいトピックを作る]ボタン(この掲示板トップページ下部にあります)を押してトピック(スレッドに当たります)を作って投稿してください。この掲示板は誰でもトピックを作れますのでお気軽にどうぞ。
新バージョンについてではないのですが、公式日本語化に伴って購入を考えています。
本家での購入とSteamでの購入ではサブスクになるか買い切り?になるかの違いがあるようですが、
短期でしか使う予定が無いとかの理由が無い限り買い切りの方がいいと思います。
元々買い切りからサブスクに変更があった時点でSteam版がサブスクに出来ない仕様?でSteamだけ
買い切りのままになっているという感じなのでしょうか?
なら現状Steamで買った方が得ですよね?何かデメリットがあるのでしたら教えて頂けると助かります。
思いつくのはSteam経由で起動しないといけないくらい?
あと、突然Steam版もサブスク変更に伴ってライセンス取り上げられたりする可能性があるとか?
ありがとうございます!やってみます!
バグ報告やリクエストはYoYoGamesのフォームから送信できます。
YoYoGamesのサイトにログインして
https://accounts.yoyogames.com/contact-us#bug
にアクセスするか、
IDEのメニューからreport bugを選んでフォームを開いて送信します。
私は機械翻訳で英文を作って送っています。
バグ報告なら、期待する動作、実際の動作、再現手順などを簡潔に書くといいと思います。
Shaun Spaldingさんの新しいチュートリアルがあったので。
方法1のやりかたですね。
GameMaker - Simple Pause Tutorial
https://www.youtube.com/watch?v=dNiLIX8jNOM
Ctrl+Xでコードが消えるバグを修正したとして v2022.3.0.625 がリリースされましたが
残念ながら直っていませんでした。
ウチでも発生しました。びっくりした…!
1行目でCtrl+Xすると発生です。
そもそも範囲選択してない状態でCtrl+Xした時の挙動がおかしいですね。
sososoさん>あ、やはりMacはまだ日本語未対応なんですかね…残念です😥
私もMacユーザーですが、日本語はありませんでした😥