Ertos28/02/2012 14:33:47Lo estuve testeando el otro dia, y creia que tardaba en respawnear una hora pero a los 4 minutos o asi los cofres volvieron a dejar otros tesoros distintos, os dejo el script a ver si me podeis decir que esta mal, y que se puede modificar para ponerlo en unos 15-20 minutos[quote:81b8952050]//Nombre: onopen_cofre_a //Lugar: OnOpen del ubicado //genera tesoro alto en cofre u objeto ubicado //OnOpen del ubicado #include "NW_O2_CONINCLUDE" void main() { object oItem = OBJECT_INVALID; int respawntime = 3600; // Check object for the time it was last opened and see if it is time to respawn int lastopened = GetLocalInt(OBJECT_SELF,"CS_Opened"); // CS_Openend = 0 on not found, GetLocalInt error return int currenttime = GetTimeSecond()+60*GetTimeMinute()+3600*GetTimeHour(); if (currenttime > lastopened + respawntime) { // respawntime seconds passed? SetLocalInt(OBJECT_SELF,"NW_DO_ONCE",0); } if (lastopened > currenttime) { // maybe a whole day passed? or it's midnight? SetLocalInt(OBJECT_SELF,"NW_DO_ONCE",0); } // Respawn chest if (GetLocalInt(OBJECT_SELF,"NW_DO_ONCE") == 0) { oItem = GetFirstItemInInventory(); while ( oItem != OBJECT_INVALID ) { DestroyObject( oItem, 0.0 ); oItem = GetNextItemInInventory(); } object oLastOpener = GetLastOpener(); // See NW_O2_CONINCLUDE for more Treasure generating scripts, // Thisone generates high treasure depending on the lastopener level GenerateHighTreasure(oLastOpener, OBJECT_SELF); SetLocalInt(OBJECT_SELF,"CS_Opened",GetTimeSecond()+60*GetTimeMinute()+3600*GetTimeHour()); SetLocalInt(OBJECT_SELF,"NW_DO_ONCE",1); } DelayCommand(90.0, ActionCloseDoor(OBJECT_SELF)); }[/quote:81b8952050] AlthorDeMalavir29/02/2012 01:55:00Para empezar ese script está mal planteado puesto que no toma un origen de tiempo, solo te calcula los segundos de la hora del juego actual, de tal modo que si abres el cofre a la misma hora de juego nunca generará nada y seguramente habrán otro tipo de incongruencias.Hay que establecer el temporizador desde un origen fijo, que normalmente se toma el número de horas de juego desde el año 0 del mes 0 del dia 0 de la hora 0 del juego, o sea si tienes fecha 01/02/1430 a las 13 horas, pasar todo eso a horas y ya tomar a partir de hay si ha pasado el tiempo para generar el tesoro. Partiendo de la base que no sabes de scripts te recomiendo que te busques un mejor sistema para generar tesoros, si quieres usar el que usa este servidor yo lo publiqué en el nwvault hace tiempo, tienes la ventaja que puedes consultarme a mi ante cualquier duda xD. el sistema lo metes, lo compilas y a funcionar, es altamente configurable, incluidos tiempos y objetos dependiendo del nivel del cofre o bicho, solo es meter los objetos que quieres que salgan en unos cofres que hay en varias áreas inaccesibles para el jugador. Te dejo la dirección http://nwvault.ign.com/View.php?view=Scripts.Detail&id=3504 Ertos01/03/2012 11:54:04A ver, espero que sea uno de esos de "Respawns for dummyes" xDErtos01/03/2012 12:02:11le he echado un ojo rapido, y tiene buena pinta, pero tengo una duda. es que yo uso el respawn basico del neverwinter por que tengo un hak para que salgan pergaminos de los conjuros nuevos que he metido, y no se si con este saldrian tambien los mismosAlthorDeMalavir02/03/2012 00:30:06No, los pergaminos que salen en los tesoros son los que hay en el contenedor de pergaminos, un cofre en una de las áreas que se llama pergaminos, en todo caso solo tienes que meter hay dentro tus pergaminos para que salgan.Ertos02/03/2012 11:13:50y cada cuanto tiempo se reinician los cofres?AlthorDeMalavir02/03/2012 18:48:35Son las variables del archivo sgt_config que puedes modificar a tu gusto,[code:1:8c273578c4] int TG_EPICO = 30; //Tiempo de regeneracion para contenedores ubicados epicos. int TG_ALTO = 20; //Tiempo de regeneracion para contenedores ubicados altos. int TG_MEDIO = 10; //Tiempo de regeneracion para contenedores ubicados medios. int TG_PEKENO = 5; //Tiempo de regeneracion para contenedores ubicados bajos. [/code:1:8c273578c4] Ese tiempo está en horas del juego, depende de tu relación de tiempo en el servidor será una cosa u otra, por ejemplo para epicos son 30 horas de juego, en nuestro servidor 3 minutos reales son una hora del juego, por tanto serian 90 minutos reales en regenerar un cofre épico. Puedes consultar la relación de tiempo de juego-real en editar->propiedades del módulo->pestaña avanzado->casilla de minutos/hora por defecto creo que son 2 minutos reales por hora del juego. Ertos02/03/2012 23:45:18Esta supercurrao, solo falta que amplies un poco la guia que viene en el rar y seria perfectAlthorDeMalavir03/03/2012 00:08:41Cualquier duda que tengas, o algo que quieras hacer pregunta.Ertos03/03/2012 15:18:14Entonces si yo quiero por ejemplo quitar los tipicos objetos con inmunidades puedo hacerlo libremente en los cofres que estan en areas a parte no?, y los puedo remplazar por otros objetos independientemente de sus etiquetas y resrefs no?AlthorDeMalavir03/03/2012 23:35:38Correcto, o editar directamente los que hay, el sistema pilla los objetos de esos cofres y los copia para crear los tesoros.Ertos05/03/2012 19:38:10No me habia fijado hasta hoy que los objetos tipicos de inmunidades tienen los usos de conjuro como en el server vamos xDErtos06/03/2012 20:18:53Si quitara los tesoros +6 y +7 que suelen salir en los cofres epicos que efecto tendria?, se repetirian los demas tesoros demasiado?AlthorDeMalavir07/03/2012 01:23:14La probabilidad no varía, pero evidentemente cuantos menos objetos hayan en un cofre pues mas se repiten, cuantos mas objetos pues mas variedad.Si quitas todos los objetos o anulas algún cofre no afecta al resto. Ertos07/03/2012 15:17:40algun guion recomendado para la memoria caché del modulo?_Kaworu_07/03/2012 18:11:23Los scripts de IA sin duda.AlthorDeMalavir08/03/2012 01:49:02Ten cuidado porque puede ser peor si metes mucho.Caso de meter alguno el sgt_inc Ertos08/03/2012 16:06:14aun me queda un poco de memoria antes de llegar a los 3 mb que dice el aurora, metere ese entonces |