現代魔法学

魔法ってなんかコンピュータシステムっぽくない? というファンタジー科学
4
森谷樹里@超雑食 @J_M_Tallinn

ファンタジー世界における魔法の発動原理を考えてたら午前が終わった 魔法に質量保存の法則は効くのか……? MP=マジックポイント、かつ、魔法の威力が依存するステータス=魔力の場合は術者自身に魔法を使うための力(源泉)が有ると推測できるけど、メンタルポイント&知恵などの場合は?

2016-10-19 12:22:47
森谷樹里@超雑食 @J_M_Tallinn

精神力の消費はあくまで単なる疲れであって、魔法の発動そのものには関わらないのでは? 威力が知恵などに依存するなら、魔法の威力はどれだけ難しい呪文を知っているかや効率的な魔法の発動ができるかで決まり、術者の身体要件は関係無いのでは?

2016-10-19 12:27:45
森谷樹里@超雑食 @J_M_Tallinn

とすると、魔法には世界観によって大きく二種類の体系が有ると推測できる 魔法が術者自身の持つ力である場合と、何か別の大いなる力を術者が引き出して利用している場合 空想上の世界では前者をよく見る気がするけど、現実世界では後者をよく見るかな いわゆる「月の魔力で恋のおまじない」みたいな

2016-10-19 12:36:22
森谷樹里@超雑食 @J_M_Tallinn

後者では魔法の力の源泉は月であり、呪文(例えば金曜の夜窓辺でチョコレートに月光を浴びさせるとかだ)は月に対して力を借りると頼む手続きであり、術者本人には何ら特別な力は無いということになる 強いて言うなら術者はそういう風にすると月の力を借りられると知識を持っているが、それだけである

2016-10-19 12:50:58

public static magic ComeTrueLove()

森谷樹里@超雑食 @J_M_Tallinn

このシステム、ちょっとプログラムっぽいな パブリック関数恋のおまじないを実行すると関数内部でごちゃごちゃとチェック処理が走り、チェックを抜けると共通プライベート関数月にリソース要求が呼び出されて、実行が成功すると戻り値として魔法が現実世界で効力を発揮する

2016-10-19 13:02:42
森谷樹里@超雑食 @J_M_Tallinn

おまじないの効力が感じられない場合、そもそも実行する関数を間違えてる(関数は存在しません)とか、用意するものが足りなかったり多すぎたり(関数恋のおまじないは指定引数の型ではありません)とか、色んな人が同時におまじない実行しすぎ(リソースビジー)とか、そういうエラーになってる

2016-10-19 13:07:25
森谷樹里@超雑食 @J_M_Tallinn

エルフとか特定種族しか魔法を使えない世界の場合、関数実行に権限が必要とかそんな感じかな システム魔法へは権限グループ「エルフ」でなければアクセスできません、とか、サブシステム黒魔法へは権限グループ「黒魔術師」でなければアクセスできません、とか

2016-10-19 13:12:57
森谷樹里@超雑食 @J_M_Tallinn

多分、サーバ・クライアント方式なんだ メイン処理をするのはサーバである月だけど、関数の実行命令と実行結果の受信をするとこはクライアントである術者だから、術者も精神力を消費したりする そういう意味では多少術者本人の身体要件も有るのかな ただそれは魔法の力そのものの要件ではない

2016-10-19 13:23:05

禁断魔法とはつまり

森谷樹里@超雑食 @J_M_Tallinn

普通の魔法はパブリック関数(呪文)を実行したときにちゃんとチェック処理が入って、例えば受信に精神力をめっちゃ食う関数なのに精神力が弱ってる術者がそれを実行しようとすると精神力が足りませんってエラーが返されて実行失敗する そしていわゆる禁断魔法はこのチェックがザルとか

2016-10-19 13:25:46
森谷樹里@超雑食 @J_M_Tallinn

ザルチェックで術者の状況とかまるで鑑みず戻り値を返したりする……その結果、関数を実行した術者が精神とか身体にダメージを受けて死んだり廃人になったり、そういうことが頻発した魔法がきっと禁断魔法と呼ばれるようにいつしか

2016-10-19 13:29:34
森谷樹里@超雑食 @J_M_Tallinn

リアルシステムでもあるあるだね 軽い気持ちで全件出力のボタンを押したらウン万行のcsvが出力待ちになってPCフリーズ、最悪クラッシュとかね ザルチェックが意図されたものなのかうっかりバグなのかはシステム開発者……ファンタジー風にいうなら神のみぞ知る

2016-10-19 13:34:57
森谷樹里@超雑食 @J_M_Tallinn

@soundwing07 カードキー(権限グループ設定)が無いと入れない部屋にリモコン(パブリック関数)が置いてあって、ボタンを押すとどうやって貯水槽に繋いでるのかは不明(共通プライベート関数が勝手に処理)だけど洗濯機が回ったりスプリンクラーが作動したりする

2016-10-19 13:50:04
森谷樹里@超雑食 @J_M_Tallinn

@soundwing07 このリモコンは賢くて、例えばスプリンクラーボタンは押した人が電子機器とか持ってると作動しないんだけど、スプリンクラー(緊急時以外使用禁止)って方を押すと電子機器を持ってようが遠慮なく水が撒かれて、火災の時とかには便利だけどリモコン押した人のSAN値は死ぬ

2016-10-19 13:52:13

魔法のシステム要件

森谷樹里@超雑食 @J_M_Tallinn

サーバ月で処理される魔法とサーバ地球で処理される魔法の言語は同じか否か 呪文だとか魔方陣だとか術者が実行命令を入力するインターフェースは同じかもしれない 人間(あるいはエルフとかかもしれないが)が発音したり、実世界に存在する物(例えば紙とペン)で書けば取り敢えず動く

2016-10-19 15:37:34
森谷樹里@超雑食 @J_M_Tallinn

でもサーバ側の処理はやっぱり違うんじゃないか 月はCだけど地球はJAVAみたいな 月は人の存在しない静謐な神秘の力をリソースとしていて、言語もそれの活用に最適化されたものだけど、地球はそこに生きる生き物の活気をリソースとしていて、言語もそれ向きとか

2016-10-19 15:46:16
森谷樹里@超雑食 @J_M_Tallinn

金勘定系とか信頼性が大事なシステムは未だにメインフレーム+COBOLで構築されてるけど応答速度が大事でたまのエラーくらい許容されるシステムはPC+JAVAでの構築が優位みたいな……

2016-10-19 15:51:06
森谷樹里@超雑食 @J_M_Tallinn

実在世界の術師が特に何も考えず実在世界のインターフェースで入力した呪文を、パブリック関数が適切な型に変換した上で適切な共通プライベート関数を選びそれに引数として渡す 共通プライベート関数からの戻り値をまたパブリック関数が適切な型に変換して実在世界に具現させる

2016-10-19 15:56:22

身に覚えが有る系RPG

森谷樹里@超雑食 @J_M_Tallinn

ファンタジー世界で魔法がめっちゃ研究されて分析されてシステムでいうところのバグも発見されてそのバグを突いて無理にめっちゃリソース食う魔法を発動したりしてたらある日システム管理者……神が激怒して「クラッカーはお前らか!!!」って人間を叩き潰しに掛かってきたのを何とかするRPG とか

2016-10-19 16:06:26
森谷樹里@超雑食 @J_M_Tallinn

あるいは激怒したシステム管理者……神が全人類のシステム魔法へのアクセス権限を抹消して、全ての魔法が突然誰にも使えなくなっててんやわんやした人間達が魔法の力を取り戻そうと神に挑むRPG とか

2016-10-19 16:10:32
森谷樹里@超雑食 @J_M_Tallinn

もしくは研究分析の結果いわゆる普通の人間まで誰でも魔法を使えるようになって、今まで特権的に魔法を使えていた種族あるいは血族だか特定の修行をした人だかがそれを邪道な魔法だと非難し世界が元々魔法が使えた人VS研究で使えるようになった人に別れ大戦争みたいなRPG とか

2016-10-19 16:15:52
森谷樹里@超雑食 @J_M_Tallinn

高度に発展した科学は魔法と区別が付かない 高度に分析された魔法は科学と区別が付かない

2016-10-19 15:58:16