Jump to content

jmsngls

Members
  • Posts

    33
  • Joined

  • Last visited

Posts posted by jmsngls

  1. Hello, what I mean is players will receive bonus items like Siege Potion Box when doing hourly points

    Here's what in my src pc.cpp

    		int64 hourly_points = pc_readregistry(sd, reference_uid(add_str(sd->hourly_system.point_name), 0));
                int64 get = hourly_points + sd->hourly_system.point;
                pc_setregistry(sd, reference_uid(add_str(sd->hourly_system.point_name), 0), get);
                char msg[CHAT_SIZE_MAX];
                sprintf(msg, "You Got [ %d ] Hourly Point , You have now [ %d ] Hourly Points.", sd->hourly_system.point , static_cast<int>(get));

    Im new to src I dont know what are the scripts to type condition in src.
    condition: if player is in prontera he's going to get bonus Siege Potion Box if not, just the normal hourly point


    @Fou-lu, regarding with your question on my topic, it was answered already 👍

  2. Hello I'm new to src modification, I have this hourly system based on src, I would like to add bonus item if the player is on the specific map.
    example i will get the hourly points but when im in Prontera map I will get the bonus item (potions).

    Here's what in my src pc.cpp

    		int64 hourly_points = pc_readregistry(sd, reference_uid(add_str(sd->hourly_system.point_name), 0));
                int64 get = hourly_points + sd->hourly_system.point;
                pc_setregistry(sd, reference_uid(add_str(sd->hourly_system.point_name), 0), get);
                char msg[CHAT_SIZE_MAX];
                sprintf(msg, "You Got [ %d ] Hourly Point , You have now [ %d ] Hourly Points.", sd->hourly_system.point , static_cast<int>(get));

    Im new to src I dont know what are the scripts to type condition in src.
    condition: if player is in prontera he's going to get bonus Siege Potion Box if not, just the normal hourly point

  3. Hello have anyone also experience this kick of delay on their server? I have low ping and no packetloss its stepping back/delay split seconds. I experience this every 2days I run the server, my only solution is restarting the server but after 2 days it will back again to this kind of delay on the server.
    Please see video below:
    https://streamable.com/ngq9wu

  4. On 8/17/2020 at 10:03 PM, gvptenorio said:

    Haha, I actually wanted to use it for manual featuring of our winners of events (like  hall of heroes or something)

    Has anyone made something like this already?

    clone a player using npc script? like you can change which player manually by changing char id in script?

  5. Hello, how can I set my Barricade in KOE map no friendly fire by emp holder, can be cast skill like normal barri in woe.

    I current use this as no friendly fire but cannot use skill on it just normal attack by enemy guild
     

    if ( s_bl->type == BL_PC && t_bl->type == BL_MOB ) {
            struct map_session_data *sd = BL_CAST( BL_PC, s_bl );
            if ( ( ( (TBL_MOB*)target )->mob_id == 1905 && !strcmp( mapindex_id2name(sd->mapindex), "ra_koe" ) ) &&
                ( sd->status.guild_id == mapreg_readreg( add_str("$koegid") ) || battle_getcurrentskill(src) > 0 ) )
            return 0;
        }

    I get it from annieruru KOE patch used in emperium so can't be attacked by emp holder.

  6. I'm currently having this bugs, it triggers every 5minutes before war of emperium ends, any solution on this? I try fixing this by restarting the server and nuke everyplayer that has bug stats. I have a feeling about the guild skills bonus stats? I still have no idea. Thanks for any help.

  7. How can I change in game @go town list? I tried finding the 3rd step but I dont find anything like that in my atcommand.c

     if (!message || !*message || sscanf(message, "%11s", map_name) < 1 || town < 0 || town >= ARRAYLENGTH(data)) {
     clif_displaymessage(fd, msg_txt(38)); // Invalid location number, or name.
     clif_displaymessage(fd, msg_txt(82)); // Please provide a name or number from the list provided:
     clif_displaymessage(fd, " 0=Prontera		 1=Morroc	   2=Geffen");
     clif_displaymessage(fd, " 3=Payon		    4=Alberta	  5=Izlude");
     clif_displaymessage(fd, " 6=Al De Baran	  7=Lutie	    8=Comodo");
     clif_displaymessage(fd, " 9=Yuno			 10=Amatsu	  11=Gonryun");
     clif_displaymessage(fd, " 12=Umbala		  13=Niflheim    14=Louyang");
     clif_displaymessage(fd, " 15=Novice Grounds  16=Prison	  17=Jawaii");
     clif_displaymessage(fd, " 18=Ayothaya	    19=Einbroch    20=Lighthalzen");
     clif_displaymessage(fd, " 21=Einbech		 22=Hugel	   23=Rachel");
     clif_displaymessage(fd, " 24=Veins		   25=Moscovia    26=Brasilis");
     clif_displaymessage(fd, " 27=Manuk		   28=Splendide");
     return -1;
    }

    I can't find anything like that in my atcommand.c

    Only this

    /*==========================================
     * @go [city_number or city_name] - Updated by Harbin
     *------------------------------------------*/
    ACMD_FUNC(go)
    {
        int i;
        int town;
        char map_name[MAP_NAME_LENGTH];
    
        const struct {
            char map[MAP_NAME_LENGTH];
            int x, y;
        } data[] = {
            { MAP_CRYSTILIA,    67,  79 }, //  0=Crystilia
            { MAP_PRONTERA,    156, 191 }, //  1=Prontera
            { MAP_MORROC,      156,  93 }, //  2=Morroc
            { MAP_GEFFEN,      119,  59 }, //  3=Geffen
            { MAP_PAYON,       162, 233 }, //  4=Payon
            { MAP_ALBERTA,     192, 147 }, //  5=Alberta
    #ifdef RENEWAL
            { MAP_IZLUDE,      128, 146 }, //  6=Izlude (Renewal)
    #else
            { MAP_IZLUDE,      128, 114 }, //  6=Izlude
    #endif
            { MAP_ALDEBARAN,   140, 131 }, //  7=Al de Baran
            { MAP_LUTIE,       147, 134 }, //  8=Lutie
            { MAP_COMODO,      209, 143 }, //  9=Comodo
            { MAP_YUNO,        157,  51 }, //  10=Yuno
            { MAP_AMATSU,      198,  84 }, // 11=Amatsu
            { MAP_GONRYUN,     160, 120 }, // 12=Gonryun
            { MAP_UMBALA,       89, 157 }, // 13=Umbala
            { MAP_NIFLHEIM,     21, 153 }, // 14=Niflheim
            { MAP_LOUYANG,     217,  40 }, // 15=Louyang
    #ifdef RENEWAL
            { MAP_NOVICE,       97, 90  }, // 16=Training Grounds (Renewal)
    #else
            { MAP_NOVICE,       53, 111 }, // 16=Training Grounds
    #endif
            { MAP_JAIL,         23,  61 }, // 17=Prison
            { MAP_JAWAII,      249, 127 }, // 18=Jawaii
            { MAP_AYOTHAYA,    151, 117 }, // 19=Ayothaya
            { MAP_EINBROCH,     64, 200 }, // 20=Einbroch
            { MAP_LIGHTHALZEN, 158,  92 }, // 21=Lighthalzen
            { MAP_EINBECH,      70,  95 }, // 22=Einbech
            { MAP_HUGEL,        96, 145 }, // 23=Hugel
            { MAP_RACHEL,      130, 110 }, // 24=Rachel
            { MAP_VEINS,       216, 123 }, // 25=Veins
            { MAP_MOSCOVIA,    223, 184 }, // 26=Moscovia
            { MAP_MIDCAMP,     180, 240 }, // 27=Midgard Camp
            { MAP_MANUK,       282, 138 }, // 28=Manuk
            { MAP_SPLENDIDE,   201, 147 }, // 29=Splendide
            { MAP_BRASILIS,    182, 239 }, // 30=Brasilis
            { MAP_DICASTES,    198, 187 }, // 31=El Dicastes
            { MAP_MORA,         44, 151 }, // 32=Mora
            { MAP_DEWATA,      200, 180 }, // 33=Dewata
            { MAP_MALANGDO,    140, 114 }, // 34=Malangdo Island
            { MAP_MALAYA,      242, 211 }, // 35=Malaya Port
            { MAP_ECLAGE,      110,  39 }, // 36=Eclage
        };
    
        nullpo_retr(-1, sd);
    
        if( map[sd->bl.m].flag.nogo && !pc_has_permission(sd, PC_PERM_WARP_ANYWHERE) ) {
            clif_displaymessage(sd->fd,msg_txt(sd,995)); // You cannot use @go on this map.
            return 0;
        }
    
        memset(map_name, '\0', sizeof(map_name));
        memset(atcmd_output, '\0', sizeof(atcmd_output));
    
        // get the number
        town = atoi(message);
    
        if (!message || !*message || sscanf(message, "%11s", map_name) < 1 || town < 0 || town >= ARRAYLENGTH(data))
        {// no value matched so send the list of locations
            const char* text;
    
            // attempt to find the text help string
            text = atcommand_help_string( command );
    
            clif_displaymessage(fd, msg_txt(sd,38)); // Invalid location number, or name.
    
            if( text )
            {// send the text to the client
                clif_displaymessage( fd, text );
            }
    
            return -1;
        }
    
        // get possible name of the city
        map_name[MAP_NAME_LENGTH-1] = '\0';
        for (i = 0; map_name; i++)
            map_name = TOLOWER(map_name);
        // try to identify the map name
        if (strncmp(map_name, "crystilia", 3) == 0) {
            town = 0;
        } else if (strncmp(map_name, "prontera", 3) == 0) {
            town = 1;
        } else if (strncmp(map_name, "morocc", 4) == 0 ||
                   strncmp(map_name, "morroc", 4) == 0) {
            town = 2;
        } else if (strncmp(map_name, "geffen", 3) == 0) {
            town = 3;
        } else if (strncmp(map_name, "payon", 3) == 0) {
            town = 4;
        } else if (strncmp(map_name, "alberta", 3) == 0) {
            town = 5;
        } else if (strncmp(map_name, "izlude", 3) == 0) {
            town = 6;
        } else if (strncmp(map_name, "aldebaran", 3) == 0) {
            town = 7;
        } else if (strncmp(map_name, "lutie", 3) == 0 ||
                   strcmp(map_name,  "christmas") == 0 ||
                   strncmp(map_name, "xmas", 3) == 0 ||
                   strncmp(map_name, "x-mas", 3) == 0) {
            town = 8;
        } else if (strncmp(map_name, "comodo", 3) == 0) {
            town = 9;
        } else if (strncmp(map_name, "juno", 3) == 0 ||
                   strncmp(map_name, "yuno", 3) == 0) {
            town = 10;
        } else if (strncmp(map_name, "amatsu", 3) == 0) {
            town = 11;
        } else if (strncmp(map_name, "kunlun", 3) == 0 ||
                   strncmp(map_name, "gonryun", 3) == 0) {
            town = 12;
        } else if (strncmp(map_name, "umbala", 3) == 0) {
            town = 13;
        } else if (strncmp(map_name, "niflheim", 3) == 0) {
            town = 14;
        } else if (strncmp(map_name, "louyang", 3) == 0) {
            town = 15;
        } else if (strncmp(map_name, "new_1-1", 3) == 0 ||
                   strncmp(map_name, "startpoint", 3) == 0 ||
                   strncmp(map_name, "beginning", 3) == 0) {
            town = 16;
        } else if (strncmp(map_name, "sec_pri", 3) == 0 ||
                   strncmp(map_name, "prison", 3) == 0 ||
                   strncmp(map_name, "jail", 3) == 0) {
            town = 17;
        } else if (strncmp(map_name, "jawaii", 3) == 0) {
            town = 18;
        } else if (strncmp(map_name, "ayothaya", 3) == 0) {
            town = 19;
        } else if (strncmp(map_name, "einbroch", 5) == 0) {
            town = 20;
        } else if (strncmp(map_name, "lighthalzen", 3) == 0) {
            town = 21;
        } else if (strncmp(map_name, "einbech", 5) == 0) {
            town = 22;
        } else if (strncmp(map_name, "hugel", 3) == 0) {
            town = 23;
        } else if (strncmp(map_name, "rachel", 3) == 0) {
            town = 24;
        } else if (strncmp(map_name, "veins", 3) == 0) {
            town = 25;
        } else if (strncmp(map_name, "moscovia", 3) == 0) {
            town = 26;
        } else if (strncmp(map_name, "mid_camp", 3) == 0) {
            town = 27;
        } else if (strncmp(map_name, "manuk", 3) == 0) {
            town = 28;
        } else if (strncmp(map_name, "splendide", 3) == 0) {
            town = 29;
        } else if (strncmp(map_name, "brasilis", 3) == 0) {
            town = 30;
        } else if (strncmp(map_name, "dicastes01", 3) == 0) {
            town = 31;
        } else if (strcmp(map_name,  "mora") == 0) {
            town = 32;
        } else if (strncmp(map_name, "dewata", 3) == 0) {
            town = 33;
        } else if (strncmp(map_name, "malangdo", 5) == 0) {
            town = 34;
        } else if (strncmp(map_name, "malaya", 5) == 0) {
            town = 35;
        } else if (strncmp(map_name, "eclage", 3) == 0) {
            town = 36;
        }
    
        if (town >= 0 && town < ARRAYLENGTH(data))
        {
            int16 m = map_mapname2mapid(data[town].map);
            if (m >= 0 && map[m].flag.nowarpto && !pc_has_permission(sd, PC_PERM_WARP_ANYWHERE)) {
                clif_displaymessage(fd, msg_txt(sd,247));
                return -1;
            }
            if (sd->bl.m >= 0 && map[sd->bl.m].flag.nowarp && !pc_has_permission(sd, PC_PERM_WARP_ANYWHERE)) {
                clif_displaymessage(fd, msg_txt(sd,248));
                return -1;
            }
            if (pc_setpos(sd, mapindex_name2id(data[town].map), data[town].x, data[town].y, CLR_TELEPORT) == SETPOS_OK) {
                clif_displaymessage(fd, msg_txt(sd,0)); // Warped.
            } else {
                clif_displaymessage(fd, msg_txt(sd,1)); // Map not found.
                return -1;
            }
        } else { // if you arrive here, you have an error in town variable when reading of names
            clif_displaymessage(fd, msg_txt(sd,38)); // Invalid location number or name.
            return -1;
        }
    
        return 0;
    }

     

    screenBeastRO002.jpg

  8. 31 minutes ago, hazimjauhari90 said:

    yes. u need to setup it by urself. but during u about to rent digital ocean vps, u should choose over debian / ubuntu.. don't choose centos.. since u saying u want to look for digital ocean, u should know that there are plenty linux distrubutions are available.. i not really recommend centos.

    EDIT. i'm not saying i want to setup ur server. i'm saying based on my experience during setup the server, u will across lots of difficulties if using centos. so please don't get me wrong.

    Yea I read some setups using ubuntu, will look for more guides on that. Sorry for misunderstanding it.

  9. 4 hours ago, hazimjauhari90 said:

    it is possible... in fact u can search in this forum for the guide.. just i want to give a sugesstion.. avoid using centos.. use debian / ubuntu instead... i'm doing service setup... i have encounter lots of difficulties / problem setup on centos.. but, in debian / ubuntu.. things going smoothly.. so, for starting.. i would advice u to use debian / ubuntu..

    haru.JPG

    I appreciate your suggestion sir, but I would like to setup with myself or with a guide to learn, and main reason to host in a non RO hosting related is to save. Thank you so much.

  10. 10 hours ago, Cyro said:

    For all your questions simple answer would be  ~yes

    There is plenty if guides around rAthena just search and find which one is more suitable for you!

    Here some of them.to start 

     

    Thank you for answering and providing useful links.

    So for installing apache is pre requisite for installing FluxCP/my RO website and thor patcher?

    I just need to install in VPS are (Apache, Phpmyadmin, rAthena) and I will just install fluxcp and thor with wincp and update my phpmyadmin via http://Yourip/phpmyadmin/ and edit my rAthena with wincp also?

  11. May I ask some help and suggestions :D

     

    I'm planning to host in digitalocean vps hosting, my questions are:

    -VPS runs my RO server right? (rathena) i prefer phpmyadmin database

    -Can I also install fluxCP(my ro website with domain such myro.tk) if yes, is there any tutorial?

    -Can I also host there for my thor patcher? If yes, is there any tutorial?

     

    To make it short can I host everything in VPS? Digitalocean

    Reason for asking: I would like to try their suggestion in hosting in non RO hosting company. BTW I know how to run my server using wamp and I know how to setup fluxcp and thor patcher already on my desktop but on VPS using command promt? I don't think so but with guide I can manage to learn. i'm seeing those vps with additional screen what is that?

    Thank you so much!

  12. 1 hour ago, HappyMan said:

    edit this.

    prontera,144,164,4	script	TCG Refiner 1~7	707,{
    
    mes "What item do you want to be refined?";
    next;
    set @refine,.equip_part[select(getequipname(.equip_part[0]),
    				getequipname(.equip_part[1]),
    				getequipname(.equip_part[2]),
    				getequipname(.equip_part[3]),
    				getequipname(.equip_part[4]),
    				getequipname(.equip_part[5]),
    //				getequipname(.equip_part[6]),
    //				getequipname(.equip_part[7]),
    //				getequipname(.equip_part[8]),
    				getequipname(.equip_part[9]))-1];
    
    if(countitem(7227) < 2) {
    mes "You are missing:";
    mes ""+((countitem(7227) < 2)?"2 TCG Cards":"")+"";
    close;
    }
    if(getequiprefinerycnt(@refine) >= 7) {
    mes "+7 Item cannot be refined anymore.";
    close;
    }
    else {
    delitem 7227,2;
    successrefitem @refine;
    mes "Clang Clang! Success!";
    close;
    }
    
    OnInit:
    	setarray .equip_part[0],1,2,3,4,5;
    }

     

    It's upgrading even mid gear and lower gear, accessories.

    and was looking for instant upgrade to +7 for armor and +10 for weapons in one payment

×
×
  • Create New...

Important Information

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