v0.3.0
NOTE: This release requires the latest plugins. Update your plugins by changing the directory to qlds/minqlx-plugins
and doing git pull
.
- Added boolean flags to the abstract database class and the Redis implementation. (by @carmethene)
- Changed
new_game
andmap
event to go off slightly later when changing maps to allow instantiating minqlx.Game without it throwing an exception due to configstring 0 not being set. - Added possibility to reference custom workshop items. This can be done by hooking
map
and doing for instanceself.game.steamworks_items += [workshop_id1, workshop_id2]
. Note that the server is not aware of the reference, so it can't be used to add maps and such while running, but it can be used to add custom sounds. - Added new event
userinfo
which passes the player and a dictionary containing the changes made to their current userinfo cvars (which can be accessed withplayer.cvars
). You can modify the dictionary and return it in the handler to modify the changes or add your own before passing it on to the engine. - Added setters for a lot of player cvars set using userinfo. For instance, it's now possible to do
player.handicap = 50
orplayer.country = "jp"
. Note that the client still believes it has the older cvars, so any change to a userinfo cvar by the client will try to revert the changes made server-side. To avoid this, hookuserinfo
and check for those changes. Seenames
plugin for an example. - Removed the net_port from
player.ip
. - Fixed a bug where modifying client commands in
client_command
event could cause the engine to process a gibberish string due to it being deallocated before use. Preemptively did the same fix to other events as well. - Made the minqlx map subtitles append instead of replace the map's subtitle to avoid overwriting map credits.
- Added
player.is_alive
property with a setter that allows killing and respawning a player. - Made it possible to use the special keyword
DEFAULT
in theqlx_plugins
list to load all the default plugins. Useful if you want to load default plugins and some other ones, but don't want to manually add new default ones. - Simplified version setting when compiling C module. Will no longer leave
common.h
dirty if you for instance were to interrupt it mid-compile. - Added branch name to versions.
- Made commands execute before the
chat
event instead of the other way around. This prevents plugins likeirc
andlog
from logging commands as if typed in chat that don't actually show up in-game. - Changed
minqlx.console_command()
to execute immediately instead of the next frame. - Added a way to redirect output from
minqlx.console_command()
to a channel.- Example:
with minqlx.redirect_print(channel): minqlx.console_command("echo Hello world!")
- Example:
- Added
player.channel
property that is aTellChannel
instance for that player. - Various smaller changes and bug fixes you can read about in commit messages.