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

SpaceNinjaServer

A simple server for a small space ninja game

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

XFEstudio/SpaceNinjaServer

chore: U5.2 mod data (#3944)

Reviewed-on: https://onlyg.it/OpenWF/SpaceNinjaServer/pulls/3944 Reviewed-by: Sainan <63328889+sainan@users.noreply.github.com> Co-authored-by: AMelonInsideLemon <166175391+AMelonInsideLemon@users.noreply.github.com> Co-committed-by: AMelonInsideLemon <166175391+AMelonInsideLemon@users.noreply.github.com>

0c197c51
AMelonInsideLemon <166175391+AMelonInsideLemon@users.noreply.github.com>
提交于

代码差异

4 个文件 +167 -7
Modified src/constants/gameToBuildVersion.ts +3 -1
@@ -68,6 +68,8 @@ const gameToBuildVersion = {
68 68 "9.1.0": "2013.07.13.03.21",
69 69 "8.3.0": "2013.07.04.20.17",
70 70 "8.0.0": "2013.05.23.16.06",
71 "7.3.0": "2013.03.25.11.45"
71 "7.3.0": "2013.03.25.11.45",
72 "5.2.0": "2013.01.04.10.41",
73 "5.1.0": "2012.12.31.16.20"
72 74 } as const;
73 75 export default gameToBuildVersion as Record<keyof typeof gameToBuildVersion, string>;
Modified src/controllers/api/inventoryController.ts +5 -0
@@ -933,6 +933,11 @@ export const getInventoryResponse = async (
933 933 "/Lotus/Upgrades/Modules/OrokinWarframeModule",
934 934 "/Lotus/Upgrades/Modules/Crafted/IncendiaryRifleMod"
935 935 ];
936
937 if (version_compare(buildLabel, gameToBuildVersion["5.2.0"]) >= 0) {
938 allowedMods.push("/Lotus/Upgrades/Modules/TennoSwordModule");
939 }
940
936 941 inventoryResponse.RawUpgrades = inventoryResponse.RawUpgrades.filter(x =>
937 942 allowedMods.includes(x.ItemType)
938 943 );
Modified src/services/itemDataService.ts +148 -4
@@ -1105,6 +1105,150 @@ export const U5Modules: Record<string, IU5FingerprintData> = {
1105 1105 { number: 1, rarity: "COMMON" },
1106 1106 { number: 1, rarity: "RARE" }
1107 1107 ]
1108 },
1109 "/Lotus/Upgrades/Modules/TennoSwordModule": {
1110 fits: [
1111 {
1112 type: "/Lotus/Weapons/Tenno/Melee/DualShortSword/DualShortSword",
1113 rarity: "UNCOMMON"
1114 },
1115 {
1116 type: "/Lotus/Weapons/Tenno/Melee/LongSword/LongSword",
1117 rarity: "UNCOMMON"
1118 },
1119 {
1120 type: "/Lotus/Weapons/Tenno/Melee/Staff/Staff",
1121 rarity: "UNCOMMON"
1122 },
1123 {
1124 type: "/Lotus/Types/Game/LotusMeleeWeapon",
1125 rarity: "COMMON"
1126 }
1127 ],
1128 upgrades: [
1129 {
1130 type: "WEAPON_MELEE_DAMAGE",
1131 operation: "MULTIPLY",
1132 valueRarity: {
1133 COMMON: [1.05, 1.15],
1134 UNCOMMON: [1.075, 1.25],
1135 RARE: [1.15, 1.5]
1136 },
1137 rarity: "COMMON"
1138 },
1139 {
1140 type: "WEAPON_FIRE_DAMAGE",
1141 operation: "ADD",
1142 valueRarity: {
1143 COMMON: [0.05, 0.15],
1144 UNCOMMON: [0.075, 0.25],
1145 RARE: [0.1, 0.5]
1146 },
1147 rarity: "RARE",
1148 displayAsPercent: true
1149 },
1150 {
1151 type: "WEAPON_ELECTRICITY_DAMAGE",
1152 operation: "ADD",
1153 valueRarity: {
1154 COMMON: [0.05, 0.15],
1155 UNCOMMON: [0.075, 0.25],
1156 RARE: [0.1, 0.5]
1157 },
1158 rarity: "COMMON",
1159 displayAsPercent: true
1160 },
1161 {
1162 type: "WEAPON_FREEZE_DAMAGE",
1163 operation: "ADD",
1164 valueRarity: {
1165 COMMON: [0.05, 0.15],
1166 UNCOMMON: [0.075, 0.25],
1167 RARE: [0.1, 0.5]
1168 },
1169 rarity: "COMMON",
1170 displayAsPercent: true
1171 },
1172 {
1173 type: "WEAPON_ARMOR_PIERCING_DAMAGE",
1174 operation: "ADD",
1175 valueRarity: {
1176 COMMON: [0.05, 0.15],
1177 UNCOMMON: [0.075, 0.25],
1178 RARE: [0.1, 0.5]
1179 },
1180 rarity: "COMMON",
1181 displayAsPercent: true
1182 },
1183 {
1184 type: "WEAPON_STUN_CHANCE",
1185 operation: "ADD",
1186 valueRarity: {
1187 COMMON: [0.05, 0.1],
1188 UNCOMMON: [0.1, 0.2],
1189 RARE: [0.2, 0.4]
1190 },
1191 rarity: "UNCOMMON",
1192 displayAsPercent: true
1193 },
1194 {
1195 type: "WEAPON_CRIT_CHANCE",
1196 operation: "ADD",
1197 valueRarity: {
1198 COMMON: [0.01, 0.1],
1199 UNCOMMON: [0.02, 0.15],
1200 RARE: [0.05, 0.25]
1201 },
1202 rarity: "COMMON",
1203 displayAsPercent: true
1204 },
1205 {
1206 type: "WEAPON_CRIT_DAMAGE",
1207 operation: "ADD",
1208 valueRarity: {
1209 COMMON: [0.05, 1],
1210 UNCOMMON: [0.1, 1.5],
1211 RARE: [0.2, 2]
1212 },
1213 rarity: "COMMON",
1214 displayAsPercent: true
1215 },
1216 {
1217 type: "WEAPON_MELEE_HEAVY_DAMAGE",
1218 operation: "MULTIPLY",
1219 valueRarity: {
1220 COMMON: [1.025, 1.25],
1221 UNCOMMON: [1.05, 1.5],
1222 RARE: [1.15, 1.75]
1223 },
1224 rarity: "UNCOMMON"
1225 },
1226 {
1227 type: "WEAPON_MELEE_CHARGE_RATE",
1228 operation: "ADD",
1229 valueRarity: {
1230 COMMON: [0.025, 0.3],
1231 UNCOMMON: [0.05, 0.4],
1232 RARE: [0.1, 0.5]
1233 },
1234 rarity: "UNCOMMON",
1235 displayAsPercent: true
1236 },
1237 {
1238 type: "WEAPON_FIRE_RATE",
1239 operation: "MULTIPLY",
1240 valueRarity: {
1241 COMMON: [1.05, 1.15],
1242 UNCOMMON: [1.075, 1.35],
1243 RARE: [1.1, 1.5]
1244 },
1245 rarity: "UNCOMMON"
1246 }
1247 ],
1248 numUpgrades: [
1249 { number: 1, rarity: "COMMON" },
1250 { number: 1, rarity: "RARE" }
1251 ]
1108 1252 }
1109 1253 };
1110 1254
@@ -1549,10 +1693,10 @@ export const getBoosterPack = async (
1549 1693 { Item: "/Lotus/Types/Keys/OrokinKeyE", Rarity: "RARE", Amount: 1 }
1550 1694 ],
1551 1695 rarityWeightsPerRoll: [
1552 { COMMON: 1, UNCOMMON: 0.050000001, RARE: 0.0099999998, LEGENDARY: 0 },
1553 { COMMON: 1, UNCOMMON: 0.25, RARE: 0.050000001, LEGENDARY: 0 },
1554 { COMMON: 1, UNCOMMON: 0.25, RARE: 0.050000001, LEGENDARY: 0 },
1555 { COMMON: 1, UNCOMMON: 0.25, RARE: 0.050000001, LEGENDARY: 0 },
1696 { COMMON: 1, UNCOMMON: 0.05, RARE: 0.01, LEGENDARY: 0 },
1697 { COMMON: 1, UNCOMMON: 0.25, RARE: 0.05, LEGENDARY: 0 },
1698 { COMMON: 1, UNCOMMON: 0.25, RARE: 0.05, LEGENDARY: 0 },
1699 { COMMON: 1, UNCOMMON: 0.25, RARE: 0.05, LEGENDARY: 0 },
1556 1700 { COMMON: 1, UNCOMMON: 0.25, RARE: 0.1, LEGENDARY: 0 }
1557 1701 ],
1558 1702 canGiveDuplicates: true,
Modified static/webui/script.js +11 -2
@@ -1110,7 +1110,11 @@ function fetchItemList() {
1110 1110 "/Lotus/Language/Suits/RiftWalkAbilityName": loc("code_RiftWalkAbilityName"),
1111 1111 "/Lotus/Upgrades/Modules/GrineerMeleeModule": loc("code_U5Mod").replace(
1112 1112 "|TYPE|",
1113 loc("code_melee")
1113 loc("code_melee") + " [GrineerMeleeModule]"
1114 ),
1115 "/Lotus/Upgrades/Modules/TennoSwordModule": loc("code_U5Mod").replace(
1116 "|TYPE|",
1117 loc("code_melee") + " [TennoSwordModule]"
1114 1118 ),
1115 1119
1116 1120 "/Lotus/Upgrades/Modules/GrineerPistolModule": loc("code_U5Mod").replace(
@@ -1281,6 +1285,7 @@ const U5Mods = [
1281 1285 "/Lotus/Upgrades/Modules/GrineerRifleModule",
1282 1286 "/Lotus/Upgrades/Modules/GrineerShotgunModule",
1283 1287 "/Lotus/Upgrades/Modules/OrokinWarframeModule",
1288 "/Lotus/Upgrades/Modules/TennoSwordModule",
1284 1289 "/Lotus/Upgrades/Modules/Crafted/IncendiaryRifleMod"
1285 1290 ];
1286 1291
@@ -1936,6 +1941,9 @@ single.getRoute("/webui/mods").on("beforeload", async function () {
1936 1941 itemMap[fingerprint.fits]?.name ?? fingerprint.fits
1937 1942 );
1938 1943 }
1944 if (item.ItemType.endsWith("GrineerMeleeModule") || item.ItemType.endsWith("TennoSwordModule")) {
1945 td.textContent += " [" + item.ItemType.split("/").pop() + "]";
1946 }
1939 1947 }
1940 1948 }
1941 1949 if (itemMap[item.ItemType]?.badReason == "notraw") {
@@ -5330,7 +5338,8 @@ function createUpgradeInput(targetDiv, itemMap, itemType, upgrade) {
5330 5338 const option = document.createElement("option");
5331 5339 option.value = up.type;
5332 5340 const locType =
5333 itemType.endsWith("GrineerMeleeModule") && up.type == "WEAPON_FIRE_RATE"
5341 (itemType.endsWith("GrineerMeleeModule") || itemType.endsWith("TennoSwordModule")) &&
5342 up.type == "WEAPON_FIRE_RATE"
5334 5343 ? "WEAPON_MELEE_FIRE_RATE"
5335 5344 : up.type;
5336 5345 option.textContent = loc(locType);