Zircon code, an outsider view

JK MaxOne

LOMCN Rookie
Jun 7, 2019
15
5
14
I'm just a nobody here, new to the forum, and so not associated with any of you. :)

I recently posted a 'venting' post, and unintentionally brought up some 'histories' between some of you guys (apologies for that).
It appears some of you are not very good at taking criticisms. Specially, when Jamie's work is involved, as if any criticisms are heresy.

Though, you guys do remind me of my younger engineer self (full of ego, the smarter guy in the room).
Here's something I learned as I got older ...

1) "One takes criticism 'personally', it is because THAT work is their BEST work."
2) "When someone criticizes your work, it is the 'work' that is in question ... not your skill"


- I refuse to believe that Zircon was the best work from Jamie. I like to believe that all those 'compromises' made, were 'conscious choices' to meet a schedule. When you look at the source code, it shows exactly that.

- We know Jamie had to compromise. To do all 4 major components in MMO (UI, Protocol, Compute, Storage) in 12 months, you only have 3 months for each. So compromises were made, specially at UI and Compute.

- Jamie was able to "complete" the project because he was 'willing' to make such compromises. Most 'great engineer' don't do that, and become obsessed in getting a single component 'perfect' for months and years.

... this is why 'great engineers' have hard time releasing "complete" app, and most of them work on library (or update/extend existing).
... this is also why big company releases soft that are "not perfect".

- Having said all that, all the 'compromises' are all there to see. They do suck. If I was Jamie, I would not even defend them.

- The source code also shows why Jamie released the source code. Because, he was burned out; from all the compromises decision he made.

As every system (drop, inventory, spell, etc ...) are spread out all over the place, it requires him to remember all the places that need to be changed for a particular system.

"The more stuffs you need to retain in the brain to be 'productive', the less sleep you get.
The less sleep you get, you get burned out.
Once you are burned out, every thing you see in the world is 'shitty' .. including your own work."


- Devs (such as DJ) will eventually burn out after 12 months (unless motivated by some other means).
That's the nature of this particular code base. It does not scale. And, the more feature you add, the 'heavier' it becomes ... exponentially.

- Just because (some) part of Jamie works are being criticized, it does not mean Jamie's effort was not respected.
Jamie's work is INSPIRING. It truly is. But it is also disappointing the deeper you dig in.

- The fact that devs (such as DJ) are still working on it, shows they see 'potential' in Jamie code base. And, in turn, respect for Jamie's work.
But the code base is 'dirty'. It requires 90~% refactoring to be sustained.

And, the fact that Jamie (the owner himself) did not bother to refactor before public release, show how messy the code base is.

... The point is that, people do LOVE Jamie's work. But at the same time, they would hang themselves with it.
That's the conflict. It got nothing to do with questioning Jamie's ability.
So be cool, ok? :)
 
Last edited:

Piff1

Legend
Dedicated Member
Apr 17, 2015
2,864
422
125
Africa
Nobody is claiming Jamie's code is perfect but it's just funny how the people using it and making money off pretty much Jamie's base code can constantly slag it off every chance they get, why not fix the parts of the code you think are so bad and let your work speak for itself in game?


Pointless thread anyway as you clearly haven't been following the constant **** storm between zed/dj/jamie. Nobody ever claimed Jamie work was perfect but remember before Zircon yo'll bitches were playing 30FPS files lul.
 

Lionsm!ght

Dedicated Member
Dedicated Member
Aug 28, 2015
540
137
85
It's not critism of his work that people don't take to its the swipes at everything abouy from a certain few who complain about an open source files, which they immediately forked and worked on encrypting, and contributed nothing further to.

If you actually only joined lomcn this month then you won't know of anything about the history between zed/dj and Jamie.

The tl:Dr of past 2 years between them is
Zed relaunches his mir3 server using gsp files, which play like **** on 99% on a pc Windows 7 or higher. They are also closed sourced so nothing but npc scripts and dB changes can be done.
Dj helps him improve stability by apparently creating a dxwrapper which resolves nothing for most people. Anyone who claims/shows this not working is ignored or insulted by them.
Jamie announces working on mir3 server and creates one in around 6months (remember lib files already exist and Jamie has experience creating server files so is more efficient)
Zed/Dj say it feels/looks/plays nothing like mir3 and is **** etc.
They create some fake accounts and pretend to have Jamie's files and claim they will release - turns out to be all bs to try stop ppl playing Jamie's server.
They close their GSP server and proclaim they are working on their own source replicating Korea, the infamous ZenX source.
Roll on 18months or so Jamie stops working on his server (however keeping it running for ppl to still play) and still no sign of Zeds/Dj server.
Jamie releases the source files to help the mir3 community as it has no stable files.
Zed/Dj drop their source faster than they could fork the zircon source.
Instantly work on making their version closed source and not contribute anything to the github. There server ad is all about this rather than what they have changed gameplay wise (which was pretty much remove content after snow and minor tweaks on anything before, pretty much a copy paste job)

Eventually make a server using Zircon source (see above on how they slated it when only Jamie had it) ,
All their encryption etc causing virus flags and multiple gameplay bugs and crashes which don't happen on other servers.

They attempt to blame the source saying its ****.

Still yet to raise 1 github fix or even attempt to discuss any flaws they found or offer solutions, nevermind not contributing anything. If you play their server it still to this date has very little difference to the original, aside from some mob highlighting and using some newer Korean images.

Even the parts storage tab they still took from the repo after I added to it, and then modified it to limit the space unless you pay in cash shop for more spaces. (showing they are after the ££). I logged on the other day to see what had changed and its still not got anything they said they was going to add gameplay wise (numa Hill, free pass games like mir craft, crafting etc). They added an animated boat on a sea qwhich you have to stand on for 30 seconds to get a daily quest, I mean thats some ground breaking stuff and progress there. It's still 95% zircon gameplay. It's been up months and they have fixed bugs they have created themselves and added nothing much yet continue to slag it off.

Back to your main point about the code quality. Personally I haven't touched any coding since leaving uni, so don't code professionally just in my spare time, however I find it to be easily readable and quite easy to maintain and expand upon.
Remember we are talking about a game that even with extreme hype etc would struggle to achieve 500 users, it's not designed to be a AAA title with thousands of concurrent users

Feel free to offer up some discussion on what you think is badly structured and how you think best to resolve it. It is an open source project after all. If everyone just critiques and offers no solutions then it will go no where
 

JK MaxOne

LOMCN Rookie
Jun 7, 2019
15
5
14
Nobody is claiming Jamie's code is perfect but it's just funny how the people using it and making money off pretty much Jamie's base code can constantly slag it off every chance they get, why not fix the parts of the code you think are so bad and let your work speak for itself in game?

Pointless thread anyway as you clearly haven't been following the constant **** storm between zed/dj/jamie. Nobody ever claimed Jamie work was perfect but remember before Zircon yo'll bitches were playing 30FPS files lul.

You are right, I don't really know your back stories and why are you so bothered by Zed and DJ. I'm just asking that you guys not to take it 'personally' when people make comments on Jamie code base. To help 'improve it' (as you commented), we need to criticize it, no?

Regarding Zed/DJ not releasing changes, it is quite normal. I would not have release them myself. I bet you would not do so as well on something you worked for months. There is not incentive to do so. But, if you ask DJ (or any dev) how they did a particular feature, I'm sure they will happy to share the 'idea'.

Btw, as you are so friendly with Jamie, why not team up with Jamie. Devs are good coder but kind of suck as admins. :) That's why Jamie closes and reopens servers. Because when Jamie is 'burned out', he gives up (typical for devs). Jamie needs someone to help him in admin role, to complement with his technical ability.
Post automatically merged:

It's not critism of his work that people don't take to its the swipes at ...

Thanks for the detailed back story. Very interesting drama :)

Again, from the outsider view, what I see from your detailed story is that Zed/DJ had a clear (a bit aggressive) goal in mind.
They wanted a small business running mir3 server. I don't see anything wrong with that, as machines, electricity and bandwidth are not free.

Now of course, if they did back stabbed peoples to get here, would an apology to the community enough for everyone ... so people can just move on?
Not releasing their source changes is a separate issue (at least from my point of view). Jamie made his choice. Everyone one else make theirs.

About the code quality. The answer from me will be a question to you. Sorry :)
When you did the parts inventory. How long did it take you? And, did you 'feel' it could have been done 'faster'?
.. not that you 'hope' it would be faster, but that if the code was structured in a particular way, it would had been done faster?
Now, if you felt it was 'fine'. Then, it is fine. It's perfectly ok. :)

For concrete example, what do you see ...

https://github.com/Suprcode/mir3-zircon/blob/master/Client/Controls/DXItemCell.cs

... if you don't see anything wrong, then our design discussion ends here :)
 
Last edited:

Piff1

Legend
Dedicated Member
Apr 17, 2015
2,864
422
125
Africa
You are right, I don't really know your back stories and why are you so bothered by Zed and DJ. I'm just asking that you guys not to take it 'personally' when people make comments on Jamie code base. To help 'improve it' (as you commented), we need to criticize it, no?

Regarding Zed/DJ not releasing changes, it is quite normal. I would not have release them myself. I bet you would not do so as well on something you worked for months. There is not incentive to do so. But, if you ask DJ (or any dev) how they did a particular feature, I'm sure they will happy to share the 'idea'.

Btw, as you are so friendly with Jamie, why not team up with Jamie. Devs are good coder but kind of suck as admins. :) That's why Jamie closes and reopens servers. Because when Jamie is 'burned out', he gives up (typical for devs). Jamie needs someone to help him in admin role, to complement with his technical ability.
Post automatically merged:



Thanks for the detailed back story. Very interesting drama :)

Again, from the outsider view, what I see from your detailed story is that Zed/DJ had a clear (a bit aggressive) goal in mind.
They wanted a small business running mir3 server. I don't see anything wrong with that, as machines, electricity and bandwidth are not free.

Now of course, if they did back stabbed peoples to get here, would an apology to the community enough for everyone ... so people can just move on?
Not releasing their source changes is a separate issue (at least from my point of view). Jamie made his choice. Everyone one else make theirs.

About the code quality. The answer from me will be a question to you. Sorry :)
When you did the parts inventory. How long did it take you? And, did you 'feel' it could have been done 'faster'?
.. not that you 'hope' it would be faster, but that if the code was structured in a particular way, it would had been done faster?
Now, if you felt it was 'fine'. Then, it is fine. It's perfectly ok. :)

For concrete example, what do you see ...

https://github.com/Suprcode/mir3-zircon/blob/master/Client/Controls/DXItemCell.cs

... if you don't see anything wrong, then our design discussion ends here :)

So your logic is for a 500 at most usercount community, Zed/Dj should use a open source files which they claim are super buggy, yet won't release any fix's to these so called bugs? Good Logic Pal.
 

JK MaxOne

LOMCN Rookie
Jun 7, 2019
15
5
14
So your logic is for a 500 at most usercount community, Zed/Dj should use a open source files which they claim are super buggy, yet won't release any fix's to these so called bugs? Good Logic Pal.

I'm getting the feeling that you have a different definition of what 'open source' means. Do correct me, if I misunderstood.

There is a difference between 'ownership' and 'credit'. When a source code is released as 'open source', it becomes 'public'. Meaning, it does not belong to anyone anymore. And, no-one owes anything to Jamie by using it. But, it is still 'credited' to Jamie (the creator) and no-one can take that away from him.

So, when someone else take the stuffs from 'public space' and 'add stuff' to it, the 'additional stuffs' are not required to be public. As I remember reading somewhere, Zed did asked about the licensing agreement of the Zircon open source.

Let's have a thought experiment. Imagine Zed/DJ do release their source code today. Now, you can run a server that is exactly like ZetaurX. What make you think the users would want to restart in another server (which has the same features) from level 1? Would you?
Then, following the startup, any 'fixes' are dependent on ZetaurX releases. Which means, your server will always be BEHIND ZetaurX. How is that a good plan?

As of today Zincon source code is just a 'baseline'. It is not the 'end all' for MIR 3. You can always, extend it. Have a server that has a feature that no one have. Imagine having a feature where players can build castles themselves. Do you not think all those 500 users would sign up to your server? Game users have no loyalty.

If you are serious about this, commit yourself to it like a business. If you don't have tech skill, partner with someone. :)
 

ventus

LOMCN Veteran
Veteran
Oct 17, 2013
926
132
105
The only problem is its too damn good :p Thanks again guys who contributed to the github. Gods work.(for us noobs who cant code and want a decent server to play around with)
 

Pottsy

Legend
Legendary
Feb 26, 2004
3,275
252
329
I'm getting the feeling that you have a different definition of what 'open source' means. Do correct me, if I misunderstood.

There is a difference between 'ownership' and 'credit'. When a source code is released as 'open source', it becomes 'public'. Meaning, it does not belong to anyone anymore. And, no-one owes anything to Jamie by using it. But, it is still 'credited' to Jamie (the creator) and no-one can take that away from him.

So, when someone else take the stuffs from 'public space' and 'add stuff' to it, the 'additional stuffs' are not required to be public. As I remember reading somewhere, Zed did asked about the licensing agreement of the Zircon open source.

Let's have a thought experiment. Imagine Zed/DJ do release their source code today. Now, you can run a server that is exactly like ZetaurX. What make you think the users would want to restart in another server (which has the same features) from level 1? Would you?
Then, following the startup, any 'fixes' are dependent on ZetaurX releases. Which means, your server will always be BEHIND ZetaurX. How is that a good plan?

As of today Zincon source code is just a 'baseline'. It is not the 'end all' for MIR 3. You can always, extend it. Have a server that has a feature that no one have. Imagine having a feature where players can build castles themselves. Do you not think all those 500 users would sign up to your server? Game users have no loyalty.

If you are serious about this, commit yourself to it like a business. If you don't have tech skill, partner with someone. :)

No one is claiming ownership of anything lol. But I guess this is just this community down to a tea :D I could say plenty about Jamie, but to slag his work off when he's actually willing to release what is now 2 different sources and the grounds for Mir2 and Mir3 servers is astonishing.

Imagine slagging Far and co. off after continually retrieving updates from the repo and then making a post "Oh, look at this update Far just did, it's pretty ****"

If you were decent, you point out the flaws, correct them and offer them to the repo to improve upon the source.

Your first instinct should not be to encrypt the source to prevent prying eyes, and then bastardise the source with pointless changes and buggy coding (This was evident by the shoddy work around attempts to fix their black map bug, but was brought on by their bad coding to begin with lol), then to go slagging off the original source almost as if it was to blame.


But to answer your thought experiment...no, if ZenX source was released, I wouldn't use it. Skipping over the fact that antiviruses would continually be a problem because of the encryption, it has nothing useful to use. The spell changes did nothing to further promote the attractiveness of the game, what was referred to as the "feel of Mir3" lol, in fact only served to give me headaches almost every day i played as it was like looking at direct sunlight all day. The "big maps" are ****, and in the name, fking huge, they as a team wasted so much time on them and it's provided nothing but annoyance.

Funny thing is a bunch of us talked about them both a while ago. To run either of these sources, you wouldn't "Add" anything to make them better...you would actually remove content lol, because they have "content" that actually make the gaming experience worse.

ZenX actually has more "content" that i would remove to make the game better, which is why i wouldn't use it. Zircon for what it was, the players it can support and the real usefulness to the effects of the actual game play is why it's the preferred source.

Until they actually create something new themselves and is actually classed as real content, it won't be superior to Zircons. There is nothing desirable about their source.


Of course we're aware that the Zircon source is not the end of all sources...at least not if Jamie sticks around. But currently he is the only one willing to contribute. As i mentioned, he's produced 2 sources from scratch, a pretty massive task that no one is understandably willing to do.

We at least have contributors willing to continue the sources, but if the backbone is only capable of what Mir is really meant to be, then whats the problem? No one for example, is going to care about building their own castles lol...so why have the coding support it?
 

Tai

HEAD CAPTAIN
Staff member
Administrator
May 11, 2003
14,311
2
2,694
515
United Kingdom
Another "I'm new here" type of guy Without even looking I can tell this guy is probably the same dude who wanted to reverse engineer the zircon client a few months back.

Anyways these posts are too long for me to read rn but it looks juicy so by all means continue

Sent from my Nokia 7.1 using Tapatalk
 

JK MaxOne

LOMCN Rookie
Jun 7, 2019
15
5
14
Another "I'm new here" type of guy Without even looking I can tell this guy is probably the same dude who wanted to reverse engineer the zircon client a few months back.

Anyways these posts are too long for me to read rn but it looks juicy so by all means continue

Sent from my Nokia 7.1 using Tapatalk

By all means, remove the post if this is just junk/spam on your web server. Replying to this actually take away time from me. Thank you.
 

Martyn

Smir.co.uk
Staff member
Administrator
Mar 24, 2003
3,807
2
849
400
Kent - UK
Nah tai it isn't easymode...

tbh if it wasn't for easymode (rip) Jamie would have probably never released.... just wish he tried to prove the flaws in Zircon a different way!
 

JK MaxOne

LOMCN Rookie
Jun 7, 2019
15
5
14
Forgive me for not wanting to pick through 2 and a half thousand lines of codes looking for problems but what is it exactly you see "wrong" with zircons item cell code?

Btw, I didn't mean to imply that : because you don't see anything wrong with it, you are a bad designer. What I meant was: if you don't see anything wrong, you have a different design phylosophy ... which is perfectly ok. Thus, no point of discussing further on subjective views.

I didn't mean to pick a fight. The example was to show that you can tell Jamie knows the 'stuff'. But, at some point in the implementation, he gave up and 'compromised' ... took a shortcut (which is easier to do, in fact). By the time, he realized of the structural problem, it was too late and too big to refactor out. And now, contributors treat it like 'zircon standard' so they follow it.

It is perfectly ok, if you find it perfectly ok. Lion asked me about it, so I just show an example of my of point of view.
 

Chalace

Dedicated Member
Dedicated Member
Jan 18, 2014
1,823
275
125
for example, is going to care about building their own castles lol...so why have the coding support it?

Way to **** on my additions :(
I'm doubling the resource cost for your castle!
 

zedina

Mir3 Dev
Legendary
Dec 22, 2005
3,168
1
1,017
340
last time i heard about easymode was reverse engineering a closed version of sapphire
 

JK MaxOne

LOMCN Rookie
Jun 7, 2019
15
5
14
Any chance you can expand on it properly? Lol

Are you being sarcastic or serious? :) If you worked on Zircon UI stuff before, you would see it. You might be ok with it, but it is still there.
Post automatically merged:

No one is claiming ownership of anything lol. But I guess this is just this community ...

Again, I'm an outsider and didn't go through the drama you went through so I do have a bias. From my point of view though, the 'two camps' are approaching from different point of view.

Zed/DJ approach this as 'business opportunity' as the 'motivator'. In that, they hope it could go somewhere. From that point of view, wouldn't you want to protect your assets? Lions (for example), loves making contribution for others (and maybe because the change was not difficult for him/her :)), so it was not a big deal giving away the 'control' publicly. Both are choices people make, having different goals.

About : "Oh, look at this update Far just did, it's pretty ****"
You guys should not read too much into those type comments. People who are self-driven, passionate and competitive have a bit of ego, specially when they are younger (13~ to 35~) .. including myself. They say stuffs like that because 'someone just created something better', and it 'hurts'. But that feeling of 'hurt' drives them further to get better. You might no like this type behavior but that's what 'good engineers' are. The difference is that, PROs learned not to say is out loud or show emotion.

No disrespect to you :), the 'thought experiment' was tailored for 'Piff1', not in general. My impression was that, Piff1 wanted to run a business like Zed/DJ and Piff1 commented that Zed/DJ are taking over the limited market share. The experiment was to make realized that you do not take away other's market share by becoming dependent on them. That is all. All examples are just ... examples. :)

Btw, can I ask something? From the (https://github.com/Suprcode/mir3-zircon) histories, Lions was the last who made changes. That is, Jamie himself did not merge any bug fixes. Why are you guys not bothered by that, instead so bothered by Zed/DJ? Am I missing something here? I would have pushed Jamie to make fixes since he knows his own work the best ... and can do it faster than anyone.
 
Last edited:

zedina

Mir3 Dev
Legendary
Dec 22, 2005
3,168
1
1,017
340
The reason we dont release anything its because @DjDarkBoyZ is working hard on the files to improve and i dont think its normal for others to simply just take it.

How other discussions were on discords, you guys are pathethic trying to improve Crystal Library and then trying to use Zircon Library while ZenX Library built from 0 by DJ can get any big image without any lossless and other technical stuff that im not good at it.

"omg why they encrypted the client?" - thats why ;)
 
  • Like
Reactions: DjDarkBoyZ