したらばTOP ■掲示板に戻る■ 全部 1-100 最新50 | メール | |

【遊戯王】ADS自作スクリプト投稿スレ

1名無しデュエリスト:2016/07/16(土) 07:42:18 ID:nfNN3lMY0

日本版ADSで使えるスクリプトで自分で組んだものを投稿したり、
組んだスクリプトのバグ修正、裁定やルール面での問題点などアドバイスを求めたり、
スクリプトについて質問したりするスレです。

アニメオリカ、完全オリカ、OCGTCGカードいずれでも構いません。

386名無しデュエリスト:2017/05/07(日) 20:28:32 ID:0seCpY4s0
>>383
シムルグの適用範囲をデッキにすればできない?

>>384
どっちも書いてる事は同じ(マットの書き方は冗長)
「Aの効果を発動した」かどうかは大体の場合は
① AのCost内でRegisterFlagEffectで自身にフラグを立てる
② GetFlagEffectでAを発動したか判断
という手順
永続罠の効果の発動なんかでも良く見られる書き方だね

387名無しデュエリスト:2017/05/07(日) 22:46:52 ID:RyydZCKk0
>>385
間違えていました・・・ 「森羅の葉心棒 マット」ではなく「魔導化士 マット」でした。失礼致しました
ありがとうございます!マットの方がゼラートと比べて複雑でしたがandで2つ以上の条件を括っても良いという事ですね
then return false endの意味もよく分からなかったのでとても参考になります

>>386
Costにそんな使い方があったとは知りませんでした
確かにゼラートにも同じ書き方がされてあります こういう使い方をするんですね
参考になりました!ありがとうございます!

388名無しデュエリスト:2017/05/14(日) 18:11:59 ID:6OiG1vXo0
コンマイ語に関する質問なんだが
モンスター効果の記述で、先にフィールドに出ていれば後から自身のモンスター効果を無効化されることはない
(ex.先にフィールド上に出ているスキルドレインやBloo-dには効果を無効化されるが後出しのスキルドレインやBloo-dには効果を無効化されない)
という場合はどういう記述をすればいいのかな?
「このカードの効果は無効化されない」じゃマズいよね

389名無しデュエリスト:2017/05/22(月) 01:53:30 ID:UeFavsGo0
その例なら「このカードはほかのカードの効果を受けない」でいいんじゃない?

390名無しデュエリスト:2017/05/22(月) 18:13:40 ID:6OiG1vXo0
>>389
ああ、申し訳ない。
ちょっと言葉が足りなかった。。。
出した例の範囲内だけなら確かにそうなるよね。

意図としては、
(a)特定の属性以外のモンスター効果を受け付けない。さらにモンスター効果の対象にもさせない。
(b)ただし、モンスター効果を無効化するモンスター効果に関しては、こちらが先にフィールド上に出ていれば相手モンスターの属性に関係なく一切受け付けない。
(c)対象を取る魔法・罠の効果は受け付けない(対象を取らない魔法・罠の効果は受ける)。
(d)ただし、モンスター効果を無効化する魔法・罠に関しては、こちらが先にフィールド上に出ていれば対象を取る取らないに関係なく一切受け付けない。
で、この場合の記述の仕方。


とりあえず、今はこれを
(1)このカードの効果は無効化されない。
(2)このカードは効果の対象にならず、○属性以外のモンスターの効果を受けない。




という記述にしてるんだが。

391名無しデュエリスト:2017/05/22(月) 18:33:32 ID:6OiG1vXo0
(a)(b)の補足
要するに、このカードが受けるモンスター効果は、特定属性の対象を取らない、モンスター効果を無効化する効果以外の効果のみということ

392名無しデュエリスト:2017/05/26(金) 00:54:34 ID:szSs0.260
>>390
そもそもとして「カード効果を無効化されない効果」は既存カードに存在しないからコンマイ語においては定義もされない

とりあえずそれ以外は
①:このカードはモンスターの効果の対象にならず、対象を指定しない魔法・罠カード及び○属性以外のモンスターの効果を受けない。
ぐらいじゃない?

393名無しデュエリスト:2017/05/26(金) 17:03:33 ID:6OiG1vXo0
>>392
既存カードに存在しない効果は実装しないのが基本なのは百も承知なんだが、
なぜこの効果を思い付いたかというと
SetCode(EFFECT_CANNOT_DISABLE)にSetConditionやSetOperation定義しなかったらどういう挙動するのかテストしてて思い付いたんだけどね。

とりあえず神属性の「このカードの召喚は無効化されない。」「このカードの召喚成功時には、このカード以外の魔法・罠・モンスターの効果は発動できない。」を取っ払って
幻神・邪神・極神に実装して内輪でやってるんだが今のところなかなかいい感じでハマってる。

394名無しデュエリスト:2017/06/04(日) 15:32:33 ID:8EVjueac0
二重魔法の対象を取らない版(Aとする)を作ってみて「RUM-幻影騎士団ラウンチ」を発動したら、
ラウンチではなくAがX素材になってしまいました。この時にラウンチを素材にさせるにはどうすればいいのでしょうか。

395名無しデュエリスト:2017/06/04(日) 19:30:01 ID:YAdilUkk0
>>394
恐らく構造上不可能
本来のカード効果では「対象のカード自体を発動させる」効果だけど、
ADSのスクリプトでは「対象のカードの発動時の効果を《二重魔法》の効果として使用」になってる
ADSに「カードの特定の効果を発動させる」ための関数が(多分)無いので本体で更新が来ない限り不可能

396名無しデュエリスト:2017/06/08(木) 00:00:30 ID:8EVjueac0
効果のリセットを効果解決時にしようと思っていますが、
e1:SetReset(RESET_EVENT+EVENT_CHAIN_SOLVING)ではないみたいです。
正しい表記はどうすればいいでしょうか。

397名無しデュエリスト:2017/06/08(木) 10:13:30 ID:qAZYL9GA0
>>396
その質問には問題点が3つある
一つ、単純に読めば恐らく正しい表記である
二つ、効果を与える処理は通常は効果処理時に行うため、そもそも効果処理時にリセットする事は恐らく無い
三つ、オリジナルの効果に関する質問の場合はその効果を全て書いた方が良い

398名無しデュエリスト:2017/06/12(月) 17:07:23 ID:Gzo3pjw20
「○○(カテゴリ)」カードが発動していないというのを発動条件にするのは可能でしょうか?

399名無しデュエリスト:2017/06/12(月) 17:11:13 ID:HfxKNEeA0
できる
そのカテゴリ全てのカードでRegisterFlageffectしてやればいい

400名無しデュエリスト:2017/06/13(火) 12:32:49 ID:Gzo3pjw20
>>399
発動タイミングが同じかつ任意の誘発効果なので
発動するかどうか選ぶ段階では効果が発動していないのですが
その方法でできますでしょうか?

401名無しデュエリスト:2017/06/13(火) 22:23:50 ID:ju1YNaOI0
>>398,400
「『○○』カードが魔法&罠ゾーンに存在しない場合に発動できる」なのか
「『○○』カードの効果は1ターンに1度しか発動できない」なのか
「『○○』カードは同一チェーン上では1度しか発動できない」なのか

最後の場合なら>>399でできる

402名無しデュエリスト:2017/06/15(木) 18:00:36 ID:ImA9y.To0
Pカードのオリカ作ってるけどあるPスケールを対象にする仕方が分からない。

効果の元はDDブラスト・オーガ
作りたい効果はスケール8が存在するときにこのカードのスケールを6にする。
このカードの元のスケールは8

--scale
local e5=Effect.CreateEffect(c)
e5:SetType(EFFECT_TYPE_SINGLE)
e5:SetProperty(EFFECT_FLAG_SINGLE_RANGE)
e5:SetCode(EFFECT_CHANGE_LSCALE)
e5:SetRange(LOCATION_PZONE)
e5:SetCondition(c13000155.sccon)
e5:SetValue(6)
c:RegisterEffect(e5)
local e6=e5:Clone()
e6:SetCode(EFFECT_CHANGE_RSCALE)
c:RegisterEffect(e6)

unction c13000155.sccon(e)
return Duel.IsExistingMatchingCard(Card.IsSetCard,e:GetHandlerPlayer(),LOCATION_PZONE,0,1,e:GetHandler(),0)
end

どこいじればいいですかね?

403名無しデュエリスト:2017/06/16(金) 05:48:29 ID:OV9uJmcY0
LOCATION_PZONEはそもそもSetRangeでしか使えない

404名無しデュエリスト:2017/06/16(金) 17:29:40 ID:.PfMoFLI0
>>402
ブラストオーガって誰だ
β版はどうなのか知らないが、少なくとも現日本版では>>403の言ってくれたように、LOCATION_PZONEが使えないからSequenceを使ってPゾーンのカードを取得する

405名無しデュエリスト:2017/06/17(土) 21:36:55 ID:ImA9y.To0
>>404
ブではなくプでした。よく見てなかった・・・
使ってるのはリンク対応βv4です。
まだ他のカードのスクリプト持ってきて弄るのがほとんどなんで細かい所の理解は・・・

406名無しデュエリスト:2017/06/21(水) 01:01:38 ID:Gzo3pjw20
スクリプトが長くなると途中にある攻守増減系の効果が効かなくなります
効果を一つ消すと有効になるのですが対処法は張りますでしょうか?

407名無しデュエリスト:2017/06/21(水) 08:08:58 ID:LB17FcGA0
多分括弧でミスってんじゃねえかな

408名無しデュエリスト:2017/06/24(土) 12:17:17 ID:wLqH7Nj.0
対戦相手がハノイの騎士なこと多いんだけどあれはデフォルトネームの一種なのか?
それともたまたま流行ってるとかなのかね

409名無しデュエリスト:2017/06/24(土) 12:17:50 ID:wLqH7Nj.0
ごめんなさい一個上と間違えました

412名無しデュエリスト:2017/07/04(火) 14:51:27 ID:NYxQqVLs0
質問失礼します。
墓地のモンスターを除外して、対象にしたフィールドのモンスターに除外したモンスターの効果と
「●このカードの効果で相手に与える効果ダメージは0になる。」
という効果を付与するカードを作っています。
「EFFECT_CHANGE_DAMAGE」を使って、そのSetValue先に

function c番号.damval(e,re,val,r,rp,rc)
if re:GetHandler()==e:GetHandler() and bit.band(r,REASON_EFFECT)~=0 then return 0 end
return val
end

と設定しているのですが、上記の効果と「ヴォルカニック・エッジ」の効果を与えたモンスターと「火炎地獄」でテストした所、
付与したモンスターの効果のみで与えるダメージを0にすることは出来ました。
ですが、「アマゾネスの剣士」や「LL-リサイト・スターリング」の効果を与えたモンスターで戦闘を行った所、
自分は戦闘ダメージを受けましたが、相手にその数値分の戦闘ダメージを与えることが出来ず、スクリプトエラーが出ました。
その時のエラーの状況は「re:GetHandler()==e:GetHandler()」の「re」に何も入っていない、という内容でした。
解決方法があれば、教えて頂きたいです。

413名無しデュエリスト:2017/07/16(日) 19:40:20 ID:YmKAqde.0
スクリプトの質問失礼します。
「このカードはデッキからもアドバンス召喚できる。」という召喚ルール効果を作ろうと思い、
真竜の召喚ルール効果に「e1:SetRange(LOCATION_DECK)」を追加してみたのですが、
デッキから召喚する事ができず、手札からの召喚ルールとして処理されてしまいます。
憑依装着の記述を参考にSetTypeをEFFECT_TYPE_FIELDにしてもダメでした。

上記のような召喚ルール効果を実装する事は可能でしょうか?
また、実装可能な場合はどのように実装すれば宜しいでしょうか?
どうぞ、宜しくお願い致します。

414名無しデュエリスト:2017/07/16(日) 20:28:17 ID:6.tlDY3w0
>>413
そこまでやってダメなら無理じゃないかな
そもそも(デュアルを除いて)手札以外から召喚する効果が無いからEFFECT_SUMMON_PROCが手札以外に対応して無いかもしれない

デッキで発動するチェーン不可能な召喚する効果として疑似的に再現する事はできそうな気がするから頑張れ

415名無しデュエリスト:2017/07/16(日) 23:14:13 ID:YmKAqde.0
>>414
うーん、やっぱり無理ですか…
それでは場に出す処理は起動効果や遺言状等の方面で作ってみたいと思います。

その際に召喚権を消費させたいのですが、
「このターン通常召喚できない」制約ではなく、召喚権を1回分だけ減らす処理を実装するにはどうすれば良いかどなたかご存知でしょうか?

417名無しデュエリスト:2017/07/17(月) 21:28:20 ID:OV9uJmcY0
普通に憑依装着の記述じゃだめなの

418名無しデュエリスト:2017/07/20(木) 19:12:40 ID:Oa7Sd71A0
質問失礼します。
「デッキに存在する間だけ効果モンスターとして扱う」魔法カードを作りたいと思い、
「EFFECT_CHANGE_TYPE」を使用してスクリプトを書いてみましたが、
適用されず、魔法カード扱いのままになってしまいます。
(手札や墓地ではモンスター扱いにできました。)

質問したいことは
・上記のような効果は実装可能かどうか。
・実装可能ならば、どのように実装すればよいか。
の2点です。
どうぞよろしくお願いします。

スクリプトは以下になります。
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_SINGLE_RANGE)
e1:SetRange(LOCATION_DECK)
e1:SetCode(EFFECT_CHANGE_TYPE)
e1:SetValue(TYPE_MONSTER+TYPE_EFFECT)
c:RegisterEffect(e1)

419名無しデュエリスト:2017/07/20(木) 19:48:05 ID:2tCEEvQA0
デッキに存在する間だけ通常モンスターとして扱うカードを以前実装しようとしたがどうやっても無理だった
多分これも同じはず

420名無しデュエリスト:2017/07/20(木) 19:57:40 ID:2tCEEvQA0
というか逆に効果モンスターをデッキ以外で魔法扱いさせればいいのでは?

421名無しデュエリスト:2017/07/20(木) 20:21:14 ID:Oa7Sd71A0
>>420
なるほど、逆転の発想ですね...

通常モンスター扱いにするのもできないとなると、デッキ内には
「EFFECT_ADD_TYPE」や「EFFECT_CHANGE_TYPE」の影響は与えられない、ってことですかね。
効果モンスターをデッキ以外で魔法扱いにする方向で考えてみます。

ありがとうございました。

422名無しデュエリスト:2017/07/22(土) 18:22:13 ID:NYxQqVLs0
すみません、スクリプトの質問失礼致します。

Card.GetEffectCount(EFFECT_TRAP_ACT_IN_SET_TURN)を使って、
あるカードを、「王家の神殿」の「セットした罠カードを発動できる」効果を使用していないターンは発動できる、
既に使用したターンは発動できない、というスクリプトを作りたいのですが、
「EFFECT_TRAP_ACT_IN_SET_TURN」って、「Card.GetEffectCount」では使えるのでしょうか?

423名無しデュエリスト:2017/07/22(土) 18:46:53 ID:2tCEEvQA0
まずやってみてから来てね

424名無しデュエリスト:2017/07/22(土) 19:04:33 ID:NYxQqVLs0
やってみて出来なかったので来ました。
でも私の知らないやり方で、もしかしたら出来るかも?と思ったので質問させて頂いた次第です。

425名無しデュエリスト:2017/07/22(土) 20:47:27 ID:2tCEEvQA0
それなら《王家の神殿》のRegisterFlagEffectの数値を調べてそいつを使ってみたらどうだい?

426名無しデュエリスト:2017/07/24(月) 17:32:14 ID:NYxQqVLs0
>>425
返信遅れてすみません。
色々やってみましたけど、無理でした…orz
やはり、特定の効果の使用をカウントするのは不可能なのでしょうか…?

427名無しデュエリスト:2017/07/24(月) 19:19:47 ID:2tCEEvQA0
ちゃうちゃう
SetCountLimitやった
コイツ使えばいいんだよ

428名無しデュエリスト:2017/07/24(月) 20:56:15 ID:NYxQqVLs0
>>427
そちらが言った通り、SetCountLimitを使って、色々と実験してみましたが上手く行きませんでした…
頭の悪い私にどうかご教示願えないでしょうか。

429名無しデュエリスト:2017/07/24(月) 22:07:02 ID:2tCEEvQA0
eホニャララ:SetCountLimit(1, 29762407)ってのを適切な場所に差し込めば
「王家の神殿」の(1)の効果と制約が一緒になる

つまりその効果を発動すると「王家の神殿」の(1)の効果を使えなくなり、
「王家の神殿」の(1)の効果を発動するとその効果が使えなくなる

今作ろうとしてるカードの効果を貼ってくれれば適切な挿入場所もわかるんだがね

430名無しデュエリスト:2017/07/24(月) 22:08:29 ID:NYxQqVLs0
>>427
すみません、お礼言うの忘れてました。
どうもありがとうございます。

431名無しデュエリスト:2017/07/24(月) 22:15:02 ID:NYxQqVLs0
>>429
てっきり返事来てないと思ったので(見た時には返事が表示されて無かったので)、変な返しになってしまった…
お返事どうもありがとうございます!
もし、自分でやってみてそれでも出来なかったら効果文を載せます。

432名無しデュエリスト:2017/07/24(月) 22:15:50 ID:OfGqjuWg0
頑張ってみてなー
やっぱりこの手の自分でいじれるのは楽しいからね

433名無しデュエリスト:2017/07/25(火) 00:38:58 ID:NYxQqVLs0
>>432
遂に作りたかった効果のカードを完成させることが出来ました!
本当にありがとうございます!!

434名無しデュエリスト:2017/07/25(火) 00:52:15 ID:2tCEEvQA0
よかったよかった

435名無しデュエリスト:2017/07/25(火) 20:51:01 ID:NYxQqVLs0
>>434
完成したと言っておきながら、動作確認を綿密にしてみたら、不具合があることが発覚しました…(泣
すいません、また質問しても宜しいでしょうか?
どうしても完成させたいカードなので、宜しくお願いします。

436名無しデュエリスト:2017/07/25(火) 21:19:06 ID:2tCEEvQA0
今度はなんぞ

437名無しデュエリスト:2017/07/25(火) 22:06:50 ID:NYxQqVLs0
>>436
返信ありがとうございます!

実はこういう効果のカードを作っていまして。
「このカード名の効果は1ターンに1度しか使用できず、相手ターンでも発動できる。
①:このカードが墓地に存在する場合、手札を2枚墓地へ送り、自分の墓地の通常罠カード1枚を対象として発動できる。
そのカードを除外し、このカードを通常罠カード扱いとして自分フィールドにセットする。
この効果でセットしたこのカードは、その除外したカードの発動時と同じ効果のカードとして発動できる。」

そちらの言った通りにe1:SetCountLimit(1,29762407)で設定してみたのですが、

「王家の神殿」の(1)の効果を発動して、このモンスター以外の、そのターンにセットした罠カードを発動すると、
前のターンから魔法&罠ゾーンにセットされてある、このモンスターの発動ができなくなります。
元々セットされてあるカードなので、王家の神殿の効果を適用しても、発動できなきゃおかしいのに上手く行きません。

スクリプトを一部載せるので、どこが悪いか見て頂けないでしょうか?

if not c99999999.global_check then
c99999999.global_check=true
local ge1=Effect.CreateEffect(c)
ge1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
ge1:SetCode(EVENT_SSET)
ge1:SetOperation(c99999999.checkop)
Duel.RegisterEffect(ge1,0)
end

function c99999999.checkop(e,tp,eg,ep,ev,re,r,rp)
local g=eg:Filter(Card.IsCode,nil,99999999)
local tc=g:GetFirst()
while tc do
tc:RegisterFlagEffect(99999999,RESET_EVENT+0x1fe0000+RESET_PHASE+PHASE_END,0,1)
tc=g:GetNext()
end
end

function c99999999.operation(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local tc=Duel.GetFirstTarget()
if c:IsRelateToEffect(e) and tc:IsRelateToEffect(e) and c:IsCanTurnSet() then
if Duel.Remove(tc,POS_FACEUP,REASON_EFFECT)~=1 then return end
Duel.MoveToField(c,tp,tp,LOCATION_SZONE,POS_FACEDOWN,true)
c:SetStatus(STATUS_SET_TURN,true)
Duel.RaiseEvent(c,EVENT_SSET,e,REASON_EFFECT,tp,tp,0)
local e1=Effect.CreateEffect(c)
e1:SetCode(EFFECT_CHANGE_TYPE)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e1:SetReset(RESET_EVENT+0x1fe0000)
e1:SetValue(TYPE_TRAP+TYPE_NORMAL)
c:RegisterEffect(e1)
local te=tc:GetActivateEffect()
if te then
local e1=Effect.CreateEffect(c)
e1:SetDescription(te:GetDescription())
e1:SetCategory(te:GetCategory())
e1:SetProperty(te:GetProperty())
e1:SetType(EFFECT_TYPE_QUICK_O+EFFECT_TYPE_ACTIVATE)
e1:SetCode(te:GetCode())
e1:SetRange(LOCATION_SZONE)
if c:GetFlagEffect(99999999)~=0 then
e1:SetCountLimit(1,29762407)
end
e1:SetReset(RESET_EVENT+0x1fe0000)
e1:SetLabelObject(te)
e1:SetCondition(c99999999.accon)
if te:GetCost() then
e1:SetCost(te:GetCost())
end
e1:SetTarget(c99999999.actg)
e1:SetOperation(c99999999.acop)
c:RegisterEffect(e1)
end
end
end

438名無しデュエリスト:2017/07/25(火) 22:12:18 ID:NYxQqVLs0
長くなってしまってすみません…

439名無しデュエリスト:2017/07/25(火) 22:26:57 ID:NYxQqVLs0
後、前のターンからこのモンスターが魔法&罠ゾーンに伏せてあって、
王家の神殿が場にある状態で発動すると、そのターンにセットした
他の罠カードが発動できなくなる不具合もあります。

440名無しデュエリスト:2017/07/25(火) 22:39:19 ID:2tCEEvQA0
local e1 = ホニャララ
が二箇所あるのはわかりにくぅい!

私の勘違いでなければ同じスコープで二重にe1を定義しているような

>元々セットされてあるカードなので、王家の神殿の効果を適用しても、発動できなきゃおかしいのに上手く行きません。
このカード名の効果は相手ターンでも発動できる。
①:このカードが墓地に存在する場合、手札を2枚墓地へ送り、自分の墓地の通常罠カード1枚を対象として発動できる。
そのカードを除外し、このカードを通常罠カード扱いとして自分フィールドにセットする。
この効果でセットしたこのカードは、その除外したカードの発動時と同じ効果を得る。
セットされたこのカードは1ターンに1度のみ発動でき、「王家の神殿」の①の効果を発動したターンには発動できない。

って感じのテキストになってるな
SetCountLimitを差し込む場所が違ったのだ

441名無しデュエリスト:2017/07/25(火) 22:40:23 ID:2tCEEvQA0
>>439
だって今のコードだとセットされたこのカードが発動した時に「王家の神殿」の1の効果を発動できない制約が掛かるようになってるからね!

442名無しデュエリスト:2017/07/25(火) 22:55:48 ID:NYxQqVLs0
>>441
お返事ありがとうございます。
RegisterFlagEffectの設定は削除するとして、
SetCountLimitはどの辺りに差し込めば良いのでしょうか?

443名無しデュエリスト:2017/07/25(火) 23:18:24 ID:NYxQqVLs0
スクリプト作るのは思っていたより難しいです…
まだまだ知識不足なので、力を貸して頂けると嬉しいです。

444名無しデュエリスト:2017/07/25(火) 23:30:31 ID:2tCEEvQA0
c99999999.initial_effectの中で
eホニャララ:SetOperation(c99999999.operation)している
eホニャララがあるよな?
それにeホニャララ:SetCountLimit(1,29762407)すればよろし

445名無しデュエリスト:2017/07/25(火) 23:52:57 ID:NYxQqVLs0
>>444
その「initial_effect」には既にe1:SetCountLimit(1,99999999)が入っているのですが、どうすればいいのでしょうか?
「このカード名の効果は1ターンに1度しか使用できず、」という効果なので、
効果自体を変えるしか、方法は無いのでしょうか?

446名無しデュエリスト:2017/07/25(火) 23:54:47 ID:2tCEEvQA0
>>445
そこを99999999から29762407に変えても
このカード名のこの効果および「王家の神殿」の1の効果は1ターンに1度のみ発動できるというセンテンスの意味は守られる

447名無しデュエリスト:2017/07/25(火) 23:57:52 ID:NYxQqVLs0
>>446
なるほど…解りました。ありがとうございます。

448名無しデュエリスト:2017/08/19(土) 21:06:26 ID:8EVjueac0
>>395
>>394 の者です
この前二重魔法のスクリプトをおとり人形で代用するとなんとうまくいきました。(「発動させた」ラウンチが素材になった)
なぜかはよく分からないですけど。

449名無しデュエリスト:2017/08/21(月) 23:38:51 ID:B7ubqhbM0
>>1には「日本版ADSで〜」って書かれてるけど場所が無いのでβ版について相談

日版ADSだと[Duel.SendtoDeck(tc,tp,-1,REASON_RULE)]でトークンの様に完全にロストさせる事ができたんだけど、
β版だとそれができなくて困ってます
どなたかこのような処理ができる方法を知りませんか?

450名無しデュエリスト:2017/08/27(日) 15:35:35 ID:Gzo3pjw20
マキュラのカウンター罠版みたいなのを作ろうとしてるのですが
targetにカウンター罠を入れるのってどうすればいいのでしょうか

451名無しデュエリスト:2017/08/27(日) 23:39:48 ID:mHYEsjTQ0
ADSオリカ作成入門して2週間です。
今、昔のGBC風味の儀式(暗黒騎士ガイアをリリースしてカオス・ソルジャー特殊召喚)
みたいなものを作っているのですが、最後の詰めがうまくいきません。見て頂けないでしょうか?
したいこと:「ブラック・マジシャン」「カオス・ソルジャー」の2体をデッキ・手札・フィールドからリリースしてデッキ・手札から「マジシャン・オブ・ブラックカオス」特殊召喚
今できているところ:デッキ・手札・墓地から「ブラック・マジシャン」「カオス・ソルジャー」2種類のうち2体をリリースすることでデッキ・手札から「マジシャン・オブ・ブラックカオス」特殊召喚
惜しいのですが、これだとブラマジ2体、カオソル2体でもいけてしまうので調整したいです。
functionが鍵になってる、という所までは突き止めたのですがそこからが分かりません。
(一応、海外版の「究極竜の儀式」をモチーフにしてます)
function c76792184.activate(e,tp,eg,ep,ev,re,r,rp)
local mg=Duel.GetRitualMaterial(tp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local tg=Duel.SelectMatchingCard(tp,c76792184.filter,tp,LOCATION_DECK+LOCATION_HAND,0,1,1,nil,e,tp,mg)
if tg:GetCount()>0 then
local tc=tg:GetFirst()
local mg2=Duel.GetMatchingGroup(c76792184.filter2,tp,LOCATION_DECK+LOCATION_HAND+LOCATION_MZONE,0,nil,tc)
mg:Merge(mg2)
mg:RemoveCard(tc)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
local mat=mg:FilterSelect(tp,Card.IsCode,2,2,nil,46986414,5405694)
-- and mg:FilterSelect(tp,Card.IsCode,1,1,nil,5405694)
tc:SetMaterial(mat)
local mat1=mat:Filter(Card.IsLocation,nil,LOCATION_DECK+LOCATION_HAND+LOCATION_MZONE)
mat:Sub(mat1)
Duel.ReleaseRitualMaterial(mat)
Duel.SendtoGrave(mat1,REASON_EFFECT+REASON_RELEASE+REASON_MATERIAL+REASON_RITUAL)
Duel.BreakEffect()
Duel.SpecialSummon(tc,SUMMON_TYPE_RITUAL,tp,tp,true,false,POS_FACEUP)
tc:CompleteProcedure()
end

452名無しデュエリスト:2017/08/30(水) 23:54:03 ID:GCRZvsHs0
>>450
アトラの蟲惑魔のスクリプトを参考に

>>451
local mat=mg:FilterSelect(tp,Card.IsCode,2,2,nil,46986414,5405694)
 ↓
local mat=mg:FilterSelect(tp,Card.IsCode,1,1,nil,46986414)
local mat2=mg:FilterSelect(tp,Card.IsCode,1,1,nil,5405694)
mat:Merge(mat2)

とか

453名無しデュエリスト:2017/09/08(金) 23:14:12 ID:mHYEsjTQ0
>>452
>>450 の者です。
返信遅れましてすみません。
アドバイス頂いたとおりやってみたら2種類でも3種類でもいけました。
ありがとうございます。

454紫炎:2017/09/15(金) 22:09:49 ID:PgR70ob20
スクリプト作成バグ報告スレから上げ
サクリファイス・フュージョン、銃砲撃、ジャックナイツについて

・サクリファイス・フュージョン
サクリファイスのスクリプトを確認したところ、LabalObjectで装備モンスターを指定しているため、外部からこれを与えることが不可能。
「自身の効果で装備している状態」を常にFlagEffectで表せれば作れる…と思う
永続効果で再現できるか…?

・銃砲撃
「コイントスを行う効果」ではTargetでコイントスを行う回数を記述している。
例:リボルバー・ドラゴン) Duel.SetOperationInfo(0,CATEGORY_COIN,nil,0,tp,3)
これを引っ張ってこれれば対応可能。やり方は知らぬ。

・ジャックナイツ
仮に「同じ縦列にカードが2枚存在する自分メインモンスターゾーンの取得」までは出来たとしよう。
どうやってそこに特殊召喚させんねん

どなたか書き方が分かる人または何か思いついたら詳しく教えてください…

455名無しデュエリスト:2017/09/16(土) 11:38:36 ID:PgR70ob20
魅幽鳥でモンスターゾーンの位置によってカードにカーソル合せた時に出す効果の説明文を変える方法って何か無いかな
ご意見ください

456名無しデュエリスト:2017/09/16(土) 13:07:12 ID:PgR70ob20
>>454
のジャックナイツ自決しました

457名無しデュエリスト:2017/09/17(日) 09:59:45 ID:jKgqsuwc0
>>456
早まるなww

458名無しデュエリスト:2017/09/18(月) 00:20:26 ID:MnMk1atg0
いいやつだったよ・・・

459名無しデュエリスト:2017/09/24(日) 17:20:17 ID:YmKAqde.0
スクリプトの質問失礼致します。

エラッタ前の遺言状のスクリプトを下記のように作って動かしてみたのですが、
墓地に送ったモンスターを2〜3体以上にしてから遺言状の効果でモンスターを特殊召喚すると、
「recursive event trigger detected.」とのエラーが発生してしまい、
繰り返しモンスターを特殊召喚する事が出来なくなってしまいます。
このエラーが発生しないようにするにはどうしたら良いでしょうか?
どなたかよろしくお願い致します。

作成したスクリプト(少々長いのでアップローダーに上げています)
http://cover1sea.net/php/txtup/print2.php?no=68458&dt=2017/09/24

460名無しデュエリスト:2017/09/27(水) 18:42:22 ID:QX3X5Zv.0
>>459
質問するときはageることを勧める

単純に同じ効果をトリガーに発動したらエラーが出るってだけじゃねーの?
編集した部分が明確ならそれを一つずつ戻していけば原因は分かるだろう

461名無しデュエリスト:2017/09/27(水) 22:15:56 ID:dNeEepXo0
カードの発動時や召喚成功時に情報ウィンドウで任意のメッセージを表示するのはできるんだけど、
召喚成功前に情報ウィンドウを表示するにはどう記述したら良いのだろうか

具体的に言うと、スターダストやダークリベリオン等の召喚口上持ちモンスターを召喚する時に、情報ウィンドウで口上を表示させたい。

462名無しデュエリスト:2017/09/28(木) 12:18:29 ID:/sIoHh.U0
>>461
やるやる
トーチゴーレムを参考に、SS時のコストにしてしまえば良い
今ちょっと手元にPCが無いから確認できないけど、通常召喚時にも応用効いたと思う

463名無しデュエリスト:2017/09/28(木) 20:31:22 ID:dNeEepXo0
>>462
言う通りにトーチゴーレムを参考にして作ったらできたよ! ありがとう!!

464名無しデュエリスト:2017/09/30(土) 12:39:03 ID:YmKAqde.0
>>460
>>459ですが、助言して頂いた通り、同じ効果でのトリガーを防ぐために同様のトリガーと内容の効果をもう一つ用意し、
特殊召喚の度に切り替えるフラグを条件にして使い分けるようにしたところ上手くいくようになりました。
ありがとうございます。

465名無しデュエリスト:2017/10/01(日) 17:24:52 ID:YmKAqde.0
デュエル開始時の初期手札を引く前の段階で効果を適用させるにはどうしたら良いかどなたかご存知でしょうか?
海外ADSのアクションフィールドのスクリプトも初期手札を引いた直後に効果を適用させるタイプなので参考にする事ができず、
自前で定数EVENT_STARTUPをSetCodeに設定しても効果の適用がされませんでした。
理想としては、某世紀末動画の混沌みたいに「効果の適用→初期手札引く」という挙動にしたいです。
どなたか宜しくお願い致します。

466名無しデュエリスト:2017/10/02(月) 17:02:41 ID:EX1Ne1dA0
引いた後に手札を全てデッキに戻すんだ
で、効果を処理してからまた引き直す
それで擬似的にいける

467名無しデュエリスト:2017/10/02(月) 22:26:07 ID:QX3X5Zv.0
>>465
うーむむ、部屋の初期手札の設定を0枚にして移動後に5枚までドローってすれば見た目は同じになるけど、いちいち設定するのも面倒だしなあ
というか某動画の作者に書き方聴いてみたら?

468名無しデュエリスト:2017/10/03(火) 03:40:48 ID:OV9uJmcY0
DP前に処理するなら>>466しか無いと思う

469465:2017/10/04(水) 12:54:23 ID:0n8z6Uk.0
>>466,467,468
うーん、やっぱり0ターン目の処理は難しいですか・・・
某動画の作者にダメ元で聞いてみて、それで駄目なら466の方法で実装しようと思います。

470名無しデュエリスト:2017/10/08(日) 20:34:48 ID:I/6nc6sg0
既存種族の複合種族の表示
例: strings.confに!system 2041 (戦士族+魔法使い族の)複合種族名
で行けなかったですが他も弄る必要あるみたい・・・
どこ弄ればいいかどなたかご存知ですかね?

種族が2つになるのを1つに統合したい。

471名無しデュエリスト:2017/10/08(日) 22:48:17 ID:Gzo3pjw20
>>470
新種族の追加は本体側のプログラムもいじる必要があるのでどこかにあるソースを入手してやるとかしてください

472名無しデュエリスト:2017/10/08(日) 23:56:34 ID:I/6nc6sg0
>>471
そっか・・・
本体いじるのは配布とかし辛くなるから諦めるか・・・

473名無しデュエリスト:2017/10/22(日) 17:19:18 ID:YmKAqde.0
新マスタールール対応版のADSでカードを消滅させるにはどう記述したらよいかどなたかご存知でしょうか?
海外版(YGOPRO 1.033.D Percy)では「Duel.SendtoDeck(e:GetHandler(),nil,-2,REASON_RULE)」の記述で自身を消滅させるカードを実装できたのですが、
リンク版ADS(VerF)で同じ記述を動かしてもデッキトップへの移動という処理になってしまいます。

どなたかご存知の方は宜しくお願いします。

474名無しデュエリスト:2017/10/23(月) 09:03:06 ID:aawVB7DI0
>>473
カードの消滅は今まで不具合だったらしく、途中で修正されて使えなくなりました。
強引に使う方法としてはDuel.Overlayの最初の引数(エクシーズ素材を増やすモンスター)をフィールド以外のカードを選ぶ方法がありますが、グラフィックが残るのでおすすめしません。
なお、最初の引数がnil値(=カードが存在しない)場合だと処理そのものが行われないので注意です。

475名無しデュエリスト:2017/10/28(土) 14:29:54 ID:YmKAqde.0
>>474
成程、アレって不具合だったんですねー…
強引に消滅する方法も修正されるかもしれないので、別の処理で代用したいと思います。

476名無しデュエリスト:2017/11/05(日) 13:33:34 ID:NYxQqVLs0
質問なんですが、例えば墓地のカードを対象に取って、効果を発動するカードがある場合、
その対象に取るカードに「同名カードはデュエル中に1枚まで」という制限を設ける場合は、どのように記述したらいいのでしょうか…?

targetの「local g=Duel.SelectTarget」で取得した変数を「g:GetFirst():RegisterFlagEffect(カードID,0,0,0)」として、
Duel.SelectTargetのフィルタ内に「c:GetFlagEffect(同様のカードID)」と設定しても、
「同名カード」という括りで対象制限が設定できなく、ただ同じモンスターしか設定できませんでした…。

477名無しデュエリスト:2017/11/05(日) 13:38:46 ID:NYxQqVLs0
すみません。
c:GetFlagEffect(同様のカードID)ではなく、c:GetFlagEffect(同様のカードID)==0 でした。。

478名無しデュエリスト:2017/11/05(日) 17:27:04 ID:QX3X5Zv.0
>>476-477
んー、カードIDの組を残しておく方法か
cXXXXXXXX[2*n+tp]みたいにして配列に置いとくくらいしか思いつかない
フラグ置かれたカードを参照するとカード名が変わるとダメそうだし

479名無しデュエリスト:2017/11/05(日) 17:41:58 ID:NYxQqVLs0
>>478
返信ありがとうございます。

>んー、カードIDの組を残しておく方法か
>cXXXXXXXX[2*n+tp]みたいにして配列に置いとくくらいしか思いつかない
この方法で実現可能でしょうか?

480名無しデュエリスト:2017/11/05(日) 18:26:13 ID:n5vo4D.60
どこに書くか悩んだのですが、スクリプトを自分で弄る性質上こちらに書き込みさせていただきます。

スクリプト作成バグ報告スレにて配布されていたADS本体で詰めデュエルを作っています。
ただ、記載の仕方を旧ADSを参考にしたせいか、
詰めデュエルを起動するとルールがマスタールール3仕様になってしまいます。

新マスタールール用の詰めデュエルを記述する際、何か必要となる一文があるのでしょうか

481名無しデュエリスト:2017/11/05(日) 19:15:13 ID:QX3X5Zv.0
>>479
例えば、あらかじめcXXXXXXXX[0]=0 cXXXXXXXX[1]=0ってしておいて、
フィルターで
cXXXXXXXX.filter(c,tp)
local code=c:GetCode()
for i=1,cXXXXXXXXX[tp] do
if code==cXXXXXXXXX[2*i+tp] then return false end
end
return true
end
選択後は
local n=cXXXXXXXXX[tp]+1
cXXXXXXXX[2*n+tp]=g:GetFirst():GetCode()
cXXXXXXXXX[tp]=n
とかね

>>480
(詰めデュエル作ったことないな…)
色々サイト見た限りスクリプトにルールに関する記述が無さそうだし、他のルールには対応してないんじゃないかなー

482名無しデュエリスト:2017/11/05(日) 20:11:17 ID:q.jfAROY0
>>480
Debug.ReloadFieldBegin(DUEL_ATTACK_FIRST_TURN+DUEL_SIMPLE_AI,4)のようにすれば新マスタールールでの詰めデュエルができます。
なお「4」の部分を別の数字にすればそれに応じたマスタールールで(例えば2ならマスタールール2)行えるようになります。

483名無しデュエリスト:2017/11/05(日) 20:17:41 ID:n5vo4D.60
>>482
なるほど、そこを追記する必要があったのか…ありがとうございます

484名無しデュエリスト:2017/11/05(日) 23:04:29 ID:A.Fz4lnE0
スクリプトの質問失礼します。

「スレイブタイガー」や「強制進化」のように、
【「〇〇」モンスターの効果で特殊召喚した扱い】の効果を作りたいです。

「Duel.SpecialSummon(g,170,tp,tp,false,false,POS FACEUP)」
の「170」をいじればいいと思うのですが、方法が分かりません。

どなたか分かる方いれば、教えてもらえませんか?

485名無しデュエリスト:2017/11/05(日) 23:47:57 ID:QX3X5Zv.0
>>484
Duel.SpecialSummonの第2引数が召喚方法
融合召喚ならSUMMON_TYPE_FUSION、剣闘獣なら104になる
独自効果ならここに被らなそうな値(カテゴリIDとかカードIDとか)を入れとけば良い


新着レスの表示


名前: E-mail(省略可)

※書き込む際の注意事項はこちら

※画像アップローダーはこちら

(画像を表示できるのは「画像リンクのサムネイル表示」がオンの掲示板に限ります)

掲示板管理者へ連絡 無料レンタル掲示板