Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Error loading script server/main.lua in resource skincreator: #31

Open
gouyeh opened this issue Jun 19, 2020 · 3 comments
Open

Error loading script server/main.lua in resource skincreator: #31

gouyeh opened this issue Jun 19, 2020 · 3 comments

Comments

@gouyeh
Copy link

gouyeh commented Jun 19, 2020

I am getting this error everything is setup correctly.

Using Linux

Creating script environments for skincreator
Error loading script server/main.lua in resource skincreator: @skincreator/server/main.lua:59: attempt to call a nil value (field 'RegisterCommand')
stack traceback:
        @skincreator/server/main.lua:59: in main chunk
Failed to load script server/main.lua.
Assertion failed: m_marks.empty() (../../../components/citizen-server-impl/src/ResourceFilesComponent.cpp: ~MarkedWriter: 22)
Stacktrace:

/proc/self/maps:
40b21000-40b31000 rwxp 00000000 00:00 0
40c6a000-40d3a000 rwxp 00000000 00:00 0
41084000-41134000 rwxp 00000000 00:00 0
41b92000-41cc7000 rwxp 00000000 00:00 0
2c5d680000-2c5d6c0000 rw-p 00000000 00:00 0
2f58ab00000-2f58ab40000 rw-p 00000000 00:00 0
5dcb1f80000-5dcb1fc0000 rw-p 00000000 00:00 0
6f0d6e00000-6f0d6e16000 rw-p 00000000 00:00 0
7678f580000-7678f5c0000 r--p 00000000 00:00 0
7684b340000-7684b380000 rw-p 00000000 00:00 0
7f1d6880000-7f1d68c0000 rw-p 00000000 00:00 0
b044d240000-b044d280000 rw-p 00000000 00:00 0
b214d500000-b214d540000 rw-p 00000000 00:00 0
ed750e00000-ed750e40000 rw-p 00000000 00:00 0
11fae9f40000-11fae9f80000 rw-p 00000000 00:00 0
127a32340000-127a32380000 rw-p 00000000 00:00 0
1336b7740000-1336b7780000 rw-p 00000000 00:00 0
137088c00000-137088c40000 rw-p 00000000 00:00 0
1429c30c0000-1429c3100000 rw-p 00000000 00:00 0
15a778bc0000-15a778c00000 rw-p 00000000 00:00 0
173f86440000-173f86480000 rw-p 00000000 00:00 0
17d283138000-17d283140000 rw-p 00000000 00:00 0
1af2fe500000-1af2fe540000 rw-p 00000000 00:00 0
1b96b1a80000-1b96b1ac0000 rw-p 00000000 00:00 0
1d7531400000-1d7531440000 rw-p 00000000 00:00 0
Memory around native instruction pointer (0x56201bba09ff):
0x56201bba09ef  00 00 b8 0e 00 00 00 31 d2 bf 02 00 00 00 0f 05  .......1........
0x56201bba09ff  c3 48 63 ff 50 b8 24 00 00 00 0f 05 48 89 c7 e8  .Hc.P.$.....H...
0x56201bba0a0f  8f 9a fd ff 5a c3 48 63 ff 50 48 63 f6 b8 3e 00  ....Z.Hc.PHc..>.
0x56201bba0a1f  00 00 0f 05 48 89 c7 e8 77 9a fd ff 5a c3 85 ff  ....H...w...Z...

@boermansjo
Copy link
Owner

Hi, not sure if this has something to do with Linux, but you get an error on the function to create admin/player commands.
If it causes problems for you, you can delete them or change that part to a compatible function you can use.

@rogermurgo
Copy link

rogermurgo commented Jul 9, 2020

I've got the same error but without line of failure. I tried to change the admin command creation and it would not fix it.
The issue is caused by the fxmanifest using wildcard inports/references. That causes an permission acess error, all the used resouces have to be writen on that file.

UPDATE: Also that could be caused by the nesting of 2 wild card paths. -> 'ui/assets/*', 'ui/assets/heritage/*', (IDK)

Replace the:
files { 'ui/index.html', 'ui/assets/*', 'ui/assets/heritage/*', 'ui/fonts/*', 'ui/css/*', 'ui/js/*', }

With (FIY if the resources have changed on further commits):
files { 'ui/index.html', 'ui/css/style.css', 'ui/css/tabs.css', 'ui/js/front.js', 'ui/js/script.js', 'ui/assets/arrow-left.png', 'ui/assets/clothes.png', 'ui/assets/head.png', 'ui/assets/identity.png', 'ui/assets/radio-check-black.png', 'ui/assets/rotate-left.pn', 'ui/assets/arrow-right.png', 'ui/assets/cursor.png', 'ui/assets/pilosite.png', 'ui/assets/radio-check.png', 'ui/assets/rotate-right.pg', '/ui/assets/heritage/Face-0.jpg', '/ui/assets/heritage/Face-1.jpg', '/ui/assets/heritage/Face-10.jpg', '/ui/assets/heritage/Face-11.jpg', '/ui/assets/heritage/Face-12.jpg', '/ui/assets/heritage/Face-13.jpg', '/ui/assets/heritage/Face-14.jpg', '/ui/assets/heritage/Face-15.jpg', '/ui/assets/heritage/Face-16.jpg', '/ui/assets/heritage/Face-17.jpg', '/ui/assets/heritage/Face-18.jpg', '/ui/assets/heritage/Face-19.jpg', '/ui/assets/heritage/Face-2.jpg', '/ui/assets/heritage/Face-20.jpg', '/ui/assets/heritage/Face-21.jpg', '/ui/assets/heritage/Face-22.jpg', '/ui/assets/heritage/Face-23.jpg', '/ui/assets/heritage/Face-24.jpg', '/ui/assets/heritage/Face-25.jpg', '/ui/assets/heritage/Face-26.jpg', '/ui/assets/heritage/Face-27.jpg', '/ui/assets/heritage/Face-28.jpg', '/ui/assets/heritage/Face-29.jpg', '/ui/assets/heritage/Face-3.jpg', '/ui/assets/heritage/Face-30.jpg', '/ui/assets/heritage/Face-31.jpg', '/ui/assets/heritage/Face-32.jpg', '/ui/assets/heritage/Face-33.jpg', '/ui/assets/heritage/Face-34.jpg', '/ui/assets/heritage/Face-35.jpg', '/ui/assets/heritage/Face-36.jpg', '/ui/assets/heritage/Face-37.jpg', '/ui/assets/heritage/Face-38.jpg', '/ui/assets/heritage/Face-39.jpg', '/ui/assets/heritage/Face-4.jpg', '/ui/assets/heritage/Face-40.jpg', '/ui/assets/heritage/Face-41.jpg', '/ui/assets/heritage/Face-42.jpg', '/ui/assets/heritage/Face-43.jpg', '/ui/assets/heritage/Face-44.jpg', '/ui/assets/heritage/Face-45.jpg', '/ui/assets/heritage/Face-5.jpg', '/ui/assets/heritage/Face-6.jpg', '/ui/assets/heritage/Face-7.jpg', '/ui/assets/heritage/Face-8.jpg', }

@PK-Scripts
Copy link

PK-Scripts commented Oct 25, 2020

No its because es_extended doesnt have RegisterCommand
fix:
Go to es_extended/server open functions.lua add

ESX.RegisterCommand = function(name, group, cb, allowConsole, suggestion)
if type(name) == 'table' then
for k,v in ipairs(name) do
ESX.RegisterCommand(v, group, cb, allowConsole, suggestion)
end

	return
end

if ESX.RegisteredCommands[name] then
	print(('[es_extended] [^3WARNING^7] An command "%s" is already registered, overriding command'):format(name))

	if ESX.RegisteredCommands[name].suggestion then
		TriggerClientEvent('chat:removeSuggestion', -1, ('/%s'):format(name))
	end
end

if suggestion then
	if not suggestion.arguments then suggestion.arguments = {} end
	if not suggestion.help then suggestion.help = '' end

	TriggerClientEvent('chat:addSuggestion', -1, ('/%s'):format(name), suggestion.help, suggestion.arguments)
end

ESX.RegisteredCommands[name] = {group = group, cb = cb, allowConsole = allowConsole, suggestion = suggestion}

RegisterCommand(name, function(playerId, args, rawCommand)
	local command = ESX.RegisteredCommands[name]

	if not command.allowConsole and playerId == 0 then
		print(('[es_extended] [^3WARNING^7] %s'):format(_U('commanderror_console')))
	else
		local xPlayer, error = ESX.GetPlayerFromId(playerId), nil

		if command.suggestion then
			if command.suggestion.validate then
				if #args ~= #command.suggestion.arguments then
					error = _U('commanderror_argumentmismatch', #args, #command.suggestion.arguments)
				end
			end

			if not error and command.suggestion.arguments then
				local newArgs = {}

				for k,v in ipairs(command.suggestion.arguments) do
					if v.type then
						if v.type == 'number' then
							local newArg = tonumber(args[k])

							if newArg then
								newArgs[v.name] = newArg
							else
								error = _U('commanderror_argumentmismatch_number', k)
							end
						elseif v.type == 'player' or v.type == 'playerId' then
							local targetPlayer = tonumber(args[k])

							if args[k] == 'me' then targetPlayer = playerId end

							if targetPlayer then
								local xTargetPlayer = ESX.GetPlayerFromId(targetPlayer)

								if xTargetPlayer then
									if v.type == 'player' then
										newArgs[v.name] = xTargetPlayer
									else
										newArgs[v.name] = targetPlayer
									end
								else
									error = _U('commanderror_invalidplayerid')
								end
							else
								error = _U('commanderror_argumentmismatch_number', k)
							end
						elseif v.type == 'string' then
							newArgs[v.name] = args[k]
						elseif v.type == 'item' then
							if ESX.Items[args[k]] then
								newArgs[v.name] = args[k]
							else
								error = _U('commanderror_invaliditem')
							end
						elseif v.type == 'weapon' then
							if ESX.GetWeapon(args[k]) then
								newArgs[v.name] = string.upper(args[k])
							else
								error = _U('commanderror_invalidweapon')
							end
						elseif v.type == 'any' then
							newArgs[v.name] = args[k]
						end
					end

					if error then break end
				end

				args = newArgs
			end
		end

		if error then
			if playerId == 0 then
				print(('[es_extended] [^3WARNING^7] %s^7'):format(error))
			else
				xPlayer.triggerEvent('chat:addMessage', {args = {'^1SYSTEM', error}})
			end
		else
			cb(xPlayer or false, args, function(msg)
				if playerId == 0 then
					print(('[es_extended] [^3WARNING^7] %s^7'):format(msg))
				else
					xPlayer.triggerEvent('chat:addMessage', {args = {'^1SYSTEM', msg}})
				end
			end)
		end
	end
end, true)

if type(group) == 'table' then
	for k,v in ipairs(group) do
		ExecuteCommand(('add_ace group.%s command.%s allow'):format(v, name))
	end
else
	ExecuteCommand(('add_ace group.%s command.%s allow'):format(group, name))
end

end

and add this in es_extended/server/common.lua

ESX.RegisteredCommands = {}

and its fixed

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants