边缘世界 RimWorld

边缘世界 RimWorld

RimTalk Event+
此主题已被锁定
SaltGin  [开发者] 11 月 29 日 下午 6:51
[ARCHIVE] Resolved / Old Bug Reports
This thread is used to archive resolved or outdated bug reports and discussions, so players can reference past issues and fixes.

Please do not post new reports here – instead, use the main 'Bug Reports / Suggestions' thread.
< >
正在显示第 1 - 14 条,共 14 条留言
sapphire star 11 月 28 日 下午 7:07 
debug任务信息
-----------------
Id: 1
State: Ongoing
Data:
<saveable Class="Quest">
<id>1</id>
<name>堕天使 — 接纳</name>
<appearanceTick>125403</appearanceTick>
<acceptanceTick>125686</acceptanceTick>
<acceptedBy>null</acceptedBy>
<dismissed>True</dismissed>
<challengeRating>-1</challengeRating>
<description>一名折跃而来的Milira掉到了你的殖民地,受了重伤,正需要你的帮助。她请求你制造一个通讯器与卡利多联系。</description>
<root>BFA_FallenAngel_Accept</root>
<signalsReceivedDebug IsNull="True" />
<parts>
<li Class="QuestPart_Letter">
<inSignal>Quest1.FA_Accept_Start</inSignal>
<letter Class="StandardLetter">
<ID>8</ID>
<def>PositiveEvent</def>
<label>堕天使</label>
<lookTargets IsNull="True" />
<relatedFaction>null</relatedFaction>
<text>她是来自天空之城的堕天使,她受了重伤,正需要你的帮助。

你可以选择让她留下来,和你一起生活;也可以选择把她送回去。</text>
<quest>Quest_1</quest>
<hyperlinkThingDefs IsNull="True" />
<hyperlinkHediffDefs IsNull="True" />
<ThreatPointsBreakdown IsNull="True" />
</letter>
<useColonistsOnMap>null</useColonistsOnMap>
<colonistsFromSignal />
<visitors />
<ThreatPointsBreakdown IsNull="True" />
</li>
<li Class="QuestPart_FactionGoodwillChange">
<inSignal>Quest1.FA_Accept_Start</inSignal>
<change>15</change>
<faction>Faction_0</faction>
</li>
<li Class="QuestPart_JoinPlayer">
<inSignal>Quest1.FA_Accept_Start</inSignal>
<mapParent>WorldObject_697</mapParent>
<pawns>
<li>Thing_Milira_Race55984</li>
</pawns>
<joinPlayer>True</joinPlayer>
</li>
<li Class="QuestPart_Delay">
<inSignalEnable>Quest1.FA_Accept_Start</inSignalEnable>
<outSignalsCompleted>
<li>Quest1.FA_Accept_Leave</li>
</outSignalsCompleted>
<state>Disabled</state>
<enableTick>125686</enableTick>
<delayTicks>2700000</delayTicks>
<inspectStringTargets />
<alertCulprits />
</li>
<li Class="QuestPart_Letter">
<inSignal>Quest1.LeaveLetter</inSignal>
<letter Class="StandardLetter">
<ID>9</ID>
<def>PositiveEvent</def>
<label>堕天使离开</label>
<lookTargets>
<targets>
<li>(266, 0, 105), Map_0</li>
</targets>
</lookTargets>
<relatedFaction>null</relatedFaction>
<text>
由于你没有联系上卡利多,[PAWN]决定自行离开。
她会在离开前和你道别。
</text>
<quest>null</quest>
<hyperlinkThingDefs IsNull="True" />
<hyperlinkHediffDefs IsNull="True" />
<ThreatPointsBreakdown IsNull="True" />
</letter>
<useColonistsOnMap>null</useColonistsOnMap>
<colonistsFromSignal />
<visitors />
<ThreatPointsBreakdown IsNull="True" />
</li>
<li Class="BetterFallenAngel.CoreUtilities+QuestPart_Leave_Gated">
<inSignal>Quest1.FA_Accept_Leave</inSignal>
<pawns>
<li>Thing_Milira_Race55984</li>
</pawns>
<leaveOnCleanup>True</leaveOnCleanup>
<inSignalEnable>Quest1.FA_Accept_Start</inSignalEnable>
<inSignalDisable>Quest1.FA_Accept_LeaveAfter</inSignalDisable>
<enabledNow>False</enabledNow>
</li>
<li Class="QuestPart_Pass">
<state>Enabled</state>
<inSignal>Quest1.Initiate</inSignal>
<outSignal>Quest1.FA_Accept_Start</outSignal>
</li>
<li Class="QuestPart_SetupTransportShip">
<inSignal>Quest1.OuterNodeCompleted2</inSignal>
<transportShip>TransportShip_0</transportShip>
<items IsNull="True" />
<pawns />
</li>
<li Class="QuestPart_AddShipJob">
<inSignal>Quest1.OuterNodeCompleted2</inSignal>
<shipJobStartMode>Instant</shipJobStartMode>
<shipJob Class="ShipJob_Arrive">
<def>Arrive</def>
<transportShip>null</transportShip>
<cell>(-1000, -1000, -1000)</cell>
<mapParent>null</mapParent>
<mapOfPawn>Thing_Milira_Race55984</mapOfPawn>
<factionForArrival>null</factionForArrival>
</shipJob>
<transportShip>TransportShip_0</transportShip>
</li>
<li Class="QuestPart_AddShipJob">
<inSignal>Quest1.OuterNodeCompleted2</inSignal>
<shipJob Class="ShipJob_WaitTime">
<def>WaitTime</def>
<loadID>1</loadID>
<transportShip>null</transportShip>
<leaveImmediatelyWhenSatisfied>True</leaveImmediatelyWhenSatisfied>
<sendAwayIfAllDespawned />
<sendAwayIfAnyDespawned />
<startTick>-1</startTick>
<duration>60000</duration>
</shipJob>
<transportShip>TransportShip_0</transportShip>
</li>
<li Class="QuestPart_AddShipJob">
<inSignal>Quest1.OuterNodeCompleted2</inSignal>
<shipJob Class="ShipJob_FlyAway">
<def>FlyAway</def>
<loadID>2</loadID>
<transportShip>null</transportShip>
<destinationTile>-1,0</destinationTile>
<dropMode>NonRequired</dropMode>
<arrivalAction IsNull="True" />
</shipJob>
<transportShip>TransportShip_0</transportShip>
</li>
<li Class="QuestPart_SendTransportShipAwayOnCleanup">
<unsatisfiedDropMode>All</unsatisfiedDropMode>
<transportShip>TransportShip_0</transportShip>
</li>
<li Class="QuestPart_Letter">
<inSignal>Quest1.OuterNodeCompleted2</inSignal>
<letter Class="StandardLetter">
<ID>10</ID>
<def>NeutralEvent</def>
<label>BFA_FA_Accept_ShuttleArrived_Label</label>
<lookTargets>
<targets>
<li>Thing_Shuttle56067</li>
</targets>
</lookTargets>
<relatedFaction>null</relatedFaction>
<text>BFA_FA_Accept_ShuttleArrived_Text</text>
<quest>Quest_1</quest>
<hyperlinkThingDefs IsNull="True" />
<hyperlinkHediffDefs IsNull="True" />
<ThreatPointsBreakdown IsNull="True" />
</letter>
<useColonistsOnMap>null</useColonistsOnMap>
<colonistsFromSignal />
<visitors />
<ThreatPointsBreakdown IsNull="True" />
</li>
<li Class="QuestPart_Delay">
<inSignalEnable>Quest1.OuterNodeCompleted</inSignalEnable>
<outSignalsCompleted>
<li>Quest1.OuterNodeCompleted2</li>
</outSignalsCompleted>
<delayTicks>3500</delayTicks>
<inspectStringTargets />
<alertCulprits />
</li>
<li Class="QuestPart_Pass">
<state>Enabled</state>
<inSignal>Quest1.QuestShuttle</inSignal>
<outSignal>Quest1.OuterNodeCompleted</outSignal>
</li>
<li Class="QuestPart_Letter">
<inSignal>Quest1.OuterNodeCompleted3</inSignal>
<letter Class="StandardLetter">
<ID>11</ID>
<def>NeutralEvent</def>
<label>BFA_FA_Accept_Destroyed_Label</label>
<lookTargets IsNull="True" />
<relatedFaction>null</relatedFaction>
<text>BFA_FA_Accept_Destroyed_Text</text>
<quest>Quest_1</quest>
<hyperlinkThingDefs IsNull="True" />
<hyperlinkHediffDefs IsNull="True" />
<ThreatPointsBreakdown IsNull="True" />
</letter>
<useColonistsOnMap>null</useColonistsOnMap>
<colonistsFromSignal />
<visitors />
<ThreatPointsBreakdown IsNull="True" />
</li>
<li Class="QuestPart_QuestEnd">
<inSignal>Quest1.OuterNodeCompleted3</inSignal>
<outcome>Fail</outcome>
</li>
<li Class="QuestPart_Pass">
<state>Enabled</state>
<inSignal>Quest1.pickupShipThing.Destroyed</inSignal>
<outSignal>Quest1.OuterNodeCompleted3</outSignal>
</li>
<li Class="QuestPart_DropPods">
<inSignal>Quest1.pickupShipThing.SentSatisfied</inSignal>
<dropSpot>(-1000, -1000, -1000)</dropSpot>
<useTradeDropSpot>True</useTradeDropSpot>
<mapParent>WorldObject_697</mapParent>
<items />
<pawns />
<pawnsInContainers />
<thingDefs>
<li>
<count>400</count>
<quality>Normal</quality>
</li>
<li>
<count>10</count>
<quality>Normal</quality>
</li>
<li>
<count>30</count>
<quality>Normal</quality>
</li>
</thingDefs>
<customLetterLabel>回报已送达</customLetterLabel>
<importantLookTarget>null</importantLookTarget>
<thingsToExcludeFromHyperlinks />
<destroyItemsOnCleanup>True</destroyItemsOnCleanup>
<faction>Faction_35</faction>
</li>
<li Class="QuestPart_Pass">
<state>Enabled</state>
<inSignal>Quest1.pickupShipThing.SentSatisfied</inSignal>
<outSignal>Quest1.OuterNodeCompleted4</outSignal>
</li>
<li Class="QuestPart_QuestEnd">
<inSignal>Quest1.OuterNodeCompleted5</inSignal>
<outcome>Fail</outcome>
</li>
<li Class="QuestPart_Pass">
<state>Enabled</state>
<inSignal>Quest1.pickupShipThing.SentUnsatisfied</inSignal>
<outSignal>Quest1.OuterNodeCompleted5</outSignal>
</li>
<li Class="QuestPart_RequirementsToAcceptPlanetLayer">
<mapParent>WorldObject_697</mapParent>
<mapPawn>null</mapPawn>
<layerWhitelist IsNull="True" />
<layerBlacklist IsNull="True" />
</li>
</parts>
<tags />
<parent>null</parent>
</saveable>

Active QuestParts:
None
SaltGin  [开发者] 11 月 28 日 下午 7:11 
收到,我看一下
SaltGin  [开发者] 11 月 28 日 下午 7:24 
大概知道了,虽然我没玩过,但是我看def大致可能猜到是这个任务开始后,任务里指定的米会自动加入殖民地(成为殖民者);这个和绮罗(仍标记为暂住、非殖民者)的逻辑确实是不同的,我思考一下怎么把这类条件干净的处理掉。

我选择保留绮罗商户(暂住者)的事件描述主要还是因为rimtalk缺乏这类pawn背景信息的感知,加入变为殖民者就是另一回事了
最后由 SaltGin 编辑于; 11 月 28 日 下午 7:26
sapphire star 11 月 28 日 下午 7:28 
是这样的,任务开始时米就自动加入了,辛苦大佬了
SaltGin  [开发者] 11 月 28 日 下午 8:43 
思考了一顿,这个任务最麻烦的点除了没有结束条件、大量looktarget(这个没法避免)、之外,还有一个问题是他不自带进度区分;也就是即使已经接纳了,仍然会显示

<description>一名折跃而来的Milira掉到了你的殖民地,受了重伤,正需要你的帮助。她请求你制造一个通讯器与卡利多联系。</description>

这样子AI模型就会懵掉,觉得实际任务还在等待殖民地制造通讯器;加上前面说的looktarget问题,导致这个任务的条件非常难排除(在目前的mod过滤器实现方案下和我的大脑可及的范围内...),目前最稳定的方法是加一个黑名单,把这个任务排除掉,今后event list不会加入这个任务的描述,算是勉强解决了

如果steam没有自动更新,可以重新订阅强制更新一下
最后由 SaltGin 编辑于; 11 月 28 日 下午 8:55
帕鲁帕鲁 11 月 28 日 下午 9:47 
rimtalk初始化失败
生成不了对话,然后报错信息是这些:
帕鲁帕鲁 11 月 28 日 下午 9:47 
Root level exception in Update(): System.TypeLoadException: Could not resolve type with token 0100004b from typeref (expected class 'RimTalk.Service.PawnService' in assembly 'RimTalk, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null')
[Ref 478D495F]
at RimTalk.Service.PromptService.DecoratePrompt (RimTalk.Data.TalkRequest talkRequest, System.Collections.Generic.List`1[T] pawns, System.String status) [0x005d0] in <efc422aa08fa490c953f9c4e76d5055f>:0
- POSTFIX rimtalk.memory.precise: Void RimTalk.Memory.Patches.RimTalkPrecisePatcher:DecoratePrompt_Postfix(Object talkRequest, List`1 pawns)
- POSTFIX saltgin.rimtalkeventmemory.prompt: Void RimTalkEventMemory.PromptService_OngoingEventsPatch:Postfix(TalkRequest talkRequest, List`1 pawns, String status)
at RimTalk.Service.TalkService.GenerateTalk (RimTalk.Data.TalkRequest talkRequest) [0x00330] in <efc422aa08fa490c953f9c4e76d5055f>:0
- PREFIX rimtalk.memory.precise: Void RimTalk.Memory.Patches.RimTalkPrecisePatcher:GenerateTalk_Prefix(Object talkRequest)
at RimTalk.Patch.TickManagerPatch.Postfix () [0x00128] in /Users/chris/RiderProjects/RimTalk/Source/Patch/TickManagerPatch.cs:69
at Verse.TickManager.DoSingleTick () [0x003de] in <46372f5dadbf4af8939e608076251180>:0
- TRANSPILER Krkr.RocketMan: IEnumerable`1 RocketMan.Patches.TickManager_DoSingleTick_Patch:Transpiler(IEnumerable`1 instructions, ILGenerator generator)
- PREFIX Krkr.RocketMan: Void RocketMan.Patches.TickManager_DoSingleTick_Context_Patch:Prefix()
- PREFIX OskarPotocki.VEF: Void VEF.Maps.VanillaExpandedFramework_DoSingleTick_Patch:Prefix(Stopwatch& __state)
- POSTFIX OskarPotocki.VEF: Void VEF.Maps.VanillaExpandedFramework_DoSingleTick_Patch:Postfix(Stopwatch __state)
- POSTFIX cj.rimtalk: Void RimTalk.Patch.TickManagerPatch:Postfix()
- POSTFIX jpt.speakup: Void SpeakUp.TickManager_DoSingleTick:Postfix()
at Verse.TickManager.TickManagerUpdate () [0x00087] in <46372f5dadbf4af8939e608076251180>:0
at Verse.Game.UpdatePlay () [0x00032] in <46372f5dadbf4af8939e608076251180>:0
- POSTFIX Krkr.RocketMan: Void RocketMan.Patches.Game_UpdatePlay_Patch:Postfix()
- POSTFIX net.pardeike.rimworld.mod.camera+: Void CameraPlus.Game_UpdatePlay_Patch:Postfix()
at Verse.Root_Play.Update () [0x00032] in <46372f5dadbf4af8939e608076251180>:0
UnityEngine.StackTraceUtility:ExtractStackTrace ()
(wrapper dynamic-method) MonoMod.Utils.DynamicMethodDefinition:Verse.Log.Error_Patch3 (string)
Verse.Root_Play:Update ()
帕鲁帕鲁 11 月 28 日 下午 9:48 
不知道是哪里出的问题.....但是一直保持着rimtalk的更新...我应该怎么做
SaltGin  [开发者] 11 月 28 日 下午 9:50 
rimtalk悄无声息的推了个更新然后workshop页面也给隐藏了,我看一下
SaltGin  [开发者] 11 月 28 日 下午 10:02 
我上github看了一眼 他的最新更新把PawnService这个class整个整合到util里了,rimtalk耀斑说是...我速改一下看看
最后由 SaltGin 编辑于; 11 月 28 日 下午 10:03
帕鲁帕鲁 11 月 28 日 下午 10:05 
这样 谢谢佬了
SaltGin  [开发者] 11 月 28 日 下午 10:16 
修好了,如果没有生效就重新订阅一下
Star_chasing 11 月 29 日 上午 12:56 
我也是这个问题呢
SaltGin  [开发者] 11 月 29 日 上午 1:25 
如果没有生效就重新订阅一下
< >
正在显示第 1 - 14 条,共 14 条留言
每页显示数: 1530 50