ギュワーン
海外のとある天才忍びの発明が話題になっている。エイトロックスがウルトを使用すると、部屋の照明の色が変わるプログラムを開発したのた。
詳細は動画を見て欲しい。
OPによると、このプログラムはWizという照明を使用しており、処理の流れはおおまかに以下のようになっているようだ。
- 使用ライブラリ: “requests”
- 用途: “https://127.0.0.1:2999/liveclientdata/allgamedata” へのGETリクエストを行う。
- データ取得:
- 取得内容: チャンピオン、召喚師の名前、ステータスなど。
- チェックする値: jsonの [“activePlayer”][“championStats”][“resourceValue”]
- エイトロックスのアルティメットスキルの動作:
- ウルトがアクティブの場合: 値が1より大きい。
- 明るさの計算: 値に25を掛け、5を足す(0-255の範囲で調整)。
- 電球の操作:
- ウルトアクティブ時: 明るさが変動。
- スキルが切れた時: 色を白に戻し、明るさを255(最大)に設定。
ホーム | 日々の生活にスマート照明を | WiZ
お使いの Wi-Fi でスマート照明をセットアップ。プラグアンドプレイ型の WiZ ライトは、クラウドに接続して、見る、読む、暮らす、それぞれに最適なアンビエントを、Google Assistant、...
また、まったくの素人がこのシステムを開発するためのロードマップの一例は以下。
- Pythonの基本を学ぶ(ループ/配列/IDEのセットアップ/パッケージのインストールなど)
- LeetCodeのtwo sumを解いて基本をテストする。解けたら次へ。
- REST APIについて学び、PythonでのGETリクエストの作成やJSONファイルの処理方法を学ぶ(LoLクライアントがREST APIかどうかは不明だが、概念的には似ている可能性がある)
- Wiz電球のPythonドキュメントを読み、電球の制御方法を学ぶ
- async/awaitと、それらをPythonで使用する方法について学ぶ
- 無限に実行されるwhileループをセットアップする
- ライブゲームデータのリンクを使用し、PythonコードがデータをXミリ秒毎にリクエストするようにする
- 対象とするチャンピオン/スキルを特定するためjsonをフィルタリングする
- 明るさを設定するために、その値を0-255の間で補間する
- その明るさの値をWiz電球に送る
反応
- すごいねこれ。スウェインとか、ノクターンなんかにもめちゃくちゃ合いそう。
- OP:ノクターンは友達に提案されたよ。ウルトを押すと電気が消えるっていうね。
- ルルのウルトは、紫のフラッシュを点滅させる。
- ゼリのウルトは、ブレーカーを落とす。
- 待ってこれ凄すぎる。他のチャンピオンやスキルのためにコードを公開したり、改造したりする可能性はある?
- OP:もうちょい整えたら実際公開したいんだよね。今のところ、ほぼ手動みたいなもんで、ちょっとでも条件ズレるとダメなんだよね(ゲーム中じゃないといけないし、Wi-Fi再接続とかはダメ、電球もずっと電源入れっぱなしとか)
ケイルのレベルや進化に合わせて明るさ変えるのも考えたし、マナに応じて色変えるのもいいよね(青→消灯)。あと、キル数に応じてサミーラのステージカラーに変わるようにするのも考え中。
- OP:もうちょい整えたら実際公開したいんだよね。今のところ、ほぼ手動みたいなもんで、ちょっとでも条件ズレるとダメなんだよね(ゲーム中じゃないといけないし、Wi-Fi再接続とかはダメ、電球もずっと電源入れっぱなしとか)
筆者もぜひ挑戦してみたいが、今のところ時間を捻出することが難しそうだ。やってみたよというチャレンジャーな読者諸賢は、ぜひコメント欄等で教えて欲しい。
Source: Controlling my bedroom lights with Aatrox R
管理忍
創意工夫でござる。
おすすめ関連記事
【LoL】約束通りゴミからエズリアルのガントレットを作った
海外のワクワクさんが過去にも才能を爆発させていたことが判明。
【LoL】約束通りゴミからエコーのバットを作った
海外のワクワクさんの勢いが留まることを知らないことが話題に。
LoLに関して、「よく言われるけど間違っていること」を挙げていこう
このゲームに関するよくある誤解をそれぞれ主張するスレッドが話題に。
コメント
草
ゲームデータってリアルタイムのGETリクエストで取れるんだな
しかもちゃんと更新もリアルタイムで行われてるのか
なんか前ヴェルコズで似たようなの見た気がする。スキル使うたびに光るやつ
https://lolninja.net/2021/01/04/25353/
あったわ
これです!見つけてきていただいてありがとうございます!
チャーム食らったら照明ピンク色にしようぜ!
ここまでやるならミラーボールの照明マシマシにしてほしいな。絶対に集中で来なさそうだけどw
sonaのultが当たったらミラーボールが派手に回り出すとかも面白そう
「相手の」ノクターンがR使った時に電気が消えたら面白いな
LOLのイベント会場でもやったら盛り上がるかもw
思った。試合だと選手の妨害になるから駄目そうだけど、イベントなら良い演出になりそう
トリンやトランドルのRにも付けたら、かなり実用性もありそう
配信者向け?
leetcodeで草
この人ならできそう。
https://www.youtube.com/watch?v=xKF23WlJexQ
レナータの戦わなければ死あるのみ状態も照らして欲しい
オレソルのウルトが使われたら家を揺らす
今年のLJL決勝でドラゴンとかバロン取った時に観客席のふちあたりが鳴き声と共に色変わるやつを思い出した。実際に家でできたらかっこいいなーとか思ってたら実際にやる人がいるんだからまじでロマンに溢れてる。
相手のトリンダメアのRにも照明変わるようにしてくれ あの演出わかりにくくて戦っている時嫌
キーボード操作でトリガーしてると思ったらゲーム情報とってきてるのか
これ敵の情報も取れたりするのか?ウルトのCDとか
真の視界を獲得
キルストリークするたびに色が変わって
ペンタキルでフラッシュしまくるとか
ガレンがEで練るほど色がかわるとか
モルデRを食らうとブラジルの曲が流れ始める
類似した技術か分からないけどチャンピオンの声を立体音響でプレイヤーの耳に囁くように出来ないかな
タリック使いとして誰か頼むよ
PoppyのR喰らったらベイルアウトする射出座席頼むわ
エコーウルト使ったら4秒前に戻れる装置つくって
無限ループでひたすらGet叩くってもうちょっとイケてるやり方ないか
その意見はわからなくもないけど
誰でも最初の頃に作るプログラムなんてこんな泥臭い構文だったろ
デスする度に電撃流せるとかできるのか
めっちゃ細かいけどデータ取得の部分でサモナーが「召喚師」って訳されてるな…翻訳難しい
カタリナultで椅子がグルグル回るようにしてくれ
LOLのAPIわからないんだけど、これ相手のチャンピオンのスキルもゲットできるのかな?
CDとかもそれである程度把握できそうて悪さできそうな・・・
例えばこういう時に照明が切り変わったら楽しいだろうな
ノクターンにRされた時とか、
モルデにRされた時とか、
モルガナのQ食らった時とか。
どうやってとかの前になぜこんなことをしたのかの方が気になる