Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Post
  • Reply
Double Punctuation
Dec 30, 2009

Ships were made for sinking;
Whiskey made for drinking;
If we were made of cellophane
We'd all get stinking drunk much faster!
If you're using Java 7 64-bit, you should know that it has several notable bugs that could cause incorrect calculations and could even corrupt worlds. To work around the bugs, you should use the options "-XX:-UseLoopPredicate" and "-XX:LoopUnrollLimit=1". Put these in a shortcut or batch file like you would memory options. This will cause performance to decrease, but it will most likely still be faster than Java 6.

Adbot
ADBOT LOVES YOU

Double Punctuation
Dec 30, 2009

Ships were made for sinking;
Whiskey made for drinking;
If we were made of cellophane
We'd all get stinking drunk much faster!
For those of you wondering about ore distributions, I'm creating a spreadsheet that lists them and graphs them out. It will take a while, but I do have results on diamonds in 1.9pre (with structures on). Based on a map of 13413 chunks, roughly centered at the origin, there are about 2 diamonds per chunk now, which, if the wiki is correct, is about half what it used to be. Diamonds are still concentrated around lava level. Counting the lowest block as y = 0, most diamonds can be found at y values from 7 to 14, with slightly more at the higher end of that range.

In short: Yes, diamonds are rarer now. No, the optimal mining depth has not changed. For best results, mine directly above the lava layer (which still ends at y = 12). You'll find diamonds about 1 every 40 meters that way. You could mine one block lower for slightly more diamonds, but the increase is minuscule at that depth. You can be safer and mine a block higher for less chance of falling into lava, but your chances decrease to 1 in 45 meters.

Double Punctuation
Dec 30, 2009

Ships were made for sinking;
Whiskey made for drinking;
If we were made of cellophane
We'd all get stinking drunk much faster!

DontMockMySmock posted:

Why is it that the memory Minecraft uses increases from roughly 600MB when I join a server to roughly 1400MB over the course of half an hour? This seems to be a new phenomenon roughly corresponding to the 1.1 release. If I want it to remain playable I have to restart it every 45 minutes or so.

I assume the answer is "notch."

Are you using 64-bit Java? If so, then yes, you are correct. If not, read the thread and get 64-bit Java. If you're not sure/can't run 64-bit Java, then use the option "-XX:+UseParallelOldGC".

Also, if you're living on the edge with Java 7, you could try "-XX:+UseG1GC" instead. I have not tested that option out, but who knows. It could get rid of the annoying lag spikes entirely, or it could cause memory to shoot up like a rocket.

Double Punctuation
Dec 30, 2009

Ships were made for sinking;
Whiskey made for drinking;
If we were made of cellophane
We'd all get stinking drunk much faster!

Goreld posted:

To be fair it's more the fault of Java; even if you're very careful with your memory you're creating, the garbage collector tends to suck. Java's just a giant memory hog.

It's just a side effect of the language. If you want the fastest, most efficient code, you generally have to stick with C++, or at least a C++ API accessed through Java/Python/whatever.

Although I supposed you could blame notch for not programming in C++ like 99% of graphics programmers.

Pretty much. In contrast to C/C++, which require the programmer to control memory, Java doesn't allow the programmer to control memory at all. But they do have the ability to be passive aggressive in five different ways:

  1. Here's a thing I need to use in this part of the program. Please put it in memory and let me use it. You might want to keep track of where I'm using it, but it's not a biggie.

  2. I'm done using this thing in this part of the program. Doesn't mean I'm done using it elsewhere, just sayin' I won't need it right here, right now.

  3. I'm done using all these things right here because I'm done in this part of the program. Still doesn't mean I'm done with them completely. You are keeping track of where I'm using these things, right?

  4. I'm completely done using this thing right now in every part of the program, but I might need to come back to it. You can unplug the cords and everything, but please don't put it away just yet. It does have cords to unplug, right? Also, if I'm lying about being done, don't inform me or anything unless I try to use it before plugging it in again. Because it would be more inconvenient to tell me now than to tell me when I realize I need to use it immediately.

  5. Hey, just checking, but you were keeping track of where I'm using all my stuff, right? Well, now might be a pretty good time to put away all that stuff I told you I'm not using anywhere at all, you know. I'm not saying you have to or anything, it's just a suggestion. If you don't want to, that's fine. No, don't worry that you'll freeze my program completely while you're doing that; I'll deal with it, just like I deal with it whenever you decide to do it out of the blue for no reason at all.

Double Punctuation
Dec 30, 2009

Ships were made for sinking;
Whiskey made for drinking;
If we were made of cellophane
We'd all get stinking drunk much faster!

JohnSherman posted:

So, as someone with only the vaguest understanding of programming, how massive of an endeavor would that be?

For something like Minecraft, you'd pretty much have to write the whole thing from scratch, since you'd have to pay attention to things like memory allocation and object management. It would be a lot better for them to just rewrite the existing code than to attempt converting the whole thing to a different language. Yes, a program written in Java will always be slower than the same program in C++, but a poorly-written C++ program will probably be a lot slower than a well-written Java program. The same applies to C#.

Double Punctuation
Dec 30, 2009

Ships were made for sinking;
Whiskey made for drinking;
If we were made of cellophane
We'd all get stinking drunk much faster!
Note that this has nothing to do with copyright. The C&D was over trademarks, which (in my non-lawyer opinion) has even less to do with Mojang than copyright, making the letter even more ludicrous. It's an issue they should be taking up with Google. Plus, Putt-Putt has to prove that their name hasn't become completely generic already. (Hands up if you knew Putt-Putt was a company before this.)

Double Punctuation
Dec 30, 2009

Ships were made for sinking;
Whiskey made for drinking;
If we were made of cellophane
We'd all get stinking drunk much faster!

Sky Shadowing posted:

I dug up the blog post from Notch on the transition, and he mentions that it was in the license...


http://notch.tumblr.com/post/2175441966/minecraft-beta-december-20-2010

If they attempt it it will be a massive legal fight in court over it, I imagine, one Microsoft will probably just avoid by releasing 'Minecraft 2!"

If you're in the U.S., Microsoft will just put a mandatory binding arbitration clause in the EULA and make you click "Agree" to update the game. For those who don't know, mandatory binding arbitration means big companies can do whatever they want as long as they don't do anything criminal, you'll never get compensation for anything even if they do, and big companies like Microsoft put them in every single legal agreement they have with consumers (including EULAs, which are absolutely legally binding if you have to click "Agree" anywhere).

Double Punctuation
Dec 30, 2009

Ships were made for sinking;
Whiskey made for drinking;
If we were made of cellophane
We'd all get stinking drunk much faster!

Eric the Mauve posted:

They definitely do this (it's easy to notice when you're bringing animals into a pen, if you switch off the wheat and aren't quick to the door they bolt straight for it) but I don't think it's specifically designed that way. I think their pathfinding just looks around and identifies the open gate as the straightest line to some open space.

I think it's that they select a square of grass to move toward and then repeatedly try to pathfind to that square. Being in a small pen just makes it more likely that they'll pick a square that's outside the pen.

Double Punctuation
Dec 30, 2009

Ships were made for sinking;
Whiskey made for drinking;
If we were made of cellophane
We'd all get stinking drunk much faster!


:sigh:

Double Punctuation
Dec 30, 2009

Ships were made for sinking;
Whiskey made for drinking;
If we were made of cellophane
We'd all get stinking drunk much faster!

Oxyclean posted:

From what I've seen the devs have been swearing up and down the losing designs will be canned. So who knows.

Microsoft has been swearing up and down that the free upgrade to Windows 10 would be cut off for years. They haven’t because they make more money this way.

Adbot
ADBOT LOVES YOU

Double Punctuation
Dec 30, 2009

Ships were made for sinking;
Whiskey made for drinking;
If we were made of cellophane
We'd all get stinking drunk much faster!

Vib Rib posted:

"Procedural" doesn't mean open/infinite. In this case it just means that various objects, usually pre-made, can be scattered around the area to create a more dynamic level. Stuff like that does go into making an open/infinite world, but it takes a lot more than that, and nothing about what he said seems to suggest moving in that direction.

A good example is Daggerfall. Its map was procedurally generated, but it was done ahead of time and hard-coded into the game.

  • 1
  • 2
  • 3
  • 4
  • 5
  • Post
  • Reply