silksong-coop-mod 0.4.99 → 0.4.101

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/INSTALL.txt CHANGED
@@ -112,16 +112,11 @@ exe 旁边放一个 dll,让游戏启动时连带加载它。这是所有同类
112
112
  · 这一次和谁玩,就按这次进来的人算,下次重新算。存档不绑定任何人。
113
113
  · 一起玩的人还没进来、或者掉线了:你刚进存档时、或者之后坐上长椅时,会被定住等对方,
114
114
  屏幕上会写着在等谁。房主正玩着的时候有人加入,房主不会当场被定住,下次坐上长椅时才等。
115
- 这时【按 K】(手柄:把左摇杆按进去,L3):
116
- - 还有别人和你一起在存档里:不等那个人了,你们继续玩;对方回来进了存档会自动重新加入。
117
- - 只剩你一个人:存档变回普通存档,你一个人接着玩。
115
+ 等的时候没有按键能「不等了」(0.4.100 起删掉了)。不想等了就暂停,回主菜单:
116
+ - 这一次和谁玩按这次在的人算,重新进存档就不再等已经掉线、退出联机的人。
117
+ - 只剩你一个人:照上面说的,在菜单里再选一次这个存档,就变回普通存档一个人玩。
118
118
  以后用它开房有人加入、或者用它加入别人,它又会变回联机存档。
119
119
  · 聊天框打 /coopsave 能看当前存档是不是联机存档、这次和谁一起玩;/coopsave off 把它变回普通存档。
120
- 被定住的时候聊天框打不开,那时候用 K。
121
-
122
- 【用手柄的话把左摇杆按进去(L3)】,和 K 是同一件事。
123
- 是像按按钮一样把摇杆往手柄里按,会「咔哒」一声;往下推是方向,不算。
124
- 插着手柄时,屏幕上那行字会把键盘键和手柄键都写出来。
125
120
 
126
121
 
127
122
  四、第一次玩的建议
@@ -144,7 +139,7 @@ exe 旁边放一个 dll,让游戏启动时连带加载它。这是所有同类
144
139
 
145
140
  现在每条连接各用各的缓冲区。
146
141
  【这个修复已经实机验证通过】,两个人已经正常连上并一起玩过了。
147
- 万一还卡:按 K 脱身,然后把两边的日志都发回来。
142
+ 万一还卡:暂停回主菜单,然后把两边的日志都发回来。
148
143
 
149
144
  备份脚本会自动做,位置见上面第一节。
150
145
 
@@ -171,9 +166,11 @@ exe 旁边放一个 dll,让游戏启动时连带加载它。这是所有同类
171
166
  茧里的钱和丝也一起还给你,等于这一次没白死。
172
167
 
173
168
  等的时候屏幕上有一行字,写着在等谁、对方已经打了几下。
174
- 不想等了就【按 K】,立刻回长椅、按原来的规则结算,
169
+ 不想等了就【按 K】(手柄:把左摇杆按进去,L3),立刻回长椅、按原来的规则结算,
175
170
  你的茧同时从队友那边消失。等满 3 分钟没人来,也一样自动回长椅。
176
171
  (注意:这里的 K 只是「不等了」,不会解除你们的双人存档。)
172
+ 手柄的 L3 是像按按钮一样把摇杆往手柄里按,会「咔哒」一声;往下推是方向,不算。
173
+ 插着手柄时,屏幕上那行字会把键盘键和手柄键都写出来。
177
174
 
178
175
  【两个人都死了,就都直接回长椅】,不会互相干等,
179
176
  也不会出现谁站在那儿等一个同样躺着的人。
@@ -2173,6 +2170,7 @@ exe 旁边放一个 dll,让游戏启动时连带加载它。这是所有同类
2173
2170
  规则全文见第三节第 5 步。
2174
2171
  · 对齐前自动备份。存档原来不是联机存档又玩过,或者打过房主没打的 Boss,会先提醒,再选一次才进。
2175
2172
  · 等人时按 K:还有别人在,就不等缺的那个人;只剩自己,就变回普通存档。L 键和配对都没有了。
2173
+ (0.4.100 起这个键没有了,见【等人时没有「不等了」的键了】。)
2176
2174
  · 一个人在菜单里选联机存档:提示一次,再选一次就变回普通存档一个人玩。
2177
2175
  - 注意:
2178
2176
  · 这条【没有实机测过】。下次一起玩时留意:加入的人选了存档后,屏幕上先写「正在接收房主的存档」,
@@ -2819,7 +2817,183 @@ exe 旁边放一个 dll,让游戏启动时连带加载它。这是所有同类
2819
2817
  · 这条【没有实机测过】。
2820
2818
  · 两个人都要装 0.4.99。
2821
2819
 
2822
- ※ 以上一百七十八条【没有实机验证过】。
2820
+ * 【等人时没有「不等了」的键了】(0.4.100)
2821
+ - 以前:被定住等人的时候,按 K(手柄 L3,把左摇杆按进去)就不等了:还有别人在就不等缺的那个人,
2822
+ 只剩自己就把存档变回普通存档。有一次房主在等对方加载时试手柄,按到了 L3,房主的存档当场变回普通存档;
2823
+ 加入的人那边一直写着在等房主、动不了,哪儿都没说为什么。
2824
+ - 现在:
2825
+ · 等人的时候屏幕上写着在等谁,和「不想等了就暂停,回主菜单」(见第三节第 6 步)。
2826
+ 没有任何按键能「不等了」或者把存档变回普通存档。
2827
+ · 和服务器的连接断了:马上放开你,不会再被定住(以前断线后下一刻又会被定住)。
2828
+ · 房主进存档时,要加入的人中途走了,之后再有人加入:房主不会当场被定住,下次坐长椅时才等,
2829
+ 和平时房主正玩着时有人加入一样。
2830
+ · 有人用 /coopsave off 把存档变回了普通存档,而你的游戏还在等他:会说清楚是他把存档变回了普通存档,
2831
+ 等他回主菜单再进一次存档,就重新是联机存档。
2832
+ · K(手柄 L3)只剩一个用处:死后等队友拉你起来的时候,不想等了直接回长椅。
2833
+ - 注意:
2834
+ · 这条【没有实机测过】。
2835
+ · 两个人都要装 0.4.100。
2836
+
2837
+ * 【你一下把怪打空血之后,它不会再碰伤你】(0.4.100)
2838
+ - 以前:怪死不死由跑这个房间的那一方决定。你这一下把怪的血打空了,要等对方收到、
2839
+ 回话(网络来回一趟),你这边的怪才死。这段时间它还在原地,碰到你照样伤你。
2840
+ 飞针钩到怪、冲过去弹起来的时候人正好在怪身上,这一下伤害会把弹起打断,人就掉下去。
2841
+ - 现在:你这一下把怪打空血后,到对方回话之前,这只怪碰不伤你。
2842
+ · 对方说它其实没死(比如它那边的血比你看到的多),马上恢复。
2843
+ · 5 秒还没回话,也恢复。
2844
+ · 只管怪本身和它身上的部分。它之前扔出来的东西、它死的时候放出来的东西,照样会伤人。
2845
+ - 注意:
2846
+ · 这条【没有实机测过】。下次用飞针打残血的怪时,看冲过去后能不能正常弹起来。
2847
+ · 两个人都要装 0.4.100。
2848
+
2849
+ * 【飞针钩住怪:两边的怪都会马上反应】(0.4.100)
2850
+ - 以前:飞针钩住怪时,游戏会告诉那只怪「被钩住了」,可这句话只到了你这边的怪
2851
+ (它只是跟着对方动的影子),跑这个房间的那一方的怪根本不知道。
2852
+ 所以被钩住本该停下的怪照样飞走,你冲过去够不着;怪对飞针该有的反应,对方那边也都没有。
2853
+ - 现在:钩住的那一刻,你这边的怪马上照原版反应,同时告诉跑房间的那一方,
2854
+ 那边的怪从你看到的位置接着演,而且把你当作目标。
2855
+ - 注意:
2856
+ · 这条【没有实机测过】。下次用飞针钩会动的怪时,看它是不是被钩住就停下。
2857
+ · 两个人都要装 0.4.100。
2858
+
2859
+ * 【飞针挂上去会往下拉的拉环:两边一起拉】(0.4.100)
2860
+ - 以前:你挂在拉环上,只有你这边的拉环往下拉;队友那边的拉环不动,
2861
+ 它拉开的门、启动的机关,在队友那边也都没发生。
2862
+ - 现在:谁挂上去,房间里大家那边的拉环都跟着往下拉,拉到底该开的门在大家那边都开。
2863
+ 两个人都挂着的话,最后一个人松手它才回去。
2864
+ - 只管往下拉的拉环。挂上去以后带着人沿轨道走、上下升降的拉环,还是各管各的。
2865
+ - 注意:
2866
+ · 这条【没有实机测过】。下次一个人挂拉环时,另一个人看自己那边的拉环有没有跟着拉下来。
2867
+ · 两个人都要装 0.4.100。
2868
+
2869
+ * 【怪对你扔飞针、挑衅等动作的反应:对你也一样】(0.4.100)
2870
+ - 以前:有的怪会对玩家自己的动作做反应,比如有一种怪在你扔出飞针时会闪开,有的怪被挑衅会转过来。
2871
+ 可这种反应只听得到跑这个房间的那一方自己的动作:你的动作,你这边的怪(只是跟着对方动的影子)
2872
+ 和对方那边的怪都不知道。所以它只对对方有反应,从来不理你。
2873
+ - 现在:两边各自听自己玩家的动作。你一做,你这边的怪马上照原版判断(看你的位置和朝向),
2874
+ 有反应就马上演,同时告诉跑房间的那一方,那边的怪从你看到的位置接着演,而且把你当作目标。
2875
+ · 跑房间的那一方自己做动作、他那边的怪有了反应,怪也会把他当作目标(以前还追着原来的人)。
2876
+ · 帮你打架的角色对你的动作有反应时也一样,只是它不会因此把你当成目标。
2877
+ · boss 房里另有一条规则,见下一条。
2878
+ - 注意:
2879
+ · 这条【没有实机测过】。下次遇到会躲飞针的怪时,看你扔飞针它会不会闪开。
2880
+ · 两个人都要装 0.4.100。
2881
+
2882
+ * 【boss 房:人没到齐之前,boss 不理玩家的动作】(0.4.100)
2883
+ - 以前:开打前,跑这个房间的那一方对 boss 做它会有反应的动作(比如挑衅),这一下会被扣住,
2884
+ 等所有人都进了 boss 房才放出来:队友一进门 boss 就有反应,哪怕那时谁都没在做这个动作。
2885
+ 另一方做同样的动作,boss 根本收不到。
2886
+ - 现在:人没到齐之前,谁做这些动作 boss 都收不到,做了也白做,不会留到以后。
2887
+ 人到齐了再做,boss 照原版反应,两边一起演。
2888
+ · 只管 boss 和这场战斗本身的东西,房间里别的东西照常反应。
2889
+ · 战斗开始以后不受影响。
2890
+ - 注意:
2891
+ · 这条【没有实机测过】。
2892
+ · 两个人都要装 0.4.100。
2893
+
2894
+ * 【有的怪会对玩家开始治疗做出反应:谁治疗都算】(0.4.100)
2895
+ - 以前:有的怪会对"玩家开始治疗"做出反应,但只看得到跑这个房间那一方自己的治疗,另一方治疗它不知道。
2896
+ - 现在:谁开始治疗,怪都有反应,并把治疗的那个人当作目标。
2897
+ · 这种反应要不要发生,有时要看治疗的人身上装的东西。现在按治疗的那个人自己身上的来判断,
2898
+ 不再按跑房间那一方身上的判断。怪没理会这次治疗时,也不会因此改去追你。
2899
+ · 同样的道理,怪对你的动作做反应时要看你身上带没带某样东西的,一般也按你自己身上的来判断;
2900
+ 只有你那边这一下没能当场演出来时,才按跑房间那一方身上的判断。
2901
+ - 注意:
2902
+ · 这条【没有实机测过】。
2903
+ · 两个人都要装 0.4.100。
2904
+
2905
+ * 【角色和房间里的东西对你的挑衅、冲刺撞上去等动作的反应:两边一起】(0.4.100)
2906
+ - 以前:房间里有些角色和东西会对玩家的动作有反应:被挑衅会转过来打招呼、被吓跑、或者钻出来,
2907
+ 有的被挑衅会醒过来,冲刺撞上去能把有的东西撞翻,撞翻又可能惊动别的东西。
2908
+ 但它们只听得到自己这边玩家的动作:你做了,只有你这边有反应,队友那边什么都没发生。
2909
+ - 现在:你一做,你这边照原版判断(离得够不够近、你站在哪一边),然后把它这一下走了哪几步、
2910
+ 掷了什么骰子发给队友。队友那边的同一个东西照着同样几步走,不再按队友自己的位置重新判断。
2911
+ · 前提是它在队友那边也还在原来那一步等着;比如正在跟队友说话,就各走各的。
2912
+ · 之后它接着做的事(比如停顿一下再开口),两边各自照常演。
2913
+ · 被它这一下惊动的别的东西,只要两边都还在原来那一步等着,也一起被惊动。
2914
+ · 不管的:boss 战里的东西(boss 房另有规则)、每个人各管各的东西,还有叫来专门载人的东西,
2915
+ 还是各叫各的。
2916
+ - 注意:
2917
+ · 这条【没有实机测过】。下次一个人对会转身打招呼的角色挑衅时,另一个人看自己那边它有没有反应。
2918
+ · 停顿之后它转身朝着的,是各自那边的自己,不是做动作的那个人。只是朝向不同,别的都一样。
2919
+ · 两个人都要装 0.4.100。
2920
+
2921
+ * 【怪选谁打:会随机选招的怪,每开始一招有机会换人】(0.4.100)
2922
+ - 以前:怪只在你们俩都站进它的某个判断范围、或者另一个人明显更近时才换人;不靠范围找人的怪
2923
+ 更是一直盯着跑房间那一方。实战里基本就是怼着一个人打,另一个人站远一点就几乎不挨打。
2924
+ - 现在:会随机选下一招的怪,在跟人打的时候,每次开始一招之前先掷一次骰子决定要不要换人,
2925
+ 再按换过的人来选招。要先量你远近再选招的怪,在量之前就掷。
2926
+ · 刚换过人,至少打完两招、并且过了 4 秒,才会再考虑换。
2927
+ · 之后每次掷,换人的机会从 15% 起,每掷一次没换就多 15%,最多 70%;换了就重新从 15% 算。
2928
+ 最快一秒掷一次。
2929
+ · 换给谁:只在离它大约半个屏幕以内、中间没有墙挡着的人里挑。离它近的、它很久没打的人
2930
+ 更容易被挑中,它正在打的人只算一半。所以不会为了换人跨过整个房间去追。
2931
+ · 它在跟一个人打的时候,另一个人站得更近、走进它的出招范围,它也不会马上转过去,
2932
+ 要等下一次掷骰子。
2933
+ · 它正在打的人倒下了,下一招马上换成附近的人;跑远了或躲到墙后,等上面那两招、4 秒过了,
2934
+ 下一招就换。
2935
+ · 没在跟人打的怪(还没发现人,或者它打的人离开它的范围已经一阵子了),醒过来、发现人的
2936
+ 判断照旧,谁走进它的范围它就发现谁。
2937
+ · 只有跑房间的那一方掷这个骰子,另一方看到的是同一只怪做同样的事。
2938
+ - 注意:
2939
+ · 这条【没有实机测过】。觉得换得太勤或太少、为了换人跑来跑去太多,告诉我,这些数字都能调。
2940
+ · 两个人都要装 0.4.100。
2941
+
2942
+ * 【监狱里踩了才启动的陷阱:一个人踩,两边都启动】(0.4.101)
2943
+ - 以前:监狱里有一种陷阱,要踩下它的踏板才会启动。这种踏板只认自己那边的角色,
2944
+ 所以只有踩的人那边陷阱启动了,队友那边什么都没发生。
2945
+ - 现在:谁踩下去,队友那边的同一块踏板也跟着按下去,两边各自放出陷阱,陷阱怎么动两边一样。
2946
+ 陷阱打没打中人,各自那边算各自的角色,和别的陷阱一样。
2947
+ · 队友那边的踏板已经是按下的(比如有人正站在上面),就不再按一次。
2948
+ · 只要还有人站在踏板上(哪一边都算),两边的踏板都不弹起来;所有人都离开以后才一起弹回去。
2949
+ - 注意:
2950
+ · 这条【没有实机测过】。下次一个人踩监狱的踏板时,另一个人看自己那边陷阱有没有出来。
2951
+ · 两个人都要装 0.4.101。
2952
+
2953
+ * 【监狱里要钥匙的锁:一个人打开,两边都打开】(0.4.101)
2954
+ - 以前:开锁前锁会先显示一句话,mod 看到这句话就把整个开锁当成了「跟它说话」,各人跟各人说,
2955
+ 所以只在开锁的人那边打开了,队友那边的门还锁着。
2956
+ - 现在:开锁和花钱的座位一样,算「确认之后改变世界的机关」:有钥匙的人确认开锁后,
2957
+ 队友那边的同一把锁也跟着打开,队友不需要有钥匙。
2958
+ · 队友不在那个房间也一样:开锁会记进队友的存档,队友之后进去就是开着的。
2959
+ · 开锁时角色拿出钥匙的动作,只在开锁的人自己那边做。
2960
+ · 规则改的是「确认前先显示一句话」这一类,全游戏查过,变化的只有这些锁;
2961
+ 能捡的东西、给你东西的机器还是各管各的。
2962
+ - 注意:
2963
+ · 这条【没有实机测过】。下次一个人开锁时,另一个人看自己那边的门有没有开;
2964
+ 不在同一个房间的话,之后进去时看。
2965
+ · 两个人都要装 0.4.101。
2966
+
2967
+ * 【新增:换房间时黑屏多久、时间花在哪,记进日志】(0.4.101)
2968
+ - 起因:进房间时的黑屏,两个人长短差很多。查过日志:平常换房间时 mod 不会让一方等另一方,
2969
+ 黑屏就是自己这边加载房间的时间,监狱里有几次要 7~8 秒;但日志说不出这些时间花在了哪一段、mod 占了多少。
2970
+ - 现在每换一次房间,日志里写一行,开头是 [Load]:
2971
+ · 从开始换房间到新房间亮起来,一共多久;
2972
+ · 游戏自己加载房间的每一段各多久(读出房间、唤醒房间里的东西、清内存等,游戏本来就给每一段计时);
2973
+ · 这期间画了几帧、最慢的一帧多久、清了几次内存,电脑还剩多少内存、游戏自己用了多少;
2974
+ · mod 花了多少:换房间时 mod 自己的处理(列出最慢的几个)、每一帧的处理、从服务器拿房间状态。
2975
+ · 房间状态要是在房间亮起来以后才到,另写一行:晚了多久、拿的时候花了多久。
2976
+ - 只写日志,不改换房间本身。两个人一起玩一阵以后,把两边的日志都发来,就能比出黑屏差在哪一段。
2977
+ - 注意:
2978
+ · 这条【没有实机验证过】。
2979
+
2980
+ * 【断线:一边收不到对方的消息时,自动重开连接】(0.4.101)
2981
+ - 起因:上次断线时,房主那边的消息整整 30 秒一条都没到另一边,而另一边发出的消息房主一直收得到;
2982
+ 这期间 Steam 一直说"还连着"。30 秒后 mod 只好算断线;两分钟后重新开房间,一下就连上了。
2983
+ - 现在:Steam 说还连着、但 15 秒都没收到对方任何消息时,就把这条连接关掉,下一条消息会自动开一条新的,
2984
+ 重新找一条中转线路。新连接还是不通的话,每 8 秒再重开一次;一共 30 秒都收不到,才算断线,和以前一样。
2985
+ · 不到 15 秒的卡顿留给它自己恢复:以前的日志里有过 13~19 秒后自己恢复的卡顿,这期间发出的东西,
2986
+ Steam 会在恢复后补送;重开连接反而会把它们丢掉。真正断死的那两次(10-12、10-15)都超过了 30 秒。
2987
+ · 两边都会这么做:哪边收不到,哪边重开。刚开好的新连接先给 2 秒,不会马上又被关掉。
2988
+ · 对方重开连接时,房主那边不会把这当成对方退出了。
2989
+ · 重开时,还在路上没送到的消息会丢。房间里的怪、血量这些,紧接着由已有的「房间补发」补回来;
2990
+ 正好在这几秒里发出的其他东西(比如聊天、存档里的改动)可能会丢。
2991
+ - 日志里会写 "so that the next send opens a new one" 和 "it was opened anew"。
2992
+ - 注意:
2993
+ · 这条【没有实机验证过】。
2994
+ · 两个人都要装 0.4.101。
2995
+
2996
+ ※ 以上一百九十一条【没有实机验证过】。
2823
2997
 
2824
2998
 
2825
2999
  六、出问题的话
package/README.md CHANGED
@@ -1,4 +1,4 @@
1
- # silksong-coop-mod 0.4.99
1
+ # silksong-coop-mod 0.4.101
2
2
 
3
3
  The files a player needs to install a two-player co-op build of **SSMP**, packaged so they can be fetched from
4
4
  a mirror that is reachable inside mainland China. This is not a Node library: nothing here is imported or run
@@ -15,4 +15,4 @@ The BepInEx loader is included, so the install needs no network access at all.
15
15
 
16
16
  The multiplayer mod is the work of [Extremelyd1](https://github.com/Extremelyd1/SSMP). This is a modified copy
17
17
  that adds a shared two-player save; please do not take questions about it to the original author. Distributed
18
- under the GNU LGPL 2.1 - see `LICENSE`. Built from https://github.com/Candy-649/SSMP at `f58a2ea`.
18
+ under the GNU LGPL 2.1 - see `LICENSE`. Built from https://github.com/Candy-649/SSMP at `7f96237`.
package/SSMP/SSMP.dll CHANGED
Binary file
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "silksong-coop-mod",
3
- "version": "0.4.99",
3
+ "version": "0.4.101",
4
4
  "description": "Offline installer payload for a two-player co-op build of the SSMP Silksong multiplayer mod. Not a Node library.",
5
5
  "license": "LGPL-2.1-or-later",
6
6
  "author": "Candy-649 (https://github.com/Candy-649)",