PreFire

From CKRAS Wiki

Revision as of 20:38, 26 April 2024 by Ckras (talk | contribs)

PREFIRE

PreFire Practice for CS2 is perfect tool to train prefire on competive maps, with PreFire Addon you can start the training scenarios with !prefire on the currently available maps as indicated in the menu.

An open-source CounterStrikeSharp powered server-side practicing plugin for CS2. It provides multiple prefire practices on competitive map pool maps and support multiplayer practicing concurrently.

Info.png

We will install this addon for you at any time on request, alternatively see the link to the installation files at the end of the article


CURRENT MAPPOOL:

de_ancient
de_anubis
de_dust2
de_inferno
de_mirage
de_overpass


The tool is an open-source project and is currently still under development. Additional maps and training paths will be updated regularly. PreFire need CSS installed.

Commands

Commands Description
!prefire Start menu
!prefire prac [number] Start practicing on a selected route.
!prefire map [map name] Switch to another map.
!prefire df [1-5] Set the difficulty.
!prefire mode [rand/full] Set training mode, full or random.
!prefire bw [rand/ump/ak/sct/awp] Set weapons for bots.
!prefire lang [en/pt/zh] Set language. en for English, pt para português, 中文选择 zh。
!prefire exit Stop practicing PreFire.


PreFire is compatible with our CKRAS BOT

Important: PreFire is still under development, if you have any questions or suggestions please contact us at any time.

For custom maps you can insert these commands

pos_x pos_y pos_z ang_x ang_y ang_z The first 3 floating numbers are the position and the other 3 are the rotation.

pos_x pos_y pos_z ang_x ang_y ang_z is_crouching The rest lines describe how to place bots. The first 3 numbers is position, following 3 numbers of the rotation. The 7th value is either True of False indicating whether the bot is crouching.

python3 calculate_height.py [PATH TO YOUR FILE] The positions and facing rotations can be retrived from in-game get_pos command. But please notice that, the height values used in profiles should be the values returned by get_pos minus 65. I made a python script that does this calculation for you. You can stack the strings retured by get_pos and put them in a txt file, and pass the file to the python script as described below and the script will automatically print out the formatted bot positions.

Prefire Pracs available

Finished Practices:
  • de_inferno
    • A short to A site
    • A long to A site
    • A apartments to A site
    • Banana to B site
    • Retake B from CT spawn
  • de_ancient
    • B ramp to B site
    • B house to B site
    • Mid to A site
    • A main to A site
    • Retake A from CT spawn
  • de_mirage
    • Attack A site from A ramp (to CT spawn)
    • Attack B site from B apartments
    • Attack A site from A palace (to jungle)
    • Attack B site from mid
    • Attack A site from underpass
    • Retake B site from CT spawn
  • de_overpass
    • Attack B site from B long
    • Attack B site from B short
    • Clear underpass and go upwards to mid
    • Clear underpass and go towards B short
    • Attack A site from A long
    • Attack A site from A short (mid)
  • de_dust2
    • Attack A site from A long
    • Attack A site from A short
  • de_anubis
    • Attack B site from B main
    • Attack B site from mid (B connector)
    • Attack B site from water
    • Attack A site from mid (A connector)
    • Attack A site from A main
    • Add a practice route for aggressive CT pushing from A main.
    • Add a practice route for aggressive CT pushing from B main.

Values

Now the plugin supports loading default settings of difficulty and training mode from a json file. You can rename default_cfg.json.example to default_cfg.json and modify the value as you like.

Explanation of values:

   Difficulty
       0: No healing.
       1: Init hp 500 with no healing.
       2: +25hp for each kill.
       3: +100hp for each kill.
       4: +500hp for each kill.
   Training Mode
       0: Random mode, randomly spawn some targets.
       1: Full mode, all targets.


Development

TODO:

  1. Create prefire profiles for all maps.
  2. Draw guiding lines on the floor.
  3. Improve bot logic.
  4. Improve localization support (The supporting framework is done. Submitting translations is warmly welcomed.).
  5. Reroute saperate logs into one gathered place for better debug experience.


Source: https://github.com/lengran/OpenPrefirePrac
Download: https://github.com/lengran/OpenPrefirePrac/releases
CS2 Server: https://www.ckras.com/

(PreFire needs CounterStrikeSharp)