scripting:ems
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.
Beide Seiten, vorherige ÜberarbeitungVorherige ÜberarbeitungNächste Überarbeitung | Vorherige Überarbeitung | ||
scripting:ems [2019/06/28 19:38] – madshadow | scripting:ems [2022/01/11 23:27] (aktuell) – madshadow | ||
---|---|---|---|
Zeile 5: | Zeile 5: | ||
===== Verwendung ===== | ===== Verwendung ===== | ||
Folgendes Skript kann ins Mapskript kopiert werden: | Folgendes Skript kann ins Mapskript kopiert werden: | ||
- | <code lua>-- ################################################################################################## | + | <code lua> |
- | -- # # | + | -- ################################################################################################### |
- | -- # # | + | |
- | -- # | + | |
-- # # | -- # # | ||
- | -- # | ||
-- # # | -- # # | ||
-- # | -- # | ||
Zeile 41: | Zeile 38: | ||
===== Die Konfiguration ===== | ===== Die Konfiguration ===== | ||
Jede Karte lädt eine Standardkonfiguration. Die reicht in der Regel jedoch nicht aus, daher musst du noch ein Konfigurationsskript erstellen und in den **EMSconfigurations** Ordner kopieren: | Jede Karte lädt eine Standardkonfiguration. Die reicht in der Regel jedoch nicht aus, daher musst du noch ein Konfigurationsskript erstellen und in den **EMSconfigurations** Ordner kopieren: | ||
- | < | + | Damit das Skript geladen wird **muss** es denselben Namen wie die Karte tragen.\\ |
+ | Beispiel: Heißt die Karte "(4) Toscana V2", so muss das Skript "(4) toscana v2.lua" | ||
+ | < | ||
-- ************************************************************************************************ | -- ************************************************************************************************ | ||
-- * * | -- * * | ||
Zeile 58: | Zeile 57: | ||
-- ******************************************************************************************** | -- ******************************************************************************************** | ||
Version = 1, | Version = 1, | ||
+ | |||
+ | -- ******************************************************************************************** | ||
+ | -- * Debug Mode | ||
+ | -- * Activates the ems debug mode if set to true. | ||
+ | -- * This will enable key bindings to achieve some common debug tasks. | ||
+ | -- * Ingame a button with the text " | ||
+ | -- * (Default: false) | ||
+ | -- ******************************************************************************************** | ||
+ | ActivateDebug = true, | ||
+ | |||
+ | -- ******************************************************************************************** | ||
+ | -- * Custom debug functions | ||
+ | -- * If ActivateDebug is set to true, these two debug methods can be called by pressing N or M | ||
+ | -- * _fromPlayer - the id of the player that pressed the key | ||
+ | -- * _targetPlayerId1 - a player id between 1-8 (or 16 on cnetwork), that the caller wants to target | ||
+ | -- * _targetPlayerId2 - a second player id | ||
+ | -- * _x, _y - the position of the callers mouse at the time of pressing the key | ||
+ | -- * Example content: | ||
+ | -- * SetFriendly(_targetPlayerId1, | ||
+ | -- * Logic.CreateEntity(Entities.PU_Serf, | ||
+ | -- ******************************************************************************************** | ||
+ | CustomDebugFunc1 = function(_fromPlayer, | ||
+ | Logic.CreateEntity(Entities.PU_Serf, | ||
+ | end, | ||
+ | CustomDebugFunc2 = function(_fromPlayer, | ||
+ | Logic.CreateEntity(Entities.PU_Serf, | ||
+ | end, | ||
-- ******************************************************************************************** | -- ******************************************************************************************** | ||
Zeile 64: | Zeile 90: | ||
-- * Similar use to FirstMapAction/ | -- * Similar use to FirstMapAction/ | ||
-- ******************************************************************************************** | -- ******************************************************************************************** | ||
- | |||
Callback_OnMapStart = function() | Callback_OnMapStart = function() | ||
AddPeriodicSummer(60); | AddPeriodicSummer(60); | ||
Zeile 111: | Zeile 136: | ||
Callback_GameModeSelected = function(_gamemode) | Callback_GameModeSelected = function(_gamemode) | ||
end, | end, | ||
- | |||
- | --[[ | ||
- | Ressources | ||
- | You can specify the ressources for a player in one of the tables Normal, FastGame, SpeedGame | ||
- | by adding a key entry with the playerId containing 6 entries which either contain a number | ||
- | or a function that returns a number as amount for the respective ressource | ||
- | If a player is not specified, he will get the ressources of player 1 | ||
- | So if you want to give the same amount of ressources to all players, just specify player 1 | ||
- | ]] | ||
-- ******************************************************************************************** | -- ******************************************************************************************** | ||
Zeile 197: | Zeile 213: | ||
-- ******************************************************************************************** | -- ******************************************************************************************** | ||
DisableStandardVictoryCondition = false, | DisableStandardVictoryCondition = false, | ||
+ | |||
+ | -- ******************************************************************************************** | ||
+ | -- * NeedsCppLogic | ||
+ | -- * If true, the script will check if all players have mcbs CppLogic dll loaded | ||
+ | -- * Set to true if you use function of CppLogic | ||
+ | -- * (default: false) | ||
+ | -- ******************************************************************************************** | ||
+ | NeedsCppLogic = false, | ||
+ | |||
+ | -- ******************************************************************************************** | ||
+ | -- * NeedsS5CommunityLib | ||
+ | -- * If true, the script will check if all players have the same version of the S5CommunityLib | ||
+ | -- * Set to true if you use function of the S5CommunityLib | ||
+ | -- * (default: false) | ||
+ | -- ******************************************************************************************** | ||
+ | NeedsS5CommunityLib = false, | ||
+ | |||
+ | -- ******************************************************************************************** | ||
+ | -- * Units | ||
+ | -- * Various units can be allowed or forbidden | ||
+ | -- * A 0 means the unit is forbidden - a higher number represents the maximum allowed level | ||
+ | -- * Example: | ||
+ | -- * Sword = 0, equals Swords are forbidden | ||
+ | -- * Sword = 2, equals the maximum level for swords is 2 = Upgrading once | ||
+ | -- ******************************************************************************************** | ||
+ | Sword | ||
+ | Bow = 4, | ||
+ | PoleArm = 4, | ||
+ | HeavyCavalry = 0, | ||
+ | LightCavalry = 0, | ||
+ | Rifle = 2, | ||
+ | Thief = 1, | ||
+ | Scout = 1, | ||
+ | Cannon1 = 0, | ||
+ | Cannon2 = 0, | ||
+ | Cannon3 = 0, | ||
+ | Cannon4 = 0, | ||
+ | |||
+ | -- * Buildings | ||
+ | Bridge = 1, | ||
+ | |||
+ | -- * Markets | ||
+ | -- * -1 = Building markets is forbidden | ||
+ | -- * 0 = Building markets is allowed | ||
+ | -- * >0 = Markets are allowed and limited to the number given | ||
+ | Markets = 0, | ||
+ | |||
+ | -- * Trade Limit | ||
+ | -- * 0 = no trade limit | ||
+ | -- * greater zero = maximum amount that you can buy in one single trade | ||
+ | TradeLimit = 0, | ||
+ | |||
+ | -- * TowerLevel | ||
+ | -- * 0 = Towers forbidden | ||
+ | -- * 1 = Watchtowers | ||
+ | -- * 2 = Balistatowers | ||
+ | -- * 3 = Cannontowers | ||
+ | TowerLevel = 1, -- 0-3 | ||
+ | |||
+ | -- * TowerLimit | ||
+ | -- * 0 = no tower limit | ||
+ | -- * >0 = towers are limited to the number given | ||
+ | TowerLimit = 0, | ||
+ | |||
+ | -- * WeatherChangeLockTimer | ||
+ | -- * Minutes for how long the weather can't be changed directly again after a weatherchange happened | ||
+ | WeatherChangeLockTimer = 3, | ||
+ | |||
+ | -- * Enables chaning to a specific weather with the weather tower | ||
+ | MakeSummer = 1, | ||
+ | MakeRain | ||
+ | MakeSnow | ||
+ | |||
+ | -- * Fixes the DestrBuild bug | ||
+ | AntiBug | ||
+ | |||
+ | -- * HQRush | ||
+ | -- * If set to 1, Headquarters are invulernerable as long the player still has village centers | ||
+ | AntiHQRush = 1, | ||
+ | |||
+ | -- * If set to 1, Players can't abuse blessing and overtime in combination for unlimited work | ||
+ | BlessLimit = 1, | ||
+ | |||
+ | -- * if set to true, Players are not able to lose their Headquarter. | ||
+ | InvulnerableHQs = false, | ||
+ | -- * Heroes | ||
+ | -- * NumberOfHeroesForAll sets the number of heroes every player can pick | ||
+ | -- * 1 behind each hero defines if the hero is allowed; 0 for forbidden | ||
+ | NumberOfHeroesForAll = 2, | ||
+ | Dario | ||
+ | Pilgrim | ||
+ | Ari = 1, | ||
+ | Erec = 1, | ||
+ | Salim | ||
+ | Helias | ||
+ | Drake | ||
+ | Yuki = 1, | ||
+ | Kerberos = 1, | ||
+ | Varg = 1, | ||
+ | Mary_de_Mortfichet = 1, | ||
+ | Kala = 1, | ||
}; | }; | ||
</ | </ |
scripting/ems.1561750732.txt.gz · Zuletzt geändert: 2021/09/18 19:00 (Externe Bearbeitung)