├── .gitattributes ├── .github ├── FUNDING.yml └── ISSUE_TEMPLATE │ └── bug_report.md ├── .gitignore ├── .gitmodules ├── COMPILE.bat ├── CornerStone ├── bin │ ├── CornerStone.dll │ └── run.cmd ├── cfg │ ├── default.json │ ├── general.json │ ├── grenades │ │ ├── de_cache.json │ │ ├── de_cbble.json │ │ ├── de_dust2.json │ │ ├── de_inferno.json │ │ ├── de_mirage.json │ │ ├── de_overpass.json │ │ └── de_train.json │ └── logger.conf └── ui │ ├── css │ ├── app~d0ae3f07.72d8113f.css │ ├── code~31ecd969.0c92bed6.css │ ├── vendors~253ae210.969640e4.css │ └── vendors~d939e436.7a3c4381.css │ ├── favicon.ico │ ├── img │ ├── 1.4259dbab.jpg │ └── 2.16f169bf.jpg │ ├── index.html │ └── js │ ├── app~d0ae3f07.b1d7b4ce.js │ ├── code~31ecd969.a2e88396.js │ ├── runtime.0df8b2b1.js │ ├── vendors~253ae210.0db7105a.js │ └── vendors~d939e436.6f346f08.js ├── LICENSE ├── Lib ├── Inject_Dll.ahk ├── JSON.ahk ├── LibCon.ahk ├── Logging.ahk ├── Neutron.ahk ├── OTA.ahk ├── functions.ahk ├── gh_injector.dll └── lang_strings.ahk ├── README.md ├── Web ├── css │ ├── bootstrap-4.4.1.css │ ├── buttons.css │ ├── fonts │ │ ├── GothamPro-Medium.eot │ │ ├── GothamPro-Medium.ttf │ │ └── GothamPro-Medium.woff │ ├── shit.css │ └── stylesheet.css ├── js │ ├── bootstrap-4.4.1.js │ ├── iniparser.js │ ├── jquery-3.4.1.min.js │ ├── popper.min.js │ └── shit.js └── main.html ├── icon.ico └── loader.ahk /.gitattributes: -------------------------------------------------------------------------------- 1 | # Auto detect text files and perform LF normalization 2 | * text=auto 3 | -------------------------------------------------------------------------------- /.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | # These are supported funding model platforms 2 | custom: t.me/m4x3r228/5 3 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/bug_report.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Bug report 3 | about: Create a report to help us improve 4 | title: "[Bug name Ex. Crash while inject]" 5 | labels: 'bug' 6 | assignees: '' 7 | 8 | --- 9 | 10 | **Describe the bug** 11 | A clear and concise description of what the bug is. 12 | 13 | **To Reproduce** 14 | Steps to reproduce the behavior: 15 | 1. Go to '...' 16 | 2. Click on '....' 17 | 3. Scroll down to '....' 18 | 4. See error 19 | 20 | **Expected behavior** 21 | A clear and concise description of what you expected to happen. 22 | 23 | **Screenshots** 24 | If applicable, add screenshots to help explain your problem. 25 | 26 | **Logs** 27 | Add logs to help your problem. 28 | Log file: %appdata%\FET Loader\logs.log 29 | (Bug reports without logs will be rejected) 30 | 31 | **Smartphone (please complete the following information):** 32 | - OS: [e.g. Windows 8.1 Pro] 33 | - Cheat: [e.g. OTC3] 34 | 35 | **Additional context** 36 | Add any other context about the problem here. 37 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .vscode 2 | *.exe 3 | superior shit compilator.ahk -------------------------------------------------------------------------------- /.gitmodules: -------------------------------------------------------------------------------- 1 | [submodule "ahk2exe"] 2 | path = ahk2exe 3 | url = https://github.com/clownless/ahk2exe 4 | -------------------------------------------------------------------------------- /COMPILE.bat: -------------------------------------------------------------------------------- 1 | .\Ahk2Exe\Ahk2Exe.exe /in loader.ahk /out loader.exe /bin ".\Ahk2Exe\ANSI 32-bit.bin" -------------------------------------------------------------------------------- /CornerStone/bin/CornerStone.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clangremlini/fet-loader/755b3a49fd5e4d03d0dd7d002f4946c346dc2c7f/CornerStone/bin/CornerStone.dll -------------------------------------------------------------------------------- /CornerStone/bin/run.cmd: -------------------------------------------------------------------------------- 1 | @start rundll32 "%appdata%\CornerStone\bin\CornerStone.dll", DllRegisterServer 2 | -------------------------------------------------------------------------------- /CornerStone/cfg/default.json: -------------------------------------------------------------------------------- 1 | { 2 | "aimbot": { 3 | "enabled": true, 4 | "toggleKey": "118", 5 | "fov": 9, 6 | "hitbox": 0, 7 | "aimType": 4, 8 | "aimSmoothSpiral": 66, 9 | "targetSelectorType": 3, 10 | "hitboxSelectorType": 0, 11 | "saveTarget": true, 12 | "nextTargetDelay": 370, 13 | "visibleOnly": true, 14 | "jumping": false, 15 | "prediction": true, 16 | "aimbotRCS": true, 17 | "RCSAmount": 2.1, 18 | "delay": 109, 19 | "inCrossDelay": 30, 20 | "disableDelayInCross": true, 21 | "smoothAmount": 22, 22 | "spiralAim_xScale": 2.5, 23 | "spiralAim_yScale": 6.8, 24 | "startBullet": 0, 25 | "endBullet": 30, 26 | "holdKey": "1", 27 | "standaloneRCS": true, 28 | "standaloneRCSSmooth": 2 29 | }, 30 | "chams": { 31 | "enabled": true, 32 | "toggleKey": "122", 33 | "teammates": false, 34 | "healthBasedColor": true, 35 | "colorEnemy": "rgba(255,154,4,1)", 36 | "colorTeammate": "rgba(150,250,100,0.7)", 37 | "colorBomber": "rgba(191,0,255,1)", 38 | "colorDefusing": "rgba(0,0,255,1)", 39 | "colorDefusingKits": "rgba(0,191,255,1)", 40 | "lowHpValue": "10", 41 | "colorLowHp": "rgba(255,255,255,1)", 42 | "brightness": "4" 43 | }, 44 | "glow_esp": { 45 | "enabled": true, 46 | "toggleKey": "117", 47 | "highlightAllKey": "4", 48 | "visibleOnly": false, 49 | "visibleStyle": -1, 50 | "teammates": false, 51 | "healthBasedColor": true, 52 | "colorEnemy": "rgba(255,154,4,1)", 53 | "colorTeammate": "rgba(150,250,100,0.7)", 54 | "colorBomber": "rgba(191,0,255,1)", 55 | "colorDefusing": "rgba(0,0,255,1)", 56 | "colorDefusingKits": "rgba(0,191,255,1)", 57 | "lowHpValue": "10", 58 | "colorLowHp": "rgba(255,255,255,1)", 59 | "bodyColor": false, 60 | "colorBody": "rgba(255,244,0,1)" 61 | }, 62 | "trigger": { 63 | "enabled": true, 64 | "holdKey": "5", 65 | "shootTeammates": false, 66 | "delay": 25 67 | }, 68 | "bunnyhop": { 69 | "enabled": true, 70 | "holdKey": "32", 71 | "autostrafe": false 72 | }, 73 | "fakelag": { 74 | "enabled": false, 75 | "toggleKey": "120", 76 | "holdKey": "4", 77 | "mode": 2, 78 | "send": 15, 79 | "choke": 10, 80 | "sendDeviation": 0.25, 81 | "chokeDeviation": 0.25, 82 | "moving": true, 83 | "standing": true, 84 | "jumping": true 85 | }, 86 | "nadeshelper": { 87 | "enabled": true, 88 | "holdKey": "18", 89 | "genKey": "70", 90 | "smoothAmount": 56, 91 | "showCurrentOnly": false, 92 | "showSpots": true 93 | }, 94 | "misc": { 95 | "radar": { 96 | "enabled": false, 97 | "toggleKey": "119" 98 | }, 99 | "fovchanger": { 100 | "enabled": false, 101 | "fov": "90" 102 | }, 103 | "noflash": { 104 | "enabled": false, 105 | "value": 85 106 | }, 107 | "hitmarker": { 108 | "enabled": true, 109 | "sound": "buttons/arena_switch_press_02", 110 | "volume": 0.55 111 | }, 112 | "postProcessing": false 113 | }, 114 | "weapons": { 115 | "_1": { 116 | "enabled": true, 117 | "name": "deagle", 118 | "title": "Desert Eagle", 119 | "hitbox": 0, 120 | "fov": 10, 121 | "smoothAmount": 20, 122 | "RCSAmount": 2, 123 | "delay": 90, 124 | "startBullet": 0, 125 | "endBullet": 1 126 | }, 127 | "_2": { 128 | "enabled": true, 129 | "name": "elite", 130 | "title": "Dual Berettas", 131 | "hitbox": 1, 132 | "fov": 8, 133 | "smoothAmount": 15, 134 | "RCSAmount": 2, 135 | "delay": 80, 136 | "startBullet": 0, 137 | "endBullet": 0 138 | }, 139 | "_3": { 140 | "enabled": false, 141 | "name": "fiveseven", 142 | "title": "Five-Seven", 143 | "hitbox": 0, 144 | "fov": 8, 145 | "smoothAmount": 15, 146 | "RCSAmount": 2, 147 | "delay": 80, 148 | "startBullet": 0, 149 | "endBullet": 0 150 | }, 151 | "_4": { 152 | "enabled": true, 153 | "name": "glock", 154 | "title": "Glock-18", 155 | "hitbox": 0, 156 | "fov": 8, 157 | "smoothAmount": 18, 158 | "RCSAmount": 2, 159 | "delay": 80, 160 | "startBullet": 0, 161 | "endBullet": 0 162 | }, 163 | "_30": { 164 | "enabled": true, 165 | "name": "tec9", 166 | "title": "Tec-9", 167 | "hitbox": -1, 168 | "fov": 8, 169 | "smoothAmount": 15, 170 | "RCSAmount": 2, 171 | "delay": 70, 172 | "startBullet": 0, 173 | "endBullet": 0 174 | }, 175 | "_31": { 176 | "enabled": true, 177 | "name": "taser", 178 | "title": "Zeus x27 (Taser)", 179 | "hitbox": -1, 180 | "fov": 10, 181 | "smoothAmount": 19, 182 | "RCSAmount": 2, 183 | "delay": 87, 184 | "startBullet": 0, 185 | "endBullet": 0 186 | }, 187 | "_32": { 188 | "enabled": false, 189 | "name": "hkp2000", 190 | "title": "P2000", 191 | "hitbox": 0, 192 | "fov": 8, 193 | "smoothAmount": 15, 194 | "RCSAmount": 2, 195 | "delay": 80, 196 | "startBullet": 0, 197 | "endBullet": 0 198 | }, 199 | "_36": { 200 | "enabled": false, 201 | "name": "p250", 202 | "title": "P250", 203 | "hitbox": 0, 204 | "fov": 8, 205 | "smoothAmount": 15, 206 | "RCSAmount": 2, 207 | "delay": 80, 208 | "startBullet": 0, 209 | "endBullet": 0 210 | }, 211 | "_61": { 212 | "enabled": true, 213 | "name": "usp_silencer", 214 | "title": "USP-S", 215 | "hitbox": 0, 216 | "fov": 9, 217 | "smoothAmount": 18, 218 | "RCSAmount": 2, 219 | "delay": 80, 220 | "startBullet": 0, 221 | "endBullet": 1 222 | }, 223 | "_63": { 224 | "enabled": true, 225 | "name": "cz75a", 226 | "title": "CZ74-Auto", 227 | "hitbox": -1, 228 | "fov": 8, 229 | "smoothAmount": 21, 230 | "RCSAmount": 2, 231 | "delay": 80, 232 | "startBullet": 0, 233 | "endBullet": 12 234 | }, 235 | "_64": { 236 | "enabled": false, 237 | "name": "revolver", 238 | "title": "R8 Revolver", 239 | "hitbox": 0, 240 | "fov": 8, 241 | "smoothAmount": 15, 242 | "RCSAmount": 2, 243 | "delay": 80, 244 | "startBullet": 0, 245 | "endBullet": 0 246 | }, 247 | "_17": { 248 | "enabled": false, 249 | "name": "mac10", 250 | "title": "MAC-10", 251 | "hitbox": 0, 252 | "fov": 8, 253 | "smoothAmount": 15, 254 | "RCSAmount": 2, 255 | "delay": 80, 256 | "startBullet": 0, 257 | "endBullet": 15 258 | }, 259 | "_19": { 260 | "enabled": false, 261 | "name": "p90", 262 | "title": "P90", 263 | "hitbox": 0, 264 | "fov": 8, 265 | "smoothAmount": 15, 266 | "RCSAmount": 2, 267 | "delay": 80, 268 | "startBullet": 0, 269 | "endBullet": 10 270 | }, 271 | "_23": { 272 | "enabled": false, 273 | "name": "mp5sd", 274 | "title": "MP5-SD", 275 | "hitbox": 0, 276 | "fov": 8, 277 | "smoothAmount": 15, 278 | "RCSAmount": 2, 279 | "delay": 80, 280 | "startBullet": 0, 281 | "endBullet": 10 282 | }, 283 | "_24": { 284 | "enabled": false, 285 | "name": "ump45", 286 | "title": "UMP-45", 287 | "hitbox": 0, 288 | "fov": 8, 289 | "smoothAmount": 15, 290 | "RCSAmount": 2, 291 | "delay": 80, 292 | "startBullet": 0, 293 | "endBullet": 38 294 | }, 295 | "_26": { 296 | "enabled": false, 297 | "name": "bizon", 298 | "title": "PP-Bizon", 299 | "hitbox": 0, 300 | "fov": 8, 301 | "smoothAmount": 15, 302 | "RCSAmount": 2, 303 | "delay": 80, 304 | "startBullet": 0, 305 | "endBullet": 10 306 | }, 307 | "_33": { 308 | "enabled": false, 309 | "name": "mp7", 310 | "title": "MP7", 311 | "hitbox": 0, 312 | "fov": 8, 313 | "smoothAmount": 15, 314 | "RCSAmount": 2, 315 | "delay": 80, 316 | "startBullet": 0, 317 | "endBullet": 10 318 | }, 319 | "_34": { 320 | "enabled": false, 321 | "name": "mp9", 322 | "title": "MP9", 323 | "hitbox": 0, 324 | "fov": 8, 325 | "smoothAmount": 15, 326 | "RCSAmount": 2, 327 | "delay": 80, 328 | "startBullet": 0, 329 | "endBullet": 10 330 | }, 331 | "_7": { 332 | "enabled": false, 333 | "name": "ak47", 334 | "title": "AK-47", 335 | "hitbox": -1, 336 | "fov": 8, 337 | "smoothAmount": 22, 338 | "RCSAmount": 1.9, 339 | "delay": 80, 340 | "startBullet": 0, 341 | "endBullet": 14 342 | }, 343 | "_8": { 344 | "enabled": false, 345 | "name": "aug", 346 | "title": "AUG", 347 | "hitbox": 0, 348 | "fov": 8, 349 | "smoothAmount": 15, 350 | "RCSAmount": 2, 351 | "delay": 80, 352 | "startBullet": 0, 353 | "endBullet": 7 354 | }, 355 | "_10": { 356 | "enabled": false, 357 | "name": "famas", 358 | "title": "Famas", 359 | "hitbox": 0, 360 | "fov": 8, 361 | "smoothAmount": 15, 362 | "RCSAmount": 2, 363 | "delay": 80, 364 | "startBullet": 0, 365 | "endBullet": 7 366 | }, 367 | "_13": { 368 | "enabled": false, 369 | "name": "galilar", 370 | "title": "Galil AR", 371 | "hitbox": 0, 372 | "fov": 8, 373 | "smoothAmount": 15, 374 | "RCSAmount": 2, 375 | "delay": 80, 376 | "startBullet": 0, 377 | "endBullet": 7 378 | }, 379 | "_16": { 380 | "enabled": false, 381 | "name": "m4a4", 382 | "title": "M4A4", 383 | "hitbox": 0, 384 | "fov": 8, 385 | "smoothAmount": 15, 386 | "RCSAmount": 2, 387 | "delay": 80, 388 | "startBullet": 0, 389 | "endBullet": 7 390 | }, 391 | "_39": { 392 | "enabled": false, 393 | "name": "sg556", 394 | "title": "SG 553", 395 | "hitbox": 0, 396 | "fov": 8, 397 | "smoothAmount": 15, 398 | "RCSAmount": 2, 399 | "delay": 80, 400 | "startBullet": 0, 401 | "endBullet": 7 402 | }, 403 | "_60": { 404 | "enabled": false, 405 | "name": "m4a1_silencer", 406 | "title": "M4A1-S", 407 | "hitbox": -1, 408 | "fov": 8, 409 | "smoothAmount": 15, 410 | "RCSAmount": 2, 411 | "delay": 80, 412 | "startBullet": 0, 413 | "endBullet": 7 414 | }, 415 | "_9": { 416 | "enabled": true, 417 | "name": "awp", 418 | "title": "AWP", 419 | "hitbox": -1, 420 | "fov": 25, 421 | "smoothAmount": 16, 422 | "RCSAmount": 2, 423 | "delay": 150, 424 | "startBullet": 0, 425 | "endBullet": 0 426 | }, 427 | "_11": { 428 | "enabled": true, 429 | "name": "g3sg1", 430 | "title": "G3SG1", 431 | "hitbox": -1, 432 | "fov": 8, 433 | "smoothAmount": 22, 434 | "RCSAmount": 2, 435 | "delay": 80, 436 | "startBullet": 0, 437 | "endBullet": 5 438 | }, 439 | "_38": { 440 | "enabled": true, 441 | "name": "scar20", 442 | "title": "SCAR-20", 443 | "hitbox": -1, 444 | "fov": 8, 445 | "smoothAmount": 22, 446 | "RCSAmount": 2, 447 | "delay": 80, 448 | "startBullet": 0, 449 | "endBullet": 5 450 | }, 451 | "_40": { 452 | "enabled": true, 453 | "name": "ssg08", 454 | "title": "SSG 08 (Scout)", 455 | "hitbox": 0, 456 | "fov": 13, 457 | "smoothAmount": 16, 458 | "RCSAmount": 2, 459 | "delay": 83, 460 | "startBullet": 0, 461 | "endBullet": 0 462 | }, 463 | "_25": { 464 | "enabled": true, 465 | "name": "xm1014", 466 | "title": "XM1014", 467 | "hitbox": 1, 468 | "fov": 8, 469 | "smoothAmount": 21, 470 | "RCSAmount": 2, 471 | "delay": 80, 472 | "startBullet": 0, 473 | "endBullet": 5 474 | }, 475 | "_27": { 476 | "enabled": true, 477 | "name": "mag7", 478 | "title": "MAG-7", 479 | "hitbox": 1, 480 | "fov": 8, 481 | "smoothAmount": 19, 482 | "RCSAmount": 2, 483 | "delay": 80, 484 | "startBullet": 0, 485 | "endBullet": 5 486 | }, 487 | "_29": { 488 | "enabled": true, 489 | "name": "sawedoff", 490 | "title": "Sawed-Off", 491 | "hitbox": 1, 492 | "fov": 8, 493 | "smoothAmount": 19, 494 | "RCSAmount": 2, 495 | "delay": 80, 496 | "startBullet": 0, 497 | "endBullet": 5 498 | }, 499 | "_35": { 500 | "enabled": true, 501 | "name": "nova", 502 | "title": "Nova", 503 | "hitbox": 1, 504 | "fov": 8, 505 | "smoothAmount": 19, 506 | "RCSAmount": 2, 507 | "delay": 80, 508 | "startBullet": 0, 509 | "endBullet": 5 510 | }, 511 | "_14": { 512 | "enabled": false, 513 | "name": "m249", 514 | "title": "M249", 515 | "hitbox": -1, 516 | "fov": 8, 517 | "smoothAmount": 15, 518 | "RCSAmount": 2, 519 | "delay": 80, 520 | "startBullet": 0, 521 | "endBullet": 25 522 | }, 523 | "_28": { 524 | "enabled": false, 525 | "name": "negev", 526 | "title": "Negev", 527 | "hitbox": -1, 528 | "fov": 8, 529 | "smoothAmount": 15, 530 | "RCSAmount": 2, 531 | "delay": 80, 532 | "startBullet": 0, 533 | "endBullet": 25 534 | } 535 | } 536 | } -------------------------------------------------------------------------------- /CornerStone/cfg/general.json: -------------------------------------------------------------------------------- 1 | { 2 | "general": { 3 | "showConsole": "true", 4 | "useIngameMessages": "true", 5 | "useIngameSounds": "true", 6 | "httpServer": "0.0.0.0:8081", 7 | "enabledSound": "buttons\/button3", 8 | "disabledSound": "buttons\/button2", 9 | "showScoresKey": "109" 10 | }, 11 | "activeConfig": "default", 12 | "configs": [ 13 | { 14 | "name": "Default", 15 | "uuid": "default", 16 | "filename": "default.json", 17 | "description": "Default CornerStone configuration.", 18 | "locked": "true" 19 | } 20 | ] 21 | } 22 | -------------------------------------------------------------------------------- /CornerStone/cfg/grenades/de_cache.json: -------------------------------------------------------------------------------- 1 | { 2 | "grenades": [ 3 | { 4 | "grenade": 45, 5 | "pos": { 6 | "x": 1428.14, 7 | "y": 513, 8 | "z": 1612.45 9 | }, 10 | "angles": { 11 | "pitch": -55.46, 12 | "yaw": 144.85 13 | }, 14 | "description": "Site A (left)", 15 | "id": "3dd8f2b0-fd05-4095-93da-0bf4bb14e76c", 16 | "mode": 1, 17 | "duration": 0, 18 | "actions": 1 19 | }, 20 | { 21 | "grenade": 45, 22 | "pos": { 23 | "x": 515, 24 | "y": 1614.36, 25 | "z": 1702.03 26 | }, 27 | "angles": { 28 | "pitch": -23.97, 29 | "yaw": -177.04 30 | }, 31 | "description": "Backsite", 32 | "id": "a0f3f1f6-e571-442e-a431-8ae1b397a6c6", 33 | "mode": 0, 34 | "duration": 0, 35 | "actions": 1 36 | }, 37 | { 38 | "grenade": 46, 39 | "pos": { 40 | "x": 1344.3, 41 | "y": 975.72, 42 | "z": 1618.03 43 | }, 44 | "angles": { 45 | "pitch": -25.57, 46 | "yaw": -138.02 47 | }, 48 | "description": "Cement", 49 | "id": "28b4123d-8a1f-4cd3-9344-98d52006d9c5", 50 | "mode": 2, 51 | "duration": 777, 52 | "actions": 5 53 | }, 54 | { 55 | "grenade": 46, 56 | "pos": { 57 | "x": 1428.49, 58 | "y": 560.47, 59 | "z": 1612.54 60 | }, 61 | "angles": { 62 | "pitch": -17.12, 63 | "yaw": -175.48 64 | }, 65 | "description": "White box", 66 | "id": "ff6b7779-ef42-48a5-96c2-5e7c537168fb", 67 | "mode": 2, 68 | "duration": 55, 69 | "actions": 1 70 | }, 71 | { 72 | "grenade": 45, 73 | "pos": { 74 | "x": 2174.43, 75 | "y": 396.64, 76 | "z": 1612.61 77 | }, 78 | "angles": { 79 | "pitch": -17.41, 80 | "yaw": 165.26 81 | }, 82 | "decription": "Car", 83 | "id": "78cd2ba0-e7a5-4b89-9771-3e5c2fa4628b", 84 | "mode": 3, 85 | "duration": 300, 86 | "actions": 1, 87 | "description": "Unknown" 88 | }, 89 | { 90 | "grenade": 45, 91 | "pos": { 92 | "x": 2643.27, 93 | "y": 11.49, 94 | "z": 1613.03 95 | }, 96 | "angles": { 97 | "pitch": -12.35, 98 | "yaw": -179.7 99 | }, 100 | "id": "aba3bc18-55c2-4da9-afd7-466cb6e464d9", 101 | "mode": 3, 102 | "duration": 444, 103 | "actions": 1, 104 | "description": "Unknown" 105 | }, 106 | { 107 | "grenade": 45, 108 | "pos": { 109 | "x": -906.14, 110 | "y": 1090.62, 111 | "z": 1693.5 112 | }, 113 | "angles": { 114 | "pitch": -16.74, 115 | "yaw": 22.77 116 | }, 117 | "id": "eefc6a87-c9da-453b-8d96-7b3f70b1bbc9", 118 | "mode": 0, 119 | "duration": 0, 120 | "actions": 1, 121 | "description": "Unknown" 122 | }, 123 | { 124 | "grenade": 45, 125 | "pos": { 126 | "x": 1920.03, 127 | "y": -183, 128 | "z": 1688.22 129 | }, 130 | "angles": { 131 | "pitch": -59.27, 132 | "yaw": 174.09 133 | }, 134 | "id": "336bd09e-e2d5-4ab2-b53d-bd3fd49d159b", 135 | "mode": 0, 136 | "duration": 0, 137 | "actions": 1, 138 | "description": "Unknown" 139 | }, 140 | { 141 | "grenade": 45, 142 | "pos": { 143 | "x": 1737.41, 144 | "y": 215.03, 145 | "z": 1614.03 146 | }, 147 | "angles": { 148 | "pitch": -11.02, 149 | "yaw": 173.7 150 | }, 151 | "id": "efd0b509-c3db-46c6-8928-55a4747ac2ec", 152 | "mode": 0, 153 | "duration": 0, 154 | "actions": 1, 155 | "description": "Unknown" 156 | }, 157 | { 158 | "grenade": 45, 159 | "pos": { 160 | "x": 1735.72, 161 | "y": 308.98, 162 | "z": 1614.03 163 | }, 164 | "angles": { 165 | "pitch": -11.01, 166 | "yaw": -173.61 167 | }, 168 | "id": "47ebf47f-7f6e-4c15-bf38-9445468a132f", 169 | "mode": 0, 170 | "duration": 0, 171 | "actions": 1, 172 | "description": "Unknown" 173 | }, 174 | { 175 | "grenade": 46, 176 | "pos": { 177 | "x": -552.97, 178 | "y": -121.97, 179 | "z": 1663.03 180 | }, 181 | "angles": { 182 | "pitch": -18.02, 183 | "yaw": 25.75 184 | }, 185 | "description": "Boost", 186 | "id": "7b2af39e-3bc7-4b1a-a994-982cfd9b2e54", 187 | "mode": 2, 188 | "duration": 355, 189 | "actions": 1 190 | }, 191 | { 192 | "grenade": 45, 193 | "pos": { 194 | "x": 1762.1, 195 | "y": 495.91, 196 | "z": 1613.03 197 | }, 198 | "angles": { 199 | "pitch": -45.84, 200 | "yaw": 139.41 201 | }, 202 | "description": "NBK", 203 | "id": "1679defb-330b-4b16-81cb-d7cb109f93da", 204 | "mode": 1, 205 | "duration": 0, 206 | "actions": 1 207 | }, 208 | { 209 | "grenade": 45, 210 | "pos": { 211 | "x": 1729.97, 212 | "y": 975.97, 213 | "z": 1618.03 214 | }, 215 | "angles": { 216 | "pitch": -9.95, 217 | "yaw": -154.81 218 | }, 219 | "description": "Connector", 220 | "id": "5036d936-3459-4072-b14a-aa7e05e4ecad", 221 | "mode": 1, 222 | "duration": 0, 223 | "actions": 1 224 | }, 225 | { 226 | "grenade": 45, 227 | "pos": { 228 | "x": 1319.99, 229 | "y": 1296.08, 230 | "z": 1701.03 231 | }, 232 | "angles": { 233 | "pitch": -50.46, 234 | "yaw": 147.13 235 | }, 236 | "fov": 6, 237 | "description": "NBK", 238 | "id": "67bb72b8-f412-48c1-a988-e9c0928ee9e3", 239 | "mode": 0, 240 | "duration": 0, 241 | "actions": 1 242 | }, 243 | { 244 | "grenade": 45, 245 | "pos": { 246 | "x": 1319.99, 247 | "y": 1296.08, 248 | "z": 1701.03 249 | }, 250 | "angles": { 251 | "pitch": -59.87, 252 | "yaw": 176.88 253 | }, 254 | "fov": 6, 255 | "description": "Catwalk", 256 | "id": "20ec0b94-b10a-4d14-889a-aa61d36da128", 257 | "mode": 0, 258 | "duration": 0, 259 | "actions": 1 260 | }, 261 | { 262 | "grenade": 45, 263 | "pos": { 264 | "x": 1230.75, 265 | "y": 1612.97, 266 | "z": 1701.9 267 | }, 268 | "angles": { 269 | "pitch": -55.88, 270 | "yaw": -164.52 271 | }, 272 | "id": "43141be7-6b5b-4db5-bea7-8e23fb6361a4", 273 | "mode": 0, 274 | "duration": 0, 275 | "actions": 1, 276 | "description": "Unknown" 277 | }, 278 | { 279 | "grenade": 45, 280 | "pos": { 281 | "x": 1311.21, 282 | "y": 1601.9, 283 | "z": 1701.02 284 | }, 285 | "angles": { 286 | "pitch": -53.19, 287 | "yaw": -177.08 288 | }, 289 | "id": "04245f8a-f59a-45d5-a1df-a68b4a2826e3", 290 | "mode": 0, 291 | "duration": 0, 292 | "actions": 1, 293 | "description": "Unknown" 294 | }, 295 | { 296 | "grenade": 45, 297 | "pos": { 298 | "x": 1319.97, 299 | "y": 1613, 300 | "z": 1779.25 301 | }, 302 | "angles": { 303 | "pitch": -48.81, 304 | "yaw": -176.6 305 | }, 306 | "id": "6b227d99-90db-44e5-8e07-8b4810210026", 307 | "mode": 0, 308 | "duration": 0, 309 | "actions": 1, 310 | "description": "Unknown" 311 | }, 312 | { 313 | "grenade": 45, 314 | "pos": { 315 | "x": 1015.44, 316 | "y": 588.41, 317 | "z": 1738.72 318 | }, 319 | "angles": { 320 | "pitch": -42.87, 321 | "yaw": 158.22 322 | }, 323 | "accuracy": 2, 324 | "id": "19870d24-7b68-418d-b6ba-be9f3c46352d", 325 | "mode": 0, 326 | "duration": 0, 327 | "actions": 1, 328 | "description": "Unknown" 329 | }, 330 | { 331 | "grenade": 45, 332 | "pos": { 333 | "x": -429.97, 334 | "y": 2261.97, 335 | "z": 1718.03 336 | }, 337 | "angles": { 338 | "pitch": -1.42, 339 | "yaw": -29.59 340 | }, 341 | "id": "47798ce2-8a02-49e1-9034-c87b341b9f94", 342 | "mode": 0, 343 | "duration": 0, 344 | "actions": 1, 345 | "description": "Unknown" 346 | }, 347 | { 348 | "grenade": 45, 349 | "pos": { 350 | "x": -996.99, 351 | "y": 1440.23, 352 | "z": 1691.12 353 | }, 354 | "angles": { 355 | "pitch": -33.07, 356 | "yaw": -46.51 357 | }, 358 | "description": "Vent", 359 | "id": "de9b21ed-da37-4f0e-acfc-420a9df1eb71", 360 | "mode": 2, 361 | "duration": 277, 362 | "actions": 1 363 | }, 364 | { 365 | "grenade": 45, 366 | "pos": { 367 | "x": -722.02, 368 | "y": 257.99, 369 | "z": 1619.15 370 | }, 371 | "angles": { 372 | "pitch": -24.09, 373 | "yaw": -30.13 374 | }, 375 | "description": "Mid", 376 | "id": "4aec00b5-d3bd-46f4-80c2-3d71750942d4", 377 | "mode": 2, 378 | "duration": 1300, 379 | "actions": 1 380 | }, 381 | { 382 | "grenade": 45, 383 | "pos": { 384 | "x": -617.96, 385 | "y": -557.55, 386 | "z": 1744.18 387 | }, 388 | "angles": { 389 | "pitch": -18.4, 390 | "yaw": -42.66 391 | }, 392 | "id": "bf70c9f6-de85-49fd-b72b-61cd5641faf2", 393 | "mode": 0, 394 | "duration": 0, 395 | "actions": 1, 396 | "description": "Unknown" 397 | }, 398 | { 399 | "grenade": 45, 400 | "pos": { 401 | "x": 827.97, 402 | "y": -1463.97, 403 | "z": 1614.03 404 | }, 405 | "angles": { 406 | "pitch": -26.82, 407 | "yaw": 163.91 408 | }, 409 | "id": "ed83bde4-b6c7-49c1-8955-d9232e7b6bd1", 410 | "mode": 0, 411 | "duration": 0, 412 | "actions": 1, 413 | "description": "Unknown" 414 | }, 415 | { 416 | "grenade": 45, 417 | "pos": { 418 | "x": 960.03, 419 | "y": -1463.97, 420 | "z": 1644.03 421 | }, 422 | "angles": { 423 | "pitch": -25.85, 424 | "yaw": 163.75 425 | }, 426 | "id": "f88ae06c-49f5-4d3e-a545-31a88c89ecde", 427 | "mode": 0, 428 | "duration": 0, 429 | "actions": 1, 430 | "description": "Unknown" 431 | }, 432 | { 433 | "grenade": 45, 434 | "pos": { 435 | "x": 282.45, 436 | "y": -756.49, 437 | "z": 1614.03 438 | }, 439 | "angles": { 440 | "pitch": -30.84, 441 | "yaw": 136.87 442 | }, 443 | "description": "Heaven", 444 | "id": "9342dfb0-da32-496d-97e0-4b6b2c7eda72", 445 | "mode": 2, 446 | "duration": 0, 447 | "actions": 1 448 | }, 449 | { 450 | "grenade": 45, 451 | "pos": { 452 | "x": 499.45, 453 | "y": -990.82, 454 | "z": 1614.03 455 | }, 456 | "angles": { 457 | "pitch": -8.11, 458 | "yaw": 133.27 459 | }, 460 | "description": "CT", 461 | "id": "ee634966-ce48-4a2e-83d1-a864dd7bf378", 462 | "mode": 2, 463 | "duration": 700, 464 | "actions": 1 465 | }, 466 | { 467 | "grenade": 46, 468 | "pos": { 469 | "x": 1319.94, 470 | "y": 1296.71, 471 | "z": 1701.03 472 | }, 473 | "angles": { 474 | "pitch": -20.38, 475 | "yaw": -119.02 476 | }, 477 | "description": "Vent", 478 | "id": "f3b90188-0287-49aa-95f7-2a269e580995", 479 | "mode": 2, 480 | "duration": 200, 481 | "actions": 1 482 | }, 483 | { 484 | "grenade": 46, 485 | "pos": { 486 | "x": -200.61, 487 | "y": -1371.99, 488 | "z": 1659.03 489 | }, 490 | "angles": { 491 | "pitch": -12.37, 492 | "yaw": 54.59 493 | }, 494 | "decsription": "Chekers", 495 | "id": "91a79a1f-ea95-4399-bf6c-979b1d3e9c35", 496 | "mode": 2, 497 | "duration": 400, 498 | "actions": 1, 499 | "description": "Unknown" 500 | }, 501 | { 502 | "grenade": 46, 503 | "pos": { 504 | "x": -256.96, 505 | "y": -1218.2, 506 | "z": 1659.03 507 | }, 508 | "angles": { 509 | "pitch": -18.5, 510 | "yaw": -1.75 511 | }, 512 | "id": "820d8bbe-94f0-4430-bf7d-6303eeb8d304", 513 | "mode": 0, 514 | "duration": 0, 515 | "actions": 1, 516 | "description": "Unknown" 517 | }, 518 | { 519 | "grenade": 46, 520 | "pos": { 521 | "x": 609.03, 522 | "y": -1463.97, 523 | "z": 1614.03 524 | }, 525 | "angles": { 526 | "pitch": -32.27, 527 | "yaw": 140.77 528 | }, 529 | "id": "d78a3c16-4915-4cdb-8b3a-3f4355aec2ff", 530 | "mode": 0, 531 | "duration": 0, 532 | "actions": 1, 533 | "description": "Unknown" 534 | }, 535 | { 536 | "grenade": 46, 537 | "pos": { 538 | "x": 934.62, 539 | "y": -1228.02, 540 | "z": 1614.03 541 | }, 542 | "angles": { 543 | "pitch": -23.58, 544 | "yaw": -179.88 545 | }, 546 | "id": "7e111bf8-ca40-4742-9b7f-a8de5c958128", 547 | "mode": 0, 548 | "duration": 0, 549 | "actions": 1, 550 | "description": "Unknown" 551 | }, 552 | { 553 | "grenade": 46, 554 | "pos": { 555 | "x": 960.03, 556 | "y": -1463.97, 557 | "z": 1644.03 558 | }, 559 | "angles": { 560 | "pitch": -24.18, 561 | "yaw": 171.48 562 | }, 563 | "id": "2c554b9b-6e3c-4d8f-b217-153280ec066d", 564 | "mode": 0, 565 | "duration": 0, 566 | "actions": 1, 567 | "description": "Unknown" 568 | }, 569 | { 570 | "grenade": 46, 571 | "pos": { 572 | "x": 960.03, 573 | "y": -1463.97, 574 | "z": 1644.03 575 | }, 576 | "angles": { 577 | "pitch": -24.18, 578 | "yaw": 171.48 579 | }, 580 | "id": "631a73b2-e67e-4917-aabf-a3aef84deae7", 581 | "mode": 0, 582 | "duration": 0, 583 | "actions": 1, 584 | "description": "Unknown" 585 | }, 586 | { 587 | "grenade": 46, 588 | "pos": { 589 | "x": 535.53, 590 | "y": -1224.02, 591 | "z": 1616.24 592 | }, 593 | "angles": { 594 | "pitch": -15.06, 595 | "yaw": -109.82 596 | }, 597 | "id": "403b752c-b281-403a-86b7-dca0098e057f", 598 | "mode": 1, 599 | "duration": 0, 600 | "actions": 1, 601 | "description": "Unknown" 602 | }, 603 | { 604 | "grenade": 43, 605 | "pos": { 606 | "x": -238.04, 607 | "y": 1232.41, 608 | "z": 1687.03 609 | }, 610 | "angles": { 611 | "pitch": -13.22, 612 | "yaw": 37.6 613 | }, 614 | "id": "25f664bc-073a-48b6-b890-f0e6336c55d0", 615 | "mode": 0, 616 | "duration": 0, 617 | "actions": 1, 618 | "description": "Unknown" 619 | }, 620 | { 621 | "grenade": 43, 622 | "pos": { 623 | "x": -382.86, 624 | "y": 2082.56, 625 | "z": 1687.03 626 | }, 627 | "angles": { 628 | "pitch": -14.6, 629 | "yaw": -170.23 630 | }, 631 | "id": "c1adbe8b-8425-4af5-9391-88b59c954fdd", 632 | "mode": 1, 633 | "duration": 0, 634 | "actions": 1, 635 | "description": "Unknown" 636 | }, 637 | { 638 | "grenade": 43, 639 | "pos": { 640 | "x": 89.97, 641 | "y": 2261.97, 642 | "z": 1718.03 643 | }, 644 | "angles": { 645 | "pitch": -26.87, 646 | "yaw": -79.67 647 | }, 648 | "id": "ad9d811f-1ad8-49fb-b978-100c53efbb50", 649 | "mode": 0, 650 | "duration": 0, 651 | "actions": 1, 652 | "description": "Unknown" 653 | }, 654 | { 655 | "grenade": 43, 656 | "pos": { 657 | "x": 766.97, 658 | "y": 836.03, 659 | "z": 1702.03 660 | }, 661 | "angles": { 662 | "pitch": -10.1, 663 | "yaw": 111.85 664 | }, 665 | "id": "720dd9a4-f846-47ca-b621-c19c5e773401", 666 | "mode": 0, 667 | "duration": 0, 668 | "actions": 1, 669 | "description": "Unknown" 670 | }, 671 | { 672 | "grenade": 43, 673 | "pos": { 674 | "x": 1733.62, 675 | "y": 308.99, 676 | "z": 1614.03 677 | }, 678 | "angles": { 679 | "pitch": -10.97, 680 | "yaw": -173.57 681 | }, 682 | "id": "c28d8a67-61f5-4e61-a521-589f317594bf", 683 | "mode": 0, 684 | "duration": 0, 685 | "actions": 1, 686 | "description": "Unknown" 687 | }, 688 | { 689 | "grenade": 43, 690 | "pos": { 691 | "x": -410.97, 692 | "y": -1458.97, 693 | "z": 1664.55 694 | }, 695 | "angles": { 696 | "pitch": -8.36, 697 | "yaw": 50.62 698 | }, 699 | "id": "e97f4bb6-4ae9-4eef-955a-2858d4178b1f", 700 | "mode": 0, 701 | "duration": 0, 702 | "actions": 1, 703 | "description": "Unknown" 704 | }, 705 | { 706 | "grenade": 45, 707 | "pos": { 708 | "x": 515.03, 709 | "y": 1428.03, 710 | "z": 1702.03 711 | }, 712 | "angles": { 713 | "pitch": 1.6, 714 | "yaw": 103.8 715 | }, 716 | "description": "Fork", 717 | "id": "f80ed229-a2c5-4321-998d-53243c06d75f", 718 | "mode": 2, 719 | "duration": 440, 720 | "actions": 1 721 | }, 722 | { 723 | "grenade": 45, 724 | "pos": { 725 | "x": 1616.23, 726 | "y": 512.6, 727 | "z": 1613.99 728 | }, 729 | "angles": { 730 | "pitch": -23.19, 731 | "yaw": 154.27 732 | }, 733 | "id": "5fe1e09e-194c-4329-b941-8d65a835b683", 734 | "mode": 1, 735 | "duration": 0, 736 | "actions": 1, 737 | "description": "Unknown" 738 | }, 739 | { 740 | "grenade": 45, 741 | "pos": { 742 | "x": 1810.82, 743 | "y": 723.06, 744 | "z": 1613.03 745 | }, 746 | "angles": { 747 | "pitch": -21.52, 748 | "yaw": 171.59 749 | }, 750 | "description": "Highway", 751 | "id": "67d64f64-3b80-468c-b4a1-720ecdca3d20", 752 | "mode": 1, 753 | "duration": 0, 754 | "actions": 1 755 | } 756 | ] 757 | } -------------------------------------------------------------------------------- /CornerStone/cfg/grenades/de_cbble.json: -------------------------------------------------------------------------------- 1 | { 2 | "grenades": [ 3 | { 4 | "grenade": 45, 5 | "pos": { 6 | "x": -865.97, 7 | "y": -80.03, 8 | "z": 128.03 9 | }, 10 | "angles": { 11 | "pitch": -4.8, 12 | "yaw": -48.93 13 | }, 14 | "id": "58fd17cd-7583-49da-a056-1f30e04d08d9", 15 | "mode": 0, 16 | "duration": 0, 17 | "actions": 1, 18 | "description": "Unknown" 19 | }, 20 | { 21 | "grenade": 45, 22 | "pos": { 23 | "x": -670.98, 24 | "y": -508.03, 25 | "z": -31.97 26 | }, 27 | "angles": { 28 | "pitch": -23.24, 29 | "yaw": -40.93 30 | }, 31 | "id": "8b4b25a8-4f60-452d-9158-517fbd2cb79c", 32 | "mode": 0, 33 | "duration": 0, 34 | "actions": 1, 35 | "description": "Unknown" 36 | }, 37 | { 38 | "grenade": 45, 39 | "pos": { 40 | "x": -397.82, 41 | "y": -760.03, 42 | "z": -95.67 43 | }, 44 | "angles": { 45 | "pitch": -18.23, 46 | "yaw": 33.11 47 | }, 48 | "id": "cb59fbba-39de-4b76-bdc9-4f7a2502fa1c", 49 | "mode": 0, 50 | "duration": 0, 51 | "actions": 1, 52 | "description": "Unknown" 53 | }, 54 | { 55 | "grenade": 45, 56 | "pos": { 57 | "x": -1024.03, 58 | "y": -1234.64, 59 | "z": -87.97 60 | }, 61 | "angles": { 62 | "pitch": -42.19, 63 | "yaw": 165.99 64 | }, 65 | "id": "e73a5fb4-2f2b-4654-a027-6684f7e6a0f6", 66 | "mode": 0, 67 | "duration": 0, 68 | "actions": 1, 69 | "description": "Unknown" 70 | }, 71 | { 72 | "grenade": 45, 73 | "pos": { 74 | "x": -2527.87, 75 | "y": -1905.61, 76 | "z": 48.03 77 | }, 78 | "angles": { 79 | "pitch": -20.1, 80 | "yaw": 80.96 81 | }, 82 | "id": "aaadebc6-bf47-445b-a212-136f3b9780eb", 83 | "mode": 0, 84 | "duration": 0, 85 | "actions": 1, 86 | "description": "Unknown" 87 | }, 88 | { 89 | "grenade": 45, 90 | "pos": { 91 | "x": -2981.86, 92 | "y": -431.57, 93 | "z": 10.71 94 | }, 95 | "angles": { 96 | "pitch": -60.58, 97 | "yaw": -76.17 98 | }, 99 | "id": "16c6ca07-aece-4134-a626-5b381f14f072", 100 | "mode": 0, 101 | "duration": 0, 102 | "actions": 1, 103 | "description": "Unknown" 104 | }, 105 | { 106 | "grenade": 45, 107 | "pos": { 108 | "x": -2983.96, 109 | "y": -744.07, 110 | "z": 11.97 111 | }, 112 | "angles": { 113 | "pitch": -29.42, 114 | "yaw": -35.56 115 | }, 116 | "id": "9a9a21ad-d782-4d54-bc62-450def38693d", 117 | "mode": 0, 118 | "duration": 0, 119 | "actions": 1, 120 | "description": "Unknown" 121 | }, 122 | { 123 | "grenade": 45, 124 | "pos": { 125 | "x": -3168.03, 126 | "y": 79.97, 127 | "z": -29.97 128 | }, 129 | "angles": { 130 | "pitch": -45.99, 131 | "yaw": -63.28 132 | }, 133 | "id": "e828d070-da0f-470d-843c-82f0bb9e2818", 134 | "mode": 0, 135 | "duration": 0, 136 | "actions": 1, 137 | "description": "Unknown" 138 | }, 139 | { 140 | "grenade": 45, 141 | "pos": { 142 | "x": -3295.99, 143 | "y": 79.97, 144 | "z": -29.97 145 | }, 146 | "angles": { 147 | "pitch": -37.1, 148 | "yaw": -50.83 149 | }, 150 | "id": "c3a73656-0162-463e-a850-01b81b541c91", 151 | "mode": 0, 152 | "duration": 0, 153 | "actions": 1, 154 | "description": "Unknown" 155 | }, 156 | { 157 | "grenade": 45, 158 | "pos": { 159 | "x": -3293.98, 160 | "y": 208.03, 161 | "z": 0.03 162 | }, 163 | "angles": { 164 | "pitch": -48.98, 165 | "yaw": 59.7 166 | }, 167 | "id": "ad6bbc85-97db-4aa6-bd14-15e86bed689f", 168 | "mode": 0, 169 | "duration": 0, 170 | "actions": 1, 171 | "description": "Unknown" 172 | }, 173 | { 174 | "grenade": 45, 175 | "pos": { 176 | "x": -1425.93, 177 | "y": 2070.02, 178 | "z": -54.97 179 | }, 180 | "angles": { 181 | "pitch": -26.72, 182 | "yaw": -122.32 183 | }, 184 | "id": "2b7e01dc-d9fb-4976-add0-3560b7846f13", 185 | "mode": 0, 186 | "duration": 0, 187 | "actions": 1, 188 | "description": "Unknown" 189 | }, 190 | { 191 | "grenade": 45, 192 | "pos": { 193 | "x": 47.97, 194 | "y": -16.03, 195 | "z": -23.18 196 | }, 197 | "angles": { 198 | "pitch": -38.78, 199 | "yaw": -88.37 200 | }, 201 | "id": "f5bc36b3-4870-4736-b355-2e1c4ff53a8e", 202 | "mode": 0, 203 | "duration": 0, 204 | "actions": 1, 205 | "description": "Unknown" 206 | }, 207 | { 208 | "grenade": 46, 209 | "pos": { 210 | "x": -865.97, 211 | "y": -80.03, 212 | "z": 128.03 213 | }, 214 | "angles": { 215 | "pitch": -4.37, 216 | "yaw": -51.09 217 | }, 218 | "id": "148542c9-6c18-43a7-98a9-2658cc2186d9", 219 | "mode": 0, 220 | "duration": 0, 221 | "actions": 1, 222 | "description": "Unknown" 223 | }, 224 | { 225 | "grenade": 46, 226 | "pos": { 227 | "x": -752.03, 228 | "y": -80.02, 229 | "z": 128.03 230 | }, 231 | "angles": { 232 | "pitch": -1.24, 233 | "yaw": -118.23 234 | }, 235 | "id": "b80a5096-7bc9-47cc-a5ee-8a88cb7e92f5", 236 | "mode": 0, 237 | "duration": 0, 238 | "actions": 1, 239 | "description": "Unknown" 240 | }, 241 | { 242 | "grenade": 46, 243 | "pos": { 244 | "x": -780.03, 245 | "y": 112, 246 | "z": 128.03 247 | }, 248 | "angles": { 249 | "pitch": 1.58, 250 | "yaw": -89.38 251 | }, 252 | "id": "4c7ab77c-cc18-4f87-b7ae-05fa4a887992", 253 | "mode": 0, 254 | "duration": 0, 255 | "actions": 1, 256 | "description": "Unknown" 257 | }, 258 | { 259 | "grenade": 46, 260 | "pos": { 261 | "x": -2910.08, 262 | "y": -978.47, 263 | "z": 31.77 264 | }, 265 | "angles": { 266 | "pitch": -21.4, 267 | "yaw": -71.57 268 | }, 269 | "id": "d17def04-1423-43f4-a39d-8c8f731a2e7a", 270 | "mode": 0, 271 | "duration": 0, 272 | "actions": 1, 273 | "description": "Unknown" 274 | }, 275 | { 276 | "grenade": 43, 277 | "pos": { 278 | "x": 230.8, 279 | "y": -305.61, 280 | "z": -63.97 281 | }, 282 | "angles": { 283 | "pitch": -12.55, 284 | "yaw": -9.72 285 | }, 286 | "id": "10d51e16-9f5b-4823-a57c-3df9d614fcb3", 287 | "mode": 0, 288 | "duration": 0, 289 | "actions": 1, 290 | "description": "Unknown" 291 | }, 292 | { 293 | "grenade": 43, 294 | "pos": { 295 | "x": -155.98, 296 | "y": -16.03, 297 | "z": -31.97 298 | }, 299 | "angles": { 300 | "pitch": 1.6, 301 | "yaw": -26.61 302 | }, 303 | "id": "696117f4-f618-48bb-baf0-267198b4b2f9", 304 | "mode": 0, 305 | "duration": 0, 306 | "actions": 1, 307 | "description": "Unknown" 308 | }, 309 | { 310 | "grenade": 43, 311 | "pos": { 312 | "x": -126.24, 313 | "y": -239.96, 314 | "z": -31.97 315 | }, 316 | "angles": { 317 | "pitch": -54.02, 318 | "yaw": 45.83 319 | }, 320 | "id": "2a928e9e-7de7-4cf4-b616-35757cebaac5", 321 | "mode": 0, 322 | "duration": 0, 323 | "actions": 1, 324 | "description": "Unknown" 325 | }, 326 | { 327 | "grenade": 43, 328 | "pos": { 329 | "x": 47.97, 330 | "y": -239.97, 331 | "z": -31.97 332 | }, 333 | "angles": { 334 | "pitch": -33.52, 335 | "yaw": 27.96 336 | }, 337 | "id": "475f1ec2-3eb5-4ff9-90fb-5c4b1bb4b333", 338 | "mode": 0, 339 | "duration": 0, 340 | "actions": 1, 341 | "description": "Unknown" 342 | }, 343 | { 344 | "grenade": 43, 345 | "pos": { 346 | "x": -865.97, 347 | "y": -80.03, 348 | "z": 128.03 349 | }, 350 | "angles": { 351 | "pitch": -8.93, 352 | "yaw": -82.21 353 | }, 354 | "id": "4631f0a6-a516-4ffa-b19f-3e6b60a4ffe3", 355 | "mode": 0, 356 | "duration": 0, 357 | "actions": 1, 358 | "description": "Unknown" 359 | }, 360 | { 361 | "grenade": 43, 362 | "pos": { 363 | "x": -641.97, 364 | "y": 366.28, 365 | "z": 0.03 366 | }, 367 | "angles": { 368 | "pitch": -15.93, 369 | "yaw": -105.12 370 | }, 371 | "id": "f8e3c443-0e34-42bc-a1d9-2e2e9eb84ab7", 372 | "mode": 0, 373 | "duration": 0, 374 | "actions": 1, 375 | "description": "Unknown" 376 | }, 377 | { 378 | "grenade": 43, 379 | "pos": { 380 | "x": -2863.97, 381 | "y": 560.03, 382 | "z": 0.03 383 | }, 384 | "angles": { 385 | "pitch": -11.39, 386 | "yaw": -10.74 387 | }, 388 | "id": "a09bd0f5-6674-4655-bd06-21da01b7454c", 389 | "mode": 0, 390 | "duration": 0, 391 | "actions": 1, 392 | "description": "Unknown" 393 | }, 394 | { 395 | "grenade": 43, 396 | "pos": { 397 | "x": -2544.03, 398 | "y": -605.01, 399 | "z": 27.47 400 | }, 401 | "angles": { 402 | "pitch": -30.84, 403 | "yaw": -84.48 404 | }, 405 | "id": "5a0d8968-7c26-4ed8-95b5-75e03f52594a", 406 | "mode": 0, 407 | "duration": 0, 408 | "actions": 1, 409 | "description": "Unknown" 410 | }, 411 | { 412 | "grenade": 43, 413 | "pos": { 414 | "x": -2899.5, 415 | "y": -2009.88, 416 | "z": 48.03 417 | }, 418 | "angles": { 419 | "pitch": -47.17, 420 | "yaw": 139.52 421 | }, 422 | "id": "f5f71f0a-4bf3-4c68-8890-f7dab2b9db0f", 423 | "mode": 0, 424 | "duration": 0, 425 | "actions": 1, 426 | "description": "Unknown" 427 | }, 428 | { 429 | "grenade": 43, 430 | "pos": { 431 | "x": -1809.76, 432 | "y": -1392.62, 433 | "z": 0.03 434 | }, 435 | "angles": { 436 | "pitch": -32.95, 437 | "yaw": -33.68 438 | }, 439 | "id": "50439a13-f4a9-4955-8ced-774ded287b7b", 440 | "mode": 0, 441 | "duration": 0, 442 | "actions": 1, 443 | "description": "Unknown" 444 | }, 445 | { 446 | "grenade": 43, 447 | "pos": { 448 | "x": -1700.08, 449 | "y": -1012.54, 450 | "z": 0.03 451 | }, 452 | "angles": { 453 | "pitch": -57.7, 454 | "yaw": 133.78 455 | }, 456 | "id": "2a27f9b2-d7f8-4905-87ad-863a595d1851", 457 | "mode": 0, 458 | "duration": 0, 459 | "actions": 1, 460 | "description": "Unknown" 461 | }, 462 | { 463 | "grenade": 43, 464 | "pos": { 465 | "x": -2649.68, 466 | "y": -58.52, 467 | "z": -87.97 468 | }, 469 | "angles": { 470 | "pitch": -5.38, 471 | "yaw": 162.7 472 | }, 473 | "id": "115a41b5-9208-45ba-9875-c3bc736d3cea", 474 | "mode": 0, 475 | "duration": 0, 476 | "actions": 1, 477 | "description": "Unknown" 478 | }, 479 | { 480 | "grenade": 43, 481 | "pos": { 482 | "x": -2640.03, 483 | "y": -35.97, 484 | "z": -223.97 485 | }, 486 | "angles": { 487 | "pitch": -4.28, 488 | "yaw": 158.38 489 | }, 490 | "id": "e3d8c167-e74d-4ff1-b153-95209137ffec", 491 | "mode": 0, 492 | "duration": 0, 493 | "actions": 1, 494 | "description": "Unknown" 495 | } 496 | ] 497 | } -------------------------------------------------------------------------------- /CornerStone/cfg/grenades/de_dust2.json: -------------------------------------------------------------------------------- 1 | { 2 | "grenades": [ 3 | { 4 | "grenade": 45, 5 | "pos": { 6 | "x": -299.97, 7 | "y": -1163.99, 8 | "z": 77.7 9 | }, 10 | "angles": { 11 | "pitch": -16.66, 12 | "yaw": 90.35 13 | }, 14 | "description": "X-box", 15 | "id": "4df69275-2830-485c-a461-af10a60e826f", 16 | "mode": 1, 17 | "duration": 0, 18 | "actions": 1 19 | }, 20 | { 21 | "grenade": 45, 22 | "pos": { 23 | "x": 757.08, 24 | "y": -347.97, 25 | "z": 8.03 26 | }, 27 | "angles": { 28 | "pitch": -38.39, 29 | "yaw": 74.67 30 | }, 31 | "description": "Long start", 32 | "id": "81241fe5-5cb9-4b1b-b989-ea6448cd7a4e", 33 | "mode": 0, 34 | "duration": 0, 35 | "actions": 1 36 | }, 37 | { 38 | "grenade": 45, 39 | "pos": { 40 | "x": -149.03, 41 | "y": 1208.31, 42 | "z": -0.41 43 | }, 44 | "angles": { 45 | "pitch": -21.11, 46 | "yaw": 132.12 47 | }, 48 | "description": "CT", 49 | "id": "deaddad1-f2f5-49b5-93aa-d51dc53125b5", 50 | "mode": 2, 51 | "duration": 200, 52 | "actions": 5 53 | }, 54 | { 55 | "grenade": 45, 56 | "pos": { 57 | "x": -986.42, 58 | "y": 2553.26, 59 | "z": 1.64 60 | }, 61 | "angles": { 62 | "pitch": -27.26, 63 | "yaw": -143.93 64 | }, 65 | "description": "Tunnel", 66 | "id": "34e6eabd-98c8-42f9-b862-7b4c7ae4a392", 67 | "mode": 0, 68 | "duration": 0, 69 | "actions": 1 70 | }, 71 | { 72 | "grenade": 43, 73 | "pos": { 74 | "x": -1037.97, 75 | "y": 2102.03, 76 | "z": -5.88 77 | }, 78 | "angles": { 79 | "pitch": -30.33, 80 | "yaw": -140.38 81 | }, 82 | "id": "1b8c81d2-df67-4373-a799-4e8823adff38", 83 | "mode": 0, 84 | "duration": 0, 85 | "actions": 1, 86 | "description": "Unknown" 87 | }, 88 | { 89 | "grenade": 43, 90 | "pos": { 91 | "x": -1707.97, 92 | "y": 1620.03, 93 | "z": 5.46 94 | }, 95 | "angles": { 96 | "pitch": 9.45, 97 | "yaw": 75.2 98 | }, 99 | "id": "73211d62-1af5-4021-924d-20c54a18b036", 100 | "mode": 0, 101 | "duration": 0, 102 | "actions": 1, 103 | "description": "Unknown" 104 | }, 105 | { 106 | "grenade": 46, 107 | "pos": { 108 | "x": -1132.3, 109 | "y": 2436.85, 110 | "z": 28.81 111 | }, 112 | "angles": { 113 | "pitch": -0.16, 114 | "yaw": -123.73 115 | }, 116 | "description": "Corner (car)", 117 | "id": "237498f7-49f6-4b4e-8c64-27295761215c", 118 | "mode": 1, 119 | "duration": 0, 120 | "actions": 3 121 | }, 122 | { 123 | "grenade": 43, 124 | "pos": { 125 | "x": -1620.87, 126 | "y": 1924.26, 127 | "z": -1.11 128 | }, 129 | "angles": { 130 | "pitch": 11.52, 131 | "yaw": -158.58 132 | }, 133 | "id": "61179775-2f1b-4401-8fd7-a59426445eb7", 134 | "mode": 1, 135 | "duration": 0, 136 | "actions": 2, 137 | "description": "Unknown" 138 | } 139 | ] 140 | } -------------------------------------------------------------------------------- /CornerStone/cfg/grenades/de_inferno.json: -------------------------------------------------------------------------------- 1 | { 2 | "grenades": [ 3 | { 4 | "grenade": 46, 5 | "description": "Boost", 6 | "pos": { 7 | "x": 610.98, 8 | "y": 1873.1, 9 | "z": 134.19 10 | }, 11 | "angles": { 12 | "pitch": 7.97, 13 | "yaw": 69.73 14 | }, 15 | "mode": 1, 16 | "duration": 0, 17 | "actions": 1, 18 | "id": "a8603cd1-9cdf-4a9d-ac60-374936ea3f10" 19 | }, 20 | { 21 | "grenade": 46, 22 | "description": "Spools", 23 | "pos": { 24 | "x": 460.92, 25 | "y": 1828.96, 26 | "z": 136.06 27 | }, 28 | "angles": { 29 | "pitch": 2.06, 30 | "yaw": "85.43" 31 | }, 32 | "mode": 1, 33 | "duration": 0, 34 | "actions": 1, 35 | "id": "053662e6-15b8-42a3-9b30-b0453fef38de" 36 | }, 37 | { 38 | "grenade": 46, 39 | "description": "Triple box", 40 | "pos": { 41 | "x": 479.27, 42 | "y": 2017.95, 43 | "z": 128.41 44 | }, 45 | "angles": { 46 | "pitch": -41.54, 47 | "yaw": 121.8 48 | }, 49 | "mode": 1, 50 | "duration": 0, 51 | "actions": 1, 52 | "id": "14f74044-6aad-436b-8bc4-dd13e801ccab" 53 | }, 54 | { 55 | "grenade": 43, 56 | "description": "Banana", 57 | "pos": { 58 | "x": -668.08, 59 | "y": 592.76, 60 | "z": -22 61 | }, 62 | "angles": { 63 | "pitch": -17.08, 64 | "yaw": 59.62 65 | }, 66 | "mode": 1, 67 | "duration": 0, 68 | "actions": 1, 69 | "id": "70ca8fb2-cbcf-4d86-a443-b3e600185054" 70 | }, 71 | { 72 | "grenade": 43, 73 | "description": "New grenade", 74 | "pos": { 75 | "x": 1314.03, 76 | "y": 216.03, 77 | "z": 135.83 78 | }, 79 | "angles": { 80 | "pitch": -35.52, 81 | "yaw": 95.08 82 | }, 83 | "mode": 1, 84 | "duration": 0, 85 | "actions": 2, 86 | "id": "6a61a506-ae5d-4c0d-8e63-3a652b441e9d" 87 | }, 88 | { 89 | "grenade": 45, 90 | "description": "Arch", 91 | "pos": { 92 | "x": 1518, 93 | "y": 792.03, 94 | "z": 139.95 95 | }, 96 | "angles": { 97 | "pitch": -31.7, 98 | "yaw": 141.8 99 | }, 100 | "mode": 1, 101 | "duration": 0, 102 | "actions": 1, 103 | "id": "a8dad698-7231-4aa7-a731-8fc0f90130b1" 104 | }, 105 | { 106 | "grenade": 45, 107 | "description": "Long", 108 | "pos": { 109 | "x": 1517.93, 110 | "y": 951.97, 111 | "z": 147.78 112 | }, 113 | "angles": { 114 | "pitch": -34.16, 115 | "yaw": 170.59 116 | }, 117 | "mode": 1, 118 | "duration": 0, 119 | "actions": 1, 120 | "id": "80731247-2fca-4ab5-ba31-85ecfe6f4f5c" 121 | }, 122 | { 123 | "grenade": 45, 124 | "description": "Banana start", 125 | "pos": { 126 | "x": 1439.97, 127 | "y": 2956.14, 128 | "z": 131.34 129 | }, 130 | "angles": { 131 | "pitch": "-18.5", 132 | "yaw": "-132.49" 133 | }, 134 | "mode": 3, 135 | "duration": "490", 136 | "actions": 5, 137 | "id": "2c0ad2ed-0afe-4332-9e99-9a1daee84dff" 138 | }, 139 | { 140 | "grenade": 46, 141 | "description": "Bomb", 142 | "pos": { 143 | "x": 908, 144 | "y": 3295.65, 145 | "z": 144.03 146 | }, 147 | "angles": { 148 | "pitch": -48.21, 149 | "yaw": -125.8 150 | }, 151 | "mode": 1, 152 | "duration": 0, 153 | "actions": 1, 154 | "id": "6da97183-957e-4296-82dc-316f6ff2b0e2" 155 | }, 156 | { 157 | "grenade": 45, 158 | "description": "Middle", 159 | "pos": { 160 | "x": 2414.9, 161 | "y": 1207.91, 162 | "z": 165.89 163 | }, 164 | "angles": { 165 | "pitch": -2.39, 166 | "yaw": -148.08 167 | }, 168 | "mode": 1, 169 | "duration": 0, 170 | "actions": 1, 171 | "id": "9925bea2-e5d1-4964-8d02-a005e6961e48" 172 | }, 173 | { 174 | "grenade": 45, 175 | "pos": { 176 | "x": -656.01, 177 | "y": 514.09, 178 | "z": 20.02 179 | }, 180 | "angles": { 181 | "pitch": -33.38, 182 | "yaw": -0.23 183 | }, 184 | "description": "Middle", 185 | "id": "b20065a9-d18a-4e96-9f53-8a6fb365f7f0", 186 | "mode": 0, 187 | "duration": 0, 188 | "actions": 1 189 | }, 190 | { 191 | "grenade": 45, 192 | "pos": { 193 | "x": 373.97, 194 | "y": "466.9", 195 | "z": 81.2 196 | }, 197 | "angles": { 198 | "pitch": "-17", 199 | "yaw": "9.64" 200 | }, 201 | "description": "Moto", 202 | "id": "883e6746-c4bf-4e87-b021-0ff3f6dd8a37", 203 | "mode": 1, 204 | "duration": 0, 205 | "actions": 1 206 | }, 207 | { 208 | "grenade": 45, 209 | "pos": { 210 | "x": 716.03, 211 | "y": 692.48, 212 | "z": 95.03 213 | }, 214 | "angles": { 215 | "pitch": -9.74, 216 | "yaw": -24.82 217 | }, 218 | "description": "Short", 219 | "id": "0f2600c0-fe75-4223-b372-ef2919c9140d", 220 | "mode": 0, 221 | "duration": 0, 222 | "actions": 1 223 | }, 224 | { 225 | "grenade": 45, 226 | "pos": { 227 | "x": 962.14, 228 | "y": 434.03, 229 | "z": 88.03 230 | }, 231 | "angles": { 232 | "pitch": -47.01, 233 | "yaw": 25.88 234 | }, 235 | "description": "Library", 236 | "id": "d0db6596-0b00-4120-8a71-ee5b85bc52e3", 237 | "mode": 0, 238 | "duration": 0, 239 | "actions": 1 240 | }, 241 | { 242 | "grenade": 45, 243 | "pos": { 244 | "x": 726.15, 245 | "y": 217.27, 246 | "z": 94.33 247 | }, 248 | "angles": { 249 | "pitch": -26.29, 250 | "yaw": 42.48 251 | }, 252 | "description": "Middle", 253 | "id": "740f1163-9ccc-462c-acc2-1bdf22fbe692", 254 | "mode": 0, 255 | "duration": 0, 256 | "actions": 1 257 | }, 258 | { 259 | "grenade": 45, 260 | "pos": { 261 | "x": 726.15, 262 | "y": 217.27, 263 | "z": 94.33 264 | }, 265 | "angles": { 266 | "pitch": -26.29, 267 | "yaw": 42.48 268 | }, 269 | "description": "Arches", 270 | "id": "cf120d55-4430-4fe8-9938-fd0d1f99dc5b", 271 | "mode": 0, 272 | "duration": 0, 273 | "actions": 1 274 | }, 275 | { 276 | "grenade": 45, 277 | "pos": { 278 | "x": 366.99, 279 | "y": -288.62, 280 | "z": 96.03 281 | }, 282 | "angles": { 283 | "pitch": -40.18, 284 | "yaw": 36.82 285 | }, 286 | "description": "Middle", 287 | "id": "0851170d-28ed-4bc1-a7ec-f3f605300ff9", 288 | "mode": 0, 289 | "duration": 0, 290 | "actions": 1 291 | }, 292 | { 293 | "grenade": 45, 294 | "pos": { 295 | "x": 1314.01, 296 | "y": 344.68, 297 | "z": 128.4 298 | }, 299 | "angles": { 300 | "pitch": -16.81, 301 | "yaw": -50.2 302 | }, 303 | "description": "Bombsite A", 304 | "id": "844c65d5-06a9-4c4f-b865-3e22e12b2eca", 305 | "mode": 0, 306 | "duration": 0, 307 | "actions": 1 308 | }, 309 | { 310 | "grenade": 45, 311 | "pos": { 312 | "x": 2147.97, 313 | "y": 1225.97, 314 | "z": 172.18 315 | }, 316 | "angles": { 317 | "pitch": -37.86, 318 | "yaw": -106.95 319 | }, 320 | "description": "Short", 321 | "id": "1b270e16-3e0d-4f4c-a7cb-384767748141", 322 | "mode": 0, 323 | "duration": 0, 324 | "actions": 1 325 | }, 326 | { 327 | "grenade": 45, 328 | "pos": { 329 | "x": 1867.97, 330 | "y": 1304.02, 331 | "z": 160.03 332 | }, 333 | "angles": { 334 | "pitch": -48.39, 335 | "yaw": -85.85 336 | }, 337 | "description": "Balcony", 338 | "id": "cd0f68da-5c7c-4a8e-9438-b88ba3a08bcb", 339 | "mode": 0, 340 | "duration": 0, 341 | "actions": 1 342 | }, 343 | { 344 | "grenade": 45, 345 | "pos": { 346 | "x": 1867.97, 347 | "y": 1304.02, 348 | "z": 160.03 349 | }, 350 | "angles": { 351 | "pitch": -48.39, 352 | "yaw": -85.85 353 | }, 354 | "description": "Middle", 355 | "id": "fd7276bf-54f3-42d8-b2c3-4a8ccddd7767", 356 | "mode": 0, 357 | "duration": 0, 358 | "actions": 1 359 | }, 360 | { 361 | "grenade": 45, 362 | "pos": { 363 | "x": 2048.17, 364 | "y": 1915.88, 365 | "z": 167.03 366 | }, 367 | "angles": { 368 | "pitch": -41.73, 369 | "yaw": -84.23 370 | }, 371 | "description": "Bombsite A", 372 | "id": "d6e76c08-8f66-4c62-82d4-666c313cab54", 373 | "mode": 0, 374 | "duration": 0, 375 | "actions": 1 376 | }, 377 | { 378 | "grenade": 45, 379 | "pos": { 380 | "x": 2535.1, 381 | "y": 2093.03, 382 | "z": 132.03 383 | }, 384 | "angles": { 385 | "pitch": -15.59, 386 | "yaw": -129.8 387 | }, 388 | "description": "Middle", 389 | "id": "3884f780-de75-4446-93d5-ae1df3a58827", 390 | "mode": 1, 391 | "duration": 0, 392 | "actions": 1 393 | }, 394 | { 395 | "grenade": 45, 396 | "pos": { 397 | "x": 1960.69, 398 | "y": 2638.12, 399 | "z": 128.03 400 | }, 401 | "angles": { 402 | "pitch": -41.63, 403 | "yaw": 175.7 404 | }, 405 | "description": "Fountain", 406 | "id": "d8637bab-bd4a-456c-a9c2-256d73f01f24", 407 | "mode": 0, 408 | "duration": 0, 409 | "actions": 1 410 | }, 411 | { 412 | "grenade": 45, 413 | "pos": { 414 | "x": 1912.32, 415 | "y": 2614.82, 416 | "z": 250.7 417 | }, 418 | "angles": { 419 | "pitch": -37.88, 420 | "yaw": 158.62 421 | }, 422 | "description": "Spools", 423 | "id": "a8e7cbb2-18d4-410b-b208-e79fcddf187c", 424 | "mode": 0, 425 | "duration": 0, 426 | "actions": 1 427 | }, 428 | { 429 | "grenade": 45, 430 | "pos": { 431 | "x": 1667.82, 432 | "y": 2972.87, 433 | "z": 131.77 434 | }, 435 | "angles": { 436 | "pitch": -14.45, 437 | "yaw": -156.35 438 | }, 439 | "description": "B Cart", 440 | "id": "cab3fca2-c0a8-4339-a40d-b58df609d7bd", 441 | "mode": 0, 442 | "duration": 0, 443 | "actions": 1 444 | }, 445 | { 446 | "grenade": 45, 447 | "pos": { 448 | "x": 273.99, 449 | "y": 2910.03, 450 | "z": 160.03 451 | }, 452 | "angles": { 453 | "pitch": -1.57, 454 | "yaw": -37.51 455 | }, 456 | "description": "B Cart", 457 | "id": "6e4e4d00-6d5b-4a68-8ccc-5387eed779fb", 458 | "mode": 0, 459 | "duration": 0, 460 | "actions": 1 461 | }, 462 | { 463 | "grenade": 45, 464 | "pos": { 465 | "x": 297.06, 466 | "y": 1567.58, 467 | "z": 113.63 468 | }, 469 | "angles": { 470 | "pitch": -48.88, 471 | "yaw": 85.14 472 | }, 473 | "description": "Spools", 474 | "id": "7eebf4db-4047-4cd5-a3f8-2179cda1178c", 475 | "mode": 0, 476 | "duration": 0, 477 | "actions": 1 478 | }, 479 | { 480 | "grenade": 45, 481 | "pos": { 482 | "x": 110.84, 483 | "y": 1569.61, 484 | "z": 132.02 485 | }, 486 | "angles": { 487 | "pitch": -33.92, 488 | "yaw": 57.79 489 | }, 490 | "description": "Tree (CT)", 491 | "id": "f50a408e-1c6e-40e5-b0c5-835d877d77a6", 492 | "mode": 0, 493 | "duration": 0, 494 | "actions": 1 495 | }, 496 | { 497 | "grenade": 45, 498 | "pos": { 499 | "x": 339.97, 500 | "y": 2027.93, 501 | "z": 128.03 502 | }, 503 | "angles": { 504 | "pitch": -40.19, 505 | "yaw": 42.93 506 | }, 507 | "description": "Tree (CT deep)", 508 | "id": "a48c7340-fb07-4831-a2a7-bc38422d69a1", 509 | "mode": 0, 510 | "duration": 0, 511 | "actions": 1 512 | }, 513 | { 514 | "grenade": 45, 515 | "pos": { 516 | "x": 460.45, 517 | "y": 1828.48, 518 | "z": 136.11 519 | }, 520 | "angles": { 521 | "pitch": -22.19, 522 | "yaw": 85.94 523 | }, 524 | "description": "Spools (close)", 525 | "id": "9f208a2b-6b0f-452c-b38c-ed914c19ad12", 526 | "mode": 0, 527 | "duration": 0, 528 | "actions": 1 529 | }, 530 | { 531 | "grenade": 45, 532 | "pos": { 533 | "x": -79.45, 534 | "y": 1330.03, 535 | "z": 106.71 536 | }, 537 | "angles": { 538 | "pitch": -34.46, 539 | "yaw": 66.02 540 | }, 541 | "description": "Bombsite B", 542 | "id": "91b6b82f-69f0-4ac7-ab1f-7d3da952ac17", 543 | "mode": 0, 544 | "duration": 0, 545 | "actions": 1 546 | }, 547 | { 548 | "grenade": 45, 549 | "pos": { 550 | "x": 1327.17, 551 | "y": 1247.97, 552 | "z": 160.62 553 | }, 554 | "angles": { 555 | "pitch": -12.36, 556 | "yaw": -58.31 557 | }, 558 | "description": "Middle", 559 | "id": "55eabee5-87b2-4aa4-a807-674ab5abe0d6", 560 | "mode": 0, 561 | "duration": 0, 562 | "actions": 1 563 | }, 564 | { 565 | "grenade": 45, 566 | "pos": { 567 | "x": 257.05, 568 | "y": 61.84, 569 | "z": 220.03 570 | }, 571 | "angles": { 572 | "pitch": -37.83, 573 | "yaw": 0.49 574 | }, 575 | "description": "Bombsite A", 576 | "id": "1c006975-339e-4e7b-aa21-efa3c9597589", 577 | "mode": 0, 578 | "duration": 0, 579 | "actions": 1 580 | }, 581 | { 582 | "grenade": 46, 583 | "pos": { 584 | "x": 339.98, 585 | "y": 2027.88, 586 | "z": 128.03 587 | }, 588 | "angles": { 589 | "pitch": -47.98, 590 | "yaw": 75.9 591 | }, 592 | "description": "Sandwich", 593 | "id": "bb181ba2-7450-4ab1-b1c1-05dd8e11afc6", 594 | "mode": 1, 595 | "duration": 0, 596 | "actions": 1 597 | }, 598 | { 599 | "grenade": 46, 600 | "pos": { 601 | "x": 404.11, 602 | "y": 1853.35, 603 | "z": 226.03 604 | }, 605 | "angles": { 606 | "pitch": -16.97, 607 | "yaw": 103.83 608 | }, 609 | "description": "Dark", 610 | "id": "5e57b872-9dba-42b2-972e-d8bbacff43c0", 611 | "mode": 0, 612 | "duration": 0, 613 | "actions": 1 614 | }, 615 | { 616 | "grenade": 46, 617 | "pos": { 618 | "x": 437.97, 619 | "y": 1804.75, 620 | "z": 226.03 621 | }, 622 | "angles": { 623 | "pitch": 7.4, 624 | "yaw": 85.62 625 | }, 626 | "description": "Spools", 627 | "id": "35ff3ad7-f2ba-4cd7-aa7c-42d9f836094d", 628 | "mode": 1, 629 | "duration": 0, 630 | "actions": 1 631 | }, 632 | { 633 | "grenade": 46, 634 | "pos": { 635 | "x": 875.97, 636 | "y": 2383.32, 637 | "z": 145.34 638 | }, 639 | "angles": { 640 | "pitch": -16.29, 641 | "yaw": 167 642 | }, 643 | "description": "New box", 644 | "id": "fef40b91-689c-4cc2-a63e-56ace9bc6e8c", 645 | "mode": 0, 646 | "duration": 0, 647 | "actions": 1 648 | }, 649 | { 650 | "grenade": 46, 651 | "pos": { 652 | "x": 1032.54, 653 | "y": 3263.44, 654 | "z": 128.03 655 | }, 656 | "angles": { 657 | "pitch": -47.66, 658 | "yaw": -142.9 659 | }, 660 | "description": "Spools", 661 | "id": "b3e027d6-101b-4a15-8a4b-7b39385853c4", 662 | "mode": 0, 663 | "duration": 0, 664 | "actions": 1 665 | }, 666 | { 667 | "grenade": 46, 668 | "pos": { 669 | "x": 1780.12, 670 | "y": 31.78, 671 | "z": 128.13 672 | }, 673 | "angles": { 674 | "pitch": -11.26, 675 | "yaw": 35.55 676 | }, 677 | "description": "Bombsite A", 678 | "id": "73d5b30b-1236-41f8-9cee-8cd0827b8cc2", 679 | "mode": 0, 680 | "duration": 0, 681 | "actions": 1 682 | }, 683 | { 684 | "grenade": 46, 685 | "pos": { 686 | "x": 1314.03, 687 | "y": 216.03, 688 | "z": 134.87 689 | }, 690 | "angles": { 691 | "pitch": -21.1, 692 | "yaw": -19.38 693 | }, 694 | "description": "Pit", 695 | "id": "a0b4bbf0-bc79-4517-88d7-80c9566ac78b", 696 | "mode": 0, 697 | "duration": 0, 698 | "actions": 1 699 | }, 700 | { 701 | "grenade": 46, 702 | "pos": { 703 | "x": 1131.03, 704 | "y": 590, 705 | "z": 121.55 706 | }, 707 | "angles": { 708 | "pitch": -18.96, 709 | "yaw": -41.47 710 | }, 711 | "description": "Patio", 712 | "id": "9788462c-437f-47ab-93d7-c7b3ed81b9a0", 713 | "mode": 0, 714 | "duration": 0, 715 | "actions": 1 716 | }, 717 | { 718 | "grenade": 46, 719 | "pos": { 720 | "x": 1179.82, 721 | "y": 434.03, 722 | "z": 115.02 723 | }, 724 | "angles": { 725 | "pitch": -21.69, 726 | "yaw": 49.64 727 | }, 728 | "description": "Cubby", 729 | "id": "f3a2ccec-cc04-40c0-9c67-628d4305ac37", 730 | "mode": 2, 731 | "duration": 200, 732 | "actions": 1 733 | }, 734 | { 735 | "grenade": 43, 736 | "pos": { 737 | "x": 315.3, 738 | "y": 1603.96, 739 | "z": 116.89 740 | }, 741 | "angles": { 742 | "pitch": -29.84, 743 | "yaw": 76.97 744 | }, 745 | "description": "Bombsite B", 746 | "id": "ea58c1aa-aae9-4fe1-8fe3-f4994fc29850", 747 | "mode": 0, 748 | "duration": 0, 749 | "actions": 1 750 | }, 751 | { 752 | "grenade": 43, 753 | "pos": { 754 | "x": 610.97, 755 | "y": 1873.03, 756 | "z": 134.18 757 | }, 758 | "angles": { 759 | "pitch": -44.53, 760 | "yaw": -0.18 761 | }, 762 | "description": "Banana", 763 | "id": "2c159d49-34db-4300-b204-25ab21d54590", 764 | "mode": 0, 765 | "duration": 0, 766 | "actions": 1 767 | }, 768 | { 769 | "grenade": 43, 770 | "pos": { 771 | "x": 498.97, 772 | "y": 2444.03, 773 | "z": 160.03 774 | }, 775 | "angles": { 776 | "pitch": 1.03, 777 | "yaw": 167.77 778 | }, 779 | "description": "Bombsite B", 780 | "id": "bf071bde-7c84-42d4-8cdf-f5fe7df3e4a5", 781 | "mode": 0, 782 | "duration": 0, 783 | "actions": 1 784 | }, 785 | { 786 | "grenade": 43, 787 | "pos": { 788 | "x": 543.37, 789 | "y": 3362.03, 790 | "z": 160.03 791 | }, 792 | "angles": { 793 | "pitch": -43.83, 794 | "yaw": -87.61 795 | }, 796 | "description": "Bombsite B", 797 | "id": "4a7d1d57-282e-4ac7-bfb2-b2ab636a32ed", 798 | "mode": 0, 799 | "duration": 0, 800 | "actions": 3 801 | }, 802 | { 803 | "grenade": 43, 804 | "pos": { 805 | "x": 1826.89, 806 | "y": 1904.97, 807 | "z": 160.03 808 | }, 809 | "angles": { 810 | "pitch": -30.84, 811 | "yaw": -89.96 812 | }, 813 | "description": "Long", 814 | "id": "d59fdd53-63ad-4bb5-be70-fff98b7235b6", 815 | "mode": 1, 816 | "duration": 0, 817 | "actions": 1 818 | }, 819 | { 820 | "grenade": 43, 821 | "pos": { 822 | "x": 2001.34, 823 | "y": 1225.99, 824 | "z": 174.03 825 | }, 826 | "angles": { 827 | "pitch": -35.29, 828 | "yaw": -87.66 829 | }, 830 | "description": "Bombsite A", 831 | "id": "ff7c011d-35b3-475d-b9f0-c0008026ff07", 832 | "mode": 0, 833 | "duration": 0, 834 | "actions": 1 835 | }, 836 | { 837 | "grenade": 43, 838 | "pos": { 839 | "x": 1534.72, 840 | "y": -274.18, 841 | "z": 256.03 842 | }, 843 | "angles": { 844 | "pitch": -9.21, 845 | "yaw": -36.02 846 | }, 847 | "description": "Balcony", 848 | "id": "11557b3f-403f-414a-83f9-ed43cea07da4", 849 | "mode": 2, 850 | "duration": 111, 851 | "actions": 1 852 | }, 853 | { 854 | "grenade": 43, 855 | "pos": { 856 | "x": 1517.97, 857 | "y": 727.97, 858 | "z": 138.51 859 | }, 860 | "angles": { 861 | "pitch": -18.89, 862 | "yaw": -162.34 863 | }, 864 | "description": "Middle", 865 | "id": "cc3dc162-0f28-427c-8561-53b271a6c8ee", 866 | "mode": 0, 867 | "duration": 0, 868 | "actions": 1 869 | }, 870 | { 871 | "grenade": 45, 872 | "pos": { 873 | "x": 1314.03, 874 | "y": 829.98, 875 | "z": 148.64 876 | }, 877 | "angles": { 878 | "pitch": -56.07, 879 | "yaw": -5.06 880 | }, 881 | "description": "Bicycle", 882 | "id": "0169230c-c5ed-434f-9748-e61b0461d21b", 883 | "mode": 0, 884 | "duration": 0, 885 | "actions": 1 886 | } 887 | ] 888 | } -------------------------------------------------------------------------------- /CornerStone/cfg/grenades/de_mirage.json: -------------------------------------------------------------------------------- 1 | { 2 | "grenades": [ 3 | { 4 | "grenade": 45, 5 | "description": "Short (right arch)", 6 | "pos": { 7 | "x": -160.03, 8 | "y": 760.01, 9 | "z": -134.59 10 | }, 11 | "angles": { 12 | "pitch": -60.6, 13 | "yaw": -167.35 14 | }, 15 | "mode": 0, 16 | "duration": 0, 17 | "actions": 1, 18 | "id": "ae31eead-d436-4f8f-bf7e-bc447df222c2" 19 | }, 20 | { 21 | "grenade": 45, 22 | "description": "Short (left arch)", 23 | "pos": { 24 | "x": -161.03, 25 | "y": 450.67, 26 | "z": -69.07 27 | }, 28 | "angles": { 29 | "pitch": -50.82, 30 | "yaw": -163.76 31 | }, 32 | "mode": 0, 33 | "duration": 0, 34 | "actions": 1, 35 | "id": "f9e8353f-5369-42c5-bcab-7d3aaf0fecf5" 36 | }, 37 | { 38 | "grenade": 44, 39 | "pos": { 40 | "x": "815.97", 41 | "y": -1416.39, 42 | "z": -108.97 43 | }, 44 | "angles": { 45 | "pitch": 1.44, 46 | "yaw": -172.54 47 | }, 48 | "description": "Stairs", 49 | "id": "7938a7af-2eb2-4d14-85de-f08fdf55dc29", 50 | "mode": 1, 51 | "duration": 0, 52 | "actions": 1 53 | }, 54 | { 55 | "grenade": 45, 56 | "pos": { 57 | "x": -762.01, 58 | "y": -1306.02, 59 | "z": -167.97 60 | }, 61 | "angles": { 62 | "pitch": -21.12, 63 | "yaw": -47.11 64 | }, 65 | "description": "Palace", 66 | "id": "37b63006-5439-4531-bb18-41830b27f499", 67 | "mode": 0, 68 | "duration": 0, 69 | "actions": 1 70 | }, 71 | { 72 | "grenade": 43, 73 | "pos": { 74 | "x": -1999.83, 75 | "y": -246.97, 76 | "z": -159.14 77 | }, 78 | "angles": { 79 | "pitch": -19.27, 80 | "yaw": 75.5 81 | }, 82 | "description": "B house", 83 | "id": "6ed67493-42dc-4a41-b685-5b067cafecbf", 84 | "mode": 0, 85 | "duration": 0, 86 | "actions": 1 87 | }, 88 | { 89 | "grenade": 46, 90 | "pos": { 91 | "x": -264.03, 92 | "y": -1504.03, 93 | "z": -163.97 94 | }, 95 | "angles": { 96 | "pitch": -12.7, 97 | "yaw": -121.83 98 | }, 99 | "description": "Ticketbox", 100 | "id": "509716da-5da9-4c95-b4b2-28b714763604", 101 | "mode": 2, 102 | "duration": 10, 103 | "actions": 1 104 | }, 105 | { 106 | "grenade": 45, 107 | "pos": { 108 | "x": -879.79, 109 | "y": -2263.93, 110 | "z": -171.12 111 | }, 112 | "angles": { 113 | "pitch": -8.61, 114 | "yaw": 33.61 115 | }, 116 | "description": "Ramp", 117 | "id": "e75c5ef3-29c5-49f7-b25f-8f0decd30aca", 118 | "mode": 0, 119 | "duration": 0, 120 | "actions": 1 121 | }, 122 | { 123 | "grenade": 45, 124 | "pos": { 125 | "x": 816, 126 | "y": -1547.97, 127 | "z": -108.97 128 | }, 129 | "angles": { 130 | "pitch": -45.41, 131 | "yaw": 174.13 132 | }, 133 | "description": "Connector", 134 | "id": "525dd420-7c4e-446c-8a7a-18604f948c42", 135 | "mode": 0, 136 | "duration": 0, 137 | "actions": 1 138 | }, 139 | { 140 | "grenade": 45, 141 | "pos": { 142 | "x": -349.27, 143 | "y": 520.03, 144 | "z": -79.97 145 | }, 146 | "angles": { 147 | "pitch": -13.51, 148 | "yaw": 174.56 149 | }, 150 | "description": "Car", 151 | "id": "54cb11f0-59d7-4a99-aa0d-19f0a71ea31f", 152 | "mode": 1, 153 | "duration": 0, 154 | "actions": 1 155 | }, 156 | { 157 | "grenade": 45, 158 | "pos": { 159 | "x": 663.98, 160 | "y": -1128.02, 161 | "z": -127.97 162 | }, 163 | "angles": { 164 | "pitch": -68.07, 165 | "yaw": -122.45 166 | }, 167 | "description": "Site A (left)", 168 | "id": "fc9e2c08-f647-4b14-9a56-9af8dc1d7b81", 169 | "mode": 1, 170 | "duration": 0, 171 | "actions": 1 172 | }, 173 | { 174 | "grenade": 45, 175 | "pos": { 176 | "x": 815.97, 177 | "y": -1415.84, 178 | "z": -108.97 179 | }, 180 | "angles": { 181 | "pitch": -0.82, 182 | "yaw": 178.66 183 | }, 184 | "description": "Site A (center)", 185 | "id": "7ce52b18-adcf-433a-ae62-05e8964aaaba", 186 | "mode": 1, 187 | "duration": 0, 188 | "actions": 1 189 | }, 190 | { 191 | "grenade": 45, 192 | "pos": { 193 | "x": 815.97, 194 | "y": -1332.88, 195 | "z": -108.97 196 | }, 197 | "angles": { 198 | "pitch": -60.34, 199 | "yaw": -161 200 | }, 201 | "description": "Site A (right)", 202 | "id": "42d4fd08-e07c-4b9c-a55e-26352f1c5436", 203 | "mode": 0, 204 | "duration": 0, 205 | "actions": 1 206 | }, 207 | { 208 | "grenade": 45, 209 | "pos": { 210 | "x": 1135.97, 211 | "y": 648, 212 | "z": -261.38 213 | }, 214 | "angles": { 215 | "pitch": -28.07, 216 | "yaw": -140.94 217 | }, 218 | "description": "Connector", 219 | "id": "6ed9ee8b-afce-4cf8-a607-25ae3ae127aa", 220 | "mode": 1, 221 | "duration": 0, 222 | "actions": 1 223 | }, 224 | { 225 | "grenade": 45, 226 | "pos": { 227 | "x": 398.99, 228 | "y": 176.4, 229 | "z": -249.42 230 | }, 231 | "angles": { 232 | "pitch": -47.09, 233 | "yaw": -136.37 234 | }, 235 | "description": "Connector", 236 | "id": "d37957d2-0660-4341-959d-ac121cea2864", 237 | "mode": 0, 238 | "duration": 0, 239 | "actions": 1 240 | }, 241 | { 242 | "grenade": 45, 243 | "pos": { 244 | "x": -752.02, 245 | "y": -57.11, 246 | "z": -162.27 247 | }, 248 | "angles": { 249 | "pitch": -7.21, 250 | "yaw": 139.39 251 | }, 252 | "description": "Bombsite B", 253 | "id": "23a39d7c-620d-4583-bcf9-3459c63125c5", 254 | "mode": 1, 255 | "duration": 0, 256 | "actions": 1 257 | }, 258 | { 259 | "grenade": 45, 260 | "pos": { 261 | "x": 1423.97, 262 | "y": -248.02, 263 | "z": -167.97 264 | }, 265 | "angles": { 266 | "pitch": -32, 267 | "yaw": -170.45 268 | }, 269 | "description": "DD", 270 | "id": "1a0731ad-a21a-427c-8d9e-1b423a2b7598", 271 | "mode": 1, 272 | "duration": 0, 273 | "actions": 1 274 | }, 275 | { 276 | "grenade": 45, 277 | "pos": { 278 | "x": 1423.95, 279 | "y": -367.97, 280 | "z": -167.97 281 | }, 282 | "angles": { 283 | "pitch": -29.79, 284 | "yaw": 175.9 285 | }, 286 | "description": "Short (far)", 287 | "id": "0e091f4a-e21b-4328-b7b5-f6fa8aaf1946", 288 | "mode": 1, 289 | "duration": 0, 290 | "actions": 1 291 | }, 292 | { 293 | "grenade": 45, 294 | "pos": { 295 | "x": 1392, 296 | "y": -1007.17, 297 | "z": -167.97 298 | }, 299 | "angles": { 300 | "pitch": -46.96, 301 | "yaw": 172.78 302 | }, 303 | "description": "Window", 304 | "id": "81704441-824d-4870-b55a-30d71c9c507d", 305 | "mode": 2, 306 | "duration": 400, 307 | "actions": 1 308 | }, 309 | { 310 | "grenade": 45, 311 | "pos": { 312 | "x": 1399.97, 313 | "y": -1160.85, 314 | "z": -167.97 315 | }, 316 | "angles": { 317 | "pitch": -39.48, 318 | "yaw": 159.81 319 | }, 320 | "description": "Short", 321 | "id": "0c067110-34e0-4f6f-bac7-a7c88a7a7e80", 322 | "mode": 2, 323 | "duration": 333, 324 | "actions": 1 325 | }, 326 | { 327 | "grenade": 45, 328 | "pos": { 329 | "x": 1149.38, 330 | "y": -1183.97, 331 | "z": -205.57 332 | }, 333 | "angles": { 334 | "pitch": -40.47, 335 | "yaw": -164.86 336 | }, 337 | "description": "Stairs", 338 | "id": "4d509639-6a54-4fd8-afe8-78b37238a763", 339 | "mode": 0, 340 | "duration": 0, 341 | "actions": 1 342 | }, 343 | { 344 | "grenade": 45, 345 | "pos": { 346 | "x": 1083.77, 347 | "y": -1020.23, 348 | "z": -258.66 349 | }, 350 | "angles": { 351 | "pitch": -35.24, 352 | "yaw": -145.38 353 | }, 354 | "description": "CT", 355 | "id": "fe46dbcc-b85c-41d4-bce5-8ec04f998db4", 356 | "mode": 1, 357 | "duration": 0, 358 | "actions": 1 359 | }, 360 | { 361 | "grenade": 45, 362 | "pos": { 363 | "x": 907.25, 364 | "y": -1036.03, 365 | "z": -251.97 366 | }, 367 | "angles": { 368 | "pitch": -10.89, 369 | "yaw": -142.42 370 | }, 371 | "description": "CT", 372 | "id": "24d32d07-1b66-4a25-8047-314dcacde1a4", 373 | "mode": 1, 374 | "duration": 0, 375 | "actions": 1 376 | }, 377 | { 378 | "grenade": 45, 379 | "pos": { 380 | "x": 787.96, 381 | "y": -1215.35, 382 | "z": -108.97 383 | }, 384 | "angles": { 385 | "pitch": 5.12, 386 | "yaw": -145.52 387 | }, 388 | "description": "CT", 389 | "id": "532db29f-2b13-43d9-8d01-1c5e475378d9", 390 | "mode": 1, 391 | "duration": 0, 392 | "actions": 1 393 | }, 394 | { 395 | "grenade": 45, 396 | "pos": { 397 | "x": -789.7, 398 | "y": -1306.03, 399 | "z": -167.97 400 | }, 401 | "angles": { 402 | "pitch": -67.41, 403 | "yaw": -10.55 404 | }, 405 | "description": "Ramp", 406 | "id": "26f8bda6-31e9-4af3-a14f-2f9aed9efd7a", 407 | "mode": 0, 408 | "duration": 0, 409 | "actions": 1 410 | }, 411 | { 412 | "grenade": 45, 413 | "pos": { 414 | "x": -1163.51, 415 | "y": -2514.81, 416 | "z": -167.97 417 | }, 418 | "angles": { 419 | "pitch": -21.42, 420 | "yaw": 34.75 421 | }, 422 | "description": "Ramp", 423 | "id": "9212b4cc-7aff-4dbe-a8ea-07be1d3869a0", 424 | "mode": 0, 425 | "duration": 0, 426 | "actions": 1 427 | }, 428 | { 429 | "grenade": 45, 430 | "pos": { 431 | "x": -2415.85, 432 | "y": -115.76, 433 | "z": -157.98 434 | }, 435 | "angles": { 436 | "pitch": -24.72, 437 | "yaw": 43.91 438 | }, 439 | "description": "B House", 440 | "id": "e7a3628c-8ea2-4357-abbf-4ed02820951b", 441 | "mode": 0, 442 | "duration": 0, 443 | "actions": 1 444 | }, 445 | { 446 | "grenade": 45, 447 | "pos": { 448 | "x": -540.43, 449 | "y": 521.02, 450 | "z": -81.36 451 | }, 452 | "angles": { 453 | "pitch": -41.68, 454 | "yaw": -179.88 455 | }, 456 | "description": "Forest", 457 | "id": "1ab4c079-e118-4370-a00e-05dd0213f5e8", 458 | "mode": 0, 459 | "duration": 0, 460 | "actions": 1 461 | }, 462 | { 463 | "grenade": 45, 464 | "pos": { 465 | "x": -835.16, 466 | "y": 615.26, 467 | "z": -79.08 468 | }, 469 | "angles": { 470 | "pitch": -65.32, 471 | "yaw": -146.71 472 | }, 473 | "description": "Window", 474 | "id": "712853fc-b965-4070-9254-6f1c8bda582b", 475 | "mode": 0, 476 | "duration": 0, 477 | "actions": 1 478 | }, 479 | { 480 | "grenade": 45, 481 | "pos": { 482 | "x": -542.76, 483 | "y": 615.97, 484 | "z": -79.81 485 | }, 486 | "angles": { 487 | "pitch": -40.97, 488 | "yaw": -168.22 489 | }, 490 | "description": "Bombsite", 491 | "id": "7f0d8684-97b9-46f2-ba0c-47fef6672d74", 492 | "mode": 0, 493 | "duration": 0, 494 | "actions": 1 495 | }, 496 | { 497 | "grenade": 46, 498 | "pos": { 499 | "x": -1872.03, 500 | "y": -338.75, 501 | "z": -167.97 502 | }, 503 | "angles": { 504 | "pitch": -23.45, 505 | "yaw": 108.61 506 | }, 507 | "description": "Car", 508 | "id": "3bed537a-18bd-4d55-bf80-2f2b7697ef1f", 509 | "mode": 0, 510 | "duration": 0, 511 | "actions": 1 512 | }, 513 | { 514 | "grenade": 45, 515 | "pos": { 516 | "x": 815.9, 517 | "y": -1497.62, 518 | "z": -108.97 519 | }, 520 | "angles": { 521 | "pitch": -26.86, 522 | "yaw": -176.37 523 | }, 524 | "description": "Jungle (help)", 525 | "id": "43260aa0-3cef-411f-832b-af468ad61560", 526 | "mode": 0, 527 | "duration": 0, 528 | "actions": 1 529 | }, 530 | { 531 | "grenade": 45, 532 | "pos": { 533 | "x": 1423.97, 534 | "y": 71.97, 535 | "z": -112.9 536 | }, 537 | "angles": { 538 | "pitch": -32.67, 539 | "yaw": -163.35 540 | }, 541 | "description": "Short Start", 542 | "id": "f2586e45-b65e-4651-b61b-726be3caac03", 543 | "mode": 0, 544 | "duration": 0, 545 | "actions": 1 546 | }, 547 | { 548 | "grenade": 46, 549 | "pos": { 550 | "x": 16.03, 551 | "y": -2375.97, 552 | "z": -39.97 553 | }, 554 | "angles": { 555 | "pitch": 2.69, 556 | "yaw": 76.13 557 | }, 558 | "description": "Underwood", 559 | "id": "f89c9092-3812-4912-b833-5b1712d74ccc", 560 | "mode": 0, 561 | "duration": 0, 562 | "actions": 1 563 | }, 564 | { 565 | "grenade": 46, 566 | "pos": { 567 | "x": 512.42, 568 | "y": -1555.23, 569 | "z": -263.97 570 | }, 571 | "angles": { 572 | "pitch": -22.51, 573 | "yaw": 177.86 574 | }, 575 | "description": "Sandwich", 576 | "id": "3271d21b-6b5d-46f1-bac2-0d42b19b087e", 577 | "mode": 0, 578 | "duration": 0, 579 | "actions": 1 580 | }, 581 | { 582 | "grenade": 46, 583 | "pos": { 584 | "x": -31.43, 585 | "y": -1418.03, 586 | "z": -167.97 587 | }, 588 | "angles": { 589 | "pitch": -13.4, 590 | "yaw": -105.67 591 | }, 592 | "description": "Ninja", 593 | "id": "51441fce-9e82-46a8-8a86-fb7620117350", 594 | "mode": 0, 595 | "duration": 0, 596 | "actions": 1 597 | }, 598 | { 599 | "grenade": 46, 600 | "pos": { 601 | "x": 151.3, 602 | "y": -2071.98, 603 | "z": -167.97 604 | }, 605 | "angles": { 606 | "pitch": -31.39, 607 | "yaw": 99.79 608 | }, 609 | "description": "Palace", 610 | "id": "5a384e6e-b569-42a4-9706-c7cecb1c70e9", 611 | "mode": 2, 612 | "duration": 2, 613 | "actions": 1 614 | }, 615 | { 616 | "grenade": 43, 617 | "pos": { 618 | "x": -261.65, 619 | "y": -1548.59, 620 | "z": -167.97 621 | }, 622 | "angles": { 623 | "pitch": -42.3, 624 | "yaw": -9.6 625 | }, 626 | "description": "Jungle", 627 | "id": "2a7a6f82-1eca-4679-8b49-8ab029be399c", 628 | "mode": 1, 629 | "duration": 0, 630 | "actions": 1 631 | }, 632 | { 633 | "grenade": 43, 634 | "pos": { 635 | "x": 151.33, 636 | "y": -1912.03, 637 | "z": -167.97 638 | }, 639 | "angles": { 640 | "pitch": -2.86, 641 | "yaw": -159.74 642 | }, 643 | "description": "Ramp", 644 | "id": "fe9628f9-1cd2-489c-b8e6-ec7209222cca", 645 | "mode": 2, 646 | "duration": 20, 647 | "actions": 1 648 | }, 649 | { 650 | "grenade": 43, 651 | "pos": { 652 | "x": 59.57, 653 | "y": -2086.42, 654 | "z": -167.97 655 | }, 656 | "angles": { 657 | "pitch": -6.53, 658 | "yaw": 89.82 659 | }, 660 | "description": "Ramp", 661 | "accuracy": 2, 662 | "id": "26e23941-de48-4e7f-a596-02730f8ea602", 663 | "mode": 0, 664 | "duration": 0, 665 | "actions": 1 666 | }, 667 | { 668 | "grenade": 43, 669 | "pos": { 670 | "x": -701.09, 671 | "y": -2131.18, 672 | "z": -179.97 673 | }, 674 | "angles": { 675 | "pitch": -42.6, 676 | "yaw": 171.85 677 | }, 678 | "description": "Bombsite A", 679 | "id": "3dd9013f-7637-4371-ac09-76239d0b43e5", 680 | "mode": 2, 681 | "duration": 2, 682 | "actions": 1 683 | }, 684 | { 685 | "grenade": 43, 686 | "pos": { 687 | "x": -2411.97, 688 | "y": -247.97, 689 | "z": -164.74 690 | }, 691 | "angles": { 692 | "pitch": -19.95, 693 | "yaw": 54.63 694 | }, 695 | "description": "B House", 696 | "id": "55ee4c62-9915-43da-90f4-681721c7a55b", 697 | "mode": 2, 698 | "duration": 0, 699 | "actions": 1 700 | }, 701 | { 702 | "grenade": 43, 703 | "pos": { 704 | "x": -1847.23, 705 | "y": 488.29, 706 | "z": -167.97 707 | }, 708 | "angles": { 709 | "pitch": -6.59, 710 | "yaw": 154.04 711 | }, 712 | "description": "B House", 713 | "id": "ab6c2a4d-f7d3-414c-ad5c-9526e4e54034", 714 | "mode": 2, 715 | "duration": 30, 716 | "actions": 1 717 | }, 718 | { 719 | "grenade": 43, 720 | "pos": { 721 | "x": -1832, 722 | "y": 156.43, 723 | "z": -163.98 724 | }, 725 | "angles": { 726 | "pitch": -24.03, 727 | "yaw": 47.72 728 | }, 729 | "description": "B House", 730 | "id": "cd3e97c0-bae8-474b-9f88-fc5fa293b91f", 731 | "mode": 2, 732 | "duration": 30, 733 | "actions": 1 734 | }, 735 | { 736 | "grenade": 43, 737 | "pos": { 738 | "x": -1075.47, 739 | "y": 571.11, 740 | "z": -79.97 741 | }, 742 | "angles": { 743 | "pitch": -8.57, 744 | "yaw": 142.97 745 | }, 746 | "description": "Bombsite B", 747 | "id": "b62e4cf7-fbfc-43c9-bffc-0c61cc48bd90", 748 | "mode": 2, 749 | "duration": 30, 750 | "actions": 1 751 | }, 752 | { 753 | "grenade": 46, 754 | "pos": { 755 | "x": -2415.97, 756 | "y": -115.76, 757 | "z": -157.97 758 | }, 759 | "angles": { 760 | "pitch": -21.75, 761 | "yaw": 50.99 762 | }, 763 | "description": "B House", 764 | "id": "7dbc30c5-1237-4d0f-b065-57153222ce80", 765 | "mode": 0, 766 | "duration": 0, 767 | "actions": 1 768 | }, 769 | { 770 | "grenade": 45, 771 | "pos": { 772 | "x": 354.35, 773 | "y": -694.73, 774 | "z": -161.8 775 | }, 776 | "angles": { 777 | "pitch": -35.89, 778 | "yaw": 177.66 779 | }, 780 | "description": "Window", 781 | "id": "550d3de2-cdc6-4d5d-aa18-b348e6a761b7", 782 | "mode": 0, 783 | "duration": 0, 784 | "actions": 1 785 | }, 786 | { 787 | "grenade": 45, 788 | "pos": { 789 | "x": 1423.97, 790 | "y": 34.83, 791 | "z": -167.97 792 | }, 793 | "angles": { 794 | "pitch": -27.62, 795 | "yaw": -166.3 796 | }, 797 | "description": "Window", 798 | "id": "ea6e1e22-d849-4e17-bd59-e517e0fa7fad", 799 | "mode": 3, 800 | "duration": 230, 801 | "actions": 5 802 | }, 803 | { 804 | "grenade": 45, 805 | "pos": { 806 | "x": 399.18, 807 | "y": 93.83, 808 | "z": -224.63 809 | }, 810 | "angles": { 811 | "pitch": -10.24, 812 | "yaw": -125.62 813 | }, 814 | "description": "Connector (inner)", 815 | "id": "14ff515a-1e0f-4601-9e93-7616aa9c3c1d", 816 | "mode": 1, 817 | "duration": 0, 818 | "actions": 1 819 | }, 820 | { 821 | "grenade": 45, 822 | "pos": { 823 | "x": 502.99, 824 | "y": -168.03, 825 | "z": -160 826 | }, 827 | "angles": { 828 | "pitch": -9.63, 829 | "yaw": -138.52 830 | }, 831 | "description": "Jungle", 832 | "id": "fca3d2a2-dc2f-4426-bee2-87f1466a3d45", 833 | "mode": 1, 834 | "duration": 0, 835 | "actions": 1 836 | }, 837 | { 838 | "grenade": 45, 839 | "pos": { 840 | "x": -31.43, 841 | "y": -1418.03, 842 | "z": -167.97 843 | }, 844 | "angles": { 845 | "pitch": -28.85, 846 | "yaw": -116.71 847 | }, 848 | "description": "CT", 849 | "id": "d84130fe-252f-4cad-a2cb-b8b9d0aa9147", 850 | "mode": 0, 851 | "duration": 0, 852 | "actions": 1 853 | }, 854 | { 855 | "grenade": 45, 856 | "pos": { 857 | "x": -560.03, 858 | "y": 503.73, 859 | "z": -43.97 860 | }, 861 | "angles": { 862 | "pitch": -49.81, 863 | "yaw": 169.1 864 | }, 865 | "id": "b7001dac-8c24-43ce-956e-fb9fddf086ef", 866 | "mode": 0, 867 | "duration": 0, 868 | "actions": 1, 869 | "description": "Unknown" 870 | }, 871 | { 872 | "grenade": 43, 873 | "pos": { 874 | "x": -510.41, 875 | "y": 615.97, 876 | "z": -80.34 877 | }, 878 | "angles": { 879 | "pitch": -8.53, 880 | "yaw": -171.6 881 | }, 882 | "desctiption": "Bombsite B", 883 | "id": "18f9d429-5a9c-4386-9dcf-8eaddfb42282", 884 | "mode": 1, 885 | "duration": 0, 886 | "actions": 1, 887 | "description": "Unknown" 888 | }, 889 | { 890 | "grenade": 45, 891 | "pos": { 892 | "x": -418.83, 893 | "y": -328.03, 894 | "z": -163.97 895 | }, 896 | "angles": { 897 | "pitch": -15.77, 898 | "yaw": -100.55 899 | }, 900 | "description": "Connector (inner deep)", 901 | "id": "d5ae04cd-9d72-456d-baf0-eab90acf57a3", 902 | "mode": 1, 903 | "duration": 0, 904 | "actions": 3 905 | }, 906 | { 907 | "grenade": 43, 908 | "pos": { 909 | "x": -348.65, 910 | "y": 480, 911 | "z": -79.97 912 | }, 913 | "angles": { 914 | "pitch": 13.78, 915 | "yaw": -179.85 916 | }, 917 | "description": "Underground", 918 | "id": "170dbad6-a476-426d-8b7c-b0beef3be334", 919 | "mode": 0, 920 | "duration": 0, 921 | "actions": 3 922 | }, 923 | { 924 | "grenade": 45, 925 | "pos": { 926 | "x": -220.03, 927 | "y": -328.03, 928 | "z": -163.97 929 | }, 930 | "angles": { 931 | "pitch": -16.76, 932 | "yaw": -109.96 933 | }, 934 | "description": "CT", 935 | "id": "78e77ada-48e1-4c58-94df-c3476e09d953", 936 | "mode": 1, 937 | "duration": 0, 938 | "actions": 1 939 | }, 940 | { 941 | "grenade": 45, 942 | "pos": { 943 | "x": 181.97, 944 | "y": -1719.97, 945 | "z": -167.97 946 | }, 947 | "angles": { 948 | "pitch": -10.31, 949 | "yaw": 166.86 950 | }, 951 | "description": "Jungle", 952 | "id": "525436c8-1d60-4c74-9308-50039dd57f41", 953 | "mode": 0, 954 | "duration": 0, 955 | "actions": 1 956 | }, 957 | { 958 | "grenade": 45, 959 | "pos": { 960 | "x": -160.03, 961 | "y": 887.97, 962 | "z": -135.33 963 | }, 964 | "angles": { 965 | "pitch": -50.22, 966 | "yaw": -146.48 967 | }, 968 | "description": "Kitchen Window", 969 | "id": "7a892226-2baa-4335-a771-7fdc75676311", 970 | "mode": 1, 971 | "duration": 0, 972 | "actions": 1 973 | }, 974 | { 975 | "grenade": 45, 976 | "pos": { 977 | "x": -161.03, 978 | "y": 576.03, 979 | "z": -69.9 980 | }, 981 | "angles": { 982 | "pitch": -46.3, 983 | "yaw": -158.01 984 | }, 985 | "description": "Kitchen Door", 986 | "id": "dce27370-f864-416f-91c2-b1fc12ce54e6", 987 | "mode": 1, 988 | "duration": 0, 989 | "actions": 1 990 | }, 991 | { 992 | "grenade": 45, 993 | "pos": { 994 | "x": -2026.4, 995 | "y": -2029.97, 996 | "z": -299.12 997 | }, 998 | "angles": { 999 | "pitch": -22.92, 1000 | "yaw": 38.67 1001 | }, 1002 | "description": "Top mid", 1003 | "id": "4fb3dd77-1828-4ed7-8e66-0c4f5b50697c", 1004 | "mode": 3, 1005 | "duration": 500, 1006 | "actions": 5 1007 | } 1008 | ] 1009 | } -------------------------------------------------------------------------------- /CornerStone/cfg/grenades/de_overpass.json: -------------------------------------------------------------------------------- 1 | { 2 | "grenades": [ 3 | { 4 | "grenade": 45, 5 | "pos": { 6 | "x": -617.52, 7 | "y": -1509.03, 8 | "z": 144.03 9 | }, 10 | "angles": { 11 | "pitch": -50.2, 12 | "yaw": 114.53 13 | }, 14 | "description": "Bridge B", 15 | "id": "dae843df-10bf-4565-84dd-e2353b43aa3c", 16 | "mode": 0, 17 | "duration": 0, 18 | "actions": 1 19 | }, 20 | { 21 | "grenade": 45, 22 | "pos": { 23 | "x": -646.01, 24 | "y": -882.03, 25 | "z": 17.98 26 | }, 27 | "angles": { 28 | "pitch": -69.86, 29 | "yaw": 116.09 30 | }, 31 | "description": "Bombsite B", 32 | "id": "0922825c-1987-4d5c-90ff-02861bf4ee91", 33 | "mode": 0, 34 | "duration": 0, 35 | "actions": 1 36 | }, 37 | { 38 | "grenade": 45, 39 | "pos": { 40 | "x": -201.87, 41 | "y": -918.13, 42 | "z": 30.17 43 | }, 44 | "angles": { 45 | "pitch": -32.13, 46 | "yaw": 117.01 47 | }, 48 | "description": "Pillar", 49 | "id": "34be6714-4a31-4c5d-9850-a4bcd8f9b84e", 50 | "mode": 0, 51 | "duration": 0, 52 | "actions": 1 53 | }, 54 | { 55 | "grenade": 45, 56 | "pos": { 57 | "x": -1751.98, 58 | "y": -671.94, 59 | "z": 128.28 60 | }, 61 | "angles": { 62 | "pitch": -21.57, 63 | "yaw": 87.25 64 | }, 65 | "fov": 20, 66 | "description": "Balcony", 67 | "id": "f5f75c10-9139-420a-b989-f2888fce2e78", 68 | "mode": 0, 69 | "duration": 0, 70 | "actions": 1 71 | }, 72 | { 73 | "grenade": 45, 74 | "pos": { 75 | "x": -1751.97, 76 | "y": -671.97, 77 | "z": 128.28 78 | }, 79 | "angles": { 80 | "pitch": -12.09, 81 | "yaw": 46.83 82 | }, 83 | "fov": 20, 84 | "description": "Pillar", 85 | "id": "d468c098-41b5-4c97-9eda-4a866b4c567b", 86 | "mode": 0, 87 | "duration": 0, 88 | "actions": 1 89 | }, 90 | { 91 | "grenade": 45, 92 | "pos": { 93 | "x": -1559.97, 94 | "y": -728.78, 95 | "z": 52.93 96 | }, 97 | "angles": { 98 | "pitch": -33.49, 99 | "yaw": 96.31 100 | }, 101 | "fov": 20, 102 | "description": "Balcony", 103 | "id": "7cc88495-676a-466f-b69a-d917ecf5e118", 104 | "mode": 0, 105 | "duration": 0, 106 | "actions": 1 107 | }, 108 | { 109 | "grenade": 45, 110 | "pos": { 111 | "x": -1559.97, 112 | "y": -728.78, 113 | "z": 52.5 114 | }, 115 | "angles": { 116 | "pitch": -28.04, 117 | "yaw": 60.09 118 | }, 119 | "fov": 20, 120 | "description": "Toxic", 121 | "id": "e92ebdb0-bf94-4a92-9de7-b2aaa08870ef", 122 | "mode": 0, 123 | "duration": 0, 124 | "actions": 1 125 | }, 126 | { 127 | "grenade": 45, 128 | "pos": { 129 | "x": -1567.97, 130 | "y": -632.29, 131 | "z": 7.26 132 | }, 133 | "angles": { 134 | "pitch": -39.12, 135 | "yaw": 57.92 136 | }, 137 | "description": "Bridge B", 138 | "id": "d7336a1a-ef3f-45b1-aea5-39b47d0281b6", 139 | "mode": 0, 140 | "duration": 0, 141 | "actions": 1 142 | }, 143 | { 144 | "grenade": 45, 145 | "pos": { 146 | "x": -1559.97, 147 | "y": -361.48, 148 | "z": 32.34 149 | }, 150 | "angles": { 151 | "pitch": -42.78, 152 | "yaw": 21.06 153 | }, 154 | "description": "Bridge B", 155 | "id": "50ede691-0ece-47cb-a460-b4fa2da15c55", 156 | "mode": 0, 157 | "duration": 0, 158 | "actions": 1 159 | }, 160 | { 161 | "grenade": 45, 162 | "pos": { 163 | "x": -2408.58, 164 | "y": -2493.66, 165 | "z": 580.41 166 | }, 167 | "angles": { 168 | "pitch": -26.21, 169 | "yaw": 81.86 170 | }, 171 | "description": "Middle", 172 | "id": "3e3e187e-90e5-4ac2-9a20-1323101e5a48", 173 | "mode": 0, 174 | "duration": 0, 175 | "actions": 1 176 | }, 177 | { 178 | "grenade": 45, 179 | "pos": { 180 | "x": -2983.02, 181 | "y": -2227.83, 182 | "z": 472.03 183 | }, 184 | "angles": { 185 | "pitch": -32.09, 186 | "yaw": 108.67 187 | }, 188 | "description": "Long A", 189 | "id": "b963afc8-4b67-44f9-bd3d-7d6dd5a3f95b", 190 | "mode": 2, 191 | "duration": 300, 192 | "actions": 1 193 | }, 194 | { 195 | "grenade": 45, 196 | "pos": { 197 | "x": -1024.17, 198 | "y": 495.97, 199 | "z": 96.03 200 | }, 201 | "angles": { 202 | "pitch": 1.62, 203 | "yaw": -51.87 204 | }, 205 | "id": "da9464a0-0f9e-4298-8ca9-5b014556b860", 206 | "mode": 0, 207 | "duration": 0, 208 | "actions": 1, 209 | "description": "Unknown" 210 | }, 211 | { 212 | "grenade": 45, 213 | "pos": { 214 | "x": -2351.97, 215 | "y": -790.03, 216 | "z": 388.75 217 | }, 218 | "angles": { 219 | "pitch": -37.69, 220 | "yaw": 81.03 221 | }, 222 | "description": "Stairs A + Car (aim right head)", 223 | "id": "065c7fda-a6a4-43e3-a5ff-6f96c674d9f4", 224 | "mode": 0, 225 | "duration": 0, 226 | "actions": 1 227 | }, 228 | { 229 | "grenade": 45, 230 | "pos": { 231 | "x": -2162.03, 232 | "y": -519.97, 233 | "z": 391.4 234 | }, 235 | "angles": { 236 | "pitch": -28.92, 237 | "yaw": 100.7 238 | }, 239 | "description": "Bank", 240 | "id": "13820f58-8eae-4c30-a52b-b06986c164ea", 241 | "mode": 0, 242 | "duration": 0, 243 | "actions": 1 244 | }, 245 | { 246 | "grenade": 45, 247 | "pos": { 248 | "x": -2335.93, 249 | "y": -455.97, 250 | "z": 389.87 251 | }, 252 | "angles": { 253 | "pitch": -49.64, 254 | "yaw": 95.4 255 | }, 256 | "accuracy": 2, 257 | "description": "Bank", 258 | "id": "a437f0d7-4377-4e21-b1c6-6af6da677dcf", 259 | "mode": 0, 260 | "duration": 0, 261 | "actions": 1 262 | }, 263 | { 264 | "grenade": 45, 265 | "pos": { 266 | "x": -3582.99, 267 | "y": -581.63, 268 | "z": 492.6 269 | }, 270 | "angles": { 271 | "pitch": -38.6, 272 | "yaw": 55.23 273 | }, 274 | "accuracy": 1, 275 | "description": "Car A", 276 | "id": "7125dff7-f189-4172-8058-739b456b2e93", 277 | "mode": 0, 278 | "duration": 0, 279 | "actions": 1 280 | }, 281 | { 282 | "grenade": 45, 283 | "pos": { 284 | "x": -3710.03, 285 | "y": -668.32, 286 | "z": 489.39 287 | }, 288 | "angles": { 289 | "pitch": -26.63, 290 | "yaw": 43.42 291 | }, 292 | "accuracy": 1, 293 | "fov": 10, 294 | "description": "Stairs A", 295 | "id": "9f7dc5fe-4740-4594-a207-319d88299879", 296 | "mode": 2, 297 | "duration": 30, 298 | "actions": 1 299 | }, 300 | { 301 | "grenade": 45, 302 | "pos": { 303 | "x": -3544.19, 304 | "y": -59.14, 305 | "z": 513.59 306 | }, 307 | "angles": { 308 | "pitch": -34.9, 309 | "yaw": 32.86 310 | }, 311 | "description": "Stairs A", 312 | "id": "3e9115a7-5ff7-43aa-8ee3-a2b15710e81a", 313 | "mode": 0, 314 | "duration": 0, 315 | "actions": 1 316 | }, 317 | { 318 | "grenade": 45, 319 | "pos": { 320 | "x": -3613.86, 321 | "y": -177.46, 322 | "z": 512.68 323 | }, 324 | "angles": { 325 | "pitch": -39.92, 326 | "yaw": 50.42 327 | }, 328 | "accuracy": 2, 329 | "fov": 16, 330 | "description": "Car", 331 | "id": "8d4b3b20-32c6-4a93-b06b-6111ed6a51a1", 332 | "mode": 0, 333 | "duration": 0, 334 | "actions": 1 335 | }, 336 | { 337 | "grenade": 45, 338 | "pos": { 339 | "x": -3613.53, 340 | "y": -177.63, 341 | "z": 512.7 342 | }, 343 | "angles": { 344 | "pitch": -21.88, 345 | "yaw": 35.86 346 | }, 347 | "accuracy": 2, 348 | "fov": 16, 349 | "description": "Box", 350 | "id": "69b04dfe-1dfe-4f6c-bc02-f428c4a37ab5", 351 | "mode": 0, 352 | "duration": 0, 353 | "actions": 1 354 | }, 355 | { 356 | "grenade": 45, 357 | "pos": { 358 | "x": -3527.99, 359 | "y": -46.03, 360 | "z": 515.64 361 | }, 362 | "angles": { 363 | "pitch": -38.29, 364 | "yaw": 31.93 365 | }, 366 | "accuracy": 1, 367 | "id": "2b02f858-0c57-4199-aa79-bc97dbf508c5", 368 | "mode": 0, 369 | "duration": 0, 370 | "actions": 1, 371 | "description": "Unknown" 372 | }, 373 | { 374 | "grenade": 45, 375 | "pos": { 376 | "x": -3283.68, 377 | "y": -358.97, 378 | "z": 536.03 379 | }, 380 | "angles": { 381 | "pitch": -21.88, 382 | "yaw": 62.96 383 | }, 384 | "accuracy": 1, 385 | "fov": 4, 386 | "id": "d2459129-e5d4-4798-9cd1-f52425a742c7", 387 | "mode": 0, 388 | "duration": 0, 389 | "actions": 1, 390 | "description": "Unknown" 391 | }, 392 | { 393 | "grenade": 45, 394 | "pos": { 395 | "x": -3283.68, 396 | "y": -358.97, 397 | "z": 536.03 398 | }, 399 | "angles": { 400 | "pitch": -18.1, 401 | "yaw": 61.29 402 | }, 403 | "accuracy": 1, 404 | "fov": 4, 405 | "id": "c88d7d36-4777-4516-a1c0-09cc0e7baf25", 406 | "mode": 0, 407 | "duration": 0, 408 | "actions": 1, 409 | "description": "Unknown" 410 | }, 411 | { 412 | "grenade": 45, 413 | "pos": { 414 | "x": -2374.84, 415 | "y": 143.39, 416 | "z": 432.06 417 | }, 418 | "angles": { 419 | "pitch": -51.71, 420 | "yaw": -44.27 421 | }, 422 | "description": "Canal Middle", 423 | "id": "0170612a-7d79-41a1-850d-b53cba3f2c4e", 424 | "mode": 0, 425 | "duration": 0, 426 | "actions": 1 427 | }, 428 | { 429 | "grenade": 45, 430 | "pos": { 431 | "x": -2040.76, 432 | "y": 902.59, 433 | "z": 480.03 434 | }, 435 | "angles": { 436 | "pitch": -30.04, 437 | "yaw": -65.15 438 | }, 439 | "description": "Canal Middle", 440 | "id": "21efb4e5-2e93-43ad-994c-e1c7df5daa00", 441 | "mode": 0, 442 | "duration": 0, 443 | "actions": 1 444 | }, 445 | { 446 | "grenade": 46, 447 | "pos": { 448 | "x": -1023.37, 449 | "y": 495.96, 450 | "z": 96.03 451 | }, 452 | "angles": { 453 | "pitch": 1.68, 454 | "yaw": -52.08 455 | }, 456 | "description": "Canal B", 457 | "id": "8dce2f76-9158-4a44-b24f-51b0a1969a09", 458 | "mode": 2, 459 | "duration": 30, 460 | "actions": 1 461 | }, 462 | { 463 | "grenade": 45, 464 | "pos": { 465 | "x": -2039.54, 466 | "y": 898.94, 467 | "z": 480.03 468 | }, 469 | "angles": { 470 | "pitch": -30.42, 471 | "yaw": -65.35 472 | }, 473 | "accuracy": 1, 474 | "id": "4b19c62d-21bb-464c-b3ac-00299cc9df09", 475 | "mode": 0, 476 | "duration": 0, 477 | "actions": 1, 478 | "description": "Unknown" 479 | }, 480 | { 481 | "grenade": 45, 482 | "pos": { 483 | "x": -2088.05, 484 | "y": 979.01, 485 | "z": 533.91 486 | }, 487 | "angles": { 488 | "pitch": -20.43, 489 | "yaw": -57.19 490 | }, 491 | "accuracy": 1, 492 | "description": "Cement B", 493 | "id": "7c2246fc-8411-4d51-af67-d20147ec6a02", 494 | "mode": 0, 495 | "duration": 0, 496 | "actions": 1 497 | }, 498 | { 499 | "grenade": 45, 500 | "pos": { 501 | "x": -2238.79, 502 | "y": 1054.36, 503 | "z": 480.03 504 | }, 505 | "angles": { 506 | "pitch": -15.08, 507 | "yaw": -50 508 | }, 509 | "description": "Canal B", 510 | "id": "40eaa0e4-e666-48e3-be30-8719d5826a51", 511 | "mode": 2, 512 | "duration": 1200, 513 | "actions": 1 514 | }, 515 | { 516 | "grenade": 45, 517 | "pos": { 518 | "x": -3284.71, 519 | "y": -358.97, 520 | "z": 536.03 521 | }, 522 | "angles": { 523 | "pitch": -21.93, 524 | "yaw": 62.58 525 | }, 526 | "description": "Car + Bank (aim top-right corner A)", 527 | "id": "fedc9cad-f971-42da-9ff0-2903c07756fa", 528 | "mode": 0, 529 | "duration": 0, 530 | "actions": 1 531 | }, 532 | { 533 | "grenade": 46, 534 | "pos": { 535 | "x": -1399.97, 536 | "y": -139.97, 537 | "z": 0.03 538 | }, 539 | "angles": { 540 | "pitch": -15.1, 541 | "yaw": 63.31 542 | }, 543 | "description": "Bombsite", 544 | "id": "12c6e0a4-3001-4596-9228-52aa547568b5", 545 | "mode": 0, 546 | "duration": 0, 547 | "actions": 1 548 | }, 549 | { 550 | "grenade": 46, 551 | "pos": { 552 | "x": -2022.97, 553 | "y": -48.03, 554 | "z": 139.7 555 | }, 556 | "angles": { 557 | "pitch": -12.2, 558 | "yaw": -44.79 559 | }, 560 | "description": "Canal B", 561 | "id": "9e48377f-b54b-47ed-b4a2-d5dd65f5dc56", 562 | "mode": 0, 563 | "duration": 0, 564 | "actions": 1 565 | }, 566 | { 567 | "grenade": 46, 568 | "pos": { 569 | "x": -1975.97, 570 | "y": 20, 571 | "z": 128.03 572 | }, 573 | "angles": { 574 | "pitch": -19.06, 575 | "yaw": 16.41 576 | }, 577 | "id": "d4aabdfc-f345-47d0-a368-cf5befc74b88", 578 | "mode": 0, 579 | "duration": 0, 580 | "actions": 1, 581 | "description": "Unknown" 582 | }, 583 | { 584 | "grenade": 46, 585 | "pos": { 586 | "x": -1894.38, 587 | "y": 263.16, 588 | "z": 160.03 589 | }, 590 | "angles": { 591 | "pitch": -22.8, 592 | "yaw": -20.99 593 | }, 594 | "accuracy": 2, 595 | "description": "Bombsite", 596 | "id": "4d199707-bfe4-4e1a-8e65-c65fb4010fc3", 597 | "mode": 0, 598 | "duration": 0, 599 | "actions": 1 600 | }, 601 | { 602 | "grenade": 46, 603 | "pos": { 604 | "x": -1933.71, 605 | "y": 244.55, 606 | "z": 160.03 607 | }, 608 | "angles": { 609 | "pitch": -12.75, 610 | "yaw": -16.41 611 | }, 612 | "accuracy": 2, 613 | "id": "38e9d66e-2cd4-4d18-914b-5df5cf323165", 614 | "mode": 0, 615 | "duration": 0, 616 | "actions": 1, 617 | "description": "Unknown" 618 | }, 619 | { 620 | "grenade": 46, 621 | "pos": { 622 | "x": -2043.69, 623 | "y": 247.52, 624 | "z": 128.03 625 | }, 626 | "angles": { 627 | "pitch": -19.02, 628 | "yaw": -30.01 629 | }, 630 | "accuracy": 4, 631 | "description": "Cement B", 632 | "id": "f71d77d7-e1f7-473d-b9b5-1cd8fa8c4d64", 633 | "mode": 2, 634 | "duration": 20, 635 | "actions": 1 636 | }, 637 | { 638 | "grenade": 46, 639 | "pos": { 640 | "x": -1260.01, 641 | "y": -1079.97, 642 | "z": 0.03 643 | }, 644 | "angles": { 645 | "pitch": -24.73, 646 | "yaw": 83.14 647 | }, 648 | "description": "Ascent", 649 | "id": "03ffaab8-fdee-478e-977c-445c2747a4f2", 650 | "mode": 2, 651 | "duration": 10, 652 | "actions": 1 653 | }, 654 | { 655 | "grenade": 46, 656 | "pos": { 657 | "x": -1421.97, 658 | "y": -1087.99, 659 | "z": 0.22 660 | }, 661 | "angles": { 662 | "pitch": -23.84, 663 | "yaw": 71.61 664 | }, 665 | "description": "Barrels", 666 | "id": "c703343a-b980-4775-8198-099d4012fd23", 667 | "mode": 2, 668 | "duration": 35, 669 | "actions": 1 670 | }, 671 | { 672 | "grenade": 46, 673 | "pos": { 674 | "x": -2047.27, 675 | "y": 521.23, 676 | "z": 527.37 677 | }, 678 | "angles": { 679 | "pitch": -19.55, 680 | "yaw": -165.28 681 | }, 682 | "accuracy": 1, 683 | "description": "Long A", 684 | "id": "d3deb408-13d9-44f9-aa58-8e6b65408fa0", 685 | "mode": 0, 686 | "duration": 0, 687 | "actions": 1 688 | }, 689 | { 690 | "grenade": 46, 691 | "pos": { 692 | "x": -3409.16, 693 | "y": -361.97, 694 | "z": 522.65 695 | }, 696 | "angles": { 697 | "pitch": -19.87, 698 | "yaw": 60.9 699 | }, 700 | "accuracy": 5, 701 | "id": "7d22375e-aeb8-4c3e-9dd5-a59c9c3517a7", 702 | "mode": 0, 703 | "duration": 0, 704 | "actions": 1, 705 | "description": "Unknown" 706 | }, 707 | { 708 | "grenade": 46, 709 | "pos": { 710 | "x": -3515.16, 711 | "y": -362, 712 | "z": 525.65 713 | }, 714 | "angles": { 715 | "pitch": -13.39, 716 | "yaw": 33.95 717 | }, 718 | "accuracy": 5, 719 | "description": "Car A", 720 | "id": "e97a674b-b7ca-458f-ab85-589f606e0fa2", 721 | "mode": 2, 722 | "duration": 20, 723 | "actions": 1 724 | }, 725 | { 726 | "grenade": 46, 727 | "pos": { 728 | "x": -3419.85, 729 | "y": -361.97, 730 | "z": 522.66 731 | }, 732 | "angles": { 733 | "pitch": -20.04, 734 | "yaw": 60.33 735 | }, 736 | "accuracy": 5, 737 | "description": "Bank", 738 | "id": "ecd25b48-367b-4589-a135-d21f8f0bd269", 739 | "mode": 2, 740 | "duration": 80, 741 | "actions": 1 742 | }, 743 | { 744 | "grenade": 43, 745 | "pos": { 746 | "x": -2604, 747 | "y": 1102.23, 748 | "z": 480.03 749 | }, 750 | "angles": { 751 | "pitch": -22.74, 752 | "yaw": 71.01 753 | }, 754 | "id": "0baf7d77-f3eb-437f-a3cf-35d5bfa1a6bb", 755 | "mode": 0, 756 | "duration": 0, 757 | "actions": 1, 758 | "description": "Unknown" 759 | }, 760 | { 761 | "grenade": 43, 762 | "pos": { 763 | "x": -2488.81, 764 | "y": 777.82, 765 | "z": 475.03 766 | }, 767 | "angles": { 768 | "pitch": -26.21, 769 | "yaw": 58.03 770 | }, 771 | "id": "11369d35-fcf5-46d0-8939-7a36efb33861", 772 | "mode": 0, 773 | "duration": 0, 774 | "actions": 1, 775 | "description": "Unknown" 776 | }, 777 | { 778 | "grenade": 43, 779 | "pos": { 780 | "x": -1823.98, 781 | "y": -1205.83, 782 | "z": 96.03 783 | }, 784 | "angles": { 785 | "pitch": -18.86, 786 | "yaw": 49.28 787 | }, 788 | "description": "Site B", 789 | "id": "1720e963-55d2-4866-bf84-500c5e9316e4", 790 | "mode": 2, 791 | "duration": 5, 792 | "actions": 1 793 | }, 794 | { 795 | "grenade": 43, 796 | "pos": { 797 | "x": -1645.97, 798 | "y": -1087.97, 799 | "z": 96.03 800 | }, 801 | "angles": { 802 | "pitch": -15.68, 803 | "yaw": 60.83 804 | }, 805 | "description": "Site B", 806 | "id": "e979c2e7-0f27-4238-aa49-5ec5bc222bd3", 807 | "mode": 2, 808 | "duration": 5, 809 | "actions": 1 810 | }, 811 | { 812 | "grenade": 43, 813 | "pos": { 814 | "x": -1288.03, 815 | "y": -139.97, 816 | "z": 17.66 817 | }, 818 | "angles": { 819 | "pitch": -8.82, 820 | "yaw": -178.57 821 | }, 822 | "id": "ca892c73-b0cf-444b-bd29-aad21b1caa4d", 823 | "mode": 0, 824 | "duration": 0, 825 | "actions": 1, 826 | "description": "Unknown" 827 | }, 828 | { 829 | "grenade": 43, 830 | "pos": { 831 | "x": -1399.97, 832 | "y": -139.97, 833 | "z": 0.03 834 | }, 835 | "angles": { 836 | "pitch": -15.64, 837 | "yaw": 63.29 838 | }, 839 | "id": "5ef1e250-215b-406c-b0ba-b6d88ff7d14c", 840 | "mode": 0, 841 | "duration": 0, 842 | "actions": 1, 843 | "description": "Unknown" 844 | }, 845 | { 846 | "grenade": 43, 847 | "pos": { 848 | "x": -1438.99, 849 | "y": -722.76, 850 | "z": 22.79 851 | }, 852 | "angles": { 853 | "pitch": -14.09, 854 | "yaw": 22.42 855 | }, 856 | "id": "a4859138-4087-46ab-8aef-5790f933bb82", 857 | "mode": 0, 858 | "duration": 0, 859 | "actions": 1, 860 | "description": "Unknown" 861 | }, 862 | { 863 | "grenade": 43, 864 | "pos": { 865 | "x": -1840, 866 | "y": -1071.97, 867 | "z": 96.03 868 | }, 869 | "angles": { 870 | "pitch": -47.14, 871 | "yaw": 174.03 872 | }, 873 | "id": "f9c86a8a-476c-40e8-bd14-6f501fbfcfaa", 874 | "mode": 0, 875 | "duration": 0, 876 | "actions": 1, 877 | "description": "Unknown" 878 | }, 879 | { 880 | "grenade": 43, 881 | "pos": { 882 | "x": -1559.97, 883 | "y": -361.29, 884 | "z": 32.36 885 | }, 886 | "angles": { 887 | "pitch": -43.52, 888 | "yaw": 21.68 889 | }, 890 | "id": "4c6a2d88-fabd-4e8d-bff2-9c72580117da", 891 | "mode": 0, 892 | "duration": 0, 893 | "actions": 1, 894 | "description": "Unknown" 895 | }, 896 | { 897 | "grenade": 43, 898 | "pos": { 899 | "x": -1868.89, 900 | "y": 1088.88, 901 | "z": 356.03 902 | }, 903 | "angles": { 904 | "pitch": -37.41, 905 | "yaw": 175.79 906 | }, 907 | "id": "7761b6d2-482c-478f-857b-2f14ee7fd2d3", 908 | "mode": 0, 909 | "duration": 0, 910 | "actions": 1, 911 | "description": "Unknown" 912 | }, 913 | { 914 | "grenade": 43, 915 | "pos": { 916 | "x": -2219.16, 917 | "y": 1113.61, 918 | "z": 356.03 919 | }, 920 | "angles": { 921 | "pitch": -35.3, 922 | "yaw": -12.48 923 | }, 924 | "id": "b8dc68b3-50e4-44bc-8c33-fca0063576d5", 925 | "mode": 0, 926 | "duration": 0, 927 | "actions": 1, 928 | "description": "Unknown" 929 | }, 930 | { 931 | "grenade": 45, 932 | "pos": { 933 | "x": -3710.03, 934 | "y": -668.32, 935 | "z": 489.38 936 | }, 937 | "angles": { 938 | "pitch": -41.2, 939 | "yaw": 48.56 940 | }, 941 | "accuracy": 1, 942 | "fov": 10, 943 | "id": "41f30101-a90b-4b68-8751-14b033bcc2ea", 944 | "mode": 0, 945 | "duration": 0, 946 | "actions": 1, 947 | "description": "Unknown" 948 | }, 949 | { 950 | "grenade": 43, 951 | "pos": { 952 | "x": -1260.01, 953 | "y": -1079.97, 954 | "z": 0.03 955 | }, 956 | "angles": { 957 | "pitch": -50.56, 958 | "yaw": 170.87 959 | }, 960 | "id": "7c37465f-3c67-461f-a57c-4b4a9c280f26", 961 | "mode": 0, 962 | "duration": 0, 963 | "actions": 1, 964 | "description": "Unknown" 965 | }, 966 | { 967 | "grenade": 46, 968 | "pos": { 969 | "x": -1567.97, 970 | "y": -632.29, 971 | "z": 7.26 972 | }, 973 | "angles": { 974 | "pitch": -46.08, 975 | "yaw": 68.23 976 | }, 977 | "id": "bd60084c-b6d8-4e87-a8bd-1b5b87647311", 978 | "mode": 0, 979 | "duration": 0, 980 | "actions": 1, 981 | "description": "Unknown" 982 | } 983 | ] 984 | } -------------------------------------------------------------------------------- /CornerStone/cfg/grenades/de_train.json: -------------------------------------------------------------------------------- 1 | { 2 | "grenades": [ 3 | { 4 | "grenade": 45, 5 | "description": "Left", 6 | "pos": { 7 | "x": 1535.97, 8 | "y": 1775.97, 9 | "z": -223.97 10 | }, 11 | "angles": { 12 | "pitch": "-12.78", 13 | "yaw": -112.5 14 | }, 15 | "mode": 2, 16 | "duration": "350", 17 | "actions": 1, 18 | "id": "31670868-8e61-49e2-ade1-155310e3caca" 19 | }, 20 | { 21 | "grenade": 45, 22 | "pos": { 23 | "x": -638.51, 24 | "y": 1595.79, 25 | "z": -171.73 26 | }, 27 | "angles": { 28 | "pitch": -5.79, 29 | "yaw": -59.3 30 | }, 31 | "description": "Site (letft)", 32 | "id": "f9be2465-2fb4-4da5-a2bc-374d0d60cc91", 33 | "mode": 1, 34 | "duration": 0, 35 | "actions": 1 36 | }, 37 | { 38 | "grenade": 45, 39 | "pos": { 40 | "x": -832.11, 41 | "y": 1522.48, 42 | "z": -222.97 43 | }, 44 | "angles": { 45 | "pitch": -12, 46 | "yaw": -54.37 47 | }, 48 | "description": "Connector", 49 | "id": "1d24d832-3c55-4361-8ef7-ba217dd5ce86", 50 | "mode": 1, 51 | "duration": 0, 52 | "actions": 1 53 | }, 54 | { 55 | "grenade": 45, 56 | "pos": { 57 | "x": -368, 58 | "y": 1236.03, 59 | "z": -136.95 60 | }, 61 | "angles": { 62 | "pitch": -65.01, 63 | "yaw": -71.16 64 | }, 65 | "id": "779faff7-85fa-493f-8b70-7016a47204fd", 66 | "mode": 0, 67 | "duration": 0, 68 | "actions": 1, 69 | "description": "Unknown" 70 | }, 71 | { 72 | "grenade": 45, 73 | "pos": { 74 | "x": -492.99, 75 | "y": 1236, 76 | "z": -86.9 77 | }, 78 | "angles": { 79 | "pitch": -29.02, 80 | "yaw": -55.7 81 | }, 82 | "id": "0c598f86-b861-4c04-aa7b-4a83598fbcb7", 83 | "mode": 0, 84 | "duration": 0, 85 | "actions": 1, 86 | "description": "Unknown" 87 | }, 88 | { 89 | "grenade": 45, 90 | "pos": { 91 | "x": -555.03, 92 | "y": 1262.03, 93 | "z": -212.59 94 | }, 95 | "angles": { 96 | "pitch": -67.91, 97 | "yaw": -50.79 98 | }, 99 | "id": "5f48505d-87b7-4138-a835-cacfd0b624c7", 100 | "mode": 0, 101 | "duration": 0, 102 | "actions": 1, 103 | "description": "Unknown" 104 | }, 105 | { 106 | "grenade": 45, 107 | "pos": { 108 | "x": -832.15, 109 | "y": 1268.01, 110 | "z": -222.97 111 | }, 112 | "angles": { 113 | "pitch": -37.76, 114 | "yaw": -41.96 115 | }, 116 | "id": "8b05b2c1-7ae2-484d-b3bf-1a10452905d5", 117 | "mode": 0, 118 | "duration": 0, 119 | "actions": 1, 120 | "description": "Unknown" 121 | }, 122 | { 123 | "grenade": 45, 124 | "pos": { 125 | "x": -655.9, 126 | "y": -423.66, 127 | "z": 16.03 128 | }, 129 | "angles": { 130 | "pitch": -46.62, 131 | "yaw": 11.91 132 | }, 133 | "id": "da571940-73a9-491a-adca-fa8492f2a5a2", 134 | "mode": 0, 135 | "duration": 0, 136 | "actions": 1, 137 | "description": "Unknown" 138 | }, 139 | { 140 | "grenade": 45, 141 | "pos": { 142 | "x": -639.97, 143 | "y": -583.98, 144 | "z": 16.03 145 | }, 146 | "angles": { 147 | "pitch": -29.23, 148 | "yaw": 63.79 149 | }, 150 | "id": "8d763c40-1487-4bb4-95f7-a3122c8f7ccf", 151 | "mode": 0, 152 | "duration": 0, 153 | "actions": 1, 154 | "description": "Unknown" 155 | }, 156 | { 157 | "grenade": 45, 158 | "pos": { 159 | "x": -720.03, 160 | "y": -504.01, 161 | "z": 16.02 162 | }, 163 | "angles": { 164 | "pitch": -36.68, 165 | "yaw": -5.16 166 | }, 167 | "id": "a40b5663-56df-4672-933a-6ed2a1a2de81", 168 | "mode": 0, 169 | "duration": 0, 170 | "actions": 1, 171 | "description": "Unknown" 172 | }, 173 | { 174 | "grenade": 45, 175 | "pos": { 176 | "x": 1021.1, 177 | "y": -254.97, 178 | "z": -215.97 179 | }, 180 | "angles": { 181 | "pitch": -38.39, 182 | "yaw": 154.56 183 | }, 184 | "id": "fb86bdd8-93d3-4af7-b6b5-91b09435752e", 185 | "mode": 0, 186 | "duration": 0, 187 | "actions": 1, 188 | "description": "Unknown" 189 | }, 190 | { 191 | "grenade": 45, 192 | "pos": { 193 | "x": -645.45, 194 | "y": 1697.73, 195 | "z": -209.97 196 | }, 197 | "angles": { 198 | "pitch": -15.92, 199 | "yaw": -60.62 200 | }, 201 | "description": "Connector (deep)", 202 | "id": "a100988d-918a-47fa-9f6e-fdcbf3fb3ce8", 203 | "mode": 3, 204 | "duration": 660, 205 | "actions": 1 206 | }, 207 | { 208 | "grenade": 45, 209 | "pos": { 210 | "x": -463.53, 211 | "y": 1573.28, 212 | "z": -206.29 213 | }, 214 | "angles": { 215 | "pitch": -46.48, 216 | "yaw": -78.53 217 | }, 218 | "description": "Electric (left)", 219 | "id": "beb02f3e-c42d-4189-a979-e480977f1587", 220 | "mode": 0, 221 | "duration": 0, 222 | "actions": 1 223 | }, 224 | { 225 | "grenade": 45, 226 | "pos": { 227 | "x": -481.86, 228 | "y": 1724.93, 229 | "z": -209.97 230 | }, 231 | "angles": { 232 | "pitch": -22.22, 233 | "yaw": -82.35 234 | }, 235 | "description": "Electric (right)", 236 | "id": "7d452451-836d-4e54-b787-8dc8abebd742", 237 | "mode": 1, 238 | "duration": 0, 239 | "actions": 1 240 | }, 241 | { 242 | "grenade": 45, 243 | "pos": { 244 | "x": -850.85, 245 | "y": 454.75, 246 | "z": -215.97 247 | }, 248 | "angles": { 249 | "pitch": -29.36, 250 | "yaw": 1.57 251 | }, 252 | "description": "Ivy", 253 | "id": "9735133b-7612-4fd0-b44d-37d59337edcd", 254 | "mode": 2, 255 | "duration": 900, 256 | "actions": 5 257 | }, 258 | { 259 | "grenade": 45, 260 | "pos": { 261 | "x": -1146.31, 262 | "y": -1043.48, 263 | "z": -95.97 264 | }, 265 | "angles": { 266 | "pitch": -7.15, 267 | "yaw": -2.93 268 | }, 269 | "description": "Center", 270 | "id": "3b841357-45f3-4f63-bf36-a3f80a7d68e4", 271 | "mode": 0, 272 | "duration": 0, 273 | "actions": 1 274 | }, 275 | { 276 | "grenade": 45, 277 | "pos": { 278 | "x": -1055.99, 279 | "y": -1608.03, 280 | "z": -151.97 281 | }, 282 | "angles": { 283 | "pitch": -4.49, 284 | "yaw": -23.06 285 | }, 286 | "description": "Upper", 287 | "id": "d60f9132-4ab5-4a4e-85c3-9d8746b79a74", 288 | "mode": 2, 289 | "duration": 120, 290 | "actions": 1 291 | }, 292 | { 293 | "grenade": 46, 294 | "pos": { 295 | "x": -1053.98, 296 | "y": -1048.31, 297 | "z": -95.97 298 | }, 299 | "angles": { 300 | "pitch": 4.13, 301 | "yaw": 2.51 302 | }, 303 | "fov": 2, 304 | "description": "Train (close)", 305 | "id": "242023fc-e81e-4a2b-9e4b-2abea3cd340e", 306 | "mode": 1, 307 | "duration": 0, 308 | "actions": 1 309 | }, 310 | { 311 | "grenade": 46, 312 | "pos": { 313 | "x": -1054.81, 314 | "y": -1048.79, 315 | "z": -95.97 316 | }, 317 | "angles": { 318 | "pitch": -10.49, 319 | "yaw": 2.1 320 | }, 321 | "fov": 2, 322 | "description": "Train (far)", 323 | "id": "78fc005d-30bd-4eac-be96-570d1d0dc24a", 324 | "mode": 0, 325 | "duration": 0, 326 | "actions": 1 327 | }, 328 | { 329 | "grenade": 46, 330 | "pos": { 331 | "x": -1144.58, 332 | "y": -1044.08, 333 | "z": -95.97 334 | }, 335 | "angles": { 336 | "pitch": -11.77, 337 | "yaw": 2.32 338 | }, 339 | "description": "Train (far)", 340 | "id": "ef93d803-cbd3-47ca-a520-9f23964e9d1f", 341 | "mode": 0, 342 | "duration": 0, 343 | "actions": 1 344 | }, 345 | { 346 | "grenade": 46, 347 | "pos": { 348 | "x": -1054.76, 349 | "y": -984.19, 350 | "z": -95.97 351 | }, 352 | "angles": { 353 | "pitch": 11.25, 354 | "yaw": -9.27 355 | }, 356 | "description": "Backsite", 357 | "id": "2fdf131a-d5f5-4c31-8368-7a5e3abf5da7", 358 | "mode": 3, 359 | "duration": 10, 360 | "actions": 5 361 | } 362 | ] 363 | } -------------------------------------------------------------------------------- /CornerStone/cfg/logger.conf: -------------------------------------------------------------------------------- 1 | * GLOBAL: 2 | FORMAT = "%datetime [%logger:%fbase:%line] (%func) |%level| %msg" 3 | FILENAME = "%APPDATA%\CornerStone\log\CornerStone.log" 4 | ENABLED = true 5 | TO_FILE = true 6 | TO_STANDARD_OUTPUT = true 7 | SUBSECOND_PRECISION = 3 8 | PERFORMANCE_TRACKING = true 9 | MAX_LOG_FILE_SIZE = 2097152 ## 2MB 10 | LOG_FLUSH_THRESHOLD = 1 11 | 12 | * DEBUG: 13 | TO_STANDARD_OUTPUT = false 14 | 15 | * INFO: 16 | FORMAT = "%datetime | %msg" 17 | -------------------------------------------------------------------------------- /CornerStone/ui/css/code~31ecd969.0c92bed6.css: -------------------------------------------------------------------------------- 1 | .patrons strong{font-size:1.5rem}.patrons h4{margin-bottom:1.12em} -------------------------------------------------------------------------------- /CornerStone/ui/css/vendors~d939e436.7a3c4381.css: -------------------------------------------------------------------------------- 1 | .vld-overlay{bottom:0;left:0;position:absolute;right:0;top:0;-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:none;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;overflow:hidden;z-index:9999}.vld-overlay.is-active{display:-webkit-box;display:-ms-flexbox;display:flex}.vld-overlay.is-full-page{z-index:9999;position:fixed}.vld-overlay .vld-background{bottom:0;left:0;position:absolute;right:0;top:0;background:#fff;opacity:.5}.vc-editable-input,.vld-overlay .vld-icon,.vld-parent{position:relative}.vc-input__input{padding:0;border:0;outline:none}.vc-input__label{text-transform:capitalize}.vc-saturation,.vc-saturation--black,.vc-saturation--white{cursor:pointer;position:absolute;top:0;left:0;right:0;bottom:0}.vc-saturation--white{background:-webkit-gradient(linear,left top,right top,from(#fff),to(hsla(0,0%,100%,0)));background:linear-gradient(90deg,#fff,hsla(0,0%,100%,0))}.vc-saturation--black{background:-webkit-gradient(linear,left bottom,left top,from(#000),to(transparent));background:linear-gradient(0deg,#000,transparent)}.vc-saturation-pointer{cursor:pointer;position:absolute}.vc-saturation-circle{cursor:head;width:4px;height:4px;-webkit-box-shadow:0 0 0 1.5px #fff,inset 0 0 1px 1px rgba(0,0,0,.3),0 0 1px 2px rgba(0,0,0,.4);box-shadow:0 0 0 1.5px #fff,inset 0 0 1px 1px rgba(0,0,0,.3),0 0 1px 2px rgba(0,0,0,.4);border-radius:50%;-webkit-transform:translate(-2px,-2px);transform:translate(-2px,-2px)}.vc-hue{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:2px}.vc-hue--horizontal{background:-webkit-gradient(linear,left top,right top,from(red),color-stop(17%,#ff0),color-stop(33%,#0f0),color-stop(50%,#0ff),color-stop(67%,#00f),color-stop(83%,#f0f),to(red));background:linear-gradient(90deg,red 0,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red)}.vc-hue--vertical{background:-webkit-gradient(linear,left bottom,left top,from(red),color-stop(17%,#ff0),color-stop(33%,#0f0),color-stop(50%,#0ff),color-stop(67%,#00f),color-stop(83%,#f0f),to(red));background:linear-gradient(0deg,red 0,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red)}.vc-hue-container{cursor:pointer;margin:0 2px;position:relative;height:100%}.vc-hue-pointer{z-index:2;position:absolute}.vc-hue-picker{cursor:pointer;margin-top:1px;width:4px;border-radius:1px;height:8px;-webkit-box-shadow:0 0 2px rgba(0,0,0,.6);box-shadow:0 0 2px rgba(0,0,0,.6);background:#fff;-webkit-transform:translateX(-2px);transform:translateX(-2px)}.vc-checkerboard{background-size:contain}.vc-alpha,.vc-alpha-checkboard-wrap,.vc-checkerboard{position:absolute;top:0;right:0;bottom:0;left:0}.vc-alpha-checkboard-wrap{overflow:hidden}.vc-alpha-gradient{position:absolute;top:0;right:0;bottom:0;left:0}.vc-alpha-container{cursor:pointer;position:relative;z-index:2;height:100%;margin:0 3px}.vc-alpha-pointer{z-index:2;position:absolute}.vc-alpha-picker{cursor:pointer;width:4px;border-radius:1px;height:8px;-webkit-box-shadow:0 0 2px rgba(0,0,0,.6);box-shadow:0 0 2px rgba(0,0,0,.6);background:#fff;margin-top:1px;-webkit-transform:translateX(-2px);transform:translateX(-2px)}.vc-sketch{position:relative;width:200px;padding:10px 10px 0;-webkit-box-sizing:initial;box-sizing:initial;background:#fff;border-radius:4px;-webkit-box-shadow:0 0 0 1px rgba(0,0,0,.15),0 8px 16px rgba(0,0,0,.15);box-shadow:0 0 0 1px rgba(0,0,0,.15),0 8px 16px rgba(0,0,0,.15)}.vc-sketch-saturation-wrap{width:100%;padding-bottom:75%;position:relative;overflow:hidden}.vc-sketch-controls{display:-webkit-box;display:-ms-flexbox;display:flex}.vc-sketch-sliders{padding:4px 0;-webkit-box-flex:1;-ms-flex:1;flex:1}.vc-sketch-sliders .vc-alpha-gradient,.vc-sketch-sliders .vc-hue{border-radius:2px}.vc-sketch-alpha-wrap,.vc-sketch-hue-wrap{position:relative;height:10px}.vc-sketch-alpha-wrap{margin-top:4px;overflow:hidden}.vc-sketch-color-wrap{width:24px;height:24px;position:relative;margin-top:4px;margin-left:4px;border-radius:3px}.vc-sketch-active-color{position:absolute;top:0;left:0;right:0;bottom:0;border-radius:2px;-webkit-box-shadow:inset 0 0 0 1px rgba(0,0,0,.15),inset 0 0 4px rgba(0,0,0,.25);box-shadow:inset 0 0 0 1px rgba(0,0,0,.15),inset 0 0 4px rgba(0,0,0,.25);z-index:2}.vc-sketch-color-wrap .vc-checkerboard{background-size:auto}.vc-sketch-field{display:-webkit-box;display:-ms-flexbox;display:flex;padding-top:4px}.vc-sketch-field .vc-input__input{width:90%;padding:4px 0 3px 10%;border:none;-webkit-box-shadow:inset 0 0 0 1px #ccc;box-shadow:inset 0 0 0 1px #ccc;font-size:10px}.vc-sketch-field .vc-input__label{display:block;text-align:center;font-size:11px;color:#222;padding-top:3px;padding-bottom:4px;text-transform:capitalize}.vc-sketch-field--single{-webkit-box-flex:1;-ms-flex:1;flex:1;padding-left:6px}.vc-sketch-field--double{-webkit-box-flex:2;-ms-flex:2;flex:2}.vc-sketch-presets{margin-right:-10px;margin-left:-10px;padding-left:10px;padding-top:10px;border-top:1px solid #eee}.vc-sketch-presets-color{overflow:hidden;position:relative;display:inline-block;margin:0 10px 10px 0;vertical-align:top;cursor:pointer;width:16px;height:16px}.vc-sketch-presets-color,.vc-sketch-presets-color .vc-checkerboard{border-radius:3px;-webkit-box-shadow:inset 0 0 0 1px rgba(0,0,0,.15);box-shadow:inset 0 0 0 1px rgba(0,0,0,.15)}.vc-sketch__disable-alpha .vc-sketch-color-wrap{height:10px} -------------------------------------------------------------------------------- /CornerStone/ui/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clangremlini/fet-loader/755b3a49fd5e4d03d0dd7d002f4946c346dc2c7f/CornerStone/ui/favicon.ico -------------------------------------------------------------------------------- /CornerStone/ui/img/1.4259dbab.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clangremlini/fet-loader/755b3a49fd5e4d03d0dd7d002f4946c346dc2c7f/CornerStone/ui/img/1.4259dbab.jpg -------------------------------------------------------------------------------- /CornerStone/ui/img/2.16f169bf.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clangremlini/fet-loader/755b3a49fd5e4d03d0dd7d002f4946c346dc2c7f/CornerStone/ui/img/2.16f169bf.jpg -------------------------------------------------------------------------------- /CornerStone/ui/index.html: -------------------------------------------------------------------------------- 1 | CornerStone UI
-------------------------------------------------------------------------------- /CornerStone/ui/js/runtime.0df8b2b1.js: -------------------------------------------------------------------------------- 1 | (function(e){function t(t){for(var n,o,c=t[0],i=t[1],l=t[2],d=0,s=[];d 13 | * Links: 14 | * GitHub: - https://github.com/cocobelgica/AutoHotkey-JSON 15 | * Forum Topic - http://goo.gl/r0zI8t 16 | * Email: - cocobelgica gmail com 17 | */ 18 | 19 | 20 | /** 21 | * Class: JSON 22 | * The JSON object contains methods for parsing JSON and converting values 23 | * to JSON. Callable - NO; Instantiable - YES; Subclassable - YES; 24 | * Nestable(via #Include) - NO. 25 | * Methods: 26 | * Load() - see relevant documentation before method definition header 27 | * Dump() - see relevant documentation before method definition header 28 | */ 29 | class JSON 30 | { 31 | /** 32 | * Method: Load 33 | * Parses a JSON string into an AHK value 34 | * Syntax: 35 | * value := JSON.Load( text [, reviver ] ) 36 | * Parameter(s): 37 | * value [retval] - parsed value 38 | * text [in, ByRef] - JSON formatted string 39 | * reviver [in, opt] - function object, similar to JavaScript's 40 | * JSON.parse() 'reviver' parameter 41 | */ 42 | class Load extends JSON.Functor 43 | { 44 | Call(self, ByRef text, reviver:="") 45 | { 46 | this.rev := IsObject(reviver) ? reviver : false 47 | ; Object keys(and array indices) are temporarily stored in arrays so that 48 | ; we can enumerate them in the order they appear in the document/text instead 49 | ; of alphabetically. Skip if no reviver function is specified. 50 | this.keys := this.rev ? {} : false 51 | 52 | static quot := Chr(34), bashq := "\" . quot 53 | , json_value := quot . "{[01234567890-tfn" 54 | , json_value_or_array_closing := quot . "{[]01234567890-tfn" 55 | , object_key_or_object_closing := quot . "}" 56 | 57 | key := "" 58 | is_key := false 59 | root := {} 60 | stack := [root] 61 | next := json_value 62 | pos := 0 63 | 64 | while ((ch := SubStr(text, ++pos, 1)) != "") { 65 | if InStr(" `t`r`n", ch) 66 | continue 67 | if !InStr(next, ch, 1) 68 | this.ParseError(next, text, pos) 69 | 70 | holder := stack[1] 71 | is_array := holder.IsArray 72 | 73 | if InStr(",:", ch) { 74 | next := (is_key := !is_array && ch == ",") ? quot : json_value 75 | 76 | } else if InStr("}]", ch) { 77 | ObjRemoveAt(stack, 1) 78 | next := stack[1]==root ? "" : stack[1].IsArray ? ",]" : ",}" 79 | 80 | } else { 81 | if InStr("{[", ch) { 82 | ; Check if Array() is overridden and if its return value has 83 | ; the 'IsArray' property. If so, Array() will be called normally, 84 | ; otherwise, use a custom base object for arrays 85 | static json_array := Func("Array").IsBuiltIn || ![].IsArray ? {IsArray: true} : 0 86 | 87 | ; sacrifice readability for minor(actually negligible) performance gain 88 | (ch == "{") 89 | ? ( is_key := true 90 | , value := {} 91 | , next := object_key_or_object_closing ) 92 | ; ch == "[" 93 | : ( value := json_array ? new json_array : [] 94 | , next := json_value_or_array_closing ) 95 | 96 | ObjInsertAt(stack, 1, value) 97 | 98 | if (this.keys) 99 | this.keys[value] := [] 100 | 101 | } else { 102 | if (ch == quot) { 103 | i := pos 104 | while (i := InStr(text, quot,, i+1)) { 105 | value := StrReplace(SubStr(text, pos+1, i-pos-1), "\\", "\u005c") 106 | 107 | static tail := A_AhkVersion<"2" ? 0 : -1 108 | if (SubStr(value, tail) != "\") 109 | break 110 | } 111 | 112 | if (!i) 113 | this.ParseError("'", text, pos) 114 | 115 | value := StrReplace(value, "\/", "/") 116 | , value := StrReplace(value, bashq, quot) 117 | , value := StrReplace(value, "\b", "`b") 118 | , value := StrReplace(value, "\f", "`f") 119 | , value := StrReplace(value, "\n", "`n") 120 | , value := StrReplace(value, "\r", "`r") 121 | , value := StrReplace(value, "\t", "`t") 122 | 123 | pos := i ; update pos 124 | 125 | i := 0 126 | while (i := InStr(value, "\",, i+1)) { 127 | if !(SubStr(value, i+1, 1) == "u") 128 | this.ParseError("\", text, pos - StrLen(SubStr(value, i+1))) 129 | 130 | uffff := Abs("0x" . SubStr(value, i+2, 4)) 131 | if (A_IsUnicode || uffff < 0x100) 132 | value := SubStr(value, 1, i-1) . Chr(uffff) . SubStr(value, i+6) 133 | } 134 | 135 | if (is_key) { 136 | key := value, next := ":" 137 | continue 138 | } 139 | 140 | } else { 141 | value := SubStr(text, pos, i := RegExMatch(text, "[\]\},\s]|$",, pos)-pos) 142 | 143 | static number := "number", integer :="integer" 144 | if value is %number% 145 | { 146 | if value is %integer% 147 | value += 0 148 | } 149 | else if (value == "true" || value == "false") 150 | value := %value% + 0 151 | else if (value == "null") 152 | value := "" 153 | else 154 | ; we can do more here to pinpoint the actual culprit 155 | ; but that's just too much extra work. 156 | this.ParseError(next, text, pos, i) 157 | 158 | pos += i-1 159 | } 160 | 161 | next := holder==root ? "" : is_array ? ",]" : ",}" 162 | } ; If InStr("{[", ch) { ... } else 163 | 164 | is_array? key := ObjPush(holder, value) : holder[key] := value 165 | 166 | if (this.keys && this.keys.HasKey(holder)) 167 | this.keys[holder].Push(key) 168 | } 169 | 170 | } ; while ( ... ) 171 | 172 | return this.rev ? this.Walk(root, "") : root[""] 173 | } 174 | 175 | ParseError(expect, ByRef text, pos, len:=1) 176 | { 177 | static quot := Chr(34), qurly := quot . "}" 178 | 179 | line := StrSplit(SubStr(text, 1, pos), "`n", "`r").Length() 180 | col := pos - InStr(text, "`n",, -(StrLen(text)-pos+1)) 181 | msg := Format("{1}`n`nLine:`t{2}`nCol:`t{3}`nChar:`t{4}" 182 | , (expect == "") ? "Extra data" 183 | : (expect == "'") ? "Unterminated string starting at" 184 | : (expect == "\") ? "Invalid \escape" 185 | : (expect == ":") ? "Expecting ':' delimiter" 186 | : (expect == quot) ? "Expecting object key enclosed in double quotes" 187 | : (expect == qurly) ? "Expecting object key enclosed in double quotes or object closing '}'" 188 | : (expect == ",}") ? "Expecting ',' delimiter or object closing '}'" 189 | : (expect == ",]") ? "Expecting ',' delimiter or array closing ']'" 190 | : InStr(expect, "]") ? "Expecting JSON value or array closing ']'" 191 | : "Expecting JSON value(string, number, true, false, null, object or array)" 192 | , line, col, pos) 193 | 194 | static offset := A_AhkVersion<"2" ? -3 : -4 195 | throw Exception(msg, offset, SubStr(text, pos, len)) 196 | } 197 | 198 | Walk(holder, key) 199 | { 200 | value := holder[key] 201 | if IsObject(value) { 202 | for i, k in this.keys[value] { 203 | ; check if ObjHasKey(value, k) ?? 204 | v := this.Walk(value, k) 205 | if (v != JSON.Undefined) 206 | value[k] := v 207 | else 208 | ObjDelete(value, k) 209 | } 210 | } 211 | 212 | return this.rev.Call(holder, key, value) 213 | } 214 | } 215 | 216 | /** 217 | * Method: Dump 218 | * Converts an AHK value into a JSON string 219 | * Syntax: 220 | * str := JSON.Dump( value [, replacer, space ] ) 221 | * Parameter(s): 222 | * str [retval] - JSON representation of an AHK value 223 | * value [in] - any value(object, string, number) 224 | * replacer [in, opt] - function object, similar to JavaScript's 225 | * JSON.stringify() 'replacer' parameter 226 | * space [in, opt] - similar to JavaScript's JSON.stringify() 227 | * 'space' parameter 228 | */ 229 | class Dump extends JSON.Functor 230 | { 231 | Call(self, value, replacer:="", space:="") 232 | { 233 | this.rep := IsObject(replacer) ? replacer : "" 234 | 235 | this.gap := "" 236 | if (space) { 237 | static integer := "integer" 238 | if space is %integer% 239 | Loop, % ((n := Abs(space))>10 ? 10 : n) 240 | this.gap .= " " 241 | else 242 | this.gap := SubStr(space, 1, 10) 243 | 244 | this.indent := "`n" 245 | } 246 | 247 | return this.Str({"": value}, "") 248 | } 249 | 250 | Str(holder, key) 251 | { 252 | value := holder[key] 253 | 254 | if (this.rep) 255 | value := this.rep.Call(holder, key, ObjHasKey(holder, key) ? value : JSON.Undefined) 256 | 257 | if IsObject(value) { 258 | ; Check object type, skip serialization for other object types such as 259 | ; ComObject, Func, BoundFunc, FileObject, RegExMatchObject, Property, etc. 260 | static type := A_AhkVersion<"2" ? "" : Func("Type") 261 | if (type ? type.Call(value) == "Object" : ObjGetCapacity(value) != "") { 262 | if (this.gap) { 263 | stepback := this.indent 264 | this.indent .= this.gap 265 | } 266 | 267 | is_array := value.IsArray 268 | ; Array() is not overridden, rollback to old method of 269 | ; identifying array-like objects. Due to the use of a for-loop 270 | ; sparse arrays such as '[1,,3]' are detected as objects({}). 271 | if (!is_array) { 272 | for i in value 273 | is_array := i == A_Index 274 | until !is_array 275 | } 276 | 277 | str := "" 278 | if (is_array) { 279 | Loop, % value.Length() { 280 | if (this.gap) 281 | str .= this.indent 282 | 283 | v := this.Str(value, A_Index) 284 | str .= (v != "") ? v . "," : "null," 285 | } 286 | } else { 287 | colon := this.gap ? ": " : ":" 288 | for k in value { 289 | v := this.Str(value, k) 290 | if (v != "") { 291 | if (this.gap) 292 | str .= this.indent 293 | 294 | str .= this.Quote(k) . colon . v . "," 295 | } 296 | } 297 | } 298 | 299 | if (str != "") { 300 | str := RTrim(str, ",") 301 | if (this.gap) 302 | str .= stepback 303 | } 304 | 305 | if (this.gap) 306 | this.indent := stepback 307 | 308 | return is_array ? "[" . str . "]" : "{" . str . "}" 309 | } 310 | 311 | } else ; is_number ? value : "value" 312 | return ObjGetCapacity([value], 1)=="" ? value : this.Quote(value) 313 | } 314 | 315 | Quote(string) 316 | { 317 | static quot := Chr(34), bashq := "\" . quot 318 | 319 | if (string != "") { 320 | string := StrReplace(string, "\", "\\") 321 | ; , string := StrReplace(string, "/", "\/") ; optional in ECMAScript 322 | , string := StrReplace(string, quot, bashq) 323 | , string := StrReplace(string, "`b", "\b") 324 | , string := StrReplace(string, "`f", "\f") 325 | , string := StrReplace(string, "`n", "\n") 326 | , string := StrReplace(string, "`r", "\r") 327 | , string := StrReplace(string, "`t", "\t") 328 | 329 | static rx_escapable := A_AhkVersion<"2" ? "O)[^\x20-\x7e]" : "[^\x20-\x7e]" 330 | while RegExMatch(string, rx_escapable, m) 331 | string := StrReplace(string, m.Value, Format("\u{1:04x}", Ord(m.Value))) 332 | } 333 | 334 | return quot . string . quot 335 | } 336 | } 337 | 338 | /** 339 | * Property: Undefined 340 | * Proxy for 'undefined' type 341 | * Syntax: 342 | * undefined := JSON.Undefined 343 | * Remarks: 344 | * For use with reviver and replacer functions since AutoHotkey does not 345 | * have an 'undefined' type. Returning blank("") or 0 won't work since these 346 | * can't be distnguished from actual JSON values. This leaves us with objects. 347 | * Replacer() - the caller may return a non-serializable AHK objects such as 348 | * ComObject, Func, BoundFunc, FileObject, RegExMatchObject, and Property to 349 | * mimic the behavior of returning 'undefined' in JavaScript but for the sake 350 | * of code readability and convenience, it's better to do 'return JSON.Undefined'. 351 | * Internally, the property returns a ComObject with the variant type of VT_EMPTY. 352 | */ 353 | Undefined[] 354 | { 355 | get { 356 | static empty := {}, vt_empty := ComObject(0, &empty, 1) 357 | return vt_empty 358 | } 359 | } 360 | 361 | class Functor 362 | { 363 | __Call(method, ByRef arg, args*) 364 | { 365 | ; When casting to Call(), use a new instance of the "function object" 366 | ; so as to avoid directly storing the properties(used across sub-methods) 367 | ; into the "function object" itself. 368 | if IsObject(method) 369 | return (new this).Call(method, arg, args*) 370 | else if (method == "") 371 | return (new this).Call(arg, args*) 372 | } 373 | } 374 | } -------------------------------------------------------------------------------- /Lib/Logging.ahk: -------------------------------------------------------------------------------- 1 | if (build_status != "release") 2 | { 3 | SmartStartConsole() 4 | Logging(1,"opened debug console") 5 | } 6 | 7 | Logging(status,text) 8 | { 9 | if (status = 1) 10 | { 11 | out = [LOG]%A_DD%.%A_MM%.%A_YYYY% - %A_Hour%:%A_Min%:%A_Sec% - %text%`n 12 | puts(out) 13 | FileAppend, %out%, %A_AppData%\FET Loader\logs.log 14 | } 15 | if (status = 2) 16 | { 17 | out = [ERR]%A_DD%.%A_MM%.%A_YYYY% - %A_Hour%:%A_Min%:%A_Sec% - %text%`n 18 | puts(out) 19 | FileAppend, %out%, %A_AppData%\FET Loader\logs.log 20 | } 21 | } 22 | 23 | 24 | OnError("LogError") 25 | 26 | LogError(exception) 27 | { 28 | Logging(2, "Error on line " exception.Line ": " exception.Message) 29 | MsgBox, 16, %Script%, %string_error% 30 | ExitApp 31 | } -------------------------------------------------------------------------------- /Lib/OTA.ahk: -------------------------------------------------------------------------------- 1 | #include Lib\JSON.ahk 2 | #include Lib\Logging.ahk 3 | #include Lib\lang_strings.ahk 4 | 5 | class OTA 6 | { 7 | checkupd() 8 | { 9 | UrlDownloadToFile, https://gitlab.com/api/v4/projects/25081260/repository/files/version.json/raw?ref=master, %A_AppData%\FET Loader\json.tmp 10 | FileRead, jsonStr, %A_AppData%\FET Loader\json.tmp 11 | VarSetCapacity(ansi, StrPut(jsonStr, "CP1251")), StrPut(jsonStr, &ansi, "CP1251") 12 | jsonStr := StrGet(&ansi, "UTF-8") 13 | parsed := JSON.Load(jsonStr) 14 | latest_release := parsed.version 15 | change_log := parsed.changelog 16 | download_url := parsed.downloadurl 17 | if (version != latest_release) 18 | { 19 | Logging(1,"A new version is available. Latest version: " latest_release) 20 | MsgBox, 68, %script% | %string_new_version%, %latest_release% | %string_changelog%`n`n%change_log%`n`n`n%string_want_download% 21 | IfMsgBox, Yes 22 | OTA.download(download_url,latest_release) 23 | } 24 | } 25 | download(download_url,tag) 26 | { 27 | UrlDownloadToFile, %download_url%, %A_ScriptDir%\loader-%tag%.exe 28 | Run, %A_ScriptDir%\loader-%tag%.exe 29 | ExitApp 30 | } 31 | } -------------------------------------------------------------------------------- /Lib/functions.ahk: -------------------------------------------------------------------------------- 1 | ConfigOpen() ;for old gui 2 | { 3 | run, %A_AppData%\FET Loader\config.ini 4 | } 5 | ShowAbout(neutron) 6 | { 7 | Logging(1,"Building About GUI...") 8 | Gui, About:New 9 | Gui, About:Font, s9 10 | Gui, About:Show, w315 h155, %script% %version% | About 11 | Gui, About:Add, Text, x112 y9 w100 h30 +Center, %script% | %bruhshit% 12 | Gui, About:Add, Text, x59 y37 w200 h30 +Center, FET лоадер для FET пацанов от разработчиков из FETьмы 13 | Gui, About:Add, Link, x60 y69 w200 h20 +Center, Разработчики: clownless, toxyxd и rf0x3d 14 | Gui, About:Add, Link, x50 y115 w100 h20 +Center, Gitlab 15 | Gui, About:Add, Link, x140 y115 w100 h20 +Center, Telegram 16 | Gui, About:Add, Link, x230 y115 w100 h20 +Center, Site 17 | Logging(1,"done.") 18 | return 19 | } 20 | Bypass(neutron) 21 | { 22 | IfNotExist, %A_AppData%\FET Loader\vac-bypass.exe 23 | { 24 | Logging(1,"Downloading vac-bypass.exe...") 25 | UrlDownloadToFile, https://gitlab.com/api/v4/projects/25080350/repository/files/vac-bypass.exe/raw?ref=main, %A_AppData%\FET Loader\vac-bypass.exe 26 | Logging(1, "done.") 27 | } 28 | Logging(1, "Running bypass...") 29 | Run, %A_AppData%\FET Loader\vac-bypass.exe 30 | Logging(1, "done.") 31 | return 32 | } 33 | OpenSource(neutron) ; костыли по другому не работают 34 | { 35 | Run, https://gitlab.com/FETLoader/FETLoader 36 | } 37 | Inject(neutron, event) 38 | { 39 | if (build_status != "release") 40 | { 41 | MsgBox % "[DEBUG] Trying to inject " event 42 | } 43 | Process, Wait, csgo.exe, 1 44 | PID = %ErrorLevel% 45 | 46 | if (PID == 0) 47 | { 48 | Logging(2,"csgo process not found. promting to start.") 49 | MsgBox, 4, %script%, %string_pid0% 50 | IfMsgBox, Yes 51 | try { 52 | Logging(1,"Starting csgo...") 53 | Run, steam://run/730 54 | Return 55 | } catch e { 56 | MsgBox, 0, %script%, %string_nosteam% 57 | Logging(2,"steam not found") 58 | return 59 | } 60 | IfMsgBox, No 61 | Return 62 | } 63 | if (PID > 0 and event != "Custom" and event != "CornerStone") ;govnokod mne poxui 64 | { 65 | IniRead, dll, %A_AppData%\FET Loader\cheats.ini, cheats, %event% 66 | IniRead, forceLoadLibrary, %A_AppData%\FET Loader\config.ini, settings, forceLoadLibrary 67 | IniRead, injectMethod, %A_AppData%\FET Loader\cheats.ini, inject, %event% 68 | if (forceLoadLibrary = "true") 69 | { 70 | injectMethod := "LoadLibrary" 71 | msgbox, force ll 72 | } 73 | Logging(1,"Initialized dll injection. Method: " injectMethod ". DLL: " dll) 74 | 75 | Loop 3 76 | { 77 | IfNotExist, %A_AppData%\FET Loader\%dll% 78 | { 79 | Logging(1,"Trying to download " dll " from https://gitlab.com/FETLoader/dll-repo/raw/main/" dll " to " A_AppData "\FET Loader\" dll) 80 | UrlDownloadToFile, https://gitlab.com/api/v4/projects/25080350/repository/files/%dll%/raw?ref=main, %A_AppData%\FET Loader\%dll% 81 | if (ErrorLevel = "0") 82 | { 83 | Logging(1, "done.") 84 | } 85 | else 86 | { 87 | timesretrying = times - 1 88 | Logging(0, "something went wrong. retrying (" timesretrying " times") 89 | 90 | } 91 | 92 | } 93 | } 94 | IfNotExist, %A_AppData%\FET Loader\emb.exe 95 | { 96 | Logging(1,"Downloading emb.exe...") 97 | UrlDownloadToFile, https://gitlab.com/api/v4/projects/25080350/repository/files/emb.exe/raw?ref=main, %A_AppData%\FET Loader\emb.exe 98 | Logging(1, "done.") 99 | } 100 | if (injectMethod = "loadlibrary") 101 | { 102 | Logging(1,"Running emb...") 103 | CmdLine = emb.exe 104 | RunCon(CmdLine, Input, Output) 105 | if (build_status != "release") 106 | { 107 | MsgBox, [DEBUG] %Output% 108 | } 109 | Logging(1,"EMB LOG `n" Output) 110 | Loop, Parse, Output, `n 111 | { 112 | IfInString, Output, Can't init ntdll 113 | { 114 | MsgBox, 4, %script%, %string_cant_init_ntdll% 115 | Logging(1,"Showed msgbox") 116 | IfMsgBox, Yes 117 | { 118 | Logging(1,"Redirect to download vcrhybrid") 119 | Run, https://fetloader.xyz/VCRHyb64.exe 120 | } 121 | return 122 | } 123 | } 124 | Logging(1, "done.") 125 | Sleep, 1500 126 | TO_LOAD = %A_AppData%\FET Loader\%dll% 127 | Logging(1,"Injecting " TO_LOAD "...") 128 | Inject_Dll(PID,TO_LOAD,1) 129 | Logging(1,"Injected " TO_LOAD) 130 | Return 131 | } 132 | if (injectMethod = "manualmap") 133 | { 134 | TO_LOAD = %A_AppData%\FET Loader\%dll% 135 | Logging(1,"Injecting " TO_LOAD "...") 136 | Inject_Dll(PID,TO_LOAD,2) 137 | Logging(1,"Injected " TO_LOAD) 138 | Return 139 | } 140 | } 141 | if (PID > 0 and event = "Custom") 142 | { 143 | IniRead, injectMethod, %A_AppData%\FET Loader\cheats.ini, inject, %event% 144 | IniRead, forceLoadLibrary, %A_AppData%\FET Loader\config.ini, settings, forceLoadLibrary 145 | if (forceLoadLibrary = "true") 146 | { 147 | injectMethod := "LoadLibrary" 148 | } 149 | MsgBox, 4, %script%, %string_warning_custom_dll% 150 | IfMsgBox, Yes 151 | { 152 | Logging(1,"Initialized custom injection. Method: " injectMethod) 153 | FileSelectFile, DLL, 3, , %script% | Select DLL, DLL (*.dll) 154 | if (!DLL) 155 | { 156 | Logging(1,"DLL not selected") 157 | MsgBox, 0, %script%, %string_no_dll% 158 | } 159 | else 160 | { 161 | Logging(1,"Injecting custom dll...") 162 | if (injectMethod = "standart") 163 | { 164 | Logging(1,"Running emb...") 165 | CmdLine = emb.exe 166 | RunCon(CmdLine, Input, Output) 167 | if (build_status != "release") 168 | { 169 | MsgBox, [DEBUG] %Output% 170 | } 171 | Loop, Parse, Output, `n 172 | { 173 | IfInString, Output, Can't init ntdll 174 | { 175 | MsgBox, 4, %script%, %string_cant_init_ntdll% 176 | Logging(1,"Showed msgbox") 177 | IfMsgBox, Yes 178 | { 179 | Logging(1,"Redirect to download vcrhybrid") 180 | Run, https://fetloader.xyz/VCRHyb64.exe 181 | } 182 | return 183 | } 184 | } 185 | Logging(1, "done.") 186 | Sleep, 1500 187 | Inject_Dll(PID,DLL,1) 188 | Logging(1,"Injected custom dll") 189 | } 190 | if (injectMethod = "manualmap") 191 | { 192 | Sleep, 1500 193 | Inject_Dll(PID,DLL,2) 194 | Logging(1,"Injected custom dll") 195 | } 196 | 197 | } 198 | } 199 | } 200 | if (PID > 0 and event = "CornerStone") 201 | { 202 | Run, %A_AppData%\CornerStone\bin\run.cmd 203 | MsgBox, 0, %script%, %string_success% 204 | } 205 | } 206 | RunCon(CmdLine, Input, ByRef Output) 207 | { 208 | static BufSizeChar := 1024, hParent := 0 209 | static Show := 0, Flags := 0x101 ; STARTF_USESTDHANDLES | STARTF_USESHOWWINDOW 210 | static Buf, BufSizeByte, ProcessInfo, StartupInfo, PipeAttribs 211 | static piSize, siSize, paSize, flOffset, shOffset, ihOffset 212 | static inOffset, outOffset, errOffset, thrOffset 213 | If (!hParent) { 214 | BufSizeByte := A_IsUnicode ? BufSizeChar * 2 : BufSizeChar 215 | If (A_PtrSize = 8) { 216 | piSize := 24, siSize := 104, paSize = 24 217 | flOffset := 60, shOffset := 64, ihOffset := 16 218 | inOffset := 80, outOffset := 88, errOffset := 96 219 | thrOffset := 8 220 | } 221 | Else { 222 | piSize := 16, siSize := 68, paSize = 12 223 | flOffset := 44, shOffset := 48, ihOffset := 8 224 | inOffset := 56, outOffset := 60, errOffset := 64 225 | thrOffset := 4 226 | } 227 | VarSetCapacity(Buf, BufSizeByte, 0), VarSetCapacity(ProcessInfo, piSize, 0) 228 | VarSetCapacity(StartupInfo, siSize, 0), VarSetCapacity(PipeAttribs, paSize, 0) 229 | NumPut(siSize, StartupInfo, 0, "uint"), NumPut(Flags, StartupInfo, flOffset, "uint") 230 | NumPut(Show, StartupInfo, shOffset, "ushort") 231 | NumPut(paSize, PipeAttribs, 0, "uint"), NumPut(1, PipeAttribs, ihOffset, "int") 232 | hParent := DllCall("GetCurrentProcess", "ptr") 233 | } 234 | DllCall("CreatePipe", "ptr *", hRead1_tmp, "ptr *", hWrite2 235 | , "ptr", &PipeAttribs, "uint", 0) 236 | DllCall("CreatePipe", "ptr *", hRead2, "ptr *", hWrite1_tmp 237 | , "ptr", &PipeAttribs, "uint", 0) 238 | 239 | NumPut(hRead2, StartupInfo, inOffset, "ptr") 240 | NumPut(hWrite2, StartupInfo, outOffset, "ptr") 241 | NumPut(hWrite2, StartupInfo, errOffset, "ptr") 242 | 243 | DllCall("DuplicateHandle", "ptr", hParent, "ptr", hRead1_tmp 244 | , "ptr", hParent, "ptr *", hRead1 245 | , "uint", 0, "uint", 0 246 | , "uint", 2) ; DUPLICATE_SAME_ACCESS 247 | DllCall("CloseHandle", "ptr", hRead1_tmp) 248 | DllCall("DuplicateHandle", "ptr", hParent, "ptr", hWrite1_tmp 249 | , "ptr", hParent, "ptr *", hWrite1 250 | , "uint", 0, "uint", 0 251 | , "uint", 2) 252 | DllCall("CloseHandle", "ptr", hWrite1_tmp) 253 | 254 | DllCall("ExpandEnvironmentStrings", "str", CmdLine, "str", Buf, "uint", BufSizeChar) 255 | CmdLine := Buf 256 | Ret := DllCall("CreateProcess", "ptr", 0, "str", CmdLine, "ptr", 0, "ptr", 0 257 | , "uint", 1, "uint", 0, "ptr", 0, "ptr", 0 258 | , "ptr", &StartupInfo, "ptr", &ProcessInfo) 259 | If (!Ret) { 260 | MsgBox,, %script%, %string_failed_to_create_process% 261 | Logging(2,"RunCon: Failed to create process.") 262 | Output := "" 263 | Return 1 264 | } 265 | hChild := NumGet(ProcessInfo, 0, "ptr") 266 | DllCall("CloseHandle", "ptr", NumGet(ProcessInfo, thrOffset, "ptr")) 267 | DllCall("CloseHandle", "ptr", hRead2) 268 | DllCall("CloseHandle", "ptr", hWrite2) 269 | If (Input) { 270 | InLen := StrLen(Input) + 2 271 | VarSetCapacity(InBuf, InLen, 0) 272 | StrPut(Input . "`r`n", &InBuf, "cp866") 273 | DllCall("WriteFile", "ptr", hWrite1, "ptr", &InBuf, "uint", InLen 274 | , "uint *", BytesWritten, "uint", 0) 275 | } 276 | DllCall("CloseHandle", "ptr", hWrite1) 277 | Output := "" 278 | Loop { 279 | If not DllCall("ReadFile", "ptr", hRead1, "ptr", &Buf, "uint", BufSizeByte 280 | , "uint *", BytesRead, "uint", 0) 281 | Break 282 | NumPut(0, Buf, BytesRead, "Char") 283 | Output .= StrGet(&Buf, "cp866") 284 | } 285 | DllCall("CloseHandle", "ptr", hRead1) 286 | DllCall("GetExitCodeProcess", "ptr", hChild, "int *", ExitCode) 287 | DllCall("CloseHandle", "ptr", hChild) 288 | Return ExitCode 289 | } -------------------------------------------------------------------------------- /Lib/gh_injector.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clangremlini/fet-loader/755b3a49fd5e4d03d0dd7d002f4946c346dc2c7f/Lib/gh_injector.dll -------------------------------------------------------------------------------- /Lib/lang_strings.ahk: -------------------------------------------------------------------------------- 1 | ; compile with utf-8 2 | 3 | #Include Lib\Logging.ahk 4 | 5 | IfNotExist, %A_AppData%\FET Loader 6 | { 7 | Logging(1, "Creating folder...") 8 | FileCreateDir, %A_AppData%\FET Loader 9 | } 10 | IfNotExist, %A_AppData%\FET Loader\Web 11 | { 12 | FileCreateDir, %A_AppData%\FET Loader\Web 13 | } 14 | IfNotExist, %A_AppData%\FET Loader\config.ini 15 | { 16 | Logging(1, "Creating config file...") 17 | IniWrite, true, %A_AppData%\FET Loader\config.ini, settings, checkupdates 18 | IniWrite, false, %A_AppData%\FET Loader\config.ini, settings, oldgui 19 | Logging(1, "done.") 20 | } 21 | 22 | 23 | isConfigValue(A_AppData "\FET Loader\config.ini","settings","oldgui","false") 24 | isConfigValue(A_AppData "\FET Loader\config.ini","settings","checkupdates","true") 25 | isConfigValue(A_AppData "\FET Loader\config.ini","settings","forceLoadLibrary","false") 26 | 27 | 28 | 29 | isConfigValue(file,section,key,value) 30 | { 31 | IniRead, output_key, %file%, %section%, %key% 32 | if (output_key = "ERROR") 33 | { 34 | Logging(2,"Not found " key " in config. Updating config file") 35 | IniWrite, %value%, %file%, %section%, %key% 36 | } 37 | } 38 | 39 | IniRead, language, %A_AppData%\FET Loader\config.ini, settings, language 40 | 41 | setLang() 42 | { 43 | if (A_Language = "0809" or A_Language = "0409") ; en_UK and en_US 44 | IniWrite, en, %A_AppData%\FET Loader\config.ini, settings, language 45 | if (A_Language = "0419") ; ru_RU 46 | IniWrite, ru, %A_AppData%\FET Loader\config.ini, settings, language 47 | if (A_Language = "0422") ; ukr 48 | IniWrite, ukr, %A_AppData%\FET Loader\config.ini, settings, language 49 | } 50 | 51 | if (language = "ERROR") 52 | { 53 | setLang() 54 | } 55 | 56 | 57 | IniRead, language, %A_AppData%\FET Loader\config.ini, settings, language 58 | if (language = "en") 59 | { 60 | global string_load := "Load" 61 | global string_bypass := "Activate VAC bypass" 62 | global string_config := "Config" 63 | global string_about := "About" 64 | global string_pid0 := "No csgo.exe process found.`nDo you want to run the game?" 65 | global string_nosteam := "Install Steam, you retard." 66 | global string_success := "Cheat injected successfully!`nYou can close the loader now." 67 | global string_warning_custom_dll := "We're not gonna help you if your fucking system is gonna blow the fucking wine off it's not our fault. `nGot it?" 68 | global string_no_dll := "You didn't choose the DLL, so we've got nothing to inject." 69 | global string_new_version := "A new version is available." 70 | global string_want_download := "Want to download the update?" 71 | global string_changelog := "Changelog:" 72 | global string_unofficial_build := "You are using an unofficial loader build.`nWe decline any responsibility in case of infection of your system with any of the viruses." 73 | global string_outdated_os := "You are using an unsupported OS version. There will never be support for Windows 7. Please upgrade to Windows 10" 74 | global string_disclaimer := "If you've downloaded the loader from third-party sources, we decline all responsibility in case of infection of your system.`nMake sure that you downloaded the loader from trusted sources, such as: `nGitHub, official website fetloader.xyz or Telegram channel @ayeloader." 75 | global string_error := "An error occurred while executing the program. Details can be found in the log file." 76 | global string_20h2_warning := "On Windows version 2009/20H2, problems with the injection may occur. `nTo fix them, you need to (re-)install Microsoft Visual C++ Redistributable. `n`nWant to start downloading?" 77 | global string_cant_init_ntdll := "Important VC++ packages weren't found on your computer.`n`nDo you want to download them now?" 78 | global string_high_dpi := "You have a display scale other than 100%. The menu won't be displayed correctly." 79 | global string_failed_to_create_process := "Failed to create process." 80 | } 81 | if (language = "ru") 82 | { 83 | global string_load := "Заинжектить" 84 | global string_bypass := "Включить обход VAC" 85 | global string_config := "Настройки" 86 | global string_about := "Инфо" 87 | global string_pid0 := "Процесс csgo.exe не найден.`nЖелаете запустить игру?" 88 | global string_nosteam := "Установи Steam, клоун." 89 | global string_success := "Инжект прошел успешно!`nМожете закрыть лоадер, (если) он вам больше не нужен." 90 | global string_warning_custom_dll := "Мы ничем тебе не поможем, если твоя винда помрёт и/или ты подхватишь ратник+вымогателя.`nПонял?" 91 | global string_no_dll := "Ты не выбрал DLL, так что нам нечего инжектить." 92 | global string_new_version := "Доступна новая версия." 93 | global string_want_download := "Хотите загрузить обновление?" 94 | global string_changelog := "Список изменений:" 95 | global string_unofficial_build := "Вы используете неофициальную сборку лоадера.`nМы полностью снимаем с себя ответственность в случае заражения вашей системы." 96 | global string_outdated_os := "Вы используете неподдерживаемую версию ОС. Поддержки Windows 7 никогда не будет. Пожалуйста, обновитесь до Windows 10" 97 | global string_disclaimer := "Если вы загрузили лоадер из непроверенных источников, мы полностью снимаем с себя ответственность в случае заражения вашей системы.`nУбедитесь, что загрузили лоадер с проверенных источников, таких как: `nGitHub, официальный сайт fetloader.xyz, Telegram-канал @ayeloader." 98 | global string_error := "При выполнении программы произошла ошибка. Подробности можно найти в логфайле." 99 | global string_20h2_warning := "На версии Windows 2009/20H2 могут возникать проблемы с инжектом.`nДля того, чтобы исправить их, нужно (пере-)установить Microsoft Visual C++ Redistributable.`n`nХотите начать скачивание?" 100 | global string_cant_init_ntdll := "На вашем компьютере не были найдены пакеты VC++, необходимые для работы лоадера`n`nХотите загрузить сейчас?" 101 | global string_high_dpi := "На вашем ПК установлен масштаб дисплея, отличный от 100%. Меню может и будет отображаться неправильно." 102 | global string_failed_to_create_process := "Не удалось создать процесс." 103 | } 104 | if (language = "ukr") 105 | { 106 | global string_load := "З'їсти сало" 107 | global string_bypass := "Включити VAC bypass" 108 | global string_config := "Настройка" 109 | global string_about := "Інформація" 110 | global string_pid0 := "Процес csgo.exe не знайдено. Запустити?" 111 | global string_nosteam := "Встанови Steam, москаль." 112 | global string_success := "Інжект пройшов успішно" 113 | global string_warning_custom_dll := "Ми не будемо тобі допомагати якщо у тебе нахуй система полетить вінда нахуй злетить це не наша вина.'nзрозумів?" 114 | global string_no_dll := "Ти не вибрав DLL." 115 | global string_new_version := "Доступна нова версія." 116 | global string_want_download := "Хочете завантажити оновлення?" 117 | global string_changelog := "Список змін:" 118 | global string_unofficial_build := "Ви використовуєте неофіційну збірку лоадера. `nМи повністю знімаємо з себе відповідальність в разі зараження вашої системи будь-яким з вірусів." 119 | global string_outdated_os := "Ви використовуєте не підтримувану версію ОС. Підтримки Windows 7 ніколи не буде. Будь ласка оновіться до Windows 10" 120 | global string_disclaimer := "Якщо ви завантажили лоадер з неперевірених джерел - ми повністю знімаємо з себе відповідальність в разі зараження вашої системи будь-яким з вірусів.`nПереконайтеся що завантажили лоадер з перевірених джерел, таких як:`nGitHub, офіційний сайт fetloader.xyz, телеграм канал t.me/ayeloader" 121 | global string_error := "При виконанні програми сталася помилка. Подробиці можна знайти в логфайлів." 122 | global string_20h2_warning := "На версії Windows 2009/20H2 можуть виникати проблеми з інжектом.`nДля того щоб виправити їх, потрібно (пере-)встановити Microsoft Visual C++ Redistributable.`n`nХочете почати скачування?" 123 | global string_cant_init_ntdll := "На вашому комп'ютері не були знайдені пакети VC++ необхідні для роботи лоадера`n`nХотіте почати скачування?" 124 | global string_high_dpi := "Ваш комп'ютер налаштований на занадто велике значення масштабу. Меню може відображатися неправильно." 125 | global string_failed_to_create_process := "Не вдалося створити процес." 126 | } 127 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # moved to gitlab.com/FETLoader 2 | -------------------------------------------------------------------------------- /Web/css/buttons.css: -------------------------------------------------------------------------------- 1 | .btn-inject 2 | { 3 | position: absolute; 4 | bottom: 15px; 5 | right: 15px; 6 | width: 100px; 7 | height: 40px; 8 | background-color: #9b52be; 9 | outline-color: #9b52be; 10 | border-color: #9b52be; 11 | box-shadow: none; 12 | color: white; 13 | transition: all .3s; 14 | } 15 | 16 | .btn-inject:hover, .btn-inject.hover 17 | { 18 | color: #000; 19 | background-color: #f0547d; //d1ff82 20 | border-color: #D04D6F; 21 | transition: all .3s; 22 | transform: translateY(-3px); 23 | box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2); 24 | } 25 | 26 | .btn-inject:disabled{ 27 | background-color: transparent; 28 | outline-color: #abacae; 29 | border-color: #abacae; 30 | box-shadow: none!important; 31 | color: #abacae; 32 | filter: brightness(66%); 33 | transform: none; 34 | } 35 | 36 | .btn-inject:focus, .btn-inject.focus 37 | { 38 | color: #fff; 39 | background-color: #D04D6F; 40 | border-color: #D04D6F; 41 | transform: translateY(-2px); 42 | } 43 | 44 | .btn-bypass 45 | { 46 | position: absolute; 47 | bottom: 143px; 48 | right: 15px; 49 | width: 100px; 50 | height: 60px; 51 | color: #28bca3; 52 | background-color: transparent; 53 | border-color: #28bca3; 54 | transition: all .3s; 55 | } 56 | .btn-bypass:hover 57 | { 58 | color: #000; 59 | background-color: #89ffdd; 60 | border-color: #89ffdd; 61 | transform: translateY(-3px); 62 | box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2); 63 | } 64 | 65 | .btn-bypass:focus, .btn-bypass.focus 66 | { 67 | color: #fff; 68 | background-color: #43d6b5; 69 | border-color: #43d6b5; 70 | transform: translateY(6px); 71 | /* box-shadow: 0 0 0 0.0rem rgba(58, 176, 195, 0.5); */ 72 | } 73 | 74 | .btn-theme 75 | { 76 | position: absolute; 77 | bottom: 213px; 78 | right: 15px; 79 | width: 100px; 80 | height: 60px; 81 | color: #3689e6; 82 | background-color: transparent; 83 | border-color: #3689e6; 84 | transition: all .3s; 85 | } 86 | .btn-theme:hover 87 | { 88 | color: #000; 89 | background-color: #8cd5ff; 90 | border-color: #8cd5ff; 91 | transform: translateY(-3px); 92 | box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2); 93 | } 94 | 95 | .btn-theme:focus, .btn-theme.focus 96 | { 97 | color: #fff; 98 | background-color: #64baff; 99 | border-color: #64baff; 100 | transform: translateY(6px); 101 | box-shadow: 0 0 0 0.0rem #64baff; 102 | } 103 | 104 | 105 | 106 | .btn-outline-primary { 107 | outline-color: #9b52be; 108 | border-color: #9b52be; 109 | box-shadow: none!important; 110 | color: #FFFFFF; 111 | } 112 | 113 | .btn-outline-primary:hover { 114 | background-color: #9b52be; 115 | border-color: #9b52be; 116 | color: #000000; 117 | box-shadow: none!important; 118 | } 119 | 120 | /*.btn-outline-primary:focus */ 121 | .btn-outline-primary:focus, .btn-outline-primary:active { 122 | background-color: #F94D35; 123 | color: #ffffff; 124 | box-shadow: none!important; 125 | border-color: #F94D35; 126 | } 127 | 128 | @keyframes moveInBottom { 129 | 0% { 130 | opacity: 0; 131 | transform: translateY(30px); 132 | } 133 | 134 | 100% { 135 | opacity: 1; 136 | transform: translateY(0px); 137 | } 138 | } -------------------------------------------------------------------------------- /Web/css/fonts/GothamPro-Medium.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clangremlini/fet-loader/755b3a49fd5e4d03d0dd7d002f4946c346dc2c7f/Web/css/fonts/GothamPro-Medium.eot -------------------------------------------------------------------------------- /Web/css/fonts/GothamPro-Medium.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clangremlini/fet-loader/755b3a49fd5e4d03d0dd7d002f4946c346dc2c7f/Web/css/fonts/GothamPro-Medium.ttf -------------------------------------------------------------------------------- /Web/css/fonts/GothamPro-Medium.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clangremlini/fet-loader/755b3a49fd5e4d03d0dd7d002f4946c346dc2c7f/Web/css/fonts/GothamPro-Medium.woff -------------------------------------------------------------------------------- /Web/css/shit.css: -------------------------------------------------------------------------------- 1 | .detect-status{ 2 | position: absolute; 3 | left: 135px; 4 | top: -8px; 5 | white-space: nowrap; 6 | } 7 | 8 | .cheat-info{ 9 | position: absolute; 10 | left: 135px; 11 | width: 230px; 12 | top: 50px; 13 | white-space: pre-line; 14 | word-wrap: break-all; 15 | } 16 | 17 | * { 18 | cursor: default; 19 | -webkit-touch-callout: none; 20 | -webkit-user-select: none; 21 | -khtml-user-select: none; 22 | -moz-user-select: none; 23 | -ms-user-select: none; 24 | user-select: none; 25 | } 26 | 27 | 28 | 29 | body { 30 | background: #333333; 31 | color: #17a2b8; 32 | min-height: 100vh; 33 | font-family: 'Gotham Pro Medium'; 34 | } -------------------------------------------------------------------------------- /Web/css/stylesheet.css: -------------------------------------------------------------------------------- 1 | @font-face { 2 | font-family: 'Gotham Pro Medium'; 3 | src: url('./fonts/GothamPro-Medium.eot'); 4 | src: local('Gotham Pro Medium'), local('GothamPro-Medium'), 5 | url('./fonts/GothamPro-Medium.eot?#iefix') format('embedded-opentype'), 6 | url('./fonts/GothamPro-Medium.woff') format('woff'), 7 | url('./fonts/GothamPro-Medium.ttf') format('truetype'); 8 | font-weight: 500; 9 | font-style: normal; 10 | } 11 | 12 | /* 125% dpi fix */ 13 | @media (min-resolution: 120dpi) { 14 | html { 15 | font-size: 80%; 16 | } 17 | } 18 | 19 | @media (min-resolution: 144dpi) { 20 | html { 21 | font-size: 67%; 22 | } 23 | } 24 | 25 | @media (min-resolution: 168dpi) { 26 | html { 27 | font-size: 57%; 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /Web/js/iniparser.js: -------------------------------------------------------------------------------- 1 | function getText() { 2 | var xmlHttp = new XMLHttpRequest(); 3 | var linktomainfile = "https://gitlab.com/api/v4/projects/25080350/repository/files/cheats.ini/raw?ref=main"; 4 | xmlHttp.open("GET", linktomainfile, false); 5 | xmlHttp.send(null); 6 | return xmlHttp.responseText; 7 | } 8 | 9 | function parseINIString(data) { 10 | var regex = { 11 | section: /^\s*\[\s*([^\]]*)\s*\]\s*$/, 12 | param: /^\s*([\w\.\-\_]+)\s*=\s*(.*?)\s*$/, 13 | comment: /^\s*;.*$/ 14 | }; 15 | var value = {}; 16 | var lines = data.split(/\r\n|\r|\n/); 17 | var section = null; 18 | for (x = 0; x < lines.length; x++) { 19 | if (regex.comment.test(lines[x])) { 20 | return; 21 | } else if (regex.param.test(lines[x])) { 22 | var match = lines[x].match(regex.param); 23 | if (section) { 24 | value[section][match[1]] = match[2]; 25 | } else { 26 | value[match[1]] = match[2]; 27 | } 28 | } else if (regex.section.test(lines[x])) { 29 | var match = lines[x].match(regex.section); 30 | value[match[1]] = {}; 31 | section = match[1]; 32 | } else if (lines.length == 0 && section) {//changed line to lines to fix bug. 33 | section = null; 34 | }; 35 | } 36 | return value; 37 | } -------------------------------------------------------------------------------- /Web/js/popper.min.js: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright (C) Federico Zivolo 2019 3 | Distributed under the MIT License (license terms are at http://opensource.org/licenses/MIT). 4 | */(function(e,t){'object'==typeof exports&&'undefined'!=typeof module?module.exports=t():'function'==typeof define&&define.amd?define(t):e.Popper=t()})(this,function(){'use strict';function e(e){return e&&'[object Function]'==={}.toString.call(e)}function t(e,t){if(1!==e.nodeType)return[];var o=e.ownerDocument.defaultView,n=o.getComputedStyle(e,null);return t?n[t]:n}function o(e){return'HTML'===e.nodeName?e:e.parentNode||e.host}function n(e){if(!e)return document.body;switch(e.nodeName){case'HTML':case'BODY':return e.ownerDocument.body;case'#document':return e.body;}var i=t(e),r=i.overflow,p=i.overflowX,s=i.overflowY;return /(auto|scroll|overlay)/.test(r+s+p)?e:n(o(e))}function i(e){return e&&e.referenceNode?e.referenceNode:e}function r(e){return 11===e?re:10===e?pe:re||pe}function p(e){if(!e)return document.documentElement;for(var o=r(10)?document.body:null,n=e.offsetParent||null;n===o&&e.nextElementSibling;)n=(e=e.nextElementSibling).offsetParent;var i=n&&n.nodeName;return i&&'BODY'!==i&&'HTML'!==i?-1!==['TH','TD','TABLE'].indexOf(n.nodeName)&&'static'===t(n,'position')?p(n):n:e?e.ownerDocument.documentElement:document.documentElement}function s(e){var t=e.nodeName;return'BODY'!==t&&('HTML'===t||p(e.firstElementChild)===e)}function d(e){return null===e.parentNode?e:d(e.parentNode)}function a(e,t){if(!e||!e.nodeType||!t||!t.nodeType)return document.documentElement;var o=e.compareDocumentPosition(t)&Node.DOCUMENT_POSITION_FOLLOWING,n=o?e:t,i=o?t:e,r=document.createRange();r.setStart(n,0),r.setEnd(i,0);var l=r.commonAncestorContainer;if(e!==l&&t!==l||n.contains(i))return s(l)?l:p(l);var f=d(e);return f.host?a(f.host,t):a(e,d(t).host)}function l(e){var t=1=o.clientWidth&&n>=o.clientHeight}),l=0a[e]&&!t.escapeWithReference&&(n=Q(f[o],a[e]-('right'===e?f.width:f.height))),ae({},o,n)}};return l.forEach(function(e){var t=-1===['left','top'].indexOf(e)?'secondary':'primary';f=le({},f,m[t](e))}),e.offsets.popper=f,e},priority:['left','right','top','bottom'],padding:5,boundariesElement:'scrollParent'},keepTogether:{order:400,enabled:!0,fn:function(e){var t=e.offsets,o=t.popper,n=t.reference,i=e.placement.split('-')[0],r=Z,p=-1!==['top','bottom'].indexOf(i),s=p?'right':'bottom',d=p?'left':'top',a=p?'width':'height';return o[s]r(n[s])&&(e.offsets.popper[d]=r(n[s])),e}},arrow:{order:500,enabled:!0,fn:function(e,o){var n;if(!K(e.instance.modifiers,'arrow','keepTogether'))return e;var i=o.element;if('string'==typeof i){if(i=e.instance.popper.querySelector(i),!i)return e;}else if(!e.instance.popper.contains(i))return console.warn('WARNING: `arrow.element` must be child of its popper element!'),e;var r=e.placement.split('-')[0],p=e.offsets,s=p.popper,d=p.reference,a=-1!==['left','right'].indexOf(r),l=a?'height':'width',f=a?'Top':'Left',m=f.toLowerCase(),h=a?'left':'top',c=a?'bottom':'right',u=S(i)[l];d[c]-us[c]&&(e.offsets.popper[m]+=d[m]+u-s[c]),e.offsets.popper=g(e.offsets.popper);var b=d[m]+d[l]/2-u/2,w=t(e.instance.popper),y=parseFloat(w['margin'+f],10),E=parseFloat(w['border'+f+'Width'],10),v=b-e.offsets.popper[m]-y-E;return v=ee(Q(s[l]-u,v),0),e.arrowElement=i,e.offsets.arrow=(n={},ae(n,m,$(v)),ae(n,h,''),n),e},element:'[x-arrow]'},flip:{order:600,enabled:!0,fn:function(e,t){if(W(e.instance.modifiers,'inner'))return e;if(e.flipped&&e.placement===e.originalPlacement)return e;var o=v(e.instance.popper,e.instance.reference,t.padding,t.boundariesElement,e.positionFixed),n=e.placement.split('-')[0],i=T(n),r=e.placement.split('-')[1]||'',p=[];switch(t.behavior){case ce.FLIP:p=[n,i];break;case ce.CLOCKWISE:p=G(n);break;case ce.COUNTERCLOCKWISE:p=G(n,!0);break;default:p=t.behavior;}return p.forEach(function(s,d){if(n!==s||p.length===d+1)return e;n=e.placement.split('-')[0],i=T(n);var a=e.offsets.popper,l=e.offsets.reference,f=Z,m='left'===n&&f(a.right)>f(l.left)||'right'===n&&f(a.left)f(l.top)||'bottom'===n&&f(a.top)f(o.right),g=f(a.top)f(o.bottom),b='left'===n&&h||'right'===n&&c||'top'===n&&g||'bottom'===n&&u,w=-1!==['top','bottom'].indexOf(n),y=!!t.flipVariations&&(w&&'start'===r&&h||w&&'end'===r&&c||!w&&'start'===r&&g||!w&&'end'===r&&u),E=!!t.flipVariationsByContent&&(w&&'start'===r&&c||w&&'end'===r&&h||!w&&'start'===r&&u||!w&&'end'===r&&g),v=y||E;(m||b||v)&&(e.flipped=!0,(m||b)&&(n=p[d+1]),v&&(r=z(r)),e.placement=n+(r?'-'+r:''),e.offsets.popper=le({},e.offsets.popper,C(e.instance.popper,e.offsets.reference,e.placement)),e=P(e.instance.modifiers,e,'flip'))}),e},behavior:'flip',padding:5,boundariesElement:'viewport',flipVariations:!1,flipVariationsByContent:!1},inner:{order:700,enabled:!1,fn:function(e){var t=e.placement,o=t.split('-')[0],n=e.offsets,i=n.popper,r=n.reference,p=-1!==['left','right'].indexOf(o),s=-1===['top','left'].indexOf(o);return i[p?'left':'top']=r[o]-(s?i[p?'width':'height']:0),e.placement=T(t),e.offsets.popper=g(i),e}},hide:{order:800,enabled:!0,fn:function(e){if(!K(e.instance.modifiers,'hide','preventOverflow'))return e;var t=e.offsets.reference,o=D(e.instance.modifiers,function(e){return'preventOverflow'===e.name}).boundaries;if(t.bottomo.right||t.top>o.bottom||t.rightwindow.devicePixelRatio||!fe),c='bottom'===o?'top':'bottom',g='right'===n?'left':'right',b=B('transform');if(d='bottom'==c?'HTML'===l.nodeName?-l.clientHeight+h.bottom:-f.height+h.bottom:h.top,s='right'==g?'HTML'===l.nodeName?-l.clientWidth+h.right:-f.width+h.right:h.left,a&&b)m[b]='translate3d('+s+'px, '+d+'px, 0)',m[c]=0,m[g]=0,m.willChange='transform';else{var w='bottom'==c?-1:1,y='right'==g?-1:1;m[c]=d*w,m[g]=s*y,m.willChange=c+', '+g}var E={"x-placement":e.placement};return e.attributes=le({},E,e.attributes),e.styles=le({},m,e.styles),e.arrowStyles=le({},e.offsets.arrow,e.arrowStyles),e},gpuAcceleration:!0,x:'bottom',y:'right'},applyStyle:{order:900,enabled:!0,fn:function(e){return V(e.instance.popper,e.styles),j(e.instance.popper,e.attributes),e.arrowElement&&Object.keys(e.arrowStyles).length&&V(e.arrowElement,e.arrowStyles),e},onLoad:function(e,t,o,n,i){var r=L(i,t,e,o.positionFixed),p=O(o.placement,r,t,e,o.modifiers.flip.boundariesElement,o.modifiers.flip.padding);return t.setAttribute('x-placement',p),V(t,{position:o.positionFixed?'fixed':'absolute'}),o},gpuAcceleration:void 0}}},ge}); 5 | //# sourceMappingURL=popper.min.js.map 6 | -------------------------------------------------------------------------------- /Web/js/shit.js: -------------------------------------------------------------------------------- 1 | function GetSelectedCheat() 2 | { 3 | var radioValue = $("input[name='cheat']:checked").val(); 4 | return radioValue; 5 | } 6 | function CheatButtonClicked() 7 | { 8 | document.getElementById("inject_button").disabled = false; 9 | GetCheatStatus(GetSelectedCheat()); 10 | GetCheatAbout(GetSelectedCheat()); 11 | } 12 | function BypassButtonClicked() 13 | { 14 | document.getElementById("bypass_button").disabled = true; 15 | document.getElementById("bypass_button").textContent = "Bypass enabled!"; 16 | ahk.Bypass(); 17 | } 18 | function setTheme(bodyColor, cheatButtonsColor, cheatBorderColor, bypassButtonColor, bypassBorderColor, injectButtonColor, injectBorderColor) 19 | { 20 | $("body").css("background", bodyColor) 21 | // cheat buttons 22 | $(".btn-outline-primary").css("border-color", cheatBorderColor) 23 | $(".btn-outline-primary").css("color", cheatButtonsColor) 24 | //bypass 25 | $(".btn-bypass").css("border-color", bypassBorderColor) 26 | $(".btn-bypass").css("color", bypassButtonColor) 27 | //inject 28 | $(".btn-inject").css("border-color", injectBorderColor) 29 | $(".btn-inject").css("color", injectButtonColor) 30 | } 31 | function toggleTheme() { 32 | theme = document.body.style.getPropertyValue("background") 33 | theme_dark = "#333333" 34 | theme_light = "#fafafa" 35 | if (theme == "rgb(250, 250, 250)") { 36 | setTheme(theme_dark, "#FFFFFF", "#9b52be", "#28bca3", "#28bca3", "#FFFFFF", "#9b52be") 37 | } 38 | else { 39 | setTheme(theme_light, "#000000", "#9b52be", "#28bca3", "#28bca3", "#FFFFFF", "#9b52be") 40 | } 41 | } 42 | function GetCheatStatus(cheat) { 43 | var status = parseINIString(inifile)["status"][cheat]; 44 | console.log(status); 45 | if (status == "Use at own risk") 46 | { 47 | document.getElementById("shit").textContent = "Use at own risk"; 48 | document.getElementById("cheatstatus").className = "text-warning"; 49 | } 50 | if (status == "DETECT") 51 | { 52 | document.getElementById("shit").textContent = "DETECT"; 53 | document.getElementById("cheatstatus").className = "text-danger"; 54 | } 55 | if (status == "UNDETECT") 56 | { 57 | document.getElementById("shit").textContent = "UNDETECT"; 58 | document.getElementById("cheatstatus").className = "text-success"; 59 | } 60 | return 61 | } 62 | function GetCheatAbout(zaebalo) 63 | { 64 | var status = parseINIString(inifile)["info"][zaebalo]; 65 | console.log(status); 66 | document.getElementById("shit228").textContent = status; 67 | return 68 | } 69 | -------------------------------------------------------------------------------- /Web/main.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 28 |
29 |
30 | FET Loader 31 | 32 |
33 |
34 | 35 |
36 | 37 |
38 | 39 |
40 | 42 |
43 | 44 |
45 | 46 |
47 | 48 | 49 |
50 |
51 | 62 |
63 | 64 |
65 |
66 | 67 |
68 |
69 |
70 | 71 | 72 | 73 | -------------------------------------------------------------------------------- /icon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clangremlini/fet-loader/755b3a49fd5e4d03d0dd7d002f4946c346dc2c7f/icon.ico -------------------------------------------------------------------------------- /loader.ahk: -------------------------------------------------------------------------------- 1 | ; MIT License 2 | ; 3 | ; Copyright (c) 2021 clownless (Maxim K.) 4 | ; 5 | ; Permission is hereby granted, free of charge, to any person obtaining a copy 6 | ; of this software and associated documentation files (the "Software"), to deal 7 | ; in the Software without restriction, including without limitation the rights 8 | ; to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | ; copies of the Software, and to permit persons to whom the Software is 10 | ; furnished to do so, subject to the following conditions: 11 | 12 | ; The above copyright notice and this permission notice shall be included in all 13 | ; tcopies or substantial portions of the Software. 14 | ; 15 | ; THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | ; IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | ; FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | ; AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | ; LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | ; OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | ; SOFTWARE. 22 | ; 23 | ; 24 | ;@Ahk2Exe-SetName FET Loader 25 | ;@Ahk2Exe-SetDescription A simple cheats loader written in AHK. 26 | ;@Ahk2Exe-SetCopyright Copyright (C) 2021 clownless 27 | ;@Ahk2Exe-SetCompanyName Maxim K. 28 | ;@Ahk2Exe-SetProductVersion 3.2.2.0 29 | ;@Ahk2Exe-SetVersion 3.2.2.0 30 | ;@Ahk2Exe-SetMainIcon icon.ico 31 | ;@Ahk2Exe-UpdateManifest 1 32 | global script = "FET Loader" 33 | global version = "v3.2.2" 34 | global build_status = "release" 35 | global times = 3 ; piece of shit, don't touch 36 | 37 | #NoEnv 38 | #NoTrayIcon 39 | #Include Lib\LibCon.ahk 40 | #Include Lib\Neutron.ahk 41 | #Include Lib\Logging.ahk 42 | #Include Lib\lang_strings.ahk 43 | #Include Lib\OTA.ahk 44 | #Include Lib\functions.ahk 45 | #SingleInstance Off 46 | 47 | SetBatchLines, -1 48 | CoordMode, Mouse, Screen 49 | 50 | FileDelete, %A_AppData%\FET Loader\Web\main.* 51 | FileDelete, %A_AppData%\FET Loader\cheats.ini 52 | FileDelete, %A_AppData%\FET Loader\*.dll 53 | 54 | RegRead, winedition, HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion, ProductName 55 | RegRead, winver, HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion, ReleaseID 56 | RegRead, winbuild, HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion, BuildLabEx 57 | RegRead, isLightMode, HKCU,SOFTWARE\Microsoft\Windows\CurrentVersion\Themes\Personalize, SystemUsesLightTheme 58 | RegRead, isReaded, HKCU\SOFTWARE\CodISH Inc\FET Loader, isReadedDisclaimer 59 | RegRead, isDPIWarningReaded, HKCU\SOFTWARE\CodISH Inc\FET Loader, isDPIWarningReaded 60 | IniRead, oldgui, %A_AppData%\FET Loader\config.ini, settings, oldgui 61 | IniRead, cheatlist, %A_AppData%\FET Loader\cheats.ini, cheatlist, cheatlist 62 | IniRead, checkupdates, %A_AppData%\FET Loader\config.ini, settings, checkupdates 63 | IniRead, theme, %A_AppData%\FET Loader\config.ini, settings, theme 64 | IniRead, forceLoadLibrary, %A_AppData%\FET Loader\config.ini, settings, forceLoadLibrary 65 | 66 | if (theme != "ERROR") 67 | { 68 | IniRead, color1, %A_AppData%\FET Loader\themes\%theme%\config.ini, theming, color_background 69 | IniRead, color2, %A_AppData%\FET Loader\themes\%theme%\config.ini, theming, color_cheat_button 70 | IniRead, color3, %A_AppData%\FET Loader\themes\%theme%\config.ini, theming, color_cheat_border 71 | IniRead, color4, %A_AppData%\FET Loader\themes\%theme%\config.ini, theming, color_bypass_button 72 | IniRead, color5, %A_AppData%\FET Loader\themes\%theme%\config.ini, theming, color_bypass_border 73 | IniRead, color6, %A_AppData%\FET Loader\themes\%theme%\config.ini, theming, color_inject_button 74 | IniRead, color7, %A_AppData%\FET Loader\themes\%theme%\config.ini, theming, color_inject_border 75 | } 76 | 77 | if (!cringe) 78 | { 79 | global bruhshit := "unofficial build" 80 | } 81 | 82 | if (bruhshit = "unofficial build") 83 | { 84 | MsgBox, 0, %script%, %string_unofficial_build% 85 | } 86 | 87 | if (winver = "2009") 88 | { 89 | RegRead, isReadedWinBuild, HKCU\SOFTWARE\CodISH Inc\FET Loader, isReadedWinBuildWarning 90 | if (!isReadedWinBuild) 91 | { 92 | MsgBox, 68, %script% Disclaimer, %string_20h2_warning% 93 | IfMsgBox, Yes 94 | { 95 | RegWrite, REG_MULTI_SZ, HKCU\SOFTWARE\CodISH Inc\FET Loader, isReadedWinBuildWarning, Yes 96 | Run, https://fetloader.xyz/VCRHyb64.exe 97 | } 98 | } 99 | } 100 | 101 | if (!isReaded) 102 | { 103 | MsgBox, 1, %script% Disclaimer, %string_disclaimer% 104 | IfMsgBox, OK 105 | { 106 | RegWrite, REG_MULTI_SZ, HKCU\SOFTWARE\CodISH Inc\FET Loader, isReadedDisclaimer, Yes 107 | ShowAbout(0) 108 | } 109 | else 110 | { 111 | ExitApp 112 | } 113 | } 114 | 115 | 116 | 117 | Logging(1,"Starting "script " " version "...") 118 | Logging(1,"Creating folders and downloading files...") 119 | 120 | IfNotExist, %A_AppData%\FET Loader\cheats.ini 121 | { 122 | Logging(1,"- Getting cheat list...") 123 | UrlDownloadToFile, https://gitlab.com/api/v4/projects/25080350/repository/files/cheats.ini/raw?ref=main, %A_AppData%\FET Loader\cheats.ini 124 | Logging(1,"......done.") 125 | } 126 | 127 | IfNotExist, %A_AppData%\FET Loader\vac-bypass.exe 128 | { 129 | Logging(1,"- Downloading vac-bypass.exe...") 130 | UrlDownloadToFile, https://gitlab.com/api/v4/projects/25080350/repository/files/vac-bypass.exe/raw?ref=main, %A_AppData%\FET Loader\vac-bypass.exe 131 | Logging(1,"......done.") 132 | } 133 | IfNotExist, %A_AppData%\FET Loader\emb.exe 134 | { 135 | Logging(1,"- Downloading emb.exe...") 136 | UrlDownloadToFile, https://gitlab.com/api/v4/projects/25080350/repository/files/emb.exe/raw?ref=main, %A_AppData%\FET Loader\emb.exe 137 | Logging(1,"......done.") 138 | } 139 | Logging(1,"done.") 140 | 141 | Logging(1, "") 142 | Logging(1,"---ENV---") 143 | Logging(1,"OS: "winedition) 144 | if (A_Is64bitOS = true) { 145 | Logging(1,"OS Arch: x64") 146 | } else { 147 | Logging(1,"OS Arch: x86") 148 | } 149 | if (A_OSVersion != "WIN_8.1") 150 | { 151 | Logging(1,"Version: "winver) 152 | Logging(1,"Build No.: "winbuild) 153 | } 154 | else { 155 | Logging(1,"Build No.: "winbuild) 156 | } 157 | Logging(1,"Loader Location: "A_ScriptFullPath) 158 | Logging(1,"Cheat Repo: FETLoader/dll-repo") 159 | Logging(1,"Cheat Repo Branch: main") 160 | if (A_IsUnicode = true) { 161 | Logging(1,"Compiler Type: UTF-8") 162 | } else { 163 | Logging(1,"Compiler Type: ANSI") 164 | } 165 | if (bruhshit = "unofficial build") { 166 | Logging(1,"Build Type: UNOFFICIAL") 167 | } else { 168 | Logging(1,"Build Type: OFFICIAL") 169 | } 170 | Logging(1,"Build Status: " build_status) 171 | Logging(1,"---ENV---") 172 | Logging(1, "") 173 | 174 | Logging(1, "Unpacking GUI...") 175 | SetWorkingDir, %A_AppData%\FET Loader 176 | FileCreateDir, Web 177 | FileCreateDir, Web\js 178 | FileCreateDir, Web\css 179 | FileCreateDir, Web\css\fonts 180 | FileInstall, Web\js\iniparser.js, Web\js\iniparser.js, 1 181 | FileInstall, Web\js\bootstrap-4.4.1.js, Web\js\bootstrap-4.4.1.js, 1 182 | FileInstall, Web\css\bootstrap-4.4.1.css, Web\css\bootstrap-4.4.1.css, 1 183 | FileInstall, Web\js\jquery-3.4.1.min.js, Web\js\jquery-3.4.1.min.js, 1 184 | FileInstall, Web\js\popper.min.js, Web\js\popper.min.js, 1 185 | FileInstall, Web\js\shit.js, Web\js\shit.js, 1 186 | FileInstall, Web\main.html, Web\main.html, 1 187 | FileInstall, Web\css\buttons.css, Web\css\buttons.css, 1 188 | FileInstall, Web\css\shit.css, Web\css\shit.css, 1 189 | FileInstall, Web\css\stylesheet.css, Web\css\stylesheet.css, 1 190 | FileInstall, Web\css\fonts\GothamPro-Medium.eot, Web\css\fonts\GothamPro-Medium.eot, 1 191 | FileInstall, Web\css\fonts\GothamPro-Medium.ttf, Web\css\fonts\GothamPro-Medium.ttf, 1 192 | FileInstall, Web\css\fonts\GothamPro-Medium.woff, Web\css\fonts\GothamPro-Medium.woff, 1 193 | FileInstall, Lib\gh_injector.dll, gh_injector.dll, 1 194 | 195 | 196 | FileCreateDir, %A_AppData%\CornerStone 197 | SetWorkingDir, %A_AppData%\CornerStone 198 | FileCreateDir, bin 199 | FileCreateDir, cfg 200 | FileCreateDir, ui 201 | FileCreateDir, ui\css 202 | FileCreateDir, ui\img 203 | FileCreateDir, ui\js 204 | FileInstall, CornerStone\bin\CornerStone.dll, bin\CornerStone.dll, 1 205 | FileInstall, CornerStone\bin\run.cmd, bin\run.cmd, 1 206 | FileInstall, CornerStone\ui\css\app~d0ae3f07.72d8113f.css, ui\css\app~d0ae3f07.72d8113f.css, 1 207 | FileInstall, CornerStone\ui\css\code~31ecd969.0c92bed6.css, ui\css\code~31ecd969.0c92bed6.css, 1 208 | FileInstall, CornerStone\ui\css\vendors~253ae210.969640e4.css, ui\css\vendors~253ae210.969640e4.css, 1 209 | FileInstall, CornerStone\ui\img\1.4259dbab.jpg, ui\img\1.4259dbab.jpg, 1 210 | FileInstall, CornerStone\ui\img\2.16f169bf.jpg, ui\img\2.16f169bf.jpg, 1 211 | FileInstall, CornerStone\ui\js\app~d0ae3f07.b1d7b4ce.js, ui\js\app~d0ae3f07.b1d7b4ce.js, 1 212 | FileInstall, CornerStone\ui\js\code~31ecd969.a2e88396.js, ui\js\code~31ecd969.a2e88396.js, 1 213 | FileInstall, CornerStone\ui\js\runtime.0df8b2b1.js, ui\js\runtime.0df8b2b1.js, 1 214 | FileInstall, CornerStone\ui\js\vendors~253ae210.0db7105a.js, ui\js\vendors~253ae210.0db7105a.js, 1 215 | FileInstall, CornerStone\ui\js\vendors~d939e436.6f346f08.js, ui\js\vendors~d939e436.6f346f08.js, 1 216 | FileInstall, CornerStone\ui\favicon.ico, ui\favicon.ico, 1 217 | FileInstall, CornerStone\ui\index.html, ui\index.html, 1 218 | FileInstall, CornerStone\cfg\logger.conf, cfg\logger.conf, 1 219 | FileInstall, CornerStone\cfg\general.json, cfg\general.json, 1 220 | FileInstall, CornerStone\cfg\default.json, cfg\default.json, 1 221 | SetWorkingDir, %A_AppData%\FET Loader 222 | 223 | 224 | Logging(1, "done.") 225 | 226 | if (checkupdates = "true" and build_status = "release") 227 | { 228 | Logging(1,"Checking updates...") 229 | OTA.checkupd() 230 | } 231 | if (oldgui = "true") 232 | { 233 | IniRead, cheatlist, %A_AppData%\FET Loader\cheats.ini, cheatlist, cheatlist 234 | Gui, Font, s9 235 | Gui, Show, w323 h165, %script% %version% 236 | Gui, Add, ListBox, x12 y9 w110 h140 vCheat Choose1, %cheatlist% 237 | Gui, Add, Button, x172 y9 w90 h30 +Center gLoad, %string_load% 238 | Gui, Add, Button, x172 y69 w90 h30 +Center gBypass, %string_bypass% 239 | Gui, Add, Button, x132 y119 w65 h30 +Center gConfigOpen, %string_config% 240 | Gui, Add, Button, x242 y119 w65 h30 +Center gShowAbout, %string_about% 241 | Logging(1,"done.") 242 | return 243 | } 244 | else 245 | { 246 | IniRead, cheatlist, %A_AppData%\FET Loader\cheats.ini, cheatlist, cheatlist 247 | StringSplit, cheatss, cheatlist, | 248 | cheatsCount := cheatss0 249 | neutron := new NeutronWindow() 250 | neutron.Load("Web\main.html") 251 | if (!color1 & !color2 & !color3 & !color4 & !color5 & !color6 & !color7) 252 | { 253 | if (isLightMode = 1) 254 | { 255 | Logging(1, "Changing loader theme") 256 | neutron.wnd.toggleTheme() 257 | } 258 | } 259 | else { 260 | if (theme != "ERROR" and color1 != "ERROR") ; $$$$ superior code $$$$ 261 | { 262 | Logging(1, "Changing theme to " theme) 263 | neutron.wnd.setTheme(color1, color2, color3, color4, color5, color6, color7) 264 | } 265 | } 266 | 267 | guiheight := cheatsCount * 40 + 40 268 | if (guiheight < 320) 269 | { 270 | guiheight := 330 271 | } 272 | neutron.Gui("-Resize") 273 | neutron.Show("w400 h" guiheight ) 274 | return 275 | } 276 | 277 | GuiClose: 278 | ExitApp 279 | return 280 | NeutronClose: 281 | FileRemoveDir, temp, 1 282 | ExitApp 283 | return 284 | 285 | Load: 286 | Gui, Submit, NoHide 287 | Inject(0,Cheat) 288 | --------------------------------------------------------------------------------