Hi everyone — I've created a small code framework called IKE that lets you add PBEM (Play by E-Mail) or Hotseat play to any CMO scenario, allowing you to engage in a turn-based multiplayer game with one or more opponents by exchanging .save files.
LATEST RELEASE (UPDATED): https://github.com/musurca/IKE/releases/download/v1.31/IKE.v1.31.zip
SCENARIO PACK (UPDATED): https://github.com/musurca/IKE/releases/download/v1.31-scenarios/IKE_Scenario_Pack_v1.31.zip
* keeps track of turn order and length, and stops the scenario automatically when a player’s turn is over.
* provides a summary of any losses sustained or messages received during the last turn.
* adds an (optional) Setup Phase, allowing players to configure loadouts, missions, and orders before the game begins.
* supports either Unlimited Orders (traditional CMO play) or Limited Orders to simulate command delay and friction.
* provides password protection for each player’s turn.
* allows players to either use the scenario’s recommended PBEM settings, or customize them at game start.
* maintains a consistent random seed, to discourage replaying turns for more advantageous results.
* prevents players from cheating by (optionally) disabling the Editor until the scenario has ended.
Moreover, adding IKE to your scenario does not require any advanced coding ability, nor entail any complicated dependencies. All you have to do is paste a block of code into the Lua Script Console, click RUN, and answer a few questions asked by pop-up windows.
I've written an 11-page manual (included in the download above) that will get you started quickly if you want to make a new multiplayer scenario, or else convert an existing scenario for multiplayer use. The scenario pack also includes ten PBEM scenarios to get you started:
* Canary's Cage, 2005
* Duelists, 1989
* First Contact, 1986
* Frozen War, 2014
* Helping Brothers, 1990
* Malvinas - The Pincer, 1982
* North Pacific Shootout, 1989
* Operation Soberanía, 1978
* Sakhalin or Karafuto, 2013
* Second Battle of Guadalcanal, 1942
* Shamal, 1991 (cooperative)
Hope you find it useful!
IMPORTANT: To use IKE, make sure you have Special Messages set to "Raise Pop-up" in your Game Options.
* change: host can now upgrade/downgrade CMO build
* change: older CMO clients (before 1147.17) are prohibited
* fixed: between order phases contacts will show correct posture
* added: new contacts from off-turn reported
* added: kills made on off-turn reported
* added: immediate and scheduled chat messages
* added: can set turn order for more than 2 playable sides
* added: Second Battle of Guadalcanal
* change: all players must use the same CMO build
* change: optional setup function must be registered
* change: losses show weapon class by which unit was killed
* change: dummy side name
* change: North Pacific Shootout - can pick up enemy pilots
* change: North Pacific Shootout - Soviet side can use sub for SAR
* fixed: contacts sometimes disappear in limited orders
* fixed: IKE wizard removes previous IKE installation
* fixed: scenarios in years 1900-1970 now work properly
* fixed: Shamal - kills give points to correct side
* fix: API replacements
* added: limited order mode
* added: players can customize scenario settings
* added: option to prevent editor mode
* added: losses marked with RPs
* added: missed messages delivered next turn
* added: special action to change side posture
* added: localization support
* fix: end of setup phase message
* fix: API replacements clean themselves up
* fix: workaround for broken ScenEnded trigger
* fix: set clock precisely to turn boundaries
* fix: special message order hiding IKE messages
* fix: coop kills not reported as losses
* fix: observed losses not reported next turn
* fix: ScenEdit_PlayerSide() in limited order mode
* fix: better random seed
* fix: edge case for ScenEdit_SetTime()
* fix: use os.date("!") to format scenario times
* initial release
Source code available on GitHub
< Message edited by musurca -- 5/5/2021 6:03:39 PM >