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

スクリプトTIPS

1NARU ◆23uN154idM:2017/10/17(火) 06:53:24 ID:xeZux0sw
スクリプト協力要請や、そのお返事。
それ以外でも気になった点、気づいた点、スクリプト自体の投稿等など
ラピス、引いては和鯖全体のために書いていきましょう〜
覚書でも構いませんよ〜

2NARU ◆23uN154idM:2017/10/17(火) 06:57:00 ID:xeZux0sw
雑談スレ 195
まもちゃん。
当時何があったか失念しましたが・・(失念しちゃうのかよ汗)
結構な感じで当時は必須だった気がします。
ですが、今は状況も変わってきておりますし、次回アップデート時に一度戻して見るかもしれないです。
煩雑な作業は出来るだけ減らしたいのも本当ですしね。
あとこのスレッドはスクリプト関係のスレッドなので、どれほど書き込み長くなっても構いません。
最終的には私か誰かさんがWIKIに転載するかもですw

3ほし:2017/10/17(火) 14:51:48 ID:mZxiHmPs
まもるさんへ。
そのBaceAddoncsの変更はアドオンを設置してメンテを挟むと色が抜けてしまうといバグをむんさんが修正してくれました。
↓私が上げた報告(真ん中のあたりです)
https://www65.atwiki.jp/stygianlapis/pages/95.html
↓むんさんが書いてくれたスクリプト
https://www65.atwiki.jp/stygianlapis/pages/83.html#8
違っていたらごめんなさい。

ちょっとスクリプトじゃないけど、ついでに・・
先日Wikiの報告ページを作るときに私のミスで、大事な過去ログの一部を抽出しきてれませんでしたので直しておきました^^;すみません。
あと、Wikiの割と重要そうな部分を勝手に強調してみました。

4NARU ◆23uN154idM:2017/10/17(火) 17:23:20 ID:xeZux0sw
>>3
ほしさん、補足ありがとうございます。
改めてこの状況を再現してみましたが再現されなかったので、今後の事も考慮しServUOの元々のスクリプトに戻すこととします。
もしアプデ後にまた同じ状況が見られましたらご報告ください。
WIKIの編集はお任せしてますのでw

5まもる:2017/10/17(火) 22:46:56 ID:1Do6ihQg
なるさん、スレ作成要望の素早い対応ありがとうございます。
ほしさん、経緯がわかる情報の位置をありがとうございます。
ずばりそこに書かれてあるように、やはりラピスで先にResourceのSerialize/Deserializeを追加して不具合修正していたんですね。
その後、ServUOが独自に似たような修正をしたけど、運悪くm_Resourceとm_Componentsの順序が逆になってしまったということなんでしょうね。
今のServUOのソースなら、ラピスのセーブデータをきちんとServUOの順序に変換すれば再現しないのも納得できるので、
ほしさんもなるさんも、お二人ともおっしゃっていることは正しいと思います。ありがとうございます。

6まもる:2017/10/18(水) 00:36:18 ID:1Do6ihQg
あ、すみません、あと教えて頂きたいことがあるのですが、Wikiから拾える2017AutumLapisTest.zipはServUO 2017/10/01ベースだと思いますが、
今回実際にラピスアップデート用として作業しているServUOのベースバージョンはいつのものでしょうか?
2017/10/01からの変化分を把握できるようにしておきたいので、特に支障がなければ教えて下さい。

7NARU ◆23uN154idM:2017/10/18(水) 07:17:58 ID:xeZux0sw
>>6
今回作業しているベースは10/11付のものです。
ですが、SUOに報告して修正されたものは個別で入れていますので、多少の違いはあると思います。
と言ってもアプデ検証ページにSUOで報告、修正済、ラピスにも適用済と書いてある程度のものですが。

8まもる:2017/10/18(水) 18:24:51 ID:1Do6ihQg
>>7
なるさん、おつです。
11日版からアプデ検証差分を個別導入、了解です。ありがとうございます。^^
アプデ検証ページ、本当便利ですよね♪

9まもる:2017/10/30(月) 00:19:06 ID:1Do6ihQg
いつもお世話になっております。
バルクに関して、以前はノーマル素材の大口については、小口が色付き素材であっても結合できましたが、現在は結合できない状態になっています。
もし修正する場合は、1箇所で非常に簡単です。

[Scripts/Services/BulkOrders/LargeBODs/LargeBOD.cs]
●241行目
else if (small.Material != this.m_Material)

else if (small.Material != this.m_Material && this.m_Material != BulkMaterialType.None) // 条件追加

ただ、新しく追加された細工や書写などのバルクについては、動作確認が大変な面は否めません。
一応、簡単にではありますが、ローカル鯖で裁縫バルクのノーマル大口にS革小口が結合できること、および、B革大口にS革小口は結合できないことは確認しました。
理論的には、この条件で全てに通用するはずですけどね。^^;

10まもる:2017/10/30(月) 00:32:41 ID:1Do6ihQg
そういえば、ノーマル小口についても、色付き素材で作成したアイテムを登録できなくなっていますね。
これも大口と似たような修正でいけると思います。

[Scripts/Services/BulkOrders/SmallBODs/SmallBOD.cs]
●322行目
if (material != this.m_Material)

if (material != this.m_Material && this.m_Material != BulkMaterialType.None) // 条件追加

11NARU ◆23uN154idM:2017/11/01(水) 19:21:56 ID:xeZux0sw
>>9-10
まもちゃん。
検証、スクリプトありがとうです!
バルクに関しては色々変更ありすぎて、何が正解で何が違っているのかもわからない状態なので、今後のアップデートの煩雑さを考えつつ導入検討しますね。
ところでsage進行しなくてもいいですよ?
あがってないと気づかない・・w
というわけで遅レス申し訳ない^^;

12まもる:2017/11/02(木) 01:02:38 ID:Cf/ZqX6I
>>11
なるさん、日々ご多用な中、コメントありがとうございます。
今までsageは礼儀なのかな〜とか勝手に思いつつw
本当、バルク仕様は変わりすぎてて、本家でもノーマル素材バルクに色付きが結合できなくなっている可能性もありますよね。
来春のエンドレスジャーニーが導入されたら、TCに行って確認しやすいですね。^^

13まもる:2017/12/27(水) 03:15:42 ID:TZpKLBx.
(長文ごめんなさい)
ご無沙汰しております。寒暖の差が激しい日々ですが風邪などひかれませんように。

裁縫作成のゴザシリーズが布の色を反映しないという話を聞き、少し調べてみました。

ご存知の通りゴザシリーズはDeedタイプのAddonですが、
Items\Addons\BaseAddonDeed.cs の OnCraft() 内で、引数のresHueを反映する処理がないようです。

しかし、ゴザのために基底クラスである BaseAddonDeed.cs を弄るのはOOP的にもあってはならないので、
もし対応させるとしても、Items\Addons\GozaMats.cs を弄った方がいいです。

そこで、ゴザシリーズの各Deedクラスである、
GozaMatEastDeed
GozaMatSouthDeed
SquareGozaMatEastDeed
SquareGozaMatSouthDeed
BrocadeGozaMatEastDeed
BrocadeGozaMatSouthDeed
BrocadeSquareGozaMatEastDeed
BrocadeSquareGozaMatSouthDeed
の中に、以下の OnCraft() オーバーライドを定義すると色が反映されるようになります。(設置まで確認済み。)

public override int OnCraft(int quality, bool makersMark, Mobile from, CraftSystem craftSystem, Type typeRes, BaseTool tool, CraftItem craftItem, int resHue)
{
  base.OnCraft(quality, makersMark, from, craftSystem, typeRes, tool, craftItem, resHue);
  Hue = resHue; // ★素材の色を反映

  return quality;
}

原則として ServUO のソースを極力弄らないスタンスは重々承知しておりますが、最近1つ思ったのは、
◆仮に大型アップデートの際に独自に修正していたコードが消えたとしても、新たに作成しようとする時にいったん元の挙動に戻るだけで、それまでのセーブデータの読み込みに全く影響しない修正内容で、なおかつ比較的簡単なものであれば修正してもいいのではないだろうか?
という点です。
もちろんこれは単に私の勝手な考えなので、却下して頂いて構わないのですが、情報としては書いておきますね。

例えば今回のゴザも、この修正を入れることで布の色を反映したゴザのDeedが作成できるようになりますが、次回アップデート時にこの修正分が消えたとしても、新たに作成する分の色が反映されなくなるように戻るだけで、セーブデータの読み込みには影響しません。(色付きのDeedってなんかいいですねw)

また、ゴザのように特殊な材料を必要としないものは、アップデートで色が反映されなくなったときにプレイヤーがそれを知らずに作成してしまっても、重大な材料損失で嘆くことがないと思われるため、影響は最小限と思われます。

家の内装に使いたい方もいらっしゃるようで、おこがましいかとは思いますが、このレベルの要望であれば叶えてあげたいという気持ちになりました。

それでは皆様、良いお年をお迎えください。^^

14Ameria ◆23uN154idM:2017/12/27(水) 06:26:47 ID:SOXUFkVU
>>13
まもるさんおひさです^^
ムーンさん作成のブランクピグメントチケットでもだめでしょうか?
もしそれで無理ならピグメントチケットでならスクリプトを触らなくても追加できるかもしれません。
一度検証してみますね^^

15Ameria ◆23uN154idM:2017/12/27(水) 19:50:24 ID:SOXUFkVU
>>13
まもちゃんお久しぶりですー
言われている通りなのですが、ServUOが今後どのような修正をしてくるのか予測不可能な点もありますし
いわゆる簡単な修正をして、その他の事にまた影響がでないという確証がいつも持てるわけではないので
出来るだけServUOヴァニラ部分は弄らないという方針はやはり変えられません。
コードまで書いてくれているのに申し訳ないです。
ですが、既にオリジナルで存在しているピグメントチケットにて各種ゴザは染色可能としました。
これですと今後のServUOの変更には依存しませんので。
コード自体はありがたくWIKIに変更箇所として書き込み保存しておきますねw
色々とご心配ありがとうございます。
よろしくお願いします。

16Ameria ◆23uN154idM:2017/12/27(水) 20:57:26 ID:SOXUFkVU
あ、>>15はなるですーーーwww

17まもる:2017/12/27(水) 22:13:21 ID:zciJEfJk
Ameriaさん、Naruさん、お返事ありがとうございます。
おっしゃる通りオリジナル部分でカバーできるのであればその方がいいですね。
早速の対応ありがとうございます。(^-^)

18ほし:2018/01/01(月) 19:57:38 ID:xtncMwoU
あけおけことよろです!
えっと、ゴザの布色反映の件をSUOに報告したてら修正されてました。
修正ファイルが秋のアプデ後ゴザの修正部分以外で結構大きい変更あってたっぽいので単品導入は厳しいかもです。
なので春(?)のアプデ以降、普通に作れると思います〜(たぶん
他にもナマズのはく製などアプデ後作れると思います(たぶん
一応ご報告でした。

19まもる:2018/01/01(月) 20:56:20 ID:TZpKLBx.
新年あけましておめでとうございます
今年もよろしくお願いいたします
>>18
おぉ!ほしさん、さすがです。
春以降もピグメントチケットで染められること自体は問題ないと思いますので、
それまではピグメントチケットだけでなんとか我慢して頂くことになりますね。
色によってはかなり大変でしょうけど。(>_<)

20Ameria ◆23uN154idM:2018/01/01(月) 23:46:10 ID:SOXUFkVU
>>18,>>19
ほしさん、まもるさんあけおめです^^
今年もよろしくお願いしますm( )m

ほしさんのおかげでものすごい修正されてますよね〜^^
感謝感謝ですw
春になっちゃいますけど、アプデがんばりますね〜^^

21NARU ◆23uN154idM:2018/01/02(火) 18:16:59 ID:xeZux0sw
>>18-19
ほしさん、まもるさん、あけおめことよろです!
みんなで地道に報告していけば、完璧にはならなくてもラピスでの使い勝手がとても良いServUOになってくれるんじゃないかとww
なのでやはりバグ報告はとても重要ですね。
春のアプデにむけて、また頑張りますよー

22ばけちゃん:2018/01/03(水) 08:50:33 ID:znHic7jM
ほし子ー!!
ありがとう!!!

これでおさかな研究所も宇宙も完成しそうだー♪
やったー!やったー!

23Ameria ◆23uN154idM:2018/01/03(水) 23:13:18 ID:SOXUFkVU
>>22
はっ!
ゴシックショップではなかったんだww
ばけちゃん、失礼しました><

水槽めっちゃいいです^^

24ばけちゃん:2018/01/09(火) 07:16:08 ID:znHic7jM
裏飯屋はゴシックですw
おさかな研究所は離島にあるんですYO
ムフフ

25Ameria ◆23uN154idM:2018/01/09(火) 07:29:53 ID:SOXUFkVU
>>24
今度見に行きますね^^b

26むーんらいとだんす:2018/02/26(月) 19:33:36 ID:u2tfP.uw
長くなりそうなのでこちらに書きます。
鑑定スキル参照してマジックプロパティ付けようぜ機能ですが、
実現は可能ですが現実的じゃないような気がします。
無制限にプロパティをつけるなら特に何も考えなくてもいいのですが、
制限を設ける(特定回数で打ち止めとか成功率を下げていくとか)と条件を書かなけりゃならん。
じゃあどこに書くのかと思いついたのは3つ
(1)各装備classを継承した装備classを作成する
   →全装備となるとすごくめんどくさい
    特定の武器だけにすれば楽だけど、あれもこれもって要望に応える必要が出てくると思う
    特に頭装備と武器の種類が多すぎるので相当だるい

(2)マネージャみたいなclass作ってtypeに装備classを格納する
   →プロパティの参照先をthis.〜Valueからthis.(type).Valueにしなきゃならんので
    BaseWeaponやらBaseArmorから続くgetter、setterをすべてOverrideする必要がある

(3)BaseWeaponやらBaseArmorに回数プロパティを設ける
   →一番現実的なんだけど、装備品の基幹スクリプトに修正入れるので
    装備品がすべて消えるリスクがある。
    アプデで消える。

やるなら(1)なんだけど・・・これはやってらんないですね。
なので見送りかなあ
他に何かいい方法あったりします?

27まもる:2018/02/26(月) 23:13:23 ID:i5TQSvJA
低チャージ付きで懐かしの鑑定ワンドをオリジナルガンプ仕様で復活させて、レアアイテムにして、使用者の鑑定スキルと成功率を比例させて、
対象アイテムへの付与制限は既存class弄らない限りフラグとか回数とかは無理なんで、そのアイテムカテゴリーの錬成最大強度よりほんの少し多めの上限値をテーブルで持って・・・
別名「なんちゃってGMワンド」 をぃw
マジメな話、既に付いているプロパティーは削れないので、とんでもぶったまげなアイテムはそうそうできないかなぁと。
や、言うのはやすしですね。すみませんw

28リチャ@てきとーでヴぁっぐ:2018/02/27(火) 19:10:09 ID:XFG9yFFs
Ver現行のかは不明だけどー
GitHubのServUO見てるんだけどー
昨日聞いたキャノン修理に必要なインゴットをシミュしてみたー(Cannon.cs)
Durabilityのget returnの意味が良くわかってないけど
てきとーでヴぁっぐの勘で計算してますw


Durability 20/100*100 =20 (DamageLevel.Severely:壊れかけヤバイ

ingotsNeeded 36*(100-20)= 2880

鍛冶GMが直す
2880-((鍛冶100/200)* 2880)= 1440

鍛冶GMでもインゴット1440個いる様子。 なんなの… ><;
あとRepairContextのコメントアウト部分が短すぎてなんか怖い…

29リチャ@てきとーでヴぁっぐ:2018/02/27(火) 19:12:07 ID:XFG9yFFs
ちょっとした個人的メモ ヽ(´▽`)ノ

■ガレオン船心得メモ(トクノ船で
船舶修理:基本船倉に資材を積んで行う。木1000布1000入れとくのオススメ
 資材はめっちゃ食う100じゃ足らない。一気完全修理オススメ。
 船頭の頭がバグってるので見込みと修理報告を信用しないことw

船倉 :釣りクエストで発生。依頼複数を一気に荷卸しした時に起こる様子。
 船倉のアイテム数計上関係がバグってるらしくてドライドックできない現象あり。
 時間経過で消える。一気荷卸しの複数依頼は最後に持ってかないのがコツかも
 荷を引き上げるタイミングのバグ?船倉が複数タイルに渡る関係のバグ?

30リチャ@てきとーでヴぁっぐ:2018/02/28(水) 22:48:38 ID:XFG9yFFs
ちょっとつるべ撃ち技を試している時にキャノン修理してみた ヽ(´▽`)ノ
・破損状態:少し損傷
・修理員:リチャ(エルフ、鍛冶0)
・船倉:インゴット1500個

結果・・・
「432個のインゴットを使って大砲を修理しました」 >破損状態:無傷
修理とはいったい・・・うごごご!

31まもる:2018/03/01(木) 02:03:19 ID:O8Rc06uc
掲示板にも「いいね!」があるといいのにw
リチャさん、いいね!(^-^)b

32リチャ@てきとーでヴぁっぐ:2018/03/01(木) 17:53:31 ID:XFG9yFFs
ウェーイ ヽ(´▽`)ノ

ついでにまた個人的メモw
■レッドヘリング釣り
 クエスト受けて針を投げると何も反応が返ってこない場合がある。
 (ぽちゃん…   しーん て感じ)
 その場合、レッドヘリングが取れる確率の時だけ反応が返ってくるので
 そのまま釣りっても大丈夫w
 ちなみにナマズ釣りと一緒にクエ受けてるとナマズばっかり釣れるかも?
 あーんどクエ受けてないとナマズもレッドヘリングも釣れませぬー

33リチャ:2018/03/03(土) 18:25:21 ID:XFG9yFFs
んー
Doomパパとその仲間たちのガントレットポイントに差がないように見える…
みんなパパ並みなのかな?かな?w

34まもる:2018/03/03(土) 22:56:41 ID:4XWwxkME
リチャさんばんこ。こんな式みたいですね〜w
pm.GauntletPoints += (int)(bc.Fame * (1 + Math.Sqrt(pm.RealLuck) / 100))/2;

要約すると、幸運0のときMOBのフェイム値の半分が加算されるようです。
幸運ボーナスは、ラッキーコインは含むけどなぜか壺は含まず。
幸運は例えば1600で獲得ポイントが40%アップします。
フェイムは、例えばゴキが23000で、パパが28000なので、確かにあまり大差はないですね。
むしろ討伐数が多くなる中ボスシリーズの方が、体感的に出るように感じると思います。

35まもる:2018/03/03(土) 23:15:23 ID:4XWwxkME
>>34
あ、ごめん、幸運壺ちゃんと含まれていました。

36まもる:2018/03/03(土) 23:31:49 ID:4XWwxkME
連投すみません。ついでに・・・
現在(2017秋版)の幸運壺の計算はバグがあって、アカ歴4年までは200のままでそれ以降も200少ないようです。
return (int)Math.Max(MinLuckBonus, Math.Min(MaxLuckBonus, ((DateTime.UtcNow - account.Created).TotalDays / 365) * 50));
ServUOの最新版では修正されていますね。
[Items/Artifacts/Decorative/TenthAnniversarySculpture.cs]
125: return (int)Math.Min(MaxLuckBonus, 200 + (int)((DateTime.UtcNow - account.Created).TotalDays / 365) * 50);
春には治るだろうということで♪

37リチャ:2018/03/03(土) 23:36:23 ID:XFG9yFFs
あ、それはあるかも <中ボスシリーズの方が、体感的に出るように感じる
パパからほっとんどソッポ向かれてるのにナメクジに好かれていると言うw
パパの時だけGauntletPoints += を二回計算したら違いがわかるようになるかもねー
んーdouble gpoints = pm.GauntletPoints; っているのかしら?って気がしなくもないw
今倒したボスのGauntletPointsが次のボスに反映されるとゆーか。

38リチャ:2018/03/03(土) 23:47:09 ID:XFG9yFFs
秋版持ってないので比較ができない環境でございまする><;
幸運壷かろうじて動いてるんだー
幸運壷って動いて無いのかなと思うくらいのしょっぱいリアル運でございますw
俺・・・春になったらロットワームシチューを作るんだ・・・(死亡フラグ

39まもる:2018/03/03(土) 23:54:55 ID:4XWwxkME
私もパパがくれることはほとんどなく、ゴキとカマキリ(昆虫系)に好かれているようですw
gpoints は、今回Artifactを獲得するかどうかの判定に使われていますね〜。
つまり、倒したときに加算されるポイントは、獲得できなかったときに次回の確率を上げるためであって、今回の獲得計算には反映されない意図のようです。

40まもる:2018/03/04(日) 00:03:41 ID:4XWwxkME
あははは、リアル運の低さは私も負けませんよ!
そういえば、幸運壺を使ったときステータス画面の幸運値の表示って、まだ反映されていませんか?
一応、内部では効いているはずですが。
ロットワームシチューは、作ってしまえば美味しいはずで、で、ですよ?w

41リチャ:2018/03/04(日) 00:11:39 ID:XFG9yFFs
あ、幸運壷の反映はできてるよー
リアル運も反映されて内部的に-700くらいになってまーすw
それにしても長いベリアカねー

42まもる:2018/03/04(日) 00:21:03 ID:4XWwxkME
内部的に-700ってw 壺の表示反映されてるんですねー。良かった。
ベリアカ、本当だー。もしかしてアカ整理中?

43まもる:2018/03/25(日) 00:27:59 ID:GbirCAS2
なるさん、フリーズの件で確認忘れですが、Superfetchも既に無効設定ですよね?

44まもる:2018/03/25(日) 02:25:09 ID:cnppBHjE
連投すみません。おそらく既に処置済みかとは思いますが、せっかくなので他に思いつくことをついでに書いておきますね。

1. 当然ながら激重のWindows Updateは停止
コンピューターの管理からサービス一覧のWindows Updateを無効に設定する。

2. メモリ圧縮を無効化
物理メモリが豊富にあるのであれば、メモリ圧縮を無効化してみる。
管理者として実行でWindows Power Shellを起動して、
> Disable-MMAgent -mc
を実行して再起動する。
再起動後、タスクマネージャーのパフォーマンスで使用中メモリの箇所の括弧内が(0 MB)表示になる。

3. 不要なテレメトリ系タスクを無効化する。
コンピューターの管理から「タスク スケジューラ」→「タスク スケジューラ ライブラリ」→「Microsoft」→「Windows」の中の「Application Experience」と「Customer Experience Improvement Program」の中のタスクは全て不要なので無効化する。

4. 激重原因の1つであるWindows Defenderを停止してみる。
もし悪名高きMsMpEng.exeの負荷が高いようであれば、「設定」→「Windows Defender セキュリティー センター」→「ウイルスと脅威の防止の設定」からリアルタイム保護を試験的に停止してみる。
停止しない場合でも、ServUOのフォルダーは除外フォルダーに登録しておく。

5. ServUOは64bit版でビルド
OSはもちろん64bit版と思いますが、ServUOを32bit版でビルドしていると、いくら物理メモリが沢山あっても3GBまでしか利用できないので、"Server"プロジェクトと"Ultima"プロジェクトをx64でリビルドする。

(1) Visual Studioの「ビルド」→「構成マネージャ」を開き、上部の
「アクティブ ソリューション構成」を「Release」
「アクティブ プラットフォーム」を「x64」
に設定する。

(2) 同じ画面で、"Sever"と"Ultima"プロジェクトのプラットフォームを「x64」にする。
「x64」がまだ存在していない場合は「<新規作成...>」を選び、
「新しいプラットフォーム」を「x64」
「設定のコピー元」を「x86」
「新しいソリューション プラットフォームを作成する」のチェックをオフ
にしてOKする。

(3) Visual Studioの親画面のメニューバーの下にある構成とプラットフォームの選択を「Release」「x64」にする。

(4) "Server"と"Ultima"のそれぞれについて、ツリーからプロジェクトを選択した状態で、メニューの「プロジェクト」から「〇〇〇のプロパティ」を選んで「ビルド」の項目を表示し、
「プラットフォーム」を「アクティブ(x64)」
「プラットフォーム ターゲット」を「x64」
にする。

(5) メニューの「ビルド」から「ソリューションのリビルド」をクリックする。
(この時点で"Scripts"はビルド対象ではないので、エラーがなければ「すべてリビルド: 2 正常終了、0 失敗、1 スキップ」と表示されます。)

45まもる:2018/03/25(日) 16:36:26 ID:cnppBHjE
そうそう、大事なこと忘れていました。
上記の(4)のところで、出力パスを「..\」にしておかないと、デフォルトだと「bin\x64\Release\」になってて、各プロジェクト内の「Server\bin\x64\Release\」とかに生成されて、ServUOフォルダー直下のServer.exeに反映されていないので、起動しても意味がないことになってしまいます。すみません。
"Ultima"プロジェクトの方も同様です。

46まもる:2018/03/25(日) 16:40:47 ID:cnppBHjE
そうそう、大事なこと忘れていました。
上記の(4)のところで、出力パスを「..\」にしておかないと、デフォルトだと「bin\x64\Release\」になってて、各プロジェクト内の「Server\bin\x64\Release\」とかに生成されて、ServUOフォルダー直下のServer.exeに反映されていないので、起動しても意味がないことになってしまいます。すみません。
"Ultima"プロジェクトの方も同様です。

47まもる:2018/03/25(日) 16:42:58 ID:cnppBHjE
ぅぅ、なぜページ更新しても反映されずに、二度書きになったのw

48NARU ◆23uN154idM:2018/03/25(日) 19:07:02 ID:SOXUFkVU
まもちゃん、ありがとうございます。
既にある程度は(1.2.3)あたりは実施しております^^
ご心配ありがとう〜
多分今回のアプデの重さはServUOにも原因があると思います。
昨日のテストではあまりしっかり検証出来なかったので、改めて検証日の告知、テストサーバーの設置を行いますので
ご協力よろしくお願いします〜。

49まもる:2018/03/25(日) 20:51:55 ID:cnppBHjE
おつです。ですよね〜、ServUOに主たる原因があるのは私もそう思いますw
ただ、高速化しておいて損はないと思いますので、5番の64bit版にすることが一番効果ありそうですけどね〜。(・o・;)
よかったら後日テストサーバー側は64bit版で試してみてくださいな〜。
ちなみにご存知とは思いますが、実行時にコンパイルされるScriptsは、ServUO.exe(上記のServer.exeは誤記すみません)が64bit版でしたら自動的に/d:x64が付くので、ちゃんとScripts/Output/内も64bit版にしてくれるようですね。
(Server/ScriptCompiler.csの77行目あたり)

# VMで使っているWindows10のアップデートが多すぎて泣けます〜w

50むーんらいとだんす:2018/06/10(日) 21:14:35 ID:m7PE8BvI
染めるやつ更新しました
https://www65.atwiki.jp/stygianlapis/upload/112.html

LapisPigmentSystem_1_3.zip
です。
前回の更新日が1年前でした。
1年に1回しか仕事しない輩です。

51むーんらいとだんす:2018/06/10(日) 21:16:07 ID:m7PE8BvI
しまった!何やったか書いてない!

バルクオーダーでもらえる?染料の対応です。
ほしさんの家においてあったやつです。
どこでもらえるんすかね

52Ameria:2018/06/10(日) 22:16:05 ID:nYsaKlVo
>>51
むーん先生おかえりなさいましw
最近ではブログに人狼に活発にしております。
できれば、月に1度はお越しくださいまし^^
染料システムありがとうございます!
明日のメンテ明けより更新となります♪

53momo:2018/06/10(日) 23:12:38 ID:9VuShwNg
51 むーんさんへ

新しい色の布のことなら、
裁縫やアルケミバルクの褒賞ですね

54むーんらいとだんす:2018/06/11(月) 22:50:22 ID:m7PE8BvI
>>52
ただいまです
いやただいまかどうかわかりませんけども
9月くらいまでは大丈夫そうかなあ

>>53
ありがとうございます!
アルケミのバルクですかー
あるとは聞いてたけど染料があったとは・・・

55ほし:2018/06/12(火) 05:55:12 ID:UIqkQVLo
むんさん、おつ&おか(?)〜
バルクの報酬は、自然染料と報酬布が同色で5色づつ追加された。
自然染料のほうはちゃんとクッキーにできたよ!

56むーんらいとだんす:2018/06/12(火) 23:44:59 ID:m7PE8BvI
まりさんとかなり昔にほしさんから要望のあった、つる入れるやつを作りました。
https://www65.atwiki.jp/stygianlapis/upload/83.html

VineBox_1_0_0.zip
です。

見た目は花入れるやつのパクリです。
内部はかなり変えていて、たぶん軽量化されてるはず。
だけど汎用性の欠片もありません。

ちなみに名前をおっさんの憂鬱にしてます。
名前考えるのがめんどくさくなってきました。

57むーんらいとだんす:2018/06/12(火) 23:47:02 ID:m7PE8BvI
また書き忘れをやらかした
wikiはそのうち書いておきます!
力尽きたので寝ます!

58ほし:2018/06/13(水) 05:24:57 ID:UIqkQVLo
おっさんのテスト完了、問題なし。
(この箱のグラ欲しかったんだよねー

59NARU ◆23uN154idM:2018/06/13(水) 16:10:39 ID:xeZux0sw
むーんさん。
つる入れるやつ、ありがとうございます!
名前で爆笑しましたが、さすがにあの名前だけは変えて導入させていただきますw
いや、あのままでもいいのだけれど、女子女子した家にあの名前が混じってると・・w
ほっちゃん。
ほっちゃんも毎度色々テストありがとうねー

60むーんらいとだんす:2018/06/13(水) 21:30:02 ID:m7PE8BvI
>>58
毎度ありがとうございます!

>>59
わしもポカりました
箱突っ込んでもアイテム数減ってないわw
157行目の return ture;の上に
dropped.Delete();
を追加してください!

61NARU ◆23uN154idM:2018/06/13(水) 22:33:24 ID:xeZux0sw
>>60
あぶいあぶいw
修正OKですー

62まもる:2019/05/13(月) 18:10:33 ID:.Wf8mbjQ
ペット訓練ボタンが出ない件について、私のテイマーも同じ症状なので、ざっとですが追っかけてみました。

■Scripts\Services\Pet Training\Gumps.cs
38行目
PetTrainingHelper.CanControl(User, Creature, trainProfile) がfalseで返っている。

■Scripts\Services\Pet Training\PetTrainingHelper.cs
974行目
return skill >= bc.CalculateCurrentTameSkill(bc.ControlSlots + 1); がfalseで返っている。

■Scripts\Mobiles\Normal\BaseCreature.cs
760〜763行目
double level = currentControlSlots - ControlSlotsMin;
double levelFactor = (double)(1 + (ControlSlotsMax - ControlSlotsMin)) / minSkill;

current = Math.Ceiling(Math.Min(108.0, minSkill + (minSkill * ((levelFactor * 7) * level))));
↑たぶんここの計算式が厳しすぎる(育成に必要currentが大きすぎる)値で返っていそうです。

これは・・・、式を噛み砕くのがちょっと面倒そうです。
でも、少なくともリアル値でテイムが108.0あれば、訓練ボタンは出そう。

あ、リアル値だという点は、PetTrainingHelper.csの967行目に、

double skill = m.Skills[SkillName.AnimalTaming].Base; // TODO: Base?

と書いてあり、コメントにもリアル値でよいか確認のTODO扱いになったままですねw
(ちなみに本家は、リアル値でなくドーピングで訓練可能です。)

63NARU ◆23uN154idM:2019/05/13(月) 20:53:44 ID:cfXdPuZA
>>62
まもちゃん
追っかけ、修正案ありがとうございます^^
これに関しては、どうなのでしょうね
一応ServUOには参照値をValueにしてくれと書いておきます。
ここいらが実際本家で今はやってないのでわからない部分ですね^^;;
とても助かりました!
いつもありがとうございます。
以上です。

64まもる:2019/05/13(月) 21:23:55 ID:.Wf8mbjQ
>>63
あ、出しちゃった。ごめんw (非エロ)
本家でリアル値90とかで、アクセドーピングしてめっちゃ訓練やりましたよw

65NARU ◆23uN154idM:2019/05/13(月) 21:50:17 ID:cfXdPuZA
>>64
やはw
出してくれたなら助かります^^
いつもながらありがとでつw

66まもる:2019/05/13(月) 23:01:30 ID:.Wf8mbjQ
ついでに原因っぽいのもわかりますた。
やっぱり怪しい式のところ、* 7 じゃなくて、* 0.7 の間違いっぽいですw
部分的に数値シミュレーションしてみましたが、0.7 だといい感じに各訓練段階で必要スキル値が上昇していきました。
これもリクエスト出しておきましたが、こちらは採用されるかは不明です。
採用されたら、ラピスも 0.7 にして頂いて大丈夫だと思います。^^
ttps://github.com/ServUO/ServUO/pull/4396

67Ameria ◆23uN154idM:2019/05/14(火) 08:06:20 ID:e.ZzRBAQ
まもるさんおひさです!
ServUOまたやらかしてますなぁ・・・
てかあれ、色んな人がいろいろごちゃごちゃ書き換えちゃって変更がやばいですね・・・
人のふんどし借りてるので偉そうには言えませんが^^;
私はただの宴会部長なのでw
たよりにしてま〜す^^

68まもる:2019/05/14(火) 14:21:57 ID:.Wf8mbjQ
アメリアさんお久しぶりです!(>_<。*) お元気でしたか〜?(^ー^*)
本当ServUOそうですねー。特に、今まで良かった箇所まで悪くなるのは困ったものです。
宴会大事です!(あまり参加していない私が言うかw)
どんなオンラインゲームでも、知り合いと遊べないと結局つまらなくなりますからね〜。

計算式の修正は、やはりケビンさんに渋られましてw、今回はServUOに反映されませんでしたが、
式が間違っていること自体は理解してくれた様子で、改めて検証してくれるそうです。
とりあえず、アクセが効くようになっただけでも訓練しやすくなったのは良かったです。
(実は私も後日やりたいだけだったりw)

69ほし:2019/05/14(火) 15:19:14 ID:VUVjzJc6
まもるさんへ
(実は私も後日やりたいだけだったりw)←おおー!復活?!
っといっても、私はなんかバタバタしてて、ログインすらろくにしてませんが!!
私はテイムさっぱりわかんない人なので、内容よくわかりませんが、過去のフォーラム見た感じ
例の計算式のとこは導入時に彼らにしては珍しく実地調査して追加してた部分だったようです。
今の本家仕様に近い式を発見したからそっちにしますみたいな感じだったしなんかやる気っぽかったですね。
しかし英語であんなに説明して会話してって、かっこいいー!お疲れ様でした^-^ノ

70NARU ◆23uN154idM:2019/05/14(火) 15:47:48 ID:cfXdPuZA
ほっちゃんの検証力、まもちゃんの全能感、アメさんの宴会部長・・w
ぼ、僕が一番何も出来てない!?w
でもここんところのラピスはアクティブプレイヤー数は多くはないものの、第一義に掲げている「みんなで作るラピス」という思いが叶っています。
上に表記した以外のプレイヤーさん全員がバグを見つけたり試行錯誤して情報を公開してくれたりで、沸々と地面の下から湧いてくる熱気を感じますね。
本当にみんなありがとうです〜
さぁ!ボクはキングダムを読もう!フヒヒ

71まもる:2019/05/14(火) 21:47:22 ID:.Wf8mbjQ
ほしさん乙ありです。
本当、ほしさんの検証力は凄いと思います。
私も遊びたいけどなかなか遊べず。(Xanaduはどこ〜?w)
ペット訓練は実地調査を一般式化するときに間違ったんでしょうかね。
経緯は知らなかったのでありがとです。さすが情報通のほしさん。
英語?ほとんどGoogle先生の自動ですよw

SなNARUさんにしては控えめなコメントがw
ただ「沸々と地面の下から湧いてくる熱気」・・・は、
最近ちょっとリアルで南海あたりがやばくなってきそうなキーワードですw

72まもる:2019/05/15(水) 18:14:52 ID:.Wf8mbjQ
ServUOの方で、TroglodyteからPrimitiveFetishが10%の確率でドロップされるように更新されていました。
(Lurgの方はMAF級の強さのMOBですが、Troglodyteを継承しているだけで確率のオーバーライドはないので、同じく10%です。)
ttps://github.com/ServUO/ServUO/commit/9c5a9007f6ee4e9089bc9bf8f231dcf7d02a41a8

ServUOが更新されたし追加行数も少ないので、なるさん入れてくれるんじゃないかな〜かな〜かな〜w

73NARU ◆23uN154idM:2019/05/15(水) 20:07:02 ID:e.ZzRBAQ
>>72
ど、導入しました・・・w

74まもる:2019/05/15(水) 21:17:11 ID:.Wf8mbjQ
ありがとうございまーす!
なるさんやらしい!ぃゃ、やさしい!(*´∀`*)

75NARU ◆23uN154idM:2019/05/16(木) 20:15:57 ID:cfXdPuZA
>>62
まもちゃん、及び大勢のテイマーさん
本日、ServUOでのペットトレーニングの修正をラピスでも導入しました。
これで完全かどうか・・・はだいぶ怪しいかと思いますが検証が前に進めば幸いです。
この修正をWIKIのアップデートの検証ページにて伝えてくれたほっちゃんにも感謝をー!
以上です〜

76まもる:2019/05/17(金) 06:22:53 ID:.Wf8mbjQ
>>75
ServUOの新しいペットコントロール関係の処理を少し追ってみたのですが、やっぱりなんだか随分と変なことやってますね〜。

■[Scripts\Services\Pet Training\PetTrainingHelper.cs]
967行目
return m.Skills[SkillName.AnimalTaming].Value >= bc.CurrentTameSkill + trainProfile.GetRequirementIncrease(!trainProfile.HasIncreasedControlSlot);

ガンプに訓練ボタンが出ない原因のスタート地点です。
なんか複雑なことやっていますが、結局上記と似たような間違いをやっているようで、スロットがまだ増えていないペットですら、最初からベースの調教スキルに+22されたスキルが必要になっています。
(せめて、!trainProfile.HasIncreasedControlSlotの「!」がなければまだわからないでもない。)

■[Scripts\Mobiles\Normal\BaseCreature.cs]
746行目
CurrentTameSkill = ((ControlSlots - ControlSlotsMin) * 21) + 1;

→こんなことやちゃったら、スロット1つ増えたペットは、種類を問わず必要な調教スキルが一律22.0になってしまいます。(全部馬以下w)
かと言って、
CurrentTameSkill = MinTameSkill + ((ControlSlots - ControlSlotsMin) * 21) + 1;

の間違いだったとすると、例えば話題のユニコーンなんかだと、ほしさんも指摘してくれているように、いきなりぶっとんで117.1になってしまう。
(108.0超える時点で明らかに変なんですけどね。)

とりあえず、丸投げなPullRequestにして出しておきました。(デクスターさんかケビンさんあたりに怒られるかもw)
ttps://github.com/ServUO/ServUO/pull/4401

77NARU ◆23uN154idM:2019/05/17(金) 08:07:54 ID:cfXdPuZA
本当に今回のペットトレーニングの変更はおかしな状況です。
以前の状態に戻そうかとも思ったのですが、BaseCreatureを弄っている以上、それも得策ではありません。(セーブデータの整合性が損なわれるので・・・)
今回まもちゃんがPullってくれた内容に対してどう反応するかを待つしかなさそうですね〜・・

78まもる:2019/05/17(金) 14:22:47 ID:.Wf8mbjQ
さきほど、前者のガンプ表示条件では最大値(108.0)を超えないように修正されたのですが、それでも最初のトレーニング開始にそんな高いスキルが要るのは変ですね。
予想通りケビンさんに軽く怒られましたが、ケビンさんも妙な思い込みがあるようで、ServUOでも本家でも自分でテストしているとは思えませんね。
よほど自分のコードに自信があるのかなぁ。ちゃんと本家も自分で確かめてきてほしいですね。例のユニコーンの訓練開始は96.0で可能なんですけどねw
後者のBaseCreature.csの方も、最大値のことばかりに囚われて、どんなペットもスロット依存で同じに値になってしまうことをわかっておらず。
うーーんw
とりあえず、前者の修正は反映すると最大値の108.0で済むようになるので、以前のように調教110や115で可能に戻りますね。

79まもる:2019/05/17(金) 15:03:07 ID:.Wf8mbjQ
なお、修正された内容はこれです。
ttps://github.com/ServUO/ServUO/commit/62bdbe2a02a455671f9ddd97e4d39454f4da4579

80NARU ◆23uN154idM:2019/05/17(金) 17:07:48 ID:cfXdPuZA
>>78-79
まもちゃん
ServUOの方々には感謝していますが、なにぶん「マジかこれ」っていう指摘をしてもスルーかテストなしで適当に修正して終わらせるパターンが多いですからね・・
それでもぶっこんでくれた内容はせめて導入しました。
幾分かマシにはなっているようですしね。
今回これだけ突っ込んでもこの感じなので、もしかしたら今後もこれでいくのかもしれません・・
ありがとでした!

81まもる:2019/05/17(金) 18:17:38 ID:.Wf8mbjQ
>>80
なるさん乙です。
テストなしが一番ダメですよね〜。ケビンさんよぉ。(T_T)
で、ちょっと嫌な予感がするのですが、ほしさんも書いてくれているように、ペットの野生化が更に悪化しているような・・・。
大規模なペット粛清テロにならなければいいのですが・・・。私も生産キャラのゴキを再度チェックします。

82まもる:2019/05/31(金) 21:13:25 ID:bc4OOigk
実施するかは別として、いうことをきかない病になったゴキちゃんのワクチンです。
ペットのミニチュア化システムのソースを持っていないので、ミニチュア化されたものまでは治せないかもしれません。
ミニチュア化のシステムが遠隔厩舎を使う方式なら、併せて治ると思います。

[Scripts\Mobiles\Normal\Beetle.cs] Deserialize() の最後

if (this is Beetle && ControlSlots == 1) // スロット1の個体のみ
{
CurrentTameSkill = 29.1;
}

上記を追加してサーバー再起動すると、ワクチンが発動します。
一度発動した後は、上記の追加コードを削除しても問題ありませんし、残っていたとしてもどうということはありません。
ローカルで一時的にCurrentTameSkillを98.7に設定して再起動した後、29.1になっていることを確認しました。
また、訓練してスロット2になっているゴキは、29.1にならないことも確認しました。

なお、this is Beetleの部分は、一見必要ないように思いますが、Beetleを継承するサブクラスがあったときに影響しないようにするために必要です。

83NARU ◆23uN154idM:2019/06/01(土) 22:11:50 ID:e.ZzRBAQ
>>82
まもちゃん
ありがとうございます。
デシリアライズで書き換え導入しました。
ああ、ServUOまともにしてくれ・・・w

84まもる:2019/06/02(日) 19:44:07 ID:RugYCLwg
>>83
サーバーのH/Wメンテお疲れ様でした〜!^^
あれ、ワクチン発動してない・・・。なぜだろ?うちの生産キャラのゴキはまだ要98.7でした。厩舎に入れてるとダメなのかなぁ。

85まもる:2019/06/03(月) 00:32:40 ID:RugYCLwg
これって、version 0 の古いゴキに対して、220行目にもろに
MinTameSkill = 98.7;
があるので、たぶん MinTameSkill の方が悪さしていますね。
CurrentTameSkill を修正してあげても、その後 MinTameSkill から上書きされている可能性が高いのかも。
となると、古いゴキに対してわざわざ MinTameSkill を 98.7 にしている ServUO 側の意図を知る必要が出てきました・・・。

86まもる:2019/06/03(月) 01:39:12 ID:RugYCLwg
連投すみません。いいかげんゴキのいうこときかない病に終止符を打ちたいので、少し長いですがご容赦ください。

さて、古いゴキの MinTameSkill を 98.7 にしている箇所てすが、コードを素直に読むと、
version = 0 の古いゴキで、現在ペット訓練システムが有効で、スロットが3以下で、追加能力がない(自然体から変更していない)個体に対して、
MinTameSkill = 98.7;
ControlSlotsMin = 1;
ControlSlots = 1;
という処理をやっちゃってます。

そこで、幸い私も本家で訓練システム導入前の古いゴキを持っていたので、確認に行ってまいりました。
その結果、古いゴキはスロット3のままで、要テイムスキル値は30.0でした。

このことから推察すると、ServUOでは、
「古いゴキもスロット1にしてやる代わりに、要テイムスキルを98.7にする。」
という処理をなぜかやってしまったようです。

ラピスでは、このままでは生産キャラが不便だと思いますので、先日のワクチンを少しだけ変更してもう一度試して頂けないでしょうか。

if (this is Beetle && ControlSlots == 1) // スロット1の個体のみ
{
CurrentTameSkill = MinTameSkill = 29.1; // ←★MinTameSkillも治療
}

なお、本家では要スキル30.0になっていてもテイム0でコントロールできましたが、ServUOではペットのコントロール可否判定処理に29.1という直接記載があるため、30.0にするのはやめておいた方がいいです。

87NARU ◆23uN154idM:2019/06/03(月) 06:58:17 ID:cfXdPuZA
>>84-86
まもちゃん
上記処理は既に入れてあります。
でも機能していないようです・・であれば、 version = 0 で profile == null の個体に対しては、の記述を素直に

if (version < 1 && profile == null)
{
MinTameSkill = 29.1;
ControlSlotsMin = 3;
ControlSlots = 3;
}
としちゃったらどうかなぁと考えていますが、まだ実験もなにもしていません汗
いかにもServUOらしい記述だなぁ・・
私も同じくテストを行いたいのですが、プレイヤーキャラでも既に古いゴキを持っていないのですよね。

88まもる:2019/06/03(月) 14:19:15 ID:RugYCLwg
なるさん、おつです。暑いですね〜。
既に MinTameSkill の治療も入れてくださっていたんですね。まさかそれでも効かないなんて・・・。

えと、当該箇所の profile == null っていうのは、おそらくその後に続く || !profile.HasCustomized() 用の assert 的な意味合いが強くて(本当はServUOのこのコーディングの仕方も危険※)、profile を持っていてもスロット1で 98.7 になっちゃってるゴキはありそうなんですよ。

あと、スロット1のゴキに対して単純に MinTameSkill = 29.1 が通用しなかったということであれば、たぶん if (version < 1 && profile == null) の条件を付けても、その中で MinTameSkill = 29.1 が効かないのは同じような気もします。

少なくとも、ServUOのソースに MinTameSkill = 98.7; という数値が書かれたコードが存在していて、実際にその要スキル値になってバグっているという点から、やはりもう少し MinTameSkill を中心に調査した方が無難な気がします。
とりあえず、バグっているゴキをテスト用にほしさんが提供してくださるようで良かったです。
うちでは MinTameSkill と CurrentTameSkill を同時に治療したら効果あったんですけどね・・・。うーむ。

※ 以下は、今回の問題とは直接関係なく、プログラミングの余談です。
ご存知と思いますが、if文の条件内で A || B() という表現で関数呼び出しをしていると、コンパイラによっては、A の条件が成立した時点で B を実行しないコンパイラもあれば、A が成立しても、B() もとりあえず実行してくれるコンパイラもあります。
ここで問題なのは、後者のコンパイラの場合、profile == null であっても .HasCustomized() を実行してしまう点です。

89Hosi:2019/06/03(月) 15:33:02 ID:VUVjzJc6
>古いゴキに対してわざわざ MinTameSkill を 98.7 にしている ServUO 側の意図
手掛かりになるかわかりませんが、その部分が追加された時期のゴキに関する過去ログを貼っておきます。
https://www.servuo.com/threads/animal-taming-problems-after-latest-svn-changes.9932/
https://www.servuo.com/threads/fire-beetle-and-number-of-control-slots.9942/

90まもる:2019/06/03(月) 17:45:20 ID:RugYCLwg
おー!さすがほしさん、アンテナでっかいアレシボ級!
これは参考になりますね〜。ありがとうございます。
残念ながら98.7云々については載っていないので、やっぱりServUOの独断で入れてた可能性が高そうですね。

91ほし:2019/06/03(月) 20:41:37 ID:VUVjzJc6
ごめんなさい、よく見たらもうちょっと古い所にありました。
https://www.servuo.com/threads/pet-slots-vs-control-chance-bug-since-last-update.9602/

92まもる:2019/06/03(月) 20:45:33 ID:RugYCLwg
ゴキ治ってるぅぅ〜!なるさん、あめりあさん、ほしさん、ありがとうございます。


新着レスの表示


名前: E-mail(省略可)

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

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

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

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