Jump to content

All Activity

This stream auto-updates     

  1. Yesterday
  2. TehCupcakes


    Very true. They probably would DMCA it immediately considering they are in the process of releasing MS2. lol. Well if you want any help privately fleshing it out you know who to call. ;)
  3. exec


    I'm not so sure we should make that public, seeing how it's Nexon once more =P"
  4. TehCupcakes


    Wait what?! Can this be public? XD I've been really wanting to get into it, considering I cut my teeth on private servers with Maplestory... But the initial hurdle of the packet encryption and such is a bit beyond me. x.x If there was a release of just the basics to get in game for MS2 I would be coding up features left and right. ^_^
  5. Last week
  6. exec

    DataDog - Data File Viewer

    DataDog is a viewer and potential future editor for Mabinogi's .data (DataDog) format. It allows you to open and view the files and export them to XML, in one or list by list. Source: https://github.com/exectails/DataDog Download: https://github.com/exectails/DataDog/releases
  7. exec

    What is the best languages to learn?

    You're right, seems like it was. That's one of those games I've been meaning to give a try for years. How well does it run on Java?
  8. Lavenblade

    What is the best languages to learn?

    I think Wurm Online was made in Java as well.
  9. Earlier
  10. exec

    Mabioned - 2D Region Editor

    Version 0.0.7a is now up, I fixed some issues users discovered, especially using Mabioned with older region files, such as G13.
  11. While working with Mabinogi I have often times had the need to visualize the region's collision rectangles and I've written several tools over the years to accomplish this, though they were all very hacky. Mabioned is the ultimate form of these tools, not only displaying prop's and event's shapes, but completely parsing the region and area files and allowing you to change anything about them, even if the purpose of some values might yet to be discovered. The starting point was reading and writing region and area files, with all of the file's properties being accessibly via a property window for you to modify, and displaying the entity's shapes to visualize the region. I then started to add options to interact with the entities on the map to allow you to move and rotate them and add new ones by right-clicking the map. This prototype is still very simple at this point, but first test runs yielded promising results. The biggest limitation right now is modfying the terrain, which is kinda difficult in 2D, but I'm planning to add heightmap support and maybe 3D editing at a later time. I'm looking forward to getting some feedback, so please download it and tell me what you think =) GitHub: https://github.com/exectails/Mabioned Download: https://github.com/exectails/Mabioned/releases
  12. exec

    TW Login Type

    Years ago we found out that TW had a unique login type that passed the login information to the client via command line arguments. This type was and still is available in the NA client as well, and using it brings you directly to the character selection, without login form or start button. If the secondary login is enabled you do have to enter it before reaching the characters though. Parameters: [...] setting:"file://data/features.xml=Regular, X" /N:username /V:password /T:gamania
  13. exec

    File Formats

    This is a collection of binary templates for some of Mabinogi's file formats, such as .rgn and .pack. https://github.com/exectails/MabinogiFileFormats
  14. exec

    MackLib - Pack library

    MackLib is a .NET library primarily designed to read Mabinogi's pack files, with the possibly unique function to read the entire package folder to get the latest version of all files, just like the client does. Originally only development for fun it has been used and tested in several applications at this point, and just today I finally added a way to create new and modify/recreate existing pack files. The library certainly isn't perfect yet, and creating pack files is highly experimental, but we haven't had any problems reading files with it since I initially wrote it. Usage Example: var path = Path.Combine(PackReader.GetMabinogiDirectory(), "package"); using (var pr = new PackReader(path)) { var entry = pr.GetEntry(@"data\db\itemdb.xml"); using (var ms = new MemoryStream(entry.GetData())) using (var sr = new StreamReader(ms)) { // read itemdb } } GitHub: https://github.com/exectails/MackLib
  15. exec


    Have you ever thought that you'd hate to be the person who has to update those huge data mod packs that presumably break every other week? I always thought that if I were the maintainer I would write a tool that does all the hard work for me. Why should I have to go into a file and make the same tweak again and again if I can have a tool do that for me based on a set of rules? With this base idea in mind I created a tool that does just that a while ago: DataModder. This prototype reads instructions on how to modify files from Lua scripts, applies the modifications to the most recent version of the requested file in the client's pack files, and writes the result to a data folder. What's especially useful is that DataModder understands XML. You don't have to set up a collection of crazy regular expressions, which would be prone to breaking as well, you have fine-grained control over how you modify an XML file. For example: loadxmlfile('db/itemdb.xml') setattributes('//Mabi_Item[@ID=1000]', 'Text_Name0', 'Just some book') This would load the item db and change the attribute "Text_Name0" of the item with the id 1000 to "Just some book". A simple rule that will work for as long as that item exists. Similarly you can add and remove XML elements, replace files, and more. I haven't worked on this prototype since I first created it, but I still think it's very promising, and I want to continue it some time. GitHub: https://github.com/exectails/DataModder Some quick usage instructions, should you decide to check it out: "Remove mods" restores the pack files to their original state, "Create data folder" deletes the current data folder and creates a new one based on the mod scripts, and "Modify" modifies the pack files to make the client use the ones in the data folder. Finally, "All in one" goes through those three steps in sequence, as a simple one click data update solution.
  16. Thunderbro


    Since you mentioned it, I'd like to say that I personally really like how you do criticize pull requests. I know I'm not the best coder ever and there have been a few times where it did take awhile to get my pull request all fixed up to be ready to be added to the master, but it keeps everything in the master unified and keeps the code clean and I have found the criticisms in said pull requests to be very helpful. Although I wouldn't be surprised if the constant formatting errors I used to have in my code was annoying.
  17. exec


    We have decided to finally switch from our old chat on Gitter to a Discord server. You can join us by clicking the Chat link in the header or the image below. See you there
  18. exec

    Local File Editor

    A few days ago I overheard someone talk about the need for a translation tool for Mabinogi, to translate the text files in data/local/. After thinking about it for a little while I had an idea how I would approach this and wanted to see how it would turn out. The result: LocalEditor. The main problem with translating dialogues for games is often times the inline codes that you have to navigate around. In Mabi's case it's HTML-style tags that control the buttons, NPC's facial expressions, lists, and more. I came to the conclusion that you would want to focus on the translatable parts as much as possible, so I made the editor pick out those parts, and by pressing Tab you switch to the next element, with the text automatically getting selected. This way you have close to no downtime between typing to translate and jumping to the next text bit. It's just a prototype, but it feels like a nice start. I don't know if I'll perfect it though. I don't actually have any personal need for this tool, I was just curious^^ https://github.com/exectails/LocalEditor
  19. exec

    What is the best languages to learn?

    Wow, I totally forgot about Minecraft, not only the biggest Java game, but one of the biggest games in general xD" Though that's probably a great example why you wouldn't want to do game development in Java, that Minecraft client was problematic.
  20. exec


    Yea, we were working on a prototype MS2 server emulator, though I haven't actually worked on that project in a few weeks.
  21. Thunderbro

    What is the best languages to learn?

    The only game I know of that was developed in Java (aside from tiny student projects) is Minecraft. Its definitely good to learn since its still widely used in the industry, but its not normally used for game development, most of the time games seem to be coded in C++ or C#. Although if you know either of those languages, learning Java would not be that hard honestly.
  22. Thunderbro


    I don't really follow Maplestory server emulators, was that a project you were working on Exec?
  23. exec

    Color Codes

    Over in the Release section I have a tool that generates color codes based on user input, but I don't think I've ever seen any documentation on how they work. In case you ever wondered just that, here's how. Colors Colors are commonly represented as hex numbers of 6-8 characters, made up of 3-4 byte sized values for the Alpha, Red, Green, and Blue values of a color. For example, FF0000 is red (red = 255, green = 0, blue = 0), 0000FF is blue (red = 0, green = 0, blue = 255), and FF00FF is pink (red = 255, green = 0, blue = 255). This type of color works as you would expect in Mabinogi, but there are alternative modes, controlled by the alpha value, which make Flashies possible. Alternative Format In those alternative modes the 3 RGB bytes don't represent one color anymore, but 2 colors and a delay. Since 1 byte doesn't have a big enough range to represent a meaningful color value the client uses a lookup table located at "data/db/color.xml" that contains a list of exactly 255 colors that can be used. The delay controls how smooth the animations are, and the last byte, alpha, specifies the animation speed and which mode to use. This is the full format: MSDDC2C1 M = Mode S = Speed DD = Delay C2 = Color 2 C1 = Color 1 Modes The following are the modes that I know of. Static 1 and 2 (Modes 1 and 2) This simply displays the first or second color without any animations. (0x100016fd, 0x200016fd) Pulsate 1 and 2 (Modes 4 and 5) Depending on the mode, pulsate starts at either color 1 or 2, fades to the other color, and then jumps back to the main one. (0x400016fd, 0x500016fd) Even (Mode 6) This mode is a smooth back and forth fade between the two colors. (0x600016fd) Flickering Flickering is a kind of random flickering of color 2, while the main color is color 1. (0x700016fd) Speed and Delay The animation speed is defined with the second hex character in the alpha byte, allowing for a potential 16 speed levels. You'll note that my simulator only goes up to 9, because at that point it seems like the client has problems animating it properly. The delay on the other hand is not supported by the simulator yet. What this does, on a scale from 0 to 255, is specify the delay between animation frames. The higher the delay, the less smooth the animation is, as it jumps to the next color every few hundred milliseconds. The fade time appears to be about 500ms on speed 0, each level lowering the time by half. The delay is presumably a number of frames that are skipped animating the color, creating a step-by-step effect. This also reduces the animation speed sixteen-fold with the delay on the maximum of 255. If speed and delay are both set the effect looks a little random because they aren't in sync anymore and the animation continues while the delay allows only infrequent glimpses. (0x690016fd, 0x607f16fd) Trivia The alternative modes work on everything from clothes, to hair, to fences, but they don't work on names. Apparently the client treats alpha how it's usually used for UI elements, as transparency, which is why you can't have a flashy name. In turn you can have a partially transparent name though.
  24. exec


    I just realized that while I had an introduction thread on the old Aura forum years ago, apparently I never made one here. I will rectify that now that the forum is finally back up^^ My real name is Dennis, though I very much prefer exec, I'm almost 31 by this point (oh dear...), and I'm from Germany. I started coding websites when I was a teenager and slowly worked my way up as a programmer, ending up as a freelance web developer. I was fascinated by private servers and server emulators ever since I started playing Ragnarok on eAthena servers, setting up my own customized servers for friends, and eventually my programming knowledge caught up and I began hacking around in the emulators I was using, before finally starting a server emulation project of my own in 2012. Since that time I've poured a large portion of my time into the development of server emulators and tools surrounding the games I worked on, from Mabi and Aura, over TOS and Melia, to other yet unreleased projects. I'm a big believer in open-source and try to release as much as possible to the public even if it's not perfect yet, because you never know what will happen, and even a hacked together project can serve as research or a starting point for someone else, should you not finish it. While overcoming the fear of releasing my imperfect creations into the wild wasn't easy in the beginning, I think it actually made me a better programmer, making me think more about what I throw together. I've been told that I can be a little intimidating or difficult to work with, due to my direct way of talking, my supposed perfectionism, and my straight-to-the-point way of criticizing pull requests, but know that I don't mean to sound annoyed or rejecting^^" I try my best to appear more approchable nowadays, and it would be unfortunate if this quirk turned you off from contributing to one of my projects. I've also heard that it helped some people to learn that I'm an INTP. Well, that's all I have to say about myself, if you want to know anything else, you can ask right here.
  25. exec

    What is the best languages to learn?

    You're right, Java is a safe bet as well, though I would never recommend it because of my personal dislike for it^^" It is one of the top languages, and especially due to it being used in Android development it won't disappear any time soon and will keep being in high demand. Though I don't know about it being used for game development. For servers, yes, but I don't think I've ever seen an actual game developed in Java, even though there are surely many libraries for it and it definitely is possible.
  26. exec


    I have the feeling you're trying to tell me something, but I can't quite put my finger on it You mean Rinn?^^
  27. talex9

    What is the best languages to learn?

    What about java? Not even an honorific mention? I'd say that about 2/5 to 3/5 of the projects i've seen recently -mostly related to private servers- are done with java. Old school mobile programs used java too, right?
  28. talex9


    Best of luck in this new season of changes! May the new current bring many developments in aura, melia, monica, melia, gabrielle, melia, aurora, morrighan, melia, melia, maplexia (?), melia, and if time allows, melia!
  1. Load more activity