Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions data/base/script/campaign/cam3-a.js
Original file line number Diff line number Diff line change
Expand Up @@ -326,6 +326,13 @@ function cam3Setup()
camCompleteRequiredResearch(mis_playerResBetaClassic, CAM_HUMAN_PLAYER);
camCompleteRequiredResearch(mis_playerResGammaClassic, CAM_HUMAN_PLAYER);

if (tweakOptions.camPumpkin_identifier110)
{
const researchFix = ["CAM2RESEARCH-UNDO-Rockets", "CAM3-UNDO-v110"];
camCompleteRequiredResearch(researchFix, CAM_HUMAN_PLAYER);
camCompleteRequiredResearch(researchFix, CAM_NEXUS);
}

if (tweakOptions.camClassic_balance32)
{
camClassicResearch(mis_gammaStartingResearchClassic, CAM_HUMAN_PLAYER);
Expand Down
2 changes: 1 addition & 1 deletion data/base/script/campaign/libcampaign.js
Original file line number Diff line number Diff line change
Expand Up @@ -92,7 +92,7 @@ namespace("cam_");

//////////global vars start

var __camClassicModActive = (modList.indexOf("wz2100_camclassic.wz") !== -1);
var __camClassicModActive = ((modList.indexOf("wz2100_camclassic.wz") !== -1) || (modList.indexOf("wz2100_campumpkin.wz") !== -1));

//These are campaign player numbers.
const CAM_HUMAN_PLAYER = 0;
Expand Down
31 changes: 31 additions & 0 deletions data/mods/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ if(CMAKE_SYSTEM_NAME MATCHES "Emscripten")
endif()

OPTION(WZ_BUILTIN_MODS_CAMCLASSIC "Include the classic campaign balance mod" ON)
OPTION(WZ_BUILTIN_MODS_CAMPUMPKIN "Include the pumpkin campaign balance mod" ON)
OPTION(WZ_BUILTIN_MODS_RECLAMATION "Include the addon campaign: Reclamation" ${_default_bundled_addon_mod_option_value})
OPTION(WZ_BUILTIN_MODS_FRACTUREDKINGDOM "Include the addon campaign: Fractured Kingdom" ${_default_bundled_addon_mod_option_value})

Expand Down Expand Up @@ -195,6 +196,36 @@ if (WZ_BUILTIN_MODS_CAMCLASSIC)

endif(WZ_BUILTIN_MODS_CAMCLASSIC)

if (WZ_BUILTIN_MODS_CAMPUMPKIN)

# Pumpkin campaign balance mod

file(REMOVE "${CMAKE_CURRENT_BINARY_DIR}/campaign/wz2100_campumpkin.wz")

GENERATE_MOD_INFO_JSON(
"${CMAKE_CURRENT_SOURCE_DIR}/campaign/wz2100_campumpkin/mod-info.json.in"
"${CMAKE_CURRENT_BINARY_DIR}/generated_info_json/wz2100_campumpkin/mod-info.json"
)

COMPRESS_ZIP(OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/campaign/wz2100_campumpkin.wz"
COMPRESSION_LEVEL 7
PATHS
"mod-info.json"
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/generated_info_json/wz2100_campumpkin"
PATHS
"stats"
WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/campaign/wz2100_campumpkin"
BUILD_ALWAYS_TARGET data_mods_campaign_wz2100_campumpkin
IGNORE_GIT
QUIET
)
add_dependencies(data_mods_campaign_wz2100_campumpkin mod_info_gen)
set_property(TARGET data_mods_campaign_wz2100_campumpkin PROPERTY FOLDER "data")
list(APPEND wz2100_mods_FILES "${CMAKE_CURRENT_BINARY_DIR}/campaign/wz2100_campumpkin.wz")
add_dependencies(data_mods data_mods_campaign_wz2100_campumpkin)

endif(WZ_BUILTIN_MODS_CAMPUMPKIN)

if (WZ_BUILTIN_MODS_RECLAMATION)

# Addon campaign: Reclamation
Expand Down
117 changes: 117 additions & 0 deletions data/mods/campaign/wz2100_campumpkin/mod-info.json.in
Original file line number Diff line number Diff line change
@@ -0,0 +1,117 @@
{
"name": "Pumpkin Balance",
"author": "Warzone 2100",
"type": "campaignBalanceMod",
"license": "GPL-2.0-or-later",
"minVersionSupported": "@MODINFO_LATEST_VERSION@",
"maxVersionTested": "@MODINFO_LATEST_VERSION@",
Comment on lines +6 to +7
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are these @ values intentional?

"description": {
"en": "\"Pumpkin\" campaign balance"
},
"universe": "wz2100",
"difficultyLevels": "default",
"camTweakOptions": [
{
"id": "timerPowerBonus",
"default": false,
"userEditable": true
},
{
"id": "classicTimers",
"default": true,
"userEditable": true
},
{
"id": "playerUnitCap40",
"default": false,
"userEditable": true
},
{
"id": "autosavesOnly",
"default": false,
"userEditable": true
},
{
"id": "ps1Modifiers",
"default": false,
"userEditable": true
},
{
"id": "infiniteTime",
"default": false,
"userEditable": true
},
{
"id": "victoryHints",
"default": true,
"userEditable": true
},
{
"id": "gammaEndBonus",
"default": false,
"userEditable": true
},
{
"id": "gammaBonusLevel",
"default": false,
"userEditable": true
},
{
"id": "insanePlus",
"default": true,
"userEditable": true
},
{
"id": "insanePlusLowDiff",
"default": false,
"userEditable": true
},
{
"id": "fastExp",
"default": false,
"userEditable": true
},
{
"id": "towerWars",
"default": false,
"userEditable": true
}
],
"customTweakOptions": [
{
"id": "camClassic_balance32",
"type": "bool",
"default": false,
"displayName": {
"en": "3.2.x Balance"
},
"description": {
"en": "3.2.x series balance by emulating research bugs."
},
"userEditable": false
},
{
"id": "camClassic_slowProduction",
"type": "bool",
"default": false,
"displayName": {
"en": "Slow Factory Production"
},
"description": {
"en": "Slower AI factory production times."
}
},
{
"id": "camPumpkin_identifier110",
"type": "bool",
"default": true,
"displayName": {
"en": "Pumpkin Balance"
},
"description": {
"en": "Campaign using Pumpkin balance stats of v1.10."
},
"userEditable": false
}
]
}
Loading
Loading