Jump to content

loliserver

Members
  • Content Count

    34
  • Joined

  • Last visited

Posts posted by loliserver


  1. Hola que tal comunidad, estoy intentando crear un servidor pre-renewal pequeño para jugar con amigos pero resulta al intentar diffearlo con el programa llamado Nemo no existe la opción de agregar los 127 peinados como viene en este enlace: http://rathena.sourceforge.net/tools/diff_patcher.php?client=2010-07-30aRagexeRE

    "Enable 127 Hairstyles"

    El problema es que al diffearlo con Nemo mi Cliente funciona muy bien, pero el numero de peinados llega a 27. Por cierto los cambios en el Nemo solo tengo estan seleccionados los recomendados y tengo la version 2.6v del 2016-05-29.
    Además necesito usar Nemo por que estoy incrustando un dll al cliente y todo funciona de maravilla, salvo que no tengo más de 27 peinados.


    Diffe un exe de la pagina ya mencionada pero me sale errores (cosa que con el nemo no me pasa),  aun asi con esos errores logro entrar y puedo ver los peinados que agregue, en este caso el peinado numero 30.

    Agrego imagenes:

    Cliente diffeado en Nemo:
    (Sin errores, pero peinado repetido desde el 27.) 

    C8kQAiP.png

    Cliente Diffeado en la pagina http://rathena.sourceforge.net/tools/diff_patcher.php?client=2010-07-30aRagexeRE
    (Con errores, pero entro y puedo observar el peinado numero 30)

    cvcXnxS.jpg

    Los errores:

    c5FHtqR.png

    Ahora me gustaría saber de como habilitar la opción de 127 peinados en el Nemo.

    Notas: Uso el 2010-07-30aRagexeRE, subo el exe para que intenten hacer alguna prueba.

    Edit: 

    Me acabo de dar cuenta que nemo tiene un script dentro de la carpeta llamado Enable64kHairstyle.qs, bueno al parecer este patch no es compatible con el exe con el que intento trabajar.


  2. Buenas  noches, por ahí me encontre el siguiente script de PVP, lo estoy probando en mi servidor local, pero encontre un problema, al parecer con las variables a la hora de mostrar los tops pues no se muestran en el NPC.

     

    Adjunto imagen:

     

    QHpOQaP.png

     

    Lo demás funciona bien pero creo que es enla función: callfunc ("PvPRank",Muertes,strcharinfo(0));

    Ya he testeado con cuentas normales y con la del GM pero no son mostrados en el Top 5.

     

    Este es el script:

    // PvP Rank Top 5 by Rokimokiprontera,165,168,0	script	PvP Warp	45,2,2,{end;OnTouch:	switch (rand(1,5)) {		case 1: // Izquierda			warp "pvp_n_1-5",65,99;			break;					case 2: // Abajo			warp "pvp_n_1-5",99,65;			break;					case 3: // Derecha			warp "pvp_n_1-5",134,100;			break;					case 4: // Arriba			warp "pvp_n_1-5",100,134;			break;					case 5: // Aleatorio			warp "pvp_n_1-5",0,0;			break;	} // End switchend;} // End Scriptprontera,165,168,3	script	PvP Rank#PvP::PvPW	837,{mes "[^FF0000Rank PvP^000000]";mes "Top 1: ^0000FF" +$top1pvp$ +"^000000 muertes: ^FF0000" +$top1pvp +"^000000.";mes "Top 2: ^0000FF" +$top2pvp$ +"^000000 muertes: ^FF0000" +$top2pvp +"^000000.";mes "Top 3: ^0000FF" +$top3pvp$ +"^000000 muertes: ^FF0000" +$top3pvp +"^000000.";mes "Top 4: ^0000FF" +$top4pvp$ +"^000000 muertes: ^FF0000" +$top4pvp +"^000000.";mes "Top 5: ^0000FF" +$top5pvp$ +"^000000 muertes: ^FF0000" +$top5pvp +"^000000.";close;OnInit:	do {		delwaitingroom;		waitingroom "PvP Warp [" +getmapusers("pvp_n_1-5") +" users]",0;	sleep 50; // Evites super infinity loop	} while(1); // End Loopend;} // End Script	-	script	PvPAnnounce	-1,{OnPCKillEvent:	getmapxy(.@mapa$,.@x,.@y,0);	if (.@mapa$ != "pvp_n_1-5") end;	if (rid2name(killedrid) == strcharinfo(0)) {		mapannounce .@mapa$,"El jugador [" +strcharinfo(0) +"] se ha suicidado.",bc_blue;	} else {		mapannounce .@mapa$,"El jugador [" +strcharinfo(0) +"] ha asesinado a [" +rid2name(killedrid) +"]",bc_blue;		set Muertes, Muertes + 1;		callfunc ("PvPRank",Muertes,strcharinfo(0));	} // End ifend;} // End Scriptpvp_n_1-5	mapflag	nopenalty-	script	MapLoad	-1,{OnPCLoadMapEvent:	getmapxy (.@mapa$,.@x,.@y,0);	if (.@mapa$ != "pvp_n_1-5") end;	dispbottom "[PvP Rank]: Has matado : " +Muertes +" en PvP.";end;} // End Scriptpvp_n_1-5	mapflag	loadeventfunction	script	PvPRank	{set @mvptotal, getarg(0);set @nomb$, getarg(1);if (@mvptotal > $top1pvp) {	if ($top1pvp$ == strcharinfo(0)) { // Si estamos en top 1		// Simplemente seguimos contando		set $top1pvp, @mvptotal;		set $top1pvp$, @nomb$;	} else { // Si alcanzamos el top 1		// Almacenamos el antiguo top 1		set @aux, $top1pvp;		set @aux$, $top1pvp$;		// Nos asignamos al top 1		set $top1pvp, @mvptotal;		set $top1pvp$, @nomb$;		// El viejo top 1 ahora es top 2		set $top2pvp, @aux;		set $top2pvp$, @aux$;	} // End if} else if (@mvptotal > $top2pvp) {	if ($top2pvp$ == strcharinfo(0)) { // Si estamos en top 2		// Seguimos contando las muertes del top 2		set $top2pvp, @mvptotal;		set $nomb2, @nomb$;	} else { // Si alcanzamos el top 2		// Almacenamos el antiguo top 2		set @aux, $top2pvp;		set @aux$, $top2pvp$;		// Nos asignamos al top 2		set $top2pvp, @mvptotal;		set $top2pvp$, @nomb$;		// El viejo top 2 ahora es top 3		set $top3pvp, @aux;		set $top3pvp$, @aux$;	} // End if} else if (@mvptotal > $top3pvp) {	if ($top3pvp$ == strcharinfo(0)) { // Si estamos en top 3		// Seguimos contando el top 3		set $top3pvp, @mvptotal;		set $top3pvp$, @nomb$;	} else { // Si alcanzamos el top 3		// Almacenamos el antiguo top 3		set @aux, $top3pvp;		set @aux$, $top3pvp$;		// Nos asignamos al top 3		set $top3pvp, @mvptotal;		set $top3pvp$, @nomb$;		// El viejo top 3 ahora es top 4		set $top4pvp, @aux;		set $top4pvp$, @aux$;	} // End if} else if (@mvptotal > $top4pvp) {	if ($top4pvp$ == strcharinfo(0)) { // Si estamos en top 4		// Seguimos contando el top 4		set $top4pvp, @mvptotal;		set $top4pvp$, @nomb$;	} else { // Si alcanzamos el top 4		// Almacenamos el antiguo top 4		set @aux, $top4pvp;		set @aux$, $top4pvp$;		// Nos asignamos al top 4		set $top4pvp, @mvptotal;		set $top4pvp$, @nomb$;		// El viejo top 4 es ahora top 5		set $top5pvp, @aux;		set $top5pvp$, @aux$;	} // End if} else if (@mvptotal > $top5pvp) {	if ($top5pvp$ == strcharinfo(0)) { // Si estamos en top 5		// Seguimos contando el top5		set $top5pvp, @mvptotal;		set $nomb5, @nomb$;	} else { // Si alcanzamos el top 5		// Directamente nos sobreescribimos en el top 5		set $top5pvp, @mvptotal;		set $top5pvp$, @nomb$;	} // End if} // End ifreturn;} // End function

     

    Edit: Cabe mencionar que el script no muestra ningún error en la consola.


  3. Buenas tardes, bueno por ahí me he encontrado con ya un viejo script de Renta de Casas, pues creo que es muy conocido y viene siendo este:

     

    https://rathena.org/board/topic/79823-zephyrus-housing-system/

     

    Bien, por ahí lo he implementado en el Servidor y pues me funciona pero no del todo. Veamos el Sistema de se basa en 7 Villas, pues es Payon (a), Prontera ( B), Morroc ©, Geffen (d), Alberta (e), Izlude (f) y Aldebaran (g). Especifico la letra pues los mapas van correspondiendo a la letra conforme a la ciudad.

     

    El paquete traen los siguientes mapas:

     

     

    rent_m.gat [Mapa verde sin nada]rent_mb.gat [Prontera Villa]rentb1.gat [Patio de la casa]rentinb1.gat [Interior de la casa] 

     

     

    Y así para todas las demás casas de las villas restantes va cambiando la letra:

     

     

    rentc1.gat [Patio de Casa de Morroc]rentinc1.gat [Interior de Casa de Morroc]...rentg1.gat [Patio de Casa de Aldebaran]renting1.gat [Interior de Casa de Aldebaran] 

     

     

    Trato de explicar muy bien esto por que es algo confuso.

     

    Este script incluye el map_index.txt

     

    // House Rentingrent_marent_mbrent_mcrent_mdrent_merent_mfrent_mgrenta1renta2renta3renta4renta5renta6renta7renta8renta9renta10renta11renta12renta13renta14renta15renta16renta17renta18renta19renta20renta21renta22rentb1rentb2rentb3rentb4rentb5rentb6rentb7rentb8rentb9rentb10rentb11rentb12rentb13rentb14rentb15rentb16rentb17rentb18rentb19rentb20rentb21rentb22rentb23rentb24rentb25rentb26rentb27rentc1rentc2rentc3rentc4rentc5rentc6rentc7rentc8rentc9rentc10rentc11rentc12rentc13rentc14rentc15rentc16rentc17rentc18rentc19rentc20rentc21rentc22rentd1rentd2rentd3rentd4rentd5rentd6rentd7rentd8rentd9rentd10rentd11rentd12rentd13rentd14rentd15rentd16rentd17rentd18rentd19rentd20rentd21rentd22rente1rente2rente3rente4rente5rente6rente7rente8rente9rente10rente11rente12rente13rente14rente15rente16rente17rente18rente19rente20rente21rente22rentf1rentf2rentf3rentf4rentf5rentf6rentf7rentf8rentf9rentf10rentf11rentf12rentf13rentf14rentf15rentf16rentf17rentf18rentf19rentf20rentf21rentf22rentg1rentg2rentg3rentg4rentg5rentg6rentg7rentg8rentg9rentg10rentg11rentg12rentg13rentg14rentg15rentg16rentg17rentg18rentg19rentg20rentg21rentg22rentina1rentina2rentina3rentina4rentina5rentina6rentina7rentina8rentina9rentina10rentina11rentina12rentina13rentina14rentina15rentina16rentina17rentina18rentina19rentina20rentina21rentina22rentinb1rentinb2rentinb3rentinb4rentinb5rentinb6rentinb7rentinb8rentinb9rentinb10rentinb11rentinb12rentinb13rentinb14rentinb15rentinb16rentinb17rentinb18rentinb19rentinb20rentinb21rentinb22rentinb23rentinb24rentinb25rentinb26rentinb27rentinc1rentinc2rentinc3rentinc4rentinc5rentinc6rentinc7rentinc8rentinc9rentinc10rentinc11rentinc12rentinc13rentinc14rentinc15rentinc16rentinc17rentinc18rentinc19rentinc20rentinc21rentinc22rentind1rentind2rentind3rentind4rentind5rentind6rentind7rentind8rentind9rentind10rentind11rentind12rentind13rentind14rentind15rentind16rentind17rentind18rentind19rentind20rentind21rentind22rentine1rentine2rentine3rentine4rentine5rentine6rentine7rentine8rentine9rentine10rentine11rentine12rentine13rentine14rentine15rentine16rentine17rentine18rentine19rentine20rentine21rentine22rentinf1rentinf2rentinf3rentinf4rentinf5rentinf6rentinf7rentinf8rentinf9rentinf10rentinf11rentinf12rentinf13rentinf14rentinf15rentinf16rentinf17rentinf18rentinf19rentinf20rentinf21rentinf22renting1renting2renting3renting4renting5renting6renting7renting8renting9renting10renting11renting12renting13renting14renting15renting16renting17renting18renting19renting20renting21renting22

    Si se dan cuenta agrega mapas:

     

     

    rent_ma
    rent_mb
    rent_mc
    rent_md
    rent_me
    rent_mf
    rent_mg

     

    El que se encuentra en negritas es el único mapa que tengo.

     

    Entonces a lo que voy para que el map_cache.dat detecte que el mapa exista debo de agregarlo con el WeeMapCache, pero a la hora de encender el emulador pasa lo siguiente:

     

     

    [Notice]: Removing map [ rentb3 ] from maplist[Notice]: Removing map [ rentb4 ] from maplist[Notice]: Removing map [ rentb5 ] from maplist[Notice]: Removing map [ rentb6 ] from maplist[Notice]: Removing map [ rentb7 ] from maplist[Notice]: Removing map [ rentb8 ] from maplist[Notice]: Removing map [ rentb9 ] from maplist[Notice]: Removing map [ rentb10 ] from maplist[Notice]: Removing map [ rentb11 ] from maplist[Notice]: Removing map [ rentb12 ] from maplist[Notice]: Removing map [ rentb13 ] from maplist[Notice]: Removing map [ rentb14 ] from maplist...y asi hasta el ultimo mapa 

     

    Entonces me di cuenta que tengo que duplicar el mapa y agregarlos 1 x 1, en este caso duplique el mapa rentb1 y lo renombre a rentb2, al igual que rentinb1 lo renombre a rentinb2.

     

    Luego encontre un post en los foros de eathena con lo siguiente:

     

    ....People don't really know how to even input any maps. ani_glare.gif
    Steps
    1. Extract serverside.grf and clientside.grf into your server folder
    2. Go to your conf/grf-files and inut where your extracted grfs are
    example: grf: GravityROserverside.grf
    3. Extract the all the txt files beginning with "Rent_" into your customnpc folder.
    4. Go to your npc folder and open your scripts_custom.txt and input this:
    npc: npc/custom/Rent_"".txt
    repeat for all the Rent_ files
    5. Copy and paste what's in the mp3nametable.txt into your data folder's mp3nametable.txt
    6. Do the same as above with indoorrswtable.txt
    7. Do the same with map_index.txt Don't forget to put your map ID number!
    example: rent_ma 1250
    rent_mb (don't put any number)
    rent_mc (don't put any number)
    You don't have to put an id number uness there's a space seperation from 2 map names.
    8. Go to your server confmaps_athena.conf
    And Copy and Paste the information.
    9. Look in your server folder not in your db folder, and run map_cache.
    10. Make sure you don't have map_info.txt, newer versions don't even have it.
    11. Run your server and your done.

    REMEMBER YOU DO NOT HAVE TO COPY AND RENAME THE FILES, RESNAMETABLE ALREADY DOES THAT FOR YOU!
    Importantly
    find you data.ini in your server folder and don't forget to add
    serverside.grf and clientside.grf! Example: 3=serverside.grf
    4=clientside.grf
    Remember to change your max map count in MAX_MAP_PER_SERVER" in the scr/common/mmo.h from 1024 to 1500.

     

    Entonces no entiendo lo del ID, y se que el maps.conf es el maps_athena.conf y lo demás no lo realice, hasta el momento puedo duplicar los mapas y meterlos al map_cache.dat 1 x 1 con el WeeMapCache.

     

    En pocas palabras ¿Como puedo hacer funcionar las demás casas de las demás ciudades?



    Resuelto, vaya había que poner ese ID para identificar el mapa custom. Y sobre todo cargar el GRF desde C: ya que yo lo cargaba desde D: y no hacía nada, no tengo idea el por que .


  4.  

     

     

     

    Is possible only name color?

    Name coloring requires doing some reverse engineering with exe. Its not about the sources only. So, its not possible with this modification.
     

    correrct only possibel with Client Reverse Enging

     

    xiwd46A.png

    Share it

     

    Can you tell us how to do that?


  5. dance.c: In function 'atcommand_dance':dance.c:23:4: warning: implicit declaration of function 'atoi' [-Wimplicit-function-declaration]dance.c: In function 'plugin_init':dance.c:56:5: warning: implicit declaration of function 'ACMD_A' [-Wimplicit-function-declaration]dance.c:56:37: error: 'dance' undeclared (first use in this function)dance.c:56:37: note: each undeclared identifier is reported only once for each function it appears indance.c: At top level:dance.c:15:1: warning: 'atcommand_dance' defined but not used [-Wunused-function]make[1]: *** [../../plugins/dance.so] Error 1make[1]: Leaving directory `/home/roxx/Hercules/src/plugins'make: *** [plugins] Error 2

    I have this error in linux :(


  6. Why cant load the plugin?

     

    make[1]: Entering directory `/home/ro/Hercules/src/plugins'        CC      sample.c        PLUGIN  sample        CC      db2sql.c        PLUGIN  db2sql        CC      HPMHooking.c (CHAR)        PLUGIN  HPMHooking_char        CC      HPMHooking.c (LOGIN)        PLUGIN  HPMHooking_login        CC      HPMHooking.c (MAP)        PLUGIN  HPMHooking_mapmake[1]: Leaving directory `/home/ro/Hercules/src/plugins'

     

    I have enable the plugin in Plugins.conf

     

    plugins_list: [	"HPMHooking",	"costumeitem",	//"db2sql",	//"sample",	//"other",]

  7. Gracias por sus respuestas, ya ahora entiendo, si estuve viendo eso en el wiki de Hercules, pero vaya no pensé que tuviera problema, la verdad deseaba un SI rotundo, de igual forma estuve buscando y me encontre con este plugin:

     

    http://herc.ws/board/topic/4383-costume-item-plugins/

     

    ¿Alguien sabe como hacerlo funcionar?

     

    Tengo el costume system 2.1.diff pero en que directorio lo pongo, se que tengo que compilar pero no tengo idea como hacer que plugin ande, el texto que viene creo que es de un npc.


  8. Buenas, por ahí creo yo si no mal recuerdo había en eathena un mensaje de drop al dropear cierto item con equis porcentaje, Hercules lo tiene? disculpen, pero he utilzado el buscador y me tope con esto: 

     

    http://herc.ws/board/topic/1342-official-drop-announcement/

     

    item_packages.conf viene un setting en el cual puedo ponerlo a un item y va a anunciar su drop, pero vaya esto es individual.

     

    Creo yo que el mensaje se mandaba al poner tal porcentaje y todo los items que se dropeen en ese porcentaje son anunciados en brodcast.


  9. Gracias pues funciono así tal cual, pero fijate que deseo limitar el que de poring coin.

     

    Digamos que de 1 poring coin cada hora, pero quiero limitar esto, que le den al usuario 2 poring coins en las dos horas y después ya no le de nada, y obviamente tenga que reloguear para comenzar otra vez.

     

    ¿Se puede? Necesito pistas apenas ando leyendo el doc de las funciones del script.

     

    Pues ya lo modifique y testee y funciona bien.

     

    A ver si alguien experimentado me puede decir si esta correcto:

     

    -	script	poringcoin	-1,{OnPCLoginEvent:        while(1){		                getmapxy .@p1$,.@x1,.@y1,0; //Coordenada 1                sleep2 10000; //Delay 10 segundos                getmapxy .@p2$,.@x2,.@y2,0; //Coordenada 2                if((.@p1$ != .@p2$ || .@x1 != .@x2 || .@y1 != .@y2) && !checkvending() && !checkchatting()){ //Si la coordenada 1 no es la misma que la coordenada 2, si el pj no esta modo vending y si el pj no esta modo chatting                        set .@op,.@op+1; //Sumando puntos						set .@limite,.@limite+1; //Sumando limite                }                if(.@op >= 1 && .@limite<=2){ //Cada 6 puntos da premio.				getitem 7539,1; //Premio                set .@op,0;                if(.@limite==2){				message strcharinfo(0),"Para volver obtener Poring Coins, deberás desloguear y acceder nuevamente con el personaje.";				}                }			        }end;}

    Me gustaría saber la manera de parar el while.

    ¿Funciona el break; dentro del while?

     

    Bueno al parecer si.

     

    http://herc.ws/wiki/Loops


  10. De hecho lo mismo funcionaria,  solo seria cambiar lo que dice ahi

     

    Premio cada 10 seg = if(.@op >= 1){

    Premio cada 1 min = if(.@op >= 6){

    Premio cada 10 min = if(.@op >= 60){

    Premio cada 1 hora = if(.@op >= 360){

     

    Disculpa, yo recién utilizo Hercules, ¿en que cambia este emulador con los demás de acuerdo a los scripts?, por que tenía entendido que es diferente.


  11. Hace mucho cuando usaba eathena tenía un script que daba un poring coin cuando el usuario se estuviera moviendo por 2 horas, si no mal recuerdo era este thread de un pedido:

     

    http://www.foro.divinero.net/soporte-scripts-materiales-y-npc/%28duda-script%29-poring-coin-cada-cierto-tiempo/msg237280/#msg237280

     

    Como estoy con Hercules creo que el script cambia totalmente con eathena y tiene sus propios metodos, asi que de manera amable me gustaría saber como poder realizarlo y aprender mas que nada.


  12. Pues bueno deseo deshabilitar el Battlegrounds, estoy usando la compilación del servidor en Pre-Re. Soy un jugador de los oldschool y nunca jugue esto entonces no tengo idea sobre que npc son.

     

    Hasta el momento he visto esto en el scripts.conf:

     

    // --------------------- Battle Grounds -------------------------// - Flavius ----------------------------------------------------npc: npc/battleground/flavius/flavius_enter.txtnpc: npc/battleground/flavius/flavius01.txtnpc: npc/battleground/flavius/flavius02.txt// - Kreiger Von Midgard ----------------------------------------npc: npc/battleground/kvm/kvm_enter.txtnpc: npc/battleground/kvm/kvm_item_pay.txtnpc: npc/battleground/kvm/kvm01.txtnpc: npc/battleground/kvm/kvm02.txtnpc: npc/battleground/kvm/kvm03.txt// - Tierra Gorge -----------------------------------------------npc: npc/battleground/tierra/tierra_enter.txtnpc: npc/battleground/tierra/tierra01.txtnpc: npc/battleground/tierra/tierra02.txt// --------------------------------------------------------------npc: npc/battleground/bg_common.txt

    Pero no se si ya comentando eso se deshabilite.

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.