はてなキーワード: ロッパとは
※なお、「あのゲームの世界」設定なら全無視できます。(ナーロッパしか勝たん)
・生理がきている時期に魔力は上がるのか落ちるのか
→生理の時期は絶不調、ポジティブ期に絶好調って感じだろうか。魔法自体にも身体・時期・地域で威力の変動ありそう。精霊様ご加護系ならなおさら。
→人体のバイオリズムに関わるなら光闇あたり?月とか特殊なのがあればそれが一番効きそう。月精霊のご加護の強い地域は生理が軽い!やったね!
→薬草技術では難しそう。魔力込められた薬草は高値なので貧乏人は買えない。闇中世じみてきたな。
・ビキニアーマー女戦士は生理の時期どうしてるんだよ問題(或いはソシャゲのファンタジー美少女全員苦労してる説)
→その時期だけローブきて魔法使いの真似して物忌みか?ファンタジー世界でも物忌みが当たり前なのかな。
→じゃあギルドとかひたすら男性優位になりませんかね。生理止めるための高額薬飲んでてなお物忌み不人気で低所得にならざるを得ないギルド所属女魔法使いか…エグいな。
でも男性魔法使いもバイオリズムに合わせた物忌みがあるかもしれない。精霊信仰で「闇精霊の月は町自体が物忌み月間」みたいな風習もあるだろうし…?
女魔法使いのほうが魔力強い、みたいなゲーム的なやつはあるかも。ピーキーだ。
・やっぱり魔王城突入前に緊張で生理きたりするんだろうな。気の毒にな。
・やっぱり女性ばかりパーティーだと周期かぶったりするね(うつる説もあるし)なんも考えず女ばかり集めると旅の途中で詰みます勇者様。
→紙の技術だとなーティッシュペーパーもなさそうだからなー…うんこもままならない世界で高性能ナプキンは無理かなー
→魔力を石に込めるのと同じノリでこう、血を痛みごと封じ込めるとかでワンチャン…その石の後処理どうすんだ。(闇市リカルメで販売してそう)
・魔族および魔王様(女)は闇の瘴気から生まれた存在なので生理になりません!涙も汗もえっちな液体もおトイレ系も全部なし!※ただし定義による
・エルフは生理にはならないかと見せかけて、300年周期とかかもしれない。
なんか思いついたら足すかも。
いきなり「限らず」とか言ってるけど
疲れたのでこの辺にしておく
ダメななろう作品の内容を地で行くことが明らかだから地獄なんだよね。
主人公の知能は人並みだけど、相対する登場人物の知能を極端に下げたバカしか出ないなろう作品がたまにある。
極端な例なら「偏差値10の俺がい世界で知恵の勇者になれたワケ」とネタに振り切ってるけど
真面目に書いてるつもりなのに周囲をサルのような知能にしてしまった作品が存在してる。
無職転入は明らかにその類のアイデアで、相手の知能を幼稚園児にしてまで無双するのは悲しくならんか…ってなる話。
本質的には知識チートも周囲の文明レベルをナーロッパに落として主人公を上げる手法ではあるんだけど、
文明レベルが低い世界なら現地人は知能は人並だけど知識と技術が無く実現できないという世界として自然でリアリティラインが守れる話だから許されているのだ。
文章力は最低限でいい。それはクリアできてる。なんならそこらの底辺WEB小説よりもしっかりしてるぐらいだ。
昔何作か小説書いたこともある自分よりも上手だ。ちゃんと推敲したら平均点は貰えるだろう。ちなみに自分はA~E評価で、よくてB、大体がC、たまにDだ。読み手によって変わるからわけがわからない。
そして今もそうだが、増田に長文書くときは大体酔っぱらってるし推敲しないので、そこそこの数のブクマが付いてしまった時は大体文章が下手だと指摘される、最近はそういうもんだと思って気にしなくなった
と、前置きはともかく
小説を書くにあたって、やり方は極論すれば二択だ。
準備するか否かだ。
実際はまったく準備しないことはほぼあり得ないので、どれだけ準備するか、どの段階で見切り発車するかのバランスというか割合だ。
準備というのは脳内準備とメモ等に設定やら色々を書くというプロットづくりなどの準備に分かれる
プロットを準備するか、否かなのだ。(ここでいうプロットには筋書以外にも世界観等の設定やキャラ設定も含む。厳密な意味は知らない。
そして大体の人はプロットを準備するだろう。(稀にというか、結構な頻度でなんのメモも書かずに書ける人も居る。プロレベルになると割合は下がるが、超人気作家レベルでもプロット作らないって人は結構居る。
話がそれた。
テーマとかはどうでもいいんです。
・登場人物
・大体の話の流れ
・どんな世界か(現代劇とかナーロッパだと考えずに済む)。他に色々
これを書く。
書かなければ小説を書き始められない人は書いた方がいい。書かなくてもどんどん執筆できるなら書かなくてもいい。クオリティ上げたいとか行き詰った時に思い出せばいい
で、困ったことに、プロットに何をどれだけ細かくあるいは粗く書く必要があるか? というのは人によって異なる。
どこで誰と誰が何をしてどうなるレベルをざっくりでいい人も居れば、会話の流れや一挙手一投足レベルで細かく決めておかないと進まない人も居る。
まずはそれを探り当てなければならない。
あとは妄想力。
これを思い浮かべる。奇をてらった書き出しなんて狙わなくていい。後からなんとでも修正できる。
妄想するのだ。そしたら、机に座るところが思い浮かぶかもしれないし、疲れて仕事から帰ってきた瞬間が浮かぶかもしれない。小説を書こうとしてワードなりなんなりを開いて打鍵できない状況かもしれない。
それをそのまま書けばいい。
「私は机に向かった。」でも、「今日も誰も居ない部屋に帰ってきた。」でも「一向に頭の一文が思いつかない」でもいい。
それの繰り返しだ。
妄想だ。頭の中でシーンを思い浮かべる。主人公視点でも神視点でも構わない。混在してもOKだ。書くときに統一すればいい、しなくてもいい。そんなの気にするのは何作か書き上げたり、もっとうまくなりたいと思った時でいい。
要約すると、
・プロットの量、細かさは自分に合ったものを探しましょう。(書けないなら書けるところまで細かく分解して量を増やしましょう)
これだけ。
それでも、書けないなら小説書いた経験のある人に相談するか、知り合いに居ないなら探せばネットでサポートしてくれるサービスが数千円であるのでそういうのを利用するのも検討したらよい
余計なおせっかいだろうけど、みんな難しく考えすぎてるので殴り書かせていただいた。
だいたい小説書くのに挫折するのは、初めからクオリティの高いものを書こうとしすぎるか、見切り発車しすぎてるかのどっちだと思う。
正直動けばいいと思うので、現状でも問題ないと思うけれどちょっとだけ気になった点。
$$使ってる時点で、デベロッパーツール前提なのは分かるけど、 javascriptで動かしたいのか、デベロッパーツールで動かしたいのか、どっちつかずな書き方になっている。
$$('.hatena-star-inner-count').map(a => a.click()); let data = {}; Array.from($$('.entry-comment-contents')).forEach(x => {const userName = x.querySelector('.entry-comment-username a').href.split('/')[3];const comment = x.querySelector('.entry-comment-text').innerText;const stars = Array.from(x.querySelectorAll('.list-star-container a.hatena-star-star')).map(y => y.href.split('/')[3]);data[userName] = [comment, stars];}); console.info(Object.entries(data).map(x => { return ['|', `b:id:${x[0]}`, '|', x[1][0], '|', x[1][1].join(','), '|'].join(' '); }).join("92;n"));
デペロッパーツールだけで動くだけでいいなら、3行目のArray.fromがなくても動く。多分、forEachをmapに書き換えても動く。個人的にはforEachに統一したいけど、そこは好みレベルの問題だと思う。
$$('.hatena-star-inner-count').map(a => a.click()); let data = {}; $$('.entry-comment-contents').forEach(x => {const userName = x.querySelector('.entry-comment-username a').href.split('/')[3];const comment = x.querySelector('.entry-comment-text').innerText;const stars = Array.from(x.querySelectorAll('.list-star-container a.hatena-star-star')).map(y => y.href.split('/')[3]);data[userName] = [comment, stars];}); console.info(Object.entries(data).map(x => { return ['|', `b:id:${x[0]}`, '|', x[1][0], '|', x[1][1].join(','), '|'].join(' '); }).join("92;n"));
逆に、javascriptで動かしたいなら1行目と3行目はquerySelectorAllに書き換えれる。
document.querySelectorAll('.hatena-star-inner-count').forEach((a)=>{a.click()}); let data = {}; document.querySelectorAll('.entry-comment-contents').forEach(x => {const userName = x.querySelector('.entry-comment-username a').href.split('/')[3];const comment = x.querySelector('.entry-comment-text').innerText;const stars = Array.from(x.querySelectorAll('.list-star-container a.hatena-star-star')).map(y => y.href.split('/')[3]);data[userName] = [comment, stars];}); console.info(Object.entries(data).map(x => { return ['|', `b:id:${x[0]}`, '|', x[1][0], '|', x[1][1].join(','), '|'].join(' '); }).join("92;n"));
これも好みの問題だけど、途中のconstの宣言は一回しか使ってないので、宣言せずにそのまんま入れてもいいんじゃないかと思った。
document.querySelectorAll('.hatena-star-inner-count').forEach((a)=>{a.click()}); let data = {}; document.querySelectorAll('.entry-comment-contents').forEach(x => {data[x.querySelector('.entry-comment-username a').href.split('/')[3]] = [x.querySelector('.entry-comment-text').innerText, Array.from(x.querySelectorAll('.list-star-container a.hatena-star-star')).map(y => y.href.split('/')[3])];}); console.info(Object.entries(data).map(x => { return ['|', `b:id:${x[0]}`, '|', x[1][0], '|', x[1][1].join(','), '|'].join(' '); }).join("&#92;n")); |<<