Hi !
Featured games (83)
games approved by the League of Dukes
Games in Showcase (581)
Games in Android Showcase (163)
games submitted by our members
Games in WIP (632)
games currently in development
News: Read the Java Gaming Resources, or peek at the official Java tutorials
   Home   Help   Search   Login   Register   
  Show Posts
Pages: [1] 2 3 ... 12
1  Discussions / General Discussions / Re: Rayvolution's JGO Appreciation Thread (AKA: Free copies of Retro-Pixel Castles!) on: 2015-05-27 04:58:30
I would like to try it as well. Smiley

Good job on making successful game, especially after seeing for much positive feedback it received on this site since the beginning.
2  Discussions / Miscellaneous Topics / Re: What are your current personal projects? on: 2015-05-22 19:41:59
Since few years I am developing DeedPlanner - tool for Wurm Online ( ) - this is probably my biggest personal project so far.

When it comes to games, I have two personal projects as well, but both of them are suspended due to lack of time and in too early stage to show them to the world, the same with Direct3d bindings for Java.
3  Discussions / Miscellaneous Topics / Re: Most unusual/weird syntax features in non-joke languages on: 2015-05-12 21:59:44
Java compared to Javascript is like Scrabble compared to Jenga... Very different, but both of them belong to the same category (programming languages and games) - first of them have very strict rules and requires some experience, second one gives more freedom and requires less learning, but - if you fail even slightly - it is over.
4  Discussions / Miscellaneous Topics / Most unusual/weird syntax features in non-joke languages on: 2015-05-08 23:39:30
Like in topic - what are the weirdest or very unusual syntax features you saw in other languages than Java? Please post features only from "real" languages (no Malborge, Shakespeare etc.).

I will start with this code snippet from Haxe:

class Vec3 {

   public var x : Int;
   public var y : Int;
   public var z : Int;
   public function new(?x : Int, ?y : Int, ?z : Int) {
      this.x = (x == null) ? 0 : x;
      this.y = (y == null) ? 0 : y;
      this.z = (z == null) ? 0 : z;

Haxe don't support method and constructor overloading, but what we see there is something similar - in this case this method can be invoked without parameters or with 1, 2 or 3 parameters, like this:

      new Vec3(); // (0, 0, 0)
      new Vec3(1); // (1, 0, 0)
      new Vec3(1, 2); // (1, 2, 0)
      new Vec3(1, 2, 3); // (1, 2, 3)
5  Discussions / Miscellaneous Topics / Re: What I did today on: 2015-03-09 20:35:47
Just wrote this , thought it looked quite weird, what do you think?
cable = (sub != null);
electric = (sub != null);

I very rarely use the syntax like this usually it's a set of if statements for the readability , any performance enhancements to using this, I can guess a few less processor calls.

Compiler should take care of duplicate statements and optimize them, but codewise avoiding duplicate statements is (almost always) a good practice.
6  Discussions / Miscellaneous Topics / Re: What I did today on: 2015-02-18 21:52:12
Added automapping for the dungeons. I actually didn't want to do that, but...i did it anyway... Grin

This is starting looking like Skyrim mobile. Cheesy
7  Discussions / General Discussions / Re: What's your day job? on: 2015-02-16 19:59:31
1st year CS student on Warsaw University of Life Sciences here. Smiley

Not all teachers are incompetent, but I must agree that if you don't want to learn something or come to school just to pass it and get a diploma, nothing will help you. Good teacher is a teacher who can interest you in a particular topic or field, from this point he/she can HELP you to get more knowledge in his/her field.
8  Discussions / Miscellaneous Topics / Re: What I did today on: 2015-02-15 01:59:37
I haven't post much recently due to school, but I still lurk here every once in a while. During our school's week off for Mardi Gras break, I looked into functional programming with Java, lambdas, method references, etc.

They are awesome! Code like this is beautiful.

Yes, this is beautiful... But sadly not too fast Sad (although I wouldn't worry about it as long as everything is working good enough)
Very useful for working with any data and - at least in my opinion - much easier to read than "classical" code as you can see what the query do at first glance.
9  Discussions / Miscellaneous Topics / Re: What I did today on: 2015-01-27 21:47:03
Just implemented bogosort and bogobogosort sorting alghoritms: (just for fun, naturally). Cheesy
10  Discussions / Miscellaneous Topics / Re: Unofficial JGO Steam Group! on: 2015-01-25 18:37:47
Joined as well. Smiley
11  Discussions / Miscellaneous Topics / Re: What I did today on: 2015-01-02 11:17:15
I always wonder if anyone will ever make a Java game that will stop all this stuff about: Java is too slow, Java isn't good for AAA games, Java is bad...

Java IS too slow... If you don't know how to handle GC properly. Sadly this is a difficult thing to master, we can see problems with GC even in most known Java games. In addition, we don't have any good java-based game libraries/editors.

There are some very good looking Java games (Wurm Online for example, Starsector is not looking bad as well), but sadly lack of any more known Java indie or commercial games and lack of support from Oracle for anything related to games (in fact, to anything client-side) are creating false image of Java games.
12  Game Development / Newbie & Debugging Questions / Re: LWJGL - Immediate rendering alternative on: 2014-12-17 21:07:14
Use GL_LINES instead of GL_LINE.

In addition, if you need to display A LOT of lines/points/anything else and you don't want to change rendering data often, you can use display lists for significant performance boost.
13  Discussions / Miscellaneous Topics / Re: What I did today on: 2014-12-06 20:22:32

Gist updated. Smiley I will probably refactor project and make WIP thread soon.
14  Discussions / Miscellaneous Topics / Re: What I did today on: 2014-12-06 01:50:47
If you release the code (the pastebin would work, Gist would be better), we could probably speed that up quite a bit. 2s sounds slow, although I'm forgetting what all is involved with fractal gen.
It's diamond-square, right?

Looks good though!

Edit: XOR random generator improved generation speed by about 30%.

Edit2: Added multithreading, now 8192X8192 fully detailed map is generated in 14 seconds instead of 33.
15  Discussions / Miscellaneous Topics / Re: What I did today on: 2014-12-06 00:51:29
Experimented with procedural terrain generation again, now with fractals:

I wrote this generator in 2 hours, but even after such a short time I am able to say that fractal-based generation is superior to noise-based (especially simplex noise). Main advantages of this random generation method:

  • VERY fast generation
  • possibility to generate less detailed, very similar looking maps on demand
  • only small amount of repeating patterns (probably possible to fix with better random function)
  • easily configurable
  • lazy generation

Generation times:
2048X2028 (seen above), full detail - ~2,3s
8192X8192, full detail - 33s
8192X8192, very high detail (almost the same as full detail, with just one generation layer less) - 23s
8192X8192, high detail (first noticeable quality loss) - 14s
8192X8192, low detail (very noticeable quality loss, but still should look acceptable in the far distance in case of 3d games) - 8s

I will try to improve this generator further, this looks very promising.
16  Discussions / Miscellaneous Topics / Re: C#, did Microsoft just want to be different? on: 2014-12-02 01:02:22
Most of this stuff seems like attempt to avoid boilerplate code... By adding unreadable code. Smiley
17  Discussions / Miscellaneous Topics / Re: Language with direct RAM<->HDD communication on: 2014-11-29 19:35:14
Yes, but in case of paging you don't have any control on what is in memory and what is stored on HDD - I am thinking mostly about something like database built directly in language which is deleted after program execution stopped.
18  Discussions / Miscellaneous Topics / Language with direct RAM<->HDD communication on: 2014-11-29 19:22:26
Why nobody invented language with built-in direct RAM<->HDD communication so far? I think this would have many pros (if used right), even in modern times where RAM is getting cheaper and cheaper.

Some examples (in Java code):

Example class:

import java.util.ArrayList;

public class ExampleClass {

    //field for internal JVM use only, possibly by GC
    private boolean loaded = true;
    private ArrayList<String> list;
    public ExampleClass() {
        list = new ArrayList<>();
    public ArrayList<String> getList() {
        return list;
    public void setList(ArrayList<String> list) {
        this.list = list;
    //this method should be directly in Object class
    public boolean isLoaded() {
        return loaded;
    //this method should be directly in Object class
    public void setLoaded(boolean loaded) {
        this.loaded = loaded;
    public void doSomething() {
        //do something here

Example 1:

public static void main(String[] args) {
        //new object is created in memory
        ExampleClass obj = new ExampleClass();
        obj.getList().add("Hello World!");
        obj.doSomething(); //working as usual

        obj.setLoaded(false); //JVM receives hint that obj and everything inside should be unloaded from memory and moved to HDD on next GC cycle
        obj.doSomething(); //still working as usual, unless GC cycle happens between this and previous call
        obj.doSomething(); //obj is loaded from HDD and is stored here until end of method and next GC cycle, if called method is using list inside obj, then this list is loaded as well
        obj.setLoaded(true); //the whole obj is loaded from HDD to memory and deleted on HDD
        obj.doSomething(); //working as usual

Example 2:

public static void main(String[] args) {
        ExampleClass first = new ExampleClass();
        ExampleClass second = new ExampleClass();
        second.setLoaded(false); //only second will be unloaded to HDD on GC as list is used somewhere else
        first.list.add("Hello World!"); //works as usual
        second.doSomething(); //second is loaded from HDD, but list inside is in memory all the time
        first.setList(new ArrayList<>()); //reference to list inside second object is erased
        System.gc(); //list inside second object is unloaded to HDD
        second.doSomething(); //obj is loaded from HDD and is stored here until end of method and next GC cycle, if called method is using list inside obj, then this list is loaded as well
19  Game Development / Newbie & Debugging Questions / Re: Saving and loading gfame data with file i/o on: 2014-11-29 02:46:23
Pros and cons of each method:

+very flexible
+easy to edit (for example for debugging)
+easy to implement in OOP way (especially XML)
-takes a lot of space (in comparison with other methods)
-easy to edit (if you are worried that users will edit save data, but you shouldn't)
-needs some boilerplate code

2. Text formats
+very easy to implement
-very dependent on programmer skills and design decisions

3. Binary format
+very fast saving/loading
+takes very small amounts of space
+hard to edit (if you are worried that users will edit save data, but you shouldn't)
-inflexible (in some cases you even need to write a new loader after changing something, in addition to maintaining code for older saves)
-hard to edit (if you want to change some values inside save for debugging or testing purposes)

For most of games, I would choose XML unless you need to save/load a lot of data, then I would choose binary format (but still use XML as alternative for debugging and testing).

In your case even text file should be enough.
20  Game Development / Newbie & Debugging Questions / Re: How to integrate Lua into Java? on: 2014-11-29 01:43:45
What would you recommend for scripting in Java? Lua or JS?

I think this is matter of personal preference - from my experience Lua is better suited for (especially large) games, but with both of them you should be able to implement scripting easily.
21  Game Development / Networking & Multiplayer / Server UI - graphical vs command line on: 2014-10-15 16:14:10
Like in topic - what do you think, is it better to be able to control server via GUI or command line? I wonder which solution is better - command line should work everywhere and is very easy to make, but GUI should be faster and easier to use and be able to show more data at the same time.
22  Discussions / General Discussions / Re: New feature: registration and login through Facebook, Google, etc on: 2014-10-11 17:30:10
We have registration through Facebook and Google now, so... How about Facebook page? Roll Eyes
23  Discussions / Miscellaneous Topics / Re: What I did today on: 2014-10-01 20:15:31
First day of university, CS naturally. Smiley
24  Discussions / Miscellaneous Topics / Re: Java won't let me time travel on: 2014-09-30 20:40:43;

Why not this way?
25  Discussions / Miscellaneous Topics / Re: What I did today on: 2014-09-30 00:10:50
I tested my knowledge in and threw this together.

I used "I Want My TTR!" for and "Lapetus" for the fonts.
I'm actually thinking of making a cyberpunk themed action game too. Which was part of the reason ;-)

This reminds me of Far Cry 3: Blood Dragon - really similar style. Smiley
26  Games Center / Featured Games / Re: [Slick2d] Retro-Pixel Castles > Now on Steam! < on: 2014-09-25 13:55:55
I can translate this game into Polish. Smiley
27  Discussions / Miscellaneous Topics / Re: Whays the story behind your name on: 2014-09-23 01:11:57
Mac70 - from real name Mac(iej), I don't know why 70, especially as this is very, very old nick. Roll Eyes
28  Games Center / Featured Games / Re: [Slick2d] Retro-Pixel Castles > Now on Steam! < on: 2014-09-23 00:19:30
Good luck on Kickstarter and Greenlight, here comes my upvote (and small tip soon). Smiley
29  Discussions / General Discussions / Re: Can a Single Developer Create a Big Game? on: 2014-09-07 10:24:36
There was MMORPG Shores of Hazeron which was developed by one person - veeery huge and complex game, but sadly it was closed last month.
30  Game Development / Newbie & Debugging Questions / Re: Return int from Method on: 2014-09-06 01:27:39
In addition, your method naming convention is different from the standard one - take a look at camelCase naming convention, especially if you will want to write library or open source project in the future. Smiley
Pages: [1] 2 3 ... 12
CopyableCougar4 (15 views)
2015-05-27 19:24:50

MrMapcom (24 views)
2015-05-23 20:26:16

MrMapcom (32 views)
2015-05-23 20:23:34

Waterwolf (37 views)
2015-05-20 15:01:45

chrislo27 (44 views)
2015-05-20 03:42:21

BurntPizza (79 views)
2015-05-10 15:53:18

FrozenShade (63 views)
2015-05-07 09:11:21

TheLopais (226 views)
2015-05-06 13:36:48

TheLopais (208 views)
2015-05-06 13:35:14

TheLopais (213 views)
2015-05-06 13:33:39
List of Learning Resources
by SilverTiger
2015-05-05 10:20:32

How to: JGO Wiki
by Mac70
2015-02-17 20:56:16

2D Dynamic Lighting
by ThePixelPony
2015-01-01 20:25:42

How do I start Java Game Development?
by gouessej
2014-12-27 19:41:21

Resources for WIP games
by kpars
2014-12-18 10:26:14

Understanding relations between setOrigin, setScale and setPosition in libGdx
by mbabuskov
2014-10-09 22:35:00

Definite guide to supporting multiple device resolutions on Android (2014)
by mbabuskov
2014-10-02 22:36:02

List of Learning Resources
by Longor1996
2014-08-16 10:40:00 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‑
Powered by MySQL Powered by PHP Powered by SMF 1.1.18 | SMF © 2013, Simple Machines | Managed by Enhanced Four Valid XHTML 1.0! Valid CSS!