[MapleStory Worlds] "Mega Server" Dev - Basic Social Functions

Поділитися
Вставка
  • Опубліковано 5 жов 2024
  • I've mostly been working on building out my networking infrastructure from my initial networking demo that I uploaded a few months back. This is just a scuffed showcase of it supporting basic social functions such as area/group/direct messaging, partying, buddying, blocking, etc.
    At a high level, in terms of basic 'megaserver' functionality, aside from my initial work handling hundreds of players in a single map, this supports the following across world instances.
    Chat - Sending/Receiving Messages [Maps/Parties/Whisper/Buddy]
    Message Group/Whisper Dropdowns
    Whisper buttons for buddy/party panels
    Sending/Accepting Requests [Buddy/Party]
    Offline target handling/Different character in same account for Buddy Requests (Regardless of specifying account name or character name)
    Buddy System *Account-wide
    Login notices
    Blocking (prevent incoming and outgoing buddy messages)
    Display online buddy location
    Buddy Group Management/Messaging
    Blocking System *Account-wide
    Apply to the entire account of a blocked character
    Auto-decline request
    Filter direct/area messages
    Party System
    Create/Join/Expel/Leave/Promote/Disband
    (ranting) Main issue with the chat box is there is some missing functionality/jankiness with the chat bar due to the TextInputComponent capturing all keyboard input and giving me nothing to work with while active (can't listen for tab key or up/down arrows to regenerate previous input). What makes this more fun is that it does send me key inputs if they are pressed around the same frame that I 'submit' the input, so if you type at a reasonably fast speed you end up getting duplicate input. So my options are either to just accept it and use as is while introducing a delay between submitting text and regaining character control, or re-write my own TextInputComponent from scratch and lose the ability for users to copy/paste input (since the engine doesn't provide a way to read/write to the user's clipboard). Also, don't even get me started on cursor-based input stuff.

КОМЕНТАРІ • 21

  • @nekrovile
    @nekrovile 3 місяці тому +4

    Always happy to see more from you. Hopefully Maplestory Worlds doesn’t take too long to come out on GMS.

  • @chillen_dev
    @chillen_dev  3 місяці тому +2

    Parts of the front-end (and capture area) are hella scuffed but that's a problem for future me to deal with.
    I ended up adding the networking infrastructure to handle a lot more than just social stuff so I'd rather start re-writing item data to no longer use the native MSW item system and support cool stuff like player rooms/trade/stores and party play/combat in the context of a unified "mega server" over the next month or so since I've already done a decent amount of the work required.

  • @eDy0n
    @eDy0n 3 місяці тому +1

    Sick!

  • @TheScrollguy
    @TheScrollguy 3 місяці тому +2

    Hey man,
    I make MapleStory-related content, and recently I made a video about Maple Worlds / Maple Lands. Your videos seem really interesting, and I'm eager to learn more. Would you be interested in talking a bit more on Discord about Maple Worlds? Perhaps I could interview you for one of my videos?

    • @chillen_dev
      @chillen_dev  3 місяці тому

      Thanks man! I just watched the video you mentioned, good stuff!
      I'd probably be down once I've had the chance to put out a prototype and go through the release process. Unfortunately, I don't think I'm qualified to speak too much as a developer until I actually publish something and gain experience operating a public world in MapleStory Worlds.

  • @sptoo123
    @sptoo123 3 місяці тому +1

    WOW. And I also curius about backend. Is the server need to be on Nexon?

    • @chillen_dev
      @chillen_dev  3 місяці тому +1

      The direct Client Server communication from Nexon's MSW Client has to go through their servers. However, you are able to setup intercommunication between their server/world instances and from their servers out to external data sources, which is what I'm leveraging here.

  • @KathryneKeyron
    @KathryneKeyron 3 місяці тому +1

    noice

  • @mannysran4239
    @mannysran4239 3 місяці тому +1

    Just stumbled upon your channel and this is looking mint! Are you looking for help with this project? Would love to chat about your development cycle and if you are planning for Global Release of MapleStory Worlds later this year. I used to do development for private servers back in like 2008-2011 era. Mostly develop in C#, T-SQL, React, Graphql these days for work.

    • @chillen_dev
      @chillen_dev  3 місяці тому

      Thanks. I'm not really looking for help at this time, but if you're looking to get into MSW development it is all in Lua.
      I am planning to eventually release on the Global version of MSW. Right now my process is fairly chaotic as I've mostly been experimenting with how far I can push MSW networking capabilities due to the 100 player/world instance cap.

    • @mannysran4239
      @mannysran4239 3 місяці тому

      @@chillen_dev Appreciate the lua tip, tried to watch some of the development videos Nexon released but without having the development tool myself it’s not as fun to follow along xD. Also don’t really want to go through the hassles / I find it sketchy of getting a temporary Korean SIN. So I was gonna wait for the release of NA worlds to start any real development.
      So this 100 player/world cap is a pretty big road blocker it seems. This is a problem maplelands is also facing?

    • @월화수목금토비-m6n
      @월화수목금토비-m6n 3 місяці тому

      ​@@mannysran4239 same

    • @chillen_dev
      @chillen_dev  3 місяці тому +1

      The only hassle you should need to go through is getting a VPN that includes KR as an region since the KR version of MSW is region-locked, you can just sign up with a gmail account so long as you are coming from a Korean IP address. The KR ID requirement is something that creators have the option to enforce so without one you won't be able to access servers that have opt'd into it such as mapleland, but you can still access the MSW platform itself.
      Mapleland is capped at 60 players/world instance/channel at the moment, however they have separate worlds for each region so those 60 players are all in the same region (victoria/el nath/ludi). My assumption is that they encountered performance issues on the server with more than 60 players online given that an old school type server is a bit more resource intensive then the typical mini-games that MSW was probably designed for. So really, the 100 player-cap seems more theoretical in nature for larger games like MapleStory remakes. From what I can see, all the popular fan-made MapleStory remakes on MSW seem to have set their player caps ~30-60 players/world instance, with most on the lower end of that.

  • @MyVoid312
    @MyVoid312 2 місяці тому +1

    Very cool project honestly Waiting for the maplestory worlds to go global... I wonder how much longer will they take they are so slow

    • @naemmograbi384
      @naemmograbi384 Місяць тому

      מההה אני לא מבין ?? באמת רוצים להחזיר את זה ????

    • @MyVoid312
      @MyVoid312 Місяць тому

      @@naemmograbi384 כן אבל מה שאתה רואה פה זה בחור שמשתמש בMapleStory Worlds שזה הבסיס והוא פשוט יצר שרת מייפל שם שעובד לפי מה שהוא תיכנת אבל יש גרסה שאמורה לבוא מקוריאה אלינו שמוכנה כבר הבחור פה עשה כמה דברים מגניבים אבל זו לא הגרסה המאסיבית שאמורה לבוא בכמה חודשים הקרובים

  • @페미제조기
    @페미제조기 3 місяці тому

    This video is not reliable. Many Korean developers have attempted this, but they haven't succeeded yet due to technical issues. It's a bit questionable to claim that this video alone proves it.

  • @엘프슈
    @엘프슈 3 місяці тому +1

    good