Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 07/27/23 in Posts

  1. Note: This map was made during my Browedit tutorial. * If you are interested to learn how to develop your own custom RO Map, please check the link below. prontera v0.1 Very simple prontera map with custom texture. Image 1 Image 2 Image 3 Thanks for Downloading. speedrun_prt.grf
    1 point
  2. I think supportwise the best option is to use a client with a date according to the packet version rathena uses by default or earlier, since I assume the packet version defined by rathena is the latest stable one and backwards compatibility is given by the server naturally growing with the version numbers of the client.
    1 point
  3. I think this problem was solved! Thanks everyone! However is there a suggestion for an specific CLIENT version? I want renewal + 4th classes and I'm using latest rAthena! I'm planning to mantain this for a very long time! Sorry if I should have asked this somewhere else!
    1 point
  4. These cooldowns are made with the quest commands. It works by giving the player a quest that has an expiration time. Here is a small example: prontera,124,201,1 script Example NPC 726,{ // Check if the time limit is still running. if(checkquest(200000, PLAYTIME) == 0) { mes "Example"; mes "I am still preparing the cake, please wait!"; close; } // Check if the time limit expired. if(checkquest(200000, PLAYTIME) == 2) { mes "Example"; mes "Finally! Here is your cake!"; erasequest(200000); getitem(12062, 1); close; } // Give the quest with the time limit mes "Example"; mes "Hello, how may i help you?"; mes "Oh, a free special cake?"; mes "Sure, i will bake you a fresh one."; mes "Please come back in 5 minutes!"; setquest(200000); close; } The actual quest and time limit is defined in the quest_db.yml. For the Example NPC the entry would look like this: - Id: 200000 Title: "Example Cake Timer" TimeLimit: +5mn If you want to show the quest info in the client like in your screenshot, you need to edit the System/OngoingQuestInfoList_True_EN.lub. For the quest in the example, the entry could look like this: [200000] = { Title = "Example Cake Timer", Description = { "Wait for Example to prepare your cake." }, Summary = "" }
    1 point
  5. When you hex/diff the client, u can try to change the new char name field height. The default is 13, maybe you can change it to 20, try it first or change it to any height that you want.
    1 point
  6. Today is the year since the announcement! The project description was updated. And I'm happy to show what we have at the moment. We now have a landscape with four zones and three different biomes. Huge river spaces and many small islands. Top view of the map under the spoiler. Base sketches (may be completely changed): < base 1 | base 2 > Now I have started working on objects and shadows on the map. Please see the development requirements in the first post.
    1 point
  7. Don't worry about it Hendra. I'll be working on an Updated guide on how to do all of this soon. since I've noticed a lot of stuff is quite outdated or just isn't explained as good as it could have been. Be on the look out for a guide here soon.
    1 point
  8. Hi everyone ! I'm on a project and I thought some of you might be interested in one topic I'm currently working on. I'm sharing with you 3 different multi-language system I made. 1. Multi-language support + Compact Automatic NPC Structure System alberta Sample V1.txt In this file, all npcs are calling one function with an ID per npc, everything or almost everything is defined in this function (texts, menus, commands script, set, conditions, input). The script is then reading a common function-code that will generate the whole npc depending on the numbers ID in front of each line. There is no need of a npc structure anymore with this code. It calculates how many texts the npc should say, when to "next", when to "close", when to show a menu, set a variable, put a if condition, etc... All managed by numbers in the variable. Of course, the system is not fully done but it works. As I wrote on comment, I still need to change the conditions system to be able to read many conditions separately from each other but on the same dialogue. So far, it can read one/many conditions in one sentence and return false(0)/true(1) if the PJ has it. Also, It does need a duplication of menus/menus choices so the script can go on and on infinitely. Still in process.. But it is currently functional if you make sure 2 sub-menus are not displaying at the same time (same text number) in the choice of either menu- case1 or menu case-2 or menu case-3. I probably also need to create an array table with ID/values for each and put the common code in a different function just to be more clean. 2. Multi-language support + Same old NPC structure alberta Sample V2.txt In this file, all npcs are calling one function to determine in which language the texts will be. Simpler than the one above, variables names are only t1, t2, t3 etc.... t3a t3b only if there are many texts in the same window npc. It returns to each individual npcs that has the same structure (a for was made when there are many dialogues before a menu to make it compact). I also need to set the variables to 0 before each reading. 3. Multi-Language npcs alberta.txt In this file, all npcs are individual from each other, depending on the #langtype, it will display the texts in the same old structure. Language default is english in case there aren't a translation available in the language associated with #langtype. #langtype is a variable already existed in rathena, depending on the value of your #langtype (english is default), the messages from msg_conf will appear in the appropriate language that is located in conf/msg_conf. Also, a line has to be changed in src/common/msg_conf.hpp: When the first system will be fully done, It would be great if someone can create an .exe that can automatically replace "mes" "menu" etc in all npcs at once by a variable$ number that follows a certain direction. I'm interested to read your feedbacks, impressions, comments, suggestions, perhaps modifications? If you have enough knowledge and are interested to help, please PM me. Thank you ?
    1 point
  9. getunitdata is used to get special data related to the unit, including mapid x and y. *getunitdata <GID>,<arrayname>; ... UMOB_MAPID UMOB_X UMOB_Y
    1 point
  10. Why shouldn't getmapxy for mobs won't work? I recently used it myself. Works just fine. If the mob isn't attached you want the coordinates from you have to define it after the UNITTYPE_NPC: getmapxy(.@map$,.@x,.@y,UNITTYPE_NPC,"Mob"); I'm not sure if you can make an instanced bg, so I can't really help you there. Well after the instances was created with instance_create you can set an instance variable for the bg ids and save them also in an global array so they can stay unique. "'" - An instance variable. These are used with the instancing system and are unique to each instance type. Regards, Chris
    1 point
  11. I made a tutorial instance script like awhile back. I'm not completely sure if it still applies but I'll drop a link here if you feel the need to check it out. (Edit: Giving it a quick glance I can see that I was pretty vague back then. If you have any questions about parts of the script let me know.) http://upaste.me/r/858a16499f5511742
    1 point
×
×
  • Create New...