"match_signal" error returned when attempting to use match_create to create a server authorative match

{While I have been able to figure out most of Nakama by reading the docs, looking at examples, or trial and error, this issue has me stumped. I have two lua scripts in my module folder: “CoreLogic.lua” and “MatchState.lua”. The second one holds the match handler function callbacks as described in the docs. When I execute the following function from the CoreLogic script:

local function createMatch( match_info )
nk.logger_info(“Creating a new Match”)

local modulename = “MatchState”
local setupstate = { mInfo = match_info }
local matchid = nk.match_create(modulename, setupstate)
return matchid
end

I receive the following error in the logs:

{“level”:“error”,“ts”:“2021-11-18T21:26:56.459Z”,“caller”:“server/runtime_lua.go:1226”,“msg”:“Runtime RPC function caused an error”,“id”:“gamematch”,“error”:“data/modules/CoreLogic.lua:1553: match_signal not found or not a function\nstack traceback:\n\t[G]: in function ‘match_create’\n\tdata/modules/CoreLogic.lua:1553: in main chunk\n\t[G]: ?”}

I have parsed over every bit of sample code at my disposal with a fine-toothed comb, but have been unable to find any obvious syntax or context errors that I’ve made. I’ve also searched for more information, but as of yet have found nothing to help solve this issue. I would greatly appreciate any assistance that anyone could provide.}

  1. Versions: Nakama {3.9}, {Docker}, {Godot SDK, version not listed in files}
  2. Server Framework Runtime language (If relevant) {Lua}
{code or log snippet}

:tv: Media:

Problem solved.

For anyone who comes along after me with this issue, be aware that there are actually seven (7) functions that need to be created for the match handler API, not six (6) as is shown in the examples and videos available for Nakama. The seventh (match_signal) is only described in the documentation.

@ReducioAbsurdum You are correct, match_signal is a new function introduced with Nakama 3.8.0. Unfortunately this is one of the drawbacks with video-format tutorials and examples, they’re much harder to keep up to date when changes like this are involved. :+1:

No worries – although I would suggest that you add this function to the example given within the docs themselves. :sunglasses: