Jump to content

Thejuster

Members
  • Posts

    28
  • Joined

  • Last visited

  • Days Won

    2

Everything posted by Thejuster

  1. Hello ty pandabro. :) New feature coming soon. RO Launcher Creator. It's a simple screen, Allow user to Add: Button, Image, Link, and more UI Tool. Just Right Click, Add-> Button (for example) Drag around Launcher, and add a simple event, like: Launch Application, Open ulr, Donwload file, and more. Can Resize and Move Control. Easy way, When your Launcher is ready. Just Right Click and Build. rAthena Studio Generate an Executable Application. Run and it's same to in Editor Now are under development, Adding a simple basic skin and pre-programmed events.
  2. New Feature rAthena Application Protocol Share System After user created a script, can share simply whit just a click. to Share button. If you have already installed and updated last version of rAthena Studio try to click here rathena://npc&fAcW1XUvdE or Copy special link and paste in your web browser. Automatically open content of Shared. NPC or Setting, script and more... So, if PRO user dont like Visual Scripting, can use Script Editor whit powerfull feature. Document Map, Syntax Highlighted, and folding marker. example Hope all like it.
  3. Hello Litro, nice job! But my MMORpgmaker is not refereced to Ragnarok Online. Is a MMORpg Engine. Ragnarok have inspired me to this tool. The hardest part is the server. Hope to find a good idea o solution for keep low ping and fast gaming. My idea is making 2 server. 1° Main Server For keeping Account alive ( Example, Manage all account, saving, reading etc. ) 2° Core Server for updating all Character position, animation, coordinates and chat
  4. Hi all anyone are interested a MMORpg game engine writted in C#? this is a my repo https://github.com/MakingItalia/MMORpgmaker Is an very old project started on sourceforge in DirectX 9.0c and re-writtend in C# Core DesktopGL After reading a lot time rAthena source, i have made a server like rAthena. Serialized Packet whit Header, and supports TXT database or MySQL. Here a simple screen for the Game Client The project is free and open source. Graphics Interface is based on Old Ragnarok Client Graphics. Like this Creating Chara Simple Empty Map If anyone want to join im here ? seeya
  5. Hi all, im back. Now rAthena Studio 2 is for Free and unlimited. Download full Application http://makingitalia.altervista.org/rAthena/rAthenaStudio2.rar After installed, Check Updates for download new updates.
  6. First beta is coming out. We are find a beta tester ( Accepted only rA Scripter ) Only 1 position available. PM me ?
  7. New updates: Modern flat UI For using tool, need to register to the forum. Then use credential for login. This process is necessary for download updates, new Scripted Module and prevent bot download or unauthorized use. Autmatically rAthena Studio give your avatar from forum and email allowed to use for the tool. after login just start wizard for easy server configuration. if you want join to beta, please ask to the forum or discord.
  8. rAthena Studio, Visual NPC Editor in action. Whit label, Message, Menu and Variable. Simple video to show how to work.
  9. First example how to work Visual Scripting and Generated Code.
  10. Hi all ? I haven't written any updates for a long time. Causes covid, life, work and more... Other full server configuration , i decide to implements a visual scripting editor like Blue Print (Unreal Engine) How to work is very simple, Just connect Node to Node, setting value, and the program, generate the npc script. The source code work like that. All nodes contains this function to generate code relative to parameters setting. public string CreateCode() { return map.Text + "," + x.Text + "," + y.Text + "," + dir.Text + " script " + name.Text + " " + graphics.Text + ",{"; } Really simple. And, this is Frontend Hope like this new NPC Editor. Actually need more time to create all Node and function relative to all npc command and sql operation. Follow for more news or join in rAthena Studio on discord ??
  11. Hello again try whit this error Connection refused: IP isn't authorised (deny/allow, ip: 127.0.0.1). changed structure to ulong and int to sbyte and work. i have an bytes array around 51bytes total if( (command == 0x0064 && packet_len < 55) And i think now work but server block 127.0.0.1 address
  12. Not work i see empty string only "Discord> " and nothing prontera,157,176,7 script Discord 47,{ //OnInit: while(1) { query_sql("SELECT * FROM `discordbot` WHERE `id`='1'", .@item); announce "Discord> " + .@item$ ,0,0x0965f9; sleep 3000; } } and try whit this prontera,157,176,7 script Discord 47,{ //OnInit: while(1) { query_sql("SELECT `messaggio` FROM `discordbot` WHERE `id`='1'", .@item); announce "Discord> " + .@item$ ,0,0x0965f9; sleep 3000; } } empty string.
  13. Hello i have made this NPC prontera,157,176,7 script Discord 47,{ //OnInit: while(1) { query_sql("SELECT * FROM `discordbot` WHERE `id`='1'", .@item); //query_sql("SELECT `messaggio` FROM `discordbot` WHERE `id` LIKE '1'", .@msg); announce "Discord> " + escape_sql(.@item[1]),0,0x0965f9; sleep 3000; } } My Table discordbot INT(10) VARCHAR (255) +---------+----------------------+ | ID | MESSAGGIO | +---------+----------------------+ | 1 | Hello World | +---------+----------------------+ On client i see: for wath reason i dont see my text from database?
  14. Hello, i need to call this functio when a player write a command actually are setted on /broadcast or /mes etc. can i reply? this function and redirect at_command for example " @message Hello " to this funciont? in order, need to implement more function ti this clif_broadcast. https://github.com/rathena/rathena/blob/master/src/map/clif.cpp#L6217
  15. Hello, anyone know who are function to send message to game? i have find this int channel_send(struct Channel *channel, struct map_session_data *sd, const char *msg) { int idx = 0; if(!channel || !sd || !msg || (idx = channel_pc_haschan(sd, channel)) < 0) return -1; if(!pc_has_permission(sd, PC_PERM_CHANNEL_ADMIN) && channel->msg_delay != 0 && DIFF_TICK(sd->channel_tick[idx] + channel->msg_delay, gettick()) > 0) { clif_messagecolor(&sd->bl,color_table[COLOR_RED],msg_txt(sd,1455),false,SELF); //You're talking too fast! return -2; } else { char output[CHAT_SIZE_MAX]; unsigned long color = channel->color; if((channel->opt&CHAN_OPT_COLOR_OVERRIDE) && sd->fontcolor && sd->fontcolor < channel_config.colors_count && channel_config.colors[sd->fontcolor]) color = channel_config.colors[sd->fontcolor]; safesnprintf(output, CHAT_SIZE_MAX, "%s %s : %s", channel->alias, sd->status.name, msg); clif_channel_msg(channel,output,color); sd->channel_tick[idx] = gettick(); } return 0; } Componen\map-server\channel.cpp but im not sure this is a correct function to send message in public chat to field.
  16. nice idea! i have try a test like your request first test working fine. but need more fix for speed reading on process. Untitled.mp4
  17. Hi, If interest, wanted to introduces you rAthena Studio. Is a Cross-Platform tool for manage, setting and configuring rAthena Server. Written in Qt C++. Compatible 100% for Windows, Linux and Mac. and OpenSource. Actually is in progress. But are available for testing and configure simple 4 step to run rAthena in public ip. Screen: Reposity is public and open for all future Developer and more. and Join on Discord Next, more feature, client patch and more....
  18. I need the page is called via npc without click on link or button In C# code example i call a webrequest whit WebClient string msg = "Hello"; WebClient wb = new WebClient($"http://mysite.com?message={msg}"); wb.Navigate(); //or wb.DownloadString(); // for response. i need a function like this if exist. or need to edit source code? if i need, name of the interested file?
  19. Hello, is possible whit npc send a webrequest or navigate. for example www.mysite.com/home.php?action=hi No need response but only send an action. No need url, or user to click on a link. Just send an GET action on url.
  20. nope ? uhmm here are a problem. look total size sent is 72bytes. Simple i pack command,verion,username,password,clienttype total = 72byte but rAthena server ask: static int logclif_parse_reqauth(int fd, struct login_session_data *sd, int command, char* ip){ size_t packet_len = RFIFOREST(fd); if( (command == 0x0064 && packet_len < 55) //For command 0x64 packet max lenght is 55 byte i use this. 0x64 || (command == 0x0277 && packet_len < 84) || (command == 0x02b0 && packet_len < 85) || (command == 0x01dd && packet_len < 47) || (command == 0x01fa && packet_len < 48) || (command == 0x027c && packet_len < 60) my packet size is 72byte but a conditional branch on server is limited under 55byte. Strange for me. No have idea for wath reason my structure is 72bytes. I follow step by step server parameters and Unmanaged conversion.
  21. Tanks Zell i try whit this example. First step is done but server cant read my username or password send in src/loginclif.cpp function /** * Received a connection request. * @param fd: file descriptor to parse from (client) * @param sd: client session * @param command: packet type sent * @param ip: ipv4 address (client) * S 0064 <version>.L <username>.24B <password>.24B <clienttype>.B * S 0277 <version>.L <username>.24B <password>.24B <clienttype>.B <ip address>.16B <adapter address>.13B * S 02b0 <version>.L <username>.24B <password>.24B <clienttype>.B <ip address>.16B <adapter address>.13B <g_isGravityID>.B * S 01dd <version>.L <username>.24B <password hash>.16B <clienttype>.B * S 01fa <version>.L <username>.24B <password hash>.16B <clienttype>.B <?>.B(index of the connection in the clientinfo file (+10 if the command-line contains "pc")) * S 027c <version>.L <username>.24B <password hash>.16B <clienttype>.B <?>.13B(junk) * S 0825 <packetsize>.W <version>.L <clienttype>.B <userid>.24B <password>.27B <mac>.17B <ip>.15B <token>.(packetsize - 0x5C)B * @param fd: fd to parse from (client fd) * @return 0 failure, 1 success */ static int logclif_parse_reqauth(int fd, struct login_session_data *sd, int command, char* ip){ size_t packet_len = RFIFOREST(fd); i see for command 0x64 ( Request login authentification ) S 0064 <version>.L <username>.24B <password>.24B <clienttype>.B my code Packet Structure [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)] struct DataPacket { public ushort command; public ulong version; [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 24)] //.24B byte, Server Code Ask 24B ( 24 Bytes ) public String Username; [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 24)] //Some 24 Byte Lenght public String Password; public byte clienttype; //is wrong? public byte[] Serialize() { // allocate a byte array for the struct data var buffer = new byte[Marshal.SizeOf(typeof(DataPacket))]; // Allocate a GCHandle and get the array pointer var gch = GCHandle.Alloc(buffer, GCHandleType.Pinned); var pBuffer = gch.AddrOfPinnedObject(); Marshal.StructureToPtr(this, pBuffer, false); gch.Free(); return buffer; } // this method will deserialize a byte array into the struct. public void Deserialize(ref byte[] data) { var gch = GCHandle.Alloc(data, GCHandleType.Pinned); this = (DataPacket)Marshal.PtrToStructure(gch.AddrOfPinnedObject(), typeof(DataPacket)); gch.Free(); } } DataPacket packet = new DataPacket(); packet.command = 0x64; packet.version = 55; packet.Username = "Thejuster"; packet.Password = "123456789"; packet.clienttype = 0; var bytes = packet.Serialize(); soc.Send(bytes); If i try to connect whit my code, i see this on server. I see username and password server dont read. Normal Connection whit Ragnarok Client Uhmmm i dont have idea for this problem. I have download roBrowser, and see src. because javascript and c# are similar. i find this i on source // 0x64 PACKET.CA.LOGIN = function PACKET_CA_LOGIN() { this.Version = 0; this.ID = ''; this.Passwd = ''; this.clienttype = 0; }; //Here i think the author build a packet structure. PACKET.CA.LOGIN.prototype.build = function() { // i think is a size of all packet //[2] Command + [4] ???? No have idea. + [24] Username + [24] Password + [1] Client type var pkt_len = 2 + 4 + 24 + 24 + 1; var pkt_buf = new BinaryWriter(pkt_len); pkt_buf.writeShort(0x64); pkt_buf.writeULong(this.Version); pkt_buf.writeString(this.ID, 24); pkt_buf.writeString(this.Passwd, 24); pkt_buf.writeUChar(this.clienttype); return pkt_buf; };
  22. Tanks jchcc i miss Last param hehe . Clienttype But one question. .L .24b .B is?
  23. Hello i try to make a discord bot whit potential feature. One my problem is try to connection in rAthena Server. Actually i use c# my code //Setting Socket soc = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); IPAddress ip = IPAddress.Parse("127.0.0.1"); IPEndPoint host = new IPEndPoint(ip, 6900); soc.Connect(host); //Static Packet byte packet = 0x64; byte[] id = Encoding.ASCII.GetBytes("Thejuster"); byte[] pass = Encoding.ASCII.GetBytes("123456789"); //Packet Builder List<byte> pacchetto = new List<byte>(); //Assembly packet pacchetto.Add(0x64); foreach(byte b in id) { pacchetto.Add(b); } foreach(byte b in pass) { pacchetto.Add(b); } //Send full pachet soc.Send(pacchetto.ToArray()); When i try to connect, rAthena Login Server say this: anyone know reason of this problem?
  24. tanks @MathReaper and @Anacondaqq i go to check
  25. Thejuster

    Hi All

    Hello, Im a Thejuster. ( Sorry for my english, im italian ) Old member from eAthena. 35 year old, and C# Senior Microsoft Qualified (MVP ) programmer. Know under 20 programming languague. One my project is Mire Engine aka MMORpgmaker. is a Cross-Platform RPG / MMORPG game Engine totally written in C# DirectX / OpenGL. Supporting LUA, Javascript and WebGL. Support, NormalMap, Deferred 2D Lighting system, and more feature. We recived more award from Brothersoft, softpedia and more web app hosting. screenshoot if want seen my first play to ragnarok uhmm, think 2002. i love this game, and maybe i can support rAthena whit tool and varius release. Seeya :)
×
×
  • Create New...