256 types of blocks (unless it is an 'anvil' map which has a 4096 limit of block-types).
The world is segmented into chunks 16x16x256 blocks which are grouped into "region" files. They are stored zipped but seems to be stored in raw structures when running the game.
Each block does not only have a type, but a damage/data value. There is probably also quite a bit of overhead...
The game is overall lacking from optimization and just 'work' on getting things streamlined only a tiny bit better. Focus seems to be on new features and not stability or optimization so we'll see how that evolves.
A medium sized server eats 2 gigs of ram easy... if you have a lot of players expect anywhere from 2 to 6 gigs of ram depending on the size of the world.
Network-wise it eats bandwidth like a fat kid on cake.. (I love mah cake!)
It is extremely sensitive to latency.. to the point that anything above 100ms makes it extremely dangerous to fight mobs like creepers as they will have blown up by the time you have hit it a second time with your sword.. So in MP it is almost always a 'bow and arrow' thing unless you have a local server.
When placing blocks any latency will cause you to "fall" through the block you placed if you are above it, until the game catches up and you're on top of the block again... Quite scary at times when building far up;)
Given the horrors other nations face with national healthcare,
I can get an appointment with my doc for 'critical' things mostly same day or next day.. If it can wait, I usually get in the same week...
Had to go to a specialist to have my wisdom teeth removed (due to nerve placement, tricky crud..) and had to wait a whole 6 weeks for that... But I have the option of paying it all out of pocket and go to a private practice should I chose to. I dont mind dodging a 5000 dollar expense by waiting a bit..
Had an accident at work (flying cat5 cable of snappiness) and it hit my eye.. got to my doc on the hour, got a referral to an eye doc, had a clear message of what was wrong and what to d oto fix it and had my eye-drops and crud before the end of the day.
My mother was recently diagnosed with polymyalgia rheumatica and she wont take a financial hit due to the very expensive treatment. She also got in to a specialist within a month of the issue popping up.
I dont personally have any issue with the public health service here in Norway. I honestly do not mind paying 35% income tax considering all the things I get in return.
Why would you use AES256 to generate a one-way-hash?.....
Using AES256 for storing passwords means that if you have a breach and the hacker gets hold of the database and has access to the login code you have given the attacker all user passwords in plain text....... Not a good thing.
If you get hold of the database of hashed passwords and emails of Site X you can be quite sure that a large number of people have used the same password for their email service.
So... By offline-cracking that list, you gain access to a pile of email accounts.. which again opens up all the sites the user has info on in their account (reset password etc..)
Exploiting a service means you can gain credentials to a service where you do -not- have a security flaw to exploit.
All in all using different passwords is of course a better idea, but people are lazy..
That isnt really what the low-user-id person was commenting on at all though.. We're talking about someone who has a clear design but still has to step through the code to 'verify' that each piece of code does what he or she thinks it does.
If you have to do that you do not have the required understanding. I have to admit that I have to do it from time to time, mostly when dealing with code that has little or no documentation and unclear purpose. That isnt really coding though, that is detective work of the worst kind:(
Stepping through is a good thing to have when debugging or even more important when learning. Doing it when writing code in a team though leads to pain for all involved..
.... McAfee..... my one true enemy in the corporate environment....
McAfee who has told the company that Chrome and Firefox are dangerous security risks.... They claimed Firefox was incredibly dangerous even while the world was on IE 8 and we were stuck in IE 6 land..... Why? "Oh, McAfee ScriptScan will block all scripts that are malicious"...
Kill me... SAP was unusable with McAfee... the only way to get the damn timesheets done was to break it on purpose *sigh*
The sad part is that the DRM doesnt matter if it is ever thrown up on a pixel-matrix...
Getting hold of the data will be possible, and as it gets harder and harder, people get MORE motivated to do it for bragging rights... the "Scene" is a nutty place;)
Only takes one person to make a rip, and all the DRM in the world wont help... (barring 'Trusted Computing' and such..)
The PS3 remained unhacked for quite a long time compared to all other consoles. Then they removed the "Other OS" option and they had an influx of people who wanted to do the classic "run linux on it" routine.
Booooooom, their security is broken.
While they might not want to cater for them for direct profit, they DO want to keep them happy in their modding bubble so that they dont spend their considerable skill-set to breaking every security feature of the box. THAT is worth the money.
There is a distinct difference between coding against vague requirements and just coding plain badly.
"If you work with data from the real world there's a point when logic and math alone won't work, you have to create hypothesis and test them against reality."
No. Just no. When you write code the code does what you tell it to do. If you need to step through it to see what the code did, you are coding hoping to get the correct outcome.
The issue of business logic and all sorts of customer requirements changing or being vague is entirely separate from the act of coding. You should not code it if you have no clear idea of what you want the code to do. Clarify it. Even if clarifying it is not an option, you have to have a clear idea in your head about what you want the code to do. If the issue is something as silly as 'we dont know if the customer wants an expense over X dollars to trigger reports or not" then you cannot implement the function without making a clear decision. Will it, or will it not trigger a report. You can code it to be easily changed later (check a config bool etc) but the code cannot do both at the same time.
What "Alex Belits (437)" is commenting on is people who write code, step through fixing mistakes as they go and when it provides the expected answer they leave the code as is... Such code almost always breaks down when it is fed corner cases or obscure data. The DESIGN is not there, just the code. If the coder cannot understand what the code does without stepping through how can anyone expect said coder to build good code?
When the Chaotic Moon guys were on Buzz Out Loud they went through that. They are working on a store directory system for the carts but it is a bit of a challenge as the location of goods change a lot more frequently than most think.
Another feature they were working on was a way to say scan a piece of food, and be able to query for say gluten free alternatives etc.
A teacher friend of mine had the class do problems on world of warcraft gear as "word problems". It was a direct result of a challenge to the age old "I will never use this".
When it can show that gamer that by setting up a simple spreadsheet he or she can gain 200 DPS, they sometimes see the light:p
When I left my previous job I left 12000 lines of badly commented and worse documented code behind.. The code runs the turnstiles and ticketing systems for an exhibition center... The nutters put me in charge of developing it from scratch with a hard deadline of 2 months in addition to an already 100% job... Soooo there is virtually no docs on the code... the code is littered with test logic.. There are STILL 4 years later pieces of error code that will print messages to the screen to call me on my cell... a number I still use *shudder*
Why was it left like that? I begged to go back and fix all the shit for a year after it was put in 'production'.. My boss wouldnt let me. Too expensive to document things. My time was better spent doing other things. I hate that my name is on the system... but that is how it goes.
Worst detail: The whole mess is not a compiled exe.. it all runs in debug mode from visual studio on a machine in a small cabinet..
That kind of mess is one of the major reasons to leave a job. It will just end up biting you in the ass if you keep working like that, even if it is not your fault it ends up that way. Get out as soon as possible..
It is the only way to avoid punching a hole in something unintentionally...
Most systems are so interconnected that doing much of anything without an understanding of what it will affect will break things in obscure and hard to detect ways.. until shit lights on fire:p
The protocol changed, but not the concept ;)
I redirect the email to a gmail account. I just set up a filter that nukes mail arriving to a certain address and I'm good.
A server without bukkit is mostly useless for anything but 100% trusted players... Which there are few...
Being able to control griefing and do rollbacks alone is a critical feature of bukkit that NEEDS to be there for a pay server..
256 types of blocks (unless it is an 'anvil' map which has a 4096 limit of block-types).
The world is segmented into chunks 16x16x256 blocks which are grouped into "region" files.
They are stored zipped but seems to be stored in raw structures when running the game.
Each block does not only have a type, but a damage/data value. There is probably also quite a bit of overhead...
The game is overall lacking from optimization and just 'work' on getting things streamlined only a tiny bit better.
Focus seems to be on new features and not stability or optimization so we'll see how that evolves.
You CAN however avoid loading the blocks that nobody is around, so the infinite map is not the limiting factor, number of players usually is.
A medium sized server eats 2 gigs of ram easy... if you have a lot of players expect anywhere from 2 to 6 gigs of ram depending on the size of the world.
Network-wise it eats bandwidth like a fat kid on cake.. (I love mah cake!)
It is extremely sensitive to latency.. to the point that anything above 100ms makes it extremely dangerous to fight mobs like creepers as they will have blown up by the time you have hit it a second time with your sword.. So in MP it is almost always a 'bow and arrow' thing unless you have a local server.
When placing blocks any latency will cause you to "fall" through the block you placed if you are above it, until the game catches up and you're on top of the block again... Quite scary at times when building far up ;)
I do this with a wildcard forward on my domain.
It has the added benefit of letting me know which sites got hacked when I start getting shit to a certain address..
Like when Curse.com got hacked a while back and I got phising mail for WoW etc.
Given the horrors other nations face with national healthcare,
I can get an appointment with my doc for 'critical' things mostly same day or next day..
If it can wait, I usually get in the same week...
Had to go to a specialist to have my wisdom teeth removed (due to nerve placement, tricky crud..) and had to wait a whole 6 weeks for that... But I have the option of paying it all out of pocket and go to a private practice should I chose to. I dont mind dodging a 5000 dollar expense by waiting a bit..
Had an accident at work (flying cat5 cable of snappiness) and it hit my eye.. got to my doc on the hour, got a referral to an eye doc, had a clear message of what was wrong and what to d oto fix it and had my eye-drops and crud before the end of the day.
My mother was recently diagnosed with polymyalgia rheumatica and she wont take a financial hit due to the very expensive treatment. She also got in to a specialist within a month of the issue popping up.
I dont personally have any issue with the public health service here in Norway. I honestly do not mind paying 35% income tax considering all the things I get in return.
Yes, but the 'boss' doesnt get that..
Why would you use AES256 to generate a one-way-hash?.....
Using AES256 for storing passwords means that if you have a breach and the hacker gets hold of the database and has access to the login code you have given the attacker all user passwords in plain text....... Not a good thing.
Try when you have to log onto a myriad of different systems with different passwords.
It is not possible for a sane person to remember upwards of 30 such random passwords which of course change every 60 days.... meh
If you get hold of the database of hashed passwords and emails of Site X you can be quite sure that a large number of people have used the same password for their email service.
So... By offline-cracking that list, you gain access to a pile of email accounts.. which again opens up all the sites the user has info on in their account (reset password etc..)
Exploiting a service means you can gain credentials to a service where you do -not- have a security flaw to exploit.
All in all using different passwords is of course a better idea, but people are lazy..
That isnt really what the low-user-id person was commenting on at all though.. We're talking about someone who has a clear design but still has to step through the code to 'verify' that each piece of code does what he or she thinks it does.
If you have to do that you do not have the required understanding. I have to admit that I have to do it from time to time, mostly when dealing with code that has little or no documentation and unclear purpose. That isnt really coding though, that is detective work of the worst kind :(
Stepping through is a good thing to have when debugging or even more important when learning. Doing it when writing code in a team though leads to pain for all involved..
.... McAfee..... my one true enemy in the corporate environment....
McAfee who has told the company that Chrome and Firefox are dangerous security risks.... They claimed Firefox was incredibly dangerous even while the world was on IE 8 and we were stuck in IE 6 land..... Why? "Oh, McAfee ScriptScan will block all scripts that are malicious"...
Kill me... SAP was unusable with McAfee... the only way to get the damn timesheets done was to break it on purpose *sigh*
The sad part is that the DRM doesnt matter if it is ever thrown up on a pixel-matrix...
Getting hold of the data will be possible, and as it gets harder and harder, people get MORE motivated to do it for bragging rights... the "Scene" is a nutty place ;)
Only takes one person to make a rip, and all the DRM in the world wont help... (barring 'Trusted Computing' and such..)
While they might not want power users.....
The PS3 remained unhacked for quite a long time compared to all other consoles.
Then they removed the "Other OS" option and they had an influx of people who wanted to do the classic "run linux on it" routine.
Booooooom, their security is broken.
While they might not want to cater for them for direct profit, they DO want to keep them happy in their modding bubble so that they dont spend their considerable skill-set to breaking every security feature of the box. THAT is worth the money.
There is a distinct difference between coding against vague requirements and just coding plain badly.
"If you work with data from the real world there's a point when logic and math alone won't work, you have to create hypothesis and test them against reality."
No. Just no.
When you write code the code does what you tell it to do. If you need to step through it to see what the code did, you are coding hoping to get the correct outcome.
The issue of business logic and all sorts of customer requirements changing or being vague is entirely separate from the act of coding. You should not code it if you have no clear idea of what you want the code to do. Clarify it. Even if clarifying it is not an option, you have to have a clear idea in your head about what you want the code to do. If the issue is something as silly as 'we dont know if the customer wants an expense over X dollars to trigger reports or not" then you cannot implement the function without making a clear decision. Will it, or will it not trigger a report. You can code it to be easily changed later (check a config bool etc) but the code cannot do both at the same time.
What "Alex Belits (437)" is commenting on is people who write code, step through fixing mistakes as they go and when it provides the expected answer they leave the code as is... Such code almost always breaks down when it is fed corner cases or obscure data. The DESIGN is not there, just the code. If the coder cannot understand what the code does without stepping through how can anyone expect said coder to build good code?
When they were interviewed on Buzz Out Loud this past week they talked about that very issue: :D
http://www.cnet.com/8301-19709_1-57388873-10/buzz-out-loud-1583-let-whurley-the-evil-genius-blow-your-mind-podcast/
When the Chaotic Moon guys were on Buzz Out Loud they went through that.
They are working on a store directory system for the carts but it is a bit of a challenge as the location of goods change a lot more frequently than most think.
Another feature they were working on was a way to say scan a piece of food, and be able to query for say gluten free alternatives etc.
The full interview can be found here: http://www.cnet.com/8301-19709_1-57388873-10/buzz-out-loud-1583-let-whurley-the-evil-genius-blow-your-mind-podcast/ :D
I can count on one hand how many times I have seen someone pay with cash at the local grocery store in the past few months..
Stores HATE cash here, use your debit card.. takes much less time (poke card in slot, punch 4 digit code, hit ok. YAY) and eliminates the wait.
A teacher friend of mine had the class do problems on world of warcraft gear as "word problems".
It was a direct result of a challenge to the age old "I will never use this".
When it can show that gamer that by setting up a simple spreadsheet he or she can gain 200 DPS, they sometimes see the light :p
Indeed.
More sane people please! :D
Yup, building a network of people is awesome.
Sometimes building relations is more important than money and you get paid in ways that are not immediately obvious.
If only more people worked that way :D
Yes. That is what most IT people will say.
It hurts but that is how it is.
When I left my previous job I left 12000 lines of badly commented and worse documented code behind.. The code runs the turnstiles and ticketing systems for an exhibition center... The nutters put me in charge of developing it from scratch with a hard deadline of 2 months in addition to an already 100% job...
Soooo there is virtually no docs on the code... the code is littered with test logic.. There are STILL 4 years later pieces of error code that will print messages to the screen to call me on my cell... a number I still use *shudder*
Why was it left like that? I begged to go back and fix all the shit for a year after it was put in 'production'.. My boss wouldnt let me. Too expensive to document things. My time was better spent doing other things. I hate that my name is on the system... but that is how it goes.
Worst detail: The whole mess is not a compiled exe.. it all runs in debug mode from visual studio on a machine in a small cabinet..
That kind of mess is one of the major reasons to leave a job. It will just end up biting you in the ass if you keep working like that, even if it is not your fault it ends up that way. Get out as soon as possible..
It is the only way to avoid punching a hole in something unintentionally...
Most systems are so interconnected that doing much of anything without an understanding of what it will affect will break things in obscure and hard to detect ways.. until shit lights on fire :p