Hey, after running my skript (ignore the crappy code), my server hangs forever, 0 errors. It did have errors of hanging when reloading, which prompted a restart, but after that restart, it gets to [20:15:37 INFO]: [Skript] Loading variables... [20:15:37 INFO]: [Skript] Loaded 2 variables in 0.0 seconds and then nothing for hours. Here's my code.
#Server hanging / timing out
1 messages · Page 1 of 1 (latest)
After implimenting all the lightning lines, and loops it just hangs. Even after commenting, though the issue persists.
But when I disable the skript, it loads just fine.
(blocked out server link to avoid advertising)
Thanks for your time, just give me a quick ping if you respond.
set {locations::*} to location(16.59, 55, -9.42) in world("world"), location(-16.43, 55, -9.43) in world("world"), location(-17.52, 55, -6.49) in world("world"), location(-17.41, 55, 0.01) in world("world"), location(-17.42, 55, 6.46) in world("world"), location(-15.39, 55, 10.57) in world("world"), location(-4.57, 55, 17.58) in world("world"), location(4.58, 55, 17.64) in world("world"), location(15.31, 55, 10.35) in world("world"), location(17.53, 55, 6.46) in world("world"), location(17.68, 55, -0.05) in world("world"), location(17.42, 55, -6.68) in world("world")
isnt that identical to my code, yet the world is named "world" instead of "hub"?
ohhh thank you
i forgot i defined it on the first line
while I'm restarting, why does it hang the server without error?
it's still hanging...
Probably because it's stuck parsing
That list of locations is like the worst thing for the parser
heh, I'd imagine. Is there any more efficient way of summoning a lightning bolt at each location at the same time?
Wrap each location in ()
like so?
set {locations::*} to (location(16.59, 55, -9.42) in world("hub")), # and so on
Mhm
Much better than literally no error:
[21:10:14 INFO]: Functions cannot be used here (or there is a problem with your arguments).
[21:10:14 INFO]: Line: set {locations::*} to (location(16.59, 55, -9.42) in world("hub")), (location(-16.43, 55, -9.43) in world("hub")), (location(-17.52, 55, -6.49) in world("hub")), (location(-17.41, 55, 0.01) in world("hub")), (location(-17.42, 55, 6.46) in world("hub")), (location(-15.39, 55, 10.57) in world("hub")), (location(-4.57, 55, 17.58) in world("hub")), (location(4.58, 55, 17.64) in world("hub")), (location(15.31, 55, 10.35) in world("hub")), (location(17.53, 55, 6.46) in world("hub")), (location(17.68, 55, -0.05) in world("hub")), (location(17.42, 55, -6.68) in world("hub"))
that's pretty interesting-
i guess i could do something like ```lua
set {locations::1} to location(16.59, 55, -9.42) in world("hub")
set {locations::2} to location(-16.43, 55, -9.43) in world("hub")
set {locations::3} to location(-17.52, 55, -6.49) in world("hub")
set {locations::4} to location(-17.41, 55, 0.01) in world("hub")
set {locations::5} to location(-17.42, 55, 6.46) in world("hub")
set {locations::6} to location(-15.39, 55, 10.57) in world("hub")
set {locations::7} to location(-4.57, 55, 17.58) in world("hub")
set {locations::8} to location(4.58, 55, 17.64) in world("hub")
set {locations::9} to location(15.31, 55, 10.35) in world("hub")
set {locations::10} to location(17.53, 55, 6.46) in world("hub")
set {locations::11} to location(17.68, 55, -0.05) in world("hub")
set {locations::12} to location(17.42, 55, -6.68) in world("hub")
but is there some better way to do this without, well erroring out or timing out the server
instead of in world("hub") after the location, you can include it directly in the function location(x, y, z, world "spawn")
there is also another way that can utilize armor stands (if you make them invisible and have the Marker tag, they will be immune to lightning and other damage), and add a scoreboard tag to the armor stands where you want the lightning to go, then make your code summon a lightning bolt at the armor stands: loop all armor stands in world "hub" where [input has scoreboard tag "lightning"]: summon lightning bolt at location of loop-entity
Something like this should do the trick, or you can use console commands as well with Minecraft's built-in commands (still recommend Skript's things over executing console commands): make console execute command "/minecraft:execute as armor_stand[tag=lightning] run summon lightning_bolt ~ ~ ~"