骑马与砍杀中文站论坛

 找回密码
 注册(Register!)

QQ登录

只需一步,快速开始

搜索
购买CDKEY 衣谷三国
查看: 1944|回复: 2

[原创] WSE2联网扩展系列5-接入AI,开启智能MOD时代

[复制链接]

24

主题

228

回帖

151

积分

见习骑士

Rank: 3

UID
3181770
第纳尔
1906
精华
0
互助
15
荣誉
0
贡献
10
魅力
170
注册时间
2020-5-5
鲜花(44) 鸡蛋(0)
发表于 2025-6-6 10:09:23 | 显示全部楼层 |阅读模式
本帖最后由 zz010606 于 2025-6-6 10:14 编辑

骑砍战团 × 大语言模型:开启智能MOD新时代
革命性整合:战团遇上AI大模型
通过send_post_message_to_url_advanced网络接口,我们确实可以将ChatGPT、DeepSeek等大语言模型接入Mount&Blade: Warband,这将彻底改变游戏体验:
核心实现路径
  • 中间件架构:本地/云端部署LLM代理服务
  • 异步通信:游戏→中间件→AI模型→返回结果
  • 上下文管理:维护对话历史和游戏状态上下文



AI赋能方向
1. 智能NPC对话系统
  • 动态生成符合角色设定的对话
  • 基于玩家声望/关系的差异化回应
  • 示例:土匪头目会根据你的战斗风格改变谈判策略

2. 自适应世界观构建
      根据基础设置自定义不同存档的各自世界观。世界观信息可以保存在本地服务的数据库中。这样保证存档信息同步

3. 智能外交系统
  • 实时计算阵营间的动态关系
  • 生成合理的外交事件链
  • 叛乱/联盟/背叛的AI推演

4. 个性化任务生成
  • 基于玩家行为动态生成任务
  • 任务后果的连锁反应计算
  • 商人/领主/匪徒的差异化任务逻辑

5. 动态经济系统模拟
  • 定期(如每游戏周)将经济数据发送至AI
  • 生成合理的市场价格波动、商品供需变化
  • 影响商队行为、城镇繁荣度

6. 玩家行为分析系统
  • 记录并学习玩家行为模式
  • 动态调整游戏难度曲线
  • 生成针对玩家弱点的特殊事件



下面来实操展示:
战团代码:
module_simple_trigger.py

  1. (1,[
  2.       (display_message,"@我 :你 是 织 田 信 长 , 我 是 秀 吉 啊 , 主 公 , 我 们 接 下 来 要 攻 打 何 地 ?"),
  3.       (send_post_message_to_url_advanced,"@http://localhost/tst",s0,"@content=我 :你 是 织 田 信 长 , 我 是 秀 吉 啊 , 主 公 , 我 们 接 下 来 要 攻 打 何 地 ?","script_network_test_success", "script_gekokujo_network_fail", 0),
  4.   ])
复制代码
module_script.py中添加这样的代码



  1. #网络测试成功回调
  2.     ("network_test_success",[
  3.       (display_message,"@接 收 成 功: {s0}")
  4.       

  5.     ]),
复制代码


服务器端我们依旧选择python的flask框架负责做本地部署服务
我自己用的是火山方舟语言模型中的Doubao-lite-4k,适合角色扮演,回复速度块,官方提供API接入接口,可以自己搜索进去看
代码如下:


  1. # -*- coding: utf-8 -*-

  2. import time

  3. from flask import Flask,request

  4. app = Flask(__name__)




  5. from openai import OpenAI

  6. # 请确保您已将 API Key 存储在环境变量 ARK_API_KEY 中
  7. # 初始化Openai客户端,从环境变量中读取您的API Key
  8. client = OpenAI(
  9.     # 此为默认路径,您可根据业务所在地域进行配置
  10.     base_url="https://ark.cn-beijing.volces.com/api/v3",
  11.     api_key="xxxxxx",#改成你自己的APIKeY
  12. )

  13. # Non-streaming:

  14. @app.route('/tst',methods=['GET', 'POST'])
  15. def hello():
  16.     request_content = request.form.get('content', type=str)
  17.    
  18.     print("----- standard request -----")
  19.     completion = client.chat.completions.create(
  20.         model="doubao-lite-4k-character-240828",
  21.         messages=[
  22.             {"role": "system", "content": "你是人工智能助手"},
  23.             {"role": "user", "content": request_content},
  24.         ],
  25.     )
  26.     response_content = completion.choices[0].message.content
  27.    
  28.     # 在中文后面添加空格
  29.     processed_content = ""
  30.     for char in response_content:
  31.         processed_content += char
  32.         # 如果是中文字符(Unicode范围),在后面添加空格
  33.         if '\u4e00' <= char <= '\u9fff':
  34.             processed_content += ' '
  35.    
  36.     print(processed_content)
  37.     return processed_content

  38. if __name__ == '__main__':
  39.     # 注意:在Linux/Mac上需要sudo权限才能使用80端口
  40.     app.run(host='0.0.0.0', port=80)
复制代码






b6ddf70e-af90-473b-b27f-d8fe6a7a85e4.png

鲜花鸡蛋

黑暗路西法  在2025-6-6 10:47  送朵鲜花  并说:好汉

34

主题

1001

回帖

2556

积分

子爵[版主]

Rank: 7Rank: 7Rank: 7

UID
2755938
第纳尔
6288
精华
12
互助
13
荣誉
98
贡献
85
魅力
265
注册时间
2016-7-5

骑砍中文站APP会员勋章骑士美德之忠诚勋章[杰出会员精华勋章]骑士美德之英勇勋章[杰出会员活跃勋章]骑士美德之正义勋章[杰出会员荣誉勋章]元老骑士勋章

鲜花(250) 鸡蛋(0)
发表于 2025-6-6 11:09:12 来自手机 | 显示全部楼层
技术区热闹了

5

主题

3023

回帖

943

积分

骑士

Rank: 4Rank: 4

UID
86936
第纳尔
12666
精华
0
互助
5
荣誉
1
贡献
0
魅力
71
注册时间
2008-8-10

原版正版勋章战团正版勋章元老骑士勋章汉匈决战正版勋章维京征服正版勋章霸主正版勋章

鲜花(65) 鸡蛋(1)
发表于 2025-6-6 14:17:19 | 显示全部楼层
要是想和智能NPC调情、说点儿骚话,估计就不行了。
也许可以在自己的其他电脑上搭建一个本地AI,这样就不怕被封了~
您需要登录后才可以回帖 登录 | 注册(Register!)

本版积分规则

Archiver|手机版|小黑屋|骑马与砍杀中文站

GMT+8, 2025-9-4 09:47 , Processed in 0.096419 second(s), 24 queries , Gzip On, MemCached On.

Powered by Discuz! X3.4 Licensed

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表