逗游網(wǎng):值得大家信賴的游戲下載站!

微信:doyo_game
關(guān)注逗游
單機(jī)首頁 游戲庫 排行榜 資訊 攻略 專題 合集 工具補(bǔ)丁 手機(jī)游戲 正版商城
所在位置:攻略中心 > 圖文攻略 > 環(huán)世界 > 正文

環(huán)世界Rimworld1.3版本DLL代碼更新內(nèi)容一覽

發(fā)布時(shí)間:2021-07-06 09:48 來源:百度貼吧  作者:末影史蒂夫

 

環(huán)世界Rimworld目前已經(jīng)推出1.3beta版本,新版本對游戲文件中的部分DLL代碼進(jìn)行了改動(dòng),下面一起來看看環(huán)世界Rimworld1.3版本DLL代碼更新內(nèi)容一覽

環(huán)世界Rimworld1.3版本DLL代碼更新內(nèi)容一覽

CompReloadable無修改,衣物對于verb的獲取依然依靠CompReloadable

Apparel修改:“為穿戴護(hù)盾腰帶的小人禁用了開火選項(xiàng)和按鈕?!?

AllowVerbCast(IntVec3 root, Map map, LocalTargetInfo targ, Verb verb)

修改為

AllowVerbCast(Verb verb)

修改內(nèi)容:

取消了CanReachImmediate的檢測

在verb處有Apparel FirstApparelPreventingShooting()

在verbTracker處對FirstApparelPreventingShooting()檢測,若有則讓verb的command Disable掉,但沒有看見“移除”

進(jìn)游戲查看后,確認(rèn)是翻譯者錯(cuò)誤,確實(shí)只有Disable的禁用

仿生體現(xiàn)在能夠被渲染,但不是hediff的Draw

用的是FleshTypeDef.hediffWounds,即傷口的渲染

所以mod作者們需要制作的話,需要自己用patch打代碼

FleshTypeDef.hediffWounds內(nèi)有對hediff的檢測,然后四個(gè)方向的渲染圖,一些關(guān)于部位的東西,其他設(shè)定等。

可能不太好用【依然建議用harmony直接打draw】

拋射物“手雷現(xiàn)在將渲染其拋物線”

子彈的ThingDef.projectile下,有float的arcHeightFactor和shadowSize【原版在手雷們的父defs

前者控制拋物線最高高度,后者控制影子

經(jīng)過一系列處理,最后在Projectile.Draw引用

與之前跳躍背包的PawnJumper應(yīng)該是相同的拋物線繪制法

子彈修改

Projectile.Launch(Thing launcher, Vector3 origin, LocalTargetInfo usedTarget, LocalTargetInfo intendedTarget, ProjectileHitFlags hitFlags, Thing equipment = null, ThingDef targetCoverDef = null)

改為

Projectile.Launch(Thing launcher, Vector3 origin, LocalTargetInfo usedTarget, LocalTargetInfo intendedTarget, ProjectileHitFlags hitFlags, bool preventFriendlyFire = false, Thing equipment = null, ThingDef targetCoverDef = null)

在第五個(gè)參數(shù)后,第六個(gè)參數(shù)的位置,即原來equipment的位置,增加了preventFriendlyFire,其余參數(shù)不變

Projectile增加了屬性

protected bool preventFriendlyFire;

若該值為true,則當(dāng)子彈擊中的單位與子彈發(fā)射者的派系是友好時(shí)

子彈的Impact()無法執(zhí)行

mod修改意見:增加了友傷避免,建議按mod實(shí)際需求來進(jìn)行參數(shù)更改

Verb修改

Verb.ValidateTarget(LocalTargetInfo target)

改為

Verb.ValidateTarget(LocalTargetInfo target, bool showMessages = true)

看了一圈,原版對showMessages的引用似乎比較少,大多數(shù)原版重載的代碼沒有修改,

mod更新建議:僅需修改ValidateTarget的參數(shù),其代碼完全無需修改。

Mote 被從Thing中剝離到獨(dú)立線程中以提高渲染性能,他們現(xiàn)在位于"Flecks"下

許多Mote,MoteMaker,MoteDef

變?yōu)镕leck,F(xiàn)leckMaker,F(xiàn)lackDef

在FleckMaker下有許多現(xiàn)成的fleck

許多MoteDef改為了FleckDef

舉例:

MoteMaker.MakeStaticMote(loc, base.Wearer.Map, ThingDefOf.Mote_ExplosionFlash, num);

MoteMaker.ThrowDustPuff(loc, base.Wearer.Map, Rand.Range(0.8f, 1.2f));

應(yīng)改為

FleckMaker.Static(loc, base.Wearer.Map, FleckDefOf.ExplosionFlash, num);FleckMaker.ThrowDustPuff(loc, base.Wearer.Map, Rand.Range(0.8f, 1.2f));

FleckMaker.ThrowDustPuff(loc, base.Wearer.Map, Rand.Range(0.8f, 1.2f));

新增FleckDef【public class FleckDef : Def

將原來MoteProperties【即ThingDef.mote】下所有內(nèi)容

移至FleckDef

并有

public Type fleckSystemClass;

public AltitudeLayer altitudeLayer;

public float altitudeLayerIncOffset;

public bool drawGUIOverlay;

public GraphicData graphicData; //即原本ThingDef下的

public ListrandomGraphics;//新增的隨機(jī)貼圖讀取

隨機(jī)貼圖的讀取,對于喜歡特效的作者是福音

Gzimo修改

Gizmo.GizmoOnGUI(Vector2 topLeft, float maxWidth)改為

Gizmo.GizmoOnGUI(Vector2 topLeft, float maxWidth, GizmoRenderParms parms);

增加了參數(shù)GizmoRenderParms,內(nèi)含:

public bool highLight;

public bool lowLight;

public bool shrunk;

mod更新意見:若無對該三者的應(yīng)用,僅需修改GizmoOnGUI的參數(shù),其代碼完全無需更改。

“角色現(xiàn)在渲染效率更高(游戲?qū)⑺鼈兇蛴〉郊y理上并在一次過程中渲染,而不是在每一幀上分別渲染每個(gè)身體層)?!?

PawnRenderer.RenderCache被重寫了,有興趣的可以去看看

美工福利:頭發(fā)與胡子,現(xiàn)在統(tǒng)稱叫造型

頭發(fā)【HairDef】:

hairTags名字改為styleTags,原版有更多的Tags了

hairGender名字改為styleGender【不填默認(rèn)為any,與改變前一樣

新增category,用于給頭發(fā)和胡子分類。可在CoreDefsMiscHairDefsStyleItemCategoryDefs.xml查看原版所有的category。

新增iconPath,填貼圖路徑,表示頭發(fā)的顯示圖標(biāo)

胡子【BeardDef】

絕大多數(shù)東西與改版后的頭發(fā)一樣。

新增offsetNarrowEast【格式為(x,y,z)】,表示朝東時(shí)胡子貼圖的偏移,x和z分別為左右和上下

新增offsetNarrowSouth【格式為(x,y,z)】,表示朝南時(shí)胡子貼圖的偏移,x和z分別為左右和上下

這兩塊屬于美工不想單獨(dú)調(diào)整南和東的貼圖時(shí) 程序給予的補(bǔ)償代碼。

Hediff修改

Hediff.Tended_NewTemp(float quality, float maxQuality, int batchPosition = 0)

改為

Hediff.Tended(float quality, float maxQuality, int batchPosition = 0)

內(nèi)部代碼沒有任何變化

mod更新意見:直接改方法名即可

Pawn的Faction修改

FactionOrExtraMiniOrHomeFaction改為HomeFaction,返回值新增Pawn.SlaveFaction

RecipeWorker的Faction修改

RecipeWorker下:

protected void ReportViolation(Pawn pawn, Pawn billDoer, Faction factionToInform, int goodwillImpact, string reason)

改為

protected void ReportViolation(Pawn pawn, Pawn billDoer, Faction factionToInform, int goodwillImpact)

移除了第五個(gè)參數(shù)string reason,因?yàn)镽eportViolation自帶Reason HistoryEventDef:PerformedHarmfulSurgery【“harmful surgery on member”】

更新建議:

1.使用他自己的reason

2.繞過ReportViolation,直接自己寫TryAffectGoodwillWith

Building的修改

需要在ThingDef中修改drawerType

常用的為MapMeshAndRealTime

否則Draw不會被運(yùn)行。

進(jìn)入《環(huán)世界》專區(qū)
查看更多《環(huán)世界》攻略
標(biāo)簽: 
http://m.4uh5.cn/article/449672復(fù)制本文地址
閱讀本文后,您的心情是:(選擇后可查看結(jié)果)
 
惡心
憤怒
強(qiáng)贊
感動(dòng)
路過
無聊
雷囧
關(guān)注
今日關(guān)注游戲
游戲?qū)n}
IGN 9分以上作品 愿者上鉤釣魚的那點(diǎn)趣事 深冬之寒,來一起看看游戲中精美的雪景吧