投稿

GDevelop 5.0.123 がリリースされました。

イメージ
めっちゃ私事ですが、このバージョンから貢献者のリストに私(PANDAKO)が追加されました🙌 やったねヽ(=´▽`=)ノ☆ さて、今回のバージョンアップは拡張機能の追加がメインっぽいです。 💝 改善点 ・エディター上のリストにアニメーションを追加しました。 はて?なんのことやら🤔、かと思いますが、クリックすると内容が下にスッて出てくるリスト型の UI がエディターの至るところで利用されてるじゃないですか。あれの開閉時にアニメーションするようになりましたよってだけです。言われても気が付かないレベルw ・P2P でカスタム ICE サーバーが利用できるようになりました。 P2P 機能自体が難しいので、ちょっと何言ってるのか分かりませんw Wiki が更新されることに期待です😅 ・シーン変数のカテゴリーが変更されました。 アクション/条件/式の編集画面で、シーン変数のカテゴリーが設けられました。 しかし困ったことに、翻訳が反映されていない関係で、現状は「変数」カテゴリーから外れてしまっている状態です。😢 早く翻訳が反映されることに期待です。 ⚙️ 拡張機能、🎨 リソース、🕹 サンプル 今回もたくさんの追加や更新がおこわれましたが、ここでは追加された拡張機能だけご紹介します。 ・「Idle object tracker」ビヘイビアを追加しました。 オブジェクトが一定時間移動しなかったかどうかをチェックする条件が利用できるようになります。(許容範囲も設定可能です) ・「WebSocket client」ビヘイビアを追加しました。 サーバーとの双方向通信を可能にします。 つまりオンラインゲームが作れるようになる拡張機能です! 実際に利用するには、別途 WebSocket サーバーを構築しないとダメなんですが、なんと GDevelop で WebSocket サーバーを構築できるようになる拡張機能が間もなく登場!とのことです😆 ・「Behavior Remapper」ビヘイビアを追加しました。 「プラットフォームキャラクター」ビヘイビアと「トップダウン移動」ビヘイビアの、デフォルトコントロールのキーを変更できるようにします。 🐛 バグの修正 今回もたくさん修正されましたので、気になる点だけピックアップです。 ・「オブジェクトを分離する」アクションの処理を改善しま

GDevelop 5.0.122 がリリースされました。

イメージ
今回は既存の機能の刷新も含まれていたためか、ベータ版を経由してからのリリースでした。 なので、改善点だけでも結構な量があります😅 個人的に重要そうな順に解説します。 💝 改善点 ・プラットフォーマーエンジン(「プラットフォームキャラクター」と「プラットフォーム」のビヘイビア)を刷新しました。 斜面や移動するプラットフォームに乗っているキャラクターを、より適切に処理できるようになりました。 もうエレベーターに乗せても、ピクピクしたりすることはありません👍 ・変数エディターを改善しました。 変数エディター内の下部にあるツールボタンが、常時表示されるようになり使いやすくなりました。 また、オブジェクト変数エディターは、オブジェクトエディター内に統合されました。 「ビヘイビア」タブの隣に「変数」タブが追加されて、アクセスしやすくなりました👍 ・オブジェクトのバウンディングボックスの値にアクセスできるようになりました。 バウンディングボックス(Bounding Box)とは、オブジェクトの大きさを表す見えない四角い箱 (矩形)のようなもののことです。  英語の説明とは裏腹に、衝突マスクとは関係ないので注意してください。 オブジェクトのバウンディングボックスの値(上部と下部の Y 座標、右側と左側の X 座標)を比較するための条件と、取得するための式が追加されています。 翻訳の関係で、今は「POSITION」の「Bounding Box」内にありますが、翻訳が反映されれば、「位置」の中に表示されるようになります。(なるはずです😅) ・オブジェクトが非表示、または画面外にある場合でもアニメーションを再生できるようにしました。 スプライトエディターに「高度な設定」というオプションが追加され、そこから設定できるようになりました。 通常は ON の「再生 しない 」です。 チェックを外すことで、画面外や非表示でもアニメーションが再生され続けます。 ・シーンエディターを改善しました。 ズームレベルに応じて、適切なスクロールスピードになるよう調整しました。 また、「エディターで位置と角度を固定する」を ON にしているオブジェクトも、選択できるようになりました。 固定しながらでも選択できるので、プロパティの変更などがやりやすくなります。 反面、後ろに隠れたインスタンスを選択したい

【GDevelop】Compressor 拡張機能の使い方

イメージ
Compressor 拡張機能は、文字列をZIP 圧縮した文字列に変換してくれる拡張機能です。 この拡張機能の活用例については「 セーブデータは暗号化しよう! 」をご覧ください。 拡張機能をインストールする方法については「 新しい拡張機能のインストールの仕方 」をご覧ください。 執筆時点のバージョンは 1.0.1 です。 関数 インストールすると文字列式(テキスト式)に次のような関数が追加されます。 それぞれの使い方をざっくり説明します。 Compress String 「String to compress」パラメーターに入力した文字列を ZIP 圧縮した文字列を返します。 なお、必ずしも元のデーターより軽くなるとは限りません。(特に文字列が短いほど効果は少なくなります) Decompress String  ZIP 圧縮された文字列を「String to decompress」パラメーターに入力すると、解凍して元の文字列を返します。

【GDevelop】セーブデータは暗号化しよう!

イメージ
GDevelop でセーブ機能を実装したいときは、多くの場合「ストレージ」機能を使うことになると思います。 このストレージ機能は、PC でもスマホでも、アプリでもブラウザ(HTML5)でも、ちゃんと機能してくれるのでとても重宝するのですが、実は簡単にセーブデータをいじれてしまうという弱点があります。 特に HTML5 ゲームがやばい GDevelop のストレージ機能はゲームが HTML5 で配信される場合は、Web Storage という機能を利用してデータを保存します。 しかし、この Web Storage はブラウザの標準機能で簡単に閲覧・書き換えができてしまいます。 Chrome ならデベロッパー ツール(DevTools) Edge なら開発者ツール(DevTools) Firefox なら開発ツール Safari なら Web インスペクタ つまりそれを知っているプレイヤーは、勝手にセーブデータを書き換えてズルができてしまうのです😥 そのため HTML5 で配信される、いわゆるブラウザゲームのほとんどは、Web Storage に保存するデータを暗号化しています。 (そもそも大事なデータは Web Storage ではなく、サーバー側に保存していたりしますが……) 実はセーブデータを暗号化してくれるゲームエンジンは意外と少なく、多くの場合、各自で独自の防衛策を講じる必要があります。 (国産ゲームエンジンはしてくれるの多いけど😉) 残念ながら今の GDevelop(v5.0.121)のストレージ機能にも、暗号化をしてくれる機能はありません。 そこでこのページでは、簡単にセーブデータを改竄(かいざん)されないようにするための、基本的な暗号化方法についてご紹介します。 なお、アプリで配信する場合も、セーブデータがどのように保存されているか私が知らないだけで、もしかしたら Web Storage 同様、簡単に操作できてしまう状態かもしれないので、HTML5 ゲームと同様に暗号化しておくことをお勧めします。 暗号化に利用できる拡張機能の紹介 そのものズバリな拡張機能はありませんが、組み合わせることでセーブデータを暗号化することができる拡張機能をご紹介します。 拡張機能をインストールする方法については「 新しい拡張機能のインストールの仕方 」をご覧ください。 ・

【GDevelop】Hash 拡張機能の使い方

イメージ
Hash 拡張機能は、文字列からハッシュ値を生成してくれる拡張機能です。 この拡張機能の活用例については「 セーブデータは暗号化しよう! 」をご覧ください。 拡張機能をインストールする方法については「 新しい拡張機能のインストールの仕方 」をご覧ください。 執筆時点のバージョンは 1.0.0 です。 ハッシュ値とは? ググッてくださいw🤤 一応ざっくり説明すると、ハッシュ値とはハッシュ関数を通すことで得られる、一定の長さの値のことです。 このハッシュ値には、同じデータからは必ず同じハッシュ値が得られ、さらにハッシュ値から元のデータを復元することはできないという特徴があります。 そのため、データが改竄(かいざん)されていないかのチェックに利用することができます。 関数 インストールすると、文字列式(テキスト式)で次のような関数が選択できるようになります。 それぞれの使い方をざっくり説明します。 Hash a String with MD5 MD5 というハッシュ関数を利用して、ハッシュ値を生成することができる関数です。 MD5 は既に脆弱性(弱点)が発見されていて、重要なデータ(パスワードなど)のチェックには使えなのですが、生成負荷が SHA-256 より低いので、それほど重要ではない大きなデータの完全性をチェックしたい場合には、利用を検討しても良いと思います。 なお、この拡張機能の MD5 関数は、一部の漢字や絵文字などを正しく処理できません。 そのため、元のデータが同じでも、他のシステムの MD5 関数で生成したハッシュ値とは、値が異なる場合があります。 ご注意ください。 Hash a String with SHA256 SHA-2 の SHA-256 という種類のハッシュ関数を利用して、ハッシュ値を生成することができる関数です。 重要なデータからハッシュ値を生成したい場合は、MD5 ではなくこちらを使うようにしましょう。 ただし困ったことに、この拡張機能の SHA-256 関数は、半角英数字と半角記号にしか対応していません。 つまり、日本語は正しく処理できません。 日本語などの対応していない文字が一文字でも入っていると、undefined という値を返します。 日本語を使いたい場合は? 日本語を含む文字列を、一度何らかの方法で半角英数字のみのデータ表記に変換

【GDevelop】Unicode (UnicodeConversion) 拡張機能の使い方

イメージ
Unicode (UnicodeConversion) 拡張機能は、文字列を数字(Unicode のコードポイント)に変えてくれる拡張機能です。 もちろんその逆、数字を文字列に戻すこともできます。 この拡張機能の活用例については「 セーブデータは暗号化しよう! 」をご覧ください。 拡張機能をインストールする方法については「 新しい拡張機能のインストールの仕方 」をご覧ください。 執筆時点のバージョンは 1.0.4 です。 関数 インストールすると、文字列式(テキスト式)で以下のような関数が選択できるようになります。 それぞれざっくりと説明すると…… Reverse the unicode of a string 文字列を数字化した上で反転して、また文字列に戻します。 例えば「abc」を渡すと「6&」が返されます。 これは「abc」を数字化して「61 62 63」とし、それを反転して「36 26 16」とし、そこから文字列化すると「6&」になるためです。 そのため、逆に「6&」を渡すと「abc」が返ってきます。 なお、一部の漢字や絵文字などは正しく処理できません。 確実に機能させたい場合は、半角英数字(記号含む)のみで利用しましょう。 String to unicode conversion 文字列を数字化します。(文字をコードポイントに変換します) ただし、 返される値 のデータ型は文字列(テキスト)である点に注意してください。 例えば "61,62,63" というような数字が書いてある文字列です。 この関数は、漢字や絵文字なども正しく処理できます。 Unicode to string 数字を文字列化します。(コードポイントを文字に変換します) ただし、 渡す値 のデータ型は文字列(テキスト)である点に注意してください。 例えば "61,62,63" というような数字が書いてある文字列です。 この関数は、漢字や絵文字なども正しく処理できます。 関数のパラメーターについて 少し専門的な知識が必要なパラメーターがあるので、簡単に説明します。 「Reverse the unicode of a string」のパラメーター 文字列を数字化した上で反転して、また文字列に戻す「Reverse the uni

【GDevelop】新しい拡張機能のインストールの仕方

イメージ
GDevelop は有志の方が作成した拡張機能で、機能を追加することができます。 ゲーム制作に役立つ便利な拡張機能が色々あるので、どんどん利用しましょう😆 このページでは、拡張機能をインストールする方法を3つご紹介します。 方法その1.プロジェクトマネージャーから検索してインストールする これが最も一般的な方法です。 プロジェクトマネージャーの「関数/ビヘイビア」内の「新しい拡張機能を検索する」から、必要な拡張機能を探してインストールすることができます。 インストールしたい拡張機能を選択すると、詳しい説明が表示されるので、その画面にある「プロジェクトにインストール」ボタンを押しましょう。 なお、分かりにくいですが、次の画像のように「再インストール/更新」という表示に変わったらインストール完了です。 「戻る」ボタンを押してゲーム制作を続けましょう😉 方法その2.オブジェクトにビヘイビアを追加する画面から検索してインストールする これは意外と知られていない方法です。 いつも、オブジェクトの編集画面の「ビヘイビア」タブから「+オブジェクトにビヘイビアを追加」ボタンを押してビヘイビアを追加していると思いますが、実はその画面からも拡張機能をインストールすることができます。 赤枠のタブを選択すると、新しいビヘイビアを検索して、インストールできる画面になります。分かりにくいですねw なお、「新しい ビヘイビア を検索」と書いてあるとおり、ここで選択できる拡張機能は、 そのオブジェクトに追加することが出来るビヘイビアを有しているもののみ 、に限られている点に注意してください。 方法その3.拡張機能のファイルをインポートする ここまでは、公式の審査を通過した拡張機能をインストールする方法でしたが、この方法は独自に作成した拡張機能など、「新しい拡張機能を検索する」リストには掲載されていない拡張機能をインストールする方法です。 まず、インストールしたい拡張機能のファイル(json形式)を用意します。 次に、プロジェクトマネージャーから「新しい拡張機能を検索する」画面を開き、「拡張機能をインポート」を押します。 するとファイル選択ウィンドウが表示されるので、そこで対象となる拡張機能のファイル(.json)を選択します。 これでインポートは完了です。 問題がなければ、拡張機能が利用できる

このブログの人気の投稿

ブラウザ上で動く GDevelop オンライン版を試してみた感想

GDevelop の「イベント」を正しく理解しよう

4ian 氏が Google 辞めて GDevelop に全振りする件