audetas / krelay Goto Github PK
View Code? Open in Web Editor NEWA modular Realm of the Mad God man-in-the-middle Proxy
A modular Realm of the Mad God man-in-the-middle Proxy
In order to avoid confusion and to be more organized, should we force plugins to state what commands they use? They would then be displayed in the plugin info region on the UI.
We would add a method to the IPlugin interface:
As the title states, when you send a packet through client.SendToClient or SendToServer, the packet is sent to the client/server without going through the proxy's packet handlers. Few reasons why we should make the packets go through proxy:
Not so much the entire plugin I just don't want my client to reload a map whenever I go back to it without having to remove the autonexus.
I'm sorry that I have to put this here but I'm at school and theres no Skype.
But you were looking for the white collumns in the vault and I think you may need this :
http://static.drips.pw/rotmg/testing/current/obj/
Forgetting for a second this stupid error
Is there a specific reason we want to have the reconnect handler in a plugin and not built in the core? I understand a user might want to store past reconnections to reuse them (the usual /recon). But isn't it better if we allow that as a separate action?
Minor quality of life improvement, being able to specify a logging level with PluginUtils.Log
(eg Debug
, Info
, Warning
, Error
) and then filter what's shown in the logs would be useful.
Edit already done by #38
:(
Hi Krazy! Can you please tell me how to use this new version? I used your previous ones but I can't seem to find the .exe on this one. Sorry for being dumb. :(
From Hello.as (http://pastebin.com/EyP84qBE) a new field named userToken is only on this version.
I created a small k relay like proxy in c and here the result (http://pastebin.com/Y29feNTq) you can see this new field at the end of the packet.
That's quite an obvious one...The client tries to save the packet...but the host is altered to localhost so when its time to reconnect, the client connects to localhost duh
Would help to be able to read the raw XML so that you can find, for example, which bullets are armor piercing and which one's aren't. This could be done by either allowing plugins to access the XML resources, or adding something to Serializer
that will give you raw XML.
For now reflection works but obviously that's undesirable.
Is it a proxy issue? Make sure (if you use an orape client) to disable anti-theft in the F1 options menu, it will logout everytime you enter the nexus
While using krelay whenever a Mystic curses something it shows that the enemy is dazed too without actually being dazed.
i'm retarded, ignore this
I gitignored it, PLEASE leave it out and handle /Plugins and /xml locally, working with debug files is stupid and the repo keeps on going out of sync
When I try to play on the proxy server,the k-relay gives me the following error:
[Error] An exception was thrown
within PacketSend (packet = DEATH)
at <>c__DisplayClass38_0.b__0
System.NullReferenceException: Object reference not set to an instance of an object.
at Lib_K_Relay.Networking.Client.<>c__DisplayClass38_0.b__0() in E:\K_Relay-master\Lib K Relay\Networking\Client.cs:line 176
at Lib_K_Relay.Utilities.PluginUtils.ProtectedInvoke(Action action, String errorProvider, Type filteredException) in E:\K_Relay-master\Lib K Relay\Utilities\PluginUtils.cs:line 38
[Client] Disconnected.
[Error] An exception was thrown
within RemoteRead (isClient = True)
at NetworkStream.BeginRead
System.ObjectDisposedException: Cannot access a disposed object.
Object name: 'System.Net.Sockets.NetworkStream'.
at System.Net.Sockets.NetworkStream.BeginRead(Byte[] buffer, Int32 offset, Int32 size, AsyncCallback callback, Object state)
at Lib_K_Relay.Networking.Client.BeginRead(Int32 offset, Int32 amount, Boolean client) in E:\K_Relay-master\Lib K Relay\Networking\Client.cs:line 188
at Lib_K_Relay.Networking.Client.<>c__DisplayClass40_0.b__0() in E:\K_Relay-master\Lib K Relay\Networking\Client.cs:line 235
at Lib_K_Relay.Utilities.PluginUtils.ProtectedInvoke(Action action, String errorProvider, Type filteredException) in E:\K_Relay-master\Lib K Relay\Utilities\PluginUtils.cs:line 38
[Listener] Client received.
Could've made a pull request but I'm not very familiar with git yet..
float.Parse() can fail on locales where decimal numbers are represented as "12,34" instead of "12.34" (comma vs dot). It does atleast on Finnish Windows.
Easy fix that seemed to work for me: change Lib K Relay / GameData / ParsingExtensions.cs / ParseFloat to:
return float.Parse(input, System.Globalization.CultureInfo.InvariantCulture);
Looking through the MapCacher source code it seems like all it does is collect data, never actually sending it to the client like it says it does. I can try and make a functional version if you want.
Again some change with the new version
Edit. Some change I just found
https://puu.sh/rGwvx/7bc55be768.png
https://puu.sh/rGwyo/f899bd1671.png
https://puu.sh/rGwEA/580dc79166.png
https://puu.sh/rGwHS/11dcd4ebff.png
The new packet
https://puu.sh/rGwMJ/9869ff8d99.png
https://puu.sh/rGwQ8/8178f363cf.png
I'm writing a plugin that, when finished, I think would be good to include in K-Relay by default. Once it's finished, can I add it to the solution and make a PR for it?
When I start, this appears.
I do not know if it's me that's doing something wrong
[Listener] Stopping local listener...
[Error] An exception was thrown
within LocalConnect
at <>c__DisplayClass6.b__3
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.