Jump to content

Thejuster

Members
  • Posts

    19
  • Joined

  • Last visited

  • Days Won

    1

Thejuster last won the day on February 24 2019

Thejuster had the most liked content!

2 Followers

About Thejuster

  • Birthday 10/08/1984

Profile Information

Contact Methods

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

Mood

  • Happy
  • Currently Feeling Happy

Thejuster's Achievements

Poring

Poring (1/15)

12

Reputation

  1. 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
  2. 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'", [email protected]); announce "Discord> " + [email protected]$ ,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'", [email protected]); announce "Discord> " + [email protected]$ ,0,0x0965f9; sleep 3000; } } empty string.
  3. Hello i have made this NPC prontera,157,176,7 script Discord 47,{ //OnInit: while(1) { query_sql("SELECT * FROM `discordbot` WHERE `id`='1'", [email protected]); //query_sql("SELECT `messaggio` FROM `discordbot` WHERE `id` LIKE '1'", [email protected]); announce "Discord> " + escape_sql([email protected][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?
  4. 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
  5. 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.
  6. 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
  7. 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....
  8. 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?
  9. 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.
  10. 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.
  11. 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; };
  12. Tanks jchcc i miss Last param hehe . Clienttype But one question. .L .24b .B is?
  13. 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?
  14. tanks @MathReaper and @Anacondaqq i go to check
  15. 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...

Important Information

By using this site, you agree to our Terms of Use and Privacy Policy.