Jump to content

Digos

Members
  • Posts

    88
  • Joined

  • Last visited

  • Days Won

    1

Posts posted by Digos

  1. Hello @Tokei

    I don't know the exact reason, but the GRF encryption feature is not working on Wine versions after 2.7, I was using it to protect my palettes.
    After the above wine version, the client shows a black palette for head and body, the same effect as if the file was missing.
    Tested on older client (2016) and a new one (2018).

    618765512_CapturadeTela2019-07-24s13_16_02.png.4e1844662b4468682f121aa436e342d2.png

    Can you to help me on this issue? Thank you!

     

  2. On 3/20/2019 at 9:51 PM, TrueNoir said:

    Does anyone know what commands work on the tipbox i know there's /n for line breaks but is there any other commands that work with it cause it seems to overlay the lettering ontop of each making it unreadable and i'm trying to figure out how to fix it.

    Edit: nvm figured it out it just works weird as hell.

    Can you tell us how you fixed it?

     

  3. This change proposed by Feilor should increase the performance in all queries related to items stolen since will not be necessary lookup the charlog table with a 'like' clause (it's so more slow than a query with =).

    I would suggest also add a guild_id field in picklog since we already have an enum with a value that means the item was moved to the guild storage but currently is very hard to find out what guild was.

    If the changes are made should be considered that currently the picklog table can be quite big in running servers so everyone must be careful on 'alter table' queries that will take much time to finish.
     

    • Upvote 1
  4. I've successfully compiled on macOS High Sierra with the following steps:

    1. Install the latest Xcode from Apple App Store
    2. Install homebrew https://brew.sh
    3. Install the following packages using homebrew on Terminal
      1. brew install mysql
      2. brew install pcre
    4. Go to the server directory on Terminal and type
      1. ./configure CC=clang CXX=clang++ --with-mysql=/usr/local/opt/mysql/bin/mysql_config --with-pcre=/usr/local/opt/pcre/
      2. make clean && make server
  5. Hello,

    After the rathena changed to c++11 support I can't successful compile the server on macOS (High Sierra).

    Even using gcc-6/g++-6 from homebrew the compilation fails. 

    The error is the following:

    ...
    	LD	char-server
    Undefined symbols for architecture x86_64:
      "std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::find_last_not_of(char, unsigned long) const", referenced from:
          YAML::ScanScalar[abi:cxx11](YAML::Stream&, YAML::ScanScalarParams&) in yaml-cpp.a(scanscalar.o)
    ...

    The undefined symbols error repeats many times.

    So I ask if someone have successfully compiled on macOS can tell how this was done?

    Thanks!

  6. Yes you can set a mapflag via script. It certainly is more flexible but if it's easier it's a point of view as it need to be invoked from a running script.

    Quote

    *setmapflag "<map name>",<flag>{,<zone>{,<type>}};

    This command marks a specified map with the given map flag, which will alter the
    behavior of the map. A full list of mapflags is located in 'src/map/script_constants.h' with
    the 'mf_' prefix, and documentation can be found in 'doc/mapflags.txt'.

    The map flags alter the behavior of the map regarding teleporting (mf_nomemo,
    mf_noteleport, mf_nowarp, mf_nogo), storing location when disconnected
    (mf_nosave), dead branch usage (mf_nobranch), penalties upon death
    (mf_nopenalty, mf_nozenypenalty), PVP behavior (mf_pvp, mf_pvp_noparty,
    mf_pvp_noguild), WoE behavior (mf_gvg,mf_gvg_noparty), ability to use
    skills or open up trade deals (mf_notrade, mf_novending, mf_noskill, mf_noicewall),
    current weather effects (mf_snow, mf_fog, mf_sakura, mf_leaves, mf_rain, mf_clouds,
    mf_fireworks) and whether night will be in effect on this map (mf_nightenabled).

    The optional parameter 'zone' is used to set the zone for restricted mapflags.

    For the 'skill_damage' mapflag, 'zone' functions as 'value' (-100 to 100000) and
    'type' can be:
     1: damage against players
     2: damage against mobs
     3: damage against bosses
     4: damage against other
     5: caster type

    To disable all kind of commands, you should use mf_nocommand

    • Love 1
  7. I also had issue like this before by using a broken text editor that mess the encoding of text areas not modified like the Akkarin's comment above.

    Usually I edit all the Korean text using the Windows Latin 1 encoding that works fine. If you like to see the Korean characters, I suggest you to use the Korean Windows DOS encoding.

    Note that if you open the text as Windows Latin 1 and reinterpret it as Korean Windows DOS it should work without need to convert the text, convertion that could mess the text encoding.

  8. Hello,

    I know that there's an issue open at Nemo github regarding the patch Ignore Resource Errors which is not working in some clients.

    Currently I'm using 2016-02-03 and the same as explained in the Nemo Issue #155 happens: There's no error when patching on Nemo. But the errors in the game are not ignored.

    My question is if someone know a newer (2016 or 2017) hexed that this patch is working properly. 

    Thanks

  9. I've heard about this issue in some topics at harmony board and here

    https://rathena.org/board/topic/96124-harmony-version-3310/

    https://rathena.org/board/topic/86520-server-hardwarespecs/

    http://foro.warning-ro.net/index.php?/topic/329-harmony-fps-lag/

    I mean a lot of players in the same area like more than 60 in a gvg match.

    @xlaws27

    Try to monitor your server resources usage with a more detailed application like atop.

    Also consider to use a monitoring tool at client side like rcx to view the FPS and the latency

  10. As I remember there's a diff made by Shakto that allows it. Also, the command not work anymore, instead, there's an icon that you can create party and guild too.

    If you don't have the diff, you can easily use a hex editor and apply the following search and replace because the Shakto's diff was based on my topic:

    https://rathena.org/board/topic/81884-hex-to-allow-space-in-guild-name/

    • Upvote 1
  11. The Goal
     

    The proxy protocol comes to provide high availability to the RO servers by placing the server behind Load Balancers but preserving the ability of keep the user real ip address.

     

    By using load balancers it's possible to protect against DDoS attacks, create custom hops to improve the route, even create a distributed network over the globe and many others possibilities.

     
    How It Works

     

    The Proxy Protocol was designed to chain proxies / reverse-proxies without losing the client information.

    A proxy will use its own IP stack to get connected on remote servers. Because of this, we lose the initial TCP connection information like source and destination IP and port when a proxy in involved in an architecture.
     
    A few workarounds exist, but the problem of these workarounds is that they are either protocol related or require architecture changes, preventing scalability.
     
    That’s where the proxy-protocol comes in:

    • it is protocol agnostic (can work with any layer 7 protocols, even when encrypted).
    • it does not require any infrastructure changes
    • nat-ing firewalls have no impact it
    • it is scalable

    The is only one condition: both endpoints of the connection MUST be compatible with proxy protocol. This could be either proxies, reverse-proxies, load-balancers, WAF, application servers, etc….


    Proxy-protocol ready softwares

    The list below summarizes which software have already implemented the proxy protocol:
    Elastic Load Balancing, since July 2013, AWS’ Load-Balancer
    exaproxy, since 1.0.0, forward and reverse proxy
    exim, since 4.83, client side only, SMTP MTA
    gunicorn, since 0.15.0, python HTTP server
    haproxy, since 1.5-dev3, reverse-proxy load-balancer
    nginx, since 1.5.12 in HTTP server client side only, Web server, HTTP + Mail reverve-proxy
    postfix, since 2.10, SMTP MTA
    stud, since the first release, SSL offloader
    stunnel, since 4.45, SSL offloader


    Proxy protocol documentation

    The description of the protocol by Willy, HAProxy developer: http://haproxy.1wt.eu/download/1.5/doc/proxy-protocol.txt

    And a few articles speaking about the subject:
    http://blog.haproxy.com/2012/06/30/efficient-smtp-relay-infrastructure-with-postfix-and-load-balancers/
    http://blog.haproxy.com/2012/06/05/preserve-source-ip-address-despite-reverse-proxies/

     

     

    What do you think about it?

  12. Hello Stolao,

     

    Your events are very good.

     

    I noticed some erros and I'm reporting it.

     

    In Event_Management:OnJoinEvent

     

    1 - When an event require items and the event is configured to store all the equips, the join command fails because the delitem is actually place after the storeall command. So when delitem runs, the inventory is empty.

     

    2 - else if ( $@Cost[0] && $@Cost[1] )

    If the event is configured to require an item, it will trigger the above condition.

    But if the player have the item in the inventory, it will simply hang the screen.

    Because the event require an item, ok, but the nested condition is if the player don't have the item, so, it will not trigger in the above situation and the options will hang.

     

    The correct sould be:

    else if ( $@Cost[0] && $@Cost[1] && (countitem($@Cost[0]) < $@Cost[1]) ) {
  13. Purchasing from  the control panel is not a good idea, because the shop ingame would not be refreshed on purchase.

     

    I think that is a good idea. The vending would be stored in a table, when the sell is done, the item will be deleted from that table.
     
    The player shop in the game will fetch the items from that table and will refresh the purchase list in an interval of N seconds. If someone buy an item that is not in the vending table, the sell is cancelled.
     
    By this way will be possible to shop an item from the control panel.
×
×
  • Create New...