「てSt」を含む日記 RSS

はてなキーワード: てStとは

2023-08-19

著作権侵害叩くならTabletop Simulatorのプレイヤーどんどん批判してくれ

彼ら普通にカードとか吸い出してSteam Workshopに投稿してるからね。

私的利用ならともかく、アウトでしょ

2023-07-12

手越祐也を愛していた、愛していたかった。今でもきっと愛している。

近頃平野君と神宮寺君の、というか脱退ジャニーズ関連のニュース世間を騒がせている。

ジャニーズ卒業・脱退・解散する、というニュースを聞くたびに、私は手越のことを思い出して苦しくなる。

手越祐也がNEWSを、ジャニーズをやめて3年が経った。

なんでこのタイミングで書き起こそうと思ったかというと、前述のキンプリ騒動をはたから見る中で、そろそろ一度振り返ってみてみてもいいんじゃないかと思ったからだ。

というか、オルタネートを書いた加藤さんではないけれど、あの出来事から3年という長い月日がたって感情的ならずに思出せるようになって、でもこれ以上離れてしまったらきっと気持ち記憶も色あせてしまうから、「今」が最初最後タイミングなんじゃないかと思った。

何を話すかといわれると難しいが、結局のところ手越のことをどう思っているかというお気持ちと思い出をたどるための文章である

どこから話そうか迷ったが、時系列順で話すのが一番いいのかもしれない。

小学生のころ、私はジャニーズなんてみじんも興味がなかった。

なんか女子が騒いでるなあという感じで、当時の関心ごとといえばサッカー観戦、ポケモンイナズマイレブン受験勉強ライトノベル、あとはおままごととかだろうか。

でもVS嵐も、イッテQも、地獄先生ぬ~べ~も、鉄腕ダッシュも見ていたし、キスマイの光のシグナル(ドラえもん主題歌だった)も大好きだった。

ごくごく普通小学生だった。

中学生になって、親友ができた。

彼女は歌がうまくて、カラオケが好きで、そして増田担だった。彼女カラオケに行くと、親友は必ずNEWSの歌を入れる。

当時4+FANの合いの手リズムがわからなくて苦戦したのをいまだに覚えている。

友達が歌う曲をどうせなら一緒に歌えるようになりたいと思うのがカラオケ好きの性である

親友に頼んでNEWSCDを貸してもらい、聞いてみたのが多分2017年

まずNEWSの歌にはまった。

アルバムを4つくらい借りたのでそりゃ一曲くらい好きな曲もできるし、テゴマスは当時から歌がうまかった。

歌番組の時に親友からアナウンスがあったので、時間が合えば見ていた。

当時日テレっ子だった私は、イッテQ手越を、everyで小山さんを知っていた。

気づけば親友からテレビドラマバラエティ番組情報アナウンスも入るようになり、私はNEWSをしっかり好きになっていた。

親が厳しかったためにファンクラブは入れず、ライブも行けなかったが、私は私なりの最大風速でNEWSのことが好きだった。

それから2020年まで、のんびりと、自分なりの距離感ではあったが「好き」を貫いていた。

2020年2月NEWS LIVE TOUR 2020 STORY当落発表があった。

2017年のNEVERLAND、2018年EPCOTIA、2019年のWORLDISTA、最後2020年STORY

4つのライブ頭文字をつなげると「NEWS」になるこの4作品は、通称「4部作」と言われるもので、NEWSにとっても、ファンにとっても思い入れの深い、大事大事ライブだった。

STORYアルバム)」にはファンの将来の夢が収録された楽曲や、メンバーからファンに向けてつづられた思いのこもった楽曲、9人時から気持ち言及するような楽曲インタビューなどがふんだんに盛り込まれていた。

チームNEWS全員にとって本当に大切なアルバムで、私たちSTORYライブ成功を心から願っていたし、心から信じていた。

しかし、世界新型コロナウイルスによる混乱に見舞われた。

様々なイベントの中止が決まっていった。

STORYももちろん例外ではなかった。

「来月にはこのパンデミックが収まる」と信じて駆けずり回ってくれた方がどれだけいたのだろう。

三大ドーム城ホ横アリ

大きな会場を抑えてファンのために準備してくれていた。

ライブ直前のラジオ内で行われたマジカバナナ的なゲームでは、「準備万端といえば?」「「「「STORY!!!」」」」と4人で口をそろえて言ってくれていた。

河川敷ランニング中、桜の舞う中で聞いたその言葉を今でも覚えている。

しかし準備万端だったはずのライブは一公演一公演丁寧に中止を重ねていき、結局全公演中止になってしまった。

実はあの当時、ファンの間でうっすら「STORYが終わったらNEWS解散or 何かしら節目を迎えるのでは?」という空気があった。

実際どうだったのかは本人たちに聞かないとわからない。

それでも、STORYに込められた気持ちはそれだけ大きかったのだ。

「この作品最後なのかもしれない。そんなことはあってほしくないけれど、もしそうであれば、悲しいけれどきっとどうにか受け入れることができると思う。」

そうファンに思わせるほどものだった。

時が来れば必ず報われると思っていた努力が、世界規模の不幸によってぶち壊されてしま気持ちは痛いほどわかる。

この辺は一回全員back number水平線』と 「入学から、この世界だった僕たちへ。」を聞いてきてほしい。

当時高校生だった私も何度も泣いた。

当時仲の悪かった母親背中をさすられながら、夜中に号泣したこともある。

高校生活の中で最も大事な思い出になるはずだった最後合宿が、文化祭が、体育祭が、すべてがなくなってしまうやるせなさに、どれだけ頑張っても結局行われなかったそれらにたいして、声をあげて泣くことしかできなかった。

そんな中で、私はジャニーズWESTに出会っていた。

彼らは底抜けに明るかった。

少なくとも明るくあろうとしてくれた。

まあ彼らに救われたことに関して詳しく書こうとすると長くなるので割愛するが、ジャニーズWESTと出会たことで私のジャニーズ世界は大きく広がっていた。

NEWSはびっくりするぐらいジャニーズ内での縦のつながりがない。

気がする。

あったらごめん。

小山さんと手越からちらほら後輩の名前が挙がっていたくらいで、残りの二人に関しては正直ほとんど思い出せない。

増田さんは兄貴高橋君がいるか

加藤さんは正門君と如恵留くんがまあ居るか?と思ったが、名前が出始めたのはコロナ後かもしれない。

少なくともグループ全体でかかわりの深い後輩グループみたいなのはなかったと思う。

NEWSしか見ていなかった時代、全員顔と名前が一致していたのは正直NEWSと嵐とTOKIOだけだった。

ジャニーズWESTはそこが大きく違った。

関西での縦の結びつきは、とんでもなく強かった。

WESTと仲のいいだれだれが出ているなら、時間もあるし見てみよう、という感覚で、芋づる式に「顔と名前とざっくり性格くらいまでなら把握している」程度のジャニーズが増えていった。

とまあそんな時期、手越が飲んでた。

外で、女の子呼びつけて。

「ねーわ」って思った。

でもまあ手越だし。

そういうやつだし。

そりゃ謹慎くらいするべきやろうけど。

まあ謹慎開けたらちゃんと戻って来るやろと思っていた。

文春では退所報道とかもあった。

正直なところ不安も大きかった。

Johnny’s world HAPPY LIVE with YOUが発表され、NEWSが3人で出演すると知ったときは動揺した。

見るのが怖かった。

それでもNEWSが好きだったから、あとこれは余談だけど、同じ日の出演者ジャニーズWEST(推し)とHey! Say! JUMP(当時好きだった女の子推し)だったのでその日の配信チケットを買わない選択肢はどちらにしろ無かった。

3人のステージを見て、安心した。

泣いた。

それはもうボロボロ泣いた。

簡単セトリを書くと

クローバー」:NEWSからファンへのメッセージソング、4人それぞれが自分パート歌詞を書いた。手越ソロパート前半は歌わず、後半は3人で向かい合って歌った。

weeeek」:6人時からずっと歌っているライブ定番曲であり、代表曲

エンドレスサマー」:6人時代の思い出の曲

「Going that way」:小山さんのソロ

世界」:加藤さんのソロ

「戀」:増田さんのソロ

UR not alone」:4人の代表曲ライブ最後アンコールで必ずうたわれる名曲。ラスラビ手越ソロパートこちらも歌唱ナシ

手越ソロパート部分を歌わないという選択をした三人を見て、三人は手越の帰る場所を守ってくれているのだと思った。

ほかの2グループアイドルらしいきらびやか衣装で華やかな曲を歌っていて、言い方を変えれば自分たちのファン以外の子たちにも楽しんでもらえるような、それでいて自分たちのファンにも愛を届けられるような、そんなバランスの取れたセトリを組んできたのに対して、NEWSははなからNEWSファンと、それから手越のことしか見ていなかった。

セトリを今確認してみても、MCがないのはNEWSだけだ。

状況が複雑な中、語ることを選ばなかったのかもしれない。

当然だろう。

でもそれと同じくらい、手越さんが一番輝くステージで、ライブという空間で、歌を歌うことで、私たちに、彼に、語りかけようとしてくれたんじゃないかと思う。

私は手越の部分の空席をあえて作るその演出を「3人は手越が返ってくると考えている、これはその表明である。何も案ずることはない。もう少ししたらまた4人のNEWSになる」と受け取った。

違った。ダメだった。彼は帰ってこなかった。

3人での配信ライブが行われた次の日、「18時半に手越に関する重大ニュースがある。おそらく退所報道である」という情報リークされた。

昨日の配信ライブで得た確信なんてものはいつの間にか崩れ去っていた。

私はそのリー情報が本当な気がしてならなかった。

どうしてもその事実を受け入れたくなくて、夕方17時に布団に入った。

ただの現実逃避だ。

知るタイミングを遅らせたからと言って事実が変わるわけではないのに。

朝起きて、ニュースを見た。

不思議とこの日の朝から記憶あいまいで、もしかしたら無意識で封じ込めてしまっているのかもしれない。

泣いた気がする。

気がするだけだ。

3人の側があれだけお前の居場所を作って待っていてくれたのに、なんて不義理なんだ。

せめてSTORYは終わらせてから抜けてほしかった。

あれだけ一生懸命準備してきたものを放りだして「今」退所しなきゃいけない理由があるのか。

事務所じゃできないことって何なんだ。

会見と、その後の活動半年間くらいはみていた。

でも結局彼がわからない。

今書いている恨みつらみが、どの時点で私の中に生まれ感情なのかも正直わからない。

「やめたくなかった」「まだ続けたかった」という発言散見されていた時、「じゃあやめなきゃよかったじゃん」「今ならまだ間に合うから、戻らせてくださいって頭下げて戻ってきてよ」と思っていた。

それと同時に、私たちを、四部作を、3人を、すべてを放りだして知らない人たちと知らないところへ行ってしまたことに激しく怒っていた。

暴露にもならないような浅い内容の暴露本を出したことにはぶちぎれていた。

それでも、彼が好きな気持ちもまだあった。

心のどこかで彼を信じていた。

彼を嫌いになることで、彼がいた時代の楽しかった思い出たちまで嫌いになるのは嫌だった。

でも、脱退前後以降の彼の行動は到底許せるものではなかった。

気持ちの整理がつかなくても手越勝手にズンドコ進んでいっちゃうし、NEWSの3人も少しずつ動き始めていた。

少しずつ「3人のNEWS」が当たり前になっていって、人数が少なくなっていった自虐もたまに挟まるようになっていって。

あといつの間にかNEWSKinKi Kidsに次いで上から二番目になっていたことにびっくりした。

ずっと中堅くらいの意識だった。

そういえばもう嵐もTOKIOV6SMAPタキツバいねえや。

あとたまに忘れちゃうけど、エイトのほうが一年デビュー遅いですよ、これは増田さんへ。

ジャニーズ事務所手越アイドルでいさせてくれた。

あの事務所のおかげで、私たち魔法にかかっていられた。

脱退後のインタビューで、「多くの人は、アイドル事務所という“魔法”にかかっている」と手越が話していた。

違う。

多分違うと思う。

あなたは“魔法”をかけてもらっていたのだ。

“ただの手越祐也”ではなく、“ジャニーズ事務所NEWSアイドル手越祐也”だったから、私たちあなた素行を、すべてひっくるめて、「アイドル個性」と思って愛することができた。

むろん愛すべきところがたくさんある人だ。

花が開いたようにパッと明るく咲く笑顔が大好きだった。

周りを巻き込んで笑わせてしまうような、自分の信じているものに対する絶対の自信からくるあの笑顔が大好きだった。

人の心に直接刺さるような、それでいて華やかで、のびやかで、何にも縛られないような歌声も好きだった。

いつだかジャニーズみんなでTOKIOの『宙船』を歌ったとき、一人きりで上ハモ担当していた。

あの時の誇り高さは、あれだけの大人数でも埋もれない美しい歌声は、きっと一生忘れない。

運動能力の高さと、周りの空気を作り上げてどんな難題だってこなしてしまうところは、天性のアイドルだと思っていた。

彼以上に「アイドル」という言葉が似合う人間はいないんじゃないかとすら思っていた。

どこにも行かないとは思っていなかった。

きっといつかどこかへ行ってしまう人なのだろうと思っていた。

それでも、あなたの安住の地が、優しいあなたの探してた場所が、僕らの愛したここであればいいと思っていた。

今でも正解がわからない。

NEWSいたころの手越が大好きだ」「2020年以降のことに関しては絶対に許せない、許さない」という、相容れない感情いつまでもぐるぐる渦巻いている。

カラオケSUMMER TIMEMVなんか見ちゃうやばい

あのMV全員ビジュ良いけどその中でも手越さん可愛すぎないか

気づいた人がいるかどうかはわからないけれど、私いままでこの文章の中で二回だけ「手越さん」呼びをした。

この段落での一回と、3人での配信ライブの内容に言及したときの「でもそれと同じくらい、手越さんが一番輝くステージで、ライブという空間で、歌を歌うことで、私たちに、彼に、語りかけようとしてくれたんじゃないかと思う」という文章の中。

この三年間、私は手越を恨み続けてきた。

コロナ前までは「手越さん」と呼ぶことも少なくなかったが、退所後はかたくなに「手越」と呼び続けてきた。

ちなみに残りのメンバーはずっと「小山さん」「増田さん」「加藤さん」「山P」「錦戸君」呼びだし、ほかのグループの人のことも呼び捨てをすることはめったにない。

これはささやかな反抗だった。

私は、「私はあなたを許さない」という気持ちを込めて「手越」と呼んできた。それでも、彼のことを愛おしいと思うときには思わず手越さん」と呼んでしまうのだ。

結局私は彼に対するこの矛盾した気持ちを抱えたまま生きていくしかないのだ。

退所前後の一連の行動は許していない。

きっと一生許せないけれど、彼が健康で、幸せでいてくれるといいなと思う。

今の彼のことを応援しているファンのことを盲目だとも思わない。

彼にはそれだけの魅力もある、訴求力がある。

好きになってしまうのはしょうがない。

あの奔放さを、考えなしな一面を、どうしようもない自我の強さを、許すことができるのであれば私だって今の彼の活動応援したい。

もう一度あの伸びあがる歌声を聞きに行きたいし、はちゃめちゃさで成り立ってしま天才的なバラエティ感覚享受したい。

でもだめだ。

ダメなのだ

許せないのだ。

何一つ。

愛していたからこそ。

信じていたからこそ許せないのだ。

それでも愛しているのだ。

結局この話に結論なんてない。

せっかくなのではてなに挙げてみるが、誰かに届くかどうかなんて考えてない。

ただ、こういう折り合いのつけ方をした人間もいる。

というのをどこかに放流しておきたかった

すべてのアイドル幸せでありますように。

できる事ならファンにとっての幸せと、アイドルにとっての幸せが同じでありますように。

2023-06-10

anond:20230610082907

そういえば、ホクロがエロい、みたいな話あるじゃん?ホクロってSTDなんかな?AVとか見てるとホクロ持ち多いように思う。単に衛生の問題

2023-05-27

プログラマだけどChatGPTによってstack overflowに書き込むことがなくなった

これは一例だけど、こういう使わなくなったサイトって多いと思うけど、

はてな界隈エンジニア意見を聞きたい。

2023-05-26

anond:20230526143721

頑張っていいPC買ってstablediffusionすればいい

2023-04-22

絵描きを救いたかったんだけどさぁ

絵描きを救いたい気持ちはあったことにはあったが、何故救いたかったのかを言語化すると絵描きへの特大悪口になってしまうことをお許しください。そして救う気が失せました。

***

近ごろ、画像生成AI絵描きたちを騒つかせています

作品の無断学習、非商用限定画像群を学習したモデルを商用利用、フェアユース規定無視疑惑……事実画像生成AI現在多くの問題を抱えています

しかし。現行の日本法律では、(利用範囲は定められていますが)機械学習における著作物使用著作者許可はいらないことになっていますフェアユース規定よりさらに強力で、機械学習に有利すぎる条文です。

このままでは、絵描き的には大問題なわけです。自分が心血注いで作ったもの勝手に持っていかれるなんて、不快なことはなただしい。創作モチベーションも奪われ、やがては産業自体危機になると警鐘を鳴らす人もいます

また、モラルなき人々にまで高い技術が与えられることで様々な被害がもたらされていることも報告されています

世界的には、AI規制の流れに傾きつつあります。Stable Diffusionを開発したStability AI社に対して、フェアユース観点に対する集団訴訟が起きています。また、同時にGetty Images訴訟に踏み切っています

かのchatGPTも、EU単位禁止になるかもと噂されています

さらには、AIの推進に対してかの中国ですら及び腰だというのです。

署名出して法律改善を訴えたり、訴訟起こして判例を作ったりすればAIに対してエラく歓迎ムード日本すら変えられるかもしれない!

勝ったな!日本絵描きは再び安寧と静寂を取り戻し、これまで通り絵が伸び伸びと描けるようになることでしょう!

しかし、そうはなりそうにない。

はっきり言います。今、日本絵描きたちは自滅の道を辿っています。この勝ち確の流れで。

そうです。今こそ日本AI危険性を強く訴えるチャンスなのです。ここで上手く立ち回れば確実に勝機があります。誰から見ても自明でしょう。

でも自滅しようとしてます

理由単純明快です。

絵描きの大半は、絵を描くことすら取り柄かどうか怪しい無能馬鹿メンヘラ社会不適合者だからです。

Twitterでは今日画像生成AIに対する愚痴問題点が飛び交います。絵を描くことを忘れて画像生成AI問題点を発信せんとする人が何人も出てきました。

多くの方は「いやそんなに文句あるならもっと行動しろよ…」と思ってるかもしれません。実際その通りです。Twitterでたらたら文句タレてる暇あるなら団結してクラファン立ち上げて訴訟費用賄えばいいのです。

マジで応援するよ。判例欲しいもん。

動かすべきは画像生成AIなんてものを開発した悪の親玉組織ではなく、国という大きく頼れる組織。そうは思いませんか?

でも、しません。

断言しますが、大半の絵描きにそんな能力も度胸もありません。

何故なら、繰り返しますが、彼ら彼女らは無能馬鹿メンヘラ社会不適合者だからです。

彼ら彼女らは、明らかに知識不足しか言いようのない発言を平気でします。あの感じですと、我らが著作権法の条文すら多分読んだことがないし、画像生成AIの仕組みもロクに理解していません。

しかし、そんなエアプで語ることがまかり通ってしまっています

何故なら、何度でも繰り返しますが、彼ら彼女らは無能馬鹿メンヘラ社会不適合者だからです。無知の知なんて期待するだけ無駄です。

もし、画像生成AIオプトインを大前提としたものに生まれ変わる場合アーティストの懸命な訴えが受け入れられたのかもしれません。

何故自分たちの作品を無断で使ってほしくないのか。自分たちにとって作品とは何か。懇切丁寧に、相手も納得できる形で説明たからこそ、その未来ではオプトインが採用されているのでしょう。

しかし、そんな未来が期待できそうにありません。

何故なら、まことに悲しいことに、彼ら彼女らは無能馬鹿メンヘラ社会不適合者だからです。

無能馬鹿メンヘラ社会不適合者に、詳しい言語化と冷静な判断が期待できるでしょうか?出来ないから『お気持ち』と揶揄されるような具体性に欠ける感情論しか発信できないのです。このままでは誰にも絵描き感情絵描き内のルール絵描き理論理解されないまま終わってしまます

しかし。必ずしも絵描き自身が戦う必要はありません。人間社会はよく出来ており、役割の分担が基本なのです。大半の絵描きが苦しむ中、手を差し伸べてくれる人がいるかもしれません。それは親切なファンかもしれないし、法の専門家法律家かもしれません。

彼ら彼女らを助けてくれる人はいるのでしょうか。

繰り返しますが、大半の絵描き無能馬鹿メンヘラ社会不適合者です。

そのくせプライドだけは一丁前にあって、少しでも正論を混ぜるとすぐにヒスる。声だけデカい割に利用規約著作権法すら読めないので、デマに近いツイートをすぐ鵜呑みにして騒ぎ立てますしか自分から行動しません。Twitterで騒ぐだけ騒いでおいて。結局、国内署名活動すら話を聞きません(海外署名活動も全然集まってないですが)。

『真の弱者は助けたくなるような姿をしていない』という話を嫌でも思い出します。

インターネットリテラシーもなければ社会の変化に適応することもできず、ヒスって暴れて無能さをただひたすら曝け出す。かといって何か行動を起こすでもなく、延々と愚痴愚痴文句を垂れるだけの存在。そう認識されてしまったら、確実に無視されブロックされNGリストに放り込まれインターネットの片隅に追いやられることでしょう。正直絵を描いててもキツいです。

誰がそんな奴らを助けてくれるというのでしょうか。

それでも絵を描ける存在を人は助けてくれると思ってるのなら、流石に絵の力を過信しすぎでしょう。作者の本性は、どんなに素晴らしい絵であっても平気で貫通します。作者はゴミカスだけど絵は本当に最高だから応援します!なんて言ってくれる人はかなり少数派ですよ。

大半の絵描きのことを散々に言ってきましたが、これは巨大な問題を孕んでいます

何故なら、問題言語化できる人間がいない集団は、その声を民主主義に届けることがあまりにも難しいからです。

日本AI技術の発展を重視し、AI大国として国際競走にもう一度乗り上げることを目指しているとされます。その過程で、もし訴訟に敗北してStable Diffusionがなくなっても、国際的規制でがんじがらめになりchat GPTがなくなっても、国産の新たなAIを生み出していくことも考えられます著作権法30条の4が味方となって、あらゆるデータ資産学習に使っていくことが考えられます

日本はとにかくやる気です。

しかし、その過程日本アニメマンガゲームイラスト……そういったサブカルチャー産業の源泉である創作者の集団が無碍に扱われ、将来的に縮小するとすれば問題になるでしょう。

私自身、そのような世界にはなってほしくありません。

しかし、彼ら彼女らは声のあげ方すら知らない。絵を描く以外能はなく、絵を描く以外の知識もないのですから芸術よすが今日も生き延びているだけのコミュ障社会不適合者は、真の弱者層に位置しているのです。

それでもって、絵を描くことに執着する人間なんてのは数が少ないのですから、より国政や企業に対するアプローチが難しい……

これもう詰みでは?

もちろんわかっています

ちゃん知識を持ち、その上で問題点を発信している絵描きはいらっしゃいます

自分なりに考え、画像生成AIとの付き合い方、画像生成AIの在り方を考えている方もいらっしゃいます

しかし、それ以上に大多数の無能が足を引っ張りまくってます。頼むから理論ガバガバ文章に踊らされないでくれ。お願いだから、話にならない無知を晒さないでくれ。本当にお願いします、簡単不安を煽られないでくれ。何が正しいのか、何が間違ってるのか、分からいかもしれないけど、だったらジッとしていてくれ。落ち着いてまずは調べろ。Googleいくらでも出てくるんだ。理解できなかったら他人説明してもらうんだ。chatGPTはいいぞ。(それらのAI恩恵を受けるなら、画像生成AI恩恵検討しなければならないけど)

自分たち側に無能馬鹿メンヘラ社会不適合者が圧倒的に多いことを事実として受け止め、できる中でより良いAIとの共存模索する。それが、画像生成AI規制派に必要なことではないでしょうか。

推進派と規制派が持ちつ持たれつ議論を重ねることで科学の良い発展がもたらされると信じていますから規制派にはマジで頑張って欲しいのです。

自分なりの救い方は検討していました。自分自身絵描き理屈ルール感情代弁者として立ち上がり、推進派との架け橋になる……ありきたりかつ理想的ですが、価値のある行いではあるかもしれません。

例えば、オプトイン制度に際してのコメントは以下のものが考えられます

そもそも芸術行為とはどこまでも自分本位の行いであるべき。自分本位に生み出した作品は、自分のためだけに存在しているべきもので、そこで技術の発展だとか、他人の見栄だとか、そういうことに使われると芸術行為の芯に傷がついてしまうのでは。それが意欲の低下に繋がるのかもしれません」

あるいは、クラファンを立ち上げ、司法に是非を問うてみるのもありかもしれません。

でも、こんな奴ら助けるくらいだったら、その時間使って画像生成AI技術に手を出して学んだ方が遥かに有意義なんじゃないかぶっちゃけ自滅する泥舟に乗りたいかそもそも救いたいという感情自体傲慢なわけで。

というわけで、救いたいと思い言語化していたはずが、し終わる頃にはマジでやる気が失せました。

絵描きがただひたすら自滅を重ねていく様を楽しみたい気持ちすらあります

もう知らねー

無能馬鹿メンヘラ社会不適合者の一員より

2023-04-13

anond:20230413193305

見てわかるとおりSHOWBYROCK!!はサンリオアニメIP、SB69とも略される

サンリオ然としたケモ寄りデフォルメキャラ本来の姿と思われるがアニメではおそらく俺ら視点補正によって人型のふつーの美少女美男子アニメキャラ(耳と尻尾付き)として描かれる

まあライブシーンとかではケモ姿のデフォルメ3Dになることもあるが基本的にはバンドもので、曲も結構いいのが揃ってた

ガールズバンド主人公だが男性バンドも同じくらい描かれて女パート青春エモい成長物語で男パートコメディ全振り、全体的にふざけた感じのサンリオ茶番劇

初代が2015年放送されて翌年に3分アニメのしょ~と!!に続き2期にあたる!!#が放送された、2017年~は主に女性ファン向けの舞台化をやってたみたいだな

この初代SB69シリーズに出てくる主役ガールズバンドプラズマジカのメインVoシアンちゃん2017年IP名を冠して9位に滑り込んだんだろう

2015年は登場バンド別で投票されていてその中の男性バンド筆頭シンガンクリムゾンズのメインVoロウ(CV谷山紀章)がバンド名を冠して1位と35票差の僅差で2位受賞してたようだな、初日中間発表では1位だったしマジ危なかったな

アニメに先んじてゲームがあり、ラブライブスクフェスと同じような感じで微妙な出来の(当初は1ラインだったが3ラインになった)音ゲー2013年から展開してて、ファン自体は男女ともそこそこあった

ゲームではもっと多くの実在インディーズバンドがケモキャラに扮して登場(楽曲提供)してたのが他ゲーとの違いだな

2020年にメインキャラを一新した新シリーズのSHOWBYROCK!! ましゅまいれっしゅ!!が始まった、ラブライブで言うサンシャインみたいなもんだな

翌年には初代シリーズキャラクターたちと合流してSTARS!!として4期目も放送されたし、音ゲーも古い方はサ終してイマドキ風の5ライン音ゲーが始まった、だがそれもつ最近サ終したけどな

ちなみにSB69は定期的にリアルイベントとして音楽フェスを開いており、ましゅまい(略)の主役ガールズバンドであるましゅ(同名略)は声優さんが実際に各々ギターベースドラム生演奏するというパフォーマンス

ドラム以外はほぼ初心者からスタートということで練習動画も公開されつつアニメリアル両面で活躍されていた

おわかりいただけたか? 俺の好みとしてはアニメましゅまいれっしゅがとても可愛くてエモくておすすめ

https://www.youtube.com/watch?v=XmAlcgWmEuw

このOP映像と曲に惹かれる部分があればましゅSTARSアマプラで見れるんでな、1期2期は飛ばして見ても特に問題ないだろう

2023-03-15

今年もスーパー耐久始まるので去年の振り返り

24時間ゲスト悲惨だったので良化するか

良く言えば独自色、悪く言えばいつ喋ってもDAZN臭くコメント欄までなんJ汚染を呼び込む笹川裕昭

その出自からキャリアのある老人に何も言えず、話の腰を追ったり割り込む事が致命的に弱いシャーリー半田

喋りだすと延々と昔話しかしない為、競技に急変があっても止まることができないので起用ポイントに難のある関谷正徳

関谷はこの際タイミングが悪かったにしても他二人はそれぞれ自分チャネルなりリージョンがある人達なので引きこもっててほしいし、何を考えてSTOも呑んだのか理解しがたい

シャーリー半田スーパー耐久公式レギュラー陣とセットで運用しないとダメだというのは何も去年発覚したことでもなし、予見できた事故を起こした印象が強まるばかりだった。


トヨタイムズはMORIZOの足引っ張りに来てるんですか?

一昨年はまだ比較大人しい様相だったが昨年の言動サーキットレース関係者への敬意を欠いたものが目立った。

トヨタイムズ隔離をSTOで検討する事になってスケジュールを筆頭に警備まで負荷を掛ける事態に繋がるのは大変に不愉快

2023-01-26

VPS自宅サーバーにインストールしたいSaaS代替Webアプリ38選

シェアウェア(という表現はおいておいてのやつ。https://anond.hatelabo.jp/20230124045812)の記事面白かったので、自分の得意分野の領域でいろいろ紹介します。

基本的に、SaaSサービスは便利だけど、あれもこれもと契約していったらサブスク破産するので、

ものによってはセルフホストした方がいいと思ってる派。

Dropbox/GoogleDrive/box代替

NextCloud

もともとownCloudっていうDropbox代替があったんだけど、そこから分派して今も機能開発が続いている。

興味深いのはLAMP構成なので、VPS自宅サーバーじゃなくても、レンサバで動くのがいいよね。

データ保存領域オブジェクトストレージ(S3互換)も利用できるので、例えばWasabiなんかと契約してお安く済ませてしまうのも全然アリかと。

Trello代替

Wekan

最近カンバンシステムって、単体で使うんじゃなくていろんなアプリの中で使われる印象なので、今更Trelloだけ使いたい、なんてニーズはないかもだけど、

そこまで複雑でなく小規模なプロジェクトとかだと、意外とTrelloだけでいいよね、みたいなこともあるかな

そういう時は、これを使うといいかも。

Slack代替

Mattermost

ちょっとUI雰囲気が違うだけで、まんまSlackです。絵文字の追加もできるし、APIもあるし。人によって好き嫌い分かれるスレッド機能も、まあ、あのスレッド機能のまま。

その他のSlack代替選択肢
  • Rocket.chat
  • Zulip

この2つは使ったことないので、名前だけ挙げておきます

Zapier/IFTTT/Make代替

n8n

n8nと書いてnodemationと読ませるらしい。初見殺しすぎんだろ。

Zapier使ったことある人はすぐわかると思います

ZapierやIFTTT無料枠あるけど、あれもこれもやり出すとすぐ無料枠埋まっちゃうので、これ結構いいと思うんだけどな。

その他のZapier/IFTTT/Make代替
  • Huggin
  • Windmill

kintone代替

Exment

kintone使ってる会社増えてると思うんだけど、まだまだ1ユーザー1500円ってのは高いので、零細企業は導入し辛いと思う。

で、それの代替になるのがExment。UIがkintoneとは少し違うので代替と言い切れないかもしれないが、

やれることはkintoneのソレと全く同じなので、用途代替はできる。

開発も日本企業なので、UI日本語化されている。LAMP構成なので、レンサバでも動くよ!

Airtable代替

NocoDB

そもそもAirtableって何やねんって人もいるかもしれないけど、kintoneとGoogleスプレッドシートをいいとこ取りして、Trelloとガントチャートを足した感じ。

これのOSS版です。結構再現度高いので良い感じ。

ZoomGoogleMeet・Microsoft Teams代替

Jitsi

これもまあまあいい感じでZoom再現してますZoomの方が新機能の追加早いけど、Jitsiも頑張って追いついている感じです。

ただ、やる内容が複数人でのリアルタイム動画配信なので、サーバースペック回線スペックはまあまあ必要なので要注意。

BigBlueButton

こちらは使ったことないんだけど、よりオンライン授業向けらしい。

Calendly代替

Cal.com

最近よく見かけるようになった、オンラインミーティングとかの予定をブッキングさせるSaaS

あれのはしりがCalendlyで、日本でもいくつかそれのSaaSができてますね。

あれらも無料枠だと1カレンダーだけしかできなかったりするんだけど、これなら好きなだけブッキングさせられます

Intercom、Zendesk代替

Chatwoot
Papercups

ECサイトとか、Webマーケティングを重視してるサイトによくある、画面右下に吹き出しアイコンがあって、チャットウインドウがぴょこっと出てくるやつ。

日本ではWeb接客とか言われてるけど、あれの代表的SaaSがIntercom。Zendeskは、どちらかというと内部ツール向きかな。

これのOSS版がChatwootとPapercups。自社サイトWeb接客入れたいけど、費用抑えたい、って時にどうぞ。

Backlog/Asana代替

OpenProject

この手のツールがないと仕事にならないという人も多いと思います

これまでだとRedmineがそれのOSS版的立ち位置でしたが、さすがにイマドキあのUIはないなぁ、と。

OpenProjectは、Microsoft Projectの代替イメージしてるみたいですが、

ガントチャートカンバンデフォルトで使えるので、BacklogやAsanaの代替にはちょうど良いでしょう。

ただ、そんな高度なことしてるわけではないのに、サーバー要求スペックちょっと高めなのでご注意を。

Google Analytics代替

Matomo

UA廃止GA離れが始まってるとも聞きますが、疎開先として有名。

PHPで動くので、PHPWordPressでできたサイトに一緒に入れちゃってもいいと思う。

HeadlessCMS関連

HeadlessCMSは、データ表示を持たず、フロントエンドAPIを通じてデータを渡すタイプCMSのこと。

このジャンルでは、SaaSだとContentfulが有名だけど、OSSでもいろいろある。

Strapi

Node.js製。歴史があるので、結構いろんなことができる。

WordPressのGutenbergエディターを取り込んだプラグインなんかもある。

User認証も持ってるので、CGM的なサイトを作ろうと思ったらできなくもない。

Directus

これもNode.js製。利用できるDBが幅広く、既存データベース活用できる。

なので、既にPostgresSQLとかでデータを持ってるんだけど、

非エンジニアにもデータを触らせるためのフロントエンドが欲しい、ってニーズに良いかも。

こちらもUser認証デフォルトで持ってる。

Cockpit CMS

PHP製。SQLiteMongoDBで利用可能MySQL/PostgreSQL使えないのがちょっと残念。

Shopify代替

Medusa.js

近年、本腰入れて自社ECサイトをやろうと思うと必ず選択肢に上がるShopify。

インテグレートパートナー向けのエコシステムも充実してるので、取り組み始めるエンジニアシステム会社も多い。

ヘッドレスコマースや越境ECには向いているものの、これをセルフホストしたい、というニーズに応えたのがmedusa.js

ざっと見てみただけだけど、モダン構成で、今時のフロントバックエンドを分けた構成でやりたい、というのには向いている。

プラグインmedusa-marketplace.jsというのもあり、Amazon的なマーケットプレイスも実現可能

Figma代替

Penpot

昨年、Adobeに買収され、デザイナーたちを驚愕させたFigma

先日はAdobe XD終了のお知らせとなり、UIデザイナーたちの不安は募るばかり。

そんな提供企業に振り回されたくないなら、このPenpotでUIデザインしよう。

Figmaほど機能実装はされていないが、まあまあ一通りのことはできる。

Figma代が嵩むとお嘆きの制作会社なんかは、一考の余地あるんじゃなかろうか。

Google Form代替

Oh My Form

企業によっては、コンタクトフォームをたくさん作りたいという会社もある。

例えばセミナーを頻繁に開く企業だったりとか、

人材採用フォーム職種別に細かく分けたい(しかも頻繁に募集職種が変わるとか)

などの要望によって、GUIフォームを作りたい局面がある。

Google Formで大体解決しそうだけど、それをGoogleに頼りたくないならこちら。

まあまあ機能豊富なので、人によってはGoogleFormよりもこちらを好むかも。

Gmail代替

Mailu

DockerベースWebメールUI。送受信に必要ものを、丸っとDockerで用意してくれているので便利。

SalesForce/HubSpot代替

SuiteCRM
Mautic
Erxes

HubSpotは、いわゆるMarketing AutomationCRMを一体にしたツール無料枠もあるが、かなり限定されている。

上記でいうと、Erxesが単体で一番近い機能を持っている。

MauticはMarketing Automationよりの機能が多く、ユーザーサイト上での回遊をビジュアル化してくれたりする。

SuiteCRMはザ・CRMという感じ。SalesForceデフォルトで使う感じに近い。

ツールが分かれてしまうのは辛いところだけど、それぞれにAPIがあるので、うまく繋げられると強力なツールになってくれるはず。

Sendgrid/Mailgun代替

Postal

Webサービス作ってると、メールの通知や一斉配信などがあると思う。

通常これらはSendGridや、AWS SESなどで処理すると思うが、これらにもOSS代替がある。

PostalDockerメール周りのもの全部用意してくれているので、かなり楽。

Jimdo/Wix代替

Microweber

WordPressモダンにしたような感じで、EC機能デフォルトでついてる。マルチサイトも標準。

Jimdo/Wix代替と書いたが、もちろん自分サイトをMicroweberで作ってもいいが、

自前ホスティングして、JimdoWixのようなサービスを始めることもできる。

テンプレートをいくつか作っておいて、Stripeを仕込んでおけば、今日からあなたJimdo/Wixのような事業を始められるわけだ。

STUDIO/Webflow代替

Webstudio

JImdo/WixSTUDIO/Webflowは一緒くたに語られがちだが、明確な違いがある。

前者はプリディファインドなブロックGUI構成するのに対し、後者DOM要素ベースで構築していく。

まりよりHTML/CSSによる細かなデザインコントロールがしやすく、Webデザイナーが親しみやすい。

それのOSS版がWebstudio。まだアルファ版だが、フロントエンドはそれなりによくできているので、

バックエンドを自前で用意してStripeを仕込んでおけば、今日からあなたも(以下略

Facebook代替

friendica

Facebookなんか使わねーよ、っていう人も多いかもしれないが、

特定コミュニティの中でコミュニケーション取るには、FacebookUI機能は優れていると思う。

なので、サークルとか同窓会、あと自治会とかPTAなんかにいいんじゃないだろうか。

LAMPなので、レンサバでもいけると思う。

Netflix代替

Jellyfin

Netflix代替って、Amazon Primeとかじゃねーの、と思われるのかもしれないが、そうではなくて、

あなたNetflixみたいな商売したいならこれを使うといいよ、というのがJellyfin。

いや、そんな商売しないよ、と思うかもしれないが、

使いようによっては、おじいちゃんおばあちゃん向けの子動画配信サービスとして構築するとか、

Stripeと連携して、劇団バンドオリジナル配信サイトを構築するなんかも面白いと思う。

YouTube/Vimeo代替

PeerTube

今更誰もYouTubeVimeoの後追いをしようとはしないでしょうが

複数ユーザーから動画のアップを受け付けて、それを閲覧したい用途もあると思う。

例えば、軽音部で複数バンド練習風景を録画したのを定期的にアップしたりとか。

学習塾で、授業の録画を授業ごとにアップしていったりとか。

YouTube Live/Facebook Live/ニコ生/Twitch代替

Owncast

ZoomGoogle Meetのような双方向ではなく、一対多の一方通行配信

個人的には、企業のウェビナーツールとしての可能性を感じる。(Zoomのウェビナープランとか高いもん)

メールワイズ/Re:lation代替

FreeScout

つのメールドレス複数人運用したい時のツールメールワイズとRe:lationどちらも日本SaaS

FreeScoutはOSSだけど、海外製。一応日本語化もされてるっぽい。

ECサイト顧客問い合わせや、営業チームのプライマリ対応なんかに良いと思う。

Bubble代替

Budibase
AppSmith
ToolJet

Bubbleってなんぞ? という人のためにお伝えしておくと、ノーコードベースWebアプリ開発ツール

データエンティティ設計したら、自動的CRUDを作ってくれて、フォームを配置するというような感じ。

Bubbleはそれ系の老舗で、歴史が長い分ノウハウも溜まっており、連携できるサービスも多い。

ただ、ベンダーロックインされるし、季節的なキャンペーンとかでは、アプリ使用しない期間もサブスク費用がかかる。

Budibaseは、Bubbleの思想に一番近い感じ。凝ったUI必要なければ、ざっくりコレでなんでも作れちゃう

AppSmithも同じような感じだが、これはDBをあらかじめスキーマ定義しておかないといけないところが若干不便かな。

ToolJetはルーティングURL概念がなく、本格使用を諦めたんだけど、最近アップデートしたらしいので、そこのところどうなってるかまた確認ときたい。

他にもこの手のやつあったら、いろいろ教えて欲しい。単純に好きなので。

「こういう用途のやつ、ある?」みたいな質問も歓迎。

見つかったら追記します。

2023-01-06

Reactで小数点入力できない問題

みんなどうしているのか?いまいちベストプラクティスが見つからない。

例えば、テキストボックスに"1.1"を入力しようとして、"1."まで入力したとする。

数値に変換してstateを保存しようとすると、変換の際に末尾の小数点がそぎ落とされて、表示されるのは"1"になってしまう。

レンダリングが早いので、ユーザーからすると、小数点入力が受け付けられていないように感じる。

仕組みが分っていれば、"11"を入力してから間に小数点を挿入すれば入力可能だが、ユーザーにそれを求めるわけにもいかない。

スカイリムおもしれえええええええ

正月暇だからてsteamセールで売ってたスカイリムに手を出した

なんか有名だしやってみるかと軽い気持ちだったのに、正月休みが全部スカイリムに吸い取られた

面白すぎる なんだこれは

2022-12-26

日本舐められすぎワロタ

会社潰れてもう何もやる気せーへんわバカらしいと思って

Switchクリスマスセールソフト探してたんだけどあんまいいソフトねーのよ

 

で、米国アカウントに切り替えたらGOD EATER3が$8.99だったのね

日本アカウントに切り替えたら7680円なのよ

米国版もちゃん言語Japanese入ってるのに

 

いや、コンマイ日本舐めすぎやろ

前々からコンマイソフトてSteamでも日本にだけは売ってあげませんよとかやってたけどよ

クリスマスセールくらい合わせろや!

 

ちなみにネプテューヌメアリスケルターシリーズを展開するコンパイルハート

言語Englishしか入ってない完全米国版を販売してました

そこまでやるなら許す

2022-12-13

Unityビジュアルスクリプティング無料アセットだけで作った有料ゲームが初めてsteamで売れた。無料版遊んでくれた人が買ってくれた。嬉しい。某コミュニティ質問するたびに「ビジュアルスクリプティングじゃまともなゲームは出来ないかゲーム作りはコーディング勉強してから出直してこい」と繰り返し言ってきた奴よ。俺のコーディング無しゲームお金を払ってくれた人たちがいたぞ!

2022-11-30

anond:20221130210306

俺も就活ミスった既卒フリーター実家帰って塾でバイトしながら、個人ゲーム作ってSteamにあげてる。まだ収益出てないけど。

頑張ろう。

2022-11-19

C#で数行のSQL書くのにヒアドキュメントやめてStringBuilder使えって言うの、何かに取り憑かれてない?

2022-11-06

1K(9畳)部屋に最良のホームシアター環境を作りたい

テレビオーディオも無い部屋なので1から揃えたい。映像は主にアニメ円盤(BD)とBS放送(のアニメ)。

予算ざっと100万~程度。金にも広さにも限度はあるが最良の環境を作りたい。

テレビ

プロジェクタースクリーンを設置する壁が確保できそうにないので除外。

サイズは65インチ限界そう。壁面に置くのも難しいので角への斜め置きを想定。

賛否両論のQD-OLED店頭で見比べると確かに赤や緑の原色ギラギラ感が良し悪しのようだけどソースアニメなら悪くないのではないかという説に乗ってみたい。

徐々に価格も落ちてきていて良い感じ。

有機ELとしては明るくてなんかとにかく評判良いらしい(kakaku情報)。パナのサイトを見てても何か凄そう感がある。あとA95Kよりは安めっぽい。

BDプレーヤ(レコーダ)

正直録画はしないのでレコーダ機能不要4k放送も受信できない(JCOM環境なので契約てSTB設置しないとダメらしい)ので4kチューナー不要

BD/UltraHD-BD円盤再生画質を重視したい。

4kアップコンバートについては言及が少なく、あまり画質面では良く無さそう。

4kブラビアモードを訴求しているが画質改善の能書きが少ない。

最上位を目指すならこれらしい。特に4kアップコンバートが優れていて地デジ/BSはこれを経由して見た方が画質が良いとか。能書きも多いが24p/30p変換出力って何が嬉しいの程度の知識だと、ピュアディオ系の匂いがしてくる。

とにかく色々高い部品を使ってるんだろうなというのはわかるが、LANチップが🦀なのはワロタhttps://panasonic.jp/diga/products/zr1/circuit.html)。🦀がダメとは言わないが格落ち感が凄い。

スピーカ

ワイヤレスで設置が簡単そう、以上。

騒がしい量販店だと、試聴してもいまいち効果が分かるような分からないようなという感じ。

  • HT-A7000 約14~16万

置き場所的にHT-A9が無理そうならこっち。ただし後でリアスピーカーを追加で買うとHT-A9よりも高くなってしまう。

2022-10-29

anond:20221019185819

サポートAIガチャAIの違いだと思う

無論音楽業界で受け入れられてるのはコード聞き取り(Chord Tracker)や整音(izotope等)を自動でしてくれる前者

無論イラスト業界でも望まれてるのは前者なのに後者が出てきたからな

音楽AI 自体クリーンデータしか使わないってStable Diffusionが言ってるからそんなに盛り上がらないのが確定してるし

歌手作曲家アレンジャーレコーディング/マスタリングエンジニアどれを取っても奥が深いし

万能調味料だけど整音にAIを使いすぎると尖った曲が生まれずハンコ絵みたいな薄っぺらい曲しかまれいからあえて使わない奴や嫌ってるやつも居る

それだけの話し

2022-10-12

AI画像生成技術オタク趣味者と消費者に分断する

第1世代の「オタク」の多くは趣味探究生産を旨としていた、ただ消費するだけの存在ではなかった、とよく言われるが

世代が下るごとに、オタクの中にも「特定ジャンルエンタメ消費者」的な意識を持つ人々が明らかに増えていっている。

そしてStable DiffusionやnovelAI Diffusionの登場で、この「趣味者としてのオタク」と「消費者としてのオタク」の断層が決定的になったと思う。

消費者としてのオタク」は、たとえば自分好みの絵師タッチ自分好みの絵が出力できればうれしいから、AI技術の進展を歓迎するだろう

趣味者としてのオタク」は、たとえばDanbooruを利用した機械学習オリジナル絵師努力技術剽窃貶めるものだと警鐘を鳴らすだろう

実際、Danbooruから学習批判する声に対して、オタク界隈からもちらほらと

技術進歩否定する」「老害」といった物言いが見受けられるようになってきた。

折しも最近の『2.5次元の誘惑』では、「オタクは愛で生産と消費を結びつける」「みんな仲間」という(美しい)話をやっているが

テクノロジー進歩によって、消費系のオタクが、消費したい対象人間生産者に頼らずとも無限供給してもらえるようになったら

そこに愛は残るのか? 消費者人間生産者と仲間でいつづけられるのか?

2022-09-14

anond:20220914125535

解決策はわかってるよね。PS5を潤沢に供給てState of Playもちゃんとした日本語音声のものを出せばいいんだよ。やらないから廃れる。それだけ。

2022-08-18

anond:20220818115438

007”ってintじゃなくてstringじゃねーかクソが!

2022-08-01

anond:20220731183342

自動安価をつけて返信するプログラムでもこんなに長く複雑になる(一部抜粋) 

/**************************************

以下のCSV_DIR, FILE_PATHS, SETTINGSを書き換えてね。 <h3>o- *************************************/</h3>

//CSVファイルが置かれてるディレクトリパス投稿前にエラー出たら大体ここの設定ミス。 例:"C:\\Users\\sakuraimasahiro\\Documents\\iMacros\\Macros\\rentou\\";

const CSV_DIR =

'C:\\Users\\USER\\Desktop\\iMacros\\Macros\\rentou\\';

//ファイルパスCSV絶対パスで、拡張子必要。iimは相対パスでよく、拡張子不要

const FILE_PATHS = {

//投稿文が書かれたCSVファイル

textCsv: CSV_DIR + 'textNoAnker.csv',

//レス投稿文が書かれたCSV。通常とレス用で分けないなら同じファイルを使えばいい。

replyTextCsv: CSV_DIR + 'textReply.csv',

};

const SETTINGS = {

//投稿後の基本待ち時間

baseWaitTime: 5,

//baseWaitTime+0~waitTimeRange(ランダム)だけ待つ

waitTimeRange: 5,

//連投しすぎだと忠告された場合に処理を一時停止させる時間(秒)

waitTimeForAvoidingPunishment: 60 * 30,

//メール

mail: 'sage',

//名前設定

nameSettings: {

//名前名無しなら''。

name: '',

//以下、偽装ワッチョイ設定。浪人ワッチョイを非表示にしてるときだけtrueにしてね。

//妙なニックネーム(ワッチョイ、アウアウウーなど)をランダムで決めて付加するかどうか。true=付加する。false=付加しない。

nickname: false,

//妙なニックネームの後に付く8桁の文字列ランダムで決めて付加するかどうか。

korokoro: false,

//IPランダムで決めて付加するかどうか。

ip: false,

//地域ランダムで決めて付加するかどうか。

area: false,

},

postSettings: {

//アンカー無し投稿をするならtrue。しないならfalse。noAnkerPostかreplyPostのどちらかはtrueにすること(両方trueでもOK)。

noAnkerPost: false,

//アンカー付き投稿(返信)をするならtrue。しないならfalse。もしnoAnkerPostとreplyPostの両方がtrue場合投稿は返信が優先され、返信対象が見つからなくなったらアンカー無し投稿をする。

replyPost: true,

//最初に取得するアンカー無し投稿CSVファイルの行番号。もし返信用と同じCSVファイルを使うなら-1と入力

noAnkerPostTextCsvStartRow: 1,

//最初に取得する返信用投稿CSVファイルの行番号。もしアンカー無しと同じCSVファイルを使うなら-1と入力

replyPostTextCsvStartRow: 1,

//テキストCSV/返信用テキストCSVの取得行が最終行に達したら最初の行まで戻るかどうか。true=戻る。false=マクロ終了。

textCsvLoop: true,

//返信する場合、これより小さなレス番には返信しない。返信を投稿すると、この数値は前回の返信先のレス番に更新される。

minAnker: 895,

//返信する場合名前に以下の文字列を含む投稿アンカーをつけて返信する(ワッチョイやIPなど名前フィールドにあるものならなんでも可)。配列複数指定可能指定無しなら空配列([])。filterNamesとfilterNamesNotIncluded共に無指定ならレス番1から順に返信していく(minAnkerが設定されてればそこから順に)。以下のfilter系は全て併用可能

filterNames: [],

//↑とは逆に、名前に以下の文字列を含まない投稿アンカーをつけて返信する。↑と併用も可能

filterNamesNotIncluded: [],

//返信する場合、本文に以下の文字列を含む投稿アンカーをつけて返信する。

filterText: ['自演かな', '自演わらわら', 'スクリプト使うの', '安価ガバ', '>>660', '自演擁護', '最後' ,'あいうえお', 'かきくけこ', 'さしすせそ', 'なにぬねの', 'はひふへほ', 'まみむめも', 'やいゆえよ', 'やゆよ', 'らりるれろ', 'わいうえを', 'わをん', 'わいうえをん'],

},

//自分IPアドレス確認VPNとかでIPを変更してマクロを動かしてるとき、突然VPN作動しなくなってIPが元に戻ったときマクロを止めるためのもの

ipSettings: {

//自分現在IPアドレス確認をする。

checkIp: true,

//以下の文字列自分現在IPアドレスに含まれている場合マクロを一時停止する。基本的自分の本当のIPアドレス入力

avoidTheIp: '133.206.99.224',

},

//浪人設定。最後動作確認したのは5年くらい前で、今も同じように動作するかは、浪人を持ってないか確認できずわからない。

roninSettings: {

//浪人ログインしてるかどうかをチェックするかどうか。trueらするfalseならしない。trueにしていてもし浪人ログインしていないことを確認したらログインしにいく。

checkLogin: false,

//浪人ログインメールアドレス

mailAdress: 'abc@def.com',

//浪人ログインパスワード

password: '1234',

},

//false: run()実行させず(デバッグ用)

run: true,

//true: 投稿処理だけしない デバッグ

skipPost: false,

};

/**************************************

設定箇所終わり。

書き込めない時の早見表 - 5ちゃんねるwiki

https://info.5ch.net/index.php/%E6%9B%B8%E3%81%8D%E8%BE%BC%E3%82%81%E3%81%AA%E3%81%84%E6%99%82%E3%81%AE%E6%97%A9%E8%A6%8B%E8%A1%A8 <h3>o- *************************************/</h3>

/**************************************

メモ

クラスフィールド宣言できない。

・NULL演算子(??)は使えない。論理積(&&)は使える。

オブジェクトの分割代入はできない。

・importはできない。 <h3>o- *************************************/</h3>

/**************************************

関数 <h3>o- *************************************/</h3>

/**

* ここから始まる。

*/

function run() {

//設定ミスがないか調べる。

checkSettings();

var _TextCsvCursors = new TextCsvCursors(

new TextCsvCursor(

SETTINGS.postSettings.noAnkerPostTextCsvStartRow > 0

? SETTINGS.postSettings.noAnkerPostTextCsvStartRow - 1

: SETTINGS.postSettings.noAnkerPostTextCsvStartRow,

FILE_PATHS.textCsv,

SETTINGS.postSettings.textCsvLoop,

),

new TextCsvCursor(

SETTINGS.postSettings.replyPostTextCsvStartRow > 0

? SETTINGS.postSettings.replyPostTextCsvStartRow - 1

: SETTINGS.postSettings.replyPostTextCsvStartRow,

FILE_PATHS.replyTextCsv,

SETTINGS.postSettings.textCsvLoop,

),

);

var _LoopStatuses = new LoopStatuses(0, SETTINGS.postSettings.minAnker);

const _MyPosterName = new MyPosterName({

name: SETTINGS.nameSettings.name,

});

//スレURL指定

const _ThreadUrl = openPromptThreadUrl();

//ループ

while (true) {

//IP確認する設定なら、それをする。

SETTINGS.ipSettings.checkIp && checkCurrentIpNotTheIp();

//スレを開く

openUrl(_ThreadUrl.fullUrlHttps());

//浪人ログインする設定なら、浪人ログインしているかどうかを確認し、していなければログインしにいく。

if (SETTINGS.roninSettings.checkLogin) {

if (!checkRoninLogin()) {

loginRonin();

continue;

}

}

//投稿に使うテキスト取得。

const p = (function () {

if (SETTINGS.postSettings.replyPost) {

//返信あり設定の場合。返信対象が無いか調べる。

const targetAnkerNumber = createPostDOMList()

.filterPostnumberHigher(_LoopStatuses.currentMinAnker())

.filterByPostername(SETTINGS.postSettings.filterNames)

.filterByPosternameNotIncluded(

SETTINGS.postSettings.filterNamesNotIncluded,

)

.filterByText(SETTINGS.postSettings.filterText)

.lowestPostNumber();

if (targetAnkerNumber !== null) {

//返信対象があったのでアンカー付き投稿文を作る。

const r = _TextCsvCursors.takeNextRowTextAsReply(targetAnkerNumber);

messageDisplay(`返信対象有り。アンカー先: ${targetAnkerNumber}`);

return {

...r,

updatedLoopStatuses:

_LoopStatuses.updateMinAnker(targetAnkerNumber),

};

}

}

if (SETTINGS.postSettings.noAnkerPost) {

//返信対象無し、或いは返信しない設定の場合アンカー無し投稿文を作る。

const r = _TextCsvCursors.takeNextRowTextAsNoAnker();

messageDisplay('返信対象無し。アンカー無し投稿。');

return {

...r,

updatedLoopStatuses: _LoopStatuses,

};

}

return null;

})();

if (p) {

//投稿

postThenCheckError(

_ThreadUrl.serverName(),

_MyPosterName.randomize({

nickname: SETTINGS.nameSettings.nickname,

korokoro: SETTINGS.nameSettings.korokoro,

ip: SETTINGS.nameSettings.ip,

area: SETTINGS.nameSettings.area,

}),

SETTINGS.mail,

p.text,

);

//_TextCsvCursorsと_LoopStatusesを更新

_TextCsvCursors = p.updatedTextCsvCursors;

_LoopStatuses = p.updatedLoopStatuses.incrementPostCount();

messageDisplay([

`投稿回数: ${_LoopStatuses.currentPostCount()}`,

`minAnker: ${_LoopStatuses.currentMinAnker()}`,

`今回アンカー無し投稿取得行: ${_TextCsvCursors.currentRows().noAnker}`,

`今回アンカー有り投稿取得行: ${_TextCsvCursors.currentRows().reply}`,

]);

} else {

messageDisplay([

`返信対象が現われるのを待機中...。`,

`投稿回数: ${_LoopStatuses.currentPostCount()}`,

`minAnker: ${_LoopStatuses.currentMinAnker()}`,

`今回アンカー無し投稿取得行: ${_TextCsvCursors.currentRows().noAnker}`,

`今回アンカー有り投稿取得行: ${_TextCsvCursors.currentRows().reply}`,

]);

}

//短時間で連投しまくると規制されるので一定時間待機。

wait(SETTINGS.baseWaitTime + randomRange(0, SETTINGS.waitTimeRange));

}

}

/**

* 投稿処理と投稿結果を見てリトライしたりマクロ終了したり。

* @param {string} serverName サーバー

* @param {MyPosterName} _MyPosterName

* @param {string} postMail メール

* @param {MyText} _MyText

* @param {number} retryTimes

* @returns {void}}

*/

function postThenCheckError(

serverName,

_MyPosterName,

postMail,

_MyText,

retryTimes = 0,

) {

const r =

retryTimes === 0

? new ValuesOfPost(serverName, _MyPosterName, postMail, _MyText).post(

postTo5chTread,

postConfirm,

)

: new ValuesOfPost(

serverName,

_MyPosterName,

postMail,

_MyText,

).postSubstring(retryTimes, postTo5chTread, postConfirm);

if (r) {

back();

return;

}

//エラーページに飛ばされた。エラー情報取得。

wait(7);

const error = createPostErrorMessage().analyze();

messageDisplay(error.message);

if (error.order === 'KILL') {

kill();

} else if (error.order === 'SKIP') {

return;

} else if (error.order === 'TRUNCATE') {

back();

return postThenCheckError(

serverName,

_MyPosterName,

postMail,

_MyText,

retryTimes + 1,

);

} else if (error.order === 'WAIT') {

wait(SETTINGS.waitTimeForAvoidingPunishment);

return postThenCheckError(

serverName,

_MyPosterName,

postMail,

_MyText,

retryTimes,

);

} else if (error.order === 'LOGIN') {

//動作未確認

return postThenCheckError(

serverName,

_MyPosterName,

postMail,

_MyText,

retryTimes,

);

}

return;

}

/**

* 現在IPアドレスに、SETTINGS.ipSettings.avoidTheIpの値が含まれていないことを確認する。含まれていたらマクロを一時停止。

* @returns

*/

function checkCurrentIpNotTheIp() {

//IP確認ページへ飛ぶ

openUrl('https://www.cman.jp/network/support/go_access.cgi');

const _IpAdress = createIpAdressFromCMan();

if (_IpAdress.includes(SETTINGS.ipSettings.avoidTheIp)) {

pause('現在IP指定した値が含まれていることを確認。');

//ポーズ解除したならもう一度確認しに。

checkCurrentIpNotTheIp();

}

return;

}

/**

* 設定に致命的な問題が無いか検査

* @returns

*/

function checkSettings() {

if (

SETTINGS.postSettings.noAnkerPost === false &&

SETTINGS.postSettings.replyPost === false

) {

return kill('設定エラー。noAnkerPostとreplyPost両方ともfalseになってる。');

}

if (

SETTINGS.postSettings.noAnkerPostTextCsvStartRow < 0 &&

SETTINGS.postSettings.replyPostTextCsvStartRow < 0

) {

return kill(

'設定エラー。noAnkerPostTextCsvStartRowとreplyPostTextCsvStartRow両方とも-1になってる。',

);

}

if (

SETTINGS.postSettings.noAnkerPostTextCsvStartRow === 0 ||

SETTINGS.postSettings.replyPostTextCsvStartRow === 0

) {

return kill(

'設定エラー。noAnkerPostTextCsvStartRow/replyPostTextCsvStartRowの初期値は-1或いは1以上で。',

);

}

}

/**

* 入力フォームを表示して入力されたスレURLを受け取る。

* @returns {ThreadUrl}

*/

function openPromptThreadUrl() {

const url = prompt('スレURL入力');

return new ThreadUrl(url);

}

/**

* 開いてるスレレス全て読み取ってPostListインスタンスを作って返す。

* 重すぎるので使うのやめ。どうやらインスタンスの大量生成が原因な模様。

* createPostDOMListを使う。

* @returns {PostList}

*/

function createPostList() {

const posts = window.document.getElementsByClassName('post');

return new PostList(Array.from(posts).map((e) => new Post(e)));

}

/**

* 開いてるスレレス全て取得してPostDOMListに格納して返す。

* @returns

*/

function createPostDOMList() {

const posts = window.document.getElementsByClassName('post');

var arrPostDOMList = [];

for (let index = 0; index < posts.length; index++) {

//HTMLCollectionからElementを1つずつ抽出して配列に。

arrPostDOMList.push(posts.item(index));

}

return new PostDOMList(arrPostDOMList);

}

/**

* 開いてる投稿結果画面に表示されてるエラーを読み取ってPostErrorMessageインスタンスを作って返す。

* @returns {PostErrorMessage}

*/

function createPostErrorMessage() {

return new PostErrorMessage(

window.document

.g Permalink | 記事への反応(0) | 15:40

ログイン ユーザー登録
ようこそ ゲスト さん