• محصولات
  • ویژگی ها
  • Mod Master
  • دانلود
  • بازی‌ها
  • وبلاگ
  • قیمت گذاری

طوفان ماه sharedutils

نویسنده:TeamMoonstormآخرین به‌روزرسانی:2021-09-11 03:40:242.6M530KB

Risk of Rain 2 طوفان ماه sharedutils-1-لاگوفست مدمستر

پیش‌وابستگی‌ها

مقدمه وزارت دفاع

یک api با هدف کار در یک محیط ویرایشگر با استفاده از thunderkit متمرکز شده است، msu یک سیستم api مدولار است که برای سهولت استفاده و سادگی طراحی شده است.

استفاده مشترک moonstorm-بارگیری محتوا و چارچوب ابزار عمومی برای مودهای محتوا بزرگ.

MoonstormSharedUtils، که به عنوان msu شناخته می شود، یک API است که برای کار در اطراف سیستم thunderkit برای ایجاد مودهای محتوا طراحی شده است.

در ابتدا بخشی از api و چارچوب ساخته شده برای به روزرسانی استاراستورم 2 به یک تنظیمات thunderkit برای یک تجربه توسعه بهتر، به طور تصاعدی به کتابخانه جداگانه خود رشد کرده است، بنابراین هر کسی که مایل به ایجاد مودهای محتوای بزرگی با thunderkit باشد، میتواند از آن استفاده کند.

اهداف api

Msu برای اهداف زیر در رابطه با توسعه و مدیریت مود تلاش می کند.

  • سیستم های ساده اما قدرتمند برای مدیریت و بارگیری محتوا برای بازی به صورت ناهمزمان.
  • چارچوبی قوی که بر اساس ماژول ها ساخته شده است که به شما امکان می دهد بخش های مختلف گردش کار اصلاح را خودکار کنید، مانند اجرای تجهیزات، هیولا و تخم ریزی قابل تعامل، و موارد دیگر.
  • ساده سازی گردش کار thunderkit با تهیه مجموعه ای سفارشی از اشیاء قابل دستیابی برای مدیریت مانیفستها، مسیرها و خطوط لوله.
  • تمرکز بالایی بر استفاده از سیستمهای ارائه شده توسط بازی در هر زمان که ممکن است، مانند نمایندگان ارائه شده پیش فرض، رفتارهای مورد پایه و موارد دیگر.
  • استفاده از چارچوب r2api موجود برای سیستم های برق مانند اصلاحات مدیر.
  • تأکید بر کار در داخل ویرایشگر به جای کار روی کد برای ایجاد دارایی.

ویژگی های کلیدی

قطعه نمادی، ارائه دهنده قطعه نمادی، و چارچوب ماژول

در حالی که فقط مودهای کد محتوای خود را در زمان اجرا و معمولاً در هنگام بیدار ایجاد میکنند، این باعث ایجاد مشکلاتی میشود که به عنوان «صفحه نمایش سیاه برای همیشه» شناخته میشود، جایی که اکثر سیستم های مود قبل از شروع صفحه بارگیری بازی اولیه میشوند. این این ایده را ایجاد می کند که بازی منجمد است و به کاربران غافل پاسخ نمی دهد. و در حالی که این درست است، مدیریت بارگیری و تعامل بین محتوای سفارشی ساخته شده از بسته های دارایی و سیستمهای بازی دشوار است.

Msu این موضوع را با سه گانه محتوا ، ارائه دهنده محتوا و چارچوب ماژول حل می کند. از این سه گانه استفاده می شود تا به مودها اجازه دهند دارایی های خود را به طور ناهمزمان در طول صفحه بارگیری بارگیری کنند و آنها را به درستی با سیستمهای بازی پایه کار کنند.

قطعه نماد

  • نشان دهنده نوعی محتوای است که یک مود در حال اضافه کردن است
  • هر قطعه محتوا به یک ماژول خاص گره خورده است که بارگیری و اجرای محتوا را مدیریت می کند.
  • محتوا دارای یک سیستم در دسترس است و ماژول از آن استفاده می کند تا بداند چه محتوای باید بارگذاری و اولیه شود.
  • یک قطعه محتوا دارای یک روش بارگیری ناهمزمان است که ماژول در هنگام اولیه سازی از آن استفاده می کند، که برای بارگیری ناهمزمان دارایی های محتوای شما استفاده می شود.
  • به عنوان یک رابط ، api پیاده سازی های بیشتری را ارائه می دهد:
    • که نشان دهنده محتوای ای است که به یک خاص مرتبط است UnityEngine.Object.
      • Msu شامل رابط های زیر است که اجرا می شود قطعه نماد<T>
        • قطعه محتوای iartifactContentقطعه، براي ArtifactDefs
        • قطعه محتوای تجهیزات تجهیزات Defs
          • قطعه ارتباطی ielite مدیریت کنید تعریف نخبگان مرتبط با یک تجهیزات خاص
        • Iitemcontentقطعه تعریف پروژه.
          • یک رابط فرعی به نام قطعه محتوای ivoiditemcontentقطعه مدیریت سیستم فساد مورد اضافه شده در بازماندگان باطل.
        • IItemTierContentPieceبرای ItemTierDefs
        • قطعه ارتباطی دیگر صحنه های صحنه.
    • که نشان دهنده محتوای است که به نوع خاصی از آن مرتبط است Unityengine.monobehavior
      • Msu شامل رابط های زیر است که اجرا می شود قطعه محتوا igameobjectcontentقطعه<TComponent>
        • قطعه محتوای icharacter برای بدن شخصیت
          • قطعه محتوای IMonsterContentPiece می توان برای مدیریت هیولاهای خصمانه استفاده کرد
          • رابط فرعی نامیده می شود قطعه محتوای زنده ماندهمی توان برای مدیریت بازماندگان جدید استفاده کرد.
        • قطعه اتصال متقابل برای قابل تعامل.
    • Ivanillassurvivorcontentpieceکه نشان دهنده اصلاحاتی برای یک بازمانده وانیل است.
  • کلاس ها همچنین می توانند اجرا شوند IContentPackModifierکه برای رابط مستقیم با بسته محتوای mod شما استفاده می شود.

ماژول ها

  • ماژول کلاس ای است که بارگذاری و تعامل را مدیریت می کند قطعه نماد کلاسها با بازی پایه.
  • هر ماژول نوع خاصی از رابط را در کنار رابط های فرعی احتمالی مدیریت می کند.
  • ماژول می داند که چه کلاسهایی را باید با استفاده از فوری و اولیه سازی کنند سیستم.
  • به محض اینکه یک را ارائه دهید ارائه دهنده نمادبه یک ماژول می توانید آن را صدا کنید اولیه سازی روشی برای بازیابی یک کوروتین که محتوای شما را به شکلی ناهمزمان آغاز می کند.
  • Msu ماژول های زیر را تهیه می کند:
    • ماژول مصنوعی قطعه محتوای iartifactContentقطعهs ، رابط artifactmodule با R2api. artifactcode برای اضافه کردن کدهای مصنوعات جدید به بازی. همچنین قلاب و باز کردن مناسب مصنوعات را اداره می کند، به طوری که تنها زمانی که مصنوعات فعال شده باشد، قلاب ها فعال می شوند.
    • ماژول شخصیت، مدیریت قطعه محتوای icharacter, قطعه محتوای زنده مانده قطعه محتوای IMonsterContentPieceرابط ماژول با R2api. کارگردان برای رسیدگی به تخم ریزی هیولاها برای مراحل بازی.
    • ماژول تجهیزات قطعه محتوای تجهیزاتو قطعه ارتباطی ieliteماژول از یک قلاب واحد برای مدیریت تماسهای اجرای تجهیزات استفاده می کند.
    • مدل تعاملی، مدیریت قطعه اتصال متقابلرابط ماژول با R2api. کارگردان برای رسیدگی به تخم ریزی قابل تعامل برای مراحل بازی.
    • ماژول پروژه Iitemcontentقطعه و قطعه محتوای ivoiditemcontentقطعهاین به طور خودکار فساد کالاها را مدیریت می کند.
    • ماژول پروژه قطعه محتوای iitemtier، به طور خودکار در هنگام شروع اجرا مجموعه هایی از لیست فروپاشی موجود برای لایه ایجاد می کند.
    • ماژول صحنه، مدیریت قطعه ارتباطی دیگررابط با R2api. مرحله برای رسیدگی به افزودن یک مرحله به بازی.
    • Vanillassurvivormodule، مدیریت Ivanillassurvivorcontentpieceبرای افزودن محتوای جدید به بازماندگان بازی پایه (پوست، مهارت ها و غیره) استفاده می شود

  • برای یک ماژول که بداند چه قطعات محتوا باید ایجاد شود، بارگذاری و اولیه سازی شود. Msu از آن استفاده می کند برای تهیه قطعه نماد% s به ماژول.
    • در حالی که می توانید پیاده سازی های خود را ایجاد کنید ارائه دهنده قطعه نماد رابط برای مدیریت سناریوهای در دسترس بودن ، MSU مطالب مفید است کلاس حاوی روشهایی برای ایجاد آنها از ابتدا است ، فقط با تجزیه و تحلیل مونتاژ شما.

سیستم های دوستانه ror2

یکی از اهداف کلیدی msu کار در کنار خطر سیستم های باران 2 است و به جای مجبور کردن سیستم های بازی پایه برای کار با سیستم های ما ، محتوای ایجاد می کند که با آن کار کند. به این ترتیب، msu یک سیستم قوی برای تعامل در کنار سیستمهای کلیدی بازی مانند تجهیزات، بافها، اقلام و موارد دیگر فراهم میکند.

رابط اجزای

برای جلوگیری از اتصال غیر ضروری برای انواع متداول ، msu رابط هایی را ارائه می دهد که می توان از آنها در داخل مؤلفه های سیستم های زیر استفاده کرد:

  • آسیب ionincomingdageotherserverreceiverبه عنوان یک قلاب در takedamage کار می کند، که می توان از آن برای اصلاح آسیب ورودی برای قربانی استفاده کرد.
  • رفتار آماریرابط کاربری که به عنوان یک قلاب روی برای محاسبه مجدد آمار کار می کند، حاوی روشهایی برای اجرای قبل و بعد از محاسبات مجدد آمار.
  • اصلاح کننده iBodyStatArgرابط کاربری که به عنوان اجرای کار می کند R2API. محاسبه مجددنماینده getstatcoefficient.

BaseItemMasterBehaviour

رفتار مستر پایه ، دقیقاً مانند همتای بدن (رفتار مبتنی بر بدن) برای ایجاد رفتاری استفاده می شود که هنگام بدست آوردن یک مورد مشخص به یک شخصیت اصلی اضافه می شود.

رفتار بافت پایه

Behavior basebuffbehavior مؤلفه ای است که می تواند برای مدیریت اثرات یک باف استفاده شود. به دلایل عملکردگی، رفتارهای basebuffbehaviors هنگام حذف باف از بین نمی روند، در عوض، هنگامی که باف برای اولین بار توسط یک بدن به دست می آید، رفتار اضافه می شود، هنگامی که پشته های باف تخلیه می شوند، رفتار است. غیرفعالپس از آن، وقتی بدن دوباره باف را دریافت می کند، رفتار است فعال شده استاین باعث کاهش حجم کار جمع کننده زباله و بهبود کلی عملکرد سیستم می شود.

گردش کار thunderkit بهبود یافته:

از آنجایی که اهداف msu حول کار در ویرایشگر می چرخد، msu با بسیاری از ابزارها در رابطه با ایجاد محتوای برای بازی همراه است.

پشتیبانی wwise

Msu یک extension سفارشی را ارائه می دهد که می تواند برای لیست سیاه مجامع wwise از بازی استفاده شود و به شما امکان می دهد از سیستم ادغام wwise برای پروژه خود استفاده کنید.

اشیاء قابل اسکریپت

Msu اشیاء اسکریپت بندی زیر را ارائه می دهد که امکان ایجاد محتوای "فقط زمان اجرا" را در زمان ویرایشگر فراهم می کند.

  • قابل دستیابی قابل باز کردن قفل defبه عنوان انتزاعی از سیستم قابل باز کردن قفل و دستیابی به قفل کار می کند قابل باز کردن قفل که از طریق یک دستاورد باز می شود.
  • نقطه BuffDef، به عنوان انتزاعی از dotdef کار می کند و به طور خودکار یک dotdef را به buffdef مشخص شده خود اختصاص می دهد.
  • تعریف حذف گسترشبه عنوان یک پسوند کار می کند تعریف نخبه کلاس ، پشتیبانی از افزودن خودکار به سطوح بازی پایه ، رمپ های نخبه ، مواد پوشش و موارد دیگر.
  • ارائه دهنده کارت تعاملییک شیء اسکریپت که حاوی ابرداده مورد نیاز برای ایجاد قابل تعامل در مراحل است ، می توان چندین مرحله را به یک کارت واحد اختصاص داد.
  • ارائه دهنده کارت هیولایک شیء اسکریپت که حاوی ابرداده مورد نیاز برای تخم ریزی هیولاها در مراحل است، می توان چندین مرحله را به یک کارت واحد اختصاص داد.
  • فرهنگ لغت نمایش موردیک شیء اسکریپت که شبیه به کار می کند R2API. آیتمسیستم itemdisplaydictionary ، می توان از آن برای اضافه کردن چندین گروه قانون به موجود استفاده کرد مجموعه قوانین نمایش مورددارایی های کلیدی و پیش فرستاده های نمایشگر توسط
  • مجموعه قاعده نمایش نامیک شیء اسکریپت که می تواند برای ایجاد یک کامل استفاده شود مجموعه قوانین نمایش مورد برای مدل های شخصیت دارایی های کلیدی و پیش فرستاده های نمایشگر توسط کاتالوگ نمایش موردسیستم در msu.
  • قابل سریال elitetierdefبه عنوان انتزاعی کار می کند نخبگان DEF سیستم در بازی، می تواند یک ضرب هزینه را اختصاص دهد، مرجع قابل آدرس به سطح و حالت نخبه بازی پایه اختصاص دهد.
  • اوبراسکیندفبه عنوان یک ابزار همه گیر برای skindefs کار می کند، پشتیبانی از سیستم skinvfx r2api را اجرا می کند و پوست ها را به شخصیت وانیل اضافه می کند.

اشیاء قابل دستیابی از پیش ساخته شده

از آنجایی که msu با در نظر گرفتن thunderkit ایجاد شد، msu اشیاء قابل قبول زیر را برای پروژه شما ارائه می دهد:

  • یک ساده آشکار شدن با موارد لازم تاریخ مانیفست برای اعلام مود خود
  • راه اندازی از پاتریفینرS که برای ساختمان تمیز و انتشار مود شما استفاده می شود
  • یک سیستم خط لوله بسیار قابل پیکربندی:
    • یک خط لوله انتشار که به طور خودکار یک فایل زیپ را آماده برای انتشار مود شما می سازد.
    • خطوط لوله عمومی، که میتوانند برای ساخت مونتاژ شما، ساخت بستههای دارایی شما، فشرده یا فشرده نشده، و مرحله بندی دارایی های جریان مود شما استفاده شوند.
    • یک راه اندازی خط لوله مشارکت کننده، که مشارکت کنندگان می توانند از آن استفاده کنند تا به راحتی یک خط لوله را برای ساخت مود شما راهاندازی کنند.

مدیریت پیکربندی ها و نشانه ها

ایجاد پیکربندی برای مود شما می تواند با استفاده از پیاده سازی های پیش فرض bepinex بسیار مفصل باشد، msu یک سیستم پیکربندی را در بالای bepinex پیاده سازی می کند که به شما امکان می دهد هر چیزی را به راحتی پیکربندی کنید.

Configurefild، ConfiguredVariable و خطر گزینه ها

Msu انتزاعی زیر از سیستم پیکربندی bepinex را ارائه می دهد:

  • فیلد پیکربندی

    • یک ویژگی سفارشی که می تواند برای پیکربندی خودکار آنها در زمینه های استاتیک اعمال شود.
    • فرآیند پیکربندی از شناسه رشته منحصر به فرد استفاده می کند که شما به یک پیکربندی سفارشی اختصاص می دهید تا پیکربندی را به پیکربندی گره بزنید.
    • اين. بخش پیکربندی و نام مستعار نیازی به اجرای نیست ، msu به طور پیش فرض از آن استفاده می کند اطلاعات عضویت پیکربندیNameو آن انواع اعلامیهنام به عنوان بخش پیکربندی
    • نسخه "RiskOfOptions" از پیکربندی فیلد وجود دارد که به طور خودکار گزینه هایی را با استفاده از api RiskOfOptions ایجاد می کند. با این حال، این گزینه ها به دلیل محدودیت ویژگی ها نمی توانند به شدت سفارشی شوند.
  • متغیر پیکربندی شده

    • Configuredvariable کلاس ای است که نشان دهنده متغیرهایی است که می توان پیکربندی کرد.
    • می توان از آن برای ایجاد سناریوهای پیکربندی پیچیده با خطر گزینه ها استفاده کرد.

سیستم فرمت توکن

اتصال تغییرات پیکربندی به مقادیر توکن یکی از بهترین قسمت های ایجاد توکن با استفاده از کد است، با این حال، مدیریت ترجمه این توکن ها می تواند دشوار باشد زیرا مترجمان را ملزم می کند که ترجمه ها را مستقیماً به c کد کنند

Msu ارائه می دهد نشانه فرمت سیستم، اکنون می توانید مقادیر توکن خود را با استفاده از سیستم قالب بندی رشته c بنویسید با این کار می توانید پرونده های json langauge را به درستی تنظیم کنید ، تا زمانی که ترتیب مناسب فهرست سازی را حفظ کنند ، مترجمان می توانند به راحتی از آنها برای ترجمه استفاده کنند.

اسناد و کد منبع

  • اسناد و کد منبع را می توان در مخزن github moonstormsharedutil یافت که می توان یافت در اینجا

کمکهای مالی

Msu یک پروژه پرشور از یکی از اعضای teammoonstorm، نبی است. به این ترتیب، او در اوقات آزاد خود روی این کار می کند تا به بقیه جامعه اجازه دهد محتوای شگفت انگیز و وحشتناک ایجاد کند.

Msu برای همیشه آزاد برای استفاده خواهد بود و هرگز پشت دیوارهای پرداخت نشده است، با این حال، کمک های مالی بسیار قدردانی می شود.

ko-fi

مودهای با استفاده از msu

(روی من کلیک کنید!)

(توجه: روی نماد کلیک کنید تا یک برگه جدید در مود باز شود!)

نماد/آدرس اینترنتی نام توضیحات
StarstormIcon استاراستورم 2 دنباله ستاره طوفان 1. بازماندگان جدید، مکانیک، اقلام، مهارتها، دشمنان و موارد دیگر را اضافه می کند!
LostInTransitIcon در حمل و نقل گم شده است گمشده در حمل و نقل یک مود است که بر بازیابی ویژگیهای گمشده در اثر خطر باران 1 متمرکز است، که در حال حاضر شامل اقلام است.
VarianceAPIIcon واریانس api Varianceapi به شما امکان می دهد انواع مختلفی را برای شخصیت ها ایجاد کنید ، انواع می توانند بافت ها ، نور ها ، مهارت ها و موارد دیگر را داشته باشند.
FortunesFromTheScrapyardIcon برای آزاد شدن-ثروت از زباله یک مود محتوای گسترده ای که حول یک شرکت فضایی شخص ثالث می چرخد و بصری بر اساس مضامین زباله و سایبرپانک است.
RulersOfTheRedPlaneIcon حاکمان هواپیمای قرمز یک مود محتوای عمومی که روی هواپیمای قرمز گسترش می یابد

متشکرم و اعتبار

  • دوقلو برای ایجاد رعد و برق.
  • ایده و هارب برای کمک به سوالات مختلف رمزگذاری.
  • Kingenderbrine و runefox237 برای ror2skinbuilder، که به عنوان پایه برای سیستم vanillaskindef استفاده شد.
  • Groovesalad برای کمک به در حین مفهومسازی سیستم ماژول و تهیه stubbedshaders.
  • لعاب ناشناخته برای آرم msu
  • تیم Starstorm 2، به خاطر اینکه به نبی اجازه داد تا از انتهای عمیق خارج شود و در وهله اول msu ایجاد کند.
  • ثروت تیم زباله، به خاطر ایمان به اهداف من و استفاده از msu برای مود آنها.
  • KevinFromHPCustomerService برای ایجاد سیستم ماژول اصلی که سرانجام به msu 2.0 تبدیل شد
  • همه از جامعه خطر باران 2 به دلیل قدردانی از کار من.
این ابزار توسط یک شخص ثالث ارائه شده است [bufftool]نماد توجه

همین حالا مدها را دانلود کنید

LagoFast را نصب کنید، Risk of Rain 2 را اجرا کنید و با مدهایی که دوست دارید بازی کنید.