ココロミにきみ

本と体とプログラミング

DIY App にんじん争奪戦@comet67p

木星の周期衛星である67pに、うさぎが降り立ちました

まずは一匹で探索

「これは試合にぴったりの場所だ!」となり、

仲間とにんじん争奪戦を行うことになりました・・・

(webアプリ:パソコンかタブレット推奨)

molingit.com

 

導入はウサギの話ですが、実はこの彗星67p(以後comet67p)のカタチが気に入って、ここを3D空間として跳んだり跳ねたりしたら、どんな感覚なんだろう?というのを体験してみたくてアプリを作り始めたのでした

 

そもそもは、探索さえできればよかったんだけども、それだと僕のようなごくわずかな地形フェチみたいな人にしか響かないので、なにかこの地形で遊ぶ理由が欲しいなと

で、最近別のところで戦略ゲームの構想練っていたので、陣取り合戦をやればいいんじゃないかと思いつき

で、戦略ゲームを作る難しさの泥沼状態を過ごして、晴れてアプリ公開となりまして

***

キャラはもう日本人ならウサギでしょ、とウサギたちの戦いにしてるうちに、戦略ゲームではあるんだけど、ウサギたちの活躍を見てること自体が楽しいなと思うようになり

崖から勇敢にもどんどん跳んでいくウサギたち

その軌跡を出すと面白そうだなと入れてみると、美しい跡が空間に一瞬だけ残って

ゲームの勝ち負けもだんだんどうでもよくなって、試合後のスポーツ新聞のような記録を思いつき、うさぎが主人公のストーリーに回収されていき

* * *

結果として、うさぎのにんじん争奪戦を行うために、まず地形を一匹で見に来て、そのあと試合が行われるという、当初まったく考えてなかった物語ができていきました

結果として、知らないうちにcomet67pの面白い地形を堪能するカタチになりました

たんに彗星の変な形を味わって欲しいだけだったのに対して、すごい遠回りをしたような気もするけど、結果として今まで自分がやったことのないものが出来てとても嬉しい

* * *

戦略部分の作り方を今回、はじめてトライした話を少しすると、if文を書きまくるのかなと思いきや、scoreシステムで、状況に応じてキャラの位置や能力と合わせて、自動で判断が行われていくやり方をAIからおすすめされ

裏で動くのはやはりif文なんだけど、人間の作る側としては、

・にんじんが近いならゲットしにいく:3point

・敵が近いなら当たりにいく:2point

みたいな割り振りを行なうだけで、キャラは毎秒、そのscoreを比較して行動を決めていく、というやり方です

そうすると、だいたい何かの行動をキャラたちは行います

ただそれだけだと判断基準が同じなのでお団子サッカー状態になります

* * *

で、やはり陣形を作って攻めたいと思っていたので、陣形を作れ作れとAIに言ってると、scoreシステムだとダメっぽいですねーとか後から言われて

それで陣形を優先する判断パターンに変更

ただ、陣形が機能するためには「にんじんのパスの機能がちゃんと働くこと」という条件が見えてきて

その時点でパスの成功率が10%ぐらいしかなくて、失敗ばっかりする理由がわからず

うさぎの行動全歩記録を取れとか、負荷をかけようとすると、平均値でいいんじゃないですか?とAI

いやいや、全歩記録だー!とちゃんと取らせると原因が見えてきて

ここらへんは自分で気づくほかないのですが、複雑な仕組みの中で出る傾向的な問題の分析は、人間が直観でやらないと無理だなと(最上位モデルとかだといけるのかな?)2026.09現在の感覚

* * *

あと今回新しくやってみたのは、にんじん争奪戦が始まるときに、近景と遠景を強制的に見せるzoom移動を背景に作ったことです

彗星のカタチの面白さと、その上で行われる点サイズのうさぎのアップとの比較がイッッキに見れて、ゲームの感覚が伝わりやすくなったんじゃないかと個人的に

 

いろいろな側面で今回は自分としては、アプリ制作の一つの区切りとなるものになった気が・・・(笑)

さて次のアプリも構想は始まってるのでまたその時にお会いしましょう〜

 

p.s.試合後のusagi sports が出るように!

 

DIY 南海トラフ探索APP

ごきげんよう、新しい体験をカタチにしたい大村です

今日は南海トラフ探索Appを作りました

https://molingit.com/troughin/

 

以前作った「相模トラフ探索app」を友人に「つまらん」と切り捨てられ、リベンジ的な意味ありもあり(笑)

 


見ての通り、3D空間に地震の起こった場所や、科学調査地点情報をいれています

このアプリを触ったとて、地震対策にはなりませんが知りたい欲求は満たされる(笑)

 

動きはこんな感じです


www.youtube.com

 

ゴールとかはないので満足したら終わりです

端はどこまで行けるのか知りません

瀬戸内海のほうも、テキスト情報とかはないけど行けるとAIが言ってました(笑)

アプリ範囲を製作者が知らないいい加減さが売りです

 

ご賞味ください

DIY pop-up cardデザインアプリ

紙工作の時間がやってきました

ごきげんよう、新しい体験を形にしたいおおむらです

今日はポップアップ紙アートの世界です

* * *

カードを開くと、立体が立ち上がる「折り紙建築」をデザインするアプリです

molingit.com

 

まずはデザイン

右側からパーツをドラッグして、組み合わせとサイズを調整

 

いったんプレビューモードで3Dを確認

まぁよい感じ

 

PDFとしてダウンロードできるので、印刷してカッターでキコキコ

レーザーカッターにも対応してます(trotecレーザーに最適化)

というか細かいパーツはレーザーカッターでないとツライ・・・

 

そして一番の難所、立体化

階段パーツが難しいです

コツってあるのかしらん

 

アプリの操作はだいたいこんな感じ


www.youtube.com

 

ポップアップカードって、子供のときから好きだったのですが、誰かのデザインをコピーするだけだったので、自分でデザインできるというのはポイントが高いです

二次元から三次元に変わる瞬間って、いつもドキドキするというか、想像と違う形になるのが面白く

面白いデザインできたら教えてください

 

p.s.デザイン・シェア機能をつけました

googleのfirebaseとgithubという環境とAIのおかげでshareが簡単に

アプリ内のデザイン共有ボタンでfirebaseに保存されて、githubから週一とかで追加コマンドをymlファイルで回すという

最初はなんのことやら?ですが、2、3個アプリで同様の機能を作ると慣れてくるもんですねぇ

 

共有デザイン・シリーズ

まずはピラミッドですよねー

 

 

そしてお城

これが作りたいがために屋根ブロックをパーツにしたり

 

ごてごて作りすぎた反省に、welcomeカード用

「3時のお茶に来てください」とか書いて

 

ネコ登場!

あざとくネコ好きを狙い撃ち(笑)

 

DIY 散歩ルート提案アプリ

散歩が好きなのですが同じ道は飽きてしまうし、できたら行きと帰りは違う道を歩きたい

そんな欲望を大事にしようと、散歩道を地図データから自動で提案してくれるアプリを作りました(リアルタイムじゃないよ、作り置き)

「散歩道 yompo 」

https://molingit.com/yompo/

 

*画面は開発中のもの

 

さて、使い方とかはおいてくとして、作り方の話をします

散歩道の自動提案は、数年前からずっと考えていました

地図データは国土地理院にあるから、どうやって「散歩に快適な道」というのをデータから抽出できるのだろう?かと

難問ですね

思考実験として面白いので、よかったらご自身でも考えてみてください

思いついたのは、データの使い方に自分的な発見があったからです

 

* * *

 

今回のケースでいうと、散歩に快適なルートは歩くために作られた道で、

A.道路の幅と、

B.道路の曲がり具合の変化率

で出せるのでは?というアイデアが浮かびました

歩くのに良い道のイメージは旧街道で、車用に作られてないから道路幅が狭いはずで、道路の曲がり具合が運転向けでないはず、という指標です

現代の車用の道路では、運転時にハンドルを切ったあとずっと同じハンドル状態で進めるカーブは計算されてそうなっています

でも、昔の道は重機がなかったから、地形を生かした道しか作れなかった

なので、カーブの曲がり具合の変化が激しいのです

想像つきますよね?

* * *

というわけで、道路の幅と道路の曲率の変化率でフィルタリングしました

でもこれだけじゃ上手くいかなかった(理由割愛)

その上で、fable AI ( claude5 )に質問すると

そもそも道を個別に評価してあとで繋げてループにするとかじゃなくて、すべての要素をscore化して、それを繋げて評価の高いものをルートして並べるのがいいんじゃないでしょうか?

そして、昔のいい道は神社仏閣に通じてることが多いので、神社仏閣を通る道はsocre加点、駅発も加点、地形に沿ってる道も加点みたいにしたらどうですか?

という提案をされました

素晴らしすぎる

というわけでアプリの方向性は決まったのであとは、ひたすら国土地理院から地図データと地形データの、細切れファイルで合計数十GBダウンロードの日々が始まったのです・・・泣

お行儀よくするために、ちゃんと間をあけてダウンロードの指示を出してるので、余計に時間がかかる・・・残り60000分って表示にしびれた(笑)

 

この画面とともに長い時間を過ごしています・・・

 

アプリの作り方の話に戻ります

そうやって地図データと地形データを揃えて、道の評価データをつくります

1.地図データは道が最短数メートルとかに分割されてて、それに一つ一つscoreを付与していく

2.道をつないでいってループにする(なかなかの処理時間)

3.scoreの評価順に並べて、存在がまばらになるフィルタをかける

4.geojsonデータが作られるので、それをappに読みこませて表示

 

データ処理はほぼpythonでやってます

アプリ制作プロセスもそれなりに大変でしたが、最終的にかかる時間の99%はデータのダウンロード時間とルート計算時間です

膨大な量のデータを扱うときは、数パーセンの改善がめちゃくちゃ効くというのを実感しています

AIはそのあたりの感覚に無頓着で、ビシバシ人間側が追求する必要がありました

ほんとにしつこく・しつこく改善案を追求するのが吉です

 

* * *

 

全体を振り返ると、そもそもfable祭り期間(2026.07.01-07)じゃなければ作らなかったアプリだとおも思っていて、作れたのも嬉しいし、技術的なこと以外にも新しい発見がたくさんあって面白い時間でした

firebase やGASの使い方にも慣れてきて、フロント系のみだった状態からバックエンド処理が視野に入ってきました

すべてはAIさまさまです(笑)

 

p.s.機能の説明で、現在地表示もできて、

1.スマホの設定でブラウザに位置情報の使用許可をしておく

2.アプリ上で現在地マークのボタンを押して、現在地の使用を許可する

と地図上に現在地が表示されます

 

 

DIY 案内地図makerアプリ

フライヤーにお店までの地図を入れたい!!

そんな時に使ってほしい、案内地図メーカAPPを作りました

その名も「万来:BANRAY」!!!(笑)

https://molingit.com/banray/

 

これは作ったところで、ここからPNGでダウンロード

 

使い方(このアプリ必要だなと思ったら見た方が早いです)


www.youtube.com

 

ぜひ触って見て欲しいのが、略図を作ったあとの「省略度合いスライダー」

これがさ、スタート地点とゴール地点を地図に入れておくと、その間の道の周りだけ残して、あとの道を消すという処理ができるのよ!!!

すごくない??

裏側でAIが動いてるわけでもないのよ

・・・まぁ魔法は任せてくださいよ(笑)

 

* * *

 

ここからは余談ですが

このアプリの「最短距離を結ぶ道がだいたい残る」感って、葬送のフリーレンに出てくるユーベルの「だいたい切る魔法」に発想が近いなと思って

「適当な2点をだいたい繋ぐ魔法」と言い換えるとより伝わるかも

逆にいうと、最短距離だけをぴったり残すことはできないのがこのアプリであり

 

より一般化すると、アプリ機能のだいたい解決感を許容して、運用側の微調整でなんとかする、というのを前提にするとアプリ制作にAIを一番活かせるのではないかと

この辺りは全て個人開発での話ですが、BtoBでもそういうところが出てくるんじゃないかな

DIY 図書館内読書数カウントapp

図書館の公的存在価値って「貸出数と来客数で語られることが多い」と聞きまして

いやいや、図書館内で本を読んでる人いるじゃん?と思うけど、それはカウントできないから、されてない

・・・ならばカウントしてもらおうと「図書館内読書数カウントapp」の提案です

雛形の一つとしてご活用いただければと


www.youtube.com

 

個人的に図書館が好きでお手伝いできることがあればと

(後半にざっくり手順とcodeを載せますが、AIに聞いて使ってください)

* * *

メイン画面で、図書館利用者に帰り際にiPadで使ってもらう想定

年齢区分と本の数を入力して、oKを押すとデータが登録される

 

その後、コメントが表示されるのと、今日図書館内で読まれた本の冊数合計が、年齢別と全合計と共に表示されます

そして海外の美術館から今日の一枚画像が表示されます(ここは地域のデジタル・アーカイブを表示するのに差し替えるとかがオススメかと)

 

で、スプレッドシートにデータが記録されていきます

その集計の使い方は用意してません

 

とまぁ、こんな感じのアプリです

中身よりかはこれをどう実際に運用できるか?のほうがずっと大変だとは思いますが

図書館の価値向上委員会としてはぜひお手伝いしたい所存であります

 

* * *

ここからは裏側の作り方の話です

続きを読む

いまさらのchatGPTとの英会話練習

たまたまですが、chatGPTとの英会話練習が3ヶ月続いています

1日も欠かすことなく毎日15分くらい

人生初(笑)

今日はアプリじゃなくてAIとのおつきあいの一つの話です

 

* * *

 

で、その英会話練習が続いてる理由とchatGPTショック(笑)をシェアしようと

(残念ながら万人向けではなくて、ある程度、英語を勉強してきた人向けの話です)

 

さきに、chatGPTショックを話すと、2026/07/09からのchatGPT(有料版)の音声会話能力が飛躍的に上がって、中に人が入ってるんですか?レベルになってました

3ヶ月毎日話してきたから、そりゃ分かります

さらっと書いていますが、昨日周りの友人と試したら全員ビックリしていました

というか気持ち悪いと

不気味の谷ですねこれはきっと

 

無料版の旧版でも、一度も試したことない人には十分魅力的なので、お勧めです

そしてchatGPTの有料版は最初の1ヶ月を無料にしてくれるんじゃないかと思うから、一回試すのもありですよ?と言いたい

 

* * *

 

で、続いた理由の話をすると、話すこと以外何もしなかった、というのが大事だったのかなと

予習復習を一切しない

余習(今作った造語)をしない、が大事かも

ああそうか、勉強ではなくて、

たんに英語という手段で会話をする時間が1日の中にある

という感覚なのかも

 

* * *

 

で、1ヶ月ぐらい経った時に、インスタのリールを大量に見た日があって、その時に英語の説明がどんどん耳に入ってきてビックリしたんですね

わからない単語はたくさんあるのに、なぜか英語がわかる気がする

という不思議な状態に

ちなみに話すほうもだいぶ慣れてきていて、ある程度口をついて英語が出てくるようにはなっていました

話せるようになると聞けるようになる、という言い方がありますが、まさにそれ

 

* * *

 

ついでというか、スペイン語も同時に3ヶ月やってたのですが、こちらは文法があやふやで、単語も少なめなので、会話にならないのでモチベーションを維持するのが辛いです

なので、ある程度、語学勉強してきたのに話せない!!っていう人に一番効くやり方だと思います

たんに会話といっても内容をどうするかは本当に難しくて、英語はまだしもスペイン語は苦労しています

そのあたりをみんなで共有したいですねー

このレベルぐらいだとこういうやり方がいいよ、みたいな