godotengine / godot

Godot Engine – Multi-platform 2D and 3D game engine
https://godotengine.org
MIT License
90.99k stars 21.16k forks source link

Internal Script Error (Opcode = 0) #96091

Open RidleyF opened 2 months ago

RidleyF commented 2 months ago

Tested versions

Reproducible in Godot 4.3 Stable

System information

Godot v4.3.stable - macOS 14.6.1 - GLES3 (Compatibility) - Intel(R) Iris(TM) Plus Graphics OpenGL Engine (1x6x8 (fused) LP - Intel(R) Core(TM) i3-1000NG4 CPU @ 1.10GHz (4 Threads)

Issue description

When running my project, triggering a breakpoint, commenting out said breakpoint, saving, and continuing, Godot throws this error:

E 0:00:09:0562   Grid.gd:125 @ (): Condition ' (ip + 7 + _pointer_size) > _code_size ' is true. Breaking..:
  <C++ Source>   modules/gdscript/gdscript_vm.cpp:693 @ call()
  <Stack Trace>  Grid.gd:125 @ ()

Continuing from there closes/crashed the running game menu.

Steps to reproduce

1) Run the project. 2) When the breakpoint shows up, click continue. (might not be required) 3) When the next breakpoint shows up, comment out the breakpoint in the createError() function, save, and click continue. 4) Error should have appeared.

Might be a little inconsistent, maybe a 90% chance.

https://github.com/user-attachments/assets/79e8fa8d-326f-4849-9f92-98749fdcfa96

Minimal reproduction project (MRP)

opcode-=-0-rmp.zip

djrain commented 2 months ago

Getting this also in my project, but I don't need a breakpoint. Simply altering one line and saving the script can trigger it.