|
| 1 | +--- |
| 2 | +title: Creating *.efd |
| 3 | +tags: |
| 4 | + - AI |
| 5 | + - efd |
| 6 | +description: Guide for creating *.efd |
| 7 | +draft: true |
| 8 | +--- |
| 9 | + |
| 10 | +# Creating *.efd |
| 11 | + |
| 12 | +___ |
| 13 | + |
| 14 | +<Authors |
| 15 | + authors={["theparazit"]} |
| 16 | + size="medium" |
| 17 | + showTitle={true} |
| 18 | + showDescription={true} |
| 19 | +/> |
| 20 | + |
| 21 | +## About |
| 22 | + |
| 23 | +*.efd файлы требуются для облегченых просчетов вероятностей в Offline. Например столкновение мутантов и сталкеров между собой, аномалиями и т.п. |
| 24 | + |
| 25 | +### Get program |
| 26 | + |
| 27 | +Для создания *.efd файла нам потребуется программа Evaluation Function Constructor. Чтобы ее получить ее потребуется скопилировать ее из исходников или скачать уже скомипилированную версию из последнего релиза на GitHub (Utilities). Нам нужен лишь EFC.exe. |
| 28 | + |
| 29 | +### Start |
| 30 | + |
| 31 | +После того, как вы получили программу, нужно создать главный кофигурационый *.ini файл. |
| 32 | + |
| 33 | +:::warning |
| 34 | +Обязательно назовите файл "efc.ini"! |
| 35 | +::: |
| 36 | + |
| 37 | +```ini title="efc.ini" |
| 38 | +;File Names |
| 39 | + LogData = %s\efc.log |
| 40 | + TextData = %s\examples.txt |
| 41 | + BinaryData = %s\binary.dat |
| 42 | + ConfigData = %s\configs.dat |
| 43 | + PatternData = %s\patterns.dat |
| 44 | + CoreData = %s\core.dat |
| 45 | + ParametersData = %s\params.dat |
| 46 | + EFData = %s.efd |
| 47 | + |
| 48 | +;Weight Fitting Parameters |
| 49 | + Epsilon = 0.00001 |
| 50 | + Alpha = 1.0 |
| 51 | + Beta = 0.01 |
| 52 | + MaxIterationCount = 10000 |
| 53 | + |
| 54 | +;Probabilistic Weight Fitting Parameters |
| 55 | + RandomFactor = 4 |
| 56 | + RandomProbability = 1 |
| 57 | + RandomUpdate = 1 |
| 58 | + RandomStartSeed = 0 |
| 59 | + |
| 60 | +;Configuration Generation Parameters |
| 61 | + MatchThreshold = 1 |
| 62 | + MaxCardinality = 30 |
| 63 | + |
| 64 | +;Patterns Generation Parameters |
| 65 | + PatternExistanceCoefficient = 1.0 |
| 66 | + |
| 67 | +;Function Types |
| 68 | + |
| 69 | + ;Primary Functions |
| 70 | + Distance = 0 |
| 71 | + GraphPointType0 = 1 |
| 72 | + EquipmentType = 2 |
| 73 | + ItemDeterioration = 3 |
| 74 | + EquipmentPreference = 4 |
| 75 | + MainWeaponType = 5 |
| 76 | + MainWeaponPreference = 6 |
| 77 | + ItemValue = 7 |
| 78 | + WeaponAmmo = 8 |
| 79 | + DetectorType = 9 |
| 80 | + |
| 81 | + PersonalHealth = 21 |
| 82 | + PersonalMorale = 22 |
| 83 | + PersonalCreatureType = 23 |
| 84 | + PersonalWeaponType = 24 |
| 85 | + PersonalAccuracy = 25 |
| 86 | + PersonalIntelligence = 26 |
| 87 | + PersonalRelation = 27 |
| 88 | + PersonalGreed = 28 |
| 89 | + PersonalAggressiveness = 29 |
| 90 | + PersonalEyeRange = 30 |
| 91 | + PersonalMaxHealth = 31 |
| 92 | + |
| 93 | + EnemyHealth = 41 |
| 94 | + EnemyCreatureType = 42 |
| 95 | + EnemyWeaponType = 43 |
| 96 | + EnemyEquipmentCost = 44 |
| 97 | + EnemyRukzakWeight = 45 |
| 98 | + EnemyAnomality = 46 |
| 99 | + EnemyEyeRange = 47 |
| 100 | + EnemyMaxHealth = 48 |
| 101 | + EnemyAnomalyType = 49 |
| 102 | + EnemyDistanceToGraphPoint = 50 |
| 103 | + |
| 104 | + ;Complex Functions |
| 105 | + WeaponEffectiveness = 61 |
| 106 | + CreatureEffectiveness = 62 |
| 107 | + IntCreatureEffectiveness = 63 |
| 108 | + AccWeaponEffectiveness = 64 |
| 109 | + FinCreatureEffectiveness = 65 |
| 110 | + VictoryProbability = 66 |
| 111 | + EntityCost = 67 |
| 112 | + Expediency = 68 |
| 113 | + SurgeDeathProbability = 69 |
| 114 | + EquipmentValue = 70 |
| 115 | + MainWeaponValue = 71 |
| 116 | + SmallWeaponValue = 72 |
| 117 | + TerrainType = 73 |
| 118 | + WeaponAttackTimes = 74 |
| 119 | + WeaponSuccessProbability = 75 |
| 120 | + EnemyDetectability = 76 |
| 121 | + EnemyDetectProbability = 77 |
| 122 | + EnemyRetreatProbability = 78 |
| 123 | + AnomalyDetectProbability = 79 |
| 124 | + AnomalyInteractProbability = 80 |
| 125 | + AnomalyRetreatProbability = 81 |
| 126 | + BirthPercentage = 82 |
| 127 | + BirthProbability = 83 |
| 128 | + BirthSpeed = 84 |
| 129 | +``` |
| 130 | + |
| 131 | +### Creating project |
| 132 | + |
| 133 | +EFC работает по проектному решению, что означает, что вам нужны "проекты" в виде папок с файлами. |
| 134 | + |
| 135 | +:::info |
| 136 | + Создайте папку с именем project_01 - это будет название проекта. |
| 137 | + |
| 138 | + Внутри каждого проекта должен быть *.txt файл содержащий параметры проекта |
| 139 | + :::warning |
| 140 | + имя \*.txt файла проекта должно быть "examples.txt"! |
| 141 | + ::: |
| 142 | + |
| 143 | +### Generate |
0 commit comments