このブログでは、地上に住まう地底人のようなものが RGSS3の素材を配布してたり、プログラムの話をしたりしています このブログについて 「地上の洞窟」についてもう少し深く語っています。 RGSS3素材 「RPGツクールVXAce」で使えるRGSS3の素材を配布してい…
class Array def bsearch(v) l = -1 r = size while r - l > 1 m = (l + r) / 2 self[m] >= v ? r = m : l = m end self[r] == v ? self[r] : nil end def bsearch_index(v) l = -1 r = size while r - l > 1 m = (l + r) / 2 self[m] < v ? l = m : r = m e…
凝った経験値曲線を簡単に作成RPGなどで用いられる経験値テーブルを自在に作成するためのツールです。 レベル そのレベルの辺りで、レベルアップに必要な経験値がどれぐらい増加しているか これを設定していくだけです。必要経験値を区間的に頭打ちになる部…
私たちはいつも、何かを探し求めている。 けれど、探すという行いを理によって主体的にするならば、それは大体「知っている」ことしか見つけられない、致命的な矛盾だ。 知りもしなければ、上手く行った試しもない中で、「見つける」「いいものを求める」な…
ジャンプリストタスクバーやスタートメニューに登録したアプリケーションを、右クリックした時に表示されるメニュー、それがジャンプリストである。 このジャンプリストの項目を、アプリケーション独自に変更する方法を紹介する。 概念 実装例 「タスク」に…
エクスプローラー上でファイルを開き、アプリケーションを起動する場合。 既に起動しているアプリケーションにファイルを渡したい時、どうしたらよいか。 主に、以下の手順を組むことになるだろう。 多重起動の検出 元プロセスを探す 元プロセスへファイルパ…
エクスプローラー上で アプリケーションに対してファイルをドラッグドロップ ファイルを右クリック→[プログラムから開く]→アプリケーションを選択 などとして、アプリケーションを起動した際。 この時、渡されたファイルはどうやって取得するのか? 実践 渡…
私は相手を見誤っている皆、これ以上はない、完璧だ そう思って行動しているあるいは、これはできない ○○があるから それぞれが見えている条件や、深く根付いている感情 それ故に、行動しないそういう人に こうすればいいのにって 思ったり言ったりしてそう…
自分は誰の役にも立たない 数字も生み出せないし 誰かより何かができるわけでもなく 面白い話もできない 何のために生きてるんだろうそんなこと考えても無駄なんて分かってるでもそう思い悩む最後の自分まで否定しないでよ 辛い時は何もなくたって辛いのは真…
スタートからゴールまでの最短経路を調べるある地点からある地点まで移動する際のルートを調べたい。 そのルートが最短であってほしい。 ゲームの自動行動や敵AIなどを作るのに使ったりする「経路探索」の考え方と「A*アルゴリズム」について解説する。 経路…
1 2 3 4 5ここにある数字を好きに組み合わせて足していき、目標となる値を作れるか? そんな問題を「部分和問題」という。9を目標の数とする場合 1, 3, 5 2, 3, 4 4, 5 目標の数となる組み合わせはいくつかあり、その中でも4, 5が手っ取り早い。 このような …
yukari yukkuriある二つの文字列がある。 この二つを全く同じ文字列にするのに、一文字ずつの挿入・削除・置換を行う。 それらの操作は最小で何回だろうか? このような「最小操作回数」のことを「編集距離」*1と呼ぶ。バージョン管理や分析、つまりは差分や…
どうにもならないような巨大な壁。 それは逆に言えば、いくらでも果てしなくぶつかっていける。 監獄の中の永久にも思えるが、捉えようでは、究極の娯楽なのかもしれない。非の打ちどころが無くなって、現実は一つ一つ片づければよくなって。 そんな人生に不…
10になるカードの組み合わせはある?数字の書かれたカードが並んでいる。 この中から好きなカードを選び、書かれた数字の合計が10になる組み合わせは存在するか? このような「部分和問題」を「動的計画法」を使って効率よく解く方法を考える。 部分和問題を…
どれを持ち帰る?冒険者が旅の途中、たくさんの宝物を見つけました。 しかし、持ち帰れるのは8kgまでです。 持ち帰る宝物の価値が最も高くなるには、どれを持ち帰ればいいのか。 それを知るべく我々はアマゾンの奥地「動的計画法」の奥地へ向かった・・・。 …
全探索では解けないような難しい問題を解くのに欠かせない「動的計画法」について考える。 動的計画法とは 「フィボナッチ数列」の計算 愚直な計算 動的計画法を使う計算 実装 Non-DP DP(メモ化再帰) DP(ループ) →②「ナップサック問題」 動的計画法とは そも…
アプリケーションの位置を記憶させたい やり方 終了時: 位置の記憶 起動時: 位置の設定 実装 画面外へ出てしまう場合の対処 アプリケーションの位置を記憶させたい よく使うアプリケーションは、決まった位置にあると便利。 しかし.NET Frameworkにウィンド…
小さいけど高機能を目指した「音楽再生ソフト」です。 音声ファイルの再生 再生デバイスを指定して再生 イコライザー機能 プレイリストの作成、編集、再生 動作環境 Windows 7以降(当方Windows 10で動作確認) .NET Framework 4.7.2 本ソフトウェアの使用によ…
配列内の要素を移動したい。具体的には 0 1 2 3 4という並びがあったとしたら、 この内の0番目の要素を2がある位置へ持っていき、その他の順番は保持しておきたい。 つまりは、以下の様にしたい。 1 2 0 3 4 実践 そういうメソッドはあるのかもしれないが、…
ファイルを名前順で並べたい 普通にソートしてみる 自然順で並べる ファイルを名前順で並べたい これは適当なフォルダをエクスプローラーで表示したもの。名前順で並んでいる。 このフォルダのファイルをSystem.IO.Directory.GetFiles(string path)で取得し…
お札が変わる www.npb.go.jp7月3日から紙幣が変わったそうな。まだ実物は拝んでないのだけれども。 Twitterとかで散々ダサいと言われていたフォントやデザインはそのまんま。 ちょっと残念な気もするが、今後はこいつらがダサくても欲しい物TOP3を占めるだろ…
知ってる場所へテレポートができる(ルーラ!)登録された場所へテレポートする画面を追加します。 (動作には「CraftLib」スクリプトが必要です) スクリプトコマンド一覧 TravelPoint.set(map_id, x, y, name = nil) マップID、X座標、Y座標、登録名(任意)を…
久々に上げるものがスクリプト素材でもなくアルゴリズム解説でもなく MinecraftのApplied Energistics 2というMODの話である。 いわゆる工業MODの類で、こういうものを駆使してコンパクトな高機能な 生産ラインや倉庫などの物流システムを作ったりするのが、…
とある界隈のお話である。 その界隈は、AIによる研究が盛んで、 その研究を「ぶつけ合う」ようなことが、その人々の間で行われていた。しかし、その界隈の人間のまるで頂点に立つような人間が零した。 「こういったAI研究のぶつけ合いが出来たのは、そのAIが…
前置き Win32APIの概要 Rubyの「Win32API」クラス Win32APIで出来ること 実装 解説 Win32APIクラスの初期化 関数の呼び出し キーの押下判定 まとめ おまけ(役立ちそうなリンク) 前置き RGSS3みたいな「ゲーム系のアプリケーションでキー入力を取得したい」 …
滑らか(?)で簡単なスクロール指定の座標に向かって、加減速を交えた滑らかなスクロールを実行します。 中の計算式は超適当とか言えない ← ちゃんと修正したよ! スクリプトコマンド一覧 DynamicScroll.scroll(x, y) マップ座標 x, y が画面の中心になるよ…
自分は不安定な人間だ。ある時はその道を極めたプロのように、神がかり的な能力を発揮するが、 ある時は見るに堪えないような、素人かよと嘆きたくなるような最悪な状態が続いたりする。こういう不安定さがあるから、「自分は強い」と言い切ることはできない…
とりあえず雑記。どちらかというと役に立たない文章を ネット上に掲載するのは初かもしれない?いや、いつも役に立たない文しか書いてないか。まあそれはさておき、最近は将棋を指す上でのマナーが話題だったりするらしい。チェス然り将棋然り、王様を取られ…
mp4 → gif変換「FFmpeg」を使用して、動画をアニメーションGIFに変換する方法を紹介します。 FFmpegのダウンロード バッチファイルの作成 バッチファイルの説明 まとめ おまけ FFmpegのダウンロード 「FFmpeg」をダウンロードします。github.comここのLatest…
「ポップテキスト」スクリプトの使い方・改造方法を解説します→スクリプト一覧へ →「ポップテキスト」スクリプト配布ページへ