Вопрос Краш Игры

  • 500
  • 9
  • 94
Контакты для связи отсутствуют.
и зачем вообще удалять class == "worldspawn"
Он наоборот его добавил в исключение, оператор continue пропускает обьект в итерации. Это исключительно гмодовский оператор, который не существует в обычном луа, не советую использовать его.
 
  • 500
  • 9
  • 94
Контакты для связи отсутствуют.
Я кстати не представляю что твой скрипт может ломать если он не может удалить буквально ничего, потому что запускается позже чем энтити появляются на карте.

Server loading order​

  • includes/init.lua - Everything from includes/ is included from this file
  • gamemodes/base/gamemode/init.lua - Everything from gamemodes/base/gamemode/ is included from this file
  • autorun/
    • autorun/server/ <- Скрипт выполнился один раз здесь
    • autorun/server/sensorbones
  • includes/dev_server_test.lua - Only executed if the -systemtest command line parameters were added.
  • gamemodes/*gamemodename*/gamemode/init.lua - Everything from gamemodes/*gamemodename*/gamemode/ is included from this file
  • weapons/
    • weapons/gmod_tool/stools/
  • entities/ <- Энтити появляются здесь
  • effects/
 
  • 500
  • 9
  • 94
Контакты для связи отсутствуют.
По какому пути расположен твой скрипт? Это отдельный файл? Замени свой скрипт на вот это
JavaScript:
file.Append( "trace.txt", tostring(os.clock()).." | Started removing govno\n" )
for _, e in ipairs(ents.GetAll()) do
    local class = e:GetClass()
    if e:IsPlayer() or class == "worldspawn" or class:find("info_player_start") then
        continue
    end
    if class:find("door") or class:find("glass") or class:find("breakable") or class:find("viewmodel") then
        continue
    end
    if class:find("vehicle") or class:find("vc_") or class:find("seat") or class:find("prop_vehicle") then
        continue
    end
    if class:find("env_particlesystem") or class:find("particles") or class:find("gmod_effect") or class:find("env_scripted_sequence") then
        continue
    end
    if e:GetOwner() and e:GetOwner():IsPlayer() then
        continue
    end
    file.Append( "trace.txt", tostring(os.clock()).." | Removing:  "..tostring(e).."\n" )
    e:Remove()
end
file.Append("trace.txt", tostring(os.clock()).." | Finished removing shit\n")
запусти сервер, после этого достань из папки /garrysmod/data файл trace.txt и скинь сюда. В нём будут написаны все энтити которые твой скрипт попытался удалить (кроме исключений).
 
  • 68
  • 2
Контакты для связи отсутствуют.
По какому пути расположен твой скрипт? Это отдельный файл? Замени свой скрипт на вот это
JavaScript:
file.Append( "trace.txt", tostring(os.clock()).." | Started removing govno\n" )
for _, e in ipairs(ents.GetAll()) do
    local class = e:GetClass()
    if e:IsPlayer() or class == "worldspawn" or class:find("info_player_start") then
        continue
    end
    if class:find("door") or class:find("glass") or class:find("breakable") or class:find("viewmodel") then
        continue
    end
    if class:find("vehicle") or class:find("vc_") or class:find("seat") or class:find("prop_vehicle") then
        continue
    end
    if class:find("env_particlesystem") or class:find("particles") or class:find("gmod_effect") or class:find("env_scripted_sequence") then
        continue
    end
    if e:GetOwner() and e:GetOwner():IsPlayer() then
        continue
    end
    file.Append( "trace.txt", tostring(os.clock()).." | Removing:  "..tostring(e).."\n" )
    e:Remove()
end
file.Append("trace.txt", tostring(os.clock()).." | Finished removing shit\n")
запусти сервер, после этого достань из папки /garrysmod/data файл trace.txt и скинь сюда. В нём будут написаны все энтити которые твой скрипт попытался удалить (кроме исключений).



привет,скрипт расположен в GarrysMod\garrysmod\lua
вот кстати видео как это случается:Watch 2024-12-24 18-29-33 | Streamable
 
  • 500
  • 9
  • 94
Контакты для связи отсутствуют.
привет,скрипт расположен в GarrysMod\garrysmod\lua
вот кстати видео как это случается:Watch 2024-12-24 18-29-33 | Streamable
Это не лучшее расположение, убери его оттуда.
Сделай следующий путь:
GarrysMod/garrysmod/addons/obkak/lua/autorun/server/
По этому пути сделай файл script.lua и запиши в него свой код. Попробуй запуститься с ним.
 
  • 68
  • 2
Контакты для связи отсутствуют.
Это не лучшее расположение, убери его оттуда.
Сделай следующий путь:
GarrysMod/garrysmod/addons/obkak/lua/autorun/server/
По этому пути сделай файл script.lua и запиши в него свой код. Попробуй запуститься с ним.
ничего не изменилось :(
 
Сверху Снизу