Jump to content

jaBote

Community Contributors
  • Content Count

    2037
  • Joined

  • Last visited

  • Days Won

    43

Posts posted by jaBote


  1. ¡Buenas!

     

    En efecto, esa configuración fue implementada en el servidor en e095650, aunque todavía sigue vigente en el repositorio. Busca al final de conf/battle/client.conf, pues es la última configuración.

     

    El enlace al tema que has publicado se trata de una sugerencia para crear un comando de scripting que permita comprobar si un clan tiene emblema puesto o no; la configuración de ese archivo permite dar un máximo de transparencia a los iconos de guild y se activa dando un valor inferior a 100.

     

    Espero haber ayudado.


  2. I'm on phone right now, but maybe this will help you:

    www.linux.com/learn/tutorials/760276-how-to-manage-file-and-folder-permissions-in-linux

     

    You should have permissions in your home folder by default (I think, not Linux expert), dunno how you don't. You should add proper read, write and execute permissions on your home.


  3. I can't think of another approach to that at the moment, but if you save the values as player vars and load them OnPCLogin you could possibly go fine and without a siginificant amount of load.


  4. I think that's what the account data table is for:

     

    CREATE TABLE IF NOT EXISTS `account_data` (`account_id` INT(11) UNSIGNED NOT NULL DEFAULT '0',`bank_vault` INT(11) UNSIGNED NOT NULL DEFAULT '0',`base_exp` TINYINT( 4 ) UNSIGNED NOT NULL DEFAULT '100',`base_drop` TINYINT( 4 ) UNSIGNED NOT NULL DEFAULT '100',`base_death` TINYINT( 4 ) UNSIGNED NOT NULL DEFAULT '100',PRIMARY KEY (`account_id`)) ENGINE=MyISAM; 

     

    It's made for accounts, but I think you can cheat it by setting the exp, drop and death from 100 (regular, no modification) to others.


  5. I think you're mistaken. The timeout of an instance is the amount of time that lasts on the instance before expiring, but the quest time (instance cooldowns are quests in this sense) is handled at the quest DB out there in the db folder...


  6. Nice! I think it should get merged in the repo but... Doesn't this do already pretty much the same thing?

     

     

    *message "<character name>","<message>";
     
    That command will send a message to the chat window of the character
    specified by name. The text will also appear above the head of that
    character. It will not be seen by anyone else.

  7. Name of the compiled plugin is costumeitem, not customeitem. It seems you've screwed since you've made customeitem but the name is costumeitem.

     

    Please check you've named it correctly in your src/plugins folder, makefiles and the conf, then retry.

     

    If still not solved, please check that the plugin gets made in your /plugins directory.


  8. Todo esto acabará siendo algo cíclico, parece.

     

    Por parte de Hercules, que tenga conocimiento varios desarrolladores están enfrascados en grandes commits que harán. Kisuka está con la conversión de una serie de scripts oficiales de Renewal que serán originales de Hercules (por algún motivo desde la implementación de Renewal no se han puesto bien los episodios y faltan muchas cosas en todos los emuladores, deberían haber sido incluidos hace años y nadie lo ha hecho hasta entonces). Ind está con una cosa enorme que quiere que sea sorpresa y Haruna igual. Tenemos mientras tanto a Pan machacando bugs (que me ha hecho gracia que meses más tarde hayan entrado a rAthena).

     

    Aunque honestamente, la elección de emulador es propia de cada persona según se ajuste a los gustos y necesidades. Siendo proyectos similares y de software libre, ninguno fuerza a nadie a permanecer en cualquiera de las comunidades ni ello nos reporta algún tipo de beneficio directo o indirecto (bueno, rAthena y Cronus generan ingresos a través de publicidad, que es una decisión siempre respetable).

     

    Un saludo.


  9. Diga-me a saída do script debug (na consola do map server) quando você executa o seguinte no script antes que o atcommand (adicione esta linha), na etiqueta OnTouch:

     

    debugmes "Esta mensagem deve ter o nome exato do jogador: "+strcharinfo(PC_NAME);

     

    ou tente com strcharinfo(0).


  10. If you test the file on your server's parser, or other online checkers such as Haru's (and fix the header tabs), you'll see the following output:

     

     

    [Warning]: script error in file '(DIRECT INPUT)' line 10 column 1     parse_syntax: use of deprecated keyword (use 'if' instead).      7: if (distance($@redbasex,$@redbasey,$@rbasetouchx,$@rbasetouchy) <= 2)      8: {      9: *   10: If (@team == 2)         ^     11: {     12:     if ($@flagcarrier$ == strcharinfo(0))     13:     { [Error]: script error in file '(DIRECT INPUT)' line 10 column 1     parse_line: expect command, missing function name or calling undeclared function      7: if (distance($@redbasex,$@redbasey,$@rbasetouchx,$@rbasetouchy) <= 2)      8: {      9: *   10: If (@team == 2)         ^     11: {     12:     if ($@flagcarrier$ == strcharinfo(0))     13:     { [Warning]: script error in file '(DIRECT INPUT)' line 59 column 1     parse_syntax: use of deprecated keyword (use 'if' instead).     56: if (distance($@bluebasex,$@bluebasey,$@bbasetouchx,$@bbasetouchy) <= 2)     57: {     58: *   59: If (@team == 1)         ^     60: {     61:     if ($@flagcarrier$ == strcharinfo(0))     62:     { [Error]: script error in file '(DIRECT INPUT)' line 59 column 1     parse_line: expect command, missing function name or calling undeclared function     56: if (distance($@bluebasex,$@bluebasey,$@bbasetouchx,$@bbasetouchy) <= 2)     57: {     58: *   59: If (@team == 1)         ^     60: {     61:     if ($@flagcarrier$ == strcharinfo(0))     62:     { [Error]: npc_parsesrcfile: Unknown syntax in file '(DIRECT INPUT)', line '100'. Stopping...  * w1=OnEventGameOverClassic:  * w2=  * w3=  * w4= 

     

     

    The event label problem is because it's outside of a script, and last closing curly brace seems so lonely without its respective opening one. Maybe you're missing a script header out there?

     

    Try adding a NPC header before the OnEventGameOverClassic label, such as:

    -	script	CTF	-1,{

     

    If you fix the if cases and add the NPC header, it works. Try the following code:

    bat_c01,149,52,5	script	Red Base::red_base	1026,{ getmapxy($@redbase$,$@redbasex,$@redbasey,1);getmapxy($@rbasetouch$,$@rbasetouchx,$@rbasetouchy,0); if (distance($@redbasex,$@redbasey,$@rbasetouchx,$@rbasetouchy) <= 2){ if (@team == 2) {    if ($@flagcarrier$ == strcharinfo(0))    {    movenpc "neutral_flag2",65,116;    set $@nredpt, $@nredpt + 1;    set #fcapt, #fcapt + 1;    set fcapt, fcapt + 1;    set ctfpt, ctfpt + 10;    set tctfpt, tctfpt + 10;    announce "The Blue Team has "+$@nbluept+" points.",bc_map;    announce "The Red Team has "+$@nredpt+" points.",bc_map;    set $@flaggone, 0;    set $@flagcarrier$, "-";         if ($@nredpt >= 5)        {        mapannounce "bat_c01", "The Red Team has won the match",0;        set $@nbluept, 0;        set $@nredpt, 0;        set $@nblueqt, 0;        set $@nredqt, 0;        set $@flagcarrier$, "-";        set $@nredwin, 1;        donpcevent "CTF::OnEventGameOverClassic";    }}    if ($@reddropped == 1)     {     //Return the Flag    movenpc "neutral_flag",134,65;    set $@redgone, 0;     set $@reddropped, 0;    set #freturn, #freturn + 1;    set freturn, freturn + 1;    announce "The Red Flag has been returned.",bc_map; }}}} bat_c01,50,131,4	script	Blue Base::blue_base	1188,{ getmapxy($@bluebase$,$@bluebasex,$@bluebasey,1);getmapxy($@bbasetouch$,$@bbasetouchx,$@bbasetouchy,0); if (distance($@bluebasex,$@bluebasey,$@bbasetouchx,$@bbasetouchy) <= 2){ if (@team == 1) {    if ($@flagcarrier$ == strcharinfo(0))    {    movenpc "neutral_flag",134,67;    set $@nbluept, $@nbluept + 1;    set #fcapt, #fcapt + 1;    set fcapt, fcapt + 1;    set ctfpt, ctfpt + 10;    set tctfpt, tctfpt + 10;    announce "The Blue Team has "+$@nbluept+" points.",bc_map;    announce "The Red Team has "+$@nredpt+" points.",bc_map;    set $@flaggone, 0;    set $@flagcarrier$, "-";        if ($@nbluept >= 5)        {        mapannounce "bat_c01", "The Blue Team has won the match",0;        set $@nbluept, 0;        set $@nredpt, 0;        set $@nblueqt, 0;        set $@nredqt, 0;        set $@flagcarrier$, "-";        set $@nbluewin, 1;        donpcevent "CTF::OnEventGameOverClassic";    }    }    if ($@bluedropped == 1)     {     //Return the Flag //    movenpc "blue_flag",65,116;    set $@bluegone, 0;    set $@bluedropped, 0;    set #freturn, #freturn + 1;    set freturn, freturn + 1;    announce "The Blue Flag has been returned.",bc_map;     }}}} -	script	CTF	-1,{OnEventGameOverClassic:set .@classqt, getarraysize($@classic);set .@cctf, 0; over:if (.@cctf < .@classqt){    {    attachrid $@classic[.@cctf];    if (@classic == 1)        {        if (@team == 2)            {             if ($@redwin == 1)                {                set #win, #win + 1;                set win, win + 1;                }             if ($@bluewin == 1)                {                set #lose, #lose + 1;                set lose, lose + 1;                }            }         if (@team == 1)            {             if ($@redwin == 1)                {                set #lose, #lose + 1;                set lose, lose + 1;                }             if ($@bluewin == 1)                {                set #win, #win + 1;                set win, win + 1;                }            }        }     save originmap$, (originx), (originy);    mapwarp "prt_are01","prontera",156,182;    callfunc("setlook2", 6, hair);    callfunc("setlook2", 7, body);    set Hp, charhp;    set Sp, charsp;    set @playing, 0;    set @classic, 0;    set @heal, 0;    detachrid;    set .@cctf, .@cctf + 1;    goto over;    }}for (set .@i, 0; .@i < getarraysize($@classic); set .@i, .@i+1) {    setarray $@classic[.@i], 0;}end;}

  11. It's inside the item script, both in db/{pre-}re/item_db.conf and in the SQL.

     

    For example, since you're interested on the SQL:

    REPLACE INTO `item_db` VALUES ('1257','Katar_Of_Thornbush','Katar of Quaking','4','45000','22500','1200','105','0','0','1','0','4096','63','2','34','3','55',NULL,'1','16','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','bonus bAtkEle,Ele_Earth; bonus2 bAddEff,Eff_Blind,500;','','');

     

    Check the script part:

    bonus bAtkEle,Ele_Earth; bonus2 bAddEff,Eff_Blind,500;

     

    The bonus bAtkEle, <element> is responsible for weapon elements, as you see.


  12. As I told you on your Portuguese section post, I think you haven't uncommented and set your map_ip and char_ip to your server's WAN IP:
     
    master/conf/map-server.conf

    // Character Server IP// The map server connects to the character server using this IP address.// NOTE: This is useful when you are running behind a firewall or are on// a machine with multiple interfaces.//char_ip: 127.0.0.1// The map server listens on the interface with this IP address.// NOTE: This allows you to run multiple servers on multiple interfaces// while using the same ports for each server.//bind_ip: 127.0.0.1// Character Server Portchar_port: 6121// Map Server IP// The IP address which clients will use to connect.// Set this to what your server's public IP address is.//map_ip: 127.0.0.1// Map Server Portmap_port: 5121

     
    Change to:

    // Character Server IP// The map server connects to the character server using this IP address.// NOTE: This is useful when you are running behind a firewall or are on// a machine with multiple interfaces.char_ip: <YOUR WAN IP>// The map server listens on the interface with this IP address.// NOTE: This allows you to run multiple servers on multiple interfaces// while using the same ports for each server.//bind_ip: 127.0.0.1// Character Server Portchar_port: 6121// Map Server IP// The IP address which clients will use to connect.// Set this to what your server's public IP address is.map_ip: <YOUR WAN IP>// Map Server Portmap_port: 5121

     
    And same in /conf/char-server.conf:

    // Login Server IP// The character server connects to the login server using this IP address.// NOTE: This is useful when you are running behind a firewall or are on// a machine with multiple interfaces.//login_ip: 127.0.0.1// The character server listens on the interface with this IP address.// NOTE: This allows you to run multiple servers on multiple interfaces// while using the same ports for each server.//bind_ip: 127.0.0.1// Login Server Portlogin_port: 6900// Character Server IP// The IP address which clients will use to connect.// Set this to what your server's public IP address is.//char_ip: 127.0.0.1// Character Server Portchar_port: 6121

     

    Change to:

    // Login Server IP// The character server connects to the login server using this IP address.// NOTE: This is useful when you are running behind a firewall or are on// a machine with multiple interfaces.login_ip: <YOUR WAN IP>// The character server listens on the interface with this IP address.// NOTE: This allows you to run multiple servers on multiple interfaces// while using the same ports for each server.//bind_ip: 127.0.0.1// Login Server Portlogin_port: 6900// Character Server IP// The IP address which clients will use to connect.// Set this to what your server's public IP address is.char_ip: <YOUR WAN IP>// Character Server Portchar_port: 6121
×
×
  • Create New...

Important Information

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