XFE Git
XFE Studio Git
Git 首页 全局搜索
XFE 主站 文档 NuGet

XFESpaceNinjaServer

A simple server for a small space ninja game

公开
关注 0 Fork 0 Star 0
返回提交历史

XFEstudio/XFESpaceNinjaServer

fix: not being able to talk to Nakak in Cetus (#336)

7c47c9f1
Sainan <sainan@calamity.gg>
提交于

代码差异

3 个文件 +310 -0
Added src/controllers/api/getVendorInfoController.ts +7 -0
@@ -0,0 +1,7 @@
1 import { RequestHandler } from "express";
2 import getVendorInfoResponse from "@/static/fixed_responses/getVendorInfo.json";
3
4 export const getVendorInfoController: RequestHandler = (req, res) => {
5 console.assert(req.query.vendor == "/Lotus/Types/Game/VendorManifests/Ostron/MaskSalesmanManifest");
6 res.json(getVendorInfoResponse);
7 };
Modified src/routes/api.ts +2 -0
@@ -21,6 +21,7 @@ import { getGuildLogController } from "../controllers/api/getGuildLogController"
21 21 import { getIgnoredUsersController } from "@/src/controllers/api/getIgnoredUsersController";
22 22 import { getNewRewardSeedController } from "@/src/controllers/api/getNewRewardSeedController";
23 23 import { getShipController } from "@/src/controllers/api/getShipController";
24 import { getVendorInfoController } from "@/src/controllers/api/getVendorInfoController";
24 25 import { guildTechController } from "../controllers/api/guildTechController";
25 26 import { hostSessionController } from "@/src/controllers/api/hostSessionController";
26 27 import { hubController } from "@/src/controllers/api/hubController";
@@ -77,6 +78,7 @@ apiRouter.get("/getGuildLog.php", getGuildLogController);
77 78 apiRouter.get("/getIgnoredUsers.php", getIgnoredUsersController);
78 79 apiRouter.get("/getNewRewardSeed.php", getNewRewardSeedController);
79 80 apiRouter.get("/getShip.php", getShipController);
81 apiRouter.get("/getVendorInfo.php", getVendorInfoController);
80 82 apiRouter.get("/hub", hubController);
81 83 apiRouter.get("/hubInstances", hubInstancesController);
82 84 apiRouter.get("/inbox.php", inboxController);
Added static/fixed_responses/getVendorInfo.json +301 -0
@@ -0,0 +1,301 @@
1 {
2 "VendorInfo": {
3 "_id": {
4 "$oid": "598a090d9a4a313746fd1f24"
5 },
6 "TypeName": "/Lotus/Types/Game/VendorManifests/Ostron/MaskSalesmanManifest",
7 "ItemManifest": [
8 {
9 "StoreItem": "/Lotus/StoreItems/Upgrades/Skins/Ostron/RevenantMask",
10 "ItemPrices": [
11 {
12 "ItemCount": 1,
13 "ItemType": "/Lotus/Types/Gameplay/Eidolon/Resources/CetusWispItem",
14 "ProductCategory": "MiscItems"
15 }
16 ],
17 "Bin": "BIN_0",
18 "QuantityMultiplier": 1,
19 "Expiry": {
20 "$date": {
21 "$numberLong": "9999999000000"
22 }
23 },
24 "AllowMultipurchase": true,
25 "Id": {
26 "$oid": "63ed01ef4c37f93d0b797674"
27 }
28 },
29 {
30 "StoreItem": "/Lotus/StoreItems/Types/Items/ShipDecos/Plushies/PlushyThumper",
31 "ItemPrices": [
32 {
33 "ItemCount": 2,
34 "ItemType": "/Lotus/Types/Gameplay/Eidolon/Resources/CetusWispItem",
35 "ProductCategory": "MiscItems"
36 },
37 {
38 "ItemType": "/Lotus/Types/Items/Fish/Eidolon/FishParts/BothUncommonFishBPartItem",
39 "ItemCount": 10,
40 "ProductCategory": "MiscItems"
41 },
42 {
43 "ItemType": "/Lotus/Types/Gameplay/Eidolon/Resources/NistlebrushItem",
44 "ItemCount": 10,
45 "ProductCategory": "MiscItems"
46 },
47 {
48 "ItemType": "/Lotus/Types/Items/Gems/Eidolon/CommonOreAAlloyAItem",
49 "ItemCount": 32,
50 "ProductCategory": "MiscItems"
51 }
52 ],
53 "Bin": "BIN_0",
54 "QuantityMultiplier": 1,
55 "Expiry": {
56 "$date": {
57 "$numberLong": "9999999000000"
58 }
59 },
60 "AllowMultipurchase": true,
61 "Id": {
62 "$oid": "63ed01ef4c37f93d0b797675"
63 }
64 },
65 {
66 "StoreItem": "/Lotus/StoreItems/Types/Items/ShipDecos/Plushies/PlushyThumperMedium",
67 "ItemPrices": [
68 {
69 "ItemCount": 4,
70 "ItemType": "/Lotus/Types/Gameplay/Eidolon/Resources/CetusWispItem",
71 "ProductCategory": "MiscItems"
72 },
73 {
74 "ItemType": "/Lotus/Types/Items/Gems/Eidolon/CommonGemBCutAItem",
75 "ItemCount": 24,
76 "ProductCategory": "MiscItems"
77 },
78 {
79 "ItemType": "/Lotus/Types/Items/Fish/Eidolon/FishParts/BothUncommonFishAPartItem",
80 "ItemCount": 18,
81 "ProductCategory": "MiscItems"
82 },
83 {
84 "ItemType": "/Lotus/Types/Items/Fish/Eidolon/FishParts/BothUncommonFishBPartItem",
85 "ItemCount": 27,
86 "ProductCategory": "MiscItems"
87 }
88 ],
89 "Bin": "BIN_1",
90 "QuantityMultiplier": 1,
91 "Expiry": {
92 "$date": {
93 "$numberLong": "9999999000000"
94 }
95 },
96 "AllowMultipurchase": true,
97 "Id": {
98 "$oid": "63ed01ef4c37f93d0b797676"
99 }
100 },
101 {
102 "StoreItem": "/Lotus/StoreItems/Types/Items/ShipDecos/Plushies/PlushyThumperLarge",
103 "ItemPrices": [
104 {
105 "ItemCount": 6,
106 "ItemType": "/Lotus/Types/Gameplay/Eidolon/Resources/CetusWispItem",
107 "ProductCategory": "MiscItems"
108 },
109 {
110 "ItemType": "/Lotus/Types/Items/Gems/Eidolon/CommonGemACutAItem",
111 "ItemCount": 35,
112 "ProductCategory": "MiscItems"
113 },
114 {
115 "ItemType": "/Lotus/Types/Items/Fish/Eidolon/FishParts/BothCommonFishAPartItem",
116 "ItemCount": 95,
117 "ProductCategory": "MiscItems"
118 },
119 {
120 "ItemType": "/Lotus/Types/Gameplay/Eidolon/Resources/NistlebrushItem",
121 "ItemCount": 60,
122 "ProductCategory": "MiscItems"
123 }
124 ],
125 "Bin": "BIN_0",
126 "QuantityMultiplier": 1,
127 "Expiry": {
128 "$date": {
129 "$numberLong": "9999999000000"
130 }
131 },
132 "AllowMultipurchase": true,
133 "Id": {
134 "$oid": "63ed01ef4c37f93d0b797677"
135 }
136 },
137 {
138 "StoreItem": "/Lotus/StoreItems/Types/Recipes/SynthicatorRecipes/FlareBlueBlueprint",
139 "ItemPrices": [
140 {
141 "ItemType": "/Lotus/Types/Items/Fish/Eidolon/FishParts/BothUncommonFishBPartItem",
142 "ItemCount": 10,
143 "ProductCategory": "MiscItems"
144 },
145 {
146 "ItemType": "/Lotus/Types/Items/Fish/Eidolon/FishParts/DayCommonFishCPartItem",
147 "ItemCount": 10,
148 "ProductCategory": "MiscItems"
149 }
150 ],
151 "Bin": "BIN_0",
152 "QuantityMultiplier": 1,
153 "Expiry": {
154 "$date": {
155 "$numberLong": "9999999000000"
156 }
157 },
158 "AllowMultipurchase": true,
159 "Id": {
160 "$oid": "6651291214e90115b91b50a1"
161 }
162 },
163 {
164 "StoreItem": "/Lotus/StoreItems/Types/Recipes/SynthicatorRecipes/FlareRedBlueprint",
165 "ItemPrices": [
166 {
167 "ItemType": "/Lotus/Types/Items/Gems/Eidolon/CommonOreAAlloyAItem",
168 "ItemCount": 37,
169 "ProductCategory": "MiscItems"
170 },
171 {
172 "ItemType": "/Lotus/Types/Items/Fish/Eidolon/FishParts/BothUncommonFishAPartItem",
173 "ItemCount": 7,
174 "ProductCategory": "MiscItems"
175 }
176 ],
177 "Bin": "BIN_0",
178 "QuantityMultiplier": 1,
179 "Expiry": {
180 "$date": {
181 "$numberLong": "9999999000000"
182 }
183 },
184 "AllowMultipurchase": true,
185 "Id": {
186 "$oid": "6651291214e90115b91b50a2"
187 }
188 },
189 {
190 "StoreItem": "/Lotus/StoreItems/Upgrades/Skins/Ostron/VoltMask",
191 "ItemPrices": [
192 {
193 "ItemType": "/Lotus/Types/Items/Gems/Eidolon/CommonOreBAlloyBItem",
194 "ItemCount": 34,
195 "ProductCategory": "MiscItems"
196 },
197 {
198 "ItemType": "/Lotus/Types/Gameplay/Eidolon/Resources/GrokdrulItem",
199 "ItemCount": 17,
200 "ProductCategory": "MiscItems"
201 }
202 ],
203 "Bin": "BIN_0",
204 "QuantityMultiplier": 1,
205 "Expiry": {
206 "$date": {
207 "$numberLong": "9999999000000"
208 }
209 },
210 "AllowMultipurchase": true,
211 "Id": {
212 "$oid": "6651291214e90115b91b50a3"
213 }
214 },
215 {
216 "StoreItem": "/Lotus/StoreItems/Upgrades/Skins/Ostron/MagMask",
217 "ItemPrices": [
218 {
219 "ItemType": "/Lotus/Types/Items/Fish/Eidolon/FishParts/DayCommonFishBPartItem",
220 "ItemCount": 16,
221 "ProductCategory": "MiscItems"
222 },
223 {
224 "ItemType": "/Lotus/Types/Gameplay/Eidolon/Resources/ForestRodentPartItem",
225 "ItemCount": 5,
226 "ProductCategory": "MiscItems"
227 }
228 ],
229 "Bin": "BIN_0",
230 "QuantityMultiplier": 1,
231 "Expiry": {
232 "$date": {
233 "$numberLong": "9999999000000"
234 }
235 },
236 "AllowMultipurchase": true,
237 "Id": {
238 "$oid": "6651291214e90115b91b50a4"
239 }
240 },
241 {
242 "StoreItem": "/Lotus/StoreItems/Upgrades/Skins/Ostron/ExcaliburMask",
243 "ItemPrices": [
244 {
245 "ItemType": "/Lotus/Types/Gameplay/Eidolon/Resources/BirdOfPreyPartItem",
246 "ItemCount": 5,
247 "ProductCategory": "MiscItems"
248 },
249 {
250 "ItemType": "/Lotus/Types/Gameplay/Eidolon/Resources/GrokdrulItem",
251 "ItemCount": 20,
252 "ProductCategory": "MiscItems"
253 }
254 ],
255 "Bin": "BIN_0",
256 "QuantityMultiplier": 1,
257 "Expiry": {
258 "$date": {
259 "$numberLong": "9999999000000"
260 }
261 },
262 "AllowMultipurchase": true,
263 "Id": {
264 "$oid": "6651291214e90115b91b50a5"
265 }
266 },
267 {
268 "StoreItem": "/Lotus/StoreItems/Upgrades/Skins/Ostron/GrineerMask",
269 "ItemPrices": [
270 {
271 "ItemType": "/Lotus/Types/Items/Fish/Eidolon/FishParts/DayCommonFishBPartItem",
272 "ItemCount": 20,
273 "ProductCategory": "MiscItems"
274 },
275 {
276 "ItemType": "/Lotus/Types/Items/Gems/Eidolon/CommonOreAAlloyAItem",
277 "ItemCount": 31,
278 "ProductCategory": "MiscItems"
279 }
280 ],
281 "Bin": "BIN_1",
282 "QuantityMultiplier": 1,
283 "Expiry": {
284 "$date": {
285 "$numberLong": "9999999000000"
286 }
287 },
288 "AllowMultipurchase": true,
289 "Id": {
290 "$oid": "6651291214e90115b91b50a6"
291 }
292 }
293 ],
294 "PropertyTextHash": "6AACA376DA34B35B5C16F1B40DBC017D",
295 "Expiry": {
296 "$date": {
297 "$numberLong": "9999999000000"
298 }
299 }
300 }
301 }