Help:Automation: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
mNo edit summary
Line 1: Line 1:
{{Draft}}{{pov}}{{stub}}
This article delves into the realm of automation, exploring the scripts and bots in streamlining processes and enhancing efficiency across VDC.
{{todo|Rename and move to Automation on the VDC}}
{{cleanup|Any ideas?}}


=Scripts=
=Scripts=
Some tips on how to make your life easier when performing various tedious tasks. As you know, any simple tasks that do not contain something like "write a poem!" are subject to automation, although this is still possible today. But here I will show you some scripts that are useful... for creating something.
Scripts are fundamental to automation, enabling the automation of repetitive tasks and the execution of complex operations. This section will detail the types of scripts used in automation, their applications, and the programming languages most commonly employed for scripting.
{{tip|Almost any AI Bot makes mistakes during automation and requires appropriate prompts. Separately written scripts are still prefer for such tasks.}}
{{note|Some tips on how to make your life easier when performing various tedious tasks. As you know, any simple tasks that do not contain something like "write a poem!" are subject to automation, although this is still possible today. But here I will show you some scripts that are useful... for creating something.
{{tip|Almost any AI Bot makes mistakes during automation and requires appropriate prompts. Separately written scripts are still prefer for such tasks.}}}}


==Entity Lists==
==Entity Lists==
{{todo|Python impletation with GUI (PyQT6)}}
{{todo|Python implementation with GUI (PyQT6)}}
Creating lists of entities is not something supernatural; in fact, it is a simple task. While reaching the [[.fgd]] file format, I outlined some points for myself that can be used to my advantage. Well, look!
Creating lists of entities is not something supernatural; in fact, it is a simple task. While reaching the [[.fgd]] file format, I outlined some points for myself that can be used to my advantage. Well, look!
{{warning|This script is useless if the [[FGD]] format is changed in the project (on the {{src|4|nt=1}}). This script is works with the standard Valve format of FGD files for all vanilla {{src|4}} branches.}}
{{warning|This script is useless if the [[FGD]] format is changed in the project (on the {{src|4|nt=1}}). This script is works with the standard Valve format of FGD files for all vanilla {{src|4}} branches.}}
{{note|These scripts utilize a combination of Bash scripting and Unix/Linux command-line tools, such as ''grep'', ''sed'', and ''awk''}}


=== Known issues ===
=== Known issues ===
Line 56: Line 58:


= Bots =
= Bots =
The list of automated and semi-automated bots on the VDC.
Bots are automated software agents designed to perform specific tasks, often in response to certain triggers or conditions.  


=={{u|WisdomBot}}==
=={{u|WisdomBot}}==

Revision as of 03:47, 5 April 2024

This article delves into the realm of automation, exploring the scripts and bots in streamlining processes and enhancing efficiency across VDC.

Scripts

Scripts are fundamental to automation, enabling the automation of repetitive tasks and the execution of complex operations. This section will detail the types of scripts used in automation, their applications, and the programming languages most commonly employed for scripting.

Note.pngNote:Some tips on how to make your life easier when performing various tedious tasks. As you know, any simple tasks that do not contain something like "write a poem!" are subject to automation, although this is still possible today. But here I will show you some scripts that are useful... for creating something.
Tip.pngTip:Almost any AI Bot makes mistakes during automation and requires appropriate prompts. Separately written scripts are still prefer for such tasks.

Entity Lists

Todo: Python implementation with GUI (PyQT6)

Creating lists of entities is not something supernatural; in fact, it is a simple task. While reaching the .fgd file format, I outlined some points for myself that can be used to my advantage. Well, look!

Warning.pngWarning:This script is useless if the FGD format is changed in the project (on the Source Source Engine). This script is works with the standard Valve format of FGD files for all vanilla Source Source branches.
Note.pngNote:These scripts utilize a combination of Bash scripting and Unix/Linux command-line tools, such as grep, sed, and awk

Known issues

Icon-Bug.pngBug:Sometimes the script adds entities to the wrong section (with a different prefix)  [todo tested in ?]
Icon-Bug.pngBug:Sometimes unnecessary spaces may be created.  [todo tested in ?]

For Source Source FGDs

The Script[1]

  • Uses grep -i '^\(@solidclass\|@pointclass\|@NPCClass\)' "$1" to filter lines from the input file that start with @solidclass, @pointclass, or @NPCClass.
  • Creates sections based on the prefixes extracted from the processed lines. It uses an associative array declare -A seen to keep track of prefixes that have already been processed. This ensures that each prefix corresponds to a single section.
  • Uses *{{ent|$result}} to format the processed lines as wiki entries.
  • The section headers are formatted as ===%s_*=== where %s is replaced with the prefix. For example, if the prefix is example, the section header will be ===example_*===. Each processed line is then added under the appropriate section.
  • Handles unincluded lines by appending them to a separate "Unincluded" section at the end of the output file. This ensures that all lines are accounted for, even if they don't fit the criteria for the other sections.

Usage

Source-FGD-Ent-List-VDC-2.sh <input> <output>

Examples

For GoldSrc GoldSrc FGDs

The Script[2]

  • The logic is same to Source Source script
    • Uses grep -i '^\(@solidclass\|@pointclass\)' "$1" to filter lines from the input file that start with @solidclass, @pointclass, or @NPCClass.
    • Uses *{{ent|$result_(GoldSrc)|alt=$result}} to format the processed lines as wiki entries.

Usage

GoldSrc-FGD-Ent-List-VDC-2.sh <input> <output>

Examples

Table Generator for Console Variables

Empty

This article or section is empty. You can help by adding it.

Bots

Bots are automated software agents designed to perform specific tasks, often in response to certain triggers or conditions.

WisdomBot

This marks the inaugural creation of an automated bot within the VDC, created by Wisdurm. Despite the existence of PIPEbot prior to this, there is no evidence to suggest that it operated autonomously or performed any specific functions[3].

This bot has significantly replaced the outdated {{entity}} and its derivatives with {{this is a}} on the pages.[4]

References

  1. "FGD to Entity List" for Source Engine (GitHub Gist)
  2. "FGD to Entity List" for GoldSrc Engine (GitHub Gist)
  3. PIPEbot, lack of auto-contributions
  4. WisdomBot, list of auto-contributions