Page 1 of 1

I keep getting this crashlog.

Posted: Mon Jul 06, 2020 2:59 pm
by Suckerman7 GM
I need help something about an error. I am making a level in SMBX 2.0 and whenever I test it, I get this error a few seconds later all the time.

Here's the crashlog details:

LunaLua Version: LUNALUA 9ea2886
Exception Code: 0xc000008f (VB Error)
VB6 Error Code: 9 (Subscript out of range)

== Stack Trace ==
0: 660CE246 (MSVBVM60): rtcDoEvents
1: 008CA385 (smbx): levelLoop
2: 008C224A (smbx): Sub_Main
3: 6600A048 (MSVBVM60): EbLoadRunTime
4: 66007B3E (MSVBVM60): BASIC_CLASS_QueryInterface
5: 66003981 (MSVBVM60): ThunRTMain
6: 660036FA (MSVBVM60): ThunRTMain
7: 66003600 (MSVBVM60): ThunRTMain
8: 0040BDE2 (smbx): start
9: 77637C24 (ntdll): RtlGetAppContainerNamedObjectPath
10: 77637BF4 (ntdll): RtlGetAppContainerNamedObjectPath

If anyone knows a solution to this, I'll be glad.

Re: I keep getting this crashlog.

Posted: Mon Jul 06, 2020 3:04 pm
by Enjl
This error can happen for many reasons. It would help if you could share the level, so that I can take a look directly and see if I can find the culprit. If you don't wanna post it in public you can pm me.

Re: I keep getting this crashlog.

Posted: Mon Jul 06, 2020 3:05 pm
by Suckerman7 GM
Enjl wrote:
Mon Jul 06, 2020 3:04 pm
This error can happen for many reasons. It would help if you could share the level, so that I can take a look directly and see if I can find the culprit. If you don't wanna post it in public you can pm me.
Ok. I will send it via PM.

Re: I keep getting this crashlog.

Posted: Mon Jul 06, 2020 4:11 pm
by Enjl
Suckerman7 GM wrote:
Mon Jul 06, 2020 3:05 pm
Enjl wrote:
Mon Jul 06, 2020 3:04 pm
This error can happen for many reasons. It would help if you could share the level, so that I can take a look directly and see if I can find the culprit. If you don't wanna post it in public you can pm me.
Ok. I will send it via PM.
Just started the level and immediately got a warning (might be a new thing in the upcoming patch, i forget):
Image
I recommend sticking comfortably below 20000 blocks. As soon as you go above 20000 at runtime, the game will crash. At runtime blocks may be created from operations such as hitting a ?-Block.

You can check the Debugger (hoopster icon) in the editor to see the block count in the level.

Methods of reducing block count include:
- large bgos or sizables for fill tiles
- making sections smaller
- removing blocks that are never visible

I went into the edtior and removed all Lava and Cave fill blocks and got rid of 22k blocks. You might be able to easily save 20k by using the sizable technique, making sure that lava fill is placed in key points to prevent priority jank.

(unrelated but i recommend moving the level file outside the level folder so that people have an easier time loading the level from windows file explorer)

Re: I keep getting this crashlog.

Posted: Mon Jul 06, 2020 5:06 pm
by Suckerman7 GM
Enjl wrote:
Mon Jul 06, 2020 4:11 pm
Suckerman7 GM wrote:
Mon Jul 06, 2020 3:05 pm
Enjl wrote:
Mon Jul 06, 2020 3:04 pm
This error can happen for many reasons. It would help if you could share the level, so that I can take a look directly and see if I can find the culprit. If you don't wanna post it in public you can pm me.
Ok. I will send it via PM.
Just started the level and immediately got a warning (might be a new thing in the upcoming patch, i forget):
Image
I recommend sticking comfortably below 20000 blocks. As soon as you go above 20000 at runtime, the game will crash. At runtime blocks may be created from operations such as hitting a ?-Block.

You can check the Debugger (hoopster icon) in the editor to see the block count in the level.

Methods of reducing block count include:
- large bgos or sizables for fill tiles
- making sections smaller
- removing blocks that are never visible

I went into the edtior and removed all Lava and Cave fill blocks and got rid of 22k blocks. You might be able to easily save 20k by using the sizable technique, making sure that lava fill is placed in key points to prevent priority jank.

(unrelated but i recommend moving the level file outside the level folder so that people have an easier time loading the level from windows file explorer)
Thanks for the help. Guess I will make my levels shorter and lower in terms of height then. I realized there are a lot of blocks wasted due to making too many narrow areas. I will be rearranging that stuff by tomorrow, so at least hopefully my level will be playable.

Re: I keep getting this crashlog.

Posted: Wed Jul 08, 2020 9:14 am
by Cedur
You don't need to necessarily shrink your level. Just use 4x4 blocks or sprite them if necessary. If you use all tricks in the book, you can make a massively large level with just 5000 blocks.

Re: I keep getting this crashlog.

Posted: Wed Jul 08, 2020 9:32 am
by Enjl
Cedur wrote:
Wed Jul 08, 2020 9:14 am
You don't need to necessarily shrink your level. Just use 4x4 blocks or sprite them if necessary. If you use all tricks in the book, you can make a massively large level with just 5000 blocks.
Hence I proposed sizables. Much more efficient.

Re: I keep getting this crashlog.

Posted: Wed Jul 08, 2020 9:43 am
by Cedur
Enjl wrote:
Wed Jul 08, 2020 9:32 am
Cedur wrote:
Wed Jul 08, 2020 9:14 am
You don't need to necessarily shrink your level. Just use 4x4 blocks or sprite them if necessary. If you use all tricks in the book, you can make a massively large level with just 5000 blocks.
Hence I proposed sizables. Much more efficient.

yeah true, I also made use of that. (you just can't do that e.g. if you have magikoopas in your section)

Re: I keep getting this crashlog.

Posted: Wed Jul 08, 2020 9:45 am
by Enjl
Cedur wrote:
Wed Jul 08, 2020 9:43 am
yeah true, I also made use of that. (you just can't do that e.g. if you have magikoopas in your section)
You can restrict the layers a Magikoopa spawns on, so if the ceiling is of a layer different to that of the magikoopa, it won't teleport up there. It's true that there may be other edge cases that we didn't put workarounds like that in for, but having seen the level I don't think any of those shortcomings of the sizable technique apply here.