MODで追加されたアイテムをユーザー側で作成不可能にしたい

新しく鯖を建てようと思っているのですが、どうしてもMODのとあるアイテムを運営側だけが入手出来るようにしたいです。 プラグインでレシピ変更や削除などの処理を出来たりしませんか?また、そのような動作が出来るプラグインを知っている方いませんか? サーバーはMohistMCを使っています。 素人質問で申し訳ないです。
Solution:
一番わかりやすい方法としては ``` command /toolinfo: permission: op trigger:...
Jump to solution
36 Replies
月猫ch
月猫ch3mo ago
Skript Hub - Documentation
On Craft (Event) - Skript
Called when a player crafts an item.
月猫ch
月猫ch3mo ago
入手元が何かによる
mirageeeeeeeeeeeeeeeeeeeeeeeeeee
プラグインではなくKubeJSというModを使う手もあります
ヤヅキ
ヤヅキOP3mo ago
入手元はクラフトです MODを使う場合やはりクライアント側にも導入が必須でしょうか?
月猫ch
月猫ch3mo ago
ほなon craftで検知して "%type of item%"で何が出るかみて 文字列で比較して cancel すればよさそう
ヤヅキ
ヤヅキOP3mo ago
すみません、このskripthub?ってサイトを初めて見たんですけど、使い方は通常のプラグイン同様ダウンロードしてプラグインフォルダに入れてコマンドを打って使用という形でいいのでしょうか?
月猫ch
月猫ch3mo ago
いや、このskript hub は skriptのあれこれが乗ってるドキュメント ここで構文を検索できる ただし構文の文法や名前、単語で検索しないといけないから やりたいことを英単語に翻訳したうえで感で検索したり…と 最低限コツがいる
ヤヅキ
ヤヅキOP3mo ago
skriptを自作する際に使う構文を調べるサイト、という解釈で大丈夫ですかね…? skriptの事に関しては全くの無知で、今初心者向けのWebサイトを見ながら返事しているので変な解釈していたりしたらすみません。
月猫ch
月猫ch3mo ago
基本文法は他者のサイトを参照して あとはskriptHubをもとに構文を調べながら作るのが とりあえず一番安定すると思う
ヤヅキ
ヤヅキOP3mo ago
Qiita
【丁寧に解説】Skriptをはじめよう 1:簡単なスクリプトを書いてみよう - Qiita
諸事情により、記事をこれ以降更新することができなくなってしまいました。今まで投稿した本シリーズの記事はそのまま残しておきますが、新しく記事が追加されることはありません。この記事はマインクラフト…
月猫ch
月猫ch3mo ago
注意点として、このサイトはアドオンの構文も含んでるから 必要アドオンとかverをちゃんと把握してから使わないと 『なんでうごかないねんこれぇ!』することが多々ある
ヤヅキ
ヤヅキOP3mo ago
このサイトを見ながらなんですけど、プレイヤーがクラフトをした際の検知は初心者でも出来るものでしょうか…?
mirageeeeeeeeeeeeeeeeeeeeeeeeeee
・KubeJSはクライアント側も導入必要 ・Skriptとは、Javaの代わりに独自言語によるコーディングでプラグインと同等の動作を可能にするプラグイン ・MohistMCは不安定でプラグインが動かない可能性がある これは簡単に実装可能で、
on craft of bed:
cancel event
on craft of bed:
cancel event
例えばこのようなコードでベッドの作成を検知し、作成できないようにします
ヤヅキ
ヤヅキOP3mo ago
かなり初歩的なことから教えていただいてすみません… 上記のコードはKubeJS内で入力すればすぐにでも使えるものでしょうか?また、[bed]のところはMinecraftの高度な情報から見れるアイテムIDでも利用できますか? 大事なことを言い忘れてました。サーバーのバージョンは1.20.1です。
mirageeeeeeeeeeeeeeeeeeeeeeeeeee
KubeJSは名前の通りJavaScriptで記述するので上記のものとは異なります ゲーム内で見られるアイテムIDとは多少異なるものもあります また、SkriptではModアイテムに対応できるか分かりません KubeJSなら確定で対応しています
ヤヅキ
ヤヅキOP3mo ago
ということはこちらはSkript用のコードで、KubeJSでは例えば公式サイトに載っているレシピの削除のようなところを参考にしてJavaScriptで記入という形になるということでしょうか。
月猫ch
月猫ch3mo ago
できる 俺は自鯖でやってる
Solution
月猫ch
月猫ch3mo ago
一番わかりやすい方法としては
command /toolinfo:
permission: op
trigger:
set {_infoType} to type of player's tool
set {_infoData} to damage of player's tool
send "&7Type&e: %{_infoType}%" to player
send "&7Data&e: %{_infoData}%" to player

on craft:
"%type of item%" contains "ITEM_TYPE"
cancel the event
play sound "entity.enderman.teleport" to player
command /toolinfo:
permission: op
trigger:
set {_infoType} to type of player's tool
set {_infoData} to damage of player's tool
send "&7Type&e: %{_infoType}%" to player
send "&7Data&e: %{_infoData}%" to player

on craft:
"%type of item%" contains "ITEM_TYPE"
cancel the event
play sound "entity.enderman.teleport" to player
月猫ch
月猫ch3mo ago
モッド製アイテムを手に持った状態で/toolinfoでITEM_TYPEをチェック それで確認できたやつを"%type of item%" contains "ITEM_TYPE"のITEM_TYPEに入れる これでたぶんクラフトできなくなる
ヤヅキ
ヤヅキOP3mo ago
ありがとうございます!!家に帰ったら試してみます! レシピのアイテムを作ろうとしても作れないようになりました!!!ありがとうございます!ですが、skriptがreloadの度に下のようなエラーを吐くんですけれどこれは直せないものでしょうか?
ヤヅキ
ヤヅキOP3mo ago
No description
月猫ch
月猫ch3mo ago
該当コードをみたいですね どこでエラー出てるとか書いてます? 俺の予想では、modアイテムのitem typeを 文字列にせず直接使用しようとしてる気がします
ヤヅキ
ヤヅキOP3mo ago
このエラー起動時にも出ていて、今回出たのは /skript reload を実行した時でした。
月猫ch
月猫ch3mo ago
俺が追加したコードを引っこ抜けば治ります? 具体的には "%type of item%" contains "ITEM TYPE"
ヤヅキ
ヤヅキOP3mo ago
コードを入れる前からコンソール画面で出ていたので多分違うと思います…。言葉足らずですみません。 [Skript]からエラー文を出していました
月猫ch
月猫ch3mo ago
うーーーーん やっぱりmodのアイテムのIDを直接skript内で使用しようとしてるんじゃないかと思いやす 今回が初出じゃないならなおのこと場所がわからんすね…… ファイル一個づつdisableして確かめるしか
ヤヅキ
ヤヅキOP3mo ago
[16:24:30] [Server thread/INFO] [ch.njol.skript.Skript]: [Skript] Enabling Skript v2.9.2 [16:24:30] [Server thread/INFO] [Console]: [Skript] Successfully generated the config and the example scripts. [16:24:31] [ForkJoinPool.commonPool-worker-2/INFO] [Console]: [Skript] You're currently running the latest stable version of Skript. [16:24:36] [Server thread/INFO] [Console]: [Skript] Minecraft id farmersdelight:stove is not valid コンソールで出力されてたskript起動直後のログです 今のところは特に動作に不備があるわけではないので放置でもいいんですかね、、?
月猫ch
月猫ch3mo ago
Farmers Delite ModのアイテムのIDがskriptでは有効になってないよ〜(modのアイテムだから対応してないよ〜)って言われてるだけなんで まあ無視でいいですね
ヤヅキ
ヤヅキOP3mo ago
なるほど、、、!夜遅くまで回答していただきありがとうございました!素人すぎて色々質問外のことなど聞いてしまってすみませんでした。。
月猫ch
月猫ch3mo ago
妥当 ちなみに、↑のやつの原因として考えられるのが player's toolとかで、modのアイテムかバニラアイテムかを区別せずに そのまま取得しようとしてたりすることが考えられますね… 例えば
every 1 tick:
loop players:
set {_item} to loop-player's tool
set {_type} to type of {_item}
every 1 tick:
loop players:
set {_item} to loop-player's tool
set {_type} to type of {_item}
こういうことすると起こりそう 違ったら御免(
ヤヅキ
ヤヅキOP3mo ago
緊急で直したいというわけでもないので不具合が発生するまでは放置しようかなあと考えています…。
月猫ch
月猫ch3mo ago
それでいいとおもう
ヤヅキ
ヤヅキOP3mo ago
古野さんのコードでMODのアイテムのレシピを作成不可にすることはできたので 当初の目的は達成できました!!
月猫ch
月猫ch3mo ago
modのアイテムでも、無理やり文字列とかに落とし込んで比較すれば まあ連携(笑)できないことはない 覚えておくと便利
ヤヅキ
ヤヅキOP3mo ago
ありがとうございます!!これ、自作MohistMC鯖を作るにあたっての質問とかで新しくスレとか建てたほうがいいでしょうかね?運営が自分しかおらず、プラグインやSkriptのことについて色々とご教授してほしいので。。
月猫ch
月猫ch3mo ago
まあ内容別に個別に建てたほうがいいよ
Want results from more Discord servers?
Add your server