diff --git a/.mono/metadata/scripts_metadata.editor b/.mono/metadata/scripts_metadata.editor index 0db8e1a..bd62ee8 100644 --- a/.mono/metadata/scripts_metadata.editor +++ b/.mono/metadata/scripts_metadata.editor @@ -1 +1 @@ -{"res://codigos/BoardManager.cs":{"modified_time":"1587380554","class":{"namespace":"","class_name":"BoardManager","nested":false}},"res://codigos/Escena_Principal.cs":{"modified_time":"1587392515","class":{"namespace":"","class_name":"Escena_Principal","nested":false}},"res://codigos/GameManager.cs":{"modified_time":"1587385613","class":{"namespace":"","class_name":"GameManager","nested":false}},"res://codigos/MovingObject.cs":{"modified_time":"1587654867","class":{"namespace":"","class_name":"MovingObject","nested":false}}} \ No newline at end of file +{"res://codigos/BoardManager.cs":{"modified_time":"1587848329","class":{"namespace":"","class_name":"BoardManager","nested":false}},"res://codigos/Escena_Principal.cs":{"modified_time":"1587745563","class":{"namespace":"","class_name":"Escena_Principal","nested":false}},"res://codigos/GameManager.cs":{"modified_time":"1587745519","class":{"namespace":"","class_name":"GameManager","nested":false}},"res://codigos/MovingObject.cs":{"modified_time":"1587905680","class":{"namespace":"","class_name":"MovingObject","nested":false}},"res://codigos/Player.cs":{"modified_time":"1587905772","class":{"namespace":"","class_name":"Player","nested":false}},"res://codigos/SuelosScript/Suelo1.cs":{"modified_time":"1587836811","class":{"namespace":"","class_name":"Suelo1","nested":false}},"res://codigos/Wall.cs":{"modified_time":"1587905397","class":{"namespace":"","class_name":"Wall","nested":false}}} \ No newline at end of file diff --git a/.mono/metadata/scripts_metadata.editor_player b/.mono/metadata/scripts_metadata.editor_player index 0db8e1a..bd62ee8 100644 --- a/.mono/metadata/scripts_metadata.editor_player +++ b/.mono/metadata/scripts_metadata.editor_player @@ -1 +1 @@ -{"res://codigos/BoardManager.cs":{"modified_time":"1587380554","class":{"namespace":"","class_name":"BoardManager","nested":false}},"res://codigos/Escena_Principal.cs":{"modified_time":"1587392515","class":{"namespace":"","class_name":"Escena_Principal","nested":false}},"res://codigos/GameManager.cs":{"modified_time":"1587385613","class":{"namespace":"","class_name":"GameManager","nested":false}},"res://codigos/MovingObject.cs":{"modified_time":"1587654867","class":{"namespace":"","class_name":"MovingObject","nested":false}}} \ No newline at end of file +{"res://codigos/BoardManager.cs":{"modified_time":"1587848329","class":{"namespace":"","class_name":"BoardManager","nested":false}},"res://codigos/Escena_Principal.cs":{"modified_time":"1587745563","class":{"namespace":"","class_name":"Escena_Principal","nested":false}},"res://codigos/GameManager.cs":{"modified_time":"1587745519","class":{"namespace":"","class_name":"GameManager","nested":false}},"res://codigos/MovingObject.cs":{"modified_time":"1587905680","class":{"namespace":"","class_name":"MovingObject","nested":false}},"res://codigos/Player.cs":{"modified_time":"1587905772","class":{"namespace":"","class_name":"Player","nested":false}},"res://codigos/SuelosScript/Suelo1.cs":{"modified_time":"1587836811","class":{"namespace":"","class_name":"Suelo1","nested":false}},"res://codigos/Wall.cs":{"modified_time":"1587905397","class":{"namespace":"","class_name":"Wall","nested":false}}} \ No newline at end of file diff --git a/.mono/temp/bin/Debug/Rogue en Godot.dll b/.mono/temp/bin/Debug/Rogue en Godot.dll index 3f22f85..e5d413d 100644 Binary files a/.mono/temp/bin/Debug/Rogue en Godot.dll and b/.mono/temp/bin/Debug/Rogue en Godot.dll differ diff --git a/.mono/temp/bin/Debug/Rogue en Godot.pdb b/.mono/temp/bin/Debug/Rogue en Godot.pdb index 00938ff..e39b1e8 100644 Binary files a/.mono/temp/bin/Debug/Rogue en Godot.pdb and b/.mono/temp/bin/Debug/Rogue en Godot.pdb differ diff --git a/.mono/temp/obj/Debug/Rogue en Godot.csprojAssemblyReference.cache b/.mono/temp/obj/Debug/Rogue en Godot.csprojAssemblyReference.cache index afd9db9..50cfb72 100644 Binary files a/.mono/temp/obj/Debug/Rogue en Godot.csprojAssemblyReference.cache and b/.mono/temp/obj/Debug/Rogue en Godot.csprojAssemblyReference.cache differ diff --git a/.mono/temp/obj/Debug/Rogue en Godot.dll b/.mono/temp/obj/Debug/Rogue en Godot.dll index 3f22f85..e5d413d 100644 Binary files a/.mono/temp/obj/Debug/Rogue en Godot.dll and b/.mono/temp/obj/Debug/Rogue en Godot.dll differ diff --git a/.mono/temp/obj/Debug/Rogue en Godot.pdb b/.mono/temp/obj/Debug/Rogue en Godot.pdb index 00938ff..e39b1e8 100644 Binary files a/.mono/temp/obj/Debug/Rogue en Godot.pdb and b/.mono/temp/obj/Debug/Rogue en Godot.pdb differ diff --git a/Rogue en Godot.csproj b/Rogue en Godot.csproj index 98c2654..6164224 100644 --- a/Rogue en Godot.csproj +++ b/Rogue en Godot.csproj @@ -57,6 +57,9 @@ + + + diff --git a/codigos/BoardManager.cs b/codigos/BoardManager.cs index f901131..5d4234a 100644 --- a/codigos/BoardManager.cs +++ b/codigos/BoardManager.cs @@ -96,20 +96,22 @@ public void SetupScene(int level)//esto crea los muros del borde y el suelo..Tom } - private void BoardSetup() //metodo para crear el escenario inciial + private async void BoardSetup() //metodo para crear el escenario inciial { //recorremos la X for(int x = -1; x < columns + 1; x++ )//si el area es 8x8 quiero tambien incluir en ese area el borde,entonces si la x primera es el cero en -1 iria el muro { //recorremos la y + await ToSignal(GetTree().CreateTimer(0.01f),"timeout"); for(int y = -1; y < rows + 1; y++ )//lo mismo pasa en el eje y..Por eso empieza en -1 { - + await ToSignal(GetTree().CreateTimer(0.01f),"timeout"); toInstantiate = GetRandomInArray(floorTiles);//devuelve un objeto instanciado de tipo sprite toma como parametro un array de packetscene if(x == -1 || y ==-1 || x == columns || y == rows )//si la posicion pertenece al borde { + //await ToSignal(GetTree().CreateTimer(1.0f),"timeout"); //referencio a un elemento aleatorio del borde toInstantiate = GetRandomInArray(outerWallTiles);//devuelve un objeto isntanciado de tipo sprite toma como parametro un array de packetscene } diff --git a/codigos/Escena_Principal.cs b/codigos/Escena_Principal.cs index 21d087d..031da00 100644 --- a/codigos/Escena_Principal.cs +++ b/codigos/Escena_Principal.cs @@ -25,12 +25,12 @@ private void TestGameManager() //esto es para verificar si existe en el nodo un if(i.IsInsideTree())//si esta en la escena { existeGameManager = true;//existe un game Manager - GD.Print("ya existe un gameManger"); + //GD.Print("ya existe un gameManger"); } } if(existeGameManager == false)//sino existe un game manager { - GD.Print("No existe un GameManger creo uno nuevo"); + //GD.Print("No existe un GameManger creo uno nuevo"); instanciarGameManager();//instancio el gameManager } } diff --git a/codigos/GameManager.cs b/codigos/GameManager.cs index 4561af9..ec14d01 100644 --- a/codigos/GameManager.cs +++ b/codigos/GameManager.cs @@ -1,11 +1,12 @@ using Godot; using System; -public class GameManager : Node +public class GameManager : Node2D { //voy a hacer que este GameManager sea un singleton y que nunca se destruya public BoardManager boardScript;//creo una referencia al board manager - + public int playerFoodPoint = 100;//puntos iniciales de comida del jugador + public bool playersTurn = true;//si es el turno del jugador // Called when the node enters the scene tree for the first time. public override void _Ready() { @@ -18,7 +19,10 @@ private void InitGame()//inicializa el juego boardScript.SetupScene(16);//llamo a la función que esta en board manager para crear la escena toma como parametro el nivel actual que es la cantidad de enemigos } - + public void GameOver() + { + Visible = false;//desactivo el nodo que contiene este script,esto tendria que desactivar el Game manager para saber que es Game over puede que lo haga de otra manera + } // // Called every frame. 'delta' is the elapsed time since the previous frame. // public override void _Process(float delta) // { diff --git a/codigos/MovingObject.cs b/codigos/MovingObject.cs index ddc0253..5a86b7e 100644 --- a/codigos/MovingObject.cs +++ b/codigos/MovingObject.cs @@ -6,23 +6,25 @@ public abstract class MovingObject : KinematicBody2D//esta es una clase global q { public float moveTime = 0.1f;//tiempo en moverse de una casilla a otra - private float movementSpeed;//velocidad a la que se devera mover un objeto de una casilla a otra para que tarde 0.1 + public float movementSpeed;//velocidad a la que se devera mover un objeto de una casilla a otra para que tarde 0.1 private int blokingLayer;//referencia a la capa activa se representa por el Z-index public CollisionShape2D BoxCollider; public RayCast2D rayo; public RigidBody2D rb2D; - + public GameManager _GameManager; + public bool enable;//para saber si el objeto puede estar enable y moverse public Tween moverConTween; + public int dimensionSprite = 32; // Called when the node enters the scene tree for the first time. - public override void _Ready() + /*public override void _Ready()//no puedo implementar override desde player o enemigo por eso muevo todas estas variables del ready a cada script independiente { movementSpeed = 1f / moveTime;//velocidad a la que se movera BoxCollider = GetNode("CollisionShape2D"); rayo = GetNode("RayCast2D"); moverConTween = GetNode("Tween"); //rb2D = thi;por ahora voy a evitarla - } + }*/ protected void SmoothMovementWithTween(Vector2 end)//Esta función va a procesar el movimiento en unity se usa una corrutina,pero en godot puede hacerce lo mismo con un nodo tween { @@ -30,8 +32,8 @@ protected void SmoothMovementWithTween(Vector2 end)//Esta función va a procesar this,//que objeto quiero crear la interpolación osea este mismo "Position",//que propiedad quiero interpolar,osea la posición this.Position,//posición inicial - end,//posicion final - 0.5f,//tiempo para ir de una posición a otra + end,//posicion final y multiplico por el tamaño del sprite,para esto tengo que hacer pruebas,pero creo que asi tendria que funcionar + 0.3f,//tiempo para ir de una posición a otra Tween.TransitionType.Linear,//tipo de interpolación es Tween.TRANS_LINEAR Tween.EaseType.InOut//como termina la transición Tween.EASE_IN_OUT ); @@ -46,7 +48,7 @@ protected bool Move(int xDir, int Ydir,RayCast2D hitRaycast)//es privada para cu bool colisiono;//para saber cuando el raycast colisiona Vector2 start = Position;//posicion inicial Vector2 end = start + new Vector2(xDir,Ydir);//la posición de adonde queremos movernos suma de vectores (0,0) + (1,0) = (1,0) - hitRaycast.CastTo = new Vector2(xDir,Ydir);//esto determina para adonde va apuntar el raycast,por ahora es para prueba ya que supuestamente recibo por parametro donde tendría que apuntar + hitRaycast.CastTo = new Vector2(-Ydir,xDir);//esto determina para adonde va apuntar el raycast //hacemos una raycast entre el punto inicial y final //si hay un collider por donde pasa esa linea abremos encontrado ese objeto @@ -56,33 +58,41 @@ protected bool Move(int xDir, int Ydir,RayCast2D hitRaycast)//es privada para cu if(colisiono == false)//sino esta colisionando { //hacemos el movimiento + //GD.Print("tendria que moverse"); + //GD.Print("cantidad que mueve en X: ",xDir); + //GD.Print("cantidad que mueve en Y: ",Ydir); + //GD.Print("la posicion en final X: ",end.x); + //GD.Print("laposicion en final Y: ",end.y); + SmoothMovementWithTween(end);//movemos con interpolación lineal recibe por parametro la ultima posición return true; } else//si en la mascara 2 hay 1 personaje o un obstaculo { + GD.Print("No podemos movernos"); return false;//no hemos podido movernos } } - - protected abstract void OnCantMove(KinematicBody2D go); //aqui viene el comportamiento luego de no poder moverse,es un meotdoABstracto ya que se va a comportar de diferente manera según sea el personaje o elenemigo - + //Esto es relacionado al movimiento y al tipo de obstaculo + protected abstract void OnCantMoveStaticBody2D(StaticBody2D go); //aqui viene el comportamiento luego de no poder moverse,es un meotdoABstracto ya que se va a comportar de diferente manera según sea el personaje o elenemigo + protected abstract void OnCantMoveRigidBody2D(KinematicBody2D go); protected virtual void AttempMove(int xDir,int yDir)//metodo para internar moverse esto recive por arametro cuanto en x y cuanto en y lo marcamos como abstracto ya que cada esto lo haremos en cada personaje { RayCast2D hit = rayo;//tomo la referencia del nodo que esta en la función ready bool canMove = Move(xDir,yDir,hit);// if(canMove) return;//si se movio termino esta función - var col = hit.IsColliding();//nose si funcione luego lo voy a probar con el personaje - //sino notificamos que nos hemos encontrado cno cierto objeto que nos bloquea el paso,sin embargo el jugador y el enemigo tienen diferente comportamiento - OnCantMove((KinematicBody2D)hit.GetCollider());//aqui tengo que pasarle el kinematicBody que estamos colisionando - } -// // Called every frame. 'delta' is the elapsed time since the previous frame. -// public override void _Process(float delta) -// { -// -// } - - - + + Node col = (Node)hit.GetCollider();//usando la colisicioń del raycast busco el nodo + if(col.IsInGroup("Wall"))//si el nodo colisionado esta en el grupo wall + { + //GD.Print("estoy conlisionado con un muro"); + OnCantMoveStaticBody2D((StaticBody2D)hit.GetCollider());//aqui tengo que pasarle el staticbody que estamos colisionando + } + if(col.IsInGroup("characters"))//si el nodo colisionado esta enel grupo character + { + //GD.Print("estoy conlisionado con un personaje"); + OnCantMoveRigidBody2D((KinematicBody2D)hit.GetCollider());//aqui tengo que pasarle el kinematicBody que estamos colisionando) + } + } } diff --git a/codigos/Player.cs b/codigos/Player.cs new file mode 100644 index 0000000..81e3387 --- /dev/null +++ b/codigos/Player.cs @@ -0,0 +1,140 @@ +using Godot; +using System; + +public class Player : MovingObject +{ + public int wallDamage = 1;//daño + public int pointPerFood = 10;//puntos por comida + public int pointPerSOda = 20;//puntos por soda + public float restardLevelDelay = 1f;//segundos antes de reiniciar o pasar al siguente nivel + + private AnimationTree animator;//referencia al nodo animationthree + private int food;//para llevar la cuenta de cuanta comida tiene + private AnimationNodeStateMachinePlayback playback;//referencia al nodo animation tree con el parametro para acceder a los stados + + //private bool seMovio = false; + + Wall hitWall;//referencia a la pared que esta chocando + + // Called when the node enters the scene tree for the first time. + public override void _Ready() + { + movementSpeed = 1f / moveTime;//velocidad a la que se movera + BoxCollider = GetNode("CollisionShape2D"); + rayo = GetNode("RayCast2D"); + moverConTween = GetNode("Tween"); + //rb2D = thi;por ahora voy a evitarla + animator = GetNode("AnimationTree");//referencia al animation three + _GameManager = (GameManager)GetTree().GetNodesInGroup("GameManager")[0]; + food = _GameManager.playerFoodPoint;//la comida inicial del jugador busco desde el game manager + + playback = (AnimationNodeStateMachinePlayback)GetNode("AnimationTree").Get("parameters/playback");//accedo al nodo animation three y a la propiedad de las maquinas de estado + playback.Start("PlayerIdle");//animación inicial player estatico osea igle + + } + + + private void CheckIfGameOver()//verifica que si es GameOver + { + if(food <= 0)//sino tenemos comida + { + _GameManager.GameOver();//llamo a la función Game Over,ojo esta función tiene que terminar el juego + } + } + + protected override void AttempMove(int xDir, int yDir) + { + food --;//en cada paso dismunuje la comida + base.AttempMove(xDir,yDir);//ejecuto esta acción + CheckIfGameOver();//siempre que se decrementa la comida verificamos si es game over + _GameManager.playersTurn = false;//luego terminamos el turno del jugador + } + + public override void _PhysicsProcess(float delta) + { + if(!_GameManager.playersTurn)//si no es el turno del jugador + { + return;//dejamos de ejecutar + } + + int horizontal = Convert.ToInt16((Input.GetActionStrength("d") - Input.GetActionStrength("a")) * dimensionSprite);//mover izquierda derecha + int vertical = Convert.ToInt16((Input.GetActionStrength("s") - Input.GetActionStrength("w")) * dimensionSprite );//mover arriba abajo + if(horizontal != 0)//esto es para que NO se mueva en diagonal + { + vertical = 0;//esto es para que NO se mueva en diagonal + } + if(horizontal != 0 || vertical != 0 )///nos estamos moviendo + { + AttempMove(horizontal,vertical);//movemos el personaje + //if(!seMovio)//esto es para prueba + //{ + //seMovio = true; + // + //} + //GD.Print(rayo.IsColliding());//esto es para prueba compruebo si el rayo colisiona + // await ToSignal(GetTree().CreateTimer(0.1f),"timeout");//esto es para prueba + //seMovio = false;//esto es para prueba + } + + } + + + + + + protected override void OnCantMoveStaticBody2D(StaticBody2D pared)//si "NO" podemos movernos recibe el cuerpo estatico y es un una pared.Este es un metodo que se sobreescribe + { + if(pared.IsInGroup("Wall")) + { + hitWall = (Wall)pared.GetParent();//con esto tendria que poder acceder al script que maneja ese piso para cambiar la figura al ser golpeado + } + if(hitWall != null)//si el personaje esta chocando con un muro + { + hitWall.DamageWall(wallDamage);//descuento el hp al suelo,se me esta complicando entender el concepto de unity y pasarlo a godot + //activo animación romper bloque + playback.Travel("PlayerChop");//activo animación romper pared + } + } + protected override void OnCantMoveRigidBody2D(KinematicBody2D pared)//si "NO" podemos movernos recibe el cuerpo rigido y es un character.Este es un metodo que se sobreescribe + { + playback.Travel("PlayerChop");//activo animación romper pared + } + + + + + + private void Restart() + { + GetTree().ReloadCurrentScene();//reinicia la scena esto puede cambiar + } + + public void LoseFood(int loss) + { + food -= loss;//cantidad de comida que pierdo + playback.Travel("PlayerHit");//activo animación daño + CheckIfGameOver();//verifico sino todavia tengo comida osea sino es game over + } + + public async void _on_Area2D_area_entered(Area _area)//esta funcion tiene una corrutina para detener el flujo por un tiempo + { + if(_area.IsInGroup("Exit"))//si entramos al aerea de exit + { + enable = false;//el jugador no se puede mover + //aqui tendria que venir una transcición al cambiar de pantalla + await ToSignal(GetTree().CreateTimer(1.0f),"timeout");//detengo por 1 segundo + Restart();//reinicio el nivel,voy a tener que utilizar un singleton para guardar puntajes + } + if(_area.IsInGroup("Food")) + { + food += pointPerFood;//sumo el puntaje de la comida + (_area.GetParent() as Sprite).Visible = false;//hago invisible el nodo padre que contiene el sprite por lo tanto todos los hijos tendrian que ser inviisble + } + if(_area.IsInGroup("Soda")) + { + food += pointPerSOda;//sumo el puntaje de la soda + (_area.GetParent() as Sprite).Visible = false;//hago invisible el nodo padre que contiene el sprite por lo tanto todos los hijos tendrian que ser inviisble + } + } + +} diff --git a/codigos/SuelosScript/Suelo1.cs b/codigos/SuelosScript/Suelo1.cs new file mode 100644 index 0000000..b0155c2 --- /dev/null +++ b/codigos/SuelosScript/Suelo1.cs @@ -0,0 +1,21 @@ +using Godot; +using System; + +public class Suelo1 : Wall +{ + // Declare member variables here. Examples: + // private int a = 2; + // private string b = "text"; + + // Called when the node enters the scene tree for the first time. + public override void _Ready() + { + + } + +// // Called every frame. 'delta' is the elapsed time since the previous frame. +// public override void _Process(float delta) +// { +// +// } +} diff --git a/codigos/Wall.cs b/codigos/Wall.cs new file mode 100644 index 0000000..3673f9d --- /dev/null +++ b/codigos/Wall.cs @@ -0,0 +1,30 @@ +using Godot; +using System; + +public class Wall : Sprite +{ + [Export] + private int indiceDmgSprite = 0; + public int hp = 4; + private CollisionShape2D _collisionShape2D; + + // Called when the node enters the scene tree for the first time. + public override void _Ready() + { + _collisionShape2D = GetNode("StaticBody2DWall/CollisionShape2D"); + } + + public void DamageWall(int loss)//funcion publica que usara el personaje para dañar y hacer invisible este nodo + { + Frame = indiceDmgSprite;//cuando es golpeado toma esta textura que esta en el indice DmgSprite + hp -= loss;//descuento puntaje + if(hp<2) + if(hp <= 0)//si el hp de esta columna es menor a cero + { + _collisionShape2D.Disabled = true;//hago invisible el cuerpo estatico ya que sigue funcionando aunque haga invisible el padre + Visible = false;//esto tengo que comprobar ya que a veces los hijos si son areas o bodys siguen funciondo + //GD.Print("tendria que dejar de estar colisionando con el la pared"); + //QueueFree();//pruebo destruyendo,aunque tengo que hacerlo desaparecer ya que dicen que si destruyo los objetos tienen consumo con el recolector de basura de c# + } + } +} diff --git a/escenas/Escena_Principal.tscn b/escenas/Escena_Principal.tscn index 0fa3556..4781ee6 100644 --- a/escenas/Escena_Principal.tscn +++ b/escenas/Escena_Principal.tscn @@ -1,5 +1,6 @@ -[gd_scene load_steps=3 format=2] +[gd_scene load_steps=4 format=2] +[ext_resource path="res://escenas/characters/Player.tscn" type="PackedScene" id=1] [ext_resource path="res://escenas/GameManager.tscn" type="PackedScene" id=27] [ext_resource path="res://codigos/Escena_Principal.cs" type="Script" id=28] @@ -20,3 +21,8 @@ zoom = Vector2( 0.54, 0.54 ) [node name="Board" type="Node2D" parent="." groups=[ "Board", ]] + +[node name="GameManager" parent="." instance=ExtResource( 27 )] + +[node name="Player" parent="." instance=ExtResource( 1 )] +position = Vector2( 0, 224 ) diff --git a/escenas/FloorScene/Exit.tscn b/escenas/FloorScene/Exit.tscn index 948a104..cf7ae56 100644 --- a/escenas/FloorScene/Exit.tscn +++ b/escenas/FloorScene/Exit.tscn @@ -14,7 +14,9 @@ vframes = 7 hframes = 8 frame = 20 -[node name="Area2DExit" type="Area2D" parent="."] +[node name="Area2DExit" type="Area2D" parent="." groups=[ +"Exit", +]] [node name="CollisionShape2D" type="CollisionShape2D" parent="Area2DExit"] shape = SubResource( 1 ) diff --git a/escenas/FloorScene/Food.tscn b/escenas/FloorScene/Food.tscn index 408221c..39e2681 100644 --- a/escenas/FloorScene/Food.tscn +++ b/escenas/FloorScene/Food.tscn @@ -14,7 +14,9 @@ vframes = 7 hframes = 8 frame = 19 -[node name="Area2DFood" type="Area2D" parent="."] +[node name="Area2DFood" type="Area2D" parent="." groups=[ +"Food", +]] [node name="CollisionShape2D" type="CollisionShape2D" parent="Area2DFood"] shape = SubResource( 1 ) diff --git a/escenas/FloorScene/OuterWall.tscn b/escenas/FloorScene/OuterWall.tscn index 9bc1974..a6b4b87 100644 --- a/escenas/FloorScene/OuterWall.tscn +++ b/escenas/FloorScene/OuterWall.tscn @@ -14,6 +14,7 @@ hframes = 8 frame = 25 [node name="StaticBody2D" type="StaticBody2D" parent="."] +collision_layer = 3 [node name="CollisionShape2D" type="CollisionShape2D" parent="StaticBody2D"] shape = SubResource( 1 ) diff --git a/escenas/FloorScene/OuterWall2.tscn b/escenas/FloorScene/OuterWall2.tscn index ec742ed..dd2ecbe 100644 --- a/escenas/FloorScene/OuterWall2.tscn +++ b/escenas/FloorScene/OuterWall2.tscn @@ -14,6 +14,7 @@ hframes = 8 frame = 26 [node name="StaticBody2D" type="StaticBody2D" parent="."] +collision_layer = 3 [node name="CollisionShape2D" type="CollisionShape2D" parent="StaticBody2D"] shape = SubResource( 1 ) diff --git a/escenas/FloorScene/OuterWall3.tscn b/escenas/FloorScene/OuterWall3.tscn index 6eabd15..d17e553 100644 --- a/escenas/FloorScene/OuterWall3.tscn +++ b/escenas/FloorScene/OuterWall3.tscn @@ -14,6 +14,7 @@ hframes = 8 frame = 28 [node name="StaticBody2D" type="StaticBody2D" parent="."] +collision_layer = 3 [node name="CollisionShape2D" type="CollisionShape2D" parent="StaticBody2D"] shape = SubResource( 1 ) diff --git a/escenas/FloorScene/Soda.tscn b/escenas/FloorScene/Soda.tscn index c243d06..3891675 100644 --- a/escenas/FloorScene/Soda.tscn +++ b/escenas/FloorScene/Soda.tscn @@ -13,7 +13,9 @@ vframes = 7 hframes = 8 frame = 18 -[node name="Area2DSoda" type="Area2D" parent="."] +[node name="Area2DSoda" type="Area2D" parent="." groups=[ +"Soda", +]] [node name="CollisionShape2D" type="CollisionShape2D" parent="Area2DSoda"] shape = SubResource( 1 ) diff --git a/escenas/FloorScene/Wall.tscn b/escenas/FloorScene/Wall.tscn index db95773..ca9c13a 100644 --- a/escenas/FloorScene/Wall.tscn +++ b/escenas/FloorScene/Wall.tscn @@ -1,20 +1,27 @@ -[gd_scene load_steps=3 format=2] +[gd_scene load_steps=4 format=2] [ext_resource path="res://sprite/Scavengers_SpriteSheet.png" type="Texture" id=1] +[ext_resource path="res://codigos/Wall.cs" type="Script" id=2] [sub_resource type="RectangleShape2D" id=1] extents = Vector2( 15.9082, 15.8257 ) [node name="Wall" type="Sprite" groups=[ "BlockingLayer", +"wall", ]] z_index = 1 texture = ExtResource( 1 ) vframes = 7 hframes = 8 frame = 21 +script = ExtResource( 2 ) +indiceDmgSprite = 48 -[node name="StaticBody2DWall" type="StaticBody2D" parent="."] +[node name="StaticBody2DWall" type="StaticBody2D" parent="." groups=[ +"Wall", +]] +collision_layer = 2 [node name="CollisionShape2D" type="CollisionShape2D" parent="StaticBody2DWall"] shape = SubResource( 1 ) diff --git a/escenas/FloorScene/Wall2.tscn b/escenas/FloorScene/Wall2.tscn index ebc3e7f..bf47c46 100644 --- a/escenas/FloorScene/Wall2.tscn +++ b/escenas/FloorScene/Wall2.tscn @@ -1,20 +1,27 @@ -[gd_scene load_steps=3 format=2] +[gd_scene load_steps=4 format=2] [ext_resource path="res://sprite/Scavengers_SpriteSheet.png" type="Texture" id=1] +[ext_resource path="res://codigos/Wall.cs" type="Script" id=2] [sub_resource type="RectangleShape2D" id=1] extents = Vector2( 15.9082, 15.8257 ) [node name="Wall2" type="Sprite" groups=[ "BlockingLayer", +"wall", ]] z_index = 1 texture = ExtResource( 1 ) vframes = 7 hframes = 8 frame = 22 +script = ExtResource( 2 ) +indiceDmgSprite = 49 -[node name="StaticBody2DWall" type="StaticBody2D" parent="."] +[node name="StaticBody2DWall" type="StaticBody2D" parent="." groups=[ +"Wall", +]] +collision_layer = 2 [node name="CollisionShape2D" type="CollisionShape2D" parent="StaticBody2DWall"] shape = SubResource( 1 ) diff --git a/escenas/FloorScene/Wall3.tscn b/escenas/FloorScene/Wall3.tscn index 09ed1b5..8b76c8a 100644 --- a/escenas/FloorScene/Wall3.tscn +++ b/escenas/FloorScene/Wall3.tscn @@ -1,20 +1,27 @@ -[gd_scene load_steps=3 format=2] +[gd_scene load_steps=4 format=2] [ext_resource path="res://sprite/Scavengers_SpriteSheet.png" type="Texture" id=1] +[ext_resource path="res://codigos/Wall.cs" type="Script" id=2] [sub_resource type="RectangleShape2D" id=1] extents = Vector2( 15.9082, 15.8257 ) [node name="Wall3" type="Sprite" groups=[ "BlockingLayer", +"wall", ]] z_index = 1 texture = ExtResource( 1 ) vframes = 7 hframes = 8 frame = 23 +script = ExtResource( 2 ) +indiceDmgSprite = 50 -[node name="StaticBody2DWall" type="StaticBody2D" parent="."] +[node name="StaticBody2DWall" type="StaticBody2D" parent="." groups=[ +"Wall", +]] +collision_layer = 2 [node name="CollisionShape2D" type="CollisionShape2D" parent="StaticBody2DWall"] shape = SubResource( 1 ) diff --git a/escenas/FloorScene/Wall4.tscn b/escenas/FloorScene/Wall4.tscn index 4b295aa..be346c7 100644 --- a/escenas/FloorScene/Wall4.tscn +++ b/escenas/FloorScene/Wall4.tscn @@ -1,20 +1,27 @@ -[gd_scene load_steps=3 format=2] +[gd_scene load_steps=4 format=2] [ext_resource path="res://sprite/Scavengers_SpriteSheet.png" type="Texture" id=1] +[ext_resource path="res://codigos/Wall.cs" type="Script" id=2] [sub_resource type="RectangleShape2D" id=1] extents = Vector2( 15.9082, 15.8257 ) [node name="Wall4" type="Sprite" groups=[ "BlockingLayer", +"wall", ]] z_index = 1 texture = ExtResource( 1 ) vframes = 7 hframes = 8 frame = 24 +script = ExtResource( 2 ) +indiceDmgSprite = 51 -[node name="StaticBody2DWall" type="StaticBody2D" parent="."] +[node name="StaticBody2DWall" type="StaticBody2D" parent="." groups=[ +"Wall", +]] +collision_layer = 2 [node name="CollisionShape2D" type="CollisionShape2D" parent="StaticBody2DWall"] shape = SubResource( 1 ) diff --git a/escenas/FloorScene/Wall5.tscn b/escenas/FloorScene/Wall5.tscn index 6f08a09..87d62aa 100644 --- a/escenas/FloorScene/Wall5.tscn +++ b/escenas/FloorScene/Wall5.tscn @@ -1,20 +1,27 @@ -[gd_scene load_steps=3 format=2] +[gd_scene load_steps=4 format=2] [ext_resource path="res://sprite/Scavengers_SpriteSheet.png" type="Texture" id=1] +[ext_resource path="res://codigos/Wall.cs" type="Script" id=2] [sub_resource type="RectangleShape2D" id=1] extents = Vector2( 15.9082, 15.8257 ) [node name="Wall5" type="Sprite" groups=[ "BlockingLayer", +"wall", ]] z_index = 1 texture = ExtResource( 1 ) vframes = 7 hframes = 8 frame = 27 +script = ExtResource( 2 ) +indiceDmgSprite = 52 -[node name="StaticBody2DWall" type="StaticBody2D" parent="."] +[node name="StaticBody2DWall" type="StaticBody2D" parent="." groups=[ +"Wall", +]] +collision_layer = 2 [node name="CollisionShape2D" type="CollisionShape2D" parent="StaticBody2DWall"] shape = SubResource( 1 ) diff --git a/escenas/FloorScene/Wall6.tscn b/escenas/FloorScene/Wall6.tscn index feb1c2c..91dde03 100644 --- a/escenas/FloorScene/Wall6.tscn +++ b/escenas/FloorScene/Wall6.tscn @@ -1,20 +1,27 @@ -[gd_scene load_steps=3 format=2] +[gd_scene load_steps=4 format=2] [ext_resource path="res://sprite/Scavengers_SpriteSheet.png" type="Texture" id=1] +[ext_resource path="res://codigos/Wall.cs" type="Script" id=2] [sub_resource type="RectangleShape2D" id=1] extents = Vector2( 15.9082, 15.8257 ) [node name="Wall6" type="Sprite" groups=[ "BlockingLayer", +"wall", ]] z_index = 1 texture = ExtResource( 1 ) vframes = 7 hframes = 8 -frame = 29 +frame = 28 +script = ExtResource( 2 ) +indiceDmgSprite = 28 -[node name="StaticBody2DWall" type="StaticBody2D" parent="."] +[node name="StaticBody2DWall" type="StaticBody2D" parent="." groups=[ +"Wall", +]] +collision_layer = 2 [node name="CollisionShape2D" type="CollisionShape2D" parent="StaticBody2DWall"] shape = SubResource( 1 ) diff --git a/escenas/FloorScene/Wall7.tscn b/escenas/FloorScene/Wall7.tscn index 550794b..9ba0817 100644 --- a/escenas/FloorScene/Wall7.tscn +++ b/escenas/FloorScene/Wall7.tscn @@ -1,20 +1,27 @@ -[gd_scene load_steps=3 format=2] +[gd_scene load_steps=4 format=2] [ext_resource path="res://sprite/Scavengers_SpriteSheet.png" type="Texture" id=1] +[ext_resource path="res://codigos/Wall.cs" type="Script" id=2] [sub_resource type="RectangleShape2D" id=1] extents = Vector2( 15.9082, 15.8257 ) [node name="Wall7" type="Sprite" groups=[ "BlockingLayer", +"wall", ]] z_index = 1 texture = ExtResource( 1 ) vframes = 7 hframes = 8 frame = 30 +script = ExtResource( 2 ) +indiceDmgSprite = 53 -[node name="StaticBody2DWall" type="StaticBody2D" parent="."] +[node name="StaticBody2DWall" type="StaticBody2D" parent="." groups=[ +"Wall", +]] +collision_layer = 2 [node name="CollisionShape2D" type="CollisionShape2D" parent="StaticBody2DWall"] shape = SubResource( 1 ) diff --git a/escenas/FloorScene/Wall8.tscn b/escenas/FloorScene/Wall8.tscn index 76ac0b8..de9dceb 100644 --- a/escenas/FloorScene/Wall8.tscn +++ b/escenas/FloorScene/Wall8.tscn @@ -1,20 +1,27 @@ -[gd_scene load_steps=3 format=2] +[gd_scene load_steps=4 format=2] [ext_resource path="res://sprite/Scavengers_SpriteSheet.png" type="Texture" id=1] +[ext_resource path="res://codigos/Wall.cs" type="Script" id=2] [sub_resource type="RectangleShape2D" id=1] extents = Vector2( 15.9082, 15.8257 ) [node name="Wall8" type="Sprite" groups=[ "BlockingLayer", +"wall", ]] z_index = 1 texture = ExtResource( 1 ) vframes = 7 hframes = 8 frame = 31 +script = ExtResource( 2 ) +indiceDmgSprite = 54 -[node name="StaticBody2DWall" type="StaticBody2D" parent="."] +[node name="StaticBody2DWall" type="StaticBody2D" parent="." groups=[ +"Wall", +]] +collision_layer = 2 [node name="CollisionShape2D" type="CollisionShape2D" parent="StaticBody2DWall"] shape = SubResource( 1 ) diff --git a/escenas/characters/Enemy1.tscn b/escenas/characters/Enemy1.tscn index 40af568..dd12230 100644 --- a/escenas/characters/Enemy1.tscn +++ b/escenas/characters/Enemy1.tscn @@ -58,6 +58,7 @@ node_connections = [ "output", 0, "OneShot", "OneShot", 0, "Animation", "OneShot [node name="Enemy1" type="KinematicBody2D" groups=[ "Enemy", +"characters", ]] z_index = 2 collision_mask = 2 @@ -71,7 +72,7 @@ shape = SubResource( 1 ) texture = ExtResource( 1 ) vframes = 7 hframes = 8 -frame = 7 +frame = 9 [node name="AnimationPlayer" type="AnimationPlayer" parent="."] anims/Enemy1Idle = SubResource( 2 ) diff --git a/escenas/characters/Enemy2.tscn b/escenas/characters/Enemy2.tscn index d54a752..a5a068f 100644 --- a/escenas/characters/Enemy2.tscn +++ b/escenas/characters/Enemy2.tscn @@ -58,6 +58,7 @@ node_connections = [ "output", 0, "OneShot", "OneShot", 0, "Animation 2", "OneSh [node name="Enemy2" type="KinematicBody2D" groups=[ "Enemy", +"characters", ]] z_index = 2 collision_mask = 2 @@ -69,7 +70,7 @@ shape = SubResource( 1 ) texture = ExtResource( 1 ) vframes = 7 hframes = 8 -frame = 15 +frame = 14 [node name="AnimationPlayer" type="AnimationPlayer" parent="."] anims/Enemy2Attack = SubResource( 2 ) diff --git a/escenas/characters/Player.tscn b/escenas/characters/Player.tscn index 999ab87..ccbd6d3 100644 --- a/escenas/characters/Player.tscn +++ b/escenas/characters/Player.tscn @@ -1,12 +1,14 @@ -[gd_scene load_steps=12 format=2] +[gd_scene load_steps=16 format=2] [ext_resource path="res://sprite/Scavengers_SpriteSheet.png" type="Texture" id=1] +[ext_resource path="res://codigos/Player.cs" type="Script" id=2] [sub_resource type="RectangleShape2D" id=1] extents = Vector2( 10.7465, 13.6713 ) [sub_resource type="Animation" id=2] length = 0.3 +step = 0.05 tracks/0/type = "value" tracks/0/path = NodePath("SpritePlayer:frame") tracks/0/interp = 1 @@ -22,7 +24,7 @@ tracks/0/keys = { [sub_resource type="Animation" id=3] length = 0.3 -loop = true +step = 0.05 tracks/0/type = "value" tracks/0/path = NodePath("SpritePlayer:frame") tracks/0/interp = 1 @@ -30,7 +32,7 @@ tracks/0/loop_wrap = true tracks/0/imported = false tracks/0/enabled = true tracks/0/keys = { -"times": PoolRealArray( 0, 0.1 ), +"times": PoolRealArray( 0, 0.15 ), "transitions": PoolRealArray( 1, 1 ), "update": 1, "values": [ 46, 47 ] @@ -51,47 +53,60 @@ tracks/0/keys = { "values": [ 0, 1, 2, 3, 5 ] } -[sub_resource type="AnimationNodeAdd2" id=5] - -[sub_resource type="AnimationNodeAnimation" id=6] +[sub_resource type="AnimationNodeAnimation" id=5] animation = "PlayerChop" -[sub_resource type="AnimationNodeAnimation" id=7] +[sub_resource type="AnimationNodeAnimation" id=6] animation = "PlayerHit" -[sub_resource type="AnimationNodeAnimation" id=8] +[sub_resource type="AnimationNodeAnimation" id=7] animation = "PlayerIdle" -[sub_resource type="AnimationNodeOneShot" id=9] - -[sub_resource type="AnimationNodeBlendTree" id=10] -graph_offset = Vector2( -126, 146.5 ) -nodes/AddHit/node = SubResource( 5 ) -nodes/AddHit/position = Vector2( 500, 260 ) -nodes/Animation/node = SubResource( 8 ) -nodes/Animation/position = Vector2( 0, 140 ) -"nodes/Animation 2/node" = SubResource( 6 ) -"nodes/Animation 2/position" = Vector2( 0, 280 ) -"nodes/Animation 3/node" = SubResource( 7 ) -"nodes/Animation 3/position" = Vector2( 20, 420 ) -nodes/OneShotchop/node = SubResource( 9 ) -nodes/OneShotchop/position = Vector2( 240, 140 ) -nodes/output/position = Vector2( 740, 300 ) -node_connections = [ "output", 0, "AddHit", "OneShotchop", 0, "Animation", "OneShotchop", 1, "Animation 2", "AddHit", 0, "OneShotchop", "AddHit", 1, "Animation 3" ] +[sub_resource type="AnimationNodeStateMachineTransition" id=8] + +[sub_resource type="AnimationNodeStateMachineTransition" id=9] +switch_mode = 2 +auto_advance = true + +[sub_resource type="AnimationNodeStateMachineTransition" id=10] + +[sub_resource type="AnimationNodeStateMachineTransition" id=11] +switch_mode = 2 +auto_advance = true + +[sub_resource type="AnimationNodeStateMachine" id=12] +states/PlayerChop/node = SubResource( 5 ) +states/PlayerChop/position = Vector2( 305.601, 200 ) +states/PlayerHit/node = SubResource( 6 ) +states/PlayerHit/position = Vector2( -99.3985, 200 ) +states/PlayerIdle/node = SubResource( 7 ) +states/PlayerIdle/position = Vector2( 116.601, 61 ) +transitions = [ "PlayerIdle", "PlayerChop", SubResource( 8 ), "PlayerChop", "PlayerIdle", SubResource( 9 ), "PlayerIdle", "PlayerHit", SubResource( 10 ), "PlayerHit", "PlayerIdle", SubResource( 11 ) ] +graph_offset = Vector2( -280.399, 1 ) + +[sub_resource type="AnimationNodeStateMachinePlayback" id=13] [node name="Player" type="KinematicBody2D" groups=[ "Player", +"characters", ]] z_index = 2 collision_mask = 2 +script = ExtResource( 2 ) [node name="CollisionShape2D" type="CollisionShape2D" parent="."] shape = SubResource( 1 ) +[node name="Area2D" type="Area2D" parent="."] + +[node name="CollisionShape2D2" type="CollisionShape2D" parent="Area2D"] +shape = SubResource( 1 ) + [node name="SpritePlayer" type="Sprite" parent="."] texture = ExtResource( 1 ) vframes = 7 hframes = 8 +frame = 1 [node name="AnimationPlayer" type="AnimationPlayer" parent="."] anims/PlayerChop = SubResource( 2 ) @@ -99,14 +114,16 @@ anims/PlayerHit = SubResource( 3 ) anims/PlayerIdle = SubResource( 4 ) [node name="AnimationTree" type="AnimationTree" parent="."] -tree_root = SubResource( 10 ) +tree_root = SubResource( 12 ) anim_player = NodePath("../AnimationPlayer") active = true -parameters/AddHit/add_amount = 0.0 -parameters/OneShotchop/active = false +parameters/playback = SubResource( 13 ) [node name="RayCast2D" type="RayCast2D" parent="."] rotation = -1.5708 -collision_mask = 2 +enabled = true +cast_to = Vector2( 0, 32 ) +collision_mask = 3 [node name="Tween" type="Tween" parent="."] +[connection signal="area_entered" from="Area2D" to="." method="_on_Area2D_area_entered"] diff --git a/mono_crash.3c2359124.0.json b/mono_crash.3c2359124.0.json new file mode 100644 index 0000000..504ae20 --- /dev/null +++ b/mono_crash.3c2359124.0.json @@ -0,0 +1,351 @@ +{ + "protocol_version" : "0.0.5", + "configuration" : { + "version" : "(6.6.0) ((no/d9001b5)", + "tlc" : "__thread", + "sigsgev" : "altstack", + "notifications" : "epoll", + "architecture" : "amd64", + "disabled_features" : "none", + "smallconfig" : "disabled", + "bigarrays" : "disabled", + "softdebug" : "enabled", + "interpreter" : "enabled", + "llvm_support" : "disabled", + "suspend" : "preemptive" + }, + "memory" : { + "minor_gc_time" : "0", + "major_gc_time" : "0", + "minor_gc_count" : "0", + "major_gc_count" : "0", + "major_gc_time_concurrent" : "0" + }, + "threads" : [ + { + "is_managed" : false, + "offset_free_hash" : "0x0", + "offset_rich_hash" : "0x0", + "crashed" : false, + "native_thread_id" : "0x7fe594ca7700", + "thread_info_addr" : "0x7fe56c000b20", + "thread_name" : "Finalizer", + "ctx" : { + "IP" : "0x7fe59ef356d6", + "SP" : "0x7fe594ca6bc0", + "BP" : "0x4bed4e0" + }, + "unmanaged_frames" : [ + { + "is_managed" : "false", + "native_address" : "0xd01a26", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xe96729", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xe975d5", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xea2257", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xd1011f", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0x7fe59ef37890", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0x7fe59ef356d6", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0x7fe59ef357c8", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xdcdd78", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xea1a55", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0x7fe59ef2c6db", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0x7fe59e4ab88f", + "native_offset" : "0x00000" + } + + ] + }, + { + "is_managed" : true, + "offset_free_hash" : "0x3c2359124", + "offset_rich_hash" : "0x3c2359317", + "crashed" : true, + "native_thread_id" : "0x7fe59f3371c0", + "thread_info_addr" : "0x6c2d590", + "thread_name" : "Godot_v3.2.2-be", + "ctx" : { + "IP" : "0xe4cde4", + "SP" : "0x7fffc18950d0", + "BP" : "(nil)" + }, + "managed_frames" : [ + { + "is_managed" : "false", + "native_address" : "unregistered" + } +, + { + "is_managed" : "true", + "guid" : "4BAF23F5-DE20-4225-B168-6B3C888104EA", + "token" : "0x00000", + "native_offset" : "0x0", + "filename" : "GodotSharp.dll", + "sizeofimage" : "0x248000", + "timestamp" : "0x0", + "il_offset" : "0xffffffff" + } +, + { + "is_managed" : "true", + "guid" : "4BAF23F5-DE20-4225-B168-6B3C888104EA", + "token" : "0x6000226", + "native_offset" : "0x0", + "filename" : "GodotSharp.dll", + "sizeofimage" : "0x248000", + "timestamp" : "0x0", + "il_offset" : "0x00026" + } +, + { + "is_managed" : "true", + "guid" : "2CB7ADAB-C0B1-4C8A-82EB-205334283DB4", + "token" : "0x600002b", + "native_offset" : "0x0", + "filename" : "Rogue en Godot.dll", + "sizeofimage" : "0xa000", + "timestamp" : "0x0", + "il_offset" : "0x00189" + } +, + { + "is_managed" : "true", + "guid" : "46E2FABA-5596-4E57-BC4A-72159B9574B8", + "token" : "0x60045f0", + "native_offset" : "0x0", + "filename" : "mscorlib.dll", + "sizeofimage" : "0x472000", + "timestamp" : "0x0", + "il_offset" : "0x0002c" + } +, + { + "is_managed" : "true", + "guid" : "2CB7ADAB-C0B1-4C8A-82EB-205334283DB4", + "token" : "0x600001c", + "native_offset" : "0x0", + "filename" : "Rogue en Godot.dll", + "sizeofimage" : "0xa000", + "timestamp" : "0x0", + "il_offset" : "0x0001a" + } +, + { + "is_managed" : "true", + "guid" : "2CB7ADAB-C0B1-4C8A-82EB-205334283DB4", + "token" : "0x00000", + "native_offset" : "0x0", + "filename" : "Rogue en Godot.dll", + "sizeofimage" : "0xa000", + "timestamp" : "0x0", + "il_offset" : "0xffffffff" + } + + ], + "unmanaged_frames" : [ + { + "is_managed" : "false", + "native_address" : "0xd01a26", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xe96729", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xe975d5", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xea238c", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xd10d2f", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xd10efc", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xd039a8", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xc7c211", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xe4cde4", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0x7fe59f13f320", + "native_offset" : "0x00000" + } + + ] +}, +{ + "is_managed" : false, + "offset_free_hash" : "0x0", + "offset_rich_hash" : "0x0", + "crashed" : false, + "native_thread_id" : "0x7fe594373700", + "thread_info_addr" : "0x7fe560000b20", + "thread_name" : "Debugger agent", + "ctx" : { + "IP" : "0x7fe59ef366d7", + "SP" : "0x7fe594372940", + "BP" : "(nil)" + }, + "unmanaged_frames" : [ + { + "is_managed" : "false", + "native_address" : "0xd01a26", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xe96729", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xe975d5", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xea2257", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xd1011f", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0x7fe59ef37890", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0x7fe59ef366d7", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xd70843", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xd829e4", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xea1a55", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0x7fe59ef2c6db", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0x7fe59e4ab88f", + "native_offset" : "0x00000" + } + + ] +} +] +} \ No newline at end of file diff --git a/mono_crash.3c2359124.1.json b/mono_crash.3c2359124.1.json new file mode 100644 index 0000000..e45d4b7 --- /dev/null +++ b/mono_crash.3c2359124.1.json @@ -0,0 +1,351 @@ +{ + "protocol_version" : "0.0.5", + "configuration" : { + "version" : "(6.6.0) ((no/d9001b5)", + "tlc" : "__thread", + "sigsgev" : "altstack", + "notifications" : "epoll", + "architecture" : "amd64", + "disabled_features" : "none", + "smallconfig" : "disabled", + "bigarrays" : "disabled", + "softdebug" : "enabled", + "interpreter" : "enabled", + "llvm_support" : "disabled", + "suspend" : "preemptive" + }, + "memory" : { + "minor_gc_time" : "0", + "major_gc_time" : "0", + "minor_gc_count" : "0", + "major_gc_count" : "0", + "major_gc_time_concurrent" : "0" + }, + "threads" : [ + { + "is_managed" : false, + "offset_free_hash" : "0x0", + "offset_rich_hash" : "0x0", + "crashed" : false, + "native_thread_id" : "0x7f33a589b700", + "thread_info_addr" : "0x7f337c000b20", + "thread_name" : "Finalizer", + "ctx" : { + "IP" : "0x7f33afb296d6", + "SP" : "0x7f33a589abc0", + "BP" : "0x4bed4e0" + }, + "unmanaged_frames" : [ + { + "is_managed" : "false", + "native_address" : "0xd01a26", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xe96729", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xe975d5", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xea2257", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xd1011f", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0x7f33afb2b890", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0x7f33afb296d6", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0x7f33afb297c8", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xdcdd78", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xea1a55", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0x7f33afb206db", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0x7f33af09f88f", + "native_offset" : "0x00000" + } + + ] + }, + { + "is_managed" : true, + "offset_free_hash" : "0x3c2359124", + "offset_rich_hash" : "0x3c2359244", + "crashed" : true, + "native_thread_id" : "0x7f33aff2b1c0", + "thread_info_addr" : "0x7eccc30", + "thread_name" : "Godot_v3.2.2-be", + "ctx" : { + "IP" : "0xe4cde4", + "SP" : "0x7ffdf31720f0", + "BP" : "(nil)" + }, + "managed_frames" : [ + { + "is_managed" : "false", + "native_address" : "unregistered" + } +, + { + "is_managed" : "true", + "guid" : "4BAF23F5-DE20-4225-B168-6B3C888104EA", + "token" : "0x00000", + "native_offset" : "0x0", + "filename" : "GodotSharp.dll", + "sizeofimage" : "0x248000", + "timestamp" : "0x0", + "il_offset" : "0xffffffff" + } +, + { + "is_managed" : "true", + "guid" : "4BAF23F5-DE20-4225-B168-6B3C888104EA", + "token" : "0x6000226", + "native_offset" : "0x0", + "filename" : "GodotSharp.dll", + "sizeofimage" : "0x248000", + "timestamp" : "0x0", + "il_offset" : "0x00026" + } +, + { + "is_managed" : "true", + "guid" : "A402D686-8480-45D0-A4A3-D62B78691C98", + "token" : "0x600002b", + "native_offset" : "0x0", + "filename" : "Rogue en Godot.dll", + "sizeofimage" : "0xa000", + "timestamp" : "0x0", + "il_offset" : "0x000b6" + } +, + { + "is_managed" : "true", + "guid" : "46E2FABA-5596-4E57-BC4A-72159B9574B8", + "token" : "0x60045f0", + "native_offset" : "0x0", + "filename" : "mscorlib.dll", + "sizeofimage" : "0x472000", + "timestamp" : "0x0", + "il_offset" : "0x0002c" + } +, + { + "is_managed" : "true", + "guid" : "A402D686-8480-45D0-A4A3-D62B78691C98", + "token" : "0x600001c", + "native_offset" : "0x0", + "filename" : "Rogue en Godot.dll", + "sizeofimage" : "0xa000", + "timestamp" : "0x0", + "il_offset" : "0x0001a" + } +, + { + "is_managed" : "true", + "guid" : "A402D686-8480-45D0-A4A3-D62B78691C98", + "token" : "0x00000", + "native_offset" : "0x0", + "filename" : "Rogue en Godot.dll", + "sizeofimage" : "0xa000", + "timestamp" : "0x0", + "il_offset" : "0xffffffff" + } + + ], + "unmanaged_frames" : [ + { + "is_managed" : "false", + "native_address" : "0xd01a26", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xe96729", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xe975d5", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xea238c", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xd10d2f", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xd10efc", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xd039a8", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xc7c211", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xe4cde4", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0x7f33afd33320", + "native_offset" : "0x00000" + } + + ] +}, +{ + "is_managed" : false, + "offset_free_hash" : "0x0", + "offset_rich_hash" : "0x0", + "crashed" : false, + "native_thread_id" : "0x7f33a53d3700", + "thread_info_addr" : "0x7f3370000b20", + "thread_name" : "Debugger agent", + "ctx" : { + "IP" : "0x7f33afb2a6d7", + "SP" : "0x7f33a53d2940", + "BP" : "(nil)" + }, + "unmanaged_frames" : [ + { + "is_managed" : "false", + "native_address" : "0xd01a26", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xe96729", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xe975d5", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xea2257", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xd1011f", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0x7f33afb2b890", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0x7f33afb2a6d7", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xd70843", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xd829e4", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xea1a55", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0x7f33afb206db", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0x7f33af09f88f", + "native_offset" : "0x00000" + } + + ] +} +] +} \ No newline at end of file diff --git a/mono_crash.3c2359124.2.json b/mono_crash.3c2359124.2.json new file mode 100644 index 0000000..1e69bb9 --- /dev/null +++ b/mono_crash.3c2359124.2.json @@ -0,0 +1,351 @@ +{ + "protocol_version" : "0.0.5", + "configuration" : { + "version" : "(6.6.0) ((no/d9001b5)", + "tlc" : "__thread", + "sigsgev" : "altstack", + "notifications" : "epoll", + "architecture" : "amd64", + "disabled_features" : "none", + "smallconfig" : "disabled", + "bigarrays" : "disabled", + "softdebug" : "enabled", + "interpreter" : "enabled", + "llvm_support" : "disabled", + "suspend" : "preemptive" + }, + "memory" : { + "minor_gc_time" : "0", + "major_gc_time" : "0", + "minor_gc_count" : "0", + "major_gc_count" : "0", + "major_gc_time_concurrent" : "0" + }, + "threads" : [ + { + "is_managed" : true, + "offset_free_hash" : "0x3c2359124", + "offset_rich_hash" : "0x3c235927c", + "crashed" : true, + "native_thread_id" : "0x7f16067a21c0", + "thread_info_addr" : "0x748b6c0", + "thread_name" : "Godot_v3.2.2-be", + "ctx" : { + "IP" : "0xe4cde4", + "SP" : "0x7ffca693eb50", + "BP" : "(nil)" + }, + "managed_frames" : [ + { + "is_managed" : "false", + "native_address" : "unregistered" + } +, + { + "is_managed" : "true", + "guid" : "4BAF23F5-DE20-4225-B168-6B3C888104EA", + "token" : "0x00000", + "native_offset" : "0x0", + "filename" : "GodotSharp.dll", + "sizeofimage" : "0x248000", + "timestamp" : "0x0", + "il_offset" : "0xffffffff" + } +, + { + "is_managed" : "true", + "guid" : "4BAF23F5-DE20-4225-B168-6B3C888104EA", + "token" : "0x6000226", + "native_offset" : "0x0", + "filename" : "GodotSharp.dll", + "sizeofimage" : "0x248000", + "timestamp" : "0x0", + "il_offset" : "0x00026" + } +, + { + "is_managed" : "true", + "guid" : "C12569B9-C28E-407C-AE23-D7BEA6CF901E", + "token" : "0x600002b", + "native_offset" : "0x0", + "filename" : "Rogue en Godot.dll", + "sizeofimage" : "0xa000", + "timestamp" : "0x0", + "il_offset" : "0x000ee" + } +, + { + "is_managed" : "true", + "guid" : "46E2FABA-5596-4E57-BC4A-72159B9574B8", + "token" : "0x60045f0", + "native_offset" : "0x0", + "filename" : "mscorlib.dll", + "sizeofimage" : "0x472000", + "timestamp" : "0x0", + "il_offset" : "0x0002c" + } +, + { + "is_managed" : "true", + "guid" : "C12569B9-C28E-407C-AE23-D7BEA6CF901E", + "token" : "0x600001c", + "native_offset" : "0x0", + "filename" : "Rogue en Godot.dll", + "sizeofimage" : "0xa000", + "timestamp" : "0x0", + "il_offset" : "0x0001a" + } +, + { + "is_managed" : "true", + "guid" : "C12569B9-C28E-407C-AE23-D7BEA6CF901E", + "token" : "0x00000", + "native_offset" : "0x0", + "filename" : "Rogue en Godot.dll", + "sizeofimage" : "0xa000", + "timestamp" : "0x0", + "il_offset" : "0xffffffff" + } + + ], + "unmanaged_frames" : [ + { + "is_managed" : "false", + "native_address" : "0xd01a26", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xe96729", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xe975d5", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xea238c", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xd10d2f", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xd10efc", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xd039a8", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xc7c211", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xe4cde4", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0x7f16065aa320", + "native_offset" : "0x00000" + } + + ] +}, +{ + "is_managed" : false, + "offset_free_hash" : "0x0", + "offset_rich_hash" : "0x0", + "crashed" : false, + "native_thread_id" : "0x7f15ddffe700", + "thread_info_addr" : "0x7f15d4000b20", + "thread_name" : "Finalizer", + "ctx" : { + "IP" : "0x7f16063a06d6", + "SP" : "0x7f15ddffdbc0", + "BP" : "0x4bed4e0" + }, + "unmanaged_frames" : [ + { + "is_managed" : "false", + "native_address" : "0xd01a26", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xe96729", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xe975d5", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xea2257", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xd1011f", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0x7f16063a2890", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0x7f16063a06d6", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0x7f16063a07c8", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xdcdd78", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xea1a55", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0x7f16063976db", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0x7f160591688f", + "native_offset" : "0x00000" + } + + ] +}, +{ + "is_managed" : false, + "offset_free_hash" : "0x0", + "offset_rich_hash" : "0x0", + "crashed" : false, + "native_thread_id" : "0x7f15dddfd700", + "thread_info_addr" : "0x7f15c8000b20", + "thread_name" : "Debugger agent", + "ctx" : { + "IP" : "0x7f16063a16d7", + "SP" : "0x7f15dddfc940", + "BP" : "(nil)" + }, + "unmanaged_frames" : [ + { + "is_managed" : "false", + "native_address" : "0xd01a26", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xe96729", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xe975d5", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xea2257", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xd1011f", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0x7f16063a2890", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0x7f16063a16d7", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xd70843", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xd829e4", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xea1a55", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0x7f16063976db", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0x7f160591688f", + "native_offset" : "0x00000" + } + + ] +} +] +} \ No newline at end of file diff --git a/mono_crash.3c2359124.3.json b/mono_crash.3c2359124.3.json new file mode 100644 index 0000000..cd7837c --- /dev/null +++ b/mono_crash.3c2359124.3.json @@ -0,0 +1,351 @@ +{ + "protocol_version" : "0.0.5", + "configuration" : { + "version" : "(6.6.0) ((no/d9001b5)", + "tlc" : "__thread", + "sigsgev" : "altstack", + "notifications" : "epoll", + "architecture" : "amd64", + "disabled_features" : "none", + "smallconfig" : "disabled", + "bigarrays" : "disabled", + "softdebug" : "enabled", + "interpreter" : "enabled", + "llvm_support" : "disabled", + "suspend" : "preemptive" + }, + "memory" : { + "minor_gc_time" : "0", + "major_gc_time" : "0", + "minor_gc_count" : "0", + "major_gc_count" : "0", + "major_gc_time_concurrent" : "0" + }, + "threads" : [ + { + "is_managed" : false, + "offset_free_hash" : "0x0", + "offset_rich_hash" : "0x0", + "crashed" : false, + "native_thread_id" : "0x7f76c9da7700", + "thread_info_addr" : "0x7f76a0000b20", + "thread_name" : "Finalizer", + "ctx" : { + "IP" : "0x7f76d40356d6", + "SP" : "0x7f76c9da6bc0", + "BP" : "0x4bed4e0" + }, + "unmanaged_frames" : [ + { + "is_managed" : "false", + "native_address" : "0xd01a26", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xe96729", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xe975d5", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xea2257", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xd1011f", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0x7f76d4037890", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0x7f76d40356d6", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0x7f76d40357c8", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xdcdd78", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xea1a55", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0x7f76d402c6db", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0x7f76d35ab88f", + "native_offset" : "0x00000" + } + + ] + }, + { + "is_managed" : true, + "offset_free_hash" : "0x3c2359124", + "offset_rich_hash" : "0x3c235927c", + "crashed" : true, + "native_thread_id" : "0x7f76d44371c0", + "thread_info_addr" : "0x69b3870", + "thread_name" : "Godot_v3.2.2-be", + "ctx" : { + "IP" : "0xe4cde4", + "SP" : "0x7ffe46a674e0", + "BP" : "(nil)" + }, + "managed_frames" : [ + { + "is_managed" : "false", + "native_address" : "unregistered" + } +, + { + "is_managed" : "true", + "guid" : "4BAF23F5-DE20-4225-B168-6B3C888104EA", + "token" : "0x00000", + "native_offset" : "0x0", + "filename" : "GodotSharp.dll", + "sizeofimage" : "0x248000", + "timestamp" : "0x0", + "il_offset" : "0xffffffff" + } +, + { + "is_managed" : "true", + "guid" : "4BAF23F5-DE20-4225-B168-6B3C888104EA", + "token" : "0x6000226", + "native_offset" : "0x0", + "filename" : "GodotSharp.dll", + "sizeofimage" : "0x248000", + "timestamp" : "0x0", + "il_offset" : "0x00026" + } +, + { + "is_managed" : "true", + "guid" : "C12569B9-C28E-407C-AE23-D7BEA6CF901E", + "token" : "0x600002b", + "native_offset" : "0x0", + "filename" : "Rogue en Godot.dll", + "sizeofimage" : "0xa000", + "timestamp" : "0x0", + "il_offset" : "0x000ee" + } +, + { + "is_managed" : "true", + "guid" : "46E2FABA-5596-4E57-BC4A-72159B9574B8", + "token" : "0x60045f0", + "native_offset" : "0x0", + "filename" : "mscorlib.dll", + "sizeofimage" : "0x472000", + "timestamp" : "0x0", + "il_offset" : "0x0002c" + } +, + { + "is_managed" : "true", + "guid" : "C12569B9-C28E-407C-AE23-D7BEA6CF901E", + "token" : "0x600001c", + "native_offset" : "0x0", + "filename" : "Rogue en Godot.dll", + "sizeofimage" : "0xa000", + "timestamp" : "0x0", + "il_offset" : "0x0001a" + } +, + { + "is_managed" : "true", + "guid" : "C12569B9-C28E-407C-AE23-D7BEA6CF901E", + "token" : "0x00000", + "native_offset" : "0x0", + "filename" : "Rogue en Godot.dll", + "sizeofimage" : "0xa000", + "timestamp" : "0x0", + "il_offset" : "0xffffffff" + } + + ], + "unmanaged_frames" : [ + { + "is_managed" : "false", + "native_address" : "0xd01a26", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xe96729", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xe975d5", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xea238c", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xd10d2f", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xd10efc", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xd039a8", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xc7c211", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xe4cde4", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0x7f76d423f320", + "native_offset" : "0x00000" + } + + ] +}, +{ + "is_managed" : false, + "offset_free_hash" : "0x0", + "offset_rich_hash" : "0x0", + "crashed" : false, + "native_thread_id" : "0x7f76c83fe700", + "thread_info_addr" : "0x7f7694000b20", + "thread_name" : "Debugger agent", + "ctx" : { + "IP" : "0x7f76d40366d7", + "SP" : "0x7f76c83fd940", + "BP" : "(nil)" + }, + "unmanaged_frames" : [ + { + "is_managed" : "false", + "native_address" : "0xd01a26", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xe96729", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xe975d5", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xea2257", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xd1011f", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0x7f76d4037890", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0x7f76d40366d7", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xd70843", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xd829e4", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xea1a55", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0x7f76d402c6db", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0x7f76d35ab88f", + "native_offset" : "0x00000" + } + + ] +} +] +} \ No newline at end of file diff --git a/mono_crash.3c2359124.4.json b/mono_crash.3c2359124.4.json new file mode 100644 index 0000000..44b3adf --- /dev/null +++ b/mono_crash.3c2359124.4.json @@ -0,0 +1,351 @@ +{ + "protocol_version" : "0.0.5", + "configuration" : { + "version" : "(6.6.0) ((no/d9001b5)", + "tlc" : "__thread", + "sigsgev" : "altstack", + "notifications" : "epoll", + "architecture" : "amd64", + "disabled_features" : "none", + "smallconfig" : "disabled", + "bigarrays" : "disabled", + "softdebug" : "enabled", + "interpreter" : "enabled", + "llvm_support" : "disabled", + "suspend" : "preemptive" + }, + "memory" : { + "minor_gc_time" : "0", + "major_gc_time" : "0", + "minor_gc_count" : "0", + "major_gc_count" : "0", + "major_gc_time_concurrent" : "0" + }, + "threads" : [ + { + "is_managed" : false, + "offset_free_hash" : "0x0", + "offset_rich_hash" : "0x0", + "crashed" : false, + "native_thread_id" : "0x7fe498f7b700", + "thread_info_addr" : "0x7fe470000b20", + "thread_name" : "Finalizer", + "ctx" : { + "IP" : "0x7fe4a320a6d6", + "SP" : "0x7fe498f7abc0", + "BP" : "0x4bed4e0" + }, + "unmanaged_frames" : [ + { + "is_managed" : "false", + "native_address" : "0xd01a26", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xe96729", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xe975d5", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xea2257", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xd1011f", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0x7fe4a320c890", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0x7fe4a320a6d6", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0x7fe4a320a7c8", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xdcdd78", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xea1a55", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0x7fe4a32016db", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0x7fe4a278088f", + "native_offset" : "0x00000" + } + + ] + }, + { + "is_managed" : false, + "offset_free_hash" : "0x0", + "offset_rich_hash" : "0x0", + "crashed" : false, + "native_thread_id" : "0x7fe498ab4700", + "thread_info_addr" : "0x7fe464000b20", + "thread_name" : "Debugger agent", + "ctx" : { + "IP" : "0x7fe4a320b6d7", + "SP" : "0x7fe498ab3940", + "BP" : "(nil)" + }, + "unmanaged_frames" : [ + { + "is_managed" : "false", + "native_address" : "0xd01a26", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xe96729", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xe975d5", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xea2257", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xd1011f", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0x7fe4a320c890", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0x7fe4a320b6d7", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xd70843", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xd829e4", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xea1a55", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0x7fe4a32016db", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0x7fe4a278088f", + "native_offset" : "0x00000" + } + + ] + }, + { + "is_managed" : true, + "offset_free_hash" : "0x3c2359124", + "offset_rich_hash" : "0x3c235927c", + "crashed" : true, + "native_thread_id" : "0x7fe4a360c1c0", + "thread_info_addr" : "0x7a090a0", + "thread_name" : "Godot_v3.2.2-be", + "ctx" : { + "IP" : "0xe4cde4", + "SP" : "0x7ffca3f63900", + "BP" : "(nil)" + }, + "managed_frames" : [ + { + "is_managed" : "false", + "native_address" : "unregistered" + } +, + { + "is_managed" : "true", + "guid" : "4BAF23F5-DE20-4225-B168-6B3C888104EA", + "token" : "0x00000", + "native_offset" : "0x0", + "filename" : "GodotSharp.dll", + "sizeofimage" : "0x248000", + "timestamp" : "0x0", + "il_offset" : "0xffffffff" + } +, + { + "is_managed" : "true", + "guid" : "4BAF23F5-DE20-4225-B168-6B3C888104EA", + "token" : "0x6000226", + "native_offset" : "0x0", + "filename" : "GodotSharp.dll", + "sizeofimage" : "0x248000", + "timestamp" : "0x0", + "il_offset" : "0x00026" + } +, + { + "is_managed" : "true", + "guid" : "C12569B9-C28E-407C-AE23-D7BEA6CF901E", + "token" : "0x600002b", + "native_offset" : "0x0", + "filename" : "Rogue en Godot.dll", + "sizeofimage" : "0xa000", + "timestamp" : "0x0", + "il_offset" : "0x000ee" + } +, + { + "is_managed" : "true", + "guid" : "46E2FABA-5596-4E57-BC4A-72159B9574B8", + "token" : "0x60045f0", + "native_offset" : "0x0", + "filename" : "mscorlib.dll", + "sizeofimage" : "0x472000", + "timestamp" : "0x0", + "il_offset" : "0x0002c" + } +, + { + "is_managed" : "true", + "guid" : "C12569B9-C28E-407C-AE23-D7BEA6CF901E", + "token" : "0x600001c", + "native_offset" : "0x0", + "filename" : "Rogue en Godot.dll", + "sizeofimage" : "0xa000", + "timestamp" : "0x0", + "il_offset" : "0x0001a" + } +, + { + "is_managed" : "true", + "guid" : "C12569B9-C28E-407C-AE23-D7BEA6CF901E", + "token" : "0x00000", + "native_offset" : "0x0", + "filename" : "Rogue en Godot.dll", + "sizeofimage" : "0xa000", + "timestamp" : "0x0", + "il_offset" : "0xffffffff" + } + + ], + "unmanaged_frames" : [ + { + "is_managed" : "false", + "native_address" : "0xd01a26", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xe96729", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xe975d5", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xea238c", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xd10d2f", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xd10efc", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xd039a8", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xc7c211", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0xe4cde4", + "native_offset" : "0x00000" + } +, + { + "is_managed" : "false", + "native_address" : "0x7fe4a3414320", + "native_offset" : "0x00000" + } + + ] +} +] +} \ No newline at end of file diff --git a/project.godot b/project.godot index 5234188..1b48526 100644 --- a/project.godot +++ b/project.godot @@ -24,6 +24,29 @@ config/icon="res://icon.png" window/size/always_on_top=true window/stretch/mode="2d" +[input] + +a={ +"deadzone": 0.5, +"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":65,"unicode":0,"echo":false,"script":null) + ] +} +d={ +"deadzone": 0.5, +"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":68,"unicode":0,"echo":false,"script":null) + ] +} +w={ +"deadzone": 0.5, +"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":87,"unicode":0,"echo":false,"script":null) + ] +} +s={ +"deadzone": 0.5, +"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":83,"unicode":0,"echo":false,"script":null) + ] +} + [rendering] quality/driver/driver_name="GLES2"