This is insane. I am not so sure I can deal with the multi thread engine. I wanted 3 threads. 1 for user input, 1 for simulation, 1 for rendering. And I don't want to put the synchronized keyword on every single method.

Any reader thread will not be guaranteed to see the 10, because they do not really synchronize with the writing thread, and therefore a reading thread may read the value before main() is called.In other words: The writing and the reading thread must synchronize on the same object in order to establish a happens-before relation (including memory visibility).

Will the 10 be visible to other threads checking on was10Written as true?

I want to know if synchronize flushes back to main memory when statement closes. From the answers I got, it seems the answer is no but maybe. It will only be guaranteed to flush back when another lock is aquired. That would make sense from the performance implementation point of view. This prevents the JVM from flushing everytime a sync statement closes.

Visibility is a matter. Threads may update stuff and that stuff stays in the CPU cache and the main memory is not updated.

I bolded the most relevant condition for true visibility. There is of course the volatile keyword as well.

I can't quote it all. The forum won't let me.

Quote

VisibilityChanges to fields made by one thread are guaranteed to be visible to other threads only under the following conditions:

A writing thread releases a synchronization lock and a reading thread subsequently acquires that same synchronization lock.

In essence, releasing a lock forces a flush of all writes from working memory employed by the thread, and acquiring a lock forces a (re)load of the values of accessible fields. While lock actions provide exclusion only for the operations performed within a synchronized method or block, these memory effects are defined to cover all fields used by the thread performing the action.

public synchronized void run() { dataS.setDataSync(45); dataNS.setDataNotSync(10); //Question A: is 10 value guaranteed to be visible to all other //threads when method exits? //we are inside a synchronized block aren't we? //so all writes must be flushed to main memory }}

Slow RPGs are fine. But fast games like Sonic 3D (Mega-Drive) are not fun, especially on a PC keyboard.

In Bastion, i felt straight away I would forever be annoyed of moving in middle directions compared to Up/Down/Left/Right.

I need a gamepad.

but anyways I prefer dark and mysterious games. Limbo fits the bill perfectly. I feel the urge to play it. Bastion, I can't bother. Seems like the usual boring hack and slash. I prefer playing flat RPGs like Shining in the Darkness.

Limbo makes me think of Another World / Out of this World. For me Limbo repaid me the bundle's price.

There is an annoying problem though. When you double click the mouse during play, the game ends and goes straight back the the menu. really sucks when in the heat of the game because of a mis double-click.

happens to me most of the time. and you lose your highscore screen..

I would also like a Up and Down scrolling of my tower during the highscore and why not an export to JPG

Google has removed one of my answers to a user who complained about the install process, I quoted a bug report of Chrome/Chromium in my reply. Google has a very personal vision of the freedom of expression.

Features suck. It sometimes is very slow. I hate it when doing some C# and ASP.NET.

The problem with Netbeans is not Java. The problem is the bloated Swing UI. I don't know exactly what's the problem. But everynow and then your mouse pointer hicups. And for example, you cannot play with even simple menus without serious graphical lag.

Does any of you dream of a dev kit for programming games for a console in Java? Any idea if Oracle would be interested?

I'm a 2D guy and never liked 3D except FPS.

I wish I could program games for my Megadrive in Java. Give me a J2ME Game Canvas with pad buttons bit flags, a sound interface and off you go making Mega Drive games clones. There is something completely unique playing with big black 6 buttons Sega pads on an old CRT TV.

If you played Alien Soldier written by Treasure, you know what I'm talking about. FYI there is a company in the UK, still making oldschool RPGs for the Mega Drive. But that's for in know Sega collectors.

Anyways, looking around for a java SDK kit on a console, i found none. But I found this.

1-did you play 16 bits console? Sega or Nintendo?2-did you play RTS games on the PC?3-Do you think a 2D online RTS game is possible in Java?4-How do you debug your code? breakpoints? or sysout or another logger?5-Do you sleep when you are tired? Do you wake up on demand.6-What's so bad about JavaSound? MIDI wierd instruments for sound effects?7-In the Demo, nice effect when Big titan destroys your base. That was the first time I lost. this is the only mission that stroke a good difficulty balance.. I guess it is very difficult to create not too easy, and not too hard levels without being repetitive.8-in the light of your experience, how do you see the anti piracy battle evolve in the future? Is it worth fighting it? Is the FarmVille model the future?

1# Java failed on the desktop because Sun never bothered creating an application shop for java applications. You should have been able to launch "Java Control" and find a list of all java applications installed on your desktop and manage them from there. Some kind of Java OS layer on the top of windows.

That is a very minor (if at all) factor IMO. Flash didn't (and doesn't) have an "application shop" and that didn't prevent it from becoming the de-facto standard for web games.

well, at the time it was not called "app shop". I remember when Java Web Start came along. That was brilliant. Why not having a favorite list of JNLPs? A tool to manage downloaded JNLPs? They did nothing else but provide the mechanism of Java Web Start. They didn't bother building the bells and whistles. They might have coined the word "app store" before Apple if they did some end user/desktop work at the time.Back then I was thinking, build a bloody Java OS layer over Windows. They did not. too bad.

It is like the failed Savaje os/phone. Sun is a failure in end user experience. You can't win it all. Their core competence was server side.

java-gaming.org is not responsible for the content posted by its members, including references to external websites,
and other references that may or may not have a relation with our primarily
gaming and game production oriented community.
inquiries and complaints can be sent via email to the info‑account of the
company managing the website of java‑gaming.org