Please login or register.

Login with username, password and session length
Advanced search  

News:

IRC channel - server: waelisch.de  channel: #wme (read more)

Author Topic: Stack Underflow  (Read 2933 times)

0 Members and 1 Guest are viewing this topic.

Maidnet

  • Occasional poster
  • **
  • Karma: 0
  • Offline Offline
  • Posts: 50
    • View Profile
Stack Underflow
« on: June 26, 2006, 10:08:21 AM »

hi!

I have had a problem on having created a conversation between the actor and a secondary actor. When the game is executed and the conversation is executed, in certain moments the game is blocked and in the file wme.log the following message appears:

Code: [Select]
00:55: ********** DEBUG LOG OPENED 27-05-2006 (Release Build) *****************
00:55: DEAD:CODE Games Framework ver 1.02 (Build 44), Compiled on Jul  7 2004, 19:29:13
00:55: Platform: Windows XP Service Pack 2 (Build 2600)
00:55: DirectX version: 9.0
00:55: BugslayerUtil.dll is bound
00:55:
00:55: Scanning packages...
00:55:   Registered 0 files in 0 package(s)
00:55: Initializing scripting engine...
00:55:   Script compiler 'dcscomp.dll' bound successfuly
00:55: Loading string table...
00:55:   23 strings loaded
00:55: First run / crash recovery
00:55: Enumerating Direct3D devices...
00:55: Enumerating DirectDraw devices...
00:55: Enumerating DirectSound devices...
00:55: Available video devices:
00:55:   NVIDIA GeForce FX 5200  (Microsoft Corporation) (accelerated)
00:55:   NVIDIA GeForce FX 5200  (Microsoft Corporation) (non accelerated)
00:55: Available audio devices:
00:55:   Controlador primario de sonido
00:55:   Realtek AC97 Audio
00:55:   [no sound]
00:55:
00:55: User selected:
00:55:   Video: NVIDIA GeForce FX 5200  (Microsoft Corporation) (accelerated)
00:55:          Windowed:no  Colors:32bit  T&L:no  Multisample:0
00:55:   Audio: Controlador primario de sonido
00:55: Maximum texture size: 4096x4096
00:55: Data initialized in 125 ms
00:55: Fatal: Stack underflow

To which this is owed? Is it a mistake that can be solved?

Please, I need answers!

Thanks to all!

The code that fails is the following one:

Code: [Select]
#include "scripts\base.inc"

var ProtaFrasesTal;
var ReceFrasesTal;
var Loop = true;
var Loop2 = true;
var Loop3 = true;
var Selected;
global Recepcionista;

/////////////////////////////////////////////////////////////////////////////////
//DIALOGO

ProtaFrasesTal[1] = "Bonita corbata";
ProtaFrasesTal[2] = "Ya veo que tienes una vida social de lo más interesante.";
ProtaFrasesTal[3] = "¿Cuando fué la última vez que hablaste con una chica?";
ProtaFrasesTal[4] = "No";
ProtaFrasesTal[5] = "¿Ves como tienes una existencia patética?";
ProtaFrasesTal[6] = "¿Como se llama el caballo de Gandalf?";
ProtaFrasesTal[7] = "Eres mas friki de lo que pensaba.";
ProtaFrasesTal[8] = "¿Cuantas veces has visto la trilogia de Star Wars?";
ProtaFrasesTal[9] = "¿Hay una nueva y una vieja?";
ProtaFrasesTal[10] = "Estoy mazo anticuado, tronqui.";
ProtaFrasesTal[11] = "¿A que coleccionas cartas del Magic?";
ProtaFrasesTal[12] = "Y es increible ver como logra conseguir";
ProtaFrasesTal[13] = "que ninguna chica se interese por tí.";
ProtaFrasesTal[14] = "Es como un repelente para chicas.";
ProtaFrasesTal[15] = "Quédate tu mundo interior para ti, anda.";
ProtaFrasesTal[16] = "Seguro que tu madre es un troll.";
ProtaFrasesTal[17] = "Esa es una muy buena opción, amigo";
ProtaFrasesTal[18] = "¿Conoces a esta chica?";
ProtaFrasesTal[19] = "¿Y qué sabes de ella?";
ProtaFrasesTal[20] = "¿Cuando fué la última vez que le viste mover el culo?";
ProtaFrasesTal[21] = "¿Me dices cual es su habitación?";
ProtaFrasesTal[22] = "¿Como dices?";
ProtaFrasesTal[23] = "¿Y como era ese tipo?";
ProtaFrasesTal[24] = "¿Crees que yo podría con él?";
ProtaFrasesTal[25] = "Dime el número de la habitación, rápido.";
ProtaFrasesTal[26] = "¡Paula puede correr peligro!";
ProtaFrasesTal[27] = "¿Yo? Te daría el número de la habitación";
ProtaFrasesTal[28] = "y además te regalaría...";
ProtaFrasesTal[29] = "mmm...";
ProtaFrasesTal[30] = "¡el timbre de recepción! si... eso!";
ProtaFrasesTal[31] = "La verdad es que creo que te sacaría hasta la médula si pudiese.";
ProtaFrasesTal[32] = "No responderé a esa pregunta ni aunque me retuerzas un testículo.";
ProtaFrasesTal[33] = "¡Estamos hablando de ti, no de mi!";
ProtaFrasesTal[34] = "Espero de verdad no parecerme a tu madre.";
ProtaFrasesTal[35] = "¿Y que piensas hacer?";
ProtaFrasesTal[36] = "¿Y que es lo que quieres?";
ProtaFrasesTal[37] = "¿No te da penita pensar que Paula pueda estar en apuros?";
ProtaFrasesTal[38] = "Me has decepcionado tio, me has decepcionado.";
ProtaFrasesTal[39] = "Me das asco. Me voy.";
ProtaFrasesTal[40] = "Eres un enfermo, chaval.";
ProtaFrasesTal[41] = "Creo que he dejado el horno encendido. Me largo.";
ProtaFrasesTal[42] = "¿Porque trabajas en este antro?";
ProtaFrasesTal[43] = "Que futuro mas oscuro.";
ProtaFrasesTal[44] = "Seguro que vienen muchas chicas por aquí.";
ProtaFrasesTal[45] = "¿Funciona la máquina de refrescos de ahí fuera?";
ProtaFrasesTal[46] = "Aquí huele como a podrido. Me largo.";

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////

ReceFrasesTal[1] = "Buenas noches,";
ReceFrasesTal[2] = "¿En que puedo ayudarte?";
ReceFrasesTal[3] = "Gracias";
ReceFrasesTal[4] = "Me la regaló mi madre para mi cumpleaños.";
ReceFrasesTal[5] = "¿Estas insinuando que no tengo vida social";
ReceFrasesTal[6] = "sólo porque trabajo 16 horas diarias en este motel de mala muerte,";
ReceFrasesTal[7] = "y porque mi madre me compra las corbatas?";
ReceFrasesTal[8] = "¿Cuentan las chicas que vienen buscando habitación?";
ReceFrasesTal[9] = "¿Y las cajeras que me atienden en el super?";
ReceFrasesTal[10] = "¿Y mi médica de cabecera?";
ReceFrasesTal[11] = "¿Y mi madre?";
ReceFrasesTal[12] = "Pues... creo que fué en el parvulario";
ReceFrasesTal[13] = "Se llama Sombragris. Es el rey de los caballos.";
ReceFrasesTal[14] = "Más veloz que cualquier otro,";
ReceFrasesTal[15] = "fué criado en el reino de Rohan, y era el caballo preferido de su rey Théoden";
ReceFrasesTal[16] = "hasta que Gandalf lo tomó prestado para luchar contra las hordas de Sauron.";
ReceFrasesTal[17] = "¿La nueva o la vieja?";
ReceFrasesTal[18] = "Ya te digo.";
ReceFrasesTal[19] = "Es increíble lo que esas cartas hacen crecer tu universo interior";
ReceFrasesTal[20] = "De todas formas no te iba a dejar entrar en él.";
ReceFrasesTal[21] = "Eres demasiado bajito y el enano ya está cogido";
ReceFrasesTal[22] = "ja ja ja";
ReceFrasesTal[23] = "¡Oye!";
ReceFrasesTal[24] = "Oh, si.";
ReceFrasesTal[25] = "Es Paula. Tendrías que ver como mueve el culo.";
ReceFrasesTal[26] = "Es una chica reservada, no suele venir con chicos por aquí.";
ReceFrasesTal[27] = "Siempre va con sus libros y sus movidas, pero nunca dice nada.";
ReceFrasesTal[28] = "Pues hace unos días que no la veo entrar.";
ReceFrasesTal[29] = "Cuando se marchó me pagó el mes pasado y la mitad del siguiente.";
ReceFrasesTal[30] = "Me dijo que había encontrado trabajo en una pizzería.";
ReceFrasesTal[31] = "Se la veía bastante contenta.";
ReceFrasesTal[32] = "Que casualidad.";
ReceFrasesTal[33] = "Hace un rato un hombre me ha hecho casi las mismas preguntas que tu,";
ReceFrasesTal[34] = "y al final me ha pedido el número de la habitación.";
ReceFrasesTal[35] = "He dicho que hace un rato un hombre me ha hecho casi las mismas preguntas que tu,";
ReceFrasesTal[36] = "mmm...";
ReceFrasesTal[37] = "era alto y corpulento, un tio grande, ya sabes.";
ReceFrasesTal[38] = "Iba vestido todo de negro, y él tambien era negro.";
ReceFrasesTal[39] = "ja ja ja";
ReceFrasesTal[40] = "Ni lo sueñes.";
ReceFrasesTal[41] = "Verás, tio";
ReceFrasesTal[42] = "Tengo dos maneras de afrontar esta situación.";
ReceFrasesTal[43] = "Puedo posicionarme como un buen ciudadano y ayudarte";
ReceFrasesTal[44] = "aunque también puedo posicionarme como un bastardo sin escrúpulos";
ReceFrasesTal[45] = "e intentar sacar tajada de esta situación.";
ReceFrasesTal[46] = "¿Tu que harias?";
ReceFrasesTal[47] = "Si, claro";
ReceFrasesTal[48] = "y luego me presentarías a tu hermana.";
ReceFrasesTal[49] = "No me vendas humo, por favor.";
ReceFrasesTal[50] = "Amigo, es un acto de valor aceptar la evidencia";
ReceFrasesTal[51] = "yo se algo que tu necesitas saber";
ReceFrasesTal[52] = "y yo se que necesito comprarme la trilogia del señor de los anillos";
ReceFrasesTal[53] = "así que ya sabes.";
ReceFrasesTal[54] = "¿Pero tu tambien tienes de eso?";
ReceFrasesTal[55] = "¡Pareces mi madre!";

ReceFrasesTal[57] = "Evidentemente,";
ReceFrasesTal[58] = "voy a posicionarme como un bastardo sin escrúpulos.";
ReceFrasesTal[59] = "Sólamente te puedo decir que";
ReceFrasesTal[60] = "tengo que reconocer que ese tipo sabe cómo convencer a un humilde recepcionista como yo";
ReceFrasesTal[61] = "A estas alturas,";
ReceFrasesTal[62] = "ya no me da pena ni mi abuela.";
ReceFrasesTal[63] = "Así que dejate del rollo lacrimógeno porque no va a funcionar conmigo";
ReceFrasesTal[64] = "Oh si, que lástima";
ReceFrasesTal[65] = "pero si tu no me das lo mío, yo no te digo el numero de la habitación.";
ReceFrasesTal[66] = "Es así de sencillo.";
ReceFrasesTal[67] = "Sí, vete.";
ReceFrasesTal[68] = "Que la ira de Mordor caiga sobre ti, pequeño hobbit.";
ReceFrasesTal[69] = "Y tu un pitufo amargado.";
ReceFrasesTal[70] = "¿porque no te marchas a tu hongo y me dejas en paz?";
ReceFrasesTal[71] = "Que excusa mas mala. Parece sacada de un videojuego.";
ReceFrasesTal[72] = "Mi padre es el dueño de este antro";
ReceFrasesTal[73] = "y, según él, soy el futuro de este negocio";
ReceFrasesTal[74] = "Y tanto que vienen.";
ReceFrasesTal[75] = "Lo malo es que no vienen a verme a mi,";
ReceFrasesTal[76] = "sino que vienen a pasar un rato con sus clientes.";
ReceFrasesTal[77] = "A mi sólamente me dejan las toallas sucias";
ReceFrasesTal[78] = "y las sábanas manchadas.";
ReceFrasesTal[79] = "Funciona cuando quiere";
ReceFrasesTal[80] = "Si no funciona, empújala un poco";
ReceFrasesTal[81] = "a veces así reacciona.";
ReceFrasesTal[82] = "¿Has mirado debajo de tus brazos?";
ReceFrasesTal[83] = "Vamos, que me ha dado 100 dobols por decirle el número, y tu no vas a ser menos.";

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////


on "LookAt"
{
  actor.GoTo(237, 418);
  actor.TurnTo(DI_RIGHT);
  actor.Talk("Una corbata horrible, a juego con una cara horrible.");
}


////////////////////////////////////////////////////////////////////////////////
on "Take"
{

  actor.GoTo(237, 418);
  actor.TurnTo(DI_RIGHT);
  actor.Talk("No creo que le guste...");
}


////////////////////////////////////////////////////////////////////////////////
on "Talk"
{
  actor.GoTo(237, 418);
  actor.TurnTo(DI_RIGHT);
  Loop = true;
/*  Game.Interactive = false;

  this.Talk(ReceFrasesTal[1]);
  this.Talk(ReceFrasesTal[2]);
  while(Loop)
{
Game.AddResponse(1, ProtaFrasesTal[1]);
Game.AddResponse(18, ProtaFrasesTal[18]);
Game.AddResponse(42, ProtaFrasesTal[42]);
Game.AddResponse(44, ProtaFrasesTal[44]);
Game.AddResponse(45, ProtaFrasesTal[45]);
Game.AddResponse(46, ProtaFrasesTal[46]);

Selected = Game.GetResponse();
actor.Talk(ProtaFrasesTal[Selected]);

if(Selected==1)
{
this.Talk(ReceFrasesTal[3]);
this.Talk(ReceFrasesTal[4]);
actor.Talk(ProtaFrasesTal[2]);
this.Talk(ReceFrasesTal[5]);
this.Talk(ReceFrasesTal[6]);
this.Talk(ReceFrasesTal[7]);
Loop2 = true;

while(Loop2)
{
Game.AddResponse(3, ProtaFrasesTal[3]);
Game.AddResponse(6, ProtaFrasesTal[6]);
Game.AddResponse(8, ProtaFrasesTal[8]);
Game.AddResponse(11, ProtaFrasesTal[11]);

Selected = Game.GetResponse();
actor.Talk(ProtaFrasesTal[Selected]);

if(Selected==3)
{
this.Talk(ReceFrasesTal[8]);
actor.Talk(ProtaFrasesTal[4]);
this.Talk(ReceFrasesTal[9]);
actor.Talk(ProtaFrasesTal[4]);
this.Talk(ReceFrasesTal[10]);
actor.Talk(ProtaFrasesTal[4]);
this.Talk(ReceFrasesTal[11]);
actor.Talk(ProtaFrasesTal[4]);
this.Talk(ReceFrasesTal[12]);
actor.Talk(ProtaFrasesTal[5]);
}

if(Selected==6)
{
this.Talk(ReceFrasesTal[13]);
this.Talk(ReceFrasesTal[14]);
this.Talk(ReceFrasesTal[15]);
this.Talk(ReceFrasesTal[16]);
actor.Talk(ProtaFrasesTal[7]);
}

if(Selected==8)
{
this.Talk(ReceFrasesTal[17]);
actor.Talk(ProtaFrasesTal[9]);
actor.Talk(ProtaFrasesTal[10]);
}

if(Selected==11)
{
this.Talk(ReceFrasesTal[18]);
this.Talk(ReceFrasesTal[19]);
actor.Talk(ProtaFrasesTal[12]);
actor.Talk(ProtaFrasesTal[13]);
actor.Talk(ProtaFrasesTal[14]);
actor.Talk(ProtaFrasesTal[15]);
this.Talk(ReceFrasesTal[20]);
this.Talk(ReceFrasesTal[21]);
this.Talk(ReceFrasesTal[22]);
actor.Talk(ProtaFrasesTal[16]);
this.Talk(ReceFrasesTal[23]);
Loop2 = false;
}
}
}

if(Selected==18)
{

this.Talk(ReceFrasesTal[24]);
this.Talk(ReceFrasesTal[25]);
Game.AddResponse(19, ProtaFrasesTal[19]);
Game.AddResponse(20, ProtaFrasesTal[20]);
Game.AddResponse(21, ProtaFrasesTal[21]);
Game.AddResponse(41, ProtaFrasesTal[41]);

Selected = Game.GetResponse();
actor.Talk(ProtaFrasesTal[Selected]);

if(Selected==19)
{
this.Talk(ReceFrasesTal[26]);
this.Talk(ReceFrasesTal[27]);
}
if(Selected==20)
{
this.Talk(ReceFrasesTal[28]);
this.Talk(ReceFrasesTal[29]);
this.Talk(ReceFrasesTal[30]);
this.Talk(ReceFrasesTal[31]);
}
if(Selected==21)
{
this.Talk(ReceFrasesTal[32]);
this.Talk(ReceFrasesTal[33]);
this.Talk(ReceFrasesTal[34]);

Game.AddResponse(22, ProtaFrasesTal[22]);
Game.AddResponse(23, ProtaFrasesTal[23]);
Game.AddResponse(25, ProtaFrasesTal[25]);

Selected = Game.GetResponse();
actor.Talk(ProtaFrasesTal[Selected]);
if(Selected==22)
{
this.Talk(ReceFrasesTal[35]);
this.Talk(ReceFrasesTal[34]);
}
if(Selected==23)
{
this.Talk(ReceFrasesTal[36]);
this.Talk(ReceFrasesTal[37]);
this.Talk(ReceFrasesTal[38]);
actor.Talk(ProtaFrasesTal[24]);
this.Talk(ReceFrasesTal[39]);
this.Talk(ReceFrasesTal[40]);
}
if(Selected==25)
{
actor.Talk(ProtaFrasesTal[26]);
this.Talk(ReceFrasesTal[41]);
this.Talk(ReceFrasesTal[42]);
this.Talk(ReceFrasesTal[43]);
actor.Talk(ProtaFrasesTal[17]);
this.Talk(ReceFrasesTal[44]);
this.Talk(ReceFrasesTal[45]);
this.Talk(ReceFrasesTal[46]);

Game.AddResponse(27, ProtaFrasesTal[27]);
Game.AddResponse(31, ProtaFrasesTal[31]);
Game.AddResponse(32, ProtaFrasesTal[32]);
Game.AddResponse(33, ProtaFrasesTal[33]);
Game.AddResponse(35, ProtaFrasesTal[35]);
Game.AddResponse(39, ProtaFrasesTal[39]);

Selected = Game.GetResponse();
actor.Talk(ProtaFrasesTal[Selected]);

if(Selected==27)
{
actor.Talk(ProtaFrasesTal[28]);
actor.Talk(ProtaFrasesTal[29]);
actor.Talk(ProtaFrasesTal[30]);
this.Talk(ReceFrasesTal[47]);
this.Talk(ReceFrasesTal[48]);
this.Talk(ReceFrasesTal[49]);
}
if(Selected==31)
{
this.Talk(ReceFrasesTal[50]);
this.Talk(ReceFrasesTal[51]);
this.Talk(ReceFrasesTal[52]);
this.Talk(ReceFrasesTal[53]);
}
if(Selected==32)
{
this.Talk(ReceFrasesTal[54]);
}

if(Selected==33)
{
this.Talk(ReceFrasesTal[55]);
actor.Talk(ProtaFrasesTal[34]);
}

if(Selected==35)
{
this.Talk(ReceFrasesTal[57]);
this.Talk(ReceFrasesTal[58]);

Game.AddResponse(36, ProtaFrasesTal[36]);
Game.AddResponse(37, ProtaFrasesTal[37]);
Game.AddResponse(38, ProtaFrasesTal[38]);

Selected = Game.GetResponse();
actor.Talk(ProtaFrasesTal[Selected]);

if(Selected==36)
{
this.Talk(ReceFrasesTal[59]);
this.Talk(ReceFrasesTal[60]);
actor.Talk(ProtaFrasesTal[40]);
this.Talk(ReceFrasesTal[70]);
this.Talk(ReceFrasesTal[71]);
}

if(Selected==37)
{
this.Talk(ReceFrasesTal[61]);
this.Talk(ReceFrasesTal[62]);
this.Talk(ReceFrasesTal[63]);
actor.Talk(ProtaFrasesTal[40]);
this.Talk(ReceFrasesTal[70]);
this.Talk(ReceFrasesTal[71]);
}

if(Selected==38)
{
this.Talk(ReceFrasesTal[64]);
this.Talk(ReceFrasesTal[65]);
this.Talk(ReceFrasesTal[66]);
actor.Talk(ProtaFrasesTal[40]);
this.Talk(ReceFrasesTal[70]);
this.Talk(ReceFrasesTal[71]);
}

}

if(Selected==39)
{
this.Talk(ReceFrasesTal[67]);
this.Talk(ReceFrasesTal[68]);
this.Talk(ReceFrasesTal[69]);
}

}
}


}

if(Selected==42)
{
this.Talk(ReceFrasesTal[72]);
this.Talk(ReceFrasesTal[73]);
actor.Talk(ProtaFrasesTal[43]);
}

if(Selected=44)
{
this.Talk(ReceFrasesTal[74]);
this.Talk(ReceFrasesTal[75]);
this.Talk(ReceFrasesTal[76]);
this.Talk(ReceFrasesTal[77]);
this.Talk(ReceFrasesTal[78]);
}

if(Selected==45)
{
this.Talk(ReceFrasesTal[79]);
this.Talk(ReceFrasesTal[80]);
this.Talk(ReceFrasesTal[81]);
}

if(Selected==46)
{
this.Talk(ReceFrasesTal[82]);
Loop = false;
}
}
  Game.Interactive = true; */




 Game.Interactive = false;

  this.Talk(ReceFrasesTal[1]);
  this.Talk(ReceFrasesTal[2]);
  while(Loop)
{
Game.AddResponse(1, ProtaFrasesTal[1]);
Game.AddResponse(18, ProtaFrasesTal[18]);
Game.AddResponse(42, ProtaFrasesTal[42]);
Game.AddResponse(44, ProtaFrasesTal[44]);
Game.AddResponse(45, ProtaFrasesTal[45]);
Game.AddResponse(46, ProtaFrasesTal[46]);

Selected = Game.GetResponse();
actor.Talk(ProtaFrasesTal[Selected]);

if(Selected==1)
{

}

if(Selected==18)
{

}


if(Selected==42)
{
this.Talk(ReceFrasesTal[72]);
this.Talk(ReceFrasesTal[73]);
actor.Talk(ProtaFrasesTal[43]);
}

if(Selected=44)
{
this.Talk(ReceFrasesTal[74]);
this.Talk(ReceFrasesTal[75]);
this.Talk(ReceFrasesTal[76]);
this.Talk(ReceFrasesTal[77]);
this.Talk(ReceFrasesTal[78]);
}

if(Selected==45)
{
this.Talk(ReceFrasesTal[79]);
this.Talk(ReceFrasesTal[80]);
this.Talk(ReceFrasesTal[81]);
}

if(Selected==46)
{
this.Talk("Torpedo Sexual");
Loop = false;
}
}

}




on "LeftClick"
{
  actor.GoTo(237, 418);
  actor.TurnTo(DI_RIGHT);
}
Logged

Mnemonic

  • WME developer
  • Administrator
  • Addicted to WME forum
  • *
  • Karma: 41
  • Offline Offline
  • Gender: Male
  • Posts: 5683
    • View Profile
    • Dead:Code Site
Re: Stack Underflow
« Reply #1 on: June 26, 2006, 12:42:12 PM »

There is a typo in the "if(Selected=44)". You should replace = with ==.
By the way, are you really using WME 1.2 ? ??? You should seriously consider upgrading to the latest version. WME 1.2 is like two years old and it's pretty outdated by now.
Logged
Yes, I do have a twitter account
Please don't send me technical questions in private messages, use the forum. ::wave
 

Page created in 0.049 seconds with 20 queries.