超级玩家
 
- 贡献度
- 62
- 金元
- 3620
- 积分
- 610
- 精华
- 0
- 注册时间
- 2011-11-23
|
本帖最后由 hizhj 于 2021-5-19 07:53 编辑
MOD制作心路历程

前置PS:对几个MOD的学习分析测试:
关于道路和单位经验增强MOD及文明6长城加强版MOD(二楼)的测试历程及个人体会
https://bbs.blacksheepgame.com/forum.php?mod=viewthread&tid=6173330&page=1&extra=#pid274270073

1、部分初始设置资料
SELECT *
FROM Improvements
WHERE ImprovementType="IMPROVEMENT_GREAT_WALL"
结果:
ImprovementType,Name,BarbarianCamp,PrereqTech,PrereqCivic,Buildable,Description,RemoveOnEntry,DispersalGold,PlunderType,PlunderAmount,Goody,TilesPerGoody,GoodyRange,Icon,TraitType,Housing,TilesRequired,SameAdjacentValid,RequiresRiver,EnforceTerrain,BuildInLine,CanBuildOutsideTerritory,BuildOnFrontier,AirSlots,DefenseModifier,GrantFortification,MinimumAppeal,Coast,YieldFromAppeal,WeaponSlots,ReligiousUnitHealRate,Appeal,OnePerCity,YieldFromAppealPercent,ValidAdjacentTerrainAmount,Domain,AdjacentSeaResource,RequiresAdjacentBonusOrLuxury,MovementChange,Workable,ImprovementOnRemove,GoodyNotify,NoAdjacentSpecialtyDistrict,RequiresAdjacentLuxury,AdjacentToLand,Removable,OnlyOpenBorders,Capturable
IMPROVEMENT_GREAT_WALL LOC_IMPROVEMENT_GREAT_WALL_NAME 0 1 LOC_IMPROVEMENT_GREAT_WALL_EXPANSION2_DESCRIPTION 0 0 PLUNDER_GOLD 50 0 ICON_IMPROVEMENT_GREAT_WALL TRAIT_CIVILIZATION_IMPROVEMENT_GREAT_WALL 3 1 1 0 0 0 1 0 0 8 4 0 0 0 0 0 100 0 DOMAIN_LAND 0 0 0 1 1 0 0 0 1 0 1
#
SELECT *
FROM Improvement_ValidBuildUnits
WHERE ImprovementType="IMPROVEMENT_GREAT_WALL";
结果:
ImprovementType UnitType ConsumesCharge ValidRepairOnly
IMPROVEMENT_GREAT_WALL UNIT_BUILDER 1 0
#
SELECT *
FROM Improvements_XP2
WHERE ImprovementType="IMPROVEMENT_GREAT_WALL";
结果:
ImprovementType,AllowImpassableMovement,BuildOnAdjacentPlot,PreventsDrought,DisasterResistant
IMPROVEMENT_GREAT_WALL 0 0 0 1
2、MyGreatWallEnhance.modinfo
<?xml version="1.0" encoding="utf-8"?>
<Mod id="6126d6cd-fedc-451b-aaa7-40f41988c5ee" version="1">
<Properties>
<Name>MyGreatWallEnhance</Name>
<Description>增加可以修建长城的地形、地貌;在资源上建长城不删除资源。</Description>
<Created>hizhj</Created>
<Teaser>长城增强</Teaser>
<Authors>hizhj</Authors>
<SpecialThanks>chenhuamin092</SpecialThanks>
<CompatibleVersions>1.2,2.0</CompatibleVersions>
</Properties>
<InGameActions>
<UpdateDatabase id="GreatWallEnhance">
<Properties>
<LoadOrder>200</LoadOrder>
</Properties>
<File>MyGreatWallEnhance-Improvements.xml</File>
</UpdateDatabase>
</InGameActions>
<Files>
<File>MyGreatWallEnhance-Improvements.xml</File>
</Files>
</Mod>
3、MyGreatWallEnhance-Improvements.xml
<?xml version="1.0" encoding="utf-8"?>
<!-- GameData1 -->
<!-- Author: hizhj -->
<!-- DateCreated: 2021/05/18 9:18:36 -->
<GameData>
<Improvements>
<Update>
<Where ImprovementType="IMPROVEMENT_GREAT_WALL"/>
<Set PrereqTech=NULL PlunderType="PLUNDER_GOLD" PlunderAmount="200" Housing="4" Buildable="1" Housing="4" TilesRequired="1" BuildInLine="0" CanBuildOutsideTerritory="1" BuildOnFrontier="0" DefenseModifier="8" GrantFortification="4" Workable="1" />
</Update>
</Improvements>
<!-- 增加可以修建在山脉上 不会被自然掠夺 -->
<Improvements_XP2>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" BuildOnAdjacentPlot="true" DisasterResistant="true"/>
</Improvements_XP2>
<!-- 有效地形 -->
<Improvement_ValidTerrains>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" TerrainType="TERRAIN_DESERT"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" TerrainType="TERRAIN_DESERT_HILLS"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" TerrainType="TERRAIN_DESERT_MOUNTAIN"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" TerrainType="TERRAIN_GRASS"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" TerrainType="TERRAIN_GRASS_HILLS"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" TerrainType="TERRAIN_GRASS_MOUNTAIN"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" TerrainType="TERRAIN_PLAINS"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" TerrainType="TERRAIN_PLAINS_HILLS"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" TerrainType="TERRAIN_PLAINS_MOUNTAIN"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" TerrainType="TERRAIN_SNOW"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" TerrainType="TERRAIN_SNOW_HILLS"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" TerrainType="TERRAIN_SNOW_MOUNTAIN"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" TerrainType="TERRAIN_TUNDRA"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" TerrainType="TERRAIN_TUNDRA_HILLS"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" TerrainType="TERRAIN_TUNDRA_MOUNTAIN"/>
</Improvement_ValidTerrains>
<!-- 有效地貌 -->
<Improvement_ValidFeatures>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" FeatureType="FEATURE_FLOODPLAINS_GRASSLAND"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" FeatureType="FEATURE_FLOODPLAINS_PLAINS"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" FeatureType="FEATURE_GEOTHERMAL_FISSURE"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" FeatureType="FEATURE_FLOODPLAINS"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" FeatureType="FEATURE_VOLCANIC_SOIL"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" FeatureType="FEATURE_OASIS"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" FeatureType="FEATURE_FOREST"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" FeatureType="FEATURE_JUNGLE"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" FeatureType="FEATURE_MARSH"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" FeatureType="FEATURE_BURNING_FOREST"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" FeatureType="FEATURE_BURNT_FOREST"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" FeatureType="FEATURE_BURNING_JUNGLE"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" FeatureType="FEATURE_BURNT_JUNGLE"/>
</Improvement_ValidFeatures>
<Improvement_ValidBuildUnits>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" UnitType="UNIT_BUILDER"/>
</Improvement_ValidBuildUnits>
<!-- 有效资源 修建在资源之上 -->
<Improvement_ValidResources>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" ResourceType="RESOURCE_WINE" MustRemoveFeature="false"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" ResourceType="RESOURCE_WHEAT" MustRemoveFeature="false"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" ResourceType="RESOURCE_WHALES" MustRemoveFeature="false"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" ResourceType="RESOURCE_URANIUM" MustRemoveFeature="false"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" ResourceType="RESOURCE_TURTLES" MustRemoveFeature="false"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" ResourceType="RESOURCE_TRUFFLES" MustRemoveFeature="false"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" ResourceType="RESOURCE_TOYS" MustRemoveFeature="false"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" ResourceType="RESOURCE_TOBACCO" MustRemoveFeature="false"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" ResourceType="RESOURCE_SUGAR" MustRemoveFeature="false"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" ResourceType="RESOURCE_STONE" MustRemoveFeature="false"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" ResourceType="RESOURCE_SPICES" MustRemoveFeature="false"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" ResourceType="RESOURCE_SILVER" MustRemoveFeature="false"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" ResourceType="RESOURCE_SILK" MustRemoveFeature="false"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" ResourceType="RESOURCE_SHIPWRECK" MustRemoveFeature="false"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" ResourceType="RESOURCE_SHEEP" MustRemoveFeature="false"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" ResourceType="RESOURCE_SALT" MustRemoveFeature="false"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" ResourceType="RESOURCE_RICE" MustRemoveFeature="false"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" ResourceType="RESOURCE_PERFUME" MustRemoveFeature="false"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" ResourceType="RESOURCE_PEARLS" MustRemoveFeature="false"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" ResourceType="RESOURCE_OLIVES" MustRemoveFeature="false"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" ResourceType="RESOURCE_OIL" MustRemoveFeature="false"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" ResourceType="RESOURCE_NITER" MustRemoveFeature="false"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" ResourceType="RESOURCE_MERCURY" MustRemoveFeature="false"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" ResourceType="RESOURCE_MARBLE" MustRemoveFeature="false"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" ResourceType="RESOURCE_MAIZE" MustRemoveFeature="false"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" ResourceType="RESOURCE_JEANS" MustRemoveFeature="false"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" ResourceType="RESOURCE_JADE" MustRemoveFeature="false"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" ResourceType="RESOURCE_IVORY" MustRemoveFeature="false"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" ResourceType="RESOURCE_IRON" MustRemoveFeature="false"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" ResourceType="RESOURCE_INCENSE" MustRemoveFeature="false"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" ResourceType="RESOURCE_HORSES" MustRemoveFeature="false"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" ResourceType="RESOURCE_HONEY" MustRemoveFeature="false"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" ResourceType="RESOURCE_GYPSUM" MustRemoveFeature="false"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" ResourceType="RESOURCE_FURS" MustRemoveFeature="false"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" ResourceType="RESOURCE_FISH" MustRemoveFeature="false"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" ResourceType="RESOURCE_DYES" MustRemoveFeature="false"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" ResourceType="RESOURCE_DIAMONDS" MustRemoveFeature="false"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" ResourceType="RESOURCE_DEER" MustRemoveFeature="false"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" ResourceType="RESOURCE_CRABS" MustRemoveFeature="false"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" ResourceType="RESOURCE_COTTON" MustRemoveFeature="false"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" ResourceType="RESOURCE_COSMETICS" MustRemoveFeature="false"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" ResourceType="RESOURCE_COPPER" MustRemoveFeature="false"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" ResourceType="RESOURCE_COFFEE" MustRemoveFeature="false"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" ResourceType="RESOURCE_COCOA" MustRemoveFeature="false"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" ResourceType="RESOURCE_COAL" MustRemoveFeature="false"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" ResourceType="RESOURCE_CLOVES" MustRemoveFeature="false"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" ResourceType="RESOURCE_CITRUS" MustRemoveFeature="false"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" ResourceType="RESOURCE_CINNAMON" MustRemoveFeature="false"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" ResourceType="RESOURCE_CATTLE" MustRemoveFeature="false"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" ResourceType="RESOURCE_BANANAS" MustRemoveFeature="false"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" ResourceType="RESOURCE_ANTIQUITY_SITE" MustRemoveFeature="false"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" ResourceType="RESOURCE_AMBER" MustRemoveFeature="false"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" ResourceType="RESOURCE_ALUMINUM" MustRemoveFeature="false"/>
</Improvement_ValidResources>
<!-- 产出 -->
<Improvement_YieldChanges>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" YieldType="YIELD_GOLD" YieldChange="5"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" YieldType="YIELD_FOOD" YieldChange="5"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" YieldType="YIELD_CULTURE" YieldChange="5"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" YieldType="YIELD_PRODUCTION" YieldChange="5"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" YieldType="YIELD_SCIENCE" YieldChange="5"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" YieldType="YIELD_FAITH" YieldChange="5"/>
</Improvement_YieldChanges>
<Improvement_Tourism>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" TourismSource="TOURISMSOURCE_CULTURE" PrereqTech="TECH_FLIGHT" ScalingFactor="200"/>
</Improvement_Tourism>
<Improvement_Adjacencies>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" YieldChangeId="Wall_Gold"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" YieldChangeId="Wall_Culture"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" YieldChangeId="Wall_Food"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" YieldChangeId="Wall_Production"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" YieldChangeId="Wall_Science"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" YieldChangeId="Wall_Faith"/>
</Improvement_Adjacencies>
<Adjacency_YieldChanges>
<Row ID="Wall_Gold" Description="Placeholder" YieldType="YIELD_GOLD" YieldChange="1" TilesRequired="1" AdjacentImprovement="IMPROVEMENT_GREAT_WALL" PrereqTech="TECH_MASONRY"/>
<Row ID="Wall_Culture" Description="Placeholder" YieldType="YIELD_CULTURE" YieldChange="1" TilesRequired="1" AdjacentImprovement="IMPROVEMENT_GREAT_WALL" PrereqTech="TECH_CASTLES"/>
<Row ID="Wall_Food" Description="Placeholder" YieldType="YIELD_FOOD" YieldChange="1" TilesRequired="1" AdjacentImprovement="IMPROVEMENT_GREAT_WALL" PrereqTech="TECH_MASONRY"/>
<Row ID="Wall_Production" Description="Placeholder" YieldType="YIELD_PRODUCTION" YieldChange="1" TilesRequired="1" AdjacentImprovement="IMPROVEMENT_GREAT_WALL" PrereqTech="TECH_CASTLES"/>
<Row ID="Wall_Science" Description="Placeholder" YieldType="YIELD_SCIENCE" YieldChange="1" TilesRequired="1" AdjacentImprovement="IMPROVEMENT_GREAT_WALL" PrereqTech="TECH_BRONZE_WORKING"/>
<Row ID="Wall_Faith" Description="Placeholder" YieldType="YIELD_FAITH" YieldChange="1" TilesRequired="1" AdjacentImprovement="IMPROVEMENT_GREAT_WALL" PrereqTech="TECH_ASTROLOGY"/>
</Adjacency_YieldChanges>
<Improvement_ValidBuildUnits>
<Replace ImprovementType="IMPROVEMENT_GREAT_WALL" UnitType="UNIT_BUILDER"/>
</Improvement_ValidBuildUnits>
</GameData>
4、测试
Database.log报告:
[2098715.926] [Localization]: StartupErrorMessages.xml
[2098715.926] [Localization]: Input XML does not contain database entry tags. GameData, GameInfo or Database
[2098720.448] [Localization]: Validating Foreign Key Constraints...
[2098720.449] [Localization]: Passed Validation.
[2098720.477] [Configuration]: Validating Foreign Key Constraints...
[2098720.478] [Configuration]: Passed Validation.
[2098721.466] [FullTextSearch]: Initializing FullTextSearch
[2098722.259] [Gameplay]: Validating Foreign Key Constraints...
[2098722.276] [Gameplay]: Passed Validation.
[2098723.625] [Configuration]: Validating Foreign Key Constraints...
[2098723.626] [Configuration]: Passed Validation.
[2098724.765] [HallofFame]: Database found. Checking versions...
[2098724.767] [HallofFame]: Database is up-to-date!
[2098739.375] [FullTextSearch]: FTS - Creating Context
[2098783.890] [Configuration]: Validating Foreign Key Constraints...
[2098783.891] [Configuration]: Passed Validation.
[2098790.268] [Gameplay]: Validating Foreign Key Constraints...
[2098790.297] [Gameplay]: Passed Validation.
[2098799.782] [FullTextSearch]: FTS - Creating Context
[2098799.783] [FullTextSearch]: FTS - Creating Context
[2098800.221] [FullTextSearch]: FTS - Creating Context
[2098800.699] [FullTextSearch]: FTS - Creating Context
[2098802.107] [FullTextSearch]: FTS - Creating Context
没有提示错误
#
SELECT * FROM Improvements WHERE ImprovementType="IMPROVEMENT_GREAT_WALL";
结果:
ImprovementType,Name,BarbarianCamp,PrereqTech,PrereqCivic,Buildable,Description,RemoveOnEntry,DispersalGold,PlunderType,PlunderAmount,Goody,TilesPerGoody,GoodyRange,Icon,TraitType,Housing,TilesRequired,SameAdjacentValid,RequiresRiver,EnforceTerrain,BuildInLine,CanBuildOutsideTerritory,BuildOnFrontier,AirSlots,DefenseModifier,GrantFortification,MinimumAppeal,Coast,YieldFromAppeal,WeaponSlots,ReligiousUnitHealRate,Appeal,OnePerCity,YieldFromAppealPercent,ValidAdjacentTerrainAmount,Domain,AdjacentSeaResource,RequiresAdjacentBonusOrLuxury,MovementChange,Workable,ImprovementOnRemove,GoodyNotify,NoAdjacentSpecialtyDistrict,RequiresAdjacentLuxury,AdjacentToLand,Removable,OnlyOpenBorders,Capturable
IMPROVEMENT_GREAT_WALL LOC_IMPROVEMENT_GREAT_WALL_NAME 0 1 LOC_IMPROVEMENT_GREAT_WALL_EXPANSION2_DESCRIPTION 0 0 PLUNDER_GOLD 50 0 ICON_IMPROVEMENT_GREAT_WALL TRAIT_CIVILIZATION_IMPROVEMENT_GREAT_WALL 3 1 1 0 0 0 1 0 0 8 4 0 0 0 0 0 100 0 DOMAIN_LAND 0 0 0 1 1 0 0 0 1 0 1
#
SELECT * FROM Improvements WHERE ImprovementType="IMPROVEMENT_GREAT_WALL";
设置没有生效。
#
SELECT * FROM Improvement_ValidBuildUnits WHERE ImprovementType="IMPROVEMENT_GREAT_WALL";
结果:
ImprovementType UnitType ConsumesCharge ValidRepairOnly
IMPROVEMENT_GREAT_WALL UNIT_BUILDER 1 0
#
SELECT * FROM Improvements_XP2 WHERE ImprovementType="IMPROVEMENT_GREAT_WALL";
结果:
ImprovementType,AllowImpassableMovement,BuildOnAdjacentPlot,PreventsDrought,DisasterResistant
IMPROVEMENT_GREAT_WALL 0 0 0 1
#
SELECT * FROM Improvement_ValidTerrains WHERE ImprovementType="IMPROVEMENT_GREAT_WALL";
设置没有生效。
#
SELECT * FROM Improvement_ValidFeatures WHERE ImprovementType="IMPROVEMENT_GREAT_WALL";
设置没有生效。
#
SELECT * FROM Improvement_ValidResources WHERE ImprovementType="IMPROVEMENT_GREAT_WALL";
设置没有生效。
5、新开档
[2100902.518] [Localization]: StartupErrorMessages.xml
[2100902.519] [Localization]: Input XML does not contain database entry tags. GameData, GameInfo or Database
[2100905.896] [Localization]: Validating Foreign Key Constraints...
[2100905.897] [Localization]: Passed Validation.
[2100905.933] [Configuration]: Validating Foreign Key Constraints...
[2100905.934] [Configuration]: Passed Validation.
[2100907.076] [FullTextSearch]: Initializing FullTextSearch
[2100907.643] [Gameplay]: Validating Foreign Key Constraints...
[2100907.660] [Gameplay]: Passed Validation.
[2100908.929] [Configuration]: Validating Foreign Key Constraints...
[2100908.930] [Configuration]: Passed Validation.
[2100910.140] [HallofFame]: Database found. Checking versions...
[2100910.141] [HallofFame]: Database is up-to-date!
[2100924.670] [FullTextSearch]: FTS - Creating Context
开档/载入存档
[2101009.359] [Configuration]: Validating Foreign Key Constraints...
[2101009.360] [Configuration]: Passed Validation.
[2101015.637] [Gameplay] ERROR: Database::XMLSerializer (MyGreatWallEnhance-Improvements.xml): <Update> element requires a child <Set> element.
[2101015.637] [Gameplay]: In XMLSerializer while updating table Improvements from file MyGreatWallEnhance-Improvements.xml.
[2101015.735] [Gameplay]: Validating Foreign Key Constraints...
[2101015.764] [Gameplay]: Passed Validation.
[2101024.920] [FullTextSearch]: FTS - Creating Context
[2101024.921] [FullTextSearch]: FTS - Creating Context
[2101025.352] [FullTextSearch]: FTS - Creating Context
[2101025.860] [FullTextSearch]: FTS - Creating Context
[2101027.303] [FullTextSearch]: FTS - Creating Context
<GameData>
<Improvements>
<Update>
<Where ImprovementType="IMPROVEMENT_GREAT_WALL"/>
<Set PrereqTech=NULL PlunderType="PLUNDER_GOLD" PlunderAmount="200" Housing="4" Buildable="1" Housing="4" TilesRequired="1" BuildInLine="0" CanBuildOutsideTerritory="1" BuildOnFrontier="0" DefenseModifier="8" GrantFortification="4" Workable="1"/>
</Update>
</Improvements>
是不是这条的问题?
6、
[2102556.969] [Localization]: StartupErrorMessages.xml
[2102556.969] [Localization]: Input XML does not contain database entry tags. GameData, GameInfo or Database
[2102561.981] [Localization]: Validating Foreign Key Constraints...
[2102561.982] [Localization]: Passed Validation.
[2102562.017] [Configuration]: Validating Foreign Key Constraints...
[2102562.019] [Configuration]: Passed Validation.
[2102563.172] [FullTextSearch]: Initializing FullTextSearch
[2102563.751] [Gameplay]: Validating Foreign Key Constraints...
[2102563.767] [Gameplay]: Passed Validation.
[2102565.220] [Configuration]: Validating Foreign Key Constraints...
[2102565.220] [Configuration]: Passed Validation.
[2102566.412] [HallofFame]: Database found. Checking versions...
[2102566.414] [HallofFame]: Database is up-to-date!
[2102580.899] [FullTextSearch]: FTS - Creating Context
载入存档
[2102622.387] [Configuration]: Validating Foreign Key Constraints...
[2102622.388] [Configuration]: Passed Validation.
[2102628.549] [Gameplay] ERROR: table Improvements_XP2 has no column named ImprovementType,AllowImpassableMovement,BuildOnAdjacentPlot,PreventsDrought,DisasterResistant
[2102628.549] [Gameplay]: In Query - insert into Improvements_XP2('ImprovementType', 'ImprovementType,AllowImpassableMovement,BuildOnAdjacentPlot,PreventsDrought,DisasterResistant', 'BuildOnAdjacentPlot', 'PreventsDrought', 'DisasterResistant') values (?, ?, ?, ?, ?);
[2102628.549] [Gameplay]: In XMLSerializer while updating table Improvements_XP2 from file MyGreatWallEnhance-Improvements.xml.
[2102628.647] [Gameplay]: Validating Foreign Key Constraints...
[2102628.675] [Gameplay]: Passed Validation.
[2102637.997] [FullTextSearch]: FTS - Creating Context
[2102637.997] [FullTextSearch]: FTS - Creating Context
[2102638.434] [FullTextSearch]: FTS - Creating Context
[2102638.944] [FullTextSearch]: FTS - Creating Context
[2102640.383] [FullTextSearch]: FTS - Creating Context
该语句处写错了,ImprovementType,AllowImpassableMovement,BuildOnAdjacentPlot,PreventsDrought,DisasterResistant这个拷过来后忘记删除了。
7、
更改上述错误
[2103125.032] [Localization]: StartupErrorMessages.xml
[2103125.032] [Localization]: Input XML does not contain database entry tags. GameData, GameInfo or Database
[2103129.823] [Localization]: Validating Foreign Key Constraints...
[2103129.824] [Localization]: Passed Validation.
[2103129.859] [Configuration]: Validating Foreign Key Constraints...
[2103129.860] [Configuration]: Passed Validation.
[2103131.012] [FullTextSearch]: Initializing FullTextSearch
[2103131.587] [Gameplay]: Validating Foreign Key Constraints...
[2103131.603] [Gameplay]: Passed Validation.
[2103133.070] [Configuration]: Validating Foreign Key Constraints...
[2103133.071] [Configuration]: Passed Validation.
[2103134.213] [HallofFame]: Database found. Checking versions...
[2103134.215] [HallofFame]: Database is up-to-date!
[2103148.795] [FullTextSearch]: FTS - Creating Context
[2103173.881] [Configuration]: Validating Foreign Key Constraints...
[2103173.882] [Configuration]: Passed Validation.
[2103180.794] [Gameplay] ERROR: UNIQUE constraint failed: Improvements_XP2.ImprovementType
[2103180.794] [Gameplay]: While executing - 'insert into Improvements_XP2('ImprovementType', 'AllowImpassableMovement', 'BuildOnAdjacentPlot', 'PreventsDrought', 'DisasterResistant') values (?, ?, ?, ?, ?);'
[2103180.795] [Gameplay]: In XMLSerializer while inserting row into table insert into Improvements_XP2('ImprovementType', 'AllowImpassableMovement', 'BuildOnAdjacentPlot', 'PreventsDrought', 'DisasterResistant') with values (IMPROVEMENT_GREAT_WALL, 1, 1, 1, 1, ).
[2103180.795] [Gameplay]: In XMLSerializer while updating table Improvements_XP2 from file MyGreatWallEnhance-Improvements.xml.
[2103180.795] [Gameplay] ERROR: UNIQUE constraint failed: Improvements_XP2.ImprovementType
[2103180.917] [Gameplay]: Validating Foreign Key Constraints...
[2103180.956] [Gameplay]: Passed Validation.
[2103195.149] [FullTextSearch]: FTS - Creating Context
[2103195.150] [FullTextSearch]: FTS - Creating Context
[2103195.590] [FullTextSearch]: FTS - Creating Context
[2103196.064] [FullTextSearch]: FTS - Creating Context
[2103197.447] [FullTextSearch]: FTS - Creating Context
又遇到了唯一性校验问题。
8、更改Improvements_XP2表
用Replace替换Row
<Improvements_XP2>
<Replace ImprovementType="IMPROVEMENT_GREAT_WALL" AllowImpassableMovement="true" BuildOnAdjacentPlot="true" PreventsDrought="true" DisasterResistant="true"/>
</Improvements_XP2>
[2103431.005] [Gameplay] ERROR: UNIQUE constraint failed: Improvement_ValidTerrains.ImprovementType, Improvement_ValidTerrains.TerrainType
[2103431.005] [Gameplay]: While executing - 'insert into Improvement_ValidTerrains('ImprovementType', 'TerrainType') values (?, ?);'
[2103431.005] [Gameplay]: In XMLSerializer while inserting row into table insert into Improvement_ValidTerrains('ImprovementType', 'TerrainType') with values (IMPROVEMENT_GREAT_WALL, TERRAIN_DESERT, ).
[2103431.005] [Gameplay]: In XMLSerializer while updating table Improvement_ValidTerrains from file MyGreatWallEnhance-Improvements.xml.
[2103431.005] [Gameplay] ERROR: UNIQUE constraint failed: Improvement_ValidTerrains.ImprovementType, Improvement_ValidTerrains.TerrainType
Improvements_XP2不提示错误了,但是Improvement_ValidTerrains表又提示错误了。
<Improvement_ValidTerrains>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" TerrainType="TERRAIN_DESERT"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" TerrainType="TERRAIN_DESERT_HILLS"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" TerrainType="TERRAIN_DESERT_MOUNTAIN"/>
TERRAIN_DESERT、HILLS在原版中存在。用Replace替换Row。
MOUNTAIN在原版中没有。保留Row。
<Improvement_ValidFeatures>
<Replace ImprovementType="IMPROVEMENT_GREAT_WALL" FeatureType="FEATURE_VOLCANIC_SOIL"/>
</Improvement_ValidFeatures>
FEATURE_VOLCANIC_SOIL原版中好像也存在。用Replace替换Row。
原版的临近产出:
<Improvement_Adjacencies>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" YieldChangeId="GreatWall_Gold"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" YieldChangeId="GreatWall_Culture"/>
</Improvement_Adjacencies>
<Adjacency_YieldChanges>
<Row ID="GreatWall_Gold" Description="Placeholder" YieldType="YIELD_GOLD" YieldChange="1" TilesRequired="1" AdjacentImprovement="IMPROVEMENT_GREAT_WALL" PrereqTech="TECH_MASONRY"/>
<Row ID="GreatWall_Culture" Description="Placeholder" YieldType="YIELD_CULTURE" YieldChange="1" TilesRequired="1" AdjacentImprovement="IMPROVEMENT_GREAT_WALL" PrereqTech="TECH_CASTLES"/>
</Adjacency_YieldChanges>
9、
[2104052.751] [Gameplay] ERROR: UNIQUE constraint failed: Improvement_Tourism.ImprovementType
[2104052.751] [Gameplay]: While executing - 'insert into Improvement_Tourism('ImprovementType', 'TourismSource', 'PrereqTech', 'ScalingFactor') values (?, ?, ?, ?);'
[2104052.751] [Gameplay]: In XMLSerializer while inserting row into table insert into Improvement_Tourism('ImprovementType', 'TourismSource', 'PrereqTech', 'ScalingFactor') with values (IMPROVEMENT_GREAT_WALL, TOURISMSOURCE_CULTURE, TECH_FLIGHT, 200, ).
[2104052.751] [Gameplay]: In XMLSerializer while updating table Improvement_Tourism from file MyGreatWallEnhance-Improvements.xml.
[2104052.751] [Gameplay] ERROR: UNIQUE constraint failed: Improvement_Tourism.ImprovementType
Improvement_Tourism。用Replace替换Row。
10、
<Improvement_Adjacencies>
<!--Row ImprovementType="IMPROVEMENT_GREAT_WALL" YieldChangeId="GreatWall_Gold"/-->
<!--Row ImprovementType="IMPROVEMENT_GREAT_WALL" YieldChangeId="GreatWall_Culture"/-->
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" YieldChangeId="GreatWall_Food"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" YieldChangeId="GreatWall_Production"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" YieldChangeId="GreatWall_Science"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" YieldChangeId="GreatWall_Faith"/>
</Improvement_Adjacencies>
<Adjacency_YieldChanges>
<Delete ID="GreatWall_Gold"/>
<Row ID="GreatWall_Gold" Description="Placeholder" YieldType="YIELD_GOLD" YieldChange="1" TilesRequired="1" AdjacentImprovement="IMPROVEMENT_GREAT_WALL"/>
<Delete ID="GreatWall_Culture"/>
<Row ID="GreatWall_Culture" Description="Placeholder" YieldType="YIELD_CULTURE" YieldChange="1" TilesRequired="1" AdjacentImprovement="IMPROVEMENT_GREAT_WALL""/>
<Row ID="GreatWall_Food" Description="Placeholder" YieldType="YIELD_FOOD" YieldChange="1" TilesRequired="1" AdjacentImprovement="IMPROVEMENT_GREAT_WALL""/>
<Row ID="GreatWall_Production" Description="Placeholder" YieldType="YIELD_PRODUCTION" YieldChange="1" TilesRequired="1" AdjacentImprovement="IMPROVEMENT_GREAT_WALL"/>
<Row ID="GreatWall_Science" Description="Placeholder" YieldType="YIELD_SCIENCE" YieldChange="1" TilesRequired="1" AdjacentImprovement="IMPROVEMENT_GREAT_WALL"/>
<Row ID="GreatWall_Faith" Description="Placeholder" YieldType="YIELD_FAITH" YieldChange="1" TilesRequired="1" AdjacentImprovement="IMPROVEMENT_GREAT_WALL"/>
</Adjacency_YieldChanges>
游戏加载存档时崩溃:
Unhandled Exception
Code: EXCEPTION_ACCESS_VIOLATION
Error reading address 0x1b
Call Stack
-----------------------------------------------------
??? ! ??? ???, line 0
??? ! ??? ???, line 0
??? ! ??? ???, line 0
??? ! ??? ???, line 0
SELECT * FROM Adjacency_YieldChanges
WHERE AdjacentImprovement="IMPROVEMENT_GREAT_WALL";
结果:
ID Description YieldType YieldChange TilesRequired OtherDistrictAdjacent AdjacentSeaResource AdjacentTerrain AdjacentFeature AdjacentRiver AdjacentWonder AdjacentNaturalWonder AdjacentImprovement AdjacentDistrict PrereqCivic PrereqTech ObsoleteCivic ObsoleteTech AdjacentResource AdjacentResourceClass Self
GreatWall_Gold Placeholder YIELD_GOLD 1 1 0 0 0 0 0 IMPROVEMENT_GREAT_WALL TECH_MASONRY 0 NO_RESOURCECLASS 0
GreatWall_Culture Placeholder YIELD_CULTURE 1 1 0 0 0 0 0 IMPROVEMENT_GREAT_WALL TECH_CASTLES 0 NO_RESOURCECLASS 0
11、将GreatWall_Gold和GreatWall_Culture两句注释掉
<Adjacency_YieldChanges>
<!-- Row ID="GreatWall_Gold" Description="Placeholder" YieldType="YIELD_GOLD" YieldChange="1" TilesRequired="1" AdjacentImprovement="IMPROVEMENT_GREAT_WALL"/ -->
<!-- Row ID="GreatWall_Culture" Description="Placeholder" YieldType="YIELD_CULTURE" YieldChange="1" TilesRequired="1" AdjacentImprovement="IMPROVEMENT_GREAT_WALL""/ -->
<Row ID="GreatWall_Food" Description="Placeholder" YieldType="YIELD_FOOD" YieldChange="1" TilesRequired="1" AdjacentImprovement="IMPROVEMENT_GREAT_WALL""/>
<Row ID="GreatWall_Production" Description="Placeholder" YieldType="YIELD_PRODUCTION" YieldChange="1" TilesRequired="1" AdjacentImprovement="IMPROVEMENT_GREAT_WALL"/>
<Row ID="GreatWall_Science" Description="Placeholder" YieldType="YIELD_SCIENCE" YieldChange="1" TilesRequired="1" AdjacentImprovement="IMPROVEMENT_GREAT_WALL"/>
<Row ID="GreatWall_Faith" Description="Placeholder" YieldType="YIELD_FAITH" YieldChange="1" TilesRequired="1" AdjacentImprovement="IMPROVEMENT_GREAT_WALL"/>
</Adjacency_YieldChanges>
[2107963.723] [Gameplay] ERROR: table Adjacency_YieldChanges has no column named "
[2107963.723] [Gameplay]: In Query - insert into Adjacency_YieldChanges('ID', 'Description', 'YieldType', 'YieldChange', 'TilesRequired', 'AdjacentImprovement', '"') values (?, ?, ?, ?, ?, ?, ?);
[2107963.723] [Gameplay]: In XMLSerializer while updating table Adjacency_YieldChanges from file MyGreatWallEnhance-Improvements.xml.
[2107963.790] [Gameplay] ERROR: FOREIGN KEY constraint failed
[2107963.790] [Gameplay] ERROR: FOREIGN KEY constraint failed
[2107963.790] [Gameplay]: Validating Foreign Key Constraints...
[2107963.802] [Gameplay] ERROR: Invalid Reference on Improvement_Adjacencies.YieldChangeId - "GreatWall_Food" does not exist in Adjacency_YieldChanges
[2107963.802] [Gameplay] ERROR: Invalid Reference on Improvement_Adjacencies.YieldChangeId - "GreatWall_Production" does not exist in Adjacency_YieldChanges
[2107963.802] [Gameplay] ERROR: Invalid Reference on Improvement_Adjacencies.YieldChangeId - "GreatWall_Science" does not exist in Adjacency_YieldChanges
[2107963.802] [Gameplay] ERROR: Invalid Reference on Improvement_Adjacencies.YieldChangeId - "GreatWall_Faith" does not exist in Adjacency_YieldChanges
[2107963.821] [Gameplay]: Failed Validation.
加载存档后,提示模组失败。
#
[2107968.436] [Configuration]: Validating Foreign Key Constraints...
[2107968.437] [Configuration]: Passed Validation.
[2107969.293] [FullTextSearch]: FTS - Creating Context
[2108104.109] [FullTextSearch]: FTS - Creating Context
[2108127.999] [Configuration]: Validating Foreign Key Constraints...
[2108128.000] [Configuration]: Passed Validation.
[2108134.689] [Gameplay] ERROR: table Adjacency_YieldChanges has no column named "
[2108134.689] [Gameplay]: In Query - insert into Adjacency_YieldChanges('ID', 'Description', 'YieldType', 'YieldChange', 'TilesRequired', 'AdjacentImprovement', '"') values (?, ?, ?, ?, ?, ?, ?);
[2108134.689] [Gameplay]: In XMLSerializer while updating table Adjacency_YieldChanges from file MyGreatWallEnhance-Improvements.xml.
[2108134.745] [Gameplay] ERROR: FOREIGN KEY constraint failed
[2108134.745] [Gameplay] ERROR: FOREIGN KEY constraint failed
[2108134.745] [Gameplay]: Validating Foreign Key Constraints...
[2108134.758] [Gameplay] ERROR: Invalid Reference on Improvement_Adjacencies.YieldChangeId - "GreatWall_Food" does not exist in Adjacency_YieldChanges
[2108134.758] [Gameplay] ERROR: Invalid Reference on Improvement_Adjacencies.YieldChangeId - "GreatWall_Production" does not exist in Adjacency_YieldChanges
[2108134.758] [Gameplay] ERROR: Invalid Reference on Improvement_Adjacencies.YieldChangeId - "GreatWall_Science" does not exist in Adjacency_YieldChanges
[2108134.758] [Gameplay] ERROR: Invalid Reference on Improvement_Adjacencies.YieldChangeId - "GreatWall_Faith" does not exist in Adjacency_YieldChanges
[2108134.777] [Gameplay]: Failed Validation.
[2108139.111] [Configuration]: Validating Foreign Key Constraints...
[2108139.112] [Configuration]: Passed Validation.
[2108139.945] [FullTextSearch]: FTS - Creating Context
重新开档仍然如此,提示模组失败。
#
12、将<Adjacency_YieldChanges>调到<Improvement_Adjacencies>前面
[2108536.979] [Localization]: StartupErrorMessages.xml
[2108536.979] [Localization]: Input XML does not contain database entry tags. GameData, GameInfo or Database
[2108540.065] [Localization]: Validating Foreign Key Constraints...
[2108540.066] [Localization]: Passed Validation.
[2108540.092] [Configuration]: Validating Foreign Key Constraints...
[2108540.093] [Configuration]: Passed Validation.
[2108541.218] [FullTextSearch]: Initializing FullTextSearch
[2108541.807] [Gameplay]: Validating Foreign Key Constraints...
[2108541.824] [Gameplay]: Passed Validation.
[2108543.148] [Configuration]: Validating Foreign Key Constraints...
[2108543.149] [Configuration]: Passed Validation.
[2108544.373] [HallofFame]: Database found. Checking versions...
[2108544.374] [HallofFame]: Database is up-to-date!
[2108558.973] [FullTextSearch]: FTS - Creating Context
[2108578.747] [Configuration]: Validating Foreign Key Constraints...
[2108578.748] [Configuration]: Passed Validation.
[2108585.138] [Gameplay] ERROR: table Adjacency_YieldChanges has no column named "
[2108585.138] [Gameplay]: In Query - insert into Adjacency_YieldChanges('ID', 'Description', 'YieldType', 'YieldChange', 'TilesRequired', 'AdjacentImprovement', '"') values (?, ?, ?, ?, ?, ?, ?);
[2108585.138] [Gameplay]: In XMLSerializer while updating table Adjacency_YieldChanges from file MyGreatWallEnhance-Improvements.xml.
[2108585.240] [Gameplay]: Validating Foreign Key Constraints...
[2108585.271] [Gameplay]: Passed Validation.
[2108609.087] [FullTextSearch]: FTS - Creating Context
[2108609.088] [FullTextSearch]: FTS - Creating Context
[2108609.428] [FullTextSearch]: FTS - Creating Context
[2108609.917] [FullTextSearch]: FTS - Creating Context
[2108611.256] [FullTextSearch]: FTS - Creating Context
可以载入存档,但看起来还是不对。
看起来好像是语句有问题。
13、拷贝Improvements.xml原版语句并更改
SELECT * FROM Adjacency_YieldChanges
WHERE ID LIKE "%WALL%";
从数据库中删除查询到的结果。
拷贝Improvements.xml原版语句并更改。
<Adjacency_YieldChanges>
<Row ID="GreatWall_Food" Description="Placeholder" YieldType="YIELD_FOOD" YieldChange="1" TilesRequired="1" AdjacentImprovement="IMPROVEMENT_GREAT_WALL" PrereqTech="TECH_MASONRY"/>
<Row ID="GreatWall_Production" Description="Placeholder" YieldType="YIELD_PRODUCTION" YieldChange="1" TilesRequired="1" AdjacentImprovement="IMPROVEMENT_GREAT_WALL" PrereqTech="TECH_MASONRY"/>
<Row ID="GreatWall_Science" Description="Placeholder" YieldType="YIELD_SCIENCE" YieldChange="1" TilesRequired="1" AdjacentImprovement="IMPROVEMENT_GREAT_WALL" PrereqTech="TECH_MASONRY"/>
<Row ID="GreatWall_Faith" Description="Placeholder" YieldType="YIELD_FAITH" YieldChange="1" TilesRequired="1" AdjacentImprovement="IMPROVEMENT_GREAT_WALL" PrereqTech="TECH_MASONRY"/>
</Adjacency_YieldChanges>
通过。
#
问题:
原版中GOLD和CULTURE语句中
<Row ID="GreatWall_Gold" Description="Placeholder" YieldType="YIELD_GOLD" YieldChange="1" TilesRequired="1" AdjacentImprovement="IMPROVEMENT_GREAT_WALL" PrereqTech="TECH_MASONRY"/>
<Row ID="GreatWall_Culture" Description="Placeholder" YieldType="YIELD_CULTURE" YieldChange="1" TilesRequired="1" AdjacentImprovement="IMPROVEMENT_GREAT_WALL" PrereqTech="TECH_CASTLES"/>
GOLD和CULTURE都是增加1,YieldChange="1",但是查询Adjacency_YieldChanges表显示为2。
SELECT ID,Description,YieldType,YieldChange,TilesRequired,AdjacentImprovement,PrereqTech
FROM Adjacency_YieldChanges
WHERE ID LIKE "%WALL%";
结果:
ID Description YieldType YieldChange TilesRequired AdjacentImprovement PrereqTech
GreatWall_Gold Placeholder YIELD_GOLD 2 1 IMPROVEMENT_GREAT_WALL TECH_MASONRY
GreatWall_Culture Placeholder YIELD_CULTURE 2 1 IMPROVEMENT_GREAT_WALL TECH_CASTLES
GreatWall_Food Placeholder YIELD_FOOD 1 1 IMPROVEMENT_GREAT_WALL TECH_MASONRY
GreatWall_Production Placeholder YIELD_PRODUCTION 1 1 IMPROVEMENT_GREAT_WALL TECH_MASONRY
GreatWall_Science Placeholder YIELD_SCIENCE 1 1 IMPROVEMENT_GREAT_WALL TECH_MASONRY
GreatWall_Faith Placeholder YIELD_FAITH 1 1 IMPROVEMENT_GREAT_WALL TECH_MASONRY
Wall_Gold Placeholder YIELD_GOLD 1 1 IMPROVEMENT_MING_GREAT_WALL TECH_MASONRY
Wall_Culture Placeholder YIELD_CULTURE 1 1 IMPROVEMENT_MING_GREAT_WALL TECH_CASTLES
Wall_Food Placeholder YIELD_FOOD 1 1 IMPROVEMENT_MING_GREAT_WALL TECH_MASONRY
Wall_Production Placeholder YIELD_PRODUCTION 1 1 IMPROVEMENT_MING_GREAT_WALL TECH_CASTLES
Wall_Science Placeholder YIELD_SCIENCE 1 1 IMPROVEMENT_MING_GREAT_WALL TECH_BRONZE_WORKING
Wall_Faith Placeholder YIELD_FAITH 1 1 IMPROVEMENT_MING_GREAT_WALL TECH_ASTROLOGY
类似的语句,为何GOLD和CULTURE都是2,其他却都是1呢?
14、将临近产出都改为2,并去掉后添加的4个的科技需求
<Adjacency_YieldChanges>
<Row ID="GreatWall_Food" Description="Placeholder" YieldType="YIELD_FOOD" YieldChange="2" TilesRequired="1" AdjacentImprovement="IMPROVEMENT_GREAT_WALL"/>
<Row ID="GreatWall_Production" Description="Placeholder" YieldType="YIELD_PRODUCTION" YieldChange="2" TilesRequired="1" AdjacentImprovement="IMPROVEMENT_GREAT_WALL"/>
<Row ID="GreatWall_Science" Description="Placeholder" YieldType="YIELD_SCIENCE" YieldChange="2" TilesRequired="1" AdjacentImprovement="IMPROVEMENT_GREAT_WALL"/>
<Row ID="GreatWall_Faith" Description="Placeholder" YieldType="YIELD_FAITH" YieldChange="2" TilesRequired="1" AdjacentImprovement="IMPROVEMENT_GREAT_WALL"/>
</Adjacency_YieldChanges>
查询:
SELECT ID,Description,YieldType,YieldChange,TilesRequired,AdjacentImprovement,PrereqTech
FROM Adjacency_YieldChanges
WHERE ID LIKE "%WALL%";
结果:
ID Description YieldType YieldChange TilesRequired AdjacentImprovement PrereqTech
GreatWall_Gold Placeholder YIELD_GOLD 2 1 IMPROVEMENT_GREAT_WALL TECH_MASONRY
GreatWall_Culture Placeholder YIELD_CULTURE 2 1 IMPROVEMENT_GREAT_WALL TECH_CASTLES
GreatWall_Food Placeholder YIELD_FOOD 2 1 IMPROVEMENT_GREAT_WALL
GreatWall_Production Placeholder YIELD_PRODUCTION 2 1 IMPROVEMENT_GREAT_WALL
GreatWall_Science Placeholder YIELD_SCIENCE 2 1 IMPROVEMENT_GREAT_WALL
GreatWall_Faith Placeholder YIELD_FAITH 2 1 IMPROVEMENT_GREAT_WALL
15、测试数据库操作
在Navicat中测试。
1)删除记录
DELETE FROM Adjacency_YieldChanges WHERE ID = "GreatWall_Gold";
成功
2)添加记录
INSERT INTO Adjacency_YieldChanges(ID,Description,YieldType) VALUES("aaa","Placeholder","YIELD_GOLD");
成功。
注意,此三字段必须包含,且YieldType必须为6种YIELD类型之一。
INSERT INTO Adjacency_YieldChanges(ID,Description,YieldType,YieldChange,TilesRequired,AdjacentImprovement)
VALUES("GreatWall_Gold","Placeholder","YIELD_GOLD",1,1,"IMPROVEMENT_GREAT_WALL");
成功。
16、删除前置科技条件
<Improvements>
<Delete ImprovementType="IMPROVEMENT_GREAT_WALL"/>
<Row ImprovementType="IMPROVEMENT_GREAT_WALL" Name="LOC_IMPROVEMENT_GREAT_WALL_NAME" Description="LOC_IMPROVEMENT_GREAT_WALL_DESCRIPTION" Icon="ICON_IMPROVEMENT_GREAT_WALL" PlunderType="PLUNDER_GOLD" PlunderAmount="200" Buildable="true" Housing="4" TilesRequired="1" TraitType="TRAIT_CIVILIZATION_IMPROVEMENT_GREAT_WALL" BuildInLine="0" CanBuildOutsideTerritory="1" BuildOnFrontier="0" DefenseModifier="8" GrantFortification="4" Workable="1"/>
</Improvements>
<Adjacency_YieldChanges>
<Delete ID="GreatWall_Gold"/>
<Row ID="GreatWall_Gold" Description="Placeholder" YieldType="YIELD_GOLD" YieldChange="2" TilesRequired="1" AdjacentImprovement="IMPROVEMENT_GREAT_WALL"/>
<Delete ID="GreatWall_Culture"/>
<Row ID="GreatWall_Culture" Description="Placeholder" YieldType="YIELD_CULTURE" YieldChange="2" TilesRequired="1" AdjacentImprovement="IMPROVEMENT_GREAT_WALL"/>
<Row ID="GreatWall_Food" Description="Placeholder" YieldType="YIELD_FOOD" YieldChange="2" TilesRequired="1" AdjacentImprovement="IMPROVEMENT_GREAT_WALL"/>
<Row ID="GreatWall_Production" Description="Placeholder" YieldType="YIELD_PRODUCTION" YieldChange="2" TilesRequired="1" AdjacentImprovement="IMPROVEMENT_GREAT_WALL"/>
<Row ID="GreatWall_Science" Description="Placeholder" YieldType="YIELD_SCIENCE" YieldChange="2" TilesRequired="1" AdjacentImprovement="IMPROVEMENT_GREAT_WALL"/>
<Row ID="GreatWall_Faith" Description="Placeholder" YieldType="YIELD_FAITH" YieldChange="2" TilesRequired="1" AdjacentImprovement="IMPROVEMENT_GREAT_WALL"/>
</Adjacency_YieldChanges>
可能需要删掉CACHE里面的数据库文件才能生效。刚改完时,IMPROVEMENT_GREAT_WALL的前置科技还是在的。
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
|