Skip to content

Conversation

@killaketa
Copy link
Contributor

@killaketa killaketa commented Jan 17, 2026

A recent update has broken the -condebug launch option output to game/csgo/console.log on linux systems. The console_log parameter was not needed anyways and its removal allows for output to the panel log once again. The output from -condebug to console.log is still working on windows platforms, so no need to remove the console_log tag from cs2_win64.xml as it's necessary for output to the panel on it.

EDIT: Also modified +sv_setsteamaccount to have its input censored so the GSLT isn't displayed at all times. It's necessary to set one for your servers to show on the steam server browser.

A recent update has broken the -condebug launch options output to game/csgo/console.log on linux systems.
The console_log parameter was not needed anyways and its removal allows for output to the panel log once again.
The output from -condebug to console.log is still working on windows platform, so no need for an update to cs2_win64.xml.
@Zorrototo
Copy link
Contributor

Is the password type existing in OGP? I didn't know about it.
Also what is GSLT, what are you talking about here?

@killaketa
Copy link
Contributor Author

Is the password type existing in OGP? I didn't know about it.

Also what is GSLT, what are you talking about here?

Yup the password type exists, tested the XML locally and it passed the actual input just fine while keeping it censored on the panel.

GSLT is the Game Server Login Token. In order to have your server listed on the steam server browser (list on cs2 master servers) or download workshop maps/collections you must provide one from your steam account.

@Zorrototo
Copy link
Contributor

Thanks for the clarification. I guess your changes are good then. I'll try the password type later, I'm curious I never saw that :)

@killaketa
Copy link
Contributor Author

No problem, didn't realize myself until I confirmed it will work with most html input types. Probably some weird ones that would be fun to try out https://www.w3schools.com/tags/att_input_type.asp

Also made another XML which works via hardlinking a fresh install into a base directory and uses that to hardlink future installs basically. Saves a massive amount of storage if you're running multiple servers. Would've done it differently but was limited by post/pre_install and a bug with the logical and operator in the bash script within those tags. Posted it here on the forums since I didn't figure it's worth a PR https://www.opengamepanel.org/forum/viewthread.php?thread_id=8424

@own3mall
Copy link
Contributor

What is the bug you ran into? Can you describe it please? with the logical and operator in the bash script

Also, what extra variables did you want included? More details and I might be able to add them.

@killaketa
Copy link
Contributor Author

killaketa commented Jan 18, 2026

What is the bug you ran into? Can you describe it please? with the logical and operator in the bash script

Also, what extra variables did you want included? More details and I might be able to add them.

When using the logical and operator (&&) as apart of your bash script for pre/post_install in the XML it will break the XML where the panel will not recognize it and give a message of "Cannot open XML path/to/xml. Permission Issue?" or something along those lines. I didn't look too much into it but its 1000% an issue with the && operator as replacing it with the || operator made the XML be recognized just fine again.

As for the extra variables I was thinking a new XML tag called "install_path" which takes the root of OGP_User_Files and determines the installation directory for SteamCMD.
EX.
<input_path>Base-Games/CS2</input_path>
would install to .../OGP_User_Files/Base-Games/CS2.

This doesn't seem all that useful until you introduce $install_path into the pre/post_install bash script variables. I would use it to hardlink all the necessary files from the install path to the actual home dir where the agent runs the game. It wouldn't influence literally anything but the SteamCMD force_install_dir command.

These changes would allow me to keep my hardlinking/copying completely one way instead of having to do gamehome -> base install -> gamehome. Instead it would be base install -> gamehome as it should be. Would be nice to have that so these bigger games can have hardlinked XML's like the one I made for CS2 more cleanly. My ideal workflow for the XML hardlinking a giant install to the gamehomes is that SteamCMD directly updates/installs to the "base" folder which then gets everything hardlinked over other than configs, logs, and the executables which are copied over instead. While the way I did it works it's definitely a bit janky and does not hold up to OGP standards, I feel these changes and my ideal workflow for the XML will put it up to snuff and allow for future Source 2/other titles, which may follow the same method of installing the whole game, to be running on OGP without taking up hundreds of gigabytes for 4 servers.

@Zorrototo
Copy link
Contributor

Zorrototo commented Jan 18, 2026

(&&)

What if you use &amp; for &

https://www.w3.org/TR/xml/#syntax

Some characters can NOT be used directly in XML.

& => &amp;
< => &lt;
> => &gt;
' => &apos;
" => &quot;

Also for the issue with multiple installs taking up more and more spaces, there is a functionality in OGP, the Master Server. Create one server, set it as Master Server, and you should be able to use this one instance as the base, and all other subsequent install using the Master Server would actually use all the same files, but the ones defined not sure where (in a text file, I think it is based on file extension actually).

@killaketa
Copy link
Contributor Author

(&&)

What if you use &amp; for &

https://www.w3.org/TR/xml/#syntax

Some characters can NOT be used directly in XML.

& => &amp; < => &lt; > => &gt; ' => &apos; " => &quot;

Also for the issue with multiple installs taking up more and more spaces, there is a functionality in OGP, the Master Server. Create one server, set it as Master Server, and you should be able to use this one instance as the base, and all other subsequent install using the Master Server would actually use all the same files, but the ones defined not sure where (in a text file, I think it is based on file extension actually).

Ah forgot about that functionality and thanks for the tip on the XML. I think I'm gonna stick with my way of using a bash script for the meantime though as going by filetype alone is a bit too discriminatory. There's some txt that's necessary to CS2 along with other things that shouldn't be linked purely by directory such as an admin config for CSSharp, a shared server.cfg. Or linking other .gi files but wanting to copy any of the "gameinfo" gi files. The current system definitely seems great and it seems my idea of doing this via post/pre_install is overcomplicated and unwarranted, but maybe add another way to filter through items in extPatterns.txt, such as allowing us to write a bash script which allows us to filter between the files we wish to symlink and copy purely through bash logic? Maybe a list of regex for symlink and another list for copy (whitelist vs blacklist)? Just seems like the current system could be improved a bit is all and If this is something that agent devs would like to work on but can't I wouldn't mind making a PR for this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants