Unvanquished improvements in the XQF game server browser

Release and discuss things you've made, including mods.
Post Reply
User avatar
illwieckz
Project Head
Posts: 765
Joined: Sat Aug 11, 2012 7:22 pm UTC
Location: France
Contact:

Unvanquished improvements in the XQF game server browser

Post by illwieckz »

Right, I haven't released a new XQF release in eleven years (oof 😱), I may do one in a near future.

XQF is a game server browser with support for Unvanquished: https://github.com/XQF/xqf

In the last weeks I implemented the stripping of extended color stripping (the hex color codes in the form ^#NNNNNN), something I wanted to do for a very long time: https://github.com/XQF/xqf/commit/7388f ... a46ada7569

One limitation still remaining to display all server names properly is that both XQF and the the underlying Qstat query tool is not utf-8 aware yet, but that would require a lot of work.

So, outside of servers with special characters, XQF can now properly display the server names, properly stripping all the color codes.

I would also like to add crn-decoding to display the Unvanquished levelshots. It would be doable either by using the crnlib directly, or by importing the crnrgba code from NetRadiant.

Around other XQF news, a lot of work to clean-up deprecated code was done last year by ZTM but this is not GTK3-ready yet. GTK2 is still needed.

This comment is licensed under cc ​​by 4 and antecedent. The Crunch tool is awesome!

User avatar
illwieckz
Project Head
Posts: 765
Joined: Sat Aug 11, 2012 7:22 pm UTC
Location: France
Contact:

Re: Unvanquished improvements in the XQF game server browser

Post by illwieckz »

So, I finally implemented the CRN levelshot reading in XQF! That's something I wanted to do for years! :bsuit:

This support relies on the libcrn from Dæmon Crunch, so XQF enters the club of software using Dæmon crunch.

Technically it converts the CRN to TGA in memory so the existing GdkPixbuf implementation just displays the TGA without needing to do more complex code. 🤪 This also means DDS and KTX levelshot are supported as well, so that may help other games. 😎

I also enabled the support for WebP levelshots, as some community maps use that format for their levelshots. For the WebP support to work you need to have the WebP GdkPixbuf loader (webp-pixbuf-loader) installed on your system.

I also fixed some other bugs affecting the Unvanquished support. 🙂

Here is how it looks, the levelshot is displayed when you click (and hold) the map name. As we see this is a stock map (Spacetracks), so the image is in CRN format, but XQF displays it properly:

Image

We see that the utf-8 name of Gireen's Yellow Submarine server is completely borked. That's something remaining I would like to see fixed, but I have no idea if that's easy to fix because XQF and the underlying QStat query tool are very old pieces of software…

This comment is licensed under cc ​​by 4 and antecedent. The Crunch tool is awesome!

Post Reply