-
吾今有世家存档修改器 Python版本
内容已失效,年代久远,后续没再继续玩了。 #!/usr/bin/env python3 # -*- coding: utf-8 -*- """ 吾今有世家游戏存档修改器 用于修改GameData.es3文件中的游戏数据 作者: SnowZ 版本: 2.3.1 日期: 2025 """ import json import tkinter as tk from tkinter import ttk, filedialog, messagebox, scrolledtext import os import shutil from datetime import datetime class SaveEditor: """ 游戏存档修改器主类 提供图形界面来修改ES3格式的存档文件 """ def __init__(self): """ 初始化修改器界面和数据 """ self.root = tk.Tk() self.root.title("吾今有世家 - 游戏存档修改器 v2.3.1") self.root.geometry("1200x800") self.root.resizable(True, True) # 存档数据 self.game_data = None self.save_file_path = "" # 创建界面 self.create_widgets() # 尝试自动加载当前目录的GameData.es3 default_save = os.path.join(os.getcwd(), "GameData.es3") if os.path.exists(default_save): self.load_save_file(default_save) def create_widgets(self): """ 创建主界面组件 """ # 创建菜单栏 self.create_menu() # 创建主框架 main_frame = ttk.Frame(self.root) main_frame.pack(fill=tk.BOTH, expand=True, padx=10, pady=5) # 创建选项卡控件 self.notebook = ttk.Notebook(main_frame) self.notebook.pack(fill=tk.BOTH, expand=True) # 创建各个功能选项卡 self.create_character_tab() # 人物信息 self.create_family_tab() # 家族信息 self.create_noble_tab() # 世家信息 self.create_fief_tab() # 封地信息 self.create_military_tab() # 军事信息 self.create_economy_tab() # 经济信息 self.create_raw_data_tab() # 原始数据 # 状态栏 self.status_var = tk.StringVar() self.status_var.set("就绪 - 请加载存档文件") status_bar = ttk.Label(main_frame, textvariable=self.status_var, relief=tk.SUNKEN) status_bar.pack(side=tk.BOTTOM, fill=tk.X, pady=(5, 0)) def create_menu(self): """ 创建菜单栏 """ menubar = tk.Menu(self.root) self.root.config(menu=menubar) # 文件菜单 file_menu = tk.Menu(menubar, tearoff=0) menubar.add_cascade(label="文件(F)", menu=file_menu) file_menu.add_command(label="打开存档(O)", command=self.open_save_file, accelerator="Ctrl+O") file_menu.add_command(label="保存存档(S)", command=self.save_file, accelerator="Ctrl+S") file_menu.add_command(label="另存为(A)", command=self.save_as_file, accelerator="Ctrl+Shift+S") file_menu.add_separator() file_menu.add_command(label="备份存档(B)", command=self.backup_save_file) file_menu.add_separator() file_menu.add_command(label="退出(X)", command=self.root.quit) # 工具菜单 tools_menu = tk.Menu(menubar, tearoff=0) menubar.add_cascade(label="工具(T)", menu=tools_menu) tools_menu.add_command(label="验证数据完整性", command=self.validate_data) tools_menu.add_command(label="重置所有修改", command=self.reset_all_changes) # 帮助菜单 help_menu = tk.Menu(menubar, tearoff=0) menubar.add_cascade(label="帮助(H)", menu=help_menu) help_menu.add_command(label="使用说明", command=self.show_help) help_menu.add_command(label="关于", command=self.show_about)…- 213
- 0

