munokura
リアクションスコア
1,143

タイムライン 新着アクティビティ 投稿 所持バッジ プロフィール

  • プラグインの移植とか機能を参考にするために他のプラグインを読ませていただくと、とても勉強になります。
    (ズルしてる感じもあるけど…)
    しかし、(最近は)「ここは、こうしといた方が良くない?なにか理由がある?」とかまで意識できる場合が出るようになった。

    話はズレるけれども、MZからMVに戻ってる人が多い気がする。
    そりゃ、マップの編集はMZの方が便利だけれど、プラグインの充実でMZでできて、MVで出来ないことがほとんどないので無理はないと思う。
    そして、MVのプラグインを全部MZへ移植しようというプラグイン作者は極少数だと予想される(ただの移植とか退屈に思うのでは?)ので、発売から2年位は盛り上がってこない可能性を感じる。
    MVも初期は色々言われていたようなので、似たような流れかもしれないけれど。
    Honami
    Honami
    MVなら…MVなら出来るのに……!!
    と、MZでの制作で何度も感じました。自分で移植や問題解決する力もないので、MZに手を出すのは早計だったなと感じています。
    それでも対応してくださってる製作者の皆様方のおかげでMZで出来ることもずいぶん多くなってきてるので、不安を感じつつまだMZで制作を続けてます。
    Window_StatusParamsがWindow_StatusBaseより継承され、
    Window_StatusBaseがWindow_Selectableより継承され、
    Window_SelectableがWindow_Scrollableより継承され、
    Window_ScrollableがWindow_Baseより継承されている?
    MZ の継承というのが分からない…

    どうも、色々な箇所から使える共通の関数のように使っているように見えるが、正しい呼び出し方が分かっていないので、独自の関数を作りたくなってしまう。
    多分、それは正道ではない気がするのだが、どう質問すればまともに具体的な質問になるのかさえ分からない…
    MZの Window_StatusParams.prototype.drawItem ってどこから呼び出されてるんでしょう?
    全く見つけられない…

    クソコードを書いている…移植もままならず、仕様を真似しながら少しでも近いプラグインを作ろうとしている。
    毎日、ちょっといじって進んでは、つまづき諦め、やっと「ここまでは実装しよう」という自分の現スキルに見合ったボーダーを決めて、進み始めた。
    が、MZのrectの仕様がよく分からないままで書いているので、フォントサイズとか行高とか、色々と調べつつ…
    itemLineRectだけ、別の関数を作ってしまうほうがマシなのか?

    まだ、ご指導いただくほど調査できていないので、やれるところまでやってから質問しないと学習効果が無いからね…


    というボヤキ
    人生、主査選択を迫られる機会は多々あるが、自分で調べきれる事とそうでない事がある。
    調べきれない(調査コストに見合わない)場合、大半の人は「自分の気分(これ一番良くない気がするけど)・ブランド・周囲の助言」で決定する。
    全ての事を調査するには人生を楽しむ時間が足りなすぎる。

    自分が精通しているジャンルだと、他の人への意見は増えると思うが「周囲の助言」レベルという認識は持っておこうと思う。

    自分で言うと、契約とか資産運用とかになるけど、色々と無為に助言してもな…逆恨みされる事も少なくないし…。
    助言前に契約書を結びたいくらいだわ(笑)
    自分が考えるプラグイン作成入門の1周目が終わりました。

    これ以降は、自分が更にスキルアップしなければ書けないと感じています。
    IT系の学歴・職歴がない人間が学び始めて10ヶ月でここまで来られたのは、諸先輩方が根気よくご指導くださったからに他なりません。
    心より、御礼申し上げます。


    ここは自画自賛になってしまうかもですが、プログラミング初学者x教育経験者という妙な位置から学んだ事で、熟練者の先輩方に思いつきづらいアプローチの記事が書けたと思っています。
    これを通して、初学者が簡単な挑戦や質問がしやすくなったら嬉しく思います。
    戦闘中にステータスウィンドウを開けるプラグインのリクエストを見て、「これあっただろう?」と思って試してみたら、バフとかが反映されない問題があった。
    中を見たら、なんでこれで動いているのか理解できない書き方がされていて(別にクラス構文とかそういうのではない)、「自分で分かるように作り直したほうが良くない?」と思った時…一年前は「ここを変えるだけでしょ?何でそんなに大変なの?」と自分が思っていたことを思い出した…。

    今ならよく分かるよ…

    「のび太の宇宙小戦争」で「見たことがない機械だ」「どうするの?」「見たことがある機械に改造する」を思い出した。
    プラグインの作り方入門を書いています。
    (もういくつかのネタが残っています)

    自分が小さなプラグインを作るようになってから10ヶ月です。
    参考にしたのは他のプラグインとプラグイン制作に精通している先輩のアドバイスでした。
    それまでの解説記事の多くが「1+1から始めましょう」みたいなのが多くて、「これはいつやりたい事に届くんだ?」という印象が強かったのです。
    そこでアーヴェル氏の記事を読んで「これを分解して連載すれば、プラグインを作れる人が増えるんじゃない?」と考えたのが動機です。
    munokura
    munokura
    スポーツでも同じなんですが、初心者に基礎練習をやらせるのは論理的には正しいです。
    しかし遊びとしてのスポーツだと、そんな事はやってられない。
    なので、基礎練習になるミニゲームを促すと進んで実行します。

    筋トレもやらないでスポーツするな!みたいなのは前時代的でしょ?
    それと同じような動機で記事を書いています。

    そして、中途半端な知識で書いているので「それは違うだろう」という点が散見されると思うので、ご指摘いただければ幸いです。
    DarkPlasma
    DarkPlasma
    初心者が記事を見ながら再現し、それで目的を達成したり学習したりできるので良い記事だと思います。

    ざっと読んで気になるのは以下の3点です。
    1. VSCodeでgrepするには、Windowsの場合 Ctrl + Shift + Fでできます。

    2. スタックトレースはスタックに積まれた関数呼び出しの経路(エラー時に赤く表示されるアレ)なので、記事の説明に書いてある内容とは異なります。

    3.
    console.log も良いですが、VSCodeを用いるのであれば既存の記事参考にブレークポイントを指定する方法も紹介されていると良いと思います。
    munokura
    munokura
    Visual Studio Code の設定(保存時にコード整形とか)とか使い方(Grepも別の方法を最近おそわりまして)をまとめて記事にしようと思っています。
    今回の場合、スタックトレースではなくコンソールという呼び方で良いのでしょうか?
    ステップ実行の記事は読んだことがあるのですが、当時は何が何やら~でした。
    現時点での入門レベルでは難しいと思います。
    また、console.logは中に入っているのが配列・文字列のどんな状態かまで把握できるので、早めに慣れたほうが得だと思って触れました。
    一周りして、中級編が書けるくらいのスキルになった時には紹介できると思います。
    アツマールで画像を暗号化できないのが困るって言ってる人を見かけたが、暗号化できても表示時には暗号化を解かないと表示できないわけで、ブラウザのキャッシュには残るだろうから、効果は無いんじゃないのかねぇ…
    もちろん、ブラウザに機能拡張で暗号化を解く機能を追加できるなら話は変わるが、そのアップデートに着いていくのコスト高すぎじゃない?
    スマホのブラウザに機能拡張が出来るのか知らんけど。
    まるまる
    まるまる
    munokuraさん
    初耳です。
    アツマールに投稿したゲーム内容から素材を取り出すことが可能ということでしょうか?
    ブラウザのキャッシュから簡単に抜き取れるように聞こえますが・・・

    アツマールでプレイするゲームのimgフォルダって丸見えってことですか?
    それともゲーム内でロードしたことある素材に限定されるのでしょうか?
    教えて頂けたら幸いです。
    munokura
    munokura
    キャッシュから抜けますよ。
    ゲームでロードされた素材がキャッシュになります。
    (ブラウザの挙動的に当然だと思いますが…)

    あと、スマホのChromeに機能拡張は基本的に入れられないっぽいですね。
    まるまる
    まるまる
    知りませんでした。ありがとうございます!
    画像や音楽の利用規約は凄い煩いけど、プラグインのライセンスがスルーされがちなのは文化(というか習慣)なんでしょうか?
    ツクールに関わってから、これは日本の文化なんじゃないかと感じています。

    海外で素材は「再配布OK」と書いていない場合、OKという解釈をするのが当たり前という空気みたいです。
    明確にNGと書いてある素材だけが、再配布禁止って感じ。
    法的にはOKと書いてなければNGで利用することさえできないんですが(笑)

    NGって書いてないプラグイン作者に連絡すると、OKOKって感じの人ばかりでした。
    更新前からほとんど役に立たないフォーラム内の検索機能は、更新されても…
    自分の投稿さえ探し出すのが大変というのは…

    気になった投稿をブックマークしておくくらいしか、対応策がないし、ブックマークを表示する場所も見つけにくい…(アカウント情報>ブックマーク)
    署名編集とかより使うんだから、そこに入れて欲しいなぁ
    とりあえず、続編を書きました。
    自分は何か考えるネタがないと死ぬ病気なので、次を考えなくては…

    追加の関数を作る話に飛ぶか?
    プラグインパラメーターが先か?

    んー、自分専用プラグインだと、パラメーターは要らないだろうしなー
    メモタグの方が使いたいだろうし。

    競合対策に関数を新規に作って、それを呼び出す処理だけ上書きするプラグインとかが良いのかな?
    正規表現とか配列とかが出るのは、ちょっと早い気がする。
    fspace
    fspace
    リンク先の記事は Multi-root workspace という機能に関するものでこれは必要ありません。単にjsフォルダをVSCodeで開けばOKです。

    ただ、対象のファイルをVSCodeが認識している必要があるため、開いていないファイルは検索結果に反映されないことがあるみたいです。

    Search Editorの開き方については貼ったリンクに書かれている通りで次のいずれかです。

    * "New Search Editor" コマンドを実行する
    * 検索ビュー(Ctrl+Shift+F または 左の虫眼鏡アイコン)の"Open new search Editor"ボタンを押す(上の方にアイコンがあります)
    * 検索ビューでの検索後、"Open in editor"のリンクをクリックする
    * 検索ビューでの検索後、"Open Results in Editor" コマンドを実行する
    munokura
    munokura
    自分が試したのは、コアファイル全てをVS Codeで開いた状態(タブが並んだ状態)で、検索ボタンを押したのですが、開いているタブの中での一覧しか取得できませんでした。
    なので、そのファイルのみを対象としたGrepなのかな?と考えました。

    Search Editor はできました!
    しかし、あの解説で書いている「levelとfunctionが書かれている行」を探すのは難しそうです。
    もし、それができるなら、そちらで書き換えたいです。

    あの記事の主題は書き換える場所を見つける方法と、関数の上書きをすることがプラグインの主な動作であることを説明することなので、これが簡易でないとスムーズに伝わらない気がしています。
    fspace
    fspace
    少し調べてみたところ、.gitignoreで無視しているファイルはデフォルトで検索対象から外れてしまうみたいですね。自分の環境で検索結果に反映されないことがあったのはこれが原因だったみたいです。もしかしたら他にも何か除外される条件があるのかもしれません。

    "level"と"function"が書かれている行を検索するとなると正規表現になってしまう気がしますが、"level"を含む関数を見つけたいのであれば、シンボルの検索(Ctrl+T)で"level"と打てば見つかると思います。ただし、ソースコードが解析されている必要があるので、対象のファイルを一度開く(あるいはjsconfig.jsonを追加して対象を設定する)必要があるかもしれません。
    久しぶりに記事を書いたけれども、そろそろネタが付きた感が強い。(これもアーヴェル氏の記事の入門版みたいなものだし)
    FAQが見えてこないし、画期的なプラグインとか作れないのは分かってるしなぁ…
    munokura
    munokura
    プラグインの作り方入門は、他にも記事が色々あるのだけれど…自分が参考にして試行錯誤した結果で理解した現時点の方法はアーヴェル氏の記事に書かれていた。
    読んだ時「あれが最初だと難しいんじゃないかなー」と思ってるところで、ツクマテで「コアを書き換えたのですが上手く行きません」質問が来たので、この記事を書く気になりました。

    比較的反応が多いようなので、自分が学んでいった順というか教えるとしたら(一応、教育経験者)、こういう順にすると、そこに早く辿り着けるんじゃないかなーという流れはあるので、連載してみるのも面白いかも知れない。
    とりあえず、記事のカテゴリは既存のプラグインの組み合わせとは大きく違うので分けようと思います。

    まず、非表示にしたい項目を探して、非表示にするのが最初かな?と思うので、次を書くなら、書き換える場所の探し方かな?
    カエルは助けることができますか?
    munokura
    munokura
    できません。
    遊戲人
    遊戲人
    私はそれがそうであるに違いないと思った....私は間違っているかもしれない...
    MOGシリーズは即時関数にしてないし、バグ多いし、ヘルプ少ないし、ベータ版って書いてあるけど、サンプルがあるしビジュアルが強いから使いたい人多いですよね…
    • Like
    Reactions: もふもふ
    S
    sally_elly
    僕もムノクラさんに同感です。
    jsの仕様がわかれば簡単なような気がする…と思いながらトピックにて提案をしました…。
    munokura
    munokura
    JavaScriptというよりも、ツクールコアの仕様ですよね。
    パラメーターが取得できるスクリプトがあっても、条件分岐で16個を書くのはしんどいですからね…
    S
    sally_elly
    想像しただけでも面倒な気持ちがあふれてきますね…
    「いいね!」仙人トロフィーをいただいた。
    しかし「そんなのあったのか」と「みんなもらってるはずなのに、見たこと無いの何で?」と思ったら、投稿者のプロフに表示されているのってバッジだった。
    トロフィーとバッジを分けて考えてなかった
    海外から本家の日本にツクール素材の宣伝が来るようになるとは、凄い時代になったなぁ…
    運営はスパム対応がより大変になったとも言える(変な日本語でもちゃんと読む必要があるし、リンク先も見ないといけないし、海外IP弾けばOKってわけにもいかない)
    マジ大変
    こまどり乳酸菌
    こまどり乳酸菌
     海外フォーラムに突っ込んで行かなくても向こうから素材提供者がやってくるなら、我々利用者からしたら喜ぶべきことですね:kaohi:
    神無月サスケ
    神無月サスケ
    僕が怪訝に思うのは、今なぜ日本のフォーラムにわざわざ日本語で投稿する? という点です。海外のフォーラムの方が英語だし、参加人数もけた違いに多いし、情報量も日本のそれを凌駕している。以前ムノクラさんは「英語で書いたが通じなかった」と言う通り、投稿者は英語が出来ないのかもしれませんね。とりあえず「それでもなぜ日本のフォーラムに?」って疑問はぬぐえません。
  • ロード中…
  • ロード中…
  • ロード中…
  • ロード中…
トップ