• 注册
  • Bug修复教程 Bug修复教程 关注:1912 内容:54

    关于同时安装大红mod和更多战利品mod导致的物品id70715160000冲突问题的解决方案

  • 查看作者
  • 打赏作者
  • 3
  • Bug修复教程
  • 圆转纯熟

    更多大红mod(站内):https://sns.oddba.cn/192972.html

    增加地图物资数量mod:https://forge.sp-tarkov.com/mod/1619/lots-of-loot-redux

    问题原因:

    大红mod的 looseLootData.json 文件数据有问题 — 所有 items 的 _id 都被错误地设成了同一个值 70715160000 ,而每个 spawn point 内的每个条目都应该有 唯一 的 _id 。

    修复方式:

    1:只保留其中一个mod

    2:将问题文件(路径:SPT\user\mods\InjectorInspectServer\db\Items)的每处重复的 _id 替换为唯一递增 ID,建议使用ai协助操作(楼主使用的是deepseek),为了避免违反网站规则,此贴不提供修复后的文件。

    修复后测试:

    目前只在森林中进行过进图测试。修复前进图时加载会出现错误:

    Error handling request: /client/match/local/start
    An item with the same key has already been added. Key: 70715160000
      at
    DMD<DMD<>?40016534::SPTarkov.Server.Core.Services.LocationLifecycleService::StartLocalRaid>(LocationLifecycleService
    this, MongoId sessionId, StartLocalRaidRequestData request)
      at
    SyncProxy<SPTarkov.Server.Core.Models.Eft.Match.StartLocalRaidResponseData

    SPTarkov.Server.Core.Services.LocationLifecycleService:StartLocalRaid(SPTarkov.Server.Core.Models.Common.MongoId,

    SPTarkov.Server.Core.Models.Eft.Match.StartLocalRaidRequestData)>(LocationLifecycleService
    , MongoId , StartLocalRaidRequestData )
      at
    SPTarkov.Server.Core.Controllers.MatchController.StartLocalRaid(MongoId
    sessionId, StartLocalRaidRequestData request)
      at
    SPTarkov.Server.Core.Callbacks.MatchCallbacks.StartLocalRaid(String url,
    StartLocalRaidRequestData info, MongoId sessionID)
      at
    SPTarkov.Server.Core.Routers.Static.MatchStaticRouter.<>c__DisplayClass0_0.<<-ctor>b__26>d.MoveNext()
    — End of stack trace from previous location —
      at
    SPTarkov.Server.Core.DI.RouteAction`1.<>c__DisplayClass0_0.<<-ctor>b__0>d.MoveNext()
    — End of stack trace from previous location —
      at SPTarkov.Server.Core.DI.StaticRouter.HandleStatic(String url,
    String body, MongoId sessionId, String output)
      at SPTarkov.Server.Core.Routers.HttpRouter.HandleRoute(HttpRequest
    request, MongoId sessionID, ResponseWrapper wrapper, IEnumerable`1
    routers, Boolean dynamic, String body)
      at SPTarkov.Server.Core.Routers.HttpRouter.GetResponse(HttpRequest
    req, MongoId sessionID, String body)
      at
    SPTarkov.Server.Core.Servers.Http.SptHttpListener.GetResponse(MongoId
    sessionId, HttpContext context, String body)
      at SPTarkov.Server.Core.Servers.Http.SptHttpListener.Handle(MongoId
    sessionId, HttpContext context)
      at SPTarkov.Server.Core.Servers.HttpServer.HandleRequest(HttpContext
    context, RequestDelegate next)
      at
    SPTarkov.Server.Program.<>c.<<ConfigureWebApp>b__3_0>d.MoveNext()
    — End of stack trace from previous location —
      at
    SPTarkov.Server.Services.NoGCRegionMiddleware.InvokeAsync(HttpContext
    context)
      at SPTarkov.Server.Logger.SptLoggerMiddleware.InvokeAsync(HttpContext
    context)

    修复后未出现报错,能够正常进图,但是否会影响大红mod的刷率尚未测试,本贴会在测试后持续更新。

    登堂入室

    人工智能做了一个脚本,用处是批量修改其中的错误重复的id,目前测试游戏战局已经正常能进

    用法是把文件放到游戏根目录里,在上方的目录栏里面输入cmd,在弹出来的黑框窗口里面输入

    Python fix_ids.py

    通过网盘分享的文件:fix_ids.py

    链接: https://pan.baidu.com/s/1Jxgqtq2JBUVxNAZBE2TdtA?pwd=6666 提取码: 6666


    回复
    圆转纯熟
    打赏了@895623po013金币
    回复
    登堂入室


    │ bundles.json

    │ 许可

    │ TarkovRareCollectibles.deps.json

    │ TarkovRareCollectibles.dll

    │ 塔可夫稀有收藏品.pdb

    │ TarkovRareCollectibles.staticwebassets.endpoints.json

    ├─ 束

    ├─config

    │ config.json

    └─db

    └─物品

    hallofFameData.json

    itemData.json <-------

    itemIdLookup.json

    looseLootData.json

    staticLootData.json

    staticLootTemplate.json

    traderData.json

    另外,在使用物品编辑器的时候如果遇到只有 id 没有长名短名和描述的时候,去 itemData.json里面把所有描述语言id从ch改成cn


    回复

    请登录之后再进行评论

    登录
    离线版教程
  • 今日 0
  • 内容 1098
  • 关注 1912
  • 聊天
    关注 0

    【招募】GRIFFIN TKF项目开工 期待你的加入 || 你是否想加入格里芬书写自己与人形的故事

    捐助我们

    • 微信
    • 支付宝
  • 签到
  • 任务
  • 发布
  • 模式切换
  • 偏好设置
  • 帖子间隔 侧栏位置: