Jump to content

Xgear

Community Contributors
  • Content Count

    249
  • Joined

  • Last visited

  • Days Won

    2

Everything posted by Xgear

  1. They table structure says they're varchar yet they show up as a whole amount of numbers? O.o Then the server is storing them wrongly O.o
  2. If you check directly the database, are they also stored like that? If you check the table structure (Assuming you're using phpMyAdmin), both last_ip and last_max should be varchar. Make sure thats the type they're set to.
  3. Pues como te dije anteriormente, tus screenshots muestran que el servidor esta utilizando tus IPs de LAN y no de WAN, por eso no puedes conectarte más alla del login server. Cambia las IPs de char_ip y map_ip a tu IP WAN y deberia estar listo.
  4. Didn't know there was a difference between double and single quotes. Thanks for pointing that out! @ ossi Have you tried doing what I and Gepard said in BUILDIN(bindatcmd) @ script.c and struct atcmd_binding_data* get_atcommandbind_byname @ atcommand.c? Do you get any errors?
  5. Shouldnt, checked the *some skills* and didnt see any renewal definition which means it doesnt. They will be working for Renewal mechanics though (Which means they could be overpowered if you apply them to pre-renewal mechanics. You'll have to balance them out as you see it fit though and that will require src edits)
  6. I am not sure I understand what you mean by aspd/vit/strength, etc. * db/re or pre-re/job_db1.txt includes Some HP/SP ratios and Weapons attack for each job based on weapons. * db/job_db2.txt includes job-level job-bassed stat bonuses (aka, the extra bonus you get on each stat per job level * db/re or pre-re/exp.txt includes masimum joblvl, baselevel and stat points required by each level for each class * There is no Max HP setting O.o (Client caps it at 1m though) * conf/battle/player.conf has a max_cart_weight setting (You can also find max aspd there, I think I remember aspd/weight factor to be changable somewhre, forgot where now though)
  7. Tienes los servidores conectados via LAN, deberas ocupar la IP WAN para poder conectarte por dicha interfaz. bind_ip siempre deberia ser WAN
  8. From atcommand.c // Command symbols if (config_lookup_string(&atcommand_config, "atcommand_symbol", &symbol)) { if (ISPRINT(*symbol) && // no control characters *symbol != '/' && // symbol of client commands *symbol != '%' && // symbol of party chat *symbol != '$' && // symbol of guild chat *symbol != atcommand->char_symbol) atcommand->at_symbol = *symbol; }Lookup for all instances of atcommand->at_symbol and add a OR clause as needed. Ex:// @commands (script-based)struct atcmd_binding_data* get_atcommandbind_byname(const char* name) { int i = 0; if( *name == atcommand->at_symbol || *name == atcommand->char_symbol ) name++; // for backwards compatibility ARR_FIND( 0, atcommand->binding_count, i, strcmp(atcommand->binding[i]->command, name) == 0 ); return ( i < atcommand->binding_count ) ? atcommand->binding[i] : NULL;}Replace with: (Not quite sure if you can simply add the check as string, I think you should though)// @commands (script-based)struct atcmd_binding_data* get_atcommandbind_byname(const char* name) { int i = 0; if( *name == atcommand->at_symbol || *name == atcommand->char_symbol || *name == "!" ) name++; // for backwards compatibility ARR_FIND( 0, atcommand->binding_count, i, strcmp(atcommand->binding[i]->command, name) == 0 ); return ( i < atcommand->binding_count ) ? atcommand->binding[i] : NULL;}
  9. Hello 1.- For the most part and as far as I am aware of, pre-renewal is pretty stable as it has been for the past.. 3 years? There could possibly be more tweaks to do, but the pre-renewal code is pretty much the same for eA/rA/Hercules, so you shouldnt have any major issues there. 2.- The cashshop doesnt have a Renewal specification, as long as your client supports it, you should be fine (Ragexe clients support Cash shop). 3.- Skills and statuses are available for either version on its most, only times when *Renewal* comes into play is when the formulas for a skill differ. Since Kagerou/Oboro are Renewal exclusive, there is no pre-renewal formula for the skills. They will work given you update your pre-re files acconrdingly (skill_db, job_db, etc) 4.- For the most part, item bonuses don't change much except for a recent commit which updated the name of some Statuses. Shouldn't require a major overhaul of any of your custom items. 5.- As far as I am aware of, only ViariableCastRate/FixedCastRate related additions. For the client: 1.- No idea. Cashshop is a Ragexe feature but I personally havnt tried any of those clients afar. Going with something like 20120418 should be good though 2.- You only need to change your item files to lua if you go with a client > 2012-04-18 3.- Hercules anti WPE/RPE works by encrypting packets (It doesnt have anything to do with skill delays or 3rd party software attachment).
  10. The skill.c entries do what the new sc_config.txt does: Define when/wether it can be dispelled by different means. The ones you need to keep: db/const.txt (all) src/map/mob.c (all) src/map/pc.c (all) -> Keep in mind, sd->sc.data[sC_EXPBOOST] was renamed (something like PLUSEXP or PLUG_CASH_EXP. So put the code beneath that. src/map/status.c (Only StatusIconChangeTable changes) src/map/status.h (all)
  11. You DO connect to SQL server (Otherwise the servers wouldnt run) Your login and char server consoles are telling you whats wrong: Your username/passwords for the servers accounts aren't setup properly. You need to modify the default entry @ login table (account_id 1) with a username/password. your login/char servers are trying to connect with username ragnarok and password ragnarok, so change the username/password for account_id 1 in your login table to ragnarok and ragnarok respectively
  12. I am not entirely sure what you mean by does not work, it should compile just fine from the looks of it, however you don't need the changes on skill.c nor on Status.C (other than the StatusIconChangeTable -You need those-) I am not entirely sure how is the system supposed to work nor what did the 4 cases on status.c do, however now you need to add those into db/sc_config.txt with the corresponding flag // flag 0x1 - SC cannot be removed by death.// 0x2 - SC cannot be saved.// 0x4 - SC cannot be reset by dispell.// 0x8 - SC cannot be reset by clearance.// 0x10 - SC considered as buff and be removed by Hermode and etc.// 0x20 - SC considered as debuff and be removed by Gospel and etc.// 0x40 - SC cannot be reset when MADO Gear is taken off. So, I am guessing it needs to be Non removed on death, not dispelled/clearance SC_PREM_EXP, 13SC_PREM_DROP, 13SC_PREM_JOB, 13 Adding that to db/sc_config.txt plus what I said before should make it work.
  13. Assuming my memory won't betray me, you'd have to diff your client with Use Arial on all Langtypes and then Hex-edit your client -> Search Arial -> Replace with whatever else you want. I know there are 2 or 3 font diffing options and one of them would let you change the font via Hex editting (Or WeeDiffGen comes with the option to change it too)
  14. Xgear

    Npc ID range

    Those clients don't support >999 NPC_ID. You'd have to go with a newer client, probabbly >2013 as Judas mentioned. I tried up to 2012-07 with no luck.
  15. A lo que se refiere M45T3R es que no especificaste de que se trataba el "pedido", por lo que el titulo no es para nada explicativo. Esto tiene mayor referencia a permitir que otros usuarios que tengan el mismo problema puedan encontrar la información más facilmente o que usuarios que puedan ayudar vean el titulo y lo hagan. Saludos.
  16. You don't need to add permissions, you want to add commands. Taken from conf/groups.conf { id: 1 name: "Super Player" inherit: ( "Player" ) /* can do everything Players can and more */ level: 0 commands: { /* informational commands */ commands: true charcommands: true help: true rates: true uptime: true showdelay: true exp: true mobinfo: true iteminfo: true whodrops: true time: true jailtime: true hominfo: true homstats: true showexp: true showzeny: true whereis: true /* feature commands */ refresh: true noask: true noks: true autoloot: true alootid: true autotrade: true request: true go: true breakguild: true channel: true } permissions: { }},
  17. En el mismo sitio puedes encontrar la version más actualiza: http://supportmii.com/ro1/Clients/
  18. Are the server listening/connecting to the right IPs? Can the servers connect between themselves? Do you get a connection attempt on the map server by the client? Any messages on the char server's console? O.o In general other than making the IP bind/point in the right direction you shouldnt need anything more than that.
  19. Xgear

    Mapcache

    You mean the grf, resnametable and map_index files? Each one has a different purpose and are completely different to be be "joined" into a single file. GRF: Contains the actual map files (This is also required by the client, so can't be modified) resnametable: Used by the client to tell which map loads which files. (Can't be modified or at least is not related to server-side stuff) - Relies on the grf to confirm map files exist. map_index: Entirely server sided and is mainly oriented for inter-server purposes (Pretty basic but its sort of the core of map loading) Now if you're talking about a way to generate map_cache.dat in an easier way, you can always rely on WeeMapCache which is a windows tool (afaik doesnt work from command line/linux) which would allow you to generate files in a more dynamic way working with each one of those three files independant from each other
  20. As I posted in your other topic, did you "make plugins"?
  21. You need to "make plugins"
  22. Before I forget for the nth time. Regarding HPM Function Overloading, is it possible *or would it be possible if it doesnt already* to have Hercule's core functions be loaded together with the plugin functions or would the plugin overwrite them? Scenario: The PK Plugin checks if sd->state.pk is enabled (which would go under battle_check_target), while Faction system plugin would check for like sd->status.faction value to see wether target is friend or foe. If both plugins overwrite battle->check_target, would both checks remai or would one overwrite the other? And each one overwrite the original battle_check_target's code? Edit: Also in case the functions are not overwritten, would the new custom battle_check_target have to be completely the same as the original one? or could I just add the pieces of code as I need them? Like for instance, could I simply do int my_battle_check_target( struct block_list *src, struct block_list *target,int flag){ int16 m; //map int state = 0; //Initial state none int strip_enemy = 1; //Flag which marks whether to remove the BCT_ENEMY status if it's also friend/ally. struct block_list *s_bl = src, *t_bl = target; nullpo_ret(src); nullpo_ret(target); if (s_bl->type == BL_PC && !((TBL_PC*)s_bl)->state.pk) return false;} for the PK plugin?
  23. Actually, renaming the entire interface system to i<Whatever> seems a really good idea, in order to maintain consistency and reduce the difference. In general for anyone who comes fresh new, learning that the interface system renames all the previous functions to iPrefix might be easier to adapt to, however I believe all the interface system should be renamed accordingly to whatever comes into this. As for mkbu's comment when I first read it I thought it was referencing to inter functions or those *if* functions (chrif, intif), which might lead to a small confusion (which iPrefix wouldn't). On a side note and as a personal remark, I hate the lower i and the first capped character afterwards, feels too much like Apple stuff and that's way too mainstream for us (But as stated previously, anything saying "if" or "int" or similar could cause some confusion, so I don't think it'd be a really good idea)
  24. I've never used Flux, so post a screenshot and maybe someone could help you =)
  25. You're connecting to a server thats not located at 'localhost', which means you need to add host/server permissions on top of your user permissions. For security reasons, you should probabbly specify a specific IP address to connect from, however if you don't have a static ipaddress, setting the host to '%' would let any IP connect to mysql.
×
×
  • Create New...

Important Information

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