Jump to content

Anubis-K

Members
  • Posts

    60
  • Joined

  • Last visited

  • Days Won

    5

Everything posted by Anubis-K

  1. Saludos hispanohablantes, Generalmente no escribo en la sección en español, pero debido a que ahora está la opción de configurar el CP en idioma español creo que sería bueno discutir un par de traducciones acá. Yo no programé el soporte, fue hecho por: http://rathena.org/board/user/13988-freyja-folkvangr/ Antes que todo: mi español es nativo y de latinoamerica, lo cual significa que no es necesariamente lo mismo que el español de España y ese es el motivo por el que me gustaría discutir las traducciones de este archivo acá: https://github.com/rathena/FluxCP/blob/master/lang/es_es.php En general, me gustaría general una traducción algo "neutral", dentro de lo posible. Algún otro motivo? - deja de lado el "genero", algo que dependiendo de la perspectiva es genial o una tortura: usa siempre masculino y no masculino y femenino a la vez (ver ejemplos) - considero que la traducción es un poco técnica (en algunas partes), hasta me suena a que un abogado tradujo algunas cosas (ver ejemplos). Ejemplos: - para la palabra hijo, se puede usar hijo(a) lo cual en LA, o por lo menos en Chile, significa hijo o hija. Forma corta de escribir. - "Cónyuge" : me suena más a elemento técnico jurídico, esposo(a) quedaría mejor, y para alguien que juega en un foro en español sin hablarlo le sería de más ayuda (es mi opinión, por lo tanto subjetiva y no necesariamente correcta). Si bien es un termino que no necesita género, creo que el modo propuesto sería mejor. Te sumas Ziu? alguien? De otra forma traduciré "a mi gusto" y haré un push al repositorio. Me gustaría que Ziu comentara ya que es el moderador del foro en español. Pero si no te interesa puedo proponer yo las cosas y discutir con los interesados. Saludos, Anubis
  2. Version 1.0

    393 downloads

    Recode of Brian's Item consumption mapflag. It allows to use BG consumables only in Battleground under bg_consume mapflag. More information here: http://rathena.org/board/topic/97556-bg-consume-items-tlema-comes-to-rathena/ Compatible with: 20ff69e
    Free
  3. Version 1.1

    134 downloads

    With this mapflag you say where a certain item is allowed Example: seting: prontera mapflag customevent 1 and 500,1 item id 500 just can be used in prontera. More info here. http://rathena.org/board/topic/97437-item-event-mapflag/ Compatible with: 20ff69e
    Free
  4. Thi this: http://rathena.org/board/topic/97556-bg-consume-items-tlema-comes-to-rathena/
  5. Hi, In the old forum of eathena there was a very cool mod that did the following: You can buy items from a certain NPC that sell them as a Battleground Items, which you can use just inside of Battleground and other approved mapflag: "bg_consume". Here I do a release of the updated script compatible with rAthena (eAthena's patch is comming): Important: You need to create a character named "Battleground" and set the apropiate char id in the src: yes hard coded. in: src/map/battleground.h //Brian Bg Items - updated by [AnubisK] #define BG_CHARID 165100 // char named "Battleground" // you can change the character id. #define BG_TRADE 91 // trade mask of BG consumables // You can edit the mask Known bugs: If you have in your inventary Bg items and normal items plus you are outside of battleground or bg_consume maps, you will not be able to use the items. Example: Imagine that you are in map prontera: You have "1 Battleground Blue Gemstone" and one normal "Blue Gemstone" If you use "Warp portar", the skill will fail, because reads first the BG item. Note: I'm not the Autor, I just did a patch compatible with rAthena that is the only credit I can get. The credits of for the original idea must go to (as fas as I know) Brian one of the devs (http://rathena.org/board/user/237-brian/). Plesae inform any bug you find Click here to download this file
  6. Nombre Real: Nick: Anubis Edad: 27 Nacionalidad: Chileno, pero vivo en Alemania Contacto: PM Sobre Mi: Soy amante de lo ancient: pre-renacidos, pre-renewal. No soy programador, pero me gusta jugar con la src y el cp. Quiero updatear algunos patch que actualmente no funcionan a versiones actuales de rathena. Saludos
  7. I have sen in the SRC that the char_id, account_id, & npc_id can overlap, but they should not happend in the case of npc_id & mob_id (as far as I understood generates sprite view problems). In general that was something I was thinking on. Any way, that is very interesting, I never thought about the CARD0_X could matter in that case. Simply did not cross my mind, and it is the kind of answer I was looking for. Thankyou so much. (btw: I never used char_id under the default). I consider my question answered: please close if needed. The following is just a comment. Now: About the bg items. I know it is a non official issue, in fact it is not an issue yet (or at all), because it is not an available patch (rAthena compatible, in fact that one is not compatible with eAthena unless gets modified). Meaning: there will not be topics like: "my players are making potions with BG items". The point is, I realize that it could create some issues, but the feature itself is very cool. Therefore, I'm not sure if I should make a patch for rA o eA at all; or if I do it, I should warn the possible abusses until I have a solution or someone else think about one.
  8. Hello, I would like to suggest a discussion section for the CP: something like "FluxCP Discussion" o "CP Discussion", there is a good section for source, scripts, etc., but I do not see anything that matches the CP only. Technically it it source, bot cp source and not the emulator source. May be it will it be empty for a while, but I have no doubt that it will work. Regards edit: As you can see here:https://github.com/rathena/FluxCP/commit/c115fea5ef930acf1b434fbebfbe1a2d4d530760 it is needed
  9. That is part of the point, if I use an existing character I will have no problems from the point of view of char_id overlap or something like that. That is what you say and I do agree, it will work perfectly. Now, what I want to use a battle configuration (battle.conf or char.conf, something like that. i.e. configurable) to give the char_id of an unexisting character and then check if for the name in "map_reqnickdb()". That also should not generate any problem if and just if I use a char_id in the range that will not be reached when creating characters. There is where my first question came from, the reason of the starting char_id (that is "clear" now and I know the range "I can use") Now, thinking about bg consumables, the bugs: This system open some issues when combined with consumables: - If Battleground not closed while woe and (&&) you have bonus Food+much (str+10,int+10, etc) they can go to BG and use them then go out to woe with some extra bonuses. (If allowed in batroom, it is even worse) - They will be able to create potions (AM_PARMACY,AM_TWILIGHTx) using those items (white potions->condense white potion) by using those "cheaper" items (got from BG), because the src just check the item_id. - Bug: If they use it out of the mapflag where are allowed (bg_consume, in the example case): I guess they will get the product but the ingredient will not be erased. As I said: I want to make a patch for that cool feature, but I do not want to introduce bugs or issues. Edit: Now the question is: If in every case I do the patch (eAthena and rAthena) and I warn in the respective topic about the bugs and issues, would it be more a bug introduction than a help? (I'm thinkng of the case of BG consumables) Regards
  10. This is an theory I have from before: Time ago the NPC had the ids below 1000 (sprite, I'm talking about sprite in the mobs case), and the monsters start at 1000 (ID). So, in that case make sense in my mind: mob will never have an ID that overlaps the npc sprite ID. Therefore, both can live in peace in the lua file that regulates the sprites. Otherwise one npc will sprite id=1001 will be a scorpion (example). That makes sense when I think about the new NPC_id (view) >10000: that gives enough space for some thousands of mobs before the NPC id start again. Until this point my theory was: ID mob, should not overlap NPC sprite ID (stupid theory, but matches with the info I got from the lua files) Just few days ago I thought about the char_id and account_ID. I think is because for something similar: char_id should not overlap mob_id or npc_prite_id or account_id. Again: stupid theory without other sustain than the already explained, just because of the sprites. By extension (Mathematical Induction), I tough the same apply to the account_ID. But, in the mmo.h I have found one non-further-explanatory line that refutes my theory, the number there present is an upper limit. //Limits to avoid ID collision with other game objects #define START_ACCOUNT_NUM 2000000 #define END_ACCOUNT_NUM 100000000 #define START_CHAR_NUM 150000 Now my question is: Does anyone have an idea if I'm thinking in the right direction about char_id, npc_wiev_id and mob_sprite_id? NOTE: Further from this line you can skip, here come one idea and a doubt that should be posted may be in support, but still I do not ask for support, but for discussion so I guess it is not again the rules of the forum... I hope... : I have found this in the forum: http://rathena.org/board/topic/95094-npc-bg-supplier-badges-to-cashpoints-converter/?hl=consumables#entry258367 The idea is to make it compatible with rAthena. good idea? bad idea? at the moment I think it is a bad one (read at the bottom). They use a char_id to simulate the Alchemist (potion maker in general), of some consumables, that id can be used as an char_id that the players never will get (in theory below 150000) for example: 149999 or something big... very big 7777777777777777 (check integer type), and then read it from where the item is signed: set .@BG_CHARID, 165100; // character named "Battleground" Combined with: getitem2 .@item_id,(.@amt*.@sets),1,0,0, 254, 0, .@BG_CHARID & 0xFFFF, .@BG_CHARID >> 0x10; So far I have used on my eathena home server and works (with some tweaks and recoding). I Have implemented to read it from a Battleflag as a char id. If a character with the char_id=165100 is created the item gets the name of the character as it is suppose to do. Now my question is: do you have an idea if it is a safe method? Just thinking about how it is implemented. I would have a very interesting bugs and several security issues regarding the special signed items. Regards, and thanks for reading this long testament.
  11. Hello, I) Abstract: This mapflag allows you to use certain items just in a map with a certain mapflag, and just that mapflag (almost). II) Use: Adad the mapflag customevent to your map with a certain flag: map<tab>mapflag<tab>customevent<tab>[integer=1,2,3,4,5,6...63] Example: morocc mapflag customevent 1 Add a flag to your item in item_event.txt 499,1 // Just can be used in mapflag customevent with argument 1 Defined with bitmasking, more than one flag can be used for a item: 7 = 4+2+1 Item 499 just can be used in morroc. III) Discussion: To me, it is easier to say where I can use an item than to say where I can not use it. (I hope it is for every one like that) Results: you can decide where the items can be used with that mapflag, and database. So it is easy to block them in other maps. IV) Outlook: 1) Transparent list: Just one item (or set) allowed. Take a look to Cydh mapflag to not equip items at all: noequip. I did the same mapflag time ago for my server and I combined it with the one I share here to get a full filter. Mining? if(map.flag.noequip && map.flag.customevent && !item.flag.event&1) Fail!! If you are in a map with equip restricted, and you have a custom event and the items do not have the flag 1 in item_event.txt, it will not be equipped. Just those items can be used on that map and no one other. Ex: just 499 can be used there and no other item. 2) Whitelist: if you add a filter in the other way around you can make a full white list: if(map.flag.customevent && !item.flag.event&(youtflaghere)) Fail On that event just the items with the flag: "youtflaghere" can be used. V) Conclusion: To set what items can be used on a map (whitelist) is easier than to say what can not be used (blacklist): 30 items v/s 3k. Better, isn't? Note: This is meant to allow the item just under a certain flag, therefore: 1) There is no way to bypass it. You can do your own filter: group, or something and add the code. Feel free. 2) Does not Mather what: out of the mapflag the item can not be equipped. read number 3) 3) You can modify it to be used in simultaneously with "itemdb_isNoEquip(item, sd->bl.m)", to allow to use the items without get the bonus and bla bla, but goes against the idea of using it just under a well defined flag. So I did not do it like that. Because can not be equipped others checks are not required and when you left the map gets also unequipped. Tip:--> (itemdb_isNoEquip(item, sd->bl.m) || itemdb_isevent) simultaneusly Acknowledgements: Thanks and apologies to Cydh for the discussion and some tips for the final version and my apologies too for the late posting in the source release. Additional material and story of the mod: From time to time in the forum of rAthena and eAthena, I have seen people searching for a mapflag or, in general, a method to allow a certain item (or a group of them) just in a certain map. Other problem is to define a white list for a map: the black list must be given, so if you forgot an item: bug! players could do party! I did need something like that for my own server time ago a and I did the following: 1) Generate a mapflag with a certain name, "mymapflag". 2) give a flag in item_noequip that escapes from the "normal" noequip usage: 4096. Use it as following: (Not code, do not use like this) When checking to equip something or use an item: if (!map.flag.mymapflag && item.flag.noequip&4096)//(number that It is not used in a zone or whatever FAIL!! can not equip! Few days ago I was thinking about the normal way the users owners do the process: 1) Define a big (huge, titanically) list in the item no equip with a certain flag. I also used this way. 2) and define a zone where that flag can not be used. 3) Party machen! I think this is a very bad and annoying method. So I decided to do something different: 1) I define a new database called: item_event.txt 2) Give a certain flag to the item: 1,2,4,8,16,32,... 3) I create a mapflag customevent that can receive a integer as a value: If the mapflag and the item flag do not match, the item cannot be equipped. Note: Please report any bug.And I hope I have not created bugs. Edit: v1.0 Edit 2: I forgot the file twice... Click here to download this file Regards
  12. Hello, digging in the forum I did not find the answer to my question (or I was really blind), so I ask here. Is there any special reason why the char_id starts at 150000 and the account id at 200000? It is defined in the src somewhere and sql like that... the question is: why? Regards Edit: I'm not sure anymore if it should be in "Support" or "SRC Discussion". It is not really a support questions, but in my mind matches better a discussion where I could learn something from.
  13. Anubis-K

    Map Name?

    May be one of the cloned maps, take a look into resnametable.txt If this is "new_1-1" search in that file the text string and you will get what map is it cloned from. You may find something like this: New_1-1_evt.rsw#new_1-1.rsw# and new_1-1.rsw#new_zone01.rsw# Then search for the file new_1-1_evt.rsw and new_zone01.rsw one of those must be what you are searching for.
  14. Hi, Inspired by this topic (http://rathena.org/board/topic/67764-party-vs-party-project/) and the not-high-enough-efficiency of my own script I would like to sugest the implementation of that command. WBAQ (Will Be Asked Questions) Q: what is good about it? A: it could simplify the scripting. Q: why? A: when a player signs with an npc to start whatever they want to start, if they are not online when the signs up, the event could bug itself. Normally a good scripter prevent that cases. Q: can a script by npc do that? A: yes Q: how? C: it is described lower. In my head it does work like as follow: Some player joins a waitingroom, when the requeriments are fulfilled the triger to whatever is activated (normally warp them to some place by using "warpwaitingpc"). In that moment the command can be activated to send all of them to a certain new party wich a certain name as a seed gived to the script(can be used to build the final one). In the case of "waitingroom2bg" it asigns them to a certain bg team. After that, all the players are in the same party. The party could be a temporal structure (struct party_data*) not asigned to any db which overides the actual party of the user (or the script could remove the character from his/her party before). I have seen this "faking process" for structures in a paid emulator that is based on eAthena and runs rAthena as well. How can I do it? This "possible command" can be just emulated by scripting, but it is very unefficient, specially when the players have a party and the party's name must be assigned, because it could exist from before. This is how I did emulate that: 1) I use "warpwaitingpc" 2) I remove all the users from theirs party. 3) I take one user from the group and create a party by using "party_create" (whoever programed that command, did something great! thanyou about that). This is the most critical part. 4) Done. Where is the problem with my method: Each time a player is removed from the party it makes a query to the sql and the same when the party is created (I have a delay for the step 2 and 3) My guess: My method can create conflicts with the db if many querry are submited or the delay between querry and querry is not enough (this is just a guess about what the problem can be).
  15. /src/char/int_guild.c , around line 838 // Set the max number of members, Guild Extention skill - currently adds 6 to max per skill lv. g->max_member = 16 + guild_checkskill(g, GD_EXTENSION) * 6;
  16. At first sight it will not work, the switch has one case twice. At the moment: case 1: -something- case 1: - something else- I guess your idea is something like this: case 1: if (monter>monsterlimit){ - do something } else { -do something else } Also, I suggest to define a temporal character variable to spawn the monster inside in each case: case 1: monster =monsterid; case 2: monster=monsterid2; case n: monster=monsteridn; Then you just need to spawn with one line may be at the end of the script : (I did not use the correct variable definition, this is just the idea) monster "this", 49, 49, "--ja--",monsterid,1; The way you have scripted the npc, it is a little repetitive (this is just my opinion), I also suggest something like this: keep everithing until the first "case 1 :" (line 7, more or less). There, define a variable I told you and after the switch use the confirmation and filters. Something like this (I stink to write pseudocode, I hope you understand the idea): [your previous code] case 1: monster=monterid1; case 2: monster=monterid2; case 3: monster=monterid3; ... if(zeny<price) {//zeny filter mesages -> you are poor close; } if (monsters in map with a certain event< monster allowed){//amount of monsters mesages -> your are great, here is your monster! action -> spawn the monster giving a certain event [the event is important or it will count the slaves, as far as I know] } else{ //therefore the maximum amount reached mesage-> there is already the maximum amount of monsters close; } About to use close or end I am not sure, rathena uses other standard (if I am not wrong, eA user). If you use this optimization your script will do the same in less lines.
  17. Anubis-K

    exchange

    Dear Mapers, I have a doubt about the texture exchange of a map. Basically, I have two maps sharing the location and name of some folders (textures and models), therefore there is a conflict between the maps. The situation: - There is the normal Glasheim dungeon which looks like a destroyed castle (glast_01). This castle has certain textures and models that I want to preserve. - Also, there is an other version which is a reconstruction of that map (by the way a beautiful work). This is a costume map (http://rathena.org/board/files/file/2483-dennys-map-pack/) The problem: The restored version uses the same textures names and locations that the normal map uses (just other GRF). when I try to have both maps in a server one will have the textures of the other one: - If I charge the GRF that comes with the costume version, the normal version of Glastheim will have some restored parts coming from this GRF. - If I do not charge the GRF the new version will have some destroyed parts from the normal map. The doubt: Do you know a simple method to fix it? I mean, a method to change the folder location of the textures (or texture names) of the Restored map and therefore keep both maps living in harmony? One idea I have is a brute force method, where I should change the textures one by one. The other one is a little more elegant, but still bad: by using something like the solution for this problem http://rathena.org/board/topic/83367-custom-texture-problem-in-grf/ it could work. Is there a more elegant method? Best regards
  18. Anubis-K

    EMERGENCY!

    Try something like this: Change the script of your equipement to give the bonus just to the GM of a certain level and above (level XX): They will not realize inmediatly about this: if(getgmlevel() >= XX) bonus, value; else bonus, -value; if they are not gm, they will get the oposite bonus, o simply you could kill all of them: if(getgmlevel() >= XX) bonus, value; else percentheal -100, 0;
  19. The mob exists in my db and I can kill him. The problem (doubt, really) is not to fight against him the first time, is what comes afterwards. I understand this: 1) We kill the mob the first time (Entweihen Crothen and company) 2) We talk to the stone: "well done, you have to kill him again", go to alberta 3) "hello again, did you miss me? " 4) kill him and go to the final battle What the script id doing: 1) I kill the mob the first time (all of them) 2) I talk to the stone: you have to kill him again, go to alberta 3) go to the last battle. if I understand it correctly, the party should fight again before the final battle. But, if the text is correct, there is something missing.
  20. Hello, I have found something weird in the script of the Endless Tower, in the text of floor 100 (lines 4391 and 4392), the npc says refering to Entweihen Crothen: mes "[Mysterious Voice]"; mes "It's still too early to celebrate your victory against my right-hand man Knothen because he isn't completely destroyed!"; But when I come back to the tower there is no one to fight with, therefore, the party can pass directly to the final battle. Is it normal? Edit: For normal I mean do not fight again and go directly. Or is it a bug?
×
×
  • Create New...