From d09376c00ec3e5014278e96b6e66f909e9f0de29 Mon Sep 17 00:00:00 2001 From: vbawol Date: Thu, 21 Apr 2016 12:21:40 -0500 Subject: [PATCH 01/18] some changes for 1.58 --- Server_Install_Pack/@epochhive/EpochServer.ini | 2 +- Server_Install_Pack/SC/server-example.cfg | 4 ++-- Server_Install_Pack/sc/battleye/example-beserver.cfg | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/Server_Install_Pack/@epochhive/EpochServer.ini b/Server_Install_Pack/@epochhive/EpochServer.ini index 24795eed..2055edbd 100644 --- a/Server_Install_Pack/@epochhive/EpochServer.ini +++ b/Server_Install_Pack/@epochhive/EpochServer.ini @@ -3,7 +3,7 @@ BattlEyePath = C:\BattlEye InstanceID = NA123 LogAbuse = 1 IP = 127.0.0.1 -Port = 2303 +Port = 2304 Password = changeme [Redis] diff --git a/Server_Install_Pack/SC/server-example.cfg b/Server_Install_Pack/SC/server-example.cfg index 4b7babf9..d6f3d889 100644 --- a/Server_Install_Pack/SC/server-example.cfg +++ b/Server_Install_Pack/SC/server-example.cfg @@ -1,14 +1,14 @@ // EPOCH SERVER CONFIG // GLOBAL SETTINGS -hostname = "EpochMod.com (0.3.8|1.54) ID02 YourHost"; +hostname = "EpochMod.com (0.3.8|1.58) ID02 YourHost"; password = ""; passwordAdmin = "!CHANGE_THIS_PASSWORD!"; serverCommandPassword = "!CHANGE_THIS_PASSWORD!"; logFile = "A3Master.log"; verifySignatures = 2; BattlEye = 1; -requiredBuild = 133741; +requiredBuild = 135656; // WHITELIST FILE TYPES allowedLoadFileExtensions[] = {:}; diff --git a/Server_Install_Pack/sc/battleye/example-beserver.cfg b/Server_Install_Pack/sc/battleye/example-beserver.cfg index 2d6414c6..155a4199 100644 --- a/Server_Install_Pack/sc/battleye/example-beserver.cfg +++ b/Server_Install_Pack/sc/battleye/example-beserver.cfg @@ -1,4 +1,4 @@ -RConPort 2303 +RConPort 2304 RConPassword changemen0w MaxPing 350 From 913d89b53ec1a761772efd1ae82679ddd1eb11ec Mon Sep 17 00:00:00 2001 From: vbawol Date: Thu, 21 Apr 2016 12:22:04 -0500 Subject: [PATCH 02/18] fixed incorrect path to credits --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 98e84552..a06b265b 100644 --- a/README.md +++ b/README.md @@ -15,4 +15,4 @@ http://www.bistudio.com/community/licenses/arma-public-license-share-alike Credits: ===== -https://github.com/EpochModTeam/Epoch/CREDITS.md +https://github.com/EpochModTeam/Epoch/blob/master/CREDITS.md From 35be7d08648c288c208ffb82ce3eb8201c85f973 Mon Sep 17 00:00:00 2001 From: vbawol Date: Thu, 21 Apr 2016 12:23:22 -0500 Subject: [PATCH 03/18] define proper settings in full redis example conf --- Server_Install_Pack/DB/redis-example.conf | 84 +++++++++++------------ 1 file changed, 42 insertions(+), 42 deletions(-) diff --git a/Server_Install_Pack/DB/redis-example.conf b/Server_Install_Pack/DB/redis-example.conf index fd99ca75..fd2eb73d 100644 --- a/Server_Install_Pack/DB/redis-example.conf +++ b/Server_Install_Pack/DB/redis-example.conf @@ -34,7 +34,7 @@ # On Windows, daemonize and pidfile are not supported. # However, you can run redis as a Windows service, and specify a logfile. -# The logfile will contain the pid. +# The logfile will contain the pid. # Accept connections on the specified port, default is 6379. # If port 0 is specified Redis will not listen on a TCP socket. @@ -57,7 +57,7 @@ tcp-backlog 511 # Examples: # # bind 192.168.1.100 10.0.0.1 -# bind 127.0.0.1 +bind 127.0.0.1 # Specify the path for the Unix socket that will be used to listen for @@ -95,12 +95,12 @@ tcp-keepalive 0 loglevel notice # Specify the log file name. Also 'stdout' can be used to force -# Redis to log on the standard output. +# Redis to log on the standard output. logfile "" -# To enable logging to the Windows EventLog, just set 'syslog-enabled' to +# To enable logging to the Windows EventLog, just set 'syslog-enabled' to # yes, and optionally update the other syslog parameters to suit your needs. -# If Redis is installed and launched as a Windows Service, this will +# If Redis is installed and launched as a Windows Service, this will # automatically be enabled. # syslog-enabled no @@ -136,7 +136,7 @@ databases 16 save 900 1 save 300 10 -save 60 10000 +save 60 1000 # By default Redis will stop accepting writes if RDB snapshots are enabled # (at least one save point) and the latest background save failed. @@ -175,9 +175,9 @@ dbfilename dump.rdb # # The DB will be written inside this directory, with the filename specified # above using the 'dbfilename' configuration directive. -# +# # The Append Only File will also be created inside this directory. -# +# # Note that you must specify a directory here, not a file name. dir ./ @@ -378,12 +378,12 @@ slave-priority 100 # # This should stay commented out for backward compatibility and because most # people do not need auth (e.g. they run their own servers). -# +# # Warning: since Redis is pretty fast an outside user can try up to # 150k passwords per second against a good box. This means that you should # use a very strong password otherwise it will be very easy to break. # -# requirepass foobared +requirepass Changeme9832 # Command renaming. # @@ -419,59 +419,59 @@ slave-priority 100 # The Linux version of Redis relies on the system call fork() to perform # point-in-time snapshots of the heap. In addition to the AOF and RDB backup -# mechanism, the master-slave synchronization and clustering features are -# dependent on this behavior of fork(). In order for the Windows version to +# mechanism, the master-slave synchronization and clustering features are +# dependent on this behavior of fork(). In order for the Windows version to # perform like the Linux version we had to simulate this aspect of fork(). # Doing so meant moving the Redis heap into a memory mapped file that can -# be shared with a child process. +# be shared with a child process. # -# *** There must be disk space available for this file in order for Redis -# to launch. *** The default configuration places this file in the local +# *** There must be disk space available for this file in order for Redis +# to launch. *** The default configuration places this file in the local # appdata directory. If you wish to move this file to another local disk, # use the heapdir flag as described below. # # The maxheap flag controls the maximum size of this memory mapped file, # as well as the total usable space for the Redis heap. Running Redis -# without either maxheap or maxmemory will result in a memory mapped file -# being created that is equal to the size of physical memory. During +# without either maxheap or maxmemory will result in a memory mapped file +# being created that is equal to the size of physical memory. During # fork() operations the total page file commit will max out at around: # # (size of physical memory) + (2 * size of maxheap) # -# For instance, on a machine with 8GB of physical RAM, the max page file +# For instance, on a machine with 8GB of physical RAM, the max page file # commit with the default maxheap size will be (8)+(2*8) GB , or 24GB. The -# default page file sizing of Windows will allow for this without having +# default page file sizing of Windows will allow for this without having # to reconfigure the system. Larger heap sizes are possible, but the maximum # page file size will have to be increased accordingly. -# -# The Redis heap must be larger than the value specified by the maxmemory -# flag, as the heap allocator has its own memory requirements and -# fragmentation of the heap is inevitable. If only the maxmemory flag is -# specified, maxheap will be set at 1.5*maxmemory. If the maxheap flag is -# specified along with maxmemory, the maxheap flag will be automatically -# increased if it is smaller than 1.5*maxmemory. -# +# +# The Redis heap must be larger than the value specified by the maxmemory +# flag, as the heap allocator has its own memory requirements and +# fragmentation of the heap is inevitable. If only the maxmemory flag is +# specified, maxheap will be set at 1.5*maxmemory. If the maxheap flag is +# specified along with maxmemory, the maxheap flag will be automatically +# increased if it is smaller than 1.5*maxmemory. +# # maxheap -# The heap memory mapped file must reside on a local path for heap sharing -# between processes to work. A UNC path will not suffice here. For maximum +# The heap memory mapped file must reside on a local path for heap sharing +# between processes to work. A UNC path will not suffice here. For maximum # performance this should be located on the fastest local drive available. # This value defaults to the local application data folder(e.g., # "%USERPROFILE%\AppData\Local"). Since this file can be very large, you -# may wish to place this on a drive other than the one the operating system +# may wish to place this on a drive other than the one the operating system # is installed on. # # Note that you must specify a directory here, not a file name. # heapdir -# If Redis is to be used as an in-memory-only cache without any kind of -# persistence, then the fork() mechanism used by the background AOF/RDB +# If Redis is to be used as an in-memory-only cache without any kind of +# persistence, then the fork() mechanism used by the background AOF/RDB # persistence is unneccessary. As an optimization, all persistence can be # turned off in the Windows version of Redis. This will disable the creation of -# the memory mapped heap file, redirect heap allocations to the system heap +# the memory mapped heap file, redirect heap allocations to the system heap # allocator, and disable commands that would otherwise cause fork() operations: -# BGSAVE and BGREWRITEAOF. This flag may not be combined with any of the other -# flags that configure AOF and RDB operations. +# BGSAVE and BGREWRITEAOF. This flag may not be combined with any of the other +# flags that configure AOF and RDB operations. # persistence-available [(yes)|no] # Don't use more memory than the specified amount of bytes. @@ -512,18 +512,18 @@ slave-priority 100 # Peak Working Set reported by the Windows Task Manager and the used_memory_peak # reported by the INFO command. # -# maxmemory +maxmemory 1gb # MAXMEMORY POLICY: how Redis will select what to remove when maxmemory # is reached. You can select among five behaviors: -# +# # volatile-lru -> remove the key with an expire set using an LRU algorithm # allkeys-lru -> remove any key according to the LRU algorithm # volatile-random -> remove a random key with an expire set # allkeys-random -> remove a random key, any key # volatile-ttl -> remove the key with the nearest expire time (minor TTL) # noeviction -> don't expire at all, just return an error on write operations -# +# # Note: with any of the above policies, Redis will return an error on write # operations, when there are no suitable keys for eviction. # @@ -612,7 +612,7 @@ appendfsync everysec # the same as "appendfsync none". In practical terms, this means that it is # possible to lose up to 30 seconds of log in the worst scenario (with the # default Linux settings). -# +# # If you have latency problems turn this to "yes". Otherwise leave it as # "no" that is the safest pick from the point of view of durability. no-appendfsync-on-rewrite no @@ -620,7 +620,7 @@ no-appendfsync-on-rewrite no # Automatic rewrite of the append only file. # Redis is able to automatically rewrite the log file implicitly calling # BGREWRITEAOF when the AOF log size grows by the specified percentage. -# +# # This is how it works: Redis remembers the size of the AOF file after the # latest rewrite (if no rewrite has happened since the restart, the size of # the AOF at startup is used). @@ -687,7 +687,7 @@ lua-time-limit 5000 # but just the time needed to actually execute the command (this is the only # stage of command execution where the thread is blocked and can not serve # other requests in the meantime). -# +# # You can configure the slow log with two parameters: one tells Redis # what is the execution time, in microseconds, to exceed in order for the # command to get logged, and the other parameter is the length of the @@ -818,7 +818,7 @@ hll-sparse-max-bytes 3000 # that is rehashing, the more rehashing "steps" are performed, so if the # server is idle the rehashing is never complete and some more memory is used # by the hash table. -# +# # The default is to use this millisecond 10 times every second in order to # actively rehash the main dictionaries, freeing memory when possible. # From b96f93861490f0fd8bded344142821bed5b29d99 Mon Sep 17 00:00:00 2001 From: vbawol Date: Thu, 21 Apr 2016 12:24:56 -0500 Subject: [PATCH 04/18] fixed Arma install script no closing on update also default to no validate flag --- Tools/Install/InstallArma.cmd | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Tools/Install/InstallArma.cmd b/Tools/Install/InstallArma.cmd index a6367bbd..39392071 100644 --- a/Tools/Install/InstallArma.cmd +++ b/Tools/Install/InstallArma.cmd @@ -14,4 +14,5 @@ SET ARMAAPPID=107410 :: more info https://community.bistudio.com/wiki/Arma_3_Dedicated_Server -steamcmd.exe +login %STEAMUN% %STEAMPW% +force_install_dir "%ARMASVRPATH%" "+app_update %ARMAAPPID%" validate +quit +:: steamcmd.exe +login %STEAMUN% %STEAMPW% +force_install_dir "%ARMASVRPATH%" "+app_update %ARMAAPPID% validate" +quit +steamcmd.exe +login %STEAMUN% %STEAMPW% +force_install_dir "%ARMASVRPATH%" "+app_update %ARMAAPPID%" +quit From de10ab749c235d6e84ff3bb4fd46daf76cd724b7 Mon Sep 17 00:00:00 2001 From: vbawol Date: Thu, 21 Apr 2016 12:27:36 -0500 Subject: [PATCH 05/18] Install batch for all CUP mods and CBA script both CUP install scripts now auto update .bikey --- Tools/Install/InstallCUPAll.cmd | 84 +++++++++++++++++++++++++ Tools/Install/InstallCUPTerrainPack.cmd | 13 ++++ 2 files changed, 97 insertions(+) create mode 100644 Tools/Install/InstallCUPAll.cmd diff --git a/Tools/Install/InstallCUPAll.cmd b/Tools/Install/InstallCUPAll.cmd new file mode 100644 index 00000000..90c68674 --- /dev/null +++ b/Tools/Install/InstallCUPAll.cmd @@ -0,0 +1,84 @@ +@ECHO OFF +SET STEAMUN=admin@youremail.net +SET STEAMPW=chamgeme +SET ARMASVRPATH=C:\Arma3Server +SET ARMAAPPID=107410 + +:: Use -mod line with quotes to support spaces in folder +:: Example: -mod="@epoch;@CBA_A3;@CUP Units;@CUP Vehicles;@CUP Weapons;@CUP Terrains - Core;@CUP Terrains - Maps;" + +:: Install CUP CORE +SET MODFOLDER=@CUP Terrains - Core +SET ARMAWORKSHOPID=583496184 +:: remove old folder +rd /s/q "%ARMASVRPATH%\%MODFOLDER%" +:: update workshop mod +START "" /WAIT steamcmd.exe +login %STEAMUN% %STEAMPW% +workshop_download_item %ARMAAPPID% %ARMAWORKSHOPID% +quit +:: copy files back to server +xcopy /s/e/y/q/i "steamapps\workshop\content\%ARMAAPPID%\%ARMAWORKSHOPID%" "%ARMASVRPATH%\%MODFOLDER%" +:: Remove old bikey +del "%ARMASVRPATH%\Keys\cup_terrains_core-*.bikey" +:: add new bikey +xcopy /s/e/y/q/i "%ARMASVRPATH%\%MODFOLDER%\Keys" "%ARMASVRPATH%\Keys" + +:: Install CUP MAPS +SET MODFOLDER=@CUP Terrains - Maps +SET ARMAWORKSHOPID=583544987 +:: remove old folder +rd /s/q "%ARMASVRPATH%\%MODFOLDER%" +:: update workshop mod +START "" /WAIT steamcmd.exe +login %STEAMUN% %STEAMPW% +workshop_download_item %ARMAAPPID% %ARMAWORKSHOPID% +quit +:: copy files back to server +xcopy /s/e/y/q/i "steamapps\workshop\content\%ARMAAPPID%\%ARMAWORKSHOPID%" "%ARMASVRPATH%\%MODFOLDER%" +:: Remove old bikey +del "%ARMASVRPATH%\Keys\cup_terrains_maps-*.bikey" +:: add new bikey +xcopy /s/e/y/q/i "%ARMASVRPATH%\%MODFOLDER%\Keys" "%ARMASVRPATH%\Keys" + +:: Install CUP Vehicles +SET ARMAWORKSHOPID=541888371 +SET MODFOLDER=@CUP Vehicles +:: remove mod folder +rd /s/q "%ARMASVRPATH%\%MODFOLDER%" +:: update workshop mod +START "" /WAIT steamcmd.exe +login %STEAMUN% %STEAMPW% +workshop_download_item %ARMAAPPID% %ARMAWORKSHOPID% validate +quit +:: copy files back to server +xcopy /s/e/y/q/i "steamapps\workshop\content\%ARMAAPPID%\%ARMAWORKSHOPID%" "%ARMASVRPATH%\%MODFOLDER%" +del "%ARMASVRPATH%\Keys\cup_vehicles-*.bikey" +xcopy /s/e/y/q/i "%ARMASVRPATH%\%MODFOLDER%\Keys" "%ARMASVRPATH%\Keys" + +:: Install CBA +SET ARMAWORKSHOPID=450814997 +SET MODFOLDER=@CBA_A3 +:: remove mod folder +rd /s/q "%ARMASVRPATH%\%MODFOLDER%" +:: update workshop mod +START "" /WAIT steamcmd.exe +login %STEAMUN% %STEAMPW% +workshop_download_item %ARMAAPPID% %ARMAWORKSHOPID% validate +quit +:: copy files back to server +xcopy /s/e/y/q/i "steamapps\workshop\content\%ARMAAPPID%\%ARMAWORKSHOPID%" "%ARMASVRPATH%\%MODFOLDER%" +del "%ARMASVRPATH%\Keys\cba_*.bikey" +xcopy /s/e/y/q/i "%ARMASVRPATH%\%MODFOLDER%\Keys" "%ARMASVRPATH%\Keys" + +:: Install CUP Weapons +SET ARMAWORKSHOPID=497660133 +SET MODFOLDER=@CUP Weapons +:: remove mod folder +rd /s/q "%ARMASVRPATH%\%MODFOLDER%" +:: update workshop mod +START "" /WAIT steamcmd.exe +login %STEAMUN% %STEAMPW% +workshop_download_item %ARMAAPPID% %ARMAWORKSHOPID% validate +quit +:: copy files back to server +xcopy /s/e/y/q/i "steamapps\workshop\content\%ARMAAPPID%\%ARMAWORKSHOPID%" "%ARMASVRPATH%\%MODFOLDER%" +del "%ARMASVRPATH%\Keys\cup_weapons-*.bikey" +xcopy /s/e/y/q/i "%ARMASVRPATH%\%MODFOLDER%\Keys" "%ARMASVRPATH%\Keys" + +:: Install CUP Units +SET ARMAWORKSHOPID=497661914 +SET MODFOLDER=@CUP Units +:: remove mod folder +rd /s/q "%ARMASVRPATH%\%MODFOLDER%" +:: update workshop mod +START "" /WAIT steamcmd.exe +login %STEAMUN% %STEAMPW% +workshop_download_item %ARMAAPPID% %ARMAWORKSHOPID% validate +quit +:: copy files back to server +xcopy /s/e/y/q/i "steamapps\workshop\content\%ARMAAPPID%\%ARMAWORKSHOPID%" "%ARMASVRPATH%\%MODFOLDER%" +del "%ARMASVRPATH%\Keys\cup_units-*.bikey" +xcopy /s/e/y/q/i "%ARMASVRPATH%\%MODFOLDER%\Keys" "%ARMASVRPATH%\Keys" diff --git a/Tools/Install/InstallCUPTerrainPack.cmd b/Tools/Install/InstallCUPTerrainPack.cmd index 81ffa9d7..a679adbd 100644 --- a/Tools/Install/InstallCUPTerrainPack.cmd +++ b/Tools/Install/InstallCUPTerrainPack.cmd @@ -21,6 +21,13 @@ START "" /WAIT steamcmd.exe +login %STEAMUN% %STEAMPW% +workshop_download_item % :: copy files back to server xcopy /s/e/y/q/i "steamapps\workshop\content\%ARMAAPPID%\%ARMAWORKSHOPID%" "%ARMASVRPATH%\%MODFOLDER%" +:: Remove old bikey +del "%ARMASVRPATH%\Keys\cup_terrains_core-*.bikey" + +:: add new bikey +xcopy /s/e/y/q/i "%ARMASVRPATH%\%MODFOLDER%\Keys" "%ARMASVRPATH%\Keys" + + :: Install CUP MAPS @@ -35,3 +42,9 @@ START "" /WAIT steamcmd.exe +login %STEAMUN% %STEAMPW% +workshop_download_item % :: copy files back to server xcopy /s/e/y/q/i "steamapps\workshop\content\%ARMAAPPID%\%ARMAWORKSHOPID%" "%ARMASVRPATH%\%MODFOLDER%" + +:: Remove old bikey +del "%ARMASVRPATH%\Keys\cup_terrains_maps-*.bikey" + +:: add new bikey +xcopy /s/e/y/q/i "%ARMASVRPATH%\%MODFOLDER%\Keys" "%ARMASVRPATH%\Keys" From 3fdd351283e67fa86f61712913aab4c7c7289011 Mon Sep 17 00:00:00 2001 From: vbawol Date: Fri, 22 Apr 2016 09:52:56 -0500 Subject: [PATCH 06/18] 1.58 Difficulty Overhaul thanks to klinGiii on the forum: http://epochmod.com/forum/index.php?/topic/41922-158-difficulty-overhaul --- Changelogs/0.3.8.0.txt | 5 +- Server_Install_Pack/SC/server-example.cfg | 2 +- .../sc/users/sc/sc.arma3profile | 79 +++++++------------ 3 files changed, 33 insertions(+), 53 deletions(-) diff --git a/Changelogs/0.3.8.0.txt b/Changelogs/0.3.8.0.txt index f87c5cd0..aa3bd22d 100644 --- a/Changelogs/0.3.8.0.txt +++ b/Changelogs/0.3.8.0.txt @@ -43,13 +43,14 @@ [Info] Some AI Scripts Mods may not work with disableRemoteSensors enabled. You can disable with "disableRemoteSensors = false;" in CfgEpochClient. [Info] Removed old .bikey and added new one for 0380. -Build: 427 +Build: 428 +[Changed] 1.58 Difficulty Overhaul changes thanks to klinGiii on the forum: http://epochmod.com/forum/index.php?/topic/41922-158-difficulty-overhaul [Changed] Increased range for vehicle interactions to fix issues with access to larger vehicles. Thanks to Grahame for the report: http://epochmod.com/forum/index.php?/topic/41894-cannot-unlock-large-vehicles/ [Changed] Preloading sapper by spawning one on the map at server start. [Changed] Change to github markdown for credits and license. [Fixed] Mission loot payout not working. Thanks to @He-Man for the fix: http://epochmod.com/forum/index.php?/topic/41892-payout-trader-mission-broken/ [Fixed] Crafting recipe for Vehicle Repair Kit had wrong part in usedIn array. Thanks to LeBarbare for the report: http://epochmod.com/forum/index.php?/topic/41896-wrong-recipe-place/ -[Fixed] Green Marked traders unable to be accessed. +[Fixed] Green Marked traders unable to be accessed. Thanks to @He-Man for the report: http://epochmod.com/forum/index.php?/topic/41887-radom-unexpected-script-failure-with-traders-ai_slot/ [Fixed] Trailing commas in CfgLootTable. [Fixed] Disallow building inside of vehicles. [Fixed] Incorrectly enabled CUP vehicles and weapons support if only Core and Maps where enabled. diff --git a/Server_Install_Pack/SC/server-example.cfg b/Server_Install_Pack/SC/server-example.cfg index d6f3d889..6dc1808b 100644 --- a/Server_Install_Pack/SC/server-example.cfg +++ b/Server_Install_Pack/SC/server-example.cfg @@ -48,7 +48,7 @@ class Missions { class Epoch { template = epoch.Altis; // DO NOT CHANGE THIS, IT WILL BREAK YOUR SERVER - difficulty = "veteran"; // difficulty settings: veteran == NORMAL, mercenary == HARDCORE + difficulty = "custom"; // difficulty settings: custom }; }; diff --git a/Server_Install_Pack/sc/users/sc/sc.arma3profile b/Server_Install_Pack/sc/users/sc/sc.arma3profile index e0eb0e76..3a07015f 100644 --- a/Server_Install_Pack/sc/users/sc/sc.arma3profile +++ b/Server_Install_Pack/sc/users/sc/sc.arma3profile @@ -1,58 +1,37 @@ -version=2; - -viewDistance=3000; -preferredObjectViewDistance=3000; -terrainGrid=12.5; -activeKeys[]= +difficulty = "Custom"; +class DifficultyPresets { -}; - -class Difficulties -{ - class veteran + class CustomDifficulty { - class Flags + class Options { - Armor=0; - FriendlyTag=1; - EnemyTag=0; - MineTag=0; - HUD=1; - HUDWp=1; - HUDWpPerm=1; - HUDGroupInfo=1; - AutoSpot=0; - WeaponCursor=1; - ClockIndicator=1; - 3rdPersonView=1; - UltraAI=0; - CameraShake=0; - DeathMessages=1; - NetStats=1; - VonID=1; - ExtendetInfoType=0; + groupIndicators=2; + friendlyTags=0; + enemyTags=0; + detectedMines=0; + commands=1; + waypoints=1; + weaponInfo=0; + stanceIndicator=1; + reducedDamage=0; + staminaBar=0; + weaponCrosshair=1; + visionAid=0; + thirdPersonView=1; + cameraShake=1; + scoreTable=1; + deathMessages=1; + vonID=1; + mapContent=0; + autoReport=0; + multipleSaves=0; + }; - skillFriendly=0.6; - skillEnemy=0.6; - precisionFriendly=0.28; - precisionEnemy=0.28; + aiLevelPreset=2; }; - class mercenary + class CustomAILevel { - class Flags - { - HUD=1; - AutoSpot=0; - WeaponCursor=0; - DeathMessages=1; - NetStats=1; - VonID=1; - }; - skillFriendly=0.6; - skillEnemy=0.6; - precisionFriendly=0.28; - precisionEnemy=0.28; + skillAI=1; + precisionAI=0; }; }; - -difficulty="veteran"; \ No newline at end of file From 34b777dff99e7d54019f745caf56f2cff8245016 Mon Sep 17 00:00:00 2001 From: vbawol Date: Fri, 22 Apr 2016 10:46:17 -0500 Subject: [PATCH 07/18] Should fix false ban on revive http://epochmod.com/forum/index.php?/topic/41919-eh-inventoryclosed2/ --- Sources/epoch_code/compile/setup/EPOCH_clientRevive.sqf | 1 + 1 file changed, 1 insertion(+) diff --git a/Sources/epoch_code/compile/setup/EPOCH_clientRevive.sqf b/Sources/epoch_code/compile/setup/EPOCH_clientRevive.sqf index bb2897ff..cc94a739 100644 --- a/Sources/epoch_code/compile/setup/EPOCH_clientRevive.sqf +++ b/Sources/epoch_code/compile/setup/EPOCH_clientRevive.sqf @@ -40,6 +40,7 @@ if !(alive player && alive _playerObject && !isPlayer _playerObject) then { ("BIS_fnc_respawnCounter" call BIS_fnc_rscLayer) cutText ["","PLAIN"]; { + player removeEventHandler [_x, 0]; player addEventHandler [_x,(["CfgEpochClient", _x, ""] call EPOCH_fnc_returnConfigEntryV2)]; } forEach (["CfgEpochClient", "addEventHandler", []] call EPOCH_fnc_returnConfigEntryV2); From ba1bf9ceab0086f66675ec5da29f4b32a37a98b5 Mon Sep 17 00:00:00 2001 From: vbawol Date: Fri, 22 Apr 2016 10:46:53 -0500 Subject: [PATCH 08/18] hintsilent to Epoch_dynamicText --- Sources/epoch_code/compile/setup/masterLoop/Event1.sqf | 5 ++--- Sources/epoch_code/gui/scripts/group/EPOCH_Group_BtnMod.sqf | 2 +- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/Sources/epoch_code/compile/setup/masterLoop/Event1.sqf b/Sources/epoch_code/compile/setup/masterLoop/Event1.sqf index a6744742..ff319027 100644 --- a/Sources/epoch_code/compile/setup/masterLoop/Event1.sqf +++ b/Sources/epoch_code/compile/setup/masterLoop/Event1.sqf @@ -28,12 +28,11 @@ if (_vehicle == player) then { if (EPOCH_buildMode > 0) then { EPOCH_buildMode = 0; EPOCH_snapDirection = 0; - hintsilent "BUILD MODE: DISABLED"; + [format["BUILD MODE:%1","DISABLED"], 5] call Epoch_dynamicText; EPOCH_Target = objNull; - // EPOCH_SURVEY = []; }; _increaseStamina = true; - // TODO: move to vehicle configs + // TODO: move back to vehicle configs switch (typeOf _vehicle) do { case "jetski_epoch": { _clock_hour10 = floor ((date select 3)/10); diff --git a/Sources/epoch_code/gui/scripts/group/EPOCH_Group_BtnMod.sqf b/Sources/epoch_code/gui/scripts/group/EPOCH_Group_BtnMod.sqf index e667b918..574b535f 100644 --- a/Sources/epoch_code/gui/scripts/group/EPOCH_Group_BtnMod.sqf +++ b/Sources/epoch_code/gui/scripts/group/EPOCH_Group_BtnMod.sqf @@ -35,7 +35,7 @@ if (getPlayerUID player == Epoch_my_GroupUID) then { }; }; } else { - hintSilent "You need to select a player!"; + ["You need to select a player!", 5] call Epoch_dynamicText; }; true } else { From b401cbad7b3d9b2bdf843a970b85dcf15ecb3ffc Mon Sep 17 00:00:00 2001 From: vbawol Date: Fri, 22 Apr 2016 17:33:37 -0500 Subject: [PATCH 09/18] use new getOutMan EH for vehicle anti wall glitch --- Sources/epoch_code/compile/EPOCH_antiWall.sqf | 4 +--- Sources/epoch_code/compile/setup/EPOCH_masterLoop.sqf | 9 --------- Sources/epoch_code/init/client_init.sqf | 1 - Sources/epoch_config/Configs/CfgEpochClient.hpp | 4 +++- 4 files changed, 4 insertions(+), 14 deletions(-) diff --git a/Sources/epoch_code/compile/EPOCH_antiWall.sqf b/Sources/epoch_code/compile/EPOCH_antiWall.sqf index c19bc8a1..eb0cdd39 100644 --- a/Sources/epoch_code/compile/EPOCH_antiWall.sqf +++ b/Sources/epoch_code/compile/EPOCH_antiWall.sqf @@ -13,10 +13,8 @@ https://github.com/EpochModTeam/Epoch/tree/master/Sources/epoch_code/compile/EPOCH_antiWall.sqf */ private ["_worldPos","_front","_dirTo","_front2"]; -params ["_vehicle","_position","_unit"]; +params ["_unit","_position","_vehicle"]; if (_unit == player) then { - _vehicle removeAllEventHandlers "GetOut"; - EPOCH_currentVehicle = objNull; _worldPos = getPosATLVisual _vehicle; _worldPos set[2, (_worldPos select 2) + 1]; _front = _worldPos; diff --git a/Sources/epoch_code/compile/setup/EPOCH_masterLoop.sqf b/Sources/epoch_code/compile/setup/EPOCH_masterLoop.sqf index bd00dd6d..8e9a2b59 100644 --- a/Sources/epoch_code/compile/setup/EPOCH_masterLoop.sqf +++ b/Sources/epoch_code/compile/setup/EPOCH_masterLoop.sqf @@ -50,13 +50,4 @@ while {'+_condition+'} do { }; '; }forEach _configs; -_build_sqf = _build_sqf + ' - if (vehicle player != player) then { - if (isNull EPOCH_currentVehicle) then { - EPOCH_currentVehicle = vehicle player; - EPOCH_currentVehicle addEventHandler["GetOut", "_this call EPOCH_antiWall"]; - }; - }; - uiSleep 0.1; -};'; call compile _build_sqf; diff --git a/Sources/epoch_code/init/client_init.sqf b/Sources/epoch_code/init/client_init.sqf index a4930622..fb3900a0 100644 --- a/Sources/epoch_code/init/client_init.sqf +++ b/Sources/epoch_code/init/client_init.sqf @@ -46,7 +46,6 @@ EPOCH_prevOffer = []; EPOCH_drawIcon3d = false; EPOCH_velTransform = false; EPOCH_stabilityTarget = objNull; -EPOCH_currentVehicle = objNull; EPOCH_currentTarget = objNull; EPOCH_LootedBlds = []; EPOCH_lootObjects = []; diff --git a/Sources/epoch_config/Configs/CfgEpochClient.hpp b/Sources/epoch_config/Configs/CfgEpochClient.hpp index 812338e5..0cf9c1aa 100644 --- a/Sources/epoch_config/Configs/CfgEpochClient.hpp +++ b/Sources/epoch_config/Configs/CfgEpochClient.hpp @@ -59,7 +59,7 @@ class CfgEpochClient displayAddEventHandler[] = {"keyDown","keyUp"}; keyDown = "(_this call EPOCH_KeyDown)"; keyUp = "(_this call EPOCH_KeyUp)"; - addEventHandler[] = {"Respawn","Put","Take","InventoryClosed","InventoryOpened","Fired","Killed","HandleRating"}; + addEventHandler[] = {"Respawn","Put","Take","InventoryClosed","InventoryOpened","Fired","Killed","HandleRating","GetInMan","GetOutMan"}; Respawn = "(_this select 0) call EPOCH_clientRespawn"; Put = "(_this select 1) call EPOCH_interact;_this call EPOCH_PutHandler"; Take = "(_this select 1) call EPOCH_interact;_this call EPOCH_UnisexCheck"; @@ -73,6 +73,8 @@ class CfgEpochClient Dammaged = ""; Hit = ""; HitPart = ""; + GetInMan = ""; + GetOutMan = "_this call EPOCH_antiWall;"; // suppress these units from spawning near Jammer or Traders nonJammerAI[] = {"B_Heli_Transport_01_F","PHANTOM","Epoch_Cloak_F"}; From 04f6435c60363400b1868a3967c7c266d8fd80d0 Mon Sep 17 00:00:00 2001 From: vbawol Date: Fri, 22 Apr 2016 18:48:25 -0500 Subject: [PATCH 10/18] use latest example from forum http://epochmod.com/forum/index.php?/topic/41922-158-difficulty-overhaul/#comment-275193 --- Server_Install_Pack/SC/server-example.cfg | 4 +- .../sc/users/sc/sc.arma3profile | 221 +++++++++++++++--- 2 files changed, 189 insertions(+), 36 deletions(-) diff --git a/Server_Install_Pack/SC/server-example.cfg b/Server_Install_Pack/SC/server-example.cfg index 6dc1808b..53f76f21 100644 --- a/Server_Install_Pack/SC/server-example.cfg +++ b/Server_Install_Pack/SC/server-example.cfg @@ -39,7 +39,7 @@ allowedVotedAdminCmds[] = {}; // INGAME SETTINGS disableVoN = 0; // If set to 1, Voice over Net will not be available -vonCodecQuality = 20; // Quality from 1 to 30 +vonCodecQuality = 30; // Quality from 1 to 30 forceRotorLibSimulation = 0; // Enforces the Advanced Flight Model on the server. Default = 0 (up to the player). 1 - forced AFM, 2 - forced SFM. persistent = 1; // If 1, missions still run on even after the last player disconnected. @@ -48,7 +48,7 @@ class Missions { class Epoch { template = epoch.Altis; // DO NOT CHANGE THIS, IT WILL BREAK YOUR SERVER - difficulty = "custom"; // difficulty settings: custom + difficulty = "veteran"; // difficulty settings: Recruit, Regular Veteran, Custom }; }; diff --git a/Server_Install_Pack/sc/users/sc/sc.arma3profile b/Server_Install_Pack/sc/users/sc/sc.arma3profile index 3a07015f..b7130def 100644 --- a/Server_Install_Pack/sc/users/sc/sc.arma3profile +++ b/Server_Install_Pack/sc/users/sc/sc.arma3profile @@ -1,37 +1,190 @@ -difficulty = "Custom"; -class DifficultyPresets +version=1; +blood=1; +volumeCD=5; +volumeFX=5; +volumeSpeech=5; +singleVoice=0; +gamma=1; +brightness=1; +class CfgDifficultyPresets { - class CustomDifficulty - { - class Options - { - groupIndicators=2; - friendlyTags=0; - enemyTags=0; - detectedMines=0; - commands=1; - waypoints=1; - weaponInfo=0; - stanceIndicator=1; - reducedDamage=0; - staminaBar=0; - weaponCrosshair=1; - visionAid=0; - thirdPersonView=1; - cameraShake=1; - scoreTable=1; - deathMessages=1; - vonID=1; - mapContent=0; - autoReport=0; - multipleSaves=0; + defaultPreset = Regular; - }; - aiLevelPreset=2; - }; - class CustomAILevel - { - skillAI=1; - precisionAI=0; - }; + // Parameters that affect difficulty and which are shared among presets + myArmorCoef = 1.5; + groupArmorCoef = 1.5; + + //Parameters that affect the Limited distance choice for Group Indicators, Friendly Name Tags, Enemy Name Tags and Detected Mines. + //They determine on which distance the indicators are fully visible and how many more meters it takes until the indicator fades-out completely. + fadeDistanceStart = 40.0; + fadeDistanceSpan = 10.0; + + recoilCoef = 1; + visionAidCoef = 0.8; + divingLimitMultiplier = 1.0; //Multiplier to limit capacity of lungs for soldiers. + + animSpeedCoef = 0; + cancelThreshold = 0; //Threshold used for interrupting action. + showCadetHints = true; + showCadetWP = true; + + class Recruit + { + displayName = $STR_Difficulty0; //Name of the difficulty preset. + + class Options + { + // Simulation + reducedDamage = true; // Reduced damage + + // Situational awareness + groupIndicators = 2; // Group indicators (0 = never, 1 = limited distance, 2 = always) + friendlyTags = 2; // Friendly name tags (0 = never, 1 = limited distance, 2 = always) + enemyTags = 0; // Enemy name tags (0 = never, 1 = limited distance, 2 = always) + detectedMines = 2; // Detected mines (0 = never, 1 = limited distance, 2 = always) + commands = 2; // Commands (0 = never, 1 = fade out, 2 = always) + waypoints = 2; // Waypoints (0 = never, 1 = fade out, 2 = always) + + // Personal awareness + weaponInfo = 2; // Weapon info (0 = never, 1 = fade out, 2 = always) + stanceIndicator = 2; // Stance indicator (0 = never, 1 = fade out, 2 = always) + staminaBar = true; // Stamina bar + weaponCrosshair = true; // Weapon crosshair + visionAid = true; // Vision aid + + // View + thirdPersonView = true; // 3rd person view + cameraShake = true; // Camera shake + + // Multiplayer + scoreTable = true; // Score table + deathMessages = true; // Killed by + vonID = true; // VON ID + + // Misc + mapContent = true; // Extended map content + autoReport = true; // Automatic reporting + multipleSaves = true; // Multiple saves + }; + }; + + class Regular + { + displayName = $STR_Difficulty1; //Name of the difficulty preset. + + class Options + { + // Simulation + reducedDamage = false; // Reduced damage + + groupIndicators = 1; // Group indicators (0 = never, 1 = limited distance, 2 = always) + friendlyTags = 1; // Friendly name tags (0 = never, 1 = limited distance, 2 = always) + enemyTags = 0; // Enemy name tags (0 = never, 1 = limited distance, 2 = always) + detectedMines = 1; // Detected mines (0 = never, 1 = limited distance, 2 = always) + commands = 1; // Commands (0 = never, 1 = fade out, 2 = always) + waypoints = 2; // Waypoints (0 = never, 1 = fade out, 2 = always) + + // Personal awareness + weaponInfo = 2; // Weapon info (0 = never, 1 = fade out, 2 = always) + stanceIndicator = 2; // Stance indicator (0 = never, 1 = fade out, 2 = always) + staminaBar = true; // Stamina bar + weaponCrosshair = true; // Weapon crosshair + visionAid = false; // Vision aid + + // View + thirdPersonView = true; // 3rd person view + cameraShake = true; // Camera shake + + // Multiplayer + scoreTable = true; // Score table + deathMessages = true; // Killed by + vonID = true; // VON ID + + // Misc + mapContent = true; // Extended map content + autoReport = true; // Automatic reporting + multipleSaves = true; // Multiple saves + }; + }; + + class Veteran + { + displayName = $STR_Difficulty2; //Name of the difficulty preset. + + class Options + { + // Simulation + reducedDamage = false; // Reduced damage + + // Situational awareness + groupIndicators = 0; // Group indicators (0 = never, 1 = limited distance, 2 = always) + friendlyTags = 0; // Friendly name tags (0 = never, 1 = limited distance, 2 = always) + enemyTags = 0; // Enemy name tags (0 = never, 1 = limited distance, 2 = always) + detectedMines = 0; // Detected mines (0 = never, 1 = limited distance, 2 = always) + commands = 1; // Commands (0 = never, 1 = fade out, 2 = always) + waypoints = 1; // Waypoints (0 = never, 1 = fade out, 2 = always) + + // Personal awareness + weaponInfo = 1; // Weapon info (0 = never, 1 = fade out, 2 = always) + stanceIndicator = 1; // Stance indicator (0 = never, 1 = fade out, 2 = always) + staminaBar = false; // Stamina bar + weaponCrosshair = false; // Weapon crosshair + visionAid = false; // Vision aid + + // View + thirdPersonView = true; // 3rd person view + cameraShake = true; // Camera shake + + // Multiplayer + scoreTable = true; // Score table + deathMessages = true; // Killed by + vonID = true; // VON ID + + // Misc + mapContent = false; // Extended map content + autoReport = false; // Automatic reporting + multipleSaves = false; // Multiple saves + }; + }; + + class Custom + { + displayName = $STR_Difficulty_Custom; //Name of the difficulty preset. + + //All options of the Custom preset are set by the engine. The values in config + class Options + { + // Simulation + reducedDamage = false; // Reduced damage + + // Situational awareness + groupIndicators = 0; // Group indicators (0 = never, 1 = limited distance, 2 = always) + friendlyTags = 0; // Friendly name tags (0 = never, 1 = limited distance, 2 = always) + enemyTags = 0; // Enemy name tags (0 = never, 1 = limited distance, 2 = always) + detectedMines = 0; // Detected mines (0 = never, 1 = limited distance, 2 = always) + commands = 0; // Commands (0 = never, 1 = fade out, 2 = always) + waypoints = 0; // Waypoints (0 = never, 1 = fade out, 2 = always) + + // Personal awareness + weaponInfo = 1; // Weapon info (0 = never, 1 = fade out, 2 = always) + stanceIndicator = 0; // Stance indicator (0 = never, 1 = fade out, 2 = always) + staminaBar = false; // Stamina bar + weaponCrosshair = false; // Weapon crosshair + visionAid = false; // Vision aid + + // View + thirdPersonView = false; // 3rd person view + cameraShake = false; // Camera shake + + // Multiplayer + scoreTable = false; // Score table + deathMessages = false; // Killed by + vonID = false; // VON ID + + // Misc + mapContent = false; // Extended map content + autoReport = false; // Automatic reporting + multipleSaves = false; // Multiple saves + }; + }; }; From 861d21a1a8bea90a11bd2977351a99cc517a671c Mon Sep 17 00:00:00 2001 From: vbawol Date: Fri, 22 Apr 2016 18:54:04 -0500 Subject: [PATCH 11/18] rework display EH checks a bit --- Server_Install_Pack/sc/battleye/scripts.txt | 5 +++-- .../init/server_securityfunctions.sqf | 22 ++++++++----------- 2 files changed, 12 insertions(+), 15 deletions(-) diff --git a/Server_Install_Pack/sc/battleye/scripts.txt b/Server_Install_Pack/sc/battleye/scripts.txt index 115f50c8..1c7c29a5 100644 --- a/Server_Install_Pack/sc/battleye/scripts.txt +++ b/Server_Install_Pack/sc/battleye/scripts.txt @@ -49,9 +49,10 @@ 7 ctrlSetEventHandler !"BIS_fnc_guiMessage_status" !"ctrlSetEventHandler ['LBDblClick', '_this call" !="_buttonRespawn ctrlseteventhandler [\"buttonclick\",\"with uinamespace do {['buttonRespawn'," !="_ctrl ctrlSetEventHandler [\"mouseEnter\"" !="_ctrlBtn ctrlSetEventHandler [\"MouseButtonDblClick\", _verAct];" 7 addMPEventHandler 7 addEventHandler !"displayAddEventHandler" !"ctrlAddEventHandler" !"[\"FiredNear"\" !"[\"EpeContactStart"\" !"[\"GetOut"\" !"[\"local"\" !"[\"PostReset"\" !"[\"TaskSetAsCurrent"\" !="player addEventHandler [_x,([\"CfgEpochClient\", _x, \"\"] call EPOCH_fnc_returnConfigEntryV2)];" !="\"CBA_fnc_addEventHandler\"" !="\\fnc_addEventHandler" !="\"addEventHandler" !="_eventFunc = _eventFunc + \"(_this select 0) addEventHandler ['Respawn', \" + str _eventFunc + \"];\";" !="_unit addEventHandler [\"hitpart\"," !="CBA_fnc_addEventHandler" -7 displayAddEventHandler !="(findDisplay 46) displayAddEventHandler [\"KeyDown\",\"true\"];" !="_display displayAddEventHandler [_x,([\"CfgEpochClient\", _x, \"\"] call EPOCH_fnc_returnConfigEntryV2)];" !="_addCase = _display46 displayAddEventHandler ['KeyDown',{_this call EPOCH_KeyDown}];" !="_display displayaddeventhandler\n[\n\"mousemoving\"," !="_display displayaddeventhandler [\"unload\",\"uinamespace setvariable ['BIS_fnc_guiMess" !="findDisplay -1337 displayAddEventHandler ['Unload'" !="_display displayaddeventhandler [\"keydown\",\"with uinamespace do {['keyDown'" !="_display displayaddeventhandler [_x,_fnc_animate];" !="Development\") then\n{\n_display displayaddeventhandler [\n\"keydown\"" !="_display displayaddeventhandler [\"mousemoving\",\"with uinamespace do {['watchFields'" !="/"CBA_fnc_addDisplayHandler/"" +7 displayAddEventHandler !="(findDisplay 46) displayAddEventHandler [\"KeyDown\",\"true\"];" !="_display displayAddEventHandler [_x,([\"CfgEpochClient\", _x, \"\"] call EPOCH_fnc_returnConfigEntryV2)];" !="_display displayaddeventhandler\n[\n\"mousemoving\"," !="_display displayaddeventhandler [\"unload\",\"uinamespace setvariable ['BIS_fnc_guiMess" !="findDisplay -1337 displayAddEventHandler ['Unload'" !="_display displayaddeventhandler [\"keydown\",\"with uinamespace do {['keyDown'" !="_display displayaddeventhandler [_x,_fnc_animate];" !="Development\") then\n{\n_display displayaddeventhandler [\n\"keydown\"" !="_display displayaddeventhandler [\"mousemoving\",\"with uinamespace do {['watchFields'" !="/"CBA_fnc_addDisplayHandler/"" 7 ctrlAddEventHandler !"rCfg >> \"refreshDelay\");" !" [\n\"draw\"," !" [\"buttonclick\"," !="(uiNamespace getVariable 'ESP_map') ctrlAddEventHandler['Draw', '_esp_targets = EPOCH_ESPMAP_TARGETS;" !="ctrlAddEventHandler ['MouseButtonDown'" !="(_display displayctrl _idc) ctrlAddEventHandler [\"LBSelChanged\"," !="_ctrl ctrlSetEventHandler [\"mouseEnter\", (format [\"_c = _this select 0;" !="_ctrl ctrlSetEventHandler [\"mouseExit\", (format [\"_c = _this select 0;" !="_ctrl ctrlSetEventHandler [\"mouseButtonDown\", (format [\"call %1;\",(_buttonSettings select _e select 2)])];" !="_prevButton ctrlAddEventHandler [\"MouseButtonUp\", {_this call cba_diagnostic_fnc_debug" -7 removeAllEventHandlers !="ctrlRemoveAllEventHandlers" !="_vehicle removeAllEventHandlers \"GetOut\";" !="_sapper removeAllEventHandlers \"Hit\";\n_sapper removeAllEventHandlers \"FiredNear\";" !="_unit removeAllEventHandlers \"Hit\";\n_unit removeAllEventHandlers \"FiredNear\";" !="_display46 displayRemoveAllEventHandlers 'KeyDown';" !="if !(isMultiplayer) then { { (findDisplay 46) displayRemoveAllEventHandlers _x } forEach [\"KeyUp\", \"KeyDown\"] };" +7 removeAllEventHandlers !="ctrlRemoveAllEventHandlers" !="displayRemoveAllEventHandlers" !="_vehicle removeAllEventHandlers \"GetOut\";" !="_sapper removeAllEventHandlers \"Hit\";\n_sapper removeAllEventHandlers \"FiredNear\";" !="_unit removeAllEventHandlers \"Hit\";\n_unit removeAllEventHandlers \"FiredNear\";" +7 displayRemoveAllEventHandlers !="_display displayRemoveAllEventHandlers _x;" !="if !(isMultiplayer) then { { (findDisplay 46) displayRemoveAllEventHandlers _x } forEach [\"KeyUp\", \"KeyDown\"] };" 7 removeAllMissionEventHandlers 7 ctrlRemoveAllEventHandlers !="(uiNamespace getVariable 'ESP_map') ctrlRemoveAllEventHandlers 'Draw';" !="ctrlAddEventHandler ['MouseButtonDown'" 7 removeEventHandler !="displayRemoveEventHandler" !="player removeEventHandler ['Fired', 0];" !"_currentTarget removeEventHandler[\"EpeContactStart\", _onContactEH]" !" [_adminVar,objnull];\npublicvariable _adminVar;\nplayer removeeventhandler [\"respawn\",_respawn];" !="_plyr removeEventHandler [\"FiredNear\", _smokeEH];" !="player removeEventHandler [_ehKey, 0];" !="\"CBA_fnc_removeEventHandler\"" !="\\fnc_removeEventHandler" !="\"removeEventHandler" diff --git a/Sources/epoch_server/init/server_securityfunctions.sqf b/Sources/epoch_server/init/server_securityfunctions.sqf index a8177971..a357f6f5 100644 --- a/Sources/epoch_server/init/server_securityfunctions.sqf +++ b/Sources/epoch_server/init/server_securityfunctions.sqf @@ -809,7 +809,6 @@ _skn_code_antihack = compileFinal (" disableSerialization; _ActionCount = -1; _ActionVehicle = player; - _displayCountKD = 0; _displayCount = 0; _personalToken = Epoch_personalToken; _antiWallCount = 0; @@ -884,18 +883,15 @@ _skn_code_antihack = compileFinal (" [format['viewDistance %1',viewDistance],0] call "+_sknBanANDSleep+"; }; "+_sknAddActionCheck+" - _display46 = findDisplay 46; - if !(isNull _display46) then { - _display46 displayRemoveAllEventHandlers 'KeyDown'; - _addCase = _display46 displayAddEventHandler ['KeyDown',{"+_skn_displayAddEHKeyDown+"}]; - if (_addCase != _displayCountKD) then { - [format['DEH: KeyDown %1/%2',_addCase,_displayCountKD],0] call "+_sknBanANDSleep+"; - }; - _display46 displayRemoveAllEventHandlers 'KeyUp'; - _addCase = _display46 displayAddEventHandler ['KeyUp',{"+_skn_displayAddEHKeyUp+"}]; - if (_addCase != _displayCount) then { - [format['DEH: KeyUp %1/%2',_addCase,_displayCount],0] call "+_sknBanANDSleep+"; - }; + _display = findDisplay 46; + if !(isNull _display) then { + { + _display displayRemoveAllEventHandlers _x; + _addCase = _display displayAddEventHandler [_x,([""CfgEpochClient"", _x, """"] call EPOCH_fnc_returnConfigEntryV2)]; + if (_addCase != _displayCount) then { + [format['DEH: %3 %1/%2',_addCase,_displayCount,_x],0] call "+_sknBanANDSleep+"; + }; + } forEach (['CfgEpochClient', 'displayAddEventHandler', []] call EPOCH_fnc_returnConfigEntryV2); }; uiSleep ((random 1)+1); }; From f397fbc15009eb8c2597c1fedd92c2901b500b36 Mon Sep 17 00:00:00 2001 From: vbawol Date: Fri, 22 Apr 2016 18:54:30 -0500 Subject: [PATCH 12/18] 0.3.8.0429 --- .../@epochhive/addons/a3_epoch_server.pbo | Bin 387678 -> 387495 bytes .../addons/a3_epoch_server_settings.pbo | Bin 396544 -> 396544 bytes .../@epochhive/addons/epoch_server_core.pbo | Bin 12329 -> 12329 bytes Server_Install_Pack/MPMissions/epoch.Napf.pbo | Bin 910635 -> 910490 bytes .../mpmissions/epoch.Altis.pbo | Bin 910668 -> 910523 bytes .../mpmissions/epoch.Australia.pbo | Bin 908896 -> 908751 bytes .../mpmissions/epoch.Bootcamp_ACR.pbo | Bin 909983 -> 909838 bytes .../mpmissions/epoch.Bornholm.pbo | Bin 909830 -> 909685 bytes .../mpmissions/epoch.Chernarus.pbo | Bin 909804 -> 909659 bytes .../mpmissions/epoch.Chernarus_Summer.pbo | Bin 909811 -> 909666 bytes .../mpmissions/epoch.Desert_E.pbo | Bin 909956 -> 909811 bytes .../mpmissions/epoch.Esseker.pbo | Bin 909796 -> 909651 bytes .../mpmissions/epoch.Mountains_ACR.pbo | Bin 910223 -> 910078 bytes .../mpmissions/epoch.Porto.pbo | Bin 909947 -> 909802 bytes .../mpmissions/epoch.ProvingGrounds_PMC.pbo | Bin 909958 -> 909813 bytes Server_Install_Pack/mpmissions/epoch.Sara.pbo | Bin 910220 -> 910075 bytes .../mpmissions/epoch.SaraLite.pbo | Bin 910222 -> 910077 bytes .../mpmissions/epoch.Sara_dbe1.pbo | Bin 910225 -> 910080 bytes .../mpmissions/epoch.Shapur_BAF.pbo | Bin 909950 -> 909805 bytes .../mpmissions/epoch.Stratis.pbo | Bin 909804 -> 909659 bytes .../mpmissions/epoch.Takistan.pbo | Bin 909912 -> 909767 bytes Server_Install_Pack/mpmissions/epoch.VR.pbo | Bin 909796 -> 909651 bytes .../mpmissions/epoch.Woodland_ACR.pbo | Bin 910223 -> 910078 bytes .../mpmissions/epoch.Zargabad.pbo | Bin 909880 -> 909735 bytes Server_Install_Pack/mpmissions/epoch.utes.pbo | Bin 909943 -> 909798 bytes Sources/epoch_config/build.hpp | 2 +- Sources/epoch_server/build.hpp | 2 +- Sources/epoch_server_core/build.hpp | 2 +- Sources/epoch_server_settings/build.hpp | 2 +- build.txt | 2 +- 30 files changed, 5 insertions(+), 5 deletions(-) diff --git a/Server_Install_Pack/@epochhive/addons/a3_epoch_server.pbo b/Server_Install_Pack/@epochhive/addons/a3_epoch_server.pbo index 4450ad270cd5b44eac8cb8d3ea6b96f0c2e329ad..2f67e7eab5c86c2df95814efceb4c52359707ff7 100644 GIT binary patch delta 312 zcmcb2MSS^X@d-Z6p*y5D`X`ApNA8fCyhU^s$A?u?;g!Nn4AT?%nI$LJi>+a{v{sm` zs2tkdEZ*KM&bYl77L^ z+SBy{n8evrGK&jx5-X>lD`JtKzF-0)*L1}a7UAhJ>sch_<12JDqLq}K)6!iF@{=>1 zb23x&N|cmz6o3*6N=nlczc8zCgc)hZTJv&oPA@NEF%aa8PRlRKO)QC4cX9QwQcyLX zKChTXZdxph`gFT^7A^|~ptNgZa)yFNv^uJ}>N*PQP{%l?q_~y=t@23BOUX$s0?I^B tH+;ja%nY=v{cj1&_P-^pzNI4fD_?MZ_;}{k$r+YY-u?*SoU>KS2>@tPY{mcp delta 367 zcmZ2}S^VA=@d-Z6x5C9X`X`Ap-w79+yhU^s2YV@7xPb^0!}J7xX35F*Vr!VqtraFK zDu*^Vi?=t6Gj4AdXF73*arJheFHA4F*bK}}49v~it^YG^xBky;kjCciqF}3Fust%B zMU0op#B6$g5sS8ziJ7KCNk(d(LNzZJClJJ^WEL0XBvu0DcNDS6^Qe2LR=VVu=c!xs za!tQm#3ByT$!NkVHGTg&7Eb1BCGF{jCd?A-+Df&tASDsSEQ(CtF4O-fut@N@xO!MA zKn<8avzSE=B%@fzqB?y+3JV)Ix@BA-%R&np(3N;S4Q6vd&;SUm^=97tF5E y0R%nqq=7X}7~q|(fs6upds0w5a!qJXlzKyGq=URq|lUNV|AQ1iwq zv)ROrO${uKOq8s7xoUwJY?Q5uk!7tIF*6Xe05R)!H+HsVtRmuRyAQb> T*z5NsZhpz??BBw@8&lZPK`7X}7~q|(fs6upds0w5a!?f_+Zf!yT$ytK@8y<{|LpyrKJ zX0wSKn3))uTPRuca@7Jc*eF{QBlBiA_I5XRMj&PaVrC#_0bslVR20N*6S=GscqT-uvg&wlA zCE7}bA7GuV$S68_gCx&nS1D;W^?6d^TOdLKGJ=!OOR-8A>J=BJF(897pgD0uV0}PE zo6k#C3$hji#WqZKRFj&#K}TqFwa!;Ijt}#t!ecoZ7^eUH$t^uOQ-*i*0%Ju+w)h=V z;k*o!H(E(e);E>h{L4gxiH&uERCt;!P)u#JpZO;?He*u*OEaU*ZgvMAN|)wkmMG~c z#TVokXO?8<=YiN|sTrBcIjPeX6&O|8Co3=lG1K`$ZQY^JVGo}kTG0RNnc4p>dNlHx4ZkKRo-Y((H zl6`o(S|X#;^nNy0naP54G`4SHV{NG49@@ql`H|7GeSJ9_5VHd@2M}{^Uti7@|5Qvz z$vw5iGtV~>g$qY}- p$+2$lP2vV(p6$I!yj@Kq+Rtu_nykC3{lg~kr2jdN%Id$yDF942tK$Fw delta 764 zcmbPr(tPzP^9g3m%n@Q6EhSl5*SUTOW1XBRAU62`2ix?guNlQRcd<_6VS7-`7A~tg zSx{7bv#roWcD9KZu7u5Eovg?xI(dU6&-CjS%zQ!&$Y2go!T!mOJYtgrWCSOlmtvJL z)GIDbLsr5Nv*T}=p%B;*prXy^rK$y4cf9-_Rz2BKO=|K69ih$DI$zmX<^BkV*KIB} z_F-gu5H1$Z%P@JPmDFT?Q_0Q0Of;C-iVB6pS!ID@YMcGcKe4eHn3)(Fnr?QpJMeJ& ztw+q<0tNZSnI)O|c}hA;@uhj0CDRoZ7*(e8K4#`{DoV}GFH3dI$#E@9%`5Rp%uC5h zEh<(}a!)PsFD+5B=H=pa4e)pNh)*spDgvqqOU=kk&Pi3URme}u@+-~Bv2J%%U<6{O z?T!k}lSH@wG-ZCuHeJV>S$4XD6tl?W`6XP_trQr!>Nzvh6f`o6L3$Lh8L6pIl98IH zPz|(^6PKN3P}>V~5-U@SK#s$qG%+Ow*+bDv?(7f`=}cFQf%)FA~%p70{C@49FdiuC1`1-rJS}C}A z20J?WxVk7!H>_b&5Yg9%`Ykv#D9kky7);Tz)9*Mk8?_5NF>e=kV#zwp12QTYYSi@k ztgJGOO49`eS*5m5_{LJqIJsJfbNbewj2hc#va_D5Wrqg%^owfD!rNn7Sra}on_DYP z|G1MSd0G=2PrF_@8xXStF$WNHZr3a4diP|zaSV4eYg-a`TN2N3X>Z SGs-dp?|(0o-(>UjEh_-F)%bV- diff --git a/Server_Install_Pack/mpmissions/epoch.Altis.pbo b/Server_Install_Pack/mpmissions/epoch.Altis.pbo index 09fe7dc318a264ffd981192fea96c9a9c5c83105..23ce25b3fba3ac073c18a49a1778d3865c175ad4 100644 GIT binary patch delta 553 zcmX?e%6#`p^9g3mNjs!AT1v9A8ZDIy-#$5!Q)Y89>slVR20N*6S=GscqT-uvg&wlA zCE7}bA7GuV$S68_gCx&nS1D;W^?6d^TOdLKGJ=!OOR-8A>J=BJF(897pgD0uV0}PE zo6k#C3$hji#WqZKRFj&#K}TqFwa!;Ijt}#t!ecoZ7^eUH$t^uOQ-*i*0%Ju+w)h=V z;k*o!H(E(e);E>h{L4gxiH&uERCt;!P)u#JpZO;?He*u*OJjr0ZgvMAN|)wkmMG~c z#TVokXO?8<=YiN|sTrBcIjPeX6&O|8Co3=lG1K`$ZQY^JVGo}kTG0RNnc4p>dNlHx4ZkKRo-Y((H zl6`o(S|X#;^nNy0naP54G`4SHV{NG49@@ql`H|7GeSJ9_5VHd@2M}{^Uti7@|5Qvz z$vw5iGtV~>g$qY}- p$+2$lP2vV(p6$I!ysMi;5<2Ay?3ityCg12bViyr@e!RhcApmzOsyYAw delta 764 zcmdme()`RR^9g3mkHf__T1v9Au54z}q}Uo(nt?qZ$B!}g$>EnHT0 zvY@E=W?P|$>}(S+TnU@SI$4oXbn*sCp6S;unE8Ylkii_Fg8h>ldBi3M$Ouk8FU2Zh zs8?K=hOC4kX2;(!Lm{vsKt-F+OH~W9?s)ke_~@ZFf%c*Fy8EDci`dl zTaTEz1q$+uGfOh_^OSUy;!E=~OQtI-Fse-Feay_^RFs;VUzX~aljB;JnpfhHn3s~1 zT2!o{(wVLp%Pp*xm{*b+o|u!P6bm+_ z7DR%H(#+tT)YJk613g2aSgp1C_S-hhEi8%|nRz9}nK{4^P*8FT_4IL3@b!0bwNh~L z40d$#adlCeZdk*lAfm4i^;>XgP?&2ZFqooar{8g8Hfk4kV%{$7#FBNG2V_(*)Trt6 zSy^Qmm8J^{vPx~A@QtOIadNc|=k%>V88x=gWM@59%MK0j=@-?Qg}2AFvL<|FHn&!o z{&6Qu^0X#4o_4)*HXvpPVh$kY+^$#7_3p`b;~4H{*0v<>wj`cyNxaLOL@w!P_J8slVR20N*6S=GscqT-uvg&wlA zCE7}bA7GuV$S68_gCx&nS1D;W^?6d^TOdLKGJ=!OOR-8A>J=BJF(897pgD0uV0}PE zo6k#C3$hji#WqZKRFj&#K}TqFwa!;Ijt}#t!ecoZ7^eUH$t^uOQ-*i*0%Ju+w)h=V z;k*o!H(E(e);E>h{L4gxiH&uERCt;!P)u#JpZO;?He*u*OJkGGZgvMAN|)wkmMG~c z#TVokXO?8<=YiN|sTrBcIjPeX6&O|8Co3=lG1K`$ZQY^JVGo}kTG0RNnc4p>dNlHx4ZkKRo-Y((H zl6`o(S|X#;^nNy0naP54G`4SHV{NG49@@ql`H|7GeSJ9_5VHd@2M}{^Uti7@|5Qvz z$vw5iGtV~>g$qY}- p$+2$lP2vV(p6$I!y!)#~vcj!$pZ2n6-&iU2jN!?o9$$7D9ssdLs;>Y5 delta 764 zcmX@V+x)>E^9g3m&%?zwT1v9Au54z}q}Uo(nt?qZ$B!}g$>EnHT0 zvY@E=W?P|$>}(S+TnU@SI$4oXbn*sCp6S;unE8Ylkii_Fg8h>ldBi3M$Ouk8FU2Zh zs8?K=hOC4kX2;(!Lm{vsKt-F+OH~W9?s)ke_~@ZFf%c*FyHKEci`dl zTaTEz1q$+uGfOh_^OSUy;!E=~OQtI-Fse-Feay_^RFs;VUzX~aljB;JnpfhHn3s~1 zT2!o{(wVLp%Pp*xm{*b+o|u!P6bm+_ z7DR%H(#+tT)YJk613g2aSgp1C_S-hhEi8%|nRz9}nK{4^P*8FT_4IL3@b!0bwNh~L z40d$#adlCeZdk*lAfm4i^;>XgP?&2ZFqooar{8g8Hfk4kV%{$7#FBNG2V_(*)Trt6 zSy^Qmm8J^{vPx~A@QtOIadNc|=k%>V88x=gWM@59%MK0j=@-?Qg}2AFvL<|FHn&!o z{&6Qu^0X#4o_4)*HXvpPVh$kY+^$#7_3p`b;~4H{*0v<>wj`cyNxZwOMSf^$teUqX T)F#yCxcIN-O?u+nmxKTSP=NU` diff --git a/Server_Install_Pack/mpmissions/epoch.Bootcamp_ACR.pbo b/Server_Install_Pack/mpmissions/epoch.Bootcamp_ACR.pbo index d8c5c46ae44c77fef93f8277cb7055a9683964ac..5e23c7b89d8888b6f079966d3dca8bccb7b32a32 100644 GIT binary patch delta 553 zcmbP#)V%MA`2;iO%pFo2EhSl5jh0G(tCTdG`aG%dEfApq8NtctrC22l^@zhh${$--U#KyWnDm+aVD5kdA&-@b`o3W{ZrLp;DH@gE5rAzZNOO$k! z;tTSNGfOh_^FZvf)QrsJoYd)x3XCf4lNA_&m}&cD1?E0c`J&X^{IXQnvedj1kHox` zoYW$P==cg91%p^?UM^0~>5Y0!65EZ;n6I#H7qnw;WSLsbs43?Z>gnU6;Op<=YNcvu zqhDeNw8X_T*wM+y)kP_GGGn#Ebb|Vm|+<`2;iOSK(qCEhSl5*SUTOW1XBRAU62`2ix?guNlQRcd<_6VS7-`7A~tg zSx{7bv#roWcD9KZu7u5Eovg?xI(dU6&-CjS%zQ!&$Y2go!T!mOJYtgrWCSOlmtvJL z)GIDbLsr5Nv*T}=p%B;*prXy^rK$y4cf9-_Rz2BKO=|K69ih$DI$zmX<^BkV*KIB} z_F-gu5H1$Z%P@JPmDFT?Q_0Q0Of;C-iVB6pS!ID@YMcGcKe4eHn3)(@8fS$4XD6tl?W`6XP_trQr!>Nzvh6f`o6L3$Lh8L6pIl98IH zPz|(^6PKN3P}>V~5-U@SK#s$qG%+Ow*+bDv?(7f`=}cFQf%)FA~%p70{C@49FdiuC1`1-rJS}C}A z20J?WxVk7!H>_b&5Yg9%`Ykv#D9kky7);Tz)9*Mk8?_5NF>e=kV#zwp12QTYYSi@k ztgJGOO49`eS*5m5_{LJqIJsJfbNbewj2hc#va_D5Wrqg%^owfD!rNn7Sra}on_DYP z|G1MSd0G=2PrF_@8xXStF$WNHZr3a4diP|zaSV4eYg-a`TN2Ncig{k T9FunX{*o(;BRqC})@cO*9Bcbb diff --git a/Server_Install_Pack/mpmissions/epoch.Bornholm.pbo b/Server_Install_Pack/mpmissions/epoch.Bornholm.pbo index 0d8a7a5e77c853c62a99260a1213a2de32449ae4..5a002796c5e6ee15999c9736c3a8eb4c5ad7e0d9 100644 GIT binary patch delta 553 zcmZoWV*d4z`2;iO+#OOIEhSl5jh0G(tCTdG`aG%dEfApq8NtctrC22l^@zhh${$--U#KyWnDm+aVD5kdA&-@b`o3W{ZrHSEYH@gE5rAzZNOO$k! z;tTSNGfOh_^FZvf)QrsJoYd)x3XCf4lNA_&m}&cD1?E0c`J&X^{IXQnvedj1kHox` zoYW$P==cg91%p^?UM^0~>5Y0!65EZ;n6I#H7qnw;WSLsbs43?Z>gnU6;Op<=YNcvu zqhDeNw8X_T*wM+y)kP_GGGn#Ebb|S$4XD6tl?W`6XP_trQr!>Nzvh6f`o6L3$Lh8L6pIl98IH zPz|(^6PKN3P}>V~5-U@SK#s$qG%+Ow*+bDv?(7f`=}cFQf%)FA~%p70{C@49FdiuC1`1-rJS}C}A z20J?WxVk7!H>_b&5Yg9%`Ykv#D9kky7);Tz)9*Mk8?_5NF>e=kV#zwp12QTYYSi@k ztgJGOO49`eS*5m5_{LJqIJsJfbNbewj2hc#va_D5Wrqg%^owfD!rNn7Sra}on_DYP z|G1MSd0G=2PrF_@8xXStF$WNHZr3a4diP|zaSV4eYg-a`TN2NslVR20N*6S=GscqT-uvg&wlA zCE7}bA7GuV$S68_gCx&nS1D;W^?6d^TOdLKGJ=!OOR-8A>J=BJF(897pgD0uV0}PE zo6k#C3$hji#WqZKRFj&#K}TqFwa!;Ijt}#t!ecoZ7^eUH$t^uOQ-*i*0%Ju+w)h=V z;k*o!H(E(e);E>h{L4gxiH&uERCt;!P)u#JpZO;?He*u*OB0jLZgvMAN|)wkmMG~c z#TVokXO?8<=YiN|sTrBcIjPeX6&O|8Co3=lG1K`$ZQY^JVGo}kTG0RNnc4p>dNlHx4ZkKRo-Y((H zl6`o(S|X#;^nNy0naP54G`4SHV{NG49@@ql`H|7GeSJ9_5VHd@2M}{^Uti7@|5Qvz z$vw5iGtV~>g$qY}- p$+2$lP2vV(p6$I!yx#R9b0jutsY%YynAP>q``;0VtTnQULI4g=s}KMH delta 764 zcmcb8$o$P=^9g3mAH&5qT1v9Au54z}q}Uo(nt?qZ$B!}g$>EnHT0 zvY@E=W?P|$>}(S+TnU@SI$4oXbn*sCp6S;unE8Ylkii_Fg8h>ldBi3M$Ouk8FU2Zh zs8?K=hOC4kX2;(!Lm{vsKt-F+OH~W9?s)ke_~@ZFf%c*G~euIci`dl zTaTEz1q$+uGfOh_^OSUy;!E=~OQtI-Fse-Feay_^RFs;VUzX~aljB;JnpfhHn3s~1 zT2!o{(wVLp%Pp*xm{*b+o|u!P6bm+_ z7DR%H(#+tT)YJk613g2aSgp1C_S-hhEi8%|nRz9}nK{4^P*8FT_4IL3@b!0bwNh~L z40d$#adlCeZdk*lAfm4i^;>XgP?&2ZFqooar{8g8Hfk4kV%{$7#FBNG2V_(*)Trt6 zSy^Qmm8J^{vPx~A@QtOIadNc|=k%>V88x=gWM@59%MK0j=@-?Qg}2AFvL<|FHn&!o z{&6Qu^0X#4o_4)*HXvpPVh$kY+^$#7_3p`b;~4H{*0v<>wj`cyNxbg$B9~r7GpEVk T+O^|P$$|ykI#-hz9cKUlslVR20N*6S=GscqT-uvg&wlA zCE7}bA7GuV$S68_gCx&nS1D;W^?6d^TOdLKGJ=!OOR-8A>J=BJF(897pgD0uV0}PE zo6k#C3$hji#WqZKRFj&#K}TqFwa!;Ijt}#t!ecoZ7^eUH$t^uOQ-*i*0%Ju+w)h=V z;k*o!H(E(e);E>h{L4gxiH&uERCt;!P)u#JpZO;?He*u*OB0LDZgvMAN|)wkmMG~c z#TVokXO?8<=YiN|sTrBcIjPeX6&O|8Co3=lG1K`$ZQY^JVGo}kTG0RNnc4p>dNlHx4ZkKRo-Y((H zl6`o(S|X#;^nNy0naP54G`4SHV{NG49@@ql`H|7GeSJ9_5VHd@2M}{^Uti7@|5Qvz z$vw5iGtV~>g$qY}- q$+2$lP2vV(p6$I!yg~IMB|7i#UyV)XWW927ZvDlrHZx7wHUI!io2*d) delta 764 zcmaEK$o%tR^9g3mU&F;VT1v9Au54z}q}Uo(nt?qZ$B!}g$>EnHT0 zvY@E=W?P|$>}(S+TnU@SI$4oXbn*sCp6S;unE8Ylkii_Fg8h>ldBi3M$Ouk8FU2Zh zs8?K=hOC4kX2;(!Lm{vsKt-F+OH~W9?s)ke_~@ZFf%bUFx>2Bci`dl zTaTEz1q$+uGfOh_^OSUy;!E=~OQtI-Fse-Feay_^RFs;VUzX~aljB;JnpfhHn3s~1 zT2!o{(wVLp%Pp*xm{*b+o|u!P6bm+_ z7DR%H(#+tT)YJk613g2aSgp1C_S-hhEi8%|nRz9}nK{4^P*8FT_4IL3@b!0bwNh~L z40d$#adlCeZdk*lAfm4i^;>XgP?&2ZFqooar{8g8Hfk4kV%{$7#FBNG2V_(*)Trt6 zSy^Qmm8J^{vPx~A@QtOIadNc|=k%>V88x=gWM@59%MK0j=@-?Qg}2AFvL<|FHn&!o z{&6Qu^0X#4o_4)*HXvpPVh$kY+^$#7_3p`b;~4H{*0v<>wj`cyNxXjbBHVm`@5XFx S<>h?z_hjI&+|!AQ(k1}&xA{f@ diff --git a/Server_Install_Pack/mpmissions/epoch.Desert_E.pbo b/Server_Install_Pack/mpmissions/epoch.Desert_E.pbo index e954a416f7d894f32619b11a3906d0a71e2c8c9e..d4e70934dbbc161802072c93be91d2665c511ba8 100644 GIT binary patch delta 553 zcmZoUYX14K`2;iOiXBoLEhSl5jh0G(tCTdG`aG%dEfApq8NtctrC22l^@zhh${$--U#KyWnDm+aVD5kdA&-@b`o3W{ZrK!5Y0!65EZ;n6I#H7qnw;WSLsbs43?Z>gnU6;Op<=YNcvu zqhDeNw8X_T*wM+y)kP_GGGn#Ebb|S$4XD6tl?W`6XP_trQr!>Nzvh6f`o6L3$Lh8L6pIl98IH zPz|(^6PKN3P}>V~5-U@SK#s$qG%+Ow*+bDv?(7f`=}cFQf%)FA~%p70{C@49FdiuC1`1-rJS}C}A z20J?WxVk7!H>_b&5Yg9%`Ykv#D9kky7);Tz)9*Mk8?_5NF>e=kV#zwp12QTYYSi@k ztgJGOO49`eS*5m5_{LJqIJsJfbNbewj2hc#va_D5Wrqg%^owfD!rNn7Sra}on_DYP z|G1MSd0G=2PrF_@8xXStF$WNHZr3a4diP|zaSV4eYg-a`TN2NslVR20N*6S=GscqT-uvg&wlA zCE7}bA7GuV$S68_gCx&nS1D;W^?6d^TOdLKGJ=!OOR-8A>J=BJF(897pgD0uV0}PE zo6k#C3$hji#WqZKRFj&#K}TqFwa!;Ijt}#t!ecoZ7^eUH$t^uOQ-*i*0%Ju+w)h=V z;k*o!H(E(e);E>h{L4gxiH&uERCt;!P)u#JpZO;?He*u*OH`$ZQY^JVGo}kTG0RNnc4p>dNlHx4ZkKRo-Y((H zl6`o(S|X#;^nNy0naP54G`4SHV{NG49@@ql`H|7GeSJ9_5VHd@2M}{^Uti7@|5Qvz z$vw5iGtV~>g$qY}- q$+2$lP2vV(p6$I!yw3F^&)!*uvVY8C*!1B3gV=+&G4z}q}Uo(nt?qZ$B!}g$>EnHT0 zvY@E=W?P|$>}(S+TnU@SI$4oXbn*sCp6S;unE8Ylkii_Fg8h>ldBi3M$Ouk8FU2Zh zs8?K=hOC4kX2;(!Lm{vsKt-F+OH~W9?s)ke_~@ZFf%bUu-NQoci`dl zTaTEz1q$+uGfOh_^OSUy;!E=~OQtI-Fse-Feay_^RFs;VUzX~aljB;JnpfhHn3s~1 zT2!o{(wVLp%Pp*xm{*b+o|u!P6bm+_ z7DR%H(#+tT)YJk613g2aSgp1C_S-hhEi8%|nRz9}nK{4^P*8FT_4IL3@b!0bwNh~L z40d$#adlCeZdk*lAfm4i^;>XgP?&2ZFqooar{8g8Hfk4kV%{$7#FBNG2V_(*)Trt6 zSy^Qmm8J^{vPx~A@QtOIadNc|=k%>V88x=gWM@59%MK0j=@-?Qg}2AFvL<|FHn&!o z{&6Qu^0X#4o_4)*HXvpPVh$kY+^$#7_3p`b;~4H{*0v<>wj`cyNxb&;B3~TLuCc6Q T`S5#>B&TJl@w#ItR%ihLx!w5| diff --git a/Server_Install_Pack/mpmissions/epoch.Mountains_ACR.pbo b/Server_Install_Pack/mpmissions/epoch.Mountains_ACR.pbo index b362f9ea5df6c77b40a52931398acc750e85dfd5..8d486700e2581991cf208edf69f7c7523825f3cc 100644 GIT binary patch delta 553 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 S6l(k}-SPFryNS+w)fE9#v-wH@ diff --git a/Server_Install_Pack/mpmissions/epoch.Sara.pbo b/Server_Install_Pack/mpmissions/epoch.Sara.pbo index e88a63f345b0796a7453b43d543fb025d5528280..daaa4719c8c63d793b2761b6c3d3373ff5b93781 100644 GIT binary patch delta 553 zcmeA(tCTdG`aG%dEfApq8NtctrC22l^@zhh${$--U#KyWnDm+aVD5kdA&-@b`o3W{ZrMb~&H@gE5rAzZNOO$k! z;tTSNGfOh_^FZvf)QrsJoYd)x3XCf4lNA_&m}&cD1?E0c`J&X^{IXQnvedj1kHox` zoYW$P==cg91%p^?UM^0~>5Y0!65EZ;n6I#H7qnw;WSLsbs43?Z>gnU6;Op<=YNcvu zqhDeNw8X_T*wM+y)kP_GGGn#Ebb|8KI{^26tqTAE delta 764 zcmex;)V$}o`2;g&z6i06mXfTj>s&vCu})4D5Sx5}gKhfL*NozuyI803usx_|3zt=$ zEGR0z*;eQwJKMwySHfnoPF7?ToxDMkXZm#uWJ=BJAuC~s+3`2bPzY=YP|@b|Qq_X2J6?VdtDfwrCN+73j?m_6ov&=Ha({%w>o%7f z`!KRS2p0?IWthCtN@}vcspRHgCK^m^MTNrQtg=8cwatF!pV-(8%uEc8%r?8(9e6nX z)+1(afr9+v%#zIfJS82a_|m-0lIe;Hj4IQ4A2V|}6{Y6pm!&%9)6#-R*rDkL%=cFpwD&!|+`IYA6ShqVWFaj~t zc1H!~Nut|-nle9So33NcEIVC6idkgx{1UF|Rtk(<^_-b$3L2TkAUz7$jMP*p$wi0JD>{T3V=6y_QU45sMV>31BNjoO8sn70c%v1A?Q0T~qxHEQ~N zR#q8CrRjo#tWw)2d}AqQoLsHLIeqI-Mvd(=*;!B3vO@!W`b9Nn;q5W4tO*~P&8-!t zf85EEJgte1r(Lg{4T#x+m;;D8x9gR2y?e6VIEK5KwJnLeEs1Aa67TZ{5oM_y;XOf% ST=m<07;|SG`MRC?{UHE*Joo(o diff --git a/Server_Install_Pack/mpmissions/epoch.SaraLite.pbo b/Server_Install_Pack/mpmissions/epoch.SaraLite.pbo index 6cb33576e70a917c31a45985df7e00c3bcb67aef..14559ea86481463440d6ae8f1cf8dc8a243f71bc 100644 GIT binary patch delta 553 zcmeA>ZvOYE`2;iO2|J`VT1v9A8ZDIy-#$5!Q)Y89>slVR20N*6S=GscqT-uvg&wlA zCE7}bA7GuV$S68_gCx&nS1D;W^?6d^TOdLKGJ=!OOR-8A>J=BJF(897pgD0uV0}PE zo6k#C3$hji#WqZKRFj&#K}TqFwa!;Ijt}#t!ecoZ7^eUH$t^uOQ-*i*0%Ju+w)h=V z;k*o!H(E(e);E>h{L4gxiH&uERCt;!P)u#JpZO;?He*u*OLMc$ZgvMAN|)wkmMG~c z#TVokXO?8<=YiN|sTrBcIjPeX6&O|8Co3=lG1K`$ZQY^JVGo}kTG0RNnc4p>dNlHx4ZkKRo-Y((H zl6`o(S|X#;^nNy0naP54G`4SHV{NG49@@ql`H|7GeSJ9_5VHd@2M}{^Uti7@|5Qvz z$vw5iGtV~>g$qY}- p$+2$lP2vV(p6$I!yl)#s%2FmqMa^j`@vGAFF8cRn-Q(4%r2zY)ttJ2f delta 764 zcmex+)V%Mw`2;g&!3eR9mXfTj>s&vCu})4D5Sx5}gKhfL*NozuyI803usx_|3zt=$ zEGR0z*;eQwJKMwySHfnoPF7?ToxDMkXZm#uWJ=BJAuC~s+3`2bPzY=YP|@b|Qq_X2J6?VdtDfwrCN+73j?m_6ov&=Ha({%w>o%7f z`!KRS2p0?IWthCtN@}vcspRHgCK^m^MTNrQtg=8cwatF!pV-(8%uEc8EH}H^9e6nX z)+1(afr9+v%#zIfJS82a_|m-0lIe;Hj4IQ4A2V|}6{Y6pm!&%9)6#-R*rDkL%=cFpwD&!|+`IYA6ShqVWFaj~t zc1H!~Nut|-nle9So33NcEIVC6idkgx{1UF|Rtk(<^_-b$3L2TkAUz7$jMP*p$wi0JD>{T3V=6y_QU45sMV>31BNjoO8sn70c%v1A?Q0T~qxHEQ~N zR#q8CrRjo#tWw)2d}AqQoLsHLIeqI-Mvd(=*;!B3vO@!W`b9Nn;q5W4tO*~P&8-!t zf85EEJgte1r(Lg{4T#x+m;;D8x9gR2y?e6VIEK5KwJnLeEs1Aa67S0fkqYPS?M*`a TH`#rda`7cA@8dO-SJVOkxH|d% diff --git a/Server_Install_Pack/mpmissions/epoch.Sara_dbe1.pbo b/Server_Install_Pack/mpmissions/epoch.Sara_dbe1.pbo index b3682819d026815b9a7fc379d162b197e46ea4a8..26c5b4706722c89d1ae9609465e3170aac59dfd3 100644 GIT binary patch delta 553 zcmbPu+`QqK`2;iO$vdPrT1v9A8ZDIy-#$5!Q)Y89>slVR20N*6S=GscqT-uvg&wlA zCE7}bA7GuV$S68_gCx&nS1D;W^?6d^TOdLKGJ=!OOR-8A>J=BJF(897pgD0uV0}PE zo6k#C3$hji#WqZKRFj&#K}TqFwa!;Ijt}#t!ecoZ7^eUH$t^uOQ-*i*0%Ju+w)h=V z;k*o!H(E(e);E>h{L4gxiH&uERCt;!P)u#JpZO;?He*u*OLNQ3ZgvMAN|)wkmMG~c z#TVokXO?8<=YiN|sTrBcIjPeX6&O|8Co3=lG1K`$ZQY^JVGo}kTG0RNnc4p>dNlHx4ZkKRo-Y((H zl6`o(S|X#;^nNy0naP54G`4SHV{NG49@@ql`H|7GeSJ9_5VHd@2M}{^Uti7@|5Qvz z$vw5iGtV~>g$qY}- p$+2$lP2vV(p6$I!ydN4w0@SS>jzlgy`@zXkF)~k;@osaLCjj!~s$Bp8 delta 764 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 delta 764 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 delta 764 zcmex&)V%+=`2;g&?Fg}rmXfTj>s&vCu})4D5Sx5}gKhfL*NozuyI803usx_|3zt=$ zEGR0z*;eQwJKMwySHfnoPF7?ToxDMkXZm#uWJ=BJAuC~s+3`2bPzY=YP|@b|Qq_X2J6?VdtDfwrCN+73j?m_6ov&=Ha({%w>o%7f z`!KRS2p0?IWthCtN@}vcspRHgCK^m^MTNrQtg=8cwatF!pV-(8%uEbTO*gyQ9e6nX z)+1(afr9+v%#zIfJS82a_|m-0lIe;Hj4IQ4A2V|}6{Y6pm!&%9)6#-R*rDkL%=cFpwD&!|+`IYA6ShqVWFaj~t zc1H!~Nut|-nle9So33NcEIVC6idkgx{1UF|Rtk(<^_-b$3L2TkAUz7$jMP*p$wi0JD>{T3V=6y_QU45sMV>31BNjoO8sn70c%v1A?Q0T~qxHEQ~N zR#q8CrRjo#tWw)2d}AqQoLsHLIeqI-Mvd(=*;!B3vO@!W`b9Nn;q5W4tO*~P&8-!t zf85EEJgte1r(Lg{4T#x+m;;D8x9gR2y?e6VIEK5KwJnLeEs1Aa67Q=95vQHMIvzhY SkzV2a^S7VBAs^cnu}c6CiuqUo diff --git a/Server_Install_Pack/mpmissions/epoch.Zargabad.pbo b/Server_Install_Pack/mpmissions/epoch.Zargabad.pbo index d88925acc2d5ae50d15fac315bf258b757355cde..e9efe9970b5ba3b0e351a5c6dd45c168fcdf8ddf 100644 GIT binary patch delta 553 zcmdmS#C-W-^9g3mYj;R(w3K9JHCieazI}2cr_APJ*0nrr4R%uDvZ|8>Ma4JU3O!_J zOSF{=KfpR!kx_K=21%aDu2Rx$>hq++w?KpfWCSOlmtvJL)GIDbV?YLFKy%`R!1{oS zHlLTO7Gy03ifx$es3tXegO1SVYMrla93SROg~xI-FiijXlUsUnrVQ`q1;&buZ1Fp! z!g(1cZ?uw{tZyp0`Im_X6C3LSsqi#epqScbKl4v)Y{sUB1_q{^-RurLlrGK7EK$-? ziZ947&Me8y&jYc`QZq7>b5f@(Dln?FPgY`No+SVW4^++UC@rXk!5Nzqo$lwsHcyMg0H`etCgyu zjedz8&=MEVU`Hn(R~Mz&$&A$s(+wh+rC4f#W=t1wVwRcC?aa)_l9ZU7-7ewGyj{YX zCHwGnwM0gx>HTc1GLr@8Xl&oY#@bN7J+zHA@*|^V`}%S=AZ7<*4j|^-zP_9*{;8Ob zl6z{2XP$2&$X7t7e`yJjy`49fyMS$4XD6tl?W`6XP_trQr!>Nzvh6f`o6L3$Lh8L6pIl98IH zPz|(^6PKN3P}>V~5-U@SK#s$qG%+Ow*+bDv?(7f`=}cFQf%)FA~%p70{C@49FdiuC1`1-rJS}C}A z20J?WxVk7!H>_b&5Yg9%`Ykv#D9kky7);Tz)9*Mk8?_5NF>e=kV#zwp12QTYYSi@k ztgJGOO49`eS*5m5_{LJqIJsJfbNbewj2hc#va_D5Wrqg%^owfD!rNn7Sra}on_DYP z|G1MSd0G=2PrF_@8xXStF$WNHZr3a4diP|zaSV4eYg-a`TN2NMa4JU3O!_J zOSF{=KfpR!kx_K=21%aDu2Rx$>hq++w?KpfWCSOlmtvJL)GIDbV?YLFKy%`R!1{oS zHlLTO7Gy03ifx$es3tXegO1SVYMrla93SROg~xI-FiijXlUsUnrVQ`q1;&buZ1Fp! z!g(1cZ?uw{tZyp0`Im_X6C3LSsqi#epqScbKl4v)Y{sSrmX^kw-RurLlrGK7EK$-? ziZ947&Me8y&jYc`QZq7>b5f@(Dln?FPgY`No+SVW4^++UC@rXk!5Nzqo$lwsHcyMg0H`etCgyu zjedz8&=MEVU`Hn(R~Mz&$&A$s(+wh+rC4f#W=t1wVwRcC?aa)_l9ZU7-7ewGyj{YX zCHwGnwM0gx>HTc1GLr@8Xl&oY#@bN7J+zHA@*|^V`}%S=AZ7<*4j|^-zP_9*{;8Ob zl6z{2XP$2&$X7t7e`yJjy`49fyM{Q2zU{SW}k^R2D` delta 764 zcmaEM*!=qu^9g3m$`N84EhSl5*SUTOW1XBRAU62`2ix?guNlQRcd<_6VS7-`7A~tg zSx{7bv#roWcD9KZu7u5Eovg?xI(dU6&-CjS%zQ!&$Y2go!T!mOJYtgrWCSOlmtvJL z)GIDbLsr5Nv*T}=p%B;*prXy^rK$y4cf9-_Rz2BKO=|K69ih$DI$zmX<^BkV*KIB} z_F-gu5H1$Z%P@JPmDFT?Q_0Q0Of;C-iVB6pS!ID@YMcGcKe4eHn3))wm~VEoJMeJ& ztw+q<0tNZSnI)O|c}hA;@uhj0CDRoZ7*(e8K4#`{DoV}GFH3dI$#E@9%`5Rp%uC5h zEh<(}a!)PsFD+5B=H=pa4e)pNh)*spDgvqqOU=kk&Pi3URme}u@+-~Bv2J%%U<6{O z?T!k}lSH@wG-ZCuHeJV>S$4XD6tl?W`6XP_trQr!>Nzvh6f`o6L3$Lh8L6pIl98IH zPz|(^6PKN3P}>V~5-U@SK#s$qG%+Ow*+bDv?(7f`=}cFQf%)FA~%p70{C@49FdiuC1`1-rJS}C}A z20J?WxVk7!H>_b&5Yg9%`Ykv#D9kky7);Tz)9*Mk8?_5NF>e=kV#zwp12QTYYSi@k ztgJGOO49`eS*5m5_{LJqIJsJfbNbewj2hc#va_D5Wrqg%^owfD!rNn7Sra}on_DYP z|G1MSd0G=2PrF_@8xXStF$WNHZr3a4diP|zaSV4eYg-a`TN2N}%&$%i Strc@oFx9*I>ywe%w?6>C3HdVs diff --git a/Sources/epoch_config/build.hpp b/Sources/epoch_config/build.hpp index ac727fe7..4421a89e 100644 --- a/Sources/epoch_config/build.hpp +++ b/Sources/epoch_config/build.hpp @@ -1 +1 @@ -build=427; +build=429; diff --git a/Sources/epoch_server/build.hpp b/Sources/epoch_server/build.hpp index ac727fe7..4421a89e 100644 --- a/Sources/epoch_server/build.hpp +++ b/Sources/epoch_server/build.hpp @@ -1 +1 @@ -build=427; +build=429; diff --git a/Sources/epoch_server_core/build.hpp b/Sources/epoch_server_core/build.hpp index ac727fe7..4421a89e 100644 --- a/Sources/epoch_server_core/build.hpp +++ b/Sources/epoch_server_core/build.hpp @@ -1 +1 @@ -build=427; +build=429; diff --git a/Sources/epoch_server_settings/build.hpp b/Sources/epoch_server_settings/build.hpp index ac727fe7..4421a89e 100644 --- a/Sources/epoch_server_settings/build.hpp +++ b/Sources/epoch_server_settings/build.hpp @@ -1 +1 @@ -build=427; +build=429; diff --git a/build.txt b/build.txt index acf052b0..cb11fbda 100644 --- a/build.txt +++ b/build.txt @@ -1 +1 @@ -427 +429 From 29624d80bbc474e460bff5062d4b73af07423507 Mon Sep 17 00:00:00 2001 From: vbawol Date: Fri, 22 Apr 2016 19:20:23 -0500 Subject: [PATCH 13/18] revert to working example --- Server_Install_Pack/SC/server-example.cfg | 2 +- .../sc/users/sc/sc.arma3profile | 216 +++--------------- 2 files changed, 35 insertions(+), 183 deletions(-) diff --git a/Server_Install_Pack/SC/server-example.cfg b/Server_Install_Pack/SC/server-example.cfg index 53f76f21..c8dff4ca 100644 --- a/Server_Install_Pack/SC/server-example.cfg +++ b/Server_Install_Pack/SC/server-example.cfg @@ -48,7 +48,7 @@ class Missions { class Epoch { template = epoch.Altis; // DO NOT CHANGE THIS, IT WILL BREAK YOUR SERVER - difficulty = "veteran"; // difficulty settings: Recruit, Regular Veteran, Custom + difficulty = "custom"; // difficulty settings: Recruit, Regular Veteran, Custom }; }; diff --git a/Server_Install_Pack/sc/users/sc/sc.arma3profile b/Server_Install_Pack/sc/users/sc/sc.arma3profile index b7130def..edd17f9b 100644 --- a/Server_Install_Pack/sc/users/sc/sc.arma3profile +++ b/Server_Install_Pack/sc/users/sc/sc.arma3profile @@ -1,190 +1,42 @@ version=1; blood=1; -volumeCD=5; -volumeFX=5; -volumeSpeech=5; singleVoice=0; gamma=1; brightness=1; -class CfgDifficultyPresets +difficulty = "Custom"; +class DifficultyPresets { - defaultPreset = Regular; + class CustomDifficulty + { + class Options + { + groupIndicators=2; + friendlyTags=0; + enemyTags=0; + detectedMines=0; + commands=1; + waypoints=1; + weaponInfo=0; + stanceIndicator=1; + reducedDamage=0; + staminaBar=0; + weaponCrosshair=1; + visionAid=0; + thirdPersonView=1; + cameraShake=1; + scoreTable=1; + deathMessages=1; + vonID=1; + mapContent=0; + autoReport=0; + multipleSaves=0; - // Parameters that affect difficulty and which are shared among presets - myArmorCoef = 1.5; - groupArmorCoef = 1.5; - - //Parameters that affect the Limited distance choice for Group Indicators, Friendly Name Tags, Enemy Name Tags and Detected Mines. - //They determine on which distance the indicators are fully visible and how many more meters it takes until the indicator fades-out completely. - fadeDistanceStart = 40.0; - fadeDistanceSpan = 10.0; - - recoilCoef = 1; - visionAidCoef = 0.8; - divingLimitMultiplier = 1.0; //Multiplier to limit capacity of lungs for soldiers. - - animSpeedCoef = 0; - cancelThreshold = 0; //Threshold used for interrupting action. - showCadetHints = true; - showCadetWP = true; - - class Recruit - { - displayName = $STR_Difficulty0; //Name of the difficulty preset. - - class Options - { - // Simulation - reducedDamage = true; // Reduced damage - - // Situational awareness - groupIndicators = 2; // Group indicators (0 = never, 1 = limited distance, 2 = always) - friendlyTags = 2; // Friendly name tags (0 = never, 1 = limited distance, 2 = always) - enemyTags = 0; // Enemy name tags (0 = never, 1 = limited distance, 2 = always) - detectedMines = 2; // Detected mines (0 = never, 1 = limited distance, 2 = always) - commands = 2; // Commands (0 = never, 1 = fade out, 2 = always) - waypoints = 2; // Waypoints (0 = never, 1 = fade out, 2 = always) - - // Personal awareness - weaponInfo = 2; // Weapon info (0 = never, 1 = fade out, 2 = always) - stanceIndicator = 2; // Stance indicator (0 = never, 1 = fade out, 2 = always) - staminaBar = true; // Stamina bar - weaponCrosshair = true; // Weapon crosshair - visionAid = true; // Vision aid - - // View - thirdPersonView = true; // 3rd person view - cameraShake = true; // Camera shake - - // Multiplayer - scoreTable = true; // Score table - deathMessages = true; // Killed by - vonID = true; // VON ID - - // Misc - mapContent = true; // Extended map content - autoReport = true; // Automatic reporting - multipleSaves = true; // Multiple saves - }; - }; - - class Regular - { - displayName = $STR_Difficulty1; //Name of the difficulty preset. - - class Options - { - // Simulation - reducedDamage = false; // Reduced damage - - groupIndicators = 1; // Group indicators (0 = never, 1 = limited distance, 2 = always) - friendlyTags = 1; // Friendly name tags (0 = never, 1 = limited distance, 2 = always) - enemyTags = 0; // Enemy name tags (0 = never, 1 = limited distance, 2 = always) - detectedMines = 1; // Detected mines (0 = never, 1 = limited distance, 2 = always) - commands = 1; // Commands (0 = never, 1 = fade out, 2 = always) - waypoints = 2; // Waypoints (0 = never, 1 = fade out, 2 = always) - - // Personal awareness - weaponInfo = 2; // Weapon info (0 = never, 1 = fade out, 2 = always) - stanceIndicator = 2; // Stance indicator (0 = never, 1 = fade out, 2 = always) - staminaBar = true; // Stamina bar - weaponCrosshair = true; // Weapon crosshair - visionAid = false; // Vision aid - - // View - thirdPersonView = true; // 3rd person view - cameraShake = true; // Camera shake - - // Multiplayer - scoreTable = true; // Score table - deathMessages = true; // Killed by - vonID = true; // VON ID - - // Misc - mapContent = true; // Extended map content - autoReport = true; // Automatic reporting - multipleSaves = true; // Multiple saves - }; - }; - - class Veteran - { - displayName = $STR_Difficulty2; //Name of the difficulty preset. - - class Options - { - // Simulation - reducedDamage = false; // Reduced damage - - // Situational awareness - groupIndicators = 0; // Group indicators (0 = never, 1 = limited distance, 2 = always) - friendlyTags = 0; // Friendly name tags (0 = never, 1 = limited distance, 2 = always) - enemyTags = 0; // Enemy name tags (0 = never, 1 = limited distance, 2 = always) - detectedMines = 0; // Detected mines (0 = never, 1 = limited distance, 2 = always) - commands = 1; // Commands (0 = never, 1 = fade out, 2 = always) - waypoints = 1; // Waypoints (0 = never, 1 = fade out, 2 = always) - - // Personal awareness - weaponInfo = 1; // Weapon info (0 = never, 1 = fade out, 2 = always) - stanceIndicator = 1; // Stance indicator (0 = never, 1 = fade out, 2 = always) - staminaBar = false; // Stamina bar - weaponCrosshair = false; // Weapon crosshair - visionAid = false; // Vision aid - - // View - thirdPersonView = true; // 3rd person view - cameraShake = true; // Camera shake - - // Multiplayer - scoreTable = true; // Score table - deathMessages = true; // Killed by - vonID = true; // VON ID - - // Misc - mapContent = false; // Extended map content - autoReport = false; // Automatic reporting - multipleSaves = false; // Multiple saves - }; - }; - - class Custom - { - displayName = $STR_Difficulty_Custom; //Name of the difficulty preset. - - //All options of the Custom preset are set by the engine. The values in config - class Options - { - // Simulation - reducedDamage = false; // Reduced damage - - // Situational awareness - groupIndicators = 0; // Group indicators (0 = never, 1 = limited distance, 2 = always) - friendlyTags = 0; // Friendly name tags (0 = never, 1 = limited distance, 2 = always) - enemyTags = 0; // Enemy name tags (0 = never, 1 = limited distance, 2 = always) - detectedMines = 0; // Detected mines (0 = never, 1 = limited distance, 2 = always) - commands = 0; // Commands (0 = never, 1 = fade out, 2 = always) - waypoints = 0; // Waypoints (0 = never, 1 = fade out, 2 = always) - - // Personal awareness - weaponInfo = 1; // Weapon info (0 = never, 1 = fade out, 2 = always) - stanceIndicator = 0; // Stance indicator (0 = never, 1 = fade out, 2 = always) - staminaBar = false; // Stamina bar - weaponCrosshair = false; // Weapon crosshair - visionAid = false; // Vision aid - - // View - thirdPersonView = false; // 3rd person view - cameraShake = false; // Camera shake - - // Multiplayer - scoreTable = false; // Score table - deathMessages = false; // Killed by - vonID = false; // VON ID - - // Misc - mapContent = false; // Extended map content - autoReport = false; // Automatic reporting - multipleSaves = false; // Multiple saves - }; - }; + }; + aiLevelPreset=2; + }; + class CustomAILevel + { + skillAI=1; + precisionAI=0; + }; }; From bdfc5a179110157812b87c938847f7ef9690881f Mon Sep 17 00:00:00 2001 From: vbawol Date: Fri, 22 Apr 2016 19:22:13 -0500 Subject: [PATCH 14/18] changelog --- Changelogs/0.3.8.0.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Changelogs/0.3.8.0.txt b/Changelogs/0.3.8.0.txt index aa3bd22d..bbc44794 100644 --- a/Changelogs/0.3.8.0.txt +++ b/Changelogs/0.3.8.0.txt @@ -43,8 +43,8 @@ [Info] Some AI Scripts Mods may not work with disableRemoteSensors enabled. You can disable with "disableRemoteSensors = false;" in CfgEpochClient. [Info] Removed old .bikey and added new one for 0380. -Build: 428 -[Changed] 1.58 Difficulty Overhaul changes thanks to klinGiii on the forum: http://epochmod.com/forum/index.php?/topic/41922-158-difficulty-overhaul +Build: 429 +[Changed] 1.58 Difficulty Overhaul changes to enable 3rd person. Thanks to klinGiii on the forum: http://epochmod.com/forum/index.php?/topic/41922-158-difficulty-overhaul [Changed] Increased range for vehicle interactions to fix issues with access to larger vehicles. Thanks to Grahame for the report: http://epochmod.com/forum/index.php?/topic/41894-cannot-unlock-large-vehicles/ [Changed] Preloading sapper by spawning one on the map at server start. [Changed] Change to github markdown for credits and license. From b5dd11b3975269c46c2114781313599e9cab876a Mon Sep 17 00:00:00 2001 From: vbawol Date: Sat, 23 Apr 2016 09:17:05 -0500 Subject: [PATCH 15/18] fix folder case --- Server_Install_Pack/SC/basic-example.cfg | 22 ------ Server_Install_Pack/SC/server-example.cfg | 68 ---------------- .../sc/battleye/addbackpackcargo.txt | 1 - .../sc/battleye/addmagazinecargo.txt | 1 - .../sc/battleye/addweaponcargo.txt | 1 - Server_Install_Pack/sc/battleye/attachto.txt | 1 - .../sc/battleye/createvehicle.txt | 3 - .../sc/battleye/deleteVehicle.txt | 2 - .../sc/battleye/example-beserver.cfg | 12 --- .../sc/battleye/mpeventhandler.txt | 1 - .../sc/battleye/publicvariable.txt | 1 - .../sc/battleye/publicvariableval.txt | 8 -- .../sc/battleye/remotecontrol.txt | 1 - .../sc/battleye/remoteexec.txt | 1 - Server_Install_Pack/sc/battleye/scripts.txt | 77 ------------------- .../sc/battleye/selectplayer.txt | 1 - Server_Install_Pack/sc/battleye/setdamage.txt | 1 - Server_Install_Pack/sc/battleye/setpos.txt | 1 - .../sc/battleye/setvariable.txt | 1 - .../sc/battleye/setvariableval.txt | 9 --- .../sc/battleye/teamswitch.txt | 1 - .../sc/battleye/waypointcondition.txt | 1 - .../sc/battleye/waypointstatement.txt | 1 - 23 files changed, 216 deletions(-) delete mode 100644 Server_Install_Pack/SC/basic-example.cfg delete mode 100644 Server_Install_Pack/SC/server-example.cfg delete mode 100644 Server_Install_Pack/sc/battleye/addbackpackcargo.txt delete mode 100644 Server_Install_Pack/sc/battleye/addmagazinecargo.txt delete mode 100644 Server_Install_Pack/sc/battleye/addweaponcargo.txt delete mode 100644 Server_Install_Pack/sc/battleye/attachto.txt delete mode 100644 Server_Install_Pack/sc/battleye/createvehicle.txt delete mode 100644 Server_Install_Pack/sc/battleye/deleteVehicle.txt delete mode 100644 Server_Install_Pack/sc/battleye/example-beserver.cfg delete mode 100644 Server_Install_Pack/sc/battleye/mpeventhandler.txt delete mode 100644 Server_Install_Pack/sc/battleye/publicvariable.txt delete mode 100644 Server_Install_Pack/sc/battleye/publicvariableval.txt delete mode 100644 Server_Install_Pack/sc/battleye/remotecontrol.txt delete mode 100644 Server_Install_Pack/sc/battleye/remoteexec.txt delete mode 100644 Server_Install_Pack/sc/battleye/scripts.txt delete mode 100644 Server_Install_Pack/sc/battleye/selectplayer.txt delete mode 100644 Server_Install_Pack/sc/battleye/setdamage.txt delete mode 100644 Server_Install_Pack/sc/battleye/setpos.txt delete mode 100644 Server_Install_Pack/sc/battleye/setvariable.txt delete mode 100644 Server_Install_Pack/sc/battleye/setvariableval.txt delete mode 100644 Server_Install_Pack/sc/battleye/teamswitch.txt delete mode 100644 Server_Install_Pack/sc/battleye/waypointcondition.txt delete mode 100644 Server_Install_Pack/sc/battleye/waypointstatement.txt diff --git a/Server_Install_Pack/SC/basic-example.cfg b/Server_Install_Pack/SC/basic-example.cfg deleted file mode 100644 index e6b94066..00000000 --- a/Server_Install_Pack/SC/basic-example.cfg +++ /dev/null @@ -1,22 +0,0 @@ -// These options are created by default -language="English"; -adapter=-1; -3D_Performance=1.000000; -Resolution_W=800; -Resolution_H=600; -Resolution_Bpp=32; - - -// These options are important for performance tuning - -MinBandwidth = 107374182; // Bandwidth the server is guaranteed to have (in bps). This value helps server to estimate bandwidth available. Increasing it to too optimistic values can increase lag and CPU load, as too many messages will be sent but discarded. Default: 131072 -MaxBandwidth = 1073741824; // Bandwidth the server is guaranteed to never have. This value helps the server to estimate bandwidth available. - -MaxMsgSend = 256; // Maximum number of messages that can be sent in one simulation cycle. Increasing this value can decrease lag on high upload bandwidth servers. Default: 128 -MaxSizeGuaranteed = 512; // Maximum size of guaranteed packet in bytes (without headers). Small messages are packed to larger frames. Guaranteed messages are used for non-repetitive events like shooting. Default: 512 -MaxSizeNonguaranteed = 256; // Maximum size of non-guaranteed packet in bytes (without headers). Non-guaranteed messages are used for repetitive updates like soldier or vehicle position. Increasing this value may improve bandwidth requirement, but it may increase lag. Default: 256 - -MinErrorToSend = 0.002; // Minimal error to send updates across network. Using a smaller value can make units observed by binoculars or sniper rifle to move smoother. Default: 0.001 -MinErrorToSendNear = 0.02; // Minimal error to send updates across network for near units. Using larger value can reduce traffic sent for near units. Used to control client to server traffic as well. Default: 0.01 - -MaxCustomFileSize = 0; // (bytes) Users with custom face or custom sound larger than this size are kicked when trying to connect. \ No newline at end of file diff --git a/Server_Install_Pack/SC/server-example.cfg b/Server_Install_Pack/SC/server-example.cfg deleted file mode 100644 index c8dff4ca..00000000 --- a/Server_Install_Pack/SC/server-example.cfg +++ /dev/null @@ -1,68 +0,0 @@ -// EPOCH SERVER CONFIG - -// GLOBAL SETTINGS -hostname = "EpochMod.com (0.3.8|1.58) ID02 YourHost"; -password = ""; -passwordAdmin = "!CHANGE_THIS_PASSWORD!"; -serverCommandPassword = "!CHANGE_THIS_PASSWORD!"; -logFile = "A3Master.log"; -verifySignatures = 2; -BattlEye = 1; -requiredBuild = 135656; - -// WHITELIST FILE TYPES -allowedLoadFileExtensions[] = {:}; -allowedPreprocessFileExtensions[] = {"sqf"}; -allowedHTMLLoadExtensions[] = {"html"}; - -disconnectTimeout = 10; // default 90 - -// WELCOME MESSAGE ("message of the day") -// It can be several lines, separated by comma -// Empty messages "" will not be displayed at all but are only for increasing the interval - -motd[] = { - "Welcome to ArmA3 Epoch!", - "Server hosted by YourHost" -}; -motdInterval = 5; // Time interval (in seconds) between each message - -// JOINING RULES -maxPlayers = 50; // Maximum amount of players. Civilians and watchers, beholder, bystanders and so on also count as player. - -// VOTING -voteMissionPlayers = 200; // Prevents Votes. -voteThreshold = 2; // Prevents Votes. -// DISALLOW VOTING since 1.39 -allowedVoteCmds[] = {}; -allowedVotedAdminCmds[] = {}; - -// INGAME SETTINGS -disableVoN = 0; // If set to 1, Voice over Net will not be available -vonCodecQuality = 30; // Quality from 1 to 30 -forceRotorLibSimulation = 0; // Enforces the Advanced Flight Model on the server. Default = 0 (up to the player). 1 - forced AFM, 2 - forced SFM. -persistent = 1; // If 1, missions still run on even after the last player disconnected. - -// MISSIONS CYCLE (see below) (epoch.Altis, epoch.Stratis, epoch.Chernarus, epoch.Bornholm) -class Missions -{ - class Epoch { - template = epoch.Altis; // DO NOT CHANGE THIS, IT WILL BREAK YOUR SERVER - difficulty = "custom"; // difficulty settings: Recruit, Regular Veteran, Custom - }; -}; - -kickDuplicate = 1; -equalModRequired = 0; -requiredSecureId = 2; -timeStampFormat = "short"; - -// SCRIPTING ISSUES -onUserConnected = ""; -onUserDisconnected = ""; -doubleIdDetected = ""; - -// SIGNATURE VERIFICATION -onUnsignedData = "kick (_this select 0)"; // unsigned data detected -onHackedData = "kick (_this select 0)"; //"ban (_this select 0)"; // tampering of the signature detected -onDifferentData = "kick (_this select 0)"; diff --git a/Server_Install_Pack/sc/battleye/addbackpackcargo.txt b/Server_Install_Pack/sc/battleye/addbackpackcargo.txt deleted file mode 100644 index 7b4ba541..00000000 --- a/Server_Install_Pack/sc/battleye/addbackpackcargo.txt +++ /dev/null @@ -1 +0,0 @@ -5 "" !"B_Parachute" !"B_AssaultPack_(cbr|dgtl|khk|mcamo|ocamo|rgr|sgg|blk)" !"B_Carryall_(cbr|khk|mcamo|ocamo|oli|oucamo)" !"B_FieldPack_(blk|cbr|khk|ocamo|oli|oucamo)" !"B_Kitbag_(cbr|mcamo|rgr|sgg)" !"B_TacticalPack_(blk|mcamo|ocamo|oli|rgr)" !"smallbackpack_(red|green|teal|pink|)_epoch" !"(O|I|B)_UAV_01_backpack_F" diff --git a/Server_Install_Pack/sc/battleye/addmagazinecargo.txt b/Server_Install_Pack/sc/battleye/addmagazinecargo.txt deleted file mode 100644 index f5efa40a..00000000 --- a/Server_Install_Pack/sc/battleye/addmagazinecargo.txt +++ /dev/null @@ -1 +0,0 @@ -1 "" \ No newline at end of file diff --git a/Server_Install_Pack/sc/battleye/addweaponcargo.txt b/Server_Install_Pack/sc/battleye/addweaponcargo.txt deleted file mode 100644 index d0ef0d96..00000000 --- a/Server_Install_Pack/sc/battleye/addweaponcargo.txt +++ /dev/null @@ -1 +0,0 @@ -5 "" !="(Binocular|Rangefinder|Hatchet|CrudeHatchet|WoodClub|Melee(Sledge|Maul|Rod|Sword)|ChainSaw|MultiGun|Rollins_F|Plunger)" !="(ruger_pistol|speargun|1911_pistol|akm|m14|M14Grn|m16|m16Red|m107|m107Tan|m249|m249Tan|m4a3|sr25|l85a2|l85a2_(pink|ugl))_epoch" !="SMG_(01|02)_F" !="hgun_(PDW2000|ACPC2|Rook40|P07|Pistol_heavy_0[1-2]|Pistol_Signal)_F" !="LMG_(Mk200|Zafir)_F" !="srifle_(EBR|GM6|LRR|DMR_01)_F" !="arifle_(Katiba|Katiba_C|Katiba_GL|SDAR|TRG21|TRG20|TRG21_GL|Mk20|Mk20C|Mk20C_plain|Mk20_GL|Mk20_plain|Mk20_GL_plain)_F" !="arifle_(MXC|MX|MX_GL|MXM|MXM_Black|MX_GL_Black|MX_Black|MXC_Black|MX_SW|MX_SW_Black)_F" !="srifle_DMR_0[2-6](_(camo|sniper|khaki|tan|multicam|woodland|spotter|blk|hex|olive)_|_)F" !="MMG_0[1-2]_(hex|tan|camo|black|sand)_F" !"CUP_((h|s)gun|(s|a)rifle|(l|s)mg)_" diff --git a/Server_Install_Pack/sc/battleye/attachto.txt b/Server_Install_Pack/sc/battleye/attachto.txt deleted file mode 100644 index aea73eda..00000000 --- a/Server_Install_Pack/sc/battleye/attachto.txt +++ /dev/null @@ -1 +0,0 @@ -5 "" !WeaponHolderSimulated !Shot !"(Safe|LockBox|FirePlace|PlotPole|Jack|SolarGen)_EPOCH" !"Jack_SIM_EPOCH" !"LockBox_Ghost_EPOCH" !"CinderWallHalf_Ghost_EPOCH" !"(Tipi|Workbench|StorageShelf|Wood(Floor|LargeWall|Stairs|Ramp|Ladder|Tower)_Ghost_EPOCH" !"(Hesco3|Metal|Foundation)_Ghost_EPOCH" !"Land_Cages_F" !"Epoch_Sapper_F" diff --git a/Server_Install_Pack/sc/battleye/createvehicle.txt b/Server_Install_Pack/sc/battleye/createvehicle.txt deleted file mode 100644 index 02ba1834..00000000 --- a/Server_Install_Pack/sc/battleye/createvehicle.txt +++ /dev/null @@ -1,3 +0,0 @@ -5 "" !="I_UAV_01_F" !="(I|B|O)_UAV_AI" !"_EPOCH" !="B_65x39_Minigun_Caseless_Red_splash" !="B_762x51_Minigun_Tracer_Yellow_splash" !="B_(Swing|Stick)" !"^SmokeShell" !"^G_40mm_" !"^F_40mm_" !"Sub_F_" !"^F_Signal_" !="mini_Grenade" !="GrenadeHand" !="LaserTarget(C|W|E)" !"^Chemlight_" !="(ClaymoreDirectionalMine|DemoCharge|SatchelCharge)_Remote_Ammo" !="SLAMDirectionalMine_Wire_Ammo" !="(CMflare_Chaff|Sapper_Charge|SapperB_Charge|ATMine_Range)_Ammo" !="APERS(TripMine_Wire|BoundingMine_Range|Mine_Range)_Ammo" !="Epoch_(Sapper|SapperB|Cloak)_F" !="GreatWhite_F" !="groundWeaponHolder" !="WeaponHolderSimulated" !="Epoch_(Male|Female)_F" !"Supply[0-9]" !"Steerable_Parachute_F" !="Epoch_Female_CamoRed_F" !="Land_Cages_F" !="(O|I|B)_UAV_01_backpack_F" !="I_(helipilot|helicrew)_F" !="#smokesource" !="SmokeLauncherAmmo" -5 "_EPOCH" !="(SapperHead|Jack|SolarGen)_SIM_EPOCH" !="Wood(Floor|LargeWall|Stairs|Ramp|Foundation|Ladder|Tower)_EPOCH" !="(Tipi|Workbench|StorageShelf|CinderWallHalf|Foundation|Wood(Floor|LargeWall|Stairs|Ramp|Foundation|Ladder|Tower))_Ghost_EPOCH" !="(Tipi|StorageShelf|Safe|LockBox|FirePlace|FirePlaceOn|PlotPole|SolarGen|Jack|Freezer|Tarp|CinderWallHalf|Bobber)_EPOCH" !="I_(Soldier[1-3]|Soldier)_EPOCH" !="(Bed|locker|Filing|Chair|ChairRed|wardrobe|cooker|Couch|Table|Pelican|Fridge|Shelf|ToolRack|Shoebox|Bunk|Rabbit|Cabinet)_EPOCH" !="(Sheep|Goat|Snake|Snake2|Hen|Cock|Fin|Alsatian)_random_EPOCH" !="(Safe|Workbench|LockBox|CinderWall|CinderWallGarage|CinderWallHalf|PlotPole|Tipi|StorageShelf|Fireplace|TankTrap)_SIM_EPOCH" !="Wood(Floor|LargeWall|LargeWallCor|LargeWallDoor|LargeWallDoorL|LargeWallDoorway|Stairs|Stairs2|Ramp|Ladder|Tower)_SIM_EPOCH" !="(Hesco3|Metal)(_Ghost|_SIM|)_EPOCH" !="(Spike|Metal)_TRAP_SIM_EPOCH" !="(WoodFoundation|Foundation)_EPOCH" !="WoodWall[1-4](_SIM|_Ghost|)_EPOCH" -5 SeaGull diff --git a/Server_Install_Pack/sc/battleye/deleteVehicle.txt b/Server_Install_Pack/sc/battleye/deleteVehicle.txt deleted file mode 100644 index e4fd05cf..00000000 --- a/Server_Install_Pack/sc/battleye/deleteVehicle.txt +++ /dev/null @@ -1,2 +0,0 @@ -5 "" !="I_UAV_01_F" !="(I|B|O)_UAV_AI" !"_EPOCH" !="B_65x39_Minigun_Caseless_Red_splash" !="B_762x51_Minigun_Tracer_Yellow_splash" !="B_(Swing|Stick)" !"^SmokeShell" !"^G_40mm_" !"^F_40mm_" !"Sub_F_" !"^F_Signal_" !="mini_Grenade" !="GrenadeHand" !="LaserTarget(C|W|E)" !"^Chemlight_" !="(ClaymoreDirectionalMine|DemoCharge|SatchelCharge)_Remote_Ammo" !="SLAMDirectionalMine_Wire_Ammo" !="(CMflare_Chaff|Sapper_Charge|SapperB_Charge|ATMine_Range)_Ammo" !="APERS(TripMine_Wire|BoundingMine_Range|Mine_Range)_Ammo" !="Epoch_(Sapper|SapperB|Cloak)_F" !="GreatWhite_F" !="groundWeaponHolder" !="WeaponHolderSimulated" !="Epoch_(Male|Female)_F" !"Supply[0-9]" !"Steerable_Parachute_F" !="Epoch_Female_CamoRed_F" !="Land_Cages_F" !="(O|I|B)_UAV_01_backpack_F" !="I_(helipilot|helicrew)_F" -5 "_EPOCH" !="Epoch_(Sapper|Cloak)_F" !="(SapperHead|Jack|SolarGen)_SIM_EPOCH" !="Wood(Floor|LargeWall|Stairs|Ramp|Foundation|Ladder|Tower)_EPOCH" !="(Tipi|Workbench|StorageShelf|CinderWallHalf|Foundation|Wood(Floor|LargeWall|Stairs|Ramp|Foundation|Ladder|Tower))_Ghost_EPOCH" !="(Tipi|StorageShelf|Safe|LockBox|FirePlace|FirePlaceOn|PlotPole|SolarGen|Jack|Freezer|Tarp|CinderWallHalf|Bobber)_EPOCH" !="I_(Soldier[1-3]|Soldier)_EPOCH" !="(Bed|locker|Filing|Chair|ChairRed|wardrobe|cooker|Couch|Table|Pelican|Fridge|Shelf|ToolRack|Shoebox|Bunk|Rabbit|Cabinet)_EPOCH" !="(Sheep|Goat|Snake|Snake2|Hen|Cock|Fin|Alsatian)_random_EPOCH" !="(Safe|Workbench|LockBox|CinderWall|CinderWallGarage|CinderWallHalf|PlotPole|Tipi|StorageShelf|Fireplace|TankTrap)_SIM_EPOCH" !="Wood(Floor|LargeWall|LargeWallCor|LargeWallDoor|LargeWallDoorL|LargeWallDoorway|Stairs|Stairs2|Ramp|Ladder|Tower)_SIM_EPOCH" !="(Hesco3|Metal)(_Ghost|_SIM|)_EPOCH" !="(Spike|Metal)_TRAP_SIM_EPOCH" !="(WoodFoundation|Foundation)_EPOCH" !="WoodWall[1-4](_SIM|_Ghost|)_EPOCH" diff --git a/Server_Install_Pack/sc/battleye/example-beserver.cfg b/Server_Install_Pack/sc/battleye/example-beserver.cfg deleted file mode 100644 index 155a4199..00000000 --- a/Server_Install_Pack/sc/battleye/example-beserver.cfg +++ /dev/null @@ -1,12 +0,0 @@ -RConPort 2304 -RConPassword changemen0w -MaxPing 350 - -MaxCreateVehiclePerInterval 72 1 -MaxSetPosPerInterval 2 1 -MaxSetDamagePerInterval 36 1 -MaxAddBackpackCargoPerInterval 12 1 -MaxAddMagazineCargoPerInterval 96 1 -MaxAddWeaponCargoPerInterval 24 1 -MaxDeleteVehiclePerInterval 48 1 -MaxAttachToPerInterval 4 1 diff --git a/Server_Install_Pack/sc/battleye/mpeventhandler.txt b/Server_Install_Pack/sc/battleye/mpeventhandler.txt deleted file mode 100644 index 69d9ecda..00000000 --- a/Server_Install_Pack/sc/battleye/mpeventhandler.txt +++ /dev/null @@ -1 +0,0 @@ -5 "" \ No newline at end of file diff --git a/Server_Install_Pack/sc/battleye/publicvariable.txt b/Server_Install_Pack/sc/battleye/publicvariable.txt deleted file mode 100644 index a06634f6..00000000 --- a/Server_Install_Pack/sc/battleye/publicvariable.txt +++ /dev/null @@ -1 +0,0 @@ -5 "" !="EPAH_[a-z]{5,10}" !="BIS_fnc_objectVar_obj2_[0-9]{1,10}" !="bis_fnc_sharedObjectives_serverUpdate" diff --git a/Server_Install_Pack/sc/battleye/publicvariableval.txt b/Server_Install_Pack/sc/battleye/publicvariableval.txt deleted file mode 100644 index 38e78c5c..00000000 --- a/Server_Install_Pack/sc/battleye/publicvariableval.txt +++ /dev/null @@ -1,8 +0,0 @@ -5 "call" !="[a-z]{5,40}" -5 "compile" -5 "spawn" -5 "exec" !="[a-z]{5,40}" -5 "loadFile" -5 "preprocessFile" -5 "tostring" -5 "\.sqf" diff --git a/Server_Install_Pack/sc/battleye/remotecontrol.txt b/Server_Install_Pack/sc/battleye/remotecontrol.txt deleted file mode 100644 index 69d9ecda..00000000 --- a/Server_Install_Pack/sc/battleye/remotecontrol.txt +++ /dev/null @@ -1 +0,0 @@ -5 "" \ No newline at end of file diff --git a/Server_Install_Pack/sc/battleye/remoteexec.txt b/Server_Install_Pack/sc/battleye/remoteexec.txt deleted file mode 100644 index 1b0c5d4c..00000000 --- a/Server_Install_Pack/sc/battleye/remoteexec.txt +++ /dev/null @@ -1 +0,0 @@ -5 "" !="bis_fnc_execvm \[\[.+\],\"initPlayerServer.sqf\"]" !="bis_fnc_effectkilled(airdestruction|secondaries) \[.+\]" !="epoch_server_checkplayer \[[A-Z]{1} [A-Za-z]{4,10} [0-9]{1,3}-[0-9]{1,3}:[0-9]{1,3}( \(.+\)|) REMOTE\]" !="epoch_server_(save(_vehicles|building)|(lock|pack)Storage|(upgrade|remove|paint|maint)build) \[.+\]" !="epoch_server_((load|respawn|dead|invite|revive|teleport)Player|(upgrade|updateplayer|create|delete)Group) \[.+\]" !="epoch_server_(knockDownTree|mineRocks|lootAnimal|handle_(say3d|switchmove|sapperObjs)) \[.+\]" !="epoch_server_((repair|fill|lock)Vehicle|(loot|fill)Container|(store|take)Crypto|make(NPC|)Trade) \[.+\]" !="epoch_server_(tradeRequest|equippeditem|packJack|create(object|AirDrop)|airDropCrate|destroytrash|unpackBackpack) \[.+\]" !="epoch_(localcleanup|fnc_saveplayer) \[.+\]" diff --git a/Server_Install_Pack/sc/battleye/scripts.txt b/Server_Install_Pack/sc/battleye/scripts.txt deleted file mode 100644 index 1c7c29a5..00000000 --- a/Server_Install_Pack/sc/battleye/scripts.txt +++ /dev/null @@ -1,77 +0,0 @@ -//new2 -7 "BIS_fnc_dynamictext" !="\"BIS_fnc_dynamictext"\" !="'BIS_fnc_dynamictext'" -7 forceRespawn !="reviveHandleForceRespawnAction" !="forcerespawn player;" -7 setFriend -7 setAmmo -7 RscDebugConsole_watch !="RscDebugConsole_watchSave = [true,true,true,true];" -7 enableFatigue -7 setUnitRecoilCoefficient -7 setWeaponReloadingTime -7 allMissionObjects -7 callExtension -7 showCommandingMenu !="showCommandingMenu '';" !"showCommandingMenu '#USER:" -7 moveIn !="\"A3\functions_f\Misc\fn_moveIn.sqf\"" !="\"A3\functions_f\arrays\fn_removeIndex.sqf\"" !="player moveInAny _vehicle;\nEPOCH_antiWallCount = EPOCH_antiWallCount + 1;" !="[\"I_UAV_AI\", position _unit, [], 0, \"CAN_COLLIDE\"];\n_driver moveInAny _unit;" !="_driver moveInAny Epoch_mission_uav;" !="axeVIP moveInDriver vehicle axeVIP;" !="axeVIP moveInCargo vehicle axeVIP; !="_driver moveInDriver _axeCopter;" !="_unit moveInGunner _axeCopter;" !="axeVIP moveInDriver vehicle axeVIP;" !="axeVIP moveInCargo vehicle axeVIP;" -7 attachTo !="EP_light attachTo [player];" !="_bomb attachTo [_unit, [0,0,0],\"Pelvis\"];" !="_dogHolder attachTo [_dog, [-0.2,1.2,0.7]];" !="EPOCH_target attachTo[player];" !="_sapperSmoke attachTo [_sapper,[0,0,-0.4]];"" !="_cage attachTo [_cage2,[0,1.3,0]];" -7 enableCollisionWith -7 hideObject !="_dogHolder hideobject true;" !="_dogHolder hideobject false;" !="player hideobject true;" !="_ship hideobject true;\n_ship hideobjectglobal true;" -7 setvelocity !="setVelocityTarget" !="_bolt setPosATL _pos;\n_bolt setVelocity [0, 0, -10];" !="EPOCH_target setvelocitytransformation" !="_currentTarget setVelocity [0,0,-0.01];" !="_head setVelocity [\n(sin _dir * _speed), \n(cos _dir * _speed)" !="_vel = velocity this; _dir = getDir player; this setVelocity[(_vel select 0)+(sin _dir * 2),(_vel select 1)+(cos _dir * 2),(_vel select 2)];" !="_head setVelocity [random 2,random 2,10];" !="_bobber setVelocity [0,-1,-1];" !="_bobber setVelocity [0,-1,-10];" !="_x setvelocity [0,0,0.1];" !="_veh setVelocity [0,0,0];" -7 assignAs !="assignAsCargo" !="_unit assignAsGunner _axeCopter;" !="_driver assignAsDriver _axeCopter;" !="axeVIP assignAsDriver vehicle axeVIP;" -7 assignAsCargo !="_x assignAsCargo axeGeneralsBoat;" !="axeVIP assignAsCargo vehicle player;" !="axeVIP assignAsCargo vehicle axeVIP;" -7 allowDamage !="_unit allowDamage false;" !="_unit allowDamage true;" !="player allowDamage true;" !="vehicle player allowDamage true;" !="player allowDamage false;" !="_target allowDamage true;" !="_cargo allowDamage false;" -7 addWeaponCargo !="_acceptHolder addWeaponCargo [_wWeapon, 1] ;" !="CBA_fnc_addWeaponCargo" !="\\fnc_addWeaponCargo" !="\"addWeaponCargo" !="cba_fAddWeaponCargo" -7 onMapSingleClick !="onMapSingleClick '';" !="\"onmapsingleclick\"" -7 addMagazine !"addMagazineCargo" !="player addMagazine [_item, _magazineSizeMax];" !="player addMagazine [_item, floor (_magazineSize % _magazineSizeMax)];" !="player addMagazine[_x select 0, _x select 1];" !="player addMagazine \"sledge_swing\";" !="player addMagazine \"Hatchet_swing\";" !="player addMagazine \"stick_swing\";" !="_wh addMagazineAmmoCargo[_item, 1, _count];" !="CBA_fnc_addMagazine" !="\\fnc_addMagazine" !="\"addMagazine" -7 addMagazineCargo !"_dogHolder addMagazineCargo [\"RabbitCarcass_EPOCH\", 1]" !"_dogHolder addMagazineCargo [\"Pelt_EPOCH\", 1]" !"_dogHolder addMagazineCargo [\"Venom_EPOCH\", 1]" !"_dogHolder addMagazineCargo [\"SnakeCarcass_EPOCH\", 1]" !"_dogHolder addMagazineCargo [\"ChickenCarcass_EPOCH\", 1]" !="_acceptHolder addMagazineCargo [_wAmmo, 1] ;" !="CBA_fnc_addMagazineCargo" !="\\fnc_addMagazineCargo" !="\"addMagazineCargo" !="cba_fAddMagazineCargo" -7 addItem !="{player addItemToVest _x} forEach _vestItems;" !="player addItem _item;" !="_plyr addItemToVest _missionItem;" !="axeVIP addItemToVest _item;" !="_plyr addItemToVest _missionItem;" !="EPOCH_fnc_addItemOverflow" -7 addBackPack -7 addMissionEventHandler !="addMissionEventHandler ['Draw3D',_var + \"call Epoch_gui3DCooldownEH;\"];" !="addMissionEventHandler ['Draw3D',_var + \"call epoch_gui3dModelPosEH;\"];" !="addMissionEventHandler ['Draw3D',_var + \"call epoch_gui3dWorldPosEH;\"];" !="addMissionEventHandler [\n"ended",\n{\n\nBIS_fnc_missionHandlers_end = _this;" -7 removeMissionEventHandler !="removeMissionEventHandler [\"Draw3D\", _id];" -7 removeAllWeapons !="removeAllWeapons axeGeneral;" -7 removeAllItems -7 removeAllActions -7 setViewDistance !"setViewDistance 1600" -7 createGroup !="EPOCH_server_createGroup" !="_grp = createGroup RESISTANCE;" !="if (isserver) then {\n_group = creategroup sidelogic;" !="grpVIPGeneral = createGroup RESISTANCE;" !="_grp = createGroup side _plyr;" !="_grp = createGroup side player;" !="_grp = createGroup _side;" !="_grp = createGroup (side _plyr);" !="createcenter sidelogic;\n_grpLogic = creategroup sidelogic;\nbis_functions_mainscope" !="_group = creategroup west;" -7 createVehicleCrew !="createvehiclecrew _x;" -7 createVehicleLocal !"\"#particlesource\" createVehicleLocal" !"\"#lightpoint\" createVehicleLocal" !"\"BloodSplat\" createVehicleLocal" !"[\"lightning1_F\", \"lightning2_F\"] call BIS_fnc_selectRandom;\n_lighting = _class createVehicleLocal" !="SLX_XEH_DUMMY createVehicleLocal [0, 0, 0];" !="CBA_eventHandlers = "Logic" createVehicleLocal [0, 0];" -7 createUnit !="_unit = _grp createUnit[(_arrUnits select _i), _pos, [], 0, \"FORM\"];" !="_driver = _grp createUnit[\"I_UAV_AI\", position _unit, [], 0, \"CAN_COLLIDE\"];" !="axeGeneral = grpVIPGeneral createUnit ["I_officer_F", axeGeneralPos, [], 1, "CAN_COLLIDE"];" -7 createAgent !="_unit = createAgent[_unitClass, _targetPos, [], 256, \"FORM\"];" !="_unit = createAgent [_unitClass, _targetPos, [], 120, \"FORM\"];" !="_animal = createAgent[_randomAIClass, _animalPos, [], 5, \"NONE\"];" !="_unit = createAgent [\"Epoch_Cloak_F\", _pos, [], 0, \"CAN_COLLIDE\"];" !="_unit = createAgent [\"Epoch_Sapper_F\", _targetPos, [], 180, \"FORM\"];" !="_sapper = createAgent ["Epoch_Sapper_F", getPos _cage2, [], 0, "FORM"];" -7 createTeam -7 createDialog !="createDialog \"rmx_dynamenu\";" !="createDialog \"rmx_craftingUI\";" !="createDialog \"QuickUpgrade\";" !="createDialog \"QuickTake\";" !="createDialog \"InteractBank\";" !="createdialog \"SelectGender\";" !="_handled = createdialog _dialog;" !="if !(createdialog \"InteractItem\") exitWith {};" !="createDialog \"TapOut\";" !="if !(createdialog \"Trade\") exitWith {};" !="_ok = createdialog \"Interact\";" !="_ok = createdialog \"TradeNPCMenu\";" !="createDialog \"Epoch_myGroup\";" !="createDialog (if ((Epoch_my_GroupUID == \"\") && (Epoch_my_Group isEqualTo [])) then {\"EPOCH_createGrp\"} else {\"Epoch_myGroup\"});" !="createDialog \"GroupRequests\";" !="_ok = createdialog \"MissionSelect\";" !="createDialog 'Skaronator_AdminMenu';" -7 createDisplay !="createDisplay \"rmx_dynamenu\";" !="_parent createdisplay _displayClass;" -7 deleteMarker -7 setMarker !="CBA_fnc_setMarkerPersistent\"" !="\\fnc_setMarkerPersistent" !="\"setMarkerPersistent" -7 createMarker !="CBA_fnc_createMarker\"" !="\\fnc_createMarker" !="\"createMarker" !="cba_fCreateMarker" -7 assignItem !="axeVIP assignItem _item;" -7 forceAddUniform -7 removeAllMPEventHandlers -7 setDammage -7 displaySetEventHandler -7 ctrlSetEventHandler !"BIS_fnc_guiMessage_status" !"ctrlSetEventHandler ['LBDblClick', '_this call" !="_buttonRespawn ctrlseteventhandler [\"buttonclick\",\"with uinamespace do {['buttonRespawn'," !="_ctrl ctrlSetEventHandler [\"mouseEnter\"" !="_ctrlBtn ctrlSetEventHandler [\"MouseButtonDblClick\", _verAct];" -7 addMPEventHandler -7 addEventHandler !"displayAddEventHandler" !"ctrlAddEventHandler" !"[\"FiredNear"\" !"[\"EpeContactStart"\" !"[\"GetOut"\" !"[\"local"\" !"[\"PostReset"\" !"[\"TaskSetAsCurrent"\" !="player addEventHandler [_x,([\"CfgEpochClient\", _x, \"\"] call EPOCH_fnc_returnConfigEntryV2)];" !="\"CBA_fnc_addEventHandler\"" !="\\fnc_addEventHandler" !="\"addEventHandler" !="_eventFunc = _eventFunc + \"(_this select 0) addEventHandler ['Respawn', \" + str _eventFunc + \"];\";" !="_unit addEventHandler [\"hitpart\"," !="CBA_fnc_addEventHandler" -7 displayAddEventHandler !="(findDisplay 46) displayAddEventHandler [\"KeyDown\",\"true\"];" !="_display displayAddEventHandler [_x,([\"CfgEpochClient\", _x, \"\"] call EPOCH_fnc_returnConfigEntryV2)];" !="_display displayaddeventhandler\n[\n\"mousemoving\"," !="_display displayaddeventhandler [\"unload\",\"uinamespace setvariable ['BIS_fnc_guiMess" !="findDisplay -1337 displayAddEventHandler ['Unload'" !="_display displayaddeventhandler [\"keydown\",\"with uinamespace do {['keyDown'" !="_display displayaddeventhandler [_x,_fnc_animate];" !="Development\") then\n{\n_display displayaddeventhandler [\n\"keydown\"" !="_display displayaddeventhandler [\"mousemoving\",\"with uinamespace do {['watchFields'" !="/"CBA_fnc_addDisplayHandler/"" -7 ctrlAddEventHandler !"rCfg >> \"refreshDelay\");" !" [\n\"draw\"," !" [\"buttonclick\"," !="(uiNamespace getVariable 'ESP_map') ctrlAddEventHandler['Draw', '_esp_targets = EPOCH_ESPMAP_TARGETS;" !="ctrlAddEventHandler ['MouseButtonDown'" !="(_display displayctrl _idc) ctrlAddEventHandler [\"LBSelChanged\"," !="_ctrl ctrlSetEventHandler [\"mouseEnter\", (format [\"_c = _this select 0;" !="_ctrl ctrlSetEventHandler [\"mouseExit\", (format [\"_c = _this select 0;" !="_ctrl ctrlSetEventHandler [\"mouseButtonDown\", (format [\"call %1;\",(_buttonSettings select _e select 2)])];" !="_prevButton ctrlAddEventHandler [\"MouseButtonUp\", {_this call cba_diagnostic_fnc_debug" -7 removeAllEventHandlers !="ctrlRemoveAllEventHandlers" !="displayRemoveAllEventHandlers" !="_vehicle removeAllEventHandlers \"GetOut\";" !="_sapper removeAllEventHandlers \"Hit\";\n_sapper removeAllEventHandlers \"FiredNear\";" !="_unit removeAllEventHandlers \"Hit\";\n_unit removeAllEventHandlers \"FiredNear\";" -7 displayRemoveAllEventHandlers !="_display displayRemoveAllEventHandlers _x;" !="if !(isMultiplayer) then { { (findDisplay 46) displayRemoveAllEventHandlers _x } forEach [\"KeyUp\", \"KeyDown\"] };" -7 removeAllMissionEventHandlers -7 ctrlRemoveAllEventHandlers !="(uiNamespace getVariable 'ESP_map') ctrlRemoveAllEventHandlers 'Draw';" !="ctrlAddEventHandler ['MouseButtonDown'" -7 removeEventHandler !="displayRemoveEventHandler" !="player removeEventHandler ['Fired', 0];" !"_currentTarget removeEventHandler[\"EpeContactStart\", _onContactEH]" !" [_adminVar,objnull];\npublicvariable _adminVar;\nplayer removeeventhandler [\"respawn\",_respawn];" !="_plyr removeEventHandler [\"FiredNear\", _smokeEH];" !="player removeEventHandler [_ehKey, 0];" !="\"CBA_fnc_removeEventHandler\"" !="\\fnc_removeEventHandler" !="\"removeEventHandler" -7 displayRemoveEventHandler !"BIS_fnc_guiMessage_status" !="(findDisplay 46) displayRemoveEventHandler [_key, _id];" -7 switchCamera !="vehicle player switchCamera" -7 remoteControl !"fn_moduleRemoteControl.sqf" !="\"BIS_fnc_moduleRemoteControl"\" -7 drawIcon3D !="drawIcon3D[\"\x\addons\a3_epoch_code\Data\Member.paa\",_color,_pos,1,1,0,_text,1,0.025,\"PuristaMedium\"];\n}forEach EPOCH_ESP_TARGETS;" !"drawIcon3D[format[\"\x\addons\a3_epoch_code\Data\UI\loading_bar_%1.paa\",_stability],_color,(getPosATL EPOCH_stabilityTarget),5,5,0,\"\",1,0.05,\"PuristaMedium\"];" !"drawIcon3D[format[\"\x\addons\a3_epoch_code\Data\UI\loading_bar_%1.paa\",_num],_color,_pos,4,4,0,\"\",1,0.05,\"PuristaMedium\"];" !"EPOCH_drawIcon3dStability" !"EPOCH_drawIcon3d" !"if (_condition) then {\ndrawIcon3D [_icon, _color, _position, _sizeX, _sizeY, _angle, _text," !="drawIcon3D [\"\A3\UI_F_MP_Mark\Data\Tasks\Misc\background.paa\"" !="drawIcon3D[\"x\addons\a3_epoch_code\Data\UI\snap_ca.paa\"" -7 drawLine3D !"{\nfor [{_i = 1}, {_i < count _x}, {_i = _i + 1}] do {\ndrawLine3D [_x select (_i - 1), _x select _i, ((BIS_tracedShooter getVari" -7 ctrlCreate !="ctrlCreate [\"RscProgress\",_idc + 1];" !="ctrlCreate [\"rmx_rscControlsGroup\"" !="_ListGroup = _display ctrlCreate [\"RscControlsGroupNoHScrollbars\"" !="ctrlCreate [_x,call _getIDC];" !="_mainGrp = _display ctrlCreate [\"Epoch_main_config_group\",_value];" !="ctrlCreate [\"RscControlsGroupNoScrollbars\",call epoch_getIDC];" !="ctrlCreate [\"rmx_rscPicture\",(66600 + _e)];" !="ctrlCreate ["RscStructuredText",call epoch_getIDC];" -7 ctrlClassName -7 ctrlModel -7 ctrlModelDirection -7 ctrlModelSide -7 ctrlModelUp -7 ctrlSetDirection -7 deleteVehicleCrew !"fn_deleteVehicleCrew.sqf" !="\"BIS_fnc_deleteVehicleCrew"\" -7 loadFile -7 selectPlayer !="selectPlayer _playerObject;" -7 setGroupIconsVisible -7 setGroupIconsSelectable -7 setGroupIconParams -7 addGroupIcon diff --git a/Server_Install_Pack/sc/battleye/selectplayer.txt b/Server_Install_Pack/sc/battleye/selectplayer.txt deleted file mode 100644 index 08fa99b6..00000000 --- a/Server_Install_Pack/sc/battleye/selectplayer.txt +++ /dev/null @@ -1 +0,0 @@ -5 "" !"Epoch_(Male|Female)_F" \ No newline at end of file diff --git a/Server_Install_Pack/sc/battleye/setdamage.txt b/Server_Install_Pack/sc/battleye/setdamage.txt deleted file mode 100644 index 69d9ecda..00000000 --- a/Server_Install_Pack/sc/battleye/setdamage.txt +++ /dev/null @@ -1 +0,0 @@ -5 "" \ No newline at end of file diff --git a/Server_Install_Pack/sc/battleye/setpos.txt b/Server_Install_Pack/sc/battleye/setpos.txt deleted file mode 100644 index 916a4694..00000000 --- a/Server_Install_Pack/sc/battleye/setpos.txt +++ /dev/null @@ -1 +0,0 @@ -5 "" !="Epoch_(Male|Female)_F" !="SapperHead_SIM_EPOCH" !="(Tipi|Workbench|StorageShelf|Safe|LockBox|FirePlace|FirePlaceOn|PlotPole|SolarGen)_EPOCH" !="(Bed|locker|Filing|Chair|ChairRed|wardrobe|cooker|Couch|Table|Pelican|Fridge|Shelf|ToolRack|Rabbit|Cabinet)_EPOCH" !="(Sheep|Goat|Snake|Hen|Cock|Fin|Alsatian)_random_EPOCH" !="(Safe|LockBox|CinderWallHalf|CinderWall|Fireplace|SolarGen|TankTrap)_SIM_EPOCH" !="Wood(Floor|LargeWall|LargeWallCor|LargeWallDoor|LargeWallDoorway|Stairs|Stairs2|Ramp)_SIM_EPOCH" !="(Foundation|Wood(Foundation|Ladder|Tower))_Ghost_EPOCH" !="Foundation_EPOCH" !="WoodFoundation_EPOCH" !="(Hesco3|Metal)(_Ghost|_SIM|)_EPOCH" !="WoodWall[1-4](_SIM|_Ghost|)_EPOCH" diff --git a/Server_Install_Pack/sc/battleye/setvariable.txt b/Server_Install_Pack/sc/battleye/setvariable.txt deleted file mode 100644 index 73f52477..00000000 --- a/Server_Install_Pack/sc/battleye/setvariable.txt +++ /dev/null @@ -1 +0,0 @@ -5 "" !=(Offer|Accept|BUILD_SLOT|TRADE_ACTIVE|last_targeter) !="bis_fnc_objectvar_var" !="bis_fnc_selectrespawntemplate_respawned" diff --git a/Server_Install_Pack/sc/battleye/setvariableval.txt b/Server_Install_Pack/sc/battleye/setvariableval.txt deleted file mode 100644 index 1a2a86e3..00000000 --- a/Server_Install_Pack/sc/battleye/setvariableval.txt +++ /dev/null @@ -1,9 +0,0 @@ -5 "call" -5 "compile" -5 "spawn" -5 "exec" -5 "loadFile" -5 "preprocessFile" -5 ".sqf" -5 "tostring" -5 "[+;{(&%]" !"e\+00" !"[0-9]{1,3}-[0-9]{1,3}:[0-9]{1,3} \(.+\)" \ No newline at end of file diff --git a/Server_Install_Pack/sc/battleye/teamswitch.txt b/Server_Install_Pack/sc/battleye/teamswitch.txt deleted file mode 100644 index 69d9ecda..00000000 --- a/Server_Install_Pack/sc/battleye/teamswitch.txt +++ /dev/null @@ -1 +0,0 @@ -5 "" \ No newline at end of file diff --git a/Server_Install_Pack/sc/battleye/waypointcondition.txt b/Server_Install_Pack/sc/battleye/waypointcondition.txt deleted file mode 100644 index 69d9ecda..00000000 --- a/Server_Install_Pack/sc/battleye/waypointcondition.txt +++ /dev/null @@ -1 +0,0 @@ -5 "" \ No newline at end of file diff --git a/Server_Install_Pack/sc/battleye/waypointstatement.txt b/Server_Install_Pack/sc/battleye/waypointstatement.txt deleted file mode 100644 index 69d9ecda..00000000 --- a/Server_Install_Pack/sc/battleye/waypointstatement.txt +++ /dev/null @@ -1 +0,0 @@ -5 "" \ No newline at end of file From cba0ed605b6ca481f2f9f0a3eb4dda6fc4c0a83a Mon Sep 17 00:00:00 2001 From: vbawol Date: Sat, 23 Apr 2016 09:17:56 -0500 Subject: [PATCH 16/18] same --- .../sc/users/sc/sc.arma3profile | 42 ------------------- 1 file changed, 42 deletions(-) delete mode 100644 Server_Install_Pack/sc/users/sc/sc.arma3profile diff --git a/Server_Install_Pack/sc/users/sc/sc.arma3profile b/Server_Install_Pack/sc/users/sc/sc.arma3profile deleted file mode 100644 index edd17f9b..00000000 --- a/Server_Install_Pack/sc/users/sc/sc.arma3profile +++ /dev/null @@ -1,42 +0,0 @@ -version=1; -blood=1; -singleVoice=0; -gamma=1; -brightness=1; -difficulty = "Custom"; -class DifficultyPresets -{ - class CustomDifficulty - { - class Options - { - groupIndicators=2; - friendlyTags=0; - enemyTags=0; - detectedMines=0; - commands=1; - waypoints=1; - weaponInfo=0; - stanceIndicator=1; - reducedDamage=0; - staminaBar=0; - weaponCrosshair=1; - visionAid=0; - thirdPersonView=1; - cameraShake=1; - scoreTable=1; - deathMessages=1; - vonID=1; - mapContent=0; - autoReport=0; - multipleSaves=0; - - }; - aiLevelPreset=2; - }; - class CustomAILevel - { - skillAI=1; - precisionAI=0; - }; -}; From 32dcc3b9112aa66ba3b5d7f63ca265a1643b9e91 Mon Sep 17 00:00:00 2001 From: vbawol Date: Sat, 23 Apr 2016 09:21:12 -0500 Subject: [PATCH 17/18] readd to lower case --- .../sc/BattlEye/addbackpackcargo.txt | 1 + .../sc/BattlEye/addmagazinecargo.txt | 1 + .../sc/BattlEye/addweaponcargo.txt | 1 + Server_Install_Pack/sc/BattlEye/attachto.txt | 1 + .../sc/BattlEye/createvehicle.txt | 3 + .../sc/BattlEye/deleteVehicle.txt | 2 + .../sc/BattlEye/example-beserver.cfg | 12 +++ .../sc/BattlEye/mpeventhandler.txt | 1 + .../sc/BattlEye/publicvariable.txt | 1 + .../sc/BattlEye/publicvariableval.txt | 8 ++ .../sc/BattlEye/remotecontrol.txt | 1 + .../sc/BattlEye/remoteexec.txt | 1 + Server_Install_Pack/sc/BattlEye/scripts.txt | 77 +++++++++++++++++++ .../sc/BattlEye/selectplayer.txt | 1 + Server_Install_Pack/sc/BattlEye/setdamage.txt | 1 + Server_Install_Pack/sc/BattlEye/setpos.txt | 1 + .../sc/BattlEye/setvariable.txt | 1 + .../sc/BattlEye/setvariableval.txt | 9 +++ .../sc/BattlEye/teamswitch.txt | 1 + .../sc/BattlEye/waypointcondition.txt | 1 + .../sc/BattlEye/waypointstatement.txt | 1 + Server_Install_Pack/sc/basic-example.cfg | 22 ++++++ Server_Install_Pack/sc/server-example.cfg | 68 ++++++++++++++++ .../sc/users/sc/sc.arma3profile | 42 ++++++++++ 24 files changed, 258 insertions(+) create mode 100644 Server_Install_Pack/sc/BattlEye/addbackpackcargo.txt create mode 100644 Server_Install_Pack/sc/BattlEye/addmagazinecargo.txt create mode 100644 Server_Install_Pack/sc/BattlEye/addweaponcargo.txt create mode 100644 Server_Install_Pack/sc/BattlEye/attachto.txt create mode 100644 Server_Install_Pack/sc/BattlEye/createvehicle.txt create mode 100644 Server_Install_Pack/sc/BattlEye/deleteVehicle.txt create mode 100644 Server_Install_Pack/sc/BattlEye/example-beserver.cfg create mode 100644 Server_Install_Pack/sc/BattlEye/mpeventhandler.txt create mode 100644 Server_Install_Pack/sc/BattlEye/publicvariable.txt create mode 100644 Server_Install_Pack/sc/BattlEye/publicvariableval.txt create mode 100644 Server_Install_Pack/sc/BattlEye/remotecontrol.txt create mode 100644 Server_Install_Pack/sc/BattlEye/remoteexec.txt create mode 100644 Server_Install_Pack/sc/BattlEye/scripts.txt create mode 100644 Server_Install_Pack/sc/BattlEye/selectplayer.txt create mode 100644 Server_Install_Pack/sc/BattlEye/setdamage.txt create mode 100644 Server_Install_Pack/sc/BattlEye/setpos.txt create mode 100644 Server_Install_Pack/sc/BattlEye/setvariable.txt create mode 100644 Server_Install_Pack/sc/BattlEye/setvariableval.txt create mode 100644 Server_Install_Pack/sc/BattlEye/teamswitch.txt create mode 100644 Server_Install_Pack/sc/BattlEye/waypointcondition.txt create mode 100644 Server_Install_Pack/sc/BattlEye/waypointstatement.txt create mode 100644 Server_Install_Pack/sc/basic-example.cfg create mode 100644 Server_Install_Pack/sc/server-example.cfg create mode 100644 Server_Install_Pack/sc/users/sc/sc.arma3profile diff --git a/Server_Install_Pack/sc/BattlEye/addbackpackcargo.txt b/Server_Install_Pack/sc/BattlEye/addbackpackcargo.txt new file mode 100644 index 00000000..7b4ba541 --- /dev/null +++ b/Server_Install_Pack/sc/BattlEye/addbackpackcargo.txt @@ -0,0 +1 @@ +5 "" !"B_Parachute" !"B_AssaultPack_(cbr|dgtl|khk|mcamo|ocamo|rgr|sgg|blk)" !"B_Carryall_(cbr|khk|mcamo|ocamo|oli|oucamo)" !"B_FieldPack_(blk|cbr|khk|ocamo|oli|oucamo)" !"B_Kitbag_(cbr|mcamo|rgr|sgg)" !"B_TacticalPack_(blk|mcamo|ocamo|oli|rgr)" !"smallbackpack_(red|green|teal|pink|)_epoch" !"(O|I|B)_UAV_01_backpack_F" diff --git a/Server_Install_Pack/sc/BattlEye/addmagazinecargo.txt b/Server_Install_Pack/sc/BattlEye/addmagazinecargo.txt new file mode 100644 index 00000000..f5efa40a --- /dev/null +++ b/Server_Install_Pack/sc/BattlEye/addmagazinecargo.txt @@ -0,0 +1 @@ +1 "" \ No newline at end of file diff --git a/Server_Install_Pack/sc/BattlEye/addweaponcargo.txt b/Server_Install_Pack/sc/BattlEye/addweaponcargo.txt new file mode 100644 index 00000000..d0ef0d96 --- /dev/null +++ b/Server_Install_Pack/sc/BattlEye/addweaponcargo.txt @@ -0,0 +1 @@ +5 "" !="(Binocular|Rangefinder|Hatchet|CrudeHatchet|WoodClub|Melee(Sledge|Maul|Rod|Sword)|ChainSaw|MultiGun|Rollins_F|Plunger)" !="(ruger_pistol|speargun|1911_pistol|akm|m14|M14Grn|m16|m16Red|m107|m107Tan|m249|m249Tan|m4a3|sr25|l85a2|l85a2_(pink|ugl))_epoch" !="SMG_(01|02)_F" !="hgun_(PDW2000|ACPC2|Rook40|P07|Pistol_heavy_0[1-2]|Pistol_Signal)_F" !="LMG_(Mk200|Zafir)_F" !="srifle_(EBR|GM6|LRR|DMR_01)_F" !="arifle_(Katiba|Katiba_C|Katiba_GL|SDAR|TRG21|TRG20|TRG21_GL|Mk20|Mk20C|Mk20C_plain|Mk20_GL|Mk20_plain|Mk20_GL_plain)_F" !="arifle_(MXC|MX|MX_GL|MXM|MXM_Black|MX_GL_Black|MX_Black|MXC_Black|MX_SW|MX_SW_Black)_F" !="srifle_DMR_0[2-6](_(camo|sniper|khaki|tan|multicam|woodland|spotter|blk|hex|olive)_|_)F" !="MMG_0[1-2]_(hex|tan|camo|black|sand)_F" !"CUP_((h|s)gun|(s|a)rifle|(l|s)mg)_" diff --git a/Server_Install_Pack/sc/BattlEye/attachto.txt b/Server_Install_Pack/sc/BattlEye/attachto.txt new file mode 100644 index 00000000..aea73eda --- /dev/null +++ b/Server_Install_Pack/sc/BattlEye/attachto.txt @@ -0,0 +1 @@ +5 "" !WeaponHolderSimulated !Shot !"(Safe|LockBox|FirePlace|PlotPole|Jack|SolarGen)_EPOCH" !"Jack_SIM_EPOCH" !"LockBox_Ghost_EPOCH" !"CinderWallHalf_Ghost_EPOCH" !"(Tipi|Workbench|StorageShelf|Wood(Floor|LargeWall|Stairs|Ramp|Ladder|Tower)_Ghost_EPOCH" !"(Hesco3|Metal|Foundation)_Ghost_EPOCH" !"Land_Cages_F" !"Epoch_Sapper_F" diff --git a/Server_Install_Pack/sc/BattlEye/createvehicle.txt b/Server_Install_Pack/sc/BattlEye/createvehicle.txt new file mode 100644 index 00000000..02ba1834 --- /dev/null +++ b/Server_Install_Pack/sc/BattlEye/createvehicle.txt @@ -0,0 +1,3 @@ +5 "" !="I_UAV_01_F" !="(I|B|O)_UAV_AI" !"_EPOCH" !="B_65x39_Minigun_Caseless_Red_splash" !="B_762x51_Minigun_Tracer_Yellow_splash" !="B_(Swing|Stick)" !"^SmokeShell" !"^G_40mm_" !"^F_40mm_" !"Sub_F_" !"^F_Signal_" !="mini_Grenade" !="GrenadeHand" !="LaserTarget(C|W|E)" !"^Chemlight_" !="(ClaymoreDirectionalMine|DemoCharge|SatchelCharge)_Remote_Ammo" !="SLAMDirectionalMine_Wire_Ammo" !="(CMflare_Chaff|Sapper_Charge|SapperB_Charge|ATMine_Range)_Ammo" !="APERS(TripMine_Wire|BoundingMine_Range|Mine_Range)_Ammo" !="Epoch_(Sapper|SapperB|Cloak)_F" !="GreatWhite_F" !="groundWeaponHolder" !="WeaponHolderSimulated" !="Epoch_(Male|Female)_F" !"Supply[0-9]" !"Steerable_Parachute_F" !="Epoch_Female_CamoRed_F" !="Land_Cages_F" !="(O|I|B)_UAV_01_backpack_F" !="I_(helipilot|helicrew)_F" !="#smokesource" !="SmokeLauncherAmmo" +5 "_EPOCH" !="(SapperHead|Jack|SolarGen)_SIM_EPOCH" !="Wood(Floor|LargeWall|Stairs|Ramp|Foundation|Ladder|Tower)_EPOCH" !="(Tipi|Workbench|StorageShelf|CinderWallHalf|Foundation|Wood(Floor|LargeWall|Stairs|Ramp|Foundation|Ladder|Tower))_Ghost_EPOCH" !="(Tipi|StorageShelf|Safe|LockBox|FirePlace|FirePlaceOn|PlotPole|SolarGen|Jack|Freezer|Tarp|CinderWallHalf|Bobber)_EPOCH" !="I_(Soldier[1-3]|Soldier)_EPOCH" !="(Bed|locker|Filing|Chair|ChairRed|wardrobe|cooker|Couch|Table|Pelican|Fridge|Shelf|ToolRack|Shoebox|Bunk|Rabbit|Cabinet)_EPOCH" !="(Sheep|Goat|Snake|Snake2|Hen|Cock|Fin|Alsatian)_random_EPOCH" !="(Safe|Workbench|LockBox|CinderWall|CinderWallGarage|CinderWallHalf|PlotPole|Tipi|StorageShelf|Fireplace|TankTrap)_SIM_EPOCH" !="Wood(Floor|LargeWall|LargeWallCor|LargeWallDoor|LargeWallDoorL|LargeWallDoorway|Stairs|Stairs2|Ramp|Ladder|Tower)_SIM_EPOCH" !="(Hesco3|Metal)(_Ghost|_SIM|)_EPOCH" !="(Spike|Metal)_TRAP_SIM_EPOCH" !="(WoodFoundation|Foundation)_EPOCH" !="WoodWall[1-4](_SIM|_Ghost|)_EPOCH" +5 SeaGull diff --git a/Server_Install_Pack/sc/BattlEye/deleteVehicle.txt b/Server_Install_Pack/sc/BattlEye/deleteVehicle.txt new file mode 100644 index 00000000..e4fd05cf --- /dev/null +++ b/Server_Install_Pack/sc/BattlEye/deleteVehicle.txt @@ -0,0 +1,2 @@ +5 "" !="I_UAV_01_F" !="(I|B|O)_UAV_AI" !"_EPOCH" !="B_65x39_Minigun_Caseless_Red_splash" !="B_762x51_Minigun_Tracer_Yellow_splash" !="B_(Swing|Stick)" !"^SmokeShell" !"^G_40mm_" !"^F_40mm_" !"Sub_F_" !"^F_Signal_" !="mini_Grenade" !="GrenadeHand" !="LaserTarget(C|W|E)" !"^Chemlight_" !="(ClaymoreDirectionalMine|DemoCharge|SatchelCharge)_Remote_Ammo" !="SLAMDirectionalMine_Wire_Ammo" !="(CMflare_Chaff|Sapper_Charge|SapperB_Charge|ATMine_Range)_Ammo" !="APERS(TripMine_Wire|BoundingMine_Range|Mine_Range)_Ammo" !="Epoch_(Sapper|SapperB|Cloak)_F" !="GreatWhite_F" !="groundWeaponHolder" !="WeaponHolderSimulated" !="Epoch_(Male|Female)_F" !"Supply[0-9]" !"Steerable_Parachute_F" !="Epoch_Female_CamoRed_F" !="Land_Cages_F" !="(O|I|B)_UAV_01_backpack_F" !="I_(helipilot|helicrew)_F" +5 "_EPOCH" !="Epoch_(Sapper|Cloak)_F" !="(SapperHead|Jack|SolarGen)_SIM_EPOCH" !="Wood(Floor|LargeWall|Stairs|Ramp|Foundation|Ladder|Tower)_EPOCH" !="(Tipi|Workbench|StorageShelf|CinderWallHalf|Foundation|Wood(Floor|LargeWall|Stairs|Ramp|Foundation|Ladder|Tower))_Ghost_EPOCH" !="(Tipi|StorageShelf|Safe|LockBox|FirePlace|FirePlaceOn|PlotPole|SolarGen|Jack|Freezer|Tarp|CinderWallHalf|Bobber)_EPOCH" !="I_(Soldier[1-3]|Soldier)_EPOCH" !="(Bed|locker|Filing|Chair|ChairRed|wardrobe|cooker|Couch|Table|Pelican|Fridge|Shelf|ToolRack|Shoebox|Bunk|Rabbit|Cabinet)_EPOCH" !="(Sheep|Goat|Snake|Snake2|Hen|Cock|Fin|Alsatian)_random_EPOCH" !="(Safe|Workbench|LockBox|CinderWall|CinderWallGarage|CinderWallHalf|PlotPole|Tipi|StorageShelf|Fireplace|TankTrap)_SIM_EPOCH" !="Wood(Floor|LargeWall|LargeWallCor|LargeWallDoor|LargeWallDoorL|LargeWallDoorway|Stairs|Stairs2|Ramp|Ladder|Tower)_SIM_EPOCH" !="(Hesco3|Metal)(_Ghost|_SIM|)_EPOCH" !="(Spike|Metal)_TRAP_SIM_EPOCH" !="(WoodFoundation|Foundation)_EPOCH" !="WoodWall[1-4](_SIM|_Ghost|)_EPOCH" diff --git a/Server_Install_Pack/sc/BattlEye/example-beserver.cfg b/Server_Install_Pack/sc/BattlEye/example-beserver.cfg new file mode 100644 index 00000000..155a4199 --- /dev/null +++ b/Server_Install_Pack/sc/BattlEye/example-beserver.cfg @@ -0,0 +1,12 @@ +RConPort 2304 +RConPassword changemen0w +MaxPing 350 + +MaxCreateVehiclePerInterval 72 1 +MaxSetPosPerInterval 2 1 +MaxSetDamagePerInterval 36 1 +MaxAddBackpackCargoPerInterval 12 1 +MaxAddMagazineCargoPerInterval 96 1 +MaxAddWeaponCargoPerInterval 24 1 +MaxDeleteVehiclePerInterval 48 1 +MaxAttachToPerInterval 4 1 diff --git a/Server_Install_Pack/sc/BattlEye/mpeventhandler.txt b/Server_Install_Pack/sc/BattlEye/mpeventhandler.txt new file mode 100644 index 00000000..69d9ecda --- /dev/null +++ b/Server_Install_Pack/sc/BattlEye/mpeventhandler.txt @@ -0,0 +1 @@ +5 "" \ No newline at end of file diff --git a/Server_Install_Pack/sc/BattlEye/publicvariable.txt b/Server_Install_Pack/sc/BattlEye/publicvariable.txt new file mode 100644 index 00000000..a06634f6 --- /dev/null +++ b/Server_Install_Pack/sc/BattlEye/publicvariable.txt @@ -0,0 +1 @@ +5 "" !="EPAH_[a-z]{5,10}" !="BIS_fnc_objectVar_obj2_[0-9]{1,10}" !="bis_fnc_sharedObjectives_serverUpdate" diff --git a/Server_Install_Pack/sc/BattlEye/publicvariableval.txt b/Server_Install_Pack/sc/BattlEye/publicvariableval.txt new file mode 100644 index 00000000..38e78c5c --- /dev/null +++ b/Server_Install_Pack/sc/BattlEye/publicvariableval.txt @@ -0,0 +1,8 @@ +5 "call" !="[a-z]{5,40}" +5 "compile" +5 "spawn" +5 "exec" !="[a-z]{5,40}" +5 "loadFile" +5 "preprocessFile" +5 "tostring" +5 "\.sqf" diff --git a/Server_Install_Pack/sc/BattlEye/remotecontrol.txt b/Server_Install_Pack/sc/BattlEye/remotecontrol.txt new file mode 100644 index 00000000..69d9ecda --- /dev/null +++ b/Server_Install_Pack/sc/BattlEye/remotecontrol.txt @@ -0,0 +1 @@ +5 "" \ No newline at end of file diff --git a/Server_Install_Pack/sc/BattlEye/remoteexec.txt b/Server_Install_Pack/sc/BattlEye/remoteexec.txt new file mode 100644 index 00000000..1b0c5d4c --- /dev/null +++ b/Server_Install_Pack/sc/BattlEye/remoteexec.txt @@ -0,0 +1 @@ +5 "" !="bis_fnc_execvm \[\[.+\],\"initPlayerServer.sqf\"]" !="bis_fnc_effectkilled(airdestruction|secondaries) \[.+\]" !="epoch_server_checkplayer \[[A-Z]{1} [A-Za-z]{4,10} [0-9]{1,3}-[0-9]{1,3}:[0-9]{1,3}( \(.+\)|) REMOTE\]" !="epoch_server_(save(_vehicles|building)|(lock|pack)Storage|(upgrade|remove|paint|maint)build) \[.+\]" !="epoch_server_((load|respawn|dead|invite|revive|teleport)Player|(upgrade|updateplayer|create|delete)Group) \[.+\]" !="epoch_server_(knockDownTree|mineRocks|lootAnimal|handle_(say3d|switchmove|sapperObjs)) \[.+\]" !="epoch_server_((repair|fill|lock)Vehicle|(loot|fill)Container|(store|take)Crypto|make(NPC|)Trade) \[.+\]" !="epoch_server_(tradeRequest|equippeditem|packJack|create(object|AirDrop)|airDropCrate|destroytrash|unpackBackpack) \[.+\]" !="epoch_(localcleanup|fnc_saveplayer) \[.+\]" diff --git a/Server_Install_Pack/sc/BattlEye/scripts.txt b/Server_Install_Pack/sc/BattlEye/scripts.txt new file mode 100644 index 00000000..1c7c29a5 --- /dev/null +++ b/Server_Install_Pack/sc/BattlEye/scripts.txt @@ -0,0 +1,77 @@ +//new2 +7 "BIS_fnc_dynamictext" !="\"BIS_fnc_dynamictext"\" !="'BIS_fnc_dynamictext'" +7 forceRespawn !="reviveHandleForceRespawnAction" !="forcerespawn player;" +7 setFriend +7 setAmmo +7 RscDebugConsole_watch !="RscDebugConsole_watchSave = [true,true,true,true];" +7 enableFatigue +7 setUnitRecoilCoefficient +7 setWeaponReloadingTime +7 allMissionObjects +7 callExtension +7 showCommandingMenu !="showCommandingMenu '';" !"showCommandingMenu '#USER:" +7 moveIn !="\"A3\functions_f\Misc\fn_moveIn.sqf\"" !="\"A3\functions_f\arrays\fn_removeIndex.sqf\"" !="player moveInAny _vehicle;\nEPOCH_antiWallCount = EPOCH_antiWallCount + 1;" !="[\"I_UAV_AI\", position _unit, [], 0, \"CAN_COLLIDE\"];\n_driver moveInAny _unit;" !="_driver moveInAny Epoch_mission_uav;" !="axeVIP moveInDriver vehicle axeVIP;" !="axeVIP moveInCargo vehicle axeVIP; !="_driver moveInDriver _axeCopter;" !="_unit moveInGunner _axeCopter;" !="axeVIP moveInDriver vehicle axeVIP;" !="axeVIP moveInCargo vehicle axeVIP;" +7 attachTo !="EP_light attachTo [player];" !="_bomb attachTo [_unit, [0,0,0],\"Pelvis\"];" !="_dogHolder attachTo [_dog, [-0.2,1.2,0.7]];" !="EPOCH_target attachTo[player];" !="_sapperSmoke attachTo [_sapper,[0,0,-0.4]];"" !="_cage attachTo [_cage2,[0,1.3,0]];" +7 enableCollisionWith +7 hideObject !="_dogHolder hideobject true;" !="_dogHolder hideobject false;" !="player hideobject true;" !="_ship hideobject true;\n_ship hideobjectglobal true;" +7 setvelocity !="setVelocityTarget" !="_bolt setPosATL _pos;\n_bolt setVelocity [0, 0, -10];" !="EPOCH_target setvelocitytransformation" !="_currentTarget setVelocity [0,0,-0.01];" !="_head setVelocity [\n(sin _dir * _speed), \n(cos _dir * _speed)" !="_vel = velocity this; _dir = getDir player; this setVelocity[(_vel select 0)+(sin _dir * 2),(_vel select 1)+(cos _dir * 2),(_vel select 2)];" !="_head setVelocity [random 2,random 2,10];" !="_bobber setVelocity [0,-1,-1];" !="_bobber setVelocity [0,-1,-10];" !="_x setvelocity [0,0,0.1];" !="_veh setVelocity [0,0,0];" +7 assignAs !="assignAsCargo" !="_unit assignAsGunner _axeCopter;" !="_driver assignAsDriver _axeCopter;" !="axeVIP assignAsDriver vehicle axeVIP;" +7 assignAsCargo !="_x assignAsCargo axeGeneralsBoat;" !="axeVIP assignAsCargo vehicle player;" !="axeVIP assignAsCargo vehicle axeVIP;" +7 allowDamage !="_unit allowDamage false;" !="_unit allowDamage true;" !="player allowDamage true;" !="vehicle player allowDamage true;" !="player allowDamage false;" !="_target allowDamage true;" !="_cargo allowDamage false;" +7 addWeaponCargo !="_acceptHolder addWeaponCargo [_wWeapon, 1] ;" !="CBA_fnc_addWeaponCargo" !="\\fnc_addWeaponCargo" !="\"addWeaponCargo" !="cba_fAddWeaponCargo" +7 onMapSingleClick !="onMapSingleClick '';" !="\"onmapsingleclick\"" +7 addMagazine !"addMagazineCargo" !="player addMagazine [_item, _magazineSizeMax];" !="player addMagazine [_item, floor (_magazineSize % _magazineSizeMax)];" !="player addMagazine[_x select 0, _x select 1];" !="player addMagazine \"sledge_swing\";" !="player addMagazine \"Hatchet_swing\";" !="player addMagazine \"stick_swing\";" !="_wh addMagazineAmmoCargo[_item, 1, _count];" !="CBA_fnc_addMagazine" !="\\fnc_addMagazine" !="\"addMagazine" +7 addMagazineCargo !"_dogHolder addMagazineCargo [\"RabbitCarcass_EPOCH\", 1]" !"_dogHolder addMagazineCargo [\"Pelt_EPOCH\", 1]" !"_dogHolder addMagazineCargo [\"Venom_EPOCH\", 1]" !"_dogHolder addMagazineCargo [\"SnakeCarcass_EPOCH\", 1]" !"_dogHolder addMagazineCargo [\"ChickenCarcass_EPOCH\", 1]" !="_acceptHolder addMagazineCargo [_wAmmo, 1] ;" !="CBA_fnc_addMagazineCargo" !="\\fnc_addMagazineCargo" !="\"addMagazineCargo" !="cba_fAddMagazineCargo" +7 addItem !="{player addItemToVest _x} forEach _vestItems;" !="player addItem _item;" !="_plyr addItemToVest _missionItem;" !="axeVIP addItemToVest _item;" !="_plyr addItemToVest _missionItem;" !="EPOCH_fnc_addItemOverflow" +7 addBackPack +7 addMissionEventHandler !="addMissionEventHandler ['Draw3D',_var + \"call Epoch_gui3DCooldownEH;\"];" !="addMissionEventHandler ['Draw3D',_var + \"call epoch_gui3dModelPosEH;\"];" !="addMissionEventHandler ['Draw3D',_var + \"call epoch_gui3dWorldPosEH;\"];" !="addMissionEventHandler [\n"ended",\n{\n\nBIS_fnc_missionHandlers_end = _this;" +7 removeMissionEventHandler !="removeMissionEventHandler [\"Draw3D\", _id];" +7 removeAllWeapons !="removeAllWeapons axeGeneral;" +7 removeAllItems +7 removeAllActions +7 setViewDistance !"setViewDistance 1600" +7 createGroup !="EPOCH_server_createGroup" !="_grp = createGroup RESISTANCE;" !="if (isserver) then {\n_group = creategroup sidelogic;" !="grpVIPGeneral = createGroup RESISTANCE;" !="_grp = createGroup side _plyr;" !="_grp = createGroup side player;" !="_grp = createGroup _side;" !="_grp = createGroup (side _plyr);" !="createcenter sidelogic;\n_grpLogic = creategroup sidelogic;\nbis_functions_mainscope" !="_group = creategroup west;" +7 createVehicleCrew !="createvehiclecrew _x;" +7 createVehicleLocal !"\"#particlesource\" createVehicleLocal" !"\"#lightpoint\" createVehicleLocal" !"\"BloodSplat\" createVehicleLocal" !"[\"lightning1_F\", \"lightning2_F\"] call BIS_fnc_selectRandom;\n_lighting = _class createVehicleLocal" !="SLX_XEH_DUMMY createVehicleLocal [0, 0, 0];" !="CBA_eventHandlers = "Logic" createVehicleLocal [0, 0];" +7 createUnit !="_unit = _grp createUnit[(_arrUnits select _i), _pos, [], 0, \"FORM\"];" !="_driver = _grp createUnit[\"I_UAV_AI\", position _unit, [], 0, \"CAN_COLLIDE\"];" !="axeGeneral = grpVIPGeneral createUnit ["I_officer_F", axeGeneralPos, [], 1, "CAN_COLLIDE"];" +7 createAgent !="_unit = createAgent[_unitClass, _targetPos, [], 256, \"FORM\"];" !="_unit = createAgent [_unitClass, _targetPos, [], 120, \"FORM\"];" !="_animal = createAgent[_randomAIClass, _animalPos, [], 5, \"NONE\"];" !="_unit = createAgent [\"Epoch_Cloak_F\", _pos, [], 0, \"CAN_COLLIDE\"];" !="_unit = createAgent [\"Epoch_Sapper_F\", _targetPos, [], 180, \"FORM\"];" !="_sapper = createAgent ["Epoch_Sapper_F", getPos _cage2, [], 0, "FORM"];" +7 createTeam +7 createDialog !="createDialog \"rmx_dynamenu\";" !="createDialog \"rmx_craftingUI\";" !="createDialog \"QuickUpgrade\";" !="createDialog \"QuickTake\";" !="createDialog \"InteractBank\";" !="createdialog \"SelectGender\";" !="_handled = createdialog _dialog;" !="if !(createdialog \"InteractItem\") exitWith {};" !="createDialog \"TapOut\";" !="if !(createdialog \"Trade\") exitWith {};" !="_ok = createdialog \"Interact\";" !="_ok = createdialog \"TradeNPCMenu\";" !="createDialog \"Epoch_myGroup\";" !="createDialog (if ((Epoch_my_GroupUID == \"\") && (Epoch_my_Group isEqualTo [])) then {\"EPOCH_createGrp\"} else {\"Epoch_myGroup\"});" !="createDialog \"GroupRequests\";" !="_ok = createdialog \"MissionSelect\";" !="createDialog 'Skaronator_AdminMenu';" +7 createDisplay !="createDisplay \"rmx_dynamenu\";" !="_parent createdisplay _displayClass;" +7 deleteMarker +7 setMarker !="CBA_fnc_setMarkerPersistent\"" !="\\fnc_setMarkerPersistent" !="\"setMarkerPersistent" +7 createMarker !="CBA_fnc_createMarker\"" !="\\fnc_createMarker" !="\"createMarker" !="cba_fCreateMarker" +7 assignItem !="axeVIP assignItem _item;" +7 forceAddUniform +7 removeAllMPEventHandlers +7 setDammage +7 displaySetEventHandler +7 ctrlSetEventHandler !"BIS_fnc_guiMessage_status" !"ctrlSetEventHandler ['LBDblClick', '_this call" !="_buttonRespawn ctrlseteventhandler [\"buttonclick\",\"with uinamespace do {['buttonRespawn'," !="_ctrl ctrlSetEventHandler [\"mouseEnter\"" !="_ctrlBtn ctrlSetEventHandler [\"MouseButtonDblClick\", _verAct];" +7 addMPEventHandler +7 addEventHandler !"displayAddEventHandler" !"ctrlAddEventHandler" !"[\"FiredNear"\" !"[\"EpeContactStart"\" !"[\"GetOut"\" !"[\"local"\" !"[\"PostReset"\" !"[\"TaskSetAsCurrent"\" !="player addEventHandler [_x,([\"CfgEpochClient\", _x, \"\"] call EPOCH_fnc_returnConfigEntryV2)];" !="\"CBA_fnc_addEventHandler\"" !="\\fnc_addEventHandler" !="\"addEventHandler" !="_eventFunc = _eventFunc + \"(_this select 0) addEventHandler ['Respawn', \" + str _eventFunc + \"];\";" !="_unit addEventHandler [\"hitpart\"," !="CBA_fnc_addEventHandler" +7 displayAddEventHandler !="(findDisplay 46) displayAddEventHandler [\"KeyDown\",\"true\"];" !="_display displayAddEventHandler [_x,([\"CfgEpochClient\", _x, \"\"] call EPOCH_fnc_returnConfigEntryV2)];" !="_display displayaddeventhandler\n[\n\"mousemoving\"," !="_display displayaddeventhandler [\"unload\",\"uinamespace setvariable ['BIS_fnc_guiMess" !="findDisplay -1337 displayAddEventHandler ['Unload'" !="_display displayaddeventhandler [\"keydown\",\"with uinamespace do {['keyDown'" !="_display displayaddeventhandler [_x,_fnc_animate];" !="Development\") then\n{\n_display displayaddeventhandler [\n\"keydown\"" !="_display displayaddeventhandler [\"mousemoving\",\"with uinamespace do {['watchFields'" !="/"CBA_fnc_addDisplayHandler/"" +7 ctrlAddEventHandler !"rCfg >> \"refreshDelay\");" !" [\n\"draw\"," !" [\"buttonclick\"," !="(uiNamespace getVariable 'ESP_map') ctrlAddEventHandler['Draw', '_esp_targets = EPOCH_ESPMAP_TARGETS;" !="ctrlAddEventHandler ['MouseButtonDown'" !="(_display displayctrl _idc) ctrlAddEventHandler [\"LBSelChanged\"," !="_ctrl ctrlSetEventHandler [\"mouseEnter\", (format [\"_c = _this select 0;" !="_ctrl ctrlSetEventHandler [\"mouseExit\", (format [\"_c = _this select 0;" !="_ctrl ctrlSetEventHandler [\"mouseButtonDown\", (format [\"call %1;\",(_buttonSettings select _e select 2)])];" !="_prevButton ctrlAddEventHandler [\"MouseButtonUp\", {_this call cba_diagnostic_fnc_debug" +7 removeAllEventHandlers !="ctrlRemoveAllEventHandlers" !="displayRemoveAllEventHandlers" !="_vehicle removeAllEventHandlers \"GetOut\";" !="_sapper removeAllEventHandlers \"Hit\";\n_sapper removeAllEventHandlers \"FiredNear\";" !="_unit removeAllEventHandlers \"Hit\";\n_unit removeAllEventHandlers \"FiredNear\";" +7 displayRemoveAllEventHandlers !="_display displayRemoveAllEventHandlers _x;" !="if !(isMultiplayer) then { { (findDisplay 46) displayRemoveAllEventHandlers _x } forEach [\"KeyUp\", \"KeyDown\"] };" +7 removeAllMissionEventHandlers +7 ctrlRemoveAllEventHandlers !="(uiNamespace getVariable 'ESP_map') ctrlRemoveAllEventHandlers 'Draw';" !="ctrlAddEventHandler ['MouseButtonDown'" +7 removeEventHandler !="displayRemoveEventHandler" !="player removeEventHandler ['Fired', 0];" !"_currentTarget removeEventHandler[\"EpeContactStart\", _onContactEH]" !" [_adminVar,objnull];\npublicvariable _adminVar;\nplayer removeeventhandler [\"respawn\",_respawn];" !="_plyr removeEventHandler [\"FiredNear\", _smokeEH];" !="player removeEventHandler [_ehKey, 0];" !="\"CBA_fnc_removeEventHandler\"" !="\\fnc_removeEventHandler" !="\"removeEventHandler" +7 displayRemoveEventHandler !"BIS_fnc_guiMessage_status" !="(findDisplay 46) displayRemoveEventHandler [_key, _id];" +7 switchCamera !="vehicle player switchCamera" +7 remoteControl !"fn_moduleRemoteControl.sqf" !="\"BIS_fnc_moduleRemoteControl"\" +7 drawIcon3D !="drawIcon3D[\"\x\addons\a3_epoch_code\Data\Member.paa\",_color,_pos,1,1,0,_text,1,0.025,\"PuristaMedium\"];\n}forEach EPOCH_ESP_TARGETS;" !"drawIcon3D[format[\"\x\addons\a3_epoch_code\Data\UI\loading_bar_%1.paa\",_stability],_color,(getPosATL EPOCH_stabilityTarget),5,5,0,\"\",1,0.05,\"PuristaMedium\"];" !"drawIcon3D[format[\"\x\addons\a3_epoch_code\Data\UI\loading_bar_%1.paa\",_num],_color,_pos,4,4,0,\"\",1,0.05,\"PuristaMedium\"];" !"EPOCH_drawIcon3dStability" !"EPOCH_drawIcon3d" !"if (_condition) then {\ndrawIcon3D [_icon, _color, _position, _sizeX, _sizeY, _angle, _text," !="drawIcon3D [\"\A3\UI_F_MP_Mark\Data\Tasks\Misc\background.paa\"" !="drawIcon3D[\"x\addons\a3_epoch_code\Data\UI\snap_ca.paa\"" +7 drawLine3D !"{\nfor [{_i = 1}, {_i < count _x}, {_i = _i + 1}] do {\ndrawLine3D [_x select (_i - 1), _x select _i, ((BIS_tracedShooter getVari" +7 ctrlCreate !="ctrlCreate [\"RscProgress\",_idc + 1];" !="ctrlCreate [\"rmx_rscControlsGroup\"" !="_ListGroup = _display ctrlCreate [\"RscControlsGroupNoHScrollbars\"" !="ctrlCreate [_x,call _getIDC];" !="_mainGrp = _display ctrlCreate [\"Epoch_main_config_group\",_value];" !="ctrlCreate [\"RscControlsGroupNoScrollbars\",call epoch_getIDC];" !="ctrlCreate [\"rmx_rscPicture\",(66600 + _e)];" !="ctrlCreate ["RscStructuredText",call epoch_getIDC];" +7 ctrlClassName +7 ctrlModel +7 ctrlModelDirection +7 ctrlModelSide +7 ctrlModelUp +7 ctrlSetDirection +7 deleteVehicleCrew !"fn_deleteVehicleCrew.sqf" !="\"BIS_fnc_deleteVehicleCrew"\" +7 loadFile +7 selectPlayer !="selectPlayer _playerObject;" +7 setGroupIconsVisible +7 setGroupIconsSelectable +7 setGroupIconParams +7 addGroupIcon diff --git a/Server_Install_Pack/sc/BattlEye/selectplayer.txt b/Server_Install_Pack/sc/BattlEye/selectplayer.txt new file mode 100644 index 00000000..08fa99b6 --- /dev/null +++ b/Server_Install_Pack/sc/BattlEye/selectplayer.txt @@ -0,0 +1 @@ +5 "" !"Epoch_(Male|Female)_F" \ No newline at end of file diff --git a/Server_Install_Pack/sc/BattlEye/setdamage.txt b/Server_Install_Pack/sc/BattlEye/setdamage.txt new file mode 100644 index 00000000..69d9ecda --- /dev/null +++ b/Server_Install_Pack/sc/BattlEye/setdamage.txt @@ -0,0 +1 @@ +5 "" \ No newline at end of file diff --git a/Server_Install_Pack/sc/BattlEye/setpos.txt b/Server_Install_Pack/sc/BattlEye/setpos.txt new file mode 100644 index 00000000..916a4694 --- /dev/null +++ b/Server_Install_Pack/sc/BattlEye/setpos.txt @@ -0,0 +1 @@ +5 "" !="Epoch_(Male|Female)_F" !="SapperHead_SIM_EPOCH" !="(Tipi|Workbench|StorageShelf|Safe|LockBox|FirePlace|FirePlaceOn|PlotPole|SolarGen)_EPOCH" !="(Bed|locker|Filing|Chair|ChairRed|wardrobe|cooker|Couch|Table|Pelican|Fridge|Shelf|ToolRack|Rabbit|Cabinet)_EPOCH" !="(Sheep|Goat|Snake|Hen|Cock|Fin|Alsatian)_random_EPOCH" !="(Safe|LockBox|CinderWallHalf|CinderWall|Fireplace|SolarGen|TankTrap)_SIM_EPOCH" !="Wood(Floor|LargeWall|LargeWallCor|LargeWallDoor|LargeWallDoorway|Stairs|Stairs2|Ramp)_SIM_EPOCH" !="(Foundation|Wood(Foundation|Ladder|Tower))_Ghost_EPOCH" !="Foundation_EPOCH" !="WoodFoundation_EPOCH" !="(Hesco3|Metal)(_Ghost|_SIM|)_EPOCH" !="WoodWall[1-4](_SIM|_Ghost|)_EPOCH" diff --git a/Server_Install_Pack/sc/BattlEye/setvariable.txt b/Server_Install_Pack/sc/BattlEye/setvariable.txt new file mode 100644 index 00000000..73f52477 --- /dev/null +++ b/Server_Install_Pack/sc/BattlEye/setvariable.txt @@ -0,0 +1 @@ +5 "" !=(Offer|Accept|BUILD_SLOT|TRADE_ACTIVE|last_targeter) !="bis_fnc_objectvar_var" !="bis_fnc_selectrespawntemplate_respawned" diff --git a/Server_Install_Pack/sc/BattlEye/setvariableval.txt b/Server_Install_Pack/sc/BattlEye/setvariableval.txt new file mode 100644 index 00000000..1a2a86e3 --- /dev/null +++ b/Server_Install_Pack/sc/BattlEye/setvariableval.txt @@ -0,0 +1,9 @@ +5 "call" +5 "compile" +5 "spawn" +5 "exec" +5 "loadFile" +5 "preprocessFile" +5 ".sqf" +5 "tostring" +5 "[+;{(&%]" !"e\+00" !"[0-9]{1,3}-[0-9]{1,3}:[0-9]{1,3} \(.+\)" \ No newline at end of file diff --git a/Server_Install_Pack/sc/BattlEye/teamswitch.txt b/Server_Install_Pack/sc/BattlEye/teamswitch.txt new file mode 100644 index 00000000..69d9ecda --- /dev/null +++ b/Server_Install_Pack/sc/BattlEye/teamswitch.txt @@ -0,0 +1 @@ +5 "" \ No newline at end of file diff --git a/Server_Install_Pack/sc/BattlEye/waypointcondition.txt b/Server_Install_Pack/sc/BattlEye/waypointcondition.txt new file mode 100644 index 00000000..69d9ecda --- /dev/null +++ b/Server_Install_Pack/sc/BattlEye/waypointcondition.txt @@ -0,0 +1 @@ +5 "" \ No newline at end of file diff --git a/Server_Install_Pack/sc/BattlEye/waypointstatement.txt b/Server_Install_Pack/sc/BattlEye/waypointstatement.txt new file mode 100644 index 00000000..69d9ecda --- /dev/null +++ b/Server_Install_Pack/sc/BattlEye/waypointstatement.txt @@ -0,0 +1 @@ +5 "" \ No newline at end of file diff --git a/Server_Install_Pack/sc/basic-example.cfg b/Server_Install_Pack/sc/basic-example.cfg new file mode 100644 index 00000000..e6b94066 --- /dev/null +++ b/Server_Install_Pack/sc/basic-example.cfg @@ -0,0 +1,22 @@ +// These options are created by default +language="English"; +adapter=-1; +3D_Performance=1.000000; +Resolution_W=800; +Resolution_H=600; +Resolution_Bpp=32; + + +// These options are important for performance tuning + +MinBandwidth = 107374182; // Bandwidth the server is guaranteed to have (in bps). This value helps server to estimate bandwidth available. Increasing it to too optimistic values can increase lag and CPU load, as too many messages will be sent but discarded. Default: 131072 +MaxBandwidth = 1073741824; // Bandwidth the server is guaranteed to never have. This value helps the server to estimate bandwidth available. + +MaxMsgSend = 256; // Maximum number of messages that can be sent in one simulation cycle. Increasing this value can decrease lag on high upload bandwidth servers. Default: 128 +MaxSizeGuaranteed = 512; // Maximum size of guaranteed packet in bytes (without headers). Small messages are packed to larger frames. Guaranteed messages are used for non-repetitive events like shooting. Default: 512 +MaxSizeNonguaranteed = 256; // Maximum size of non-guaranteed packet in bytes (without headers). Non-guaranteed messages are used for repetitive updates like soldier or vehicle position. Increasing this value may improve bandwidth requirement, but it may increase lag. Default: 256 + +MinErrorToSend = 0.002; // Minimal error to send updates across network. Using a smaller value can make units observed by binoculars or sniper rifle to move smoother. Default: 0.001 +MinErrorToSendNear = 0.02; // Minimal error to send updates across network for near units. Using larger value can reduce traffic sent for near units. Used to control client to server traffic as well. Default: 0.01 + +MaxCustomFileSize = 0; // (bytes) Users with custom face or custom sound larger than this size are kicked when trying to connect. \ No newline at end of file diff --git a/Server_Install_Pack/sc/server-example.cfg b/Server_Install_Pack/sc/server-example.cfg new file mode 100644 index 00000000..c8dff4ca --- /dev/null +++ b/Server_Install_Pack/sc/server-example.cfg @@ -0,0 +1,68 @@ +// EPOCH SERVER CONFIG + +// GLOBAL SETTINGS +hostname = "EpochMod.com (0.3.8|1.58) ID02 YourHost"; +password = ""; +passwordAdmin = "!CHANGE_THIS_PASSWORD!"; +serverCommandPassword = "!CHANGE_THIS_PASSWORD!"; +logFile = "A3Master.log"; +verifySignatures = 2; +BattlEye = 1; +requiredBuild = 135656; + +// WHITELIST FILE TYPES +allowedLoadFileExtensions[] = {:}; +allowedPreprocessFileExtensions[] = {"sqf"}; +allowedHTMLLoadExtensions[] = {"html"}; + +disconnectTimeout = 10; // default 90 + +// WELCOME MESSAGE ("message of the day") +// It can be several lines, separated by comma +// Empty messages "" will not be displayed at all but are only for increasing the interval + +motd[] = { + "Welcome to ArmA3 Epoch!", + "Server hosted by YourHost" +}; +motdInterval = 5; // Time interval (in seconds) between each message + +// JOINING RULES +maxPlayers = 50; // Maximum amount of players. Civilians and watchers, beholder, bystanders and so on also count as player. + +// VOTING +voteMissionPlayers = 200; // Prevents Votes. +voteThreshold = 2; // Prevents Votes. +// DISALLOW VOTING since 1.39 +allowedVoteCmds[] = {}; +allowedVotedAdminCmds[] = {}; + +// INGAME SETTINGS +disableVoN = 0; // If set to 1, Voice over Net will not be available +vonCodecQuality = 30; // Quality from 1 to 30 +forceRotorLibSimulation = 0; // Enforces the Advanced Flight Model on the server. Default = 0 (up to the player). 1 - forced AFM, 2 - forced SFM. +persistent = 1; // If 1, missions still run on even after the last player disconnected. + +// MISSIONS CYCLE (see below) (epoch.Altis, epoch.Stratis, epoch.Chernarus, epoch.Bornholm) +class Missions +{ + class Epoch { + template = epoch.Altis; // DO NOT CHANGE THIS, IT WILL BREAK YOUR SERVER + difficulty = "custom"; // difficulty settings: Recruit, Regular Veteran, Custom + }; +}; + +kickDuplicate = 1; +equalModRequired = 0; +requiredSecureId = 2; +timeStampFormat = "short"; + +// SCRIPTING ISSUES +onUserConnected = ""; +onUserDisconnected = ""; +doubleIdDetected = ""; + +// SIGNATURE VERIFICATION +onUnsignedData = "kick (_this select 0)"; // unsigned data detected +onHackedData = "kick (_this select 0)"; //"ban (_this select 0)"; // tampering of the signature detected +onDifferentData = "kick (_this select 0)"; diff --git a/Server_Install_Pack/sc/users/sc/sc.arma3profile b/Server_Install_Pack/sc/users/sc/sc.arma3profile new file mode 100644 index 00000000..edd17f9b --- /dev/null +++ b/Server_Install_Pack/sc/users/sc/sc.arma3profile @@ -0,0 +1,42 @@ +version=1; +blood=1; +singleVoice=0; +gamma=1; +brightness=1; +difficulty = "Custom"; +class DifficultyPresets +{ + class CustomDifficulty + { + class Options + { + groupIndicators=2; + friendlyTags=0; + enemyTags=0; + detectedMines=0; + commands=1; + waypoints=1; + weaponInfo=0; + stanceIndicator=1; + reducedDamage=0; + staminaBar=0; + weaponCrosshair=1; + visionAid=0; + thirdPersonView=1; + cameraShake=1; + scoreTable=1; + deathMessages=1; + vonID=1; + mapContent=0; + autoReport=0; + multipleSaves=0; + + }; + aiLevelPreset=2; + }; + class CustomAILevel + { + skillAI=1; + precisionAI=0; + }; +}; From 1ef7ef360c430437cfa61aa250ce1c152097280d Mon Sep 17 00:00:00 2001 From: vbawol Date: Sun, 24 Apr 2016 12:52:07 -0500 Subject: [PATCH 18/18] changelogs --- Changelogs/0.3.8.0.txt | 6 ++++++ Sources/epoch_server/init/server_securityfunctions.sqf | 3 --- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/Changelogs/0.3.8.0.txt b/Changelogs/0.3.8.0.txt index bbc44794..fd989afb 100644 --- a/Changelogs/0.3.8.0.txt +++ b/Changelogs/0.3.8.0.txt @@ -44,10 +44,15 @@ [Info] Removed old .bikey and added new one for 0380. Build: 429 +[Added] Install batch for all CUP mods and CBA. https://github.com/EpochModTeam/Epoch/tree/master/Tools/Install +[Changed] Make use of new getOutMan EH for vehicle epoch anti wall glitch checks. +[Changed] Change last few uses of hintSilent to Epoch_dynamicText. Now only the debug monitor uses hintSilent. [Changed] 1.58 Difficulty Overhaul changes to enable 3rd person. Thanks to klinGiii on the forum: http://epochmod.com/forum/index.php?/topic/41922-158-difficulty-overhaul +[Changed] Epoch AH reworked displayAddEventHandler checks to use. [Changed] Increased range for vehicle interactions to fix issues with access to larger vehicles. Thanks to Grahame for the report: http://epochmod.com/forum/index.php?/topic/41894-cannot-unlock-large-vehicles/ [Changed] Preloading sapper by spawning one on the map at server start. [Changed] Change to github markdown for credits and license. +[Fixed] Fixed Arma install batch script not closing after update. [Fixed] Mission loot payout not working. Thanks to @He-Man for the fix: http://epochmod.com/forum/index.php?/topic/41892-payout-trader-mission-broken/ [Fixed] Crafting recipe for Vehicle Repair Kit had wrong part in usedIn array. Thanks to LeBarbare for the report: http://epochmod.com/forum/index.php?/topic/41896-wrong-recipe-place/ [Fixed] Green Marked traders unable to be accessed. Thanks to @He-Man for the report: http://epochmod.com/forum/index.php?/topic/41887-radom-unexpected-script-failure-with-traders-ai_slot/ @@ -57,3 +62,4 @@ Build: 429 [Fixed] removeExec Battleye kick fixed. [Fixed] Player getting stuck waiting for inventory to load. [Fixed] Delete base object if over limit. +[Info] Defined proper settings in full redis-example.conf diff --git a/Sources/epoch_server/init/server_securityfunctions.sqf b/Sources/epoch_server/init/server_securityfunctions.sqf index a357f6f5..bda3c35b 100644 --- a/Sources/epoch_server/init/server_securityfunctions.sqf +++ b/Sources/epoch_server/init/server_securityfunctions.sqf @@ -49,9 +49,6 @@ _skn_badVarCheckArray = [_cfg_variablesConfig, "badVars", ['ESP_map','ESP_mainMa _skn_nilVarCheckArray = [_cfg_variablesConfig, "nilVars", ['EPOCH_antiWallCount','EPOCH_playerEnergy','EPOCH_playerHunger','EPOCH_playerStamina','EPOCH_playerCrypto','EPOCH_target','EPOCH_ESP_TARGETS','EPOCH_ESPMAP_TARGETS','EPOCH_taxRate','EPOCH_ESP_VEHICLEPLAYER','EPOCH_ESP_PLAYER','EPOCH_ESP_VEHICLES']] call EPOCH_fnc_returnConfigEntry; _skn_commandMenuArray = [(_config >> "commandMenu"), "menus",['','RscSelectTeam','RscTeam','RscMoveHigh','#GETIN','#RscStatus','#WATCH0','RscCombatMode','RscMenuReply','RscCallSupport','#CUSTOM_RADIO','#User:BIS_fnc_addCommMenuItem_menu','RscRadio','RscReply','#ACTION','RscMenuFormations','#WATCH','RscGroupRootMenu','RscMainMenu','RscMenuMove','RscWatchDir','RscWatchMoveDir','#User:BIS_Menu_GroupCommunication','RscMenuStatus','RscFormations']] call EPOCH_fnc_returnConfigEntry; -_skn_displayAddEHKeyDown = ["CfgEpochClient", "keyDown", "keyDown",'(_this call EPOCH_KeyDown)'] call EPOCH_fnc_returnConfigEntryV2; -_skn_displayAddEHKeyUp = ["CfgEpochClient", "keyUp", "keyUp",'(_this call EPOCH_KeyUp)'] call EPOCH_fnc_returnConfigEntryV2; - _skn_addEHConfig = (_config >> "addEventHandler"); _skn_displayAddEHChecks = [_skn_addEHConfig, "checks",[]] call EPOCH_fnc_returnConfigEntry;