Firstly I'd like to thank (patcac-patcac) for helping me out with lots of fixes
Well, I just fixed/edited/added lots of stuff into it, download and check it yourself.
The source is so messy but it's something you can start with if you're going to make your own Redux version too, so you can use it like source of ideas lol
I will keep that post as open source so I'll keep updating the post with what ever changes I make.
Again, the source is so messy it will be updated.
Let's just keep this as a develop thread, just for the newbies with C# as myself.
P.S: I didn't code all of the methods myself, there's some copy pasted methods I take no credits for this shits anyway. xD
New update: 21/8/16 - Version 017
1- Lottery working perfectly
2- Fixed some minor bugs.
New update: 11/10/16 - Version 018
1- Removed the GUI, the built in console & brought the original GUI back.
2- HealingRain, Nectar now healing the teammates.
3- Moonbox quest\spawn\drops now implemented.
4- ArrowsReload - Added.
5- Repairing now fully works. the calculation isn't 100% accurate but it's close enough.
6- Ghost channel - Added.
7- Map Names now showing on map the first when you access to this.map.
8- LuckyTime/Praying - Now ends on move, need more adjustment.
9- Charactar creation fixed, now the new created char goes to BirthVillage.
10- BirthVillage NPC's has been implemented.
11- TG - fixed minor bugs, still in progress.
12- Added spawns
what he said is your release is useless unless you fix the monster spawning issue. what he mean is that redux source can't handle massive monster spawn it will get you disconnected with high ping.
what he said is your release is useless unless you fix the monster spawning issue. what he mean is that redux source can't handle massive monster spawn it will get you disconnected with high ping.
what he said is your release is useless unless you fix the monster spawning issue. what he mean is that redux source can't handle massive monster spawn it will get you disconnected with high ping.
So that's why everyone ditching the soruce?!
Well, me and Patcac, already fixed lots of bugs and next thing we will fix is monsters spawning issues.
But that thread is not going anywhere since no one is contributing with us, i already have got the ver 026, ton of issues are fixed already including Flying, TG, Player creation, added BrithVillage npcs, Arrows reload, etc etc.
Well, got lots of things done but i see nobody cares about Redux anymore, even the owner doesn't support it anymore " the public ver ".
Quote:
Originally Posted by - D
Rains of bugs
That's true, since I start working with it, bugs was popping up outta no where, like I'm trying to fix something then I'm done with it and suddenly finding out that i opened the hell gate myself.
Well, me and Patcac, already fixed lots of bugs and next thing we will fix is monsters spawning issues.
But that thread is not going anywhere since no one is contributing with us, i already have got the ver 026, ton of issues are fixed already including Flying, TG, Player creation, added BrithVillage npcs, Arrows reload, etc etc.
Well, got lots of things done but i see nobody cares about Redux anymore, even the owner doesn't support it anymore " the public ver ".
That's true, since I started working with it bugs popping up outta no where, like I'm trying to fix something then I'm done with it and suddenly finding out that i opened the hell gate myself.
He spoke very well ..
I and I have no time but also helped him .
Well, me and Patcac, already fixed lots of bugs and next thing we will fix is monsters spawning issues.
But that thread is not going anywhere since no one is contributing with us, i already have got the ver 026, ton of issues are fixed already including Flying, TG, Player creation, added BrithVillage npcs, Arrows reload, etc etc.
Well, got lots of things done but i see nobody cares about Redux anymore, even the owner doesn't support it anymore " the public ver ".
That's true, since I start working with it, bugs was popping up outta no where, like I'm trying to fix something then I'm done with it and suddenly finding out that i opened the hell gate myself.
You might wanna look at the packethandler. Packets that come in use memcpy in some way.. i don't remember exactly, but I think it's written so it copies the buffer into another buffer for processing - that's not threadsafe and will blow up in your face with stackoverflow exceptions one day or another.
Basically while you copy the buffer, another packet can be received and then whatever you copy gets corrupted.
I suggest you rewrite the packet receive logic.
My memory on that issue is very faint, but I had to fix this issue for at least two other people a long time ago - if you look for the memcpy in the packet handler you should find the source of the problem.
Just wanted to let you know, that's all I remember, I can't help you any more than that.
You might wanna look at the packethandler. Packets that come in use memcpy in some way.. i don't remember exactly, but I think it's written so it copies the buffer into another buffer for processing - that's not threadsafe and will blow up in your face with stackoverflow exceptions one day or another.
Basically while you copy the buffer, another packet can be received and then whatever you copy gets corrupted.
I suggest you rewrite the packet receive logic.
My memory on that issue is very faint, but I had to fix this issue for at least two other people a long time ago - if you look for the memcpy in the packet handler you should find the source of the problem.
Just wanted to let you know, that's all I remember, I can't help you any more than that.
What do you mean it's not thread safe? It receives a packet from that client remote socket, copies it, processes that copy, and then receives the next packet from that socket. Nothing in parallel at all until you actually process the packet and modify collections (is that in this version?), which doesn't relate to that copy. On top of that, C# has its own Visual C Runtime per thread to prevent cross threading issues. So, what do you mean? What exactly did you fix?
Edit: Maybe a better fix suggestion for Redux would be to remove the GUI since (just like your server that got leaked) the main thread is defined using STA modeling. The server would also crash if the GUI crashes.
You might wanna look at the packethandler. Packets that come in use memcpy in some way.. i don't remember exactly, but I think it's written so it copies the buffer into another buffer for processing - that's not threadsafe and will blow up in your face with stackoverflow exceptions one day or another.
Basically while you copy the buffer, another packet can be received and then whatever you copy gets corrupted.
I suggest you rewrite the packet receive logic.
My memory on that issue is very faint, but I had to fix this issue for at least two other people a long time ago - if you look for the memcpy in the packet handler you should find the source of the problem.
Just wanted to let you know, that's all I remember, I can't help you any more than that.
Well, I've never worked with packets yet, so i will take my time study that.
Thanks for pointing that out, it's kinda hard for me to understand how everything is mapped in Redux so everytime I work on something new i study the mapping system over and over.. Haha.
Quote:
Originally Posted by SuperDaft
Edit: Maybe a better fix suggestion for Redux would be to remove the GUI since (just like your server that got leaked) the main thread is defined using STA modeling. The server would also crash if the GUI crashes.
The GUI really lags the server I'm aware of that, but it's not the main issue.
I was thinking about canceling the whole GUI out and rollback the concole indeed, but if you noticed even the original Redux soruce having the same issue with monsters so it wont change anything if I got the console running alone with no GUI, so i gotta re-designed spawn/map/ai system, just like Pro4Never had pointed out on some other thread.
I never really attended to host that on a server, form my knowledge it has some expoilts, not only 'cuz of the tons of the bugs.
Each thread in CLR has a separate Visual C runtime. Visual C++ is no different. When you call srand and rand, for example, that doesn't get called for other threads as it would traditionally in old C++ compilers. Even your precious Nim language does this. Go ahead and try it.
When you call srand and rand, for example, that doesn't get called for other threads as it would traditionally in old C++ compilers.
"that doesn't get called for other threads" - what does that even mean? ...
If I have some C++ program that creates two threads that calls srand, both threads call the exact same srand function.
I'm still not sure if I get what you're trying to say, though.
"that doesn't get called for other threads" - what does that even mean? ...
If I have some C++ program that creates two threads that calls srand, both threads call the exact same srand function.
I'm still not sure if I get what you're trying to say, though.
srand would traditionally call that function and initialize a random number generator for the entire process. I suppose you're spoiled in compilers, but that didn't used to be a thing that srand and C standard library functions would be isolated to the executing thread.
SuperDaft, Best Coder 2014 guys why you're following each other on every single thread trying to prove yourself right, who even cares about Go or C++, well if anyone does I don't give a flying ****.
I'm on my ******* early stages learning how to ******* code with C# you're making it so hard for me and for others to follow what you're both trying to prove!
Well, I'm sure that both of you got a point, even this sarcasm has it's way to teach someone thing or two, but seriously quit it and if anyone got something "useful" on topic he/she or it "cuz i dunno about SuperDaft xD" is welcome share!