dztui icon indicating copy to clipboard operation
dztui copied to clipboard

[HELP] Can't access to servers

Open Thv1337 opened this issue 1 month ago • 15 comments

Device type

Desktop PC

DZGUI version

5.8.0

Linux distribution

Fedora Silverblue

Describe the issue

I can't access servers using the IP address. I'm using my Steam API key correctly. Is this a problem or is it just me?

Image Image

Ty

Additional log output

No response

Thv1337 avatar Nov 12 '25 17:11 Thv1337

Thanks for the report. Is this a temporary or constant issue? Does it work when trying to connect to other servers labeled EUROPE - DE | 1st Person Only?

Have you checked the server 2668 | EUROPE - DE | 1st Person Only? This server is also running the Frostline expansion.

I was not able to reproduce the issue pictured above, but official servers may regularly go in and out of rotation or be unresponsive depending on the time of day.

Does this happen to you on all servers, or only this one?

aclist avatar Nov 13 '25 00:11 aclist

Thanks for the report. Is this a temporary or constant issue? Does it work when trying to connect to other servers labeled EUROPE - DE | 1st Person Only?

Have you checked the server 2668 | EUROPE - DE | 1st Person Only? This server is also running the Frostline expansion.

I was not able to reproduce the issue pictured above, but official servers may regularly go in and out of rotation or be unresponsive depending on the time of day.

Does this happen to you on all servers, or only this one?

Update!

I've realized that the issue I reported in post #1 was a bug in version 5.8.0. I updated to the latest beta, 6.0.0-beta8, and it's fixed. Now I have a different problem.

The script isn't running (you run it and nothing is displayed on the screen... until the process finally closes.), and I've determined that it's because of an incorrect line, specifically line 31 of "datacls.py".

The terminal output:

/var/home/thvle/.local/share/dzgui/helpers/ui.py:827: SyntaxWarning: 'return' in a 'finally' block return rows Traceback (most recent call last): File "/var/home/thvle/.local/share/dzgui/helpers/ui.py", line 23, in <module> import servers as Servers # noqa E402 ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/var/home/thvle/.local/share/dzgui/helpers/servers.py", line 16, in <module> import a2s # noqa ^^^^^^^^^^ File "/var/home/thvle/.local/share/dzgui/helpers/a2s/__init__.py", line 3, in <module> from a2s.info import info, ainfo, SourceInfo, GoldSrcInfo File "/var/home/thvle/.local/share/dzgui/helpers/a2s/info.py", line 16, in <module> class SourceInfo(metaclass=DataclsMeta): ...<91 lines>... return bool(self.edf & 0x01) File "/var/home/thvle/.local/share/dzgui/helpers/a2s/datacls.py", line 31, in __new__ for member_name in prop["__annotations__"].keys(): ~~~~^^^^^^^^^^^^^^^^^^^ KeyError: '__annotations__'

Changing it to "for member_name in prop.get("annotations", {}).keys():" fixed it.

Now, here's my other problem: I had to adapt the script to run correctly in my case. Specifically, I'm running dzgui.sh from a container (toolbox), and when I call "flatpak run com.valvesoftware.Steam" to connect to a server, it fails. I had to modify "funcs", specifically line 93, to "flatpak-spawn --host flatpak run com.valvesoftware.Steam", otherwise it's not possible to connect to the server by running dzgui.sh from a container.

Now I've run into another problem: the script checks the MD5 hash of the file "funcs"... I changed it to the current one and everything works perfectly. So, I'm asking, if possible, first, to fix the error in "datacls.py", and second, to provide support so that the script can be run successfully from a container.

PS: I'm using an immutable system, so containers are used extensively here. Thank you.

PS2: Sorry for the translation. English its not my native language.

PS3: Thank you so much for your fantastic project. You're helping so many DayZ players!

Regards!!

Thv1337 avatar Nov 13 '25 01:11 Thv1337

I've realized that the issue I reported in post https://github.com/aclist/dztui/issues/1 was a bug in version 5.8.0. I updated to the latest beta, 6.0.0-beta8, and it's fixed. Now I have a different problem.

I'll have to go through the commit logs to check where that was resolved, but if it's an outstanding bug, I'll port the patch to the stable version so that users aren't required to use the testing version to take advantage of this fix.

Changing it to "for member_name in prop.get("annotations", {}).keys():" fixed it.

This is moreso a problem with the upstream version of that dependency. The correct fix here would be to run DZGUI with Python 3.12, because the maintainer of that module has not updated it to support Python 3.14 syntax.

Now, here's my other problem: I had to adapt the script to run correctly in my case. Specifically, I'm running dzgui.sh from a container (toolbox), and when I call "flatpak run com.valvesoftware.Steam" to connect to a server, it fails. I had to modify "funcs", specifically line 93, to "flatpak-spawn --host flatpak run com.valvesoftware.Steam", otherwise it's not possible to connect to the server by running dzgui.sh from a container.

I'm definitely interested in this, because https://github.com/aclist/dztui/issues/62 is still an outstanding ticket. Flatpak support was added more as a throwaway option, but has not been tested to the extent that vanilla Steam has.

Now I've run into another problem: the script checks the MD5 hash of the file "funcs"... I changed it to the current one and everything works perfectly. So, I'm asking, if possible, first, to fix the error in "datacls.py", and second, to provide support so that the script can be run successfully from a container.

I need to discuss with the module's maintainer first. I suggest using Python 3.12 and/or creating a Python virtual environment (venv) with Python 3.12 so that DZGUI is pinned to this Python version.

There is an update in the works that will prevent DZGUI from launching if the Python version is not set to 3.11 or 3.12.

Are you able to use different Python versions on your system, or only the latest one? You can check to see if python3.12 is available as a terminal command.

aclist avatar Nov 13 '25 01:11 aclist

I compared the beta version with the stable version and didn't see any notable change yet that affected server timeouts. Does the bug you reported immediately reappear if you downgrade to version 5.8.0?

aclist avatar Nov 13 '25 01:11 aclist

I compared the beta version with the stable version and didn't see any notable change yet that affected server timeouts. Does the bug you reported immediately reappear if you downgrade to version 5.8.0?

Yes, with 5.8.0 clean installation I cant access to any server.

Are you able to use different Python versions on your system, or only the latest one? You can check to see if python3.12 is available as a terminal command.

In my system I have only python3 and python3.14. I will install Python 3.12 if necessary and don't consider it a problem. Thanks.

Thv1337 avatar Nov 13 '25 02:11 Thv1337

Yes, with 5.8.0 clean installation I cant access to any server.

Thank you, I will investigate further.

In my system I have only python3 and python3.14. I will install Python 3.12 if necessary and don't consider it a problem. Thanks.

Some internal changes are planned for the DZGUI version 7 installation process to make sure it is pinned to the correct Python version.

aclist avatar Nov 13 '25 02:11 aclist

I've added support for choosing between steam, flatpak, and flatpak (container) in the pending beta version. If you feel comfortable cloning this repository and changing to a development branch, you can use the PR here https://github.com/aclist/dztui/pull/239 to test that feature. Basically, you now have a dropdown in the options menu that lets you choose between the three and will update your config file accordingly.

If not, it will be merged into the testing branch soon.

aclist avatar Nov 13 '25 03:11 aclist

Great! It works as expected.

Image

Thv1337 avatar Nov 13 '25 04:11 Thv1337

I cloned it manually, and the second time I ran the script, it updated to 5.8.0. This is normal?

Thv1337 avatar Nov 13 '25 04:11 Thv1337

That shouldn't happen if you remain on the development branch:

git clone [email protected]:aclist/dztui.git
cd dztui
git fetch
git checkout -b prerelease/6.0.1-beta.1 origin/prerelease/6.0.1-beta.1
./dzgui.sh

Keep in mind that you'll have to explicitly run ./dzgui.sh from inside this directory to use this isolated version.

aclist avatar Nov 13 '25 05:11 aclist

That shouldn't happen if you remain on the development branch:

git clone [email protected]:aclist/dztui.git
cd dztui
git fetch
git checkout -b prerelease/6.0.1-beta.1 origin/prerelease/6.0.1-beta.1
./dzgui.sh

Keep in mind that you'll have to explicitly run ./dzgui.sh from inside this directory to use this isolated version.

Image

With python 3.12, I get this error. I think you should consider revisions to version 3.12. I have version 3.12.12, for example.

Thv1337 avatar Nov 13 '25 06:11 Thv1337

Actually, 3.12.12 is accepted by the test. The problem is that the test is being run in a subshell, so it's probably reverting to Python 3.14 when checking the output of the python3 command.

This issue is going to be difficult to fix on all distributions until DZGUI 7 switches to a full Python codebase. Right now, the Bash code is going to make this tricky. I'm thinking about what to do.

Some (most?) distributions explicitly provide a python3.12 command line entrypoint. Meanwhile, the version underneath the python3 command might continue to change.

Ideally, the setup process would use a virtual environment that is immune to such changes and DZGUI would run python commands inside that venv. But I'm not sure of the implications of this on all environments, such as Steam Deck.

The other alternatives are to:

  • Ship DZGUI with a modified version of the python-a2s module
  • Talk to the maintainer of the python-a2s module about upgrading to support Python 3.14

I'm not sure what to do about this in the short term, yet. DZGUI 7 is not fully finished being developed yet, so it's not a viable solution at this time.

aclist avatar Nov 13 '25 08:11 aclist

I also don't think supporting 3.14 is the correct approach, since DZGUI was fundamentally developed against 3.11/12 and there could be other pieces of code that don't comply with 3.14 besides the a2s module.

aclist avatar Nov 13 '25 08:11 aclist

My suggestion for you is the following:

python3.12 -m venv $HOME/.virtualenvs/dzgui
source $HOME/.virtualenvs/dzgui/bin/activate
./dzgui.sh

You'll have to make sure you run DZGUI inside this venv when starting it.

aclist avatar Nov 13 '25 08:11 aclist

My suggestion for you is the following:

python3.12 -m venv $HOME/.virtualenvs/dzgui
source $HOME/.virtualenvs/dzgui/bin/activate
./dzgui.sh

You'll have to make sure you run DZGUI inside this venv when starting it.

Thanks. Even with the instructions above, the script keeps updating to 5.8.0 after running it for the second time.

EDIT:

I've noticed that if I run "git reset --hard origin/prerelease/6.0.1-beta.1" again after it resets to 5.8.0, it no longer downloads the main 5.8.0 build. Why does this happen?

Thv1337 avatar Nov 13 '25 12:11 Thv1337

When you stated that it updates to 5.8.0, are you talking about a prompt asking you to download? Or are you talking about the app loading and stating that it's on version 5.8.0, as if all of the files got replaced?

This development build is explicitly pinned to files that are out-of-band from the normal Stable/Testing branch hierarchy, so it should never try to update with other versions or prompt you to download.

Can you describe the steps here?

  • Launch DZGUI from the development branch and it lists a beta version number: XXXX
  • Close DZGUI
  • Launch DZGUI from the development branch again and it lists the stable version number: 5.8.0

Is this correct?

Also, can you state which branch of the git repo you are inside of when installing/invoking dzgui.sh?

As a separate note, I've investigated the Python version dependency issue, and it looks like Steam Deck ships with only Python 3.13 out of the box, so I've decided to require Python 3.13, rather than 3.12, as the minimum version.

Make sure you git pull from the development branch to grab any changes. Also, it shouldn't be necessary to create a venv now. You can just run the script from the repository root.

aclist avatar Nov 14 '25 04:11 aclist

Yes, I run from terminal, and dszgui always update itself background when I close app.

Thv1337 avatar Nov 14 '25 12:11 Thv1337

@GaryBlackbourne Can you look into this? Maybe you have some idea about what is happening here?

aclist avatar Nov 15 '25 06:11 aclist

@Thv1337 Sorry for the inconvenience. The functionality you asked for has been merged into the Testing branch under version 6.0.0.beta-12. You do not need to clone the development PR now; you can switch to this branch directly within DZGUI (Options > Version> DZGUI Branch) and update accordingly, so I don't think you should see any version update problems now.

Please advise if you still run into problems when using version 6.0.0-beta.12 on the Testing branch.

aclist avatar Nov 21 '25 15:11 aclist

Thanks!! I'll do it if I have any problems. Regards.

Thv1337 avatar Nov 21 '25 22:11 Thv1337

@GaryBlackbourne Can you look into this? Maybe you have some idea about what is happening here?

I'm sorry, I had to attend to other things in the last couple of weeks.

GaryBlackbourne avatar Nov 25 '25 17:11 GaryBlackbourne