Skip to content

QtCraft 1.0.0

Latest

Choose a tag to compare

@github-actions github-actions released this 05 Nov 08:42
· 7 commits to dev since this release
e469f9f

QtCraft 1.0.0 – first stable release

A voxel sandbox game in the spirit of Minecraft, written from scratch in C++23 with Qt 6.12. Everything you see and hear – textures, sounds, music – is generated by the game itself; the content is plain JSON that mods can extend. 1.0.0 collects everything since 0.1.0 and the feedback from the playtest of the release candidates. Packages for macOS, Windows and, new, Linux are attached below.

New since 0.1.0

  • Linux: an AppImage for x86-64 with the game and the dedicated server in one file (--headless starts the server). Qt, FFmpeg, ICU and the xcb helper libraries are bundled; OpenSSL, PulseAudio, D-Bus, Wayland and X11 come from the system.
  • World generator version 2, the default for new worlds: rivers close their pieces over long distances, river ends and cold river edges are smooth. The menu lets you choose the version for a new world; worlds keep the version they were created with.
  • Combat and movement: hits show a red flash, knockback and a camera tilt. The bow is held, drawn and aimed naturally in first and third person, shows its draw stages with an arrow, and slows the player while drawn. Sneaking lowers the eyes, bends the figure at the hips and keeps you from falling off edges.
  • Water: air under water and drowning; water stays visible behind glass and ice; the refraction no longer shifts edges. Fish swim only through water they fit in.
  • Creatures: the squid, with pulsed swimming, ink clouds and ink sacs.
  • Items: dropped items are one solid, turning item; HD tools have straight outlines and are held by the handle.
  • Menus and screens: inventories and all machines share one frame with a title, a close key, labelled slots and key hints. The main menu lists every world once, with a "…" menu to open its folder or delete it. Texture packs are grouped into active and inactive, and the character page is grouped. The world stands still behind the pause menu and other menus. Loading and start screens show real progress. Chat remembers what you typed (arrow up and down). A failed join explains why, and a broken first start recovers.
  • Handbook: pages scale with the interface, technical facts are folded under "Technical", and creatures, biomes and features have icons.
  • Graphics: shadows are steady; clouds, smoke, runes and capes animate on their own clock; the game falls back cleanly when the graphics device is lost.
  • Qt 6.12: the packages use open-source Qt 6.12.0. Frame times are unchanged within measurement noise against Qt 6.8.

Worlds and compatibility

  • Worlds from 0.1.0 open in 1.0.0 and keep generating new chunks with generator version 1.
  • Generator versions 1 and 2 are frozen: later releases generate new chunks of such a world exactly as this release does (on the same system).
  • Worlds created with a release candidate of 1.0.0 are version 1 worlds and continue like worlds from 0.1.0.
  • Client and server must use the same release; 1.0.0 cannot play together with 0.1.0 or a release candidate.

Known limitations

  • macOS: needs macOS 14.4 or newer, because Qt 6.12 does. The app is not notarised: on macOS 15 and later try to open it once, then allow it under System Settings → Privacy & Security → Open Anyway; on macOS 14 right-click (Control-click) the app and choose Open.
  • Windows: the program is not signed; SmartScreen asks on the first start (More info → Run anyway).
  • Linux: the AppImage needs glibc 2.39 or newer (Ubuntu 24.04, Debian 13, Fedora 40 or newer) and OpenSSL 3 from the system. It was built and played in a Fedora ARM64 VM; the x86-64 package from the release workflow has not been started on a real PC yet. There is no ARM64 AppImage yet.
  • Sound: the generated sounds and music have not had a dedicated listening review yet.

Downloads and licences

Checked on the build machines: tests (macOS), package contents, licence texts, signature and
universal binaries (macOS), imported DLLs (Windows), linked libraries (Linux) and a start of
the dedicated server, on Windows and Linux with TLS and a bot that joins it. The game itself
was not started there.

macOS (Apple silicon and Intel, macOS 14.4 or newer): QtCraft-*-macOS.zip or .dmg. The app is
not notarised, so macOS refuses its first start. On macOS 15 and later try to open it once,
then click Open Anyway under System Settings, Privacy & Security; on macOS 14
right-click (Control-click) the app in Finder, choose Open and confirm.

Windows 10 or 11, x64: QtCraft-1.0.0-Windows-x64.zip. Unpack it completely and
start qtcraft.exe; README-Windows.txt explains the SmartScreen warning (the program is not
signed). The -pdb.zip holds the debug symbols for crash reports and is not needed to play.

Linux, x86_64 (glibc 2.39 or newer, e.g. Ubuntu 24.04, Debian 13, Fedora 40): one file,
QtCraft-1.0.0-Linux-x86_64.AppImage. Make it executable (chmod +x) and start it;
the same file runs the dedicated server with --headless as the first argument. It needs
OpenSSL 3 of the system and FUSE (or --appimage-extract-and-run);
QtCraft-1.0.0-Linux-README.txt explains both.

QtCraft is licensed under GPL-3.0-or-later. The packages contain Qt 6.12.0, used under
the GNU LGPL version 3, and the FFmpeg libraries of Qt Multimedia (GNU LGPL version 2.1 or
later); the licence texts and a notice are in QtCraft.app/Contents/Resources/licenses (macOS),
in the folder licenses of the Windows package and in usr/share/doc/qtcraft/licenses inside
the AppImage (--appimage-extract).
Corresponding source: