The player stands like a giant near the vehicles. Now you can adjust the size of your character -- and you can change your appearance at any time if you've other mods that provide extra characters!
Small changes concerning balance, gameplay, or graphics.
Hey, I was going about my business on my multiplayer SE server, and for some reason the server crashed with this error:
The mod miniMAXIme: Character scaler and selector (1.1.30) caused a non-recoverable error.
Please report this error to the mod author.
Error while running event minime::Custom event (ID 264)
Given entity doesn't exist anymore.
stack traceback:
[C]: in function '__newindex'
__minime__/scripts/character.lua:85: in function 'copy_properties'
__minime__/scripts/character.lua:1817: in function 'event_handler'
__minime__/scripts/events.lua:282: in function <__minime__/scripts/events.lua:279>
stack traceback:
[C]: in function 'raise_event'
__space-exploration__/scripts/remote-view.lua:385: in function 'stop'
__space-exploration__/control.lua:2337: in function 'callback'
__space-exploration__/scripts/event.lua:15: in function <__space-exploration__/scripts/event.lua:13>
The same error is now shown whenever trying to load that autosave.
I made my own patch, which does work to get back into the savefile:
diff -r minime_1.1.30/scripts/character.lua minime/scripts/character.lua
1808c1808
< if char and char.valid then
---
> if char and char.valid and p_data and p_data.valid then
1817c1817,1819
< copy_properties(p_data.dummy, char)
---
> if p_data.dummy.valid then
> copy_properties(p_data.dummy, char)
> end
This is modifying the SE_remote_view_stopped to ensure the p_data.dummy is actually valid before trying to write to it.
I'm not sure if this is a proper fix for the error though.
Thanks for the report! Not sure your fix will work. It just makes the mod not copy properties from player character to dummy (or vice versa), which will prevent the crash but won't update the data. I wonder how you've got into the state where the dummy has become invalid.
Could you upload the saved game somewhere, so that I can investigate what went wrong? If you care to take a look yourself, you can also turn on debugging to logfile in the startup settings. However, that will dump an insane amount of data, so your logfile may become very big very fast. :-)
Same error here; it is really annoying because it usually happens when exiting god mode or landing with a jetpack. On multiplayer we have this every 5-30 minutes now :(
3276.485 Error MainLoop.cpp:1288: Exception at tick 34253660: The mod miniMAXIme: Character scaler and selector (1.1.30) caused a non-recoverable error.
Please report this error to the mod author.
Error while running event minime::Custom event (ID 269)
Given entity doesn't exist anymore.
stack traceback:
[C]: in function '__newindex'
__minime__/scripts/character.lua:85: in function 'copy_properties'
__minime__/scripts/character.lua:1817: in function 'event_handler'
__minime__/scripts/events.lua:282: in function <__minime__/scripts/events.lua:279>
stack traceback:
[C]: in function 'raise_event'
__space-exploration__/scripts/remote-view.lua:385: in function 'stop'
__space-exploration__/scripts/remote-view.lua:704: in function 'toggle'
__space-exploration__/scripts/remote-view.lua:770: in function 'callback'
__space-exploration__/scripts/event.lua:15: in function <__space-exploration__/scripts/event.lua:13>
3276.485 Error ServerMultiplayerManager.cpp:92: MultiplayerManager failed: "The mod miniMAXIme: Character scaler and selector (1.1.30) caused a non-recoverable error.
Please report this error to the mod author.
Error while running event minime::Custom event (ID 269)
Given entity doesn't exist anymore.
stack traceback:
[C]: in function '__newindex'
__minime__/scripts/character.lua:85: in function 'copy_properties'
__minime__/scripts/character.lua:1817: in function 'event_handler'
__minime__/scripts/events.lua:282: in function <__minime__/scripts/events.lua:279>
stack traceback:
[C]: in function 'raise_event'
__space-exploration__/scripts/remote-view.lua:385: in function 'stop'
__space-exploration__/scripts/remote-view.lua:704: in function 'toggle'
__space-exploration__/scripts/remote-view.lua:770: in function 'callback'
__space-exploration__/scripts/event.lua:15: in function <__space-exploration__/scripts/event.lua:13>"
3276.485 Info ServerMultiplayerManager.cpp:795: updateTick(34253660) changing state from(InGame) to(Failed)
edited: code formatting
Same error here; it is really annoying because it usually happens when exiting god mode or landing with a jetpack. On multiplayer we have this every 5-30 minutes now :(
I couldn't reproduce this so far. Also, I don't understand how the dummy should become invalid. Are there any other mods that delete characters without a player, perhaps?
We have these mods; to my understanding only Factorissimo, Rampant and Minime should use surfaces, which usually cause problems. The modlist is supposed to be a general Space Exploration run with some QoL mods. We are testing @Shadow_Larkens' fix currently (though we too are not sure how it should solve anything).
aai-containers_0.2.11.zip
aai-industry_0.5.20.zip
aai-signal-transmission_0.4.7.zip
aai-vehicles-ironclad_0.6.8.zip
alien-biomes_0.6.8.zip
belt-visualizer_1.2.3.zip
BottleneckLite_1.2.4.zip
bullet-trails_0.6.2.zip
combat-mechanics-overhaul_0.6.24.zip
equipment-gantry_0.1.5.zip
Factorissimo2_2.5.3.zip
FactorySearch_1.10.13.zip
Fill4Me_0.10.0.zip
flib_0.12.9.zip
FNEI_0.4.1.zip
grappling-gun_0.3.3.zip
helmod_0.12.15.zip
informatron_0.3.4.zip
jetpack_0.3.13.zip
LargeLamp_1.1.0.zip
LogisticRequestManager_1.1.28.zip
MaxRateCalculator_3.4.48.zip
Milestones_1.3.18.zip
minime_1.1.30.zip
ModuleInserter_5.2.4.zip
ModuleInserterSimplified_1.1.3.zip
nightvision_progression_1.0.3.zip
PipeVisualizer_1.0.6.zip
PumpAnywhere_0.1.10.zip
Rampant_3.3.2.zip
robot_attrition_0.5.15.zip
se-space-trains_0.1.12.zip
shield-projector_0.1.6.zip
simhelper_1.1.4.zip
space-exploration_0.6.108.zip
space-exploration-graphics_0.6.15.zip
space-exploration-graphics-2_0.6.1.zip
space-exploration-graphics-3_0.6.2.zip
space-exploration-graphics-4_0.6.2.zip
space-exploration-graphics-5_0.6.1.zip
space-exploration-menu-simulations_0.6.8.zip
space-exploration-official-modpack_0.6.3.zip
space-exploration-postprocess_0.6.26.zip
SpeedyControl_1.0.5.zip
Squeak Through_1.8.2.zip
textplates_0.6.10.zip
VehicleSnap_1.18.5.zip
vtk-armor-reach_1.13.1.zip
We played for over 1h30m with the fix, and we did not observe any issues (no lost inventory, no crash, nothing). So whatever it does, it seems like its working (though when we first started playing, we did not have issues for over an hour as well, so it might just be luck again).
ps. I appreciate both of yours' efforts and work, I hope I did not offend anyone by saying we had issues / that the fix might not work.
We are testing @Shadow_Larkens' fix currently
I couldn't find any mod by searching for "Shadow_Larken". Did you mean Larkenx's Krastorio2 and Space Exploration Tweaks by any chance?
We played for over 1h30m with the fix, and we did not observe any issues (no lost inventory, no crash, nothing). So whatever it does, it seems like its working (though when we first started playing, we did not have issues for over an hour as well, so it might just be luck again).
Well, I do hope this works! :-)
I hope I did not offend anyone by saying we had issues / that the fix might not work.
You've used normal language and didn't show an impudent attitude in your report. So why should I be offended if you point out problems in my mod? I want it to be in a good, working state. But as I don't have much time for playing, I rely on players taking the time to report the problems I'm not aware of …
Shadow_Larkens is the one who opened this thread, with a code snippet which we put in to use. Next test is on Thursday :)
You should not be offended, that's the point. Man I am not used to the factorio community, you don't have the time to play yet you still care for your mod, that's really awesome but absolutely not the norm for everyone. I was probably a bit too careful phrasing that part, but hey, we appreciate your efforts and don't want to take it for granted / sound like unsatisfied people because someones software is not working (which he made in his free time, for free, and otherwise is great, and perhaps the problem roots in another mod, etc).
Shadow_Larkens is the one who opened this thread, with a code snippet which we put in to use. Next test is on Thursday :)
Ooops. :-)
Man I am not used to the factorio community, you don't have the time to play yet you still care for your mod, that's really awesome but absolutely not the norm for everyone.
I used to play, then I started with some small mods to improve my playing experience. Then the mods became more, and bigger, so modding is my game now. Finding solutions to problems, keeping the big picture in view (not just one individual mod, but how it interacts with others), that's kind of fun, too. :-)
I was probably a bit too careful phrasing that part, but hey, we appreciate your efforts and don't want to take it for granted / sound like unsatisfied people because someones software is not working (which he made in his free time, for free, and otherwise is great, and perhaps the problem roots in another mod, etc).
Thanks, I appreciate that!
This should be fixed in version 1.1.31. However, unlike in Shadow_Larkens' patch, I don't skip copy_properties() if the dummy is not valid, but create a new dummy.
Hej!
When start from savegame wrote that:
Mod miniMAXIme: Character scaler and selector (1.1.31) caused a non-recoverable error.
Please report this error to the mod author.Error while running event minime::on_load()
minime/control.lua:539:[ER Global Lock] Forbidden global read:
{key = "COLOR_CHANGED_EVENT"}stack traceback:
[C]: in function 'error'
minime/control.lua:539: in function 'index'
__minime/scripts/events.lua:96: in function 'get_event_handlers'
minime/control.lua:46: in function 'attach_events'
minime/control.lua:508: in function <minime/control.lua:491>
And when new game:
Mod Bob's Classes and Multiple characters mod (1.1.5) caused a non-recoverable error.
Please report this error to the mod author.Error while running event bobclasses::on_init()
Error when running interface function minime.bob_classes_update: minime/control.lua:539:[ER Global Lock] Forbidden global read:
{key = "COLOR_CHANGED_EVENT"}stack traceback:
[C]: in function 'error'
minime/control.lua:539: in function 'index'
__minime/scripts/events.lua:96: in function 'get_event_handlers'
minime/control.lua:46: in function 'attach_events'
minime/control.lua:297: in function 'init'
minime/scripts/remote_interface.lua:348: in function <minime/scripts/remote_interface.lua:343>
stack traceback:
[C]: in function 'call'
bobclasses/control.lua:567: in function <bobclasses/control.lua:254>
I hope for fix. Thank you for your mod!
When start from savegame wrote that:
Thanks for the report! I didn't catch that because this only happens with old versions (<1.1.83) of Factorio. It should be fixed in version 1.1.32 of this mod.
Hi, as I see it is the same again...
We updated Factorio to 1.1.87 and updated all of our mods, incl. minime to 1.1.36.
https://imgur.com/a/IkRrD2d (sorry the log this time is an image, but it is NOT nsfw)
It should be a very rare error and with frequent nonblocking autosave it is not that bad but still. edit: 4 players, 3 hours, only happened once (we use god-mode extensively).
Could you replace function minime_character.SE_remote_view_stopped (in scripts/character.lua) with the following?
minime_character.SE_remote_view_stopped = function(event_data)
minime.is_debug = true
minime.entered_function(event_data)
local player = game.players[event_data.player_index]
if not player and player.valid then
minime.arg_err(player, "player specification")
end
local p_data = global.player_data[player.index]
local controller = minime.controller_names[player.controller_type]
minime.writeDebug("Controller of %s: \"%s\"\tCurrent character: %s",
{minime.argprint(player), controller,
minime.argprint(player.character)})
minime.show("player.opened", minime.argprint(player.opened))
local keep_last_character = p_data and p_data.keep_last_character
minime.show("keep_last_character", keep_last_character)
local char = player.character
minime.show("char", minime.argprint(char))
if char and char.valid then
minime.writeDebug("Updating data of reattached character!")
reattach_character(player, {skip_teleporting = true, skip_attach = true})
minime.show("player.character after reattach_character", minime.argprint(player.character))
minime.show("player.opened", minime.argprint(player.opened))
-- Fix for crash related to dummy becoming invalid when stopping SE remote view.
-- We'd really better find out why it has become invalid, but so far, I couldn't
-- reproduce this myself.
-- (https://mods.factorio.com/mod/minime/discussion/6484c2f28a3657b839f23e8f)
minime.show("p_data.dummy before check", minime.argprint(p_data.dummy))
if not (p_data.dummy and p_data.dummy.valid) then
p_data.dummy = minime_player.make_dummy(player)
minime.show("Created p_data.dummy", minime.argprint(p_data.dummy))
end
minime.writeDebug("Restoring character of %s!", {minime.argprint(player)})
--~ minime_character.copy_character(p_data.dummy, char)
copy_properties(p_data.dummy, char)
if keep_last_character then
minime.writeDebug("Won't overwrite last_character!")
else
local base_name = minime_character.get_character_basename(char)
minime.show("base_name", base_name)
p_data.last_character = base_name
end
minime.show(p_data.last_character)
p_data.detached_character = nil
p_data.god_mode = nil
p_data.editor_mode = nil
end
-- Update GUI!
minime_gui.selector.gui_update(player)
minime.entered_function("leave")
minime.is_debug = false
end
This activates logging on entering the function, turns it off on leaving, and adds some new logging directives that hopefully show what's going wrong. When you get this crash the next time, go to the end of factorio-current.log and move up until you see something like this:
====================================================================================================
Entered event script for SE_custom_event_remote_view_stopped
Event data: player_index = 1, tick = 15609825, mod_name = "space-exploration"
(@__minime__/scripts/events.lua: 284)
====================================================================================================
It would be great if you'd post the log from there till the end. (The text in the line starting with "Event data:" should be different.)
Wow you are quick. I have done everything as you have said, but this time we did not crash a single time (3 hours with 4 players).
I do not know if this is normal, but I have not seen any output in the log with "Entered event", "remote_view", "events.lua" or anything similar with grep. Does this only print when it crashes? The server and the clients both used the modified script, I have downloaded it after game and triple checked that it is indeed the patched one (although I may still have messed something up). We did not update any other mods and still used god-mode left and right.
If this is normal, then we will eagerly wait for the next crash, if not, then please help so I can set it up correctly and then wait for the crash. Thank you.
I do not know if this is normal, but I have not seen any output in the log with "Entered event", "remote_view", "events.lua" or anything similar with grep.
Sorry, made a thinko, it's a bit more complicated :
In libs/debugging.lua, change line 37 from
if debugging.debug_in_log and debug_state ~= nil then
to
if debug_state ~= nil then
Then, in scripts/character.lua , replace
minime.is_debug = true
at the beginning of function minime_character.SE_remote_view_stopped with
minime.set_debug_state(true)
and
minime.is_debug = false
at the end with
minime.set_debug_state(false)
Does this only print when it crashes?
That's where I was wrong again: "Entered event script" is the output of the wrapper function which calls minime_character.SE_remote_view_stopped. Instead, you should look for something like this:
----------------------------------------------------------------------------------------------------
Entered function event_handler(player_index = 1, name = 228, tick = 32117, mod_name = "space-exploration")
(@__minime__/scripts/character.lua: 1831)
----------------------------------------------------------------------------------------------------
The function will be called in response to a custom event that is raised by SE when a player is leaving the remote view mode. The error occurs in function copy_properties which should be called with the player's character and dummy, but one of those is nil and I want to find out how that happens, so I decided to log everything that happens during the event.
Okay I have some good and some bad news. The bad news is that I was lazy and did not do the proper logging (though we crashed about 5 times since). Obviously I will do it for next time.
The good news is that it seems that we have a save that is before a recent crash, but it will not load. Download link (wetransfer . com), valid for 1 week only: https://we.tl/t-G6GiIazeh9
We have autosave every 2 minutes, so this save probably got corrupt before I (baladon23 in the save) exited god mode, and the game crashed when I exited god mode (I was in god mode for some minutes). I hope you can find something useful there but don't dig endlessly as I will do the proper logging for our next session. Based on the size of the save it should be valid and hopefully the only reason for it not loading is tied to minime. The error message was the same as the one opening this thread, but with a Custom Event ID of 276.
God I am late with this, sorry. However I got logs today: https://pastebin.com/w4FN1S9u
I played, then got a crash, I then applied the proper debugging fix to the mod, then loaded the save and it crashed upon loading. Luckily the latest autosave loads just fine and the crash is reproducible in-game. It happens when my player character is in a spaceship which is on a planet, I am spectating another planet, meanwhile the spaceship gets off, then I exit remote view and boom crash. Unfortunately my spaceship is not perfect so it returns to the planet immediately, but hopefully this has nothing to do with the crash (as it can happen without spaceships).
I played with it and crashed it multiple times, probably it does not help but here it is (first couple hundred lines missing because of pastebin limits): https://pastebin.com/pdRvMxZN
@Pi-C
Thanks, I think the log from pastebin was helpful! Could you try the following fix? Replace lines 86-88 of scripts/character.lua with this (the last 3 lines are those you'll replace):
-- Fix for https://pastebin.com/pdRvMxZN
elseif property == "selected" then
if src[property] and src[property].valid and
-- If the player already has selected something else, keep the selected entity!
not (dst[property] and dst[property].valid) then
dst[property] = table.deepcopy(src[property])
end
else
dst[property] = table.deepcopy(src[property])
end
What happened is, I've copied the currently selected entity from the player character to the dummy. That's OK for regular use of the mod, where the properties are copied back to the new character immediately when players change to another character. But when players switch to god mode (the navigation view of SE) or editor mode for a longer time some properties (like opened GUI, selected entity), cause trouble. It seems that the last selected entity stored with the dummy didn't exist anymore, so trying to select that expired entity caused a crash.
It's quite possible that you'll get more crashes with other properties in the line dst[property] = table.deepcopy(src[property])
. If that happens, please look for lines like these:
1475.136 Script @__minime__/libs/debugging.lua:133: selected: {}
1475.136 Script @__minime__/libs/debugging.lua:133: src[selected]: LuaEntity (invalid)
1475.136 Error MainLoop.cpp:1395: Exception at tick 52778394: The mod miniMAXIme: Character scaler and selector (1.1.36) caused a non-recoverable error.
Please report this error to the mod author.
The last two lines logged by this mod are the most important as they will tell which property must be handled in a special way to avoid crashes. If you get a crash, just add this before the else
branch:
elseif property == "property name from crash message" then
minime.writeDebug("Ignoring property %s", {property})
Then try again until everything has been copied, and post the list of ignored properties. :-)
Well, I could not recreate the crash so it seems like this solves it (when I go back to the old version it still crashes). (The old version crashes even when I downgrade a random mod to cause mods like rampant, fill4me and rate calculator to update their indexes (perhaps rampant messes with surfaces), but I have eliminated this possibility as with the random downgraded mod it still crashes without the fix.)
Thank you very much. I will try to use the mod with debug mode on, just in case, but I really hope that this is an ultimate fix to the issue.
We played 3 long sessions without any issues (avg 3 people for 12+ hours), so I guess the fix is indeed working (or we were just lucky). We didn't notice any side-effects (or we were just lucky). I will post another update as soon as we finish our playthrough or encounter any problems, whichever happens first.
My buddy and i just got the following error after playing for nearly 3 hours. Seems like something with this mod and space exploration might be a bit buggy.
EDIT: Seems like it might be a random bug when we go from Space Exploration Sat View back to character control but i cant confirm this just yet.
8349.562 Error MainLoop.cpp:1391: Exception at tick 25054527: The mod miniMAXIme: Character scaler and selector (1.1.36) caused a non-recoverable error.
Please report this error to the mod author.
Error while running event minime::Custom event (ID 249)
Given entity doesn't exist anymore.
stack traceback:
[C]: in function 'newindex'
__minime/scripts/character.lua:87: in function 'copy_properties'
minime/scripts/character.lua:1866: in function 'event_handler'
minime/scripts/events.lua:287: in function <minime/scripts/events.lua:284>
stack traceback:
[C]: in function 'raise_event'
space-exploration/scripts/remote-view.lua:413: in function 'stop'
space-exploration/scripts/remote-view.lua:732: in function 'toggle'
space-exploration/scripts/remote-view.lua:799: in function 'callback'
space-exploration/scripts/event.lua:15: in function <space-exploration/scripts/event.lua:13>
8349.562 Error ServerMultiplayerManager.cpp:92: MultiplayerManager failed: "The mod miniMAXIme: Character scaler and selector (1.1.36) caused a non-recoverable error.
Please report this error to the mod author.
Error while running event minime::Custom event (ID 249)
Given entity doesn't exist anymore.
stack traceback:
[C]: in function 'newindex'
__minime/scripts/character.lua:87: in function 'copy_properties'
minime/scripts/character.lua:1866: in function 'event_handler'
minime/scripts/events.lua:287: in function <minime/scripts/events.lua:284>
stack traceback:
[C]: in function 'raise_event'
space-exploration/scripts/remote-view.lua:413: in function 'stop'
space-exploration/scripts/remote-view.lua:732: in function 'toggle'
space-exploration/scripts/remote-view.lua:799: in function 'callback'
space-exploration/scripts/event.lua:15: in function <space-exploration/scripts/event.lua:13>"
8349.562 Info ServerMultiplayerManager.cpp:816: updateTick(25054527) changing state from(InGame) to(Failed)
(specifically to @Syliss85)
Hello, I believe we found the fix (see the last responses), if you trust me AND you don't want to mess with it yourself (applying it only takes a few minutes yourself), you can download it from here until Dec 1st: https://we.tl/t-gBiekXTmIN (delete your current minime...zip file and upload this one into the mod folder, this MUST be done on the server and on all clients as well). Oh one more thing I did not bother to turn off the debug messages so it'll spam the server console.
I will push for the inclusion of this fix once I'm more sure it is working.
We got a new error, I mean I guess it is new. This is with the fix for the issue in this thread; debug messages on.
Logs: https://pastebin.com/BN8XK1g0
We got a new error, I mean I guess it is new. This is with the fix for the issue in this thread; debug messages on.
Logs: https://pastebin.com/BN8XK1g0
This should be fixed with version 1.1.37, and I think the bug you've reported before that should be fixed as well.
This should be fixed with version 1.1.37, and I think the bug you've reported before that should be fixed as well.
I don't want to jinx it, but so far everything is fine -- we finished a 4 hour 4 player session in SE without a single crash (on experimental version 1.1.102 with fresh mods, minime 1.1.37).
Thank you for your work.
edit (12th Jan): 2 more sessions with the updated mod version on 1.1.104, still not a single issue whatsoever.
edit (19th Jan): 2 more sessions, this time we finally got one single crash but I am 99% sure it is Factory Search's fault, so I will post the log file only there.
edit (24th Jan): 1 more session, no issues
Good afternoon! And how can I reduce the number of logs from version 1.1.37? They completely clog up the entire server console) Thank you!
Good afternoon! And how can I reduce the number of logs from version 1.1.37? They completely clog up the entire server console) Thank you!
Sorry, didn't mean to release with debugging turned on -- I just forgot to revert the change I've made for baladon23 (above). I'll fix that ASAP!
@LookerBob: Should be fixed in version 1.1.38!
Okay, we finished our SE run, so I think that we can consider this bug fixed as in the last ~10 sessions (about 40 hours of play time @ 5 people) we did not have a single issue with minime. (We did not change armor and did not use the character selector GUI button during this time so these are not "tested" -- but also not really relevant.)
Thank you very much for your work, Pi-C.
Okay, we finished our SE run, so I think that we can consider this bug fixed as in the last ~10 sessions (about 40 hours of play time @ 5 people) we did not have a single issue with minime. (We did not change armor and did not use the character selector GUI button during this time so these are not "tested" -- but also not really relevant.)
Great, I'll lock this thread now. If more problems should arise, just open a new one, please!
Thank you very much for your work, Pi-C.
You're welcome!