Skip to content

v0.3.0

Compare
Choose a tag to compare
@MinoMino MinoMino released this 04 Dec 17:49
· 146 commits to master since this release

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 and map 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 instance self.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 with player.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 or player.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, hook userinfo and check for those changes. See names 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 the qlx_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 like irc and log 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!")
  • Added player.channel property that is a TellChannel instance for that player.
  • Various smaller changes and bug fixes you can read about in commit messages.