Hi !
Featured games (85)
games approved by the League of Dukes
Games in Showcase (611)
Games in Android Showcase (172)
games submitted by our members
Games in WIP (657)
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 ... 9
1  Discussions / General Discussions / Re: MySQL insert became fast after adding an index on: 2015-08-19 20:17:36
Actually, now that you say it Riven, I remember that I still have a check in the importer so the same records don't get saved twice. I put it in mainly because I did implement the deleting of files later:
$field = FieldValue::find()->where(['updated_at' => $dateOfFile])->one(); //slightly modified

Which is code in PHP Framework Yii2 for the following:
SELECT * FROM field_value WHERE updated_at = :date LIMIT 1

So this topic was actually a big lie.. probably.. I am sorry guys persecutioncomplex

EDIT: Well now I think about it, could this little query really cost 2 minutes?? That's impossible because then my charts would have never loaded in the first place

And no there were almost no other SELECT queries on the server, the client had access to it, but I am surprised if they have even logged in once a day.
2  Discussions / General Discussions / Re: MySQL insert became fast after adding an index on: 2015-08-19 17:15:56
In most cases, ALTER TABLE makes a temporary copy of the original table. MySQL waits for other operations that are modifying the table, then proceeds. It incorporates the alteration into the copy, deletes the original table, and renames the new one.

Maybe a fragmented table got rebuilt into a new one.

Also: InnoDB? MyISAM? Using transactions? Which isolation level? Doing bulk inserts or prepared statements?

How does a table become fragmented? I have only read/inserted records in it.
The table uses InnoDB, I don't use prepared statements nor do I use transactions or bulk inserts, my bad.
It was meant to just insert 3 records every ten minutes, but since I am a little slow the files were stacked up since May Kiss And I have got to admit, didn't even think of using the prepared statement.

Possibly because of contraints (unique'ness of primary key) the database has to check on each insert.
It can do these checks much faster with an index.

I didn't use any constraints in the table though, except this auto_incremented Primary Key:
| Field       | Type         | Null | Key | Default             | Extra                       |
| id          | int(11)      | NO   | PRI | NULL                | auto_increment              |

Thanks for all of your fast replies. Smiley
3  Discussions / General Discussions / MySQL insert became fast after adding an index on: 2015-08-19 16:23:07
It actually happened at work, where I had a table which contained almost 2 million records.
I had created an importer which read csv's from Google Drive and saved the values from these files to records in the table. Which are displayed in a chart on the website.
The importer runs every two hours for an hour (via a cronjob) and had 33k files on Google Drive to go 1 month ago (and every 10 minutes, 3 new files are added), while I had 1 month of vacation to go Smiley so I went to check up on the website yesterday.

What I saw: the charts were incredibly slow (if the page did not throw an exception because it was allocating too much bytes) and the importer had still 27k files to go.
When running the importer manually, I found out that it took 2 minutes Clueless to save 1 file in the database.
So two problems came to my path: slow charts (front end, reading/SELECT) and slow importing (back end, writing/INSERT).
I had prioritized the charts, since that's what our client sees. So yesterday I made an sqldump from the database on the server for my laptop and I updated a lot of queries for the charts (the client requested some quite complex formules), and added an index for one column. The charts have a much more acceptable loading time now.

So today I was going to do some refactoring since I updated all those queries (Before updating those queries I did a lot of hacking in PHP, long story), and since I am on my PC instead of my laptop today, I went to make an SQL dump again. Shockingly, I saw two files on the server:
  • dump_18-8.sql 134 MB
  • dump_19-8.sql 219 MB
I immediately executed the importer manually and yes, not even 15K of files were left (the importer removes them after they have been read) and it now takes ~2 sec to save one file to the database... Shocked

How is it possible that an insert-statement takes considerably less time (2 min. to 2 sec) after adding an index to the table? It seems the contrary is not the only truth?
4  Discussions / Miscellaneous Topics / Re: What I did today on: 2015-08-14 22:25:07
my vector graphics drawing package

Sounds interesting, what should I think about when you are talking about your Vector-program, something like a particle editor? Well you said in your Vangard topic that your game was vector based and didn't use any textures, but I always thought Vector images were textures persecutioncomplex

Did something myself as well, actually it was written in C# with .NET (first time).
Not really Java-unrelated since it's created to parse Json to JAVA-class files.

Click to Play

What's up next is converting the class to an enum from the actual data in the Json or create instances from it in runtime, not 100% sure yet.
5  Games Center / Showcase / Re: SpaceBlocks demo on: 2015-08-12 16:45:54
I wouldn't say that "there's not much so far", since it actually already has two different multiplayer game modes and an enjoyable singleplayer gamemode.

I have a few tips which should only cost a little effort, but would make the game much more enjoyable I think:
  • The ships are way too fast IMO, I would nerf the thrusters (or make a mountain out of a molehill Tongue)
  • Ear candy/sounds instead of beeps
  • I wanted to give up/return to main and pressed ESC, but the application closed Sad
  • A dynamic enjoyable background (see f.e. the project mentioned below) with planets (instead of those circles)

This project made me think about the following project, check it out for inspiration: wonder when the owner of that project is going to push the update with galaxies...

Thanks for the fun and I hope you won't give up this project Smiley
6  Game Development / Newbie & Debugging Questions / Re: Path to JAR - any problems with this approach? on: 2015-08-10 16:30:10
Instead of:
path = path.substring(0, path.indexOf("/MyApp.jar!"));

I would use the more flexible:
path = path.substring(0, path.lastIndexOf(File.separator));

Still, instead of playing with Strings, you could also just get it's parents absolute path:
File file = new File(Main.class.getResource("Main.class").getFile());

But.. hardcoding "Main.class" is unnecessary as well, you could try making a temp file instead, which results in:
File temp = File.createTempFile("temp", ".tmp" );
7  Game Development / Newbie & Debugging Questions / Re: Finding out if car is sideways on: 2015-07-20 10:14:17
This is some simple code I used (where body is the car).

    * Kill the literal velocity

   void updateFriction(Body body)
      Vector2 impulse = getLiteralVelocity(body).scl(-0.1f*body.getMass()/maxSpeed*getSpeed());
      body.applyLinearImpulse(impulse, body.getWorldCenter(), true);
   Vector2 getLiteralVelocity(Body body)
      Vector2 currentRightNormal = body.getWorldVector(new Vector2(0, 1));
      return currentRightNormal.scl(;

getWorldVector returns the vector from the car's perspective, so you want to kill vertical velocity (car's perspective) although it would be quite handy for parallel parking Smiley

I followed this tutorial (implemented in Box2D) but can be applied everywhere since it's about car physics:

EDIT: It also explains an easy way to get your car drifting.
8  Discussions / Miscellaneous Topics / Re: What I did today on: 2015-07-05 10:49:15
When I finally fell asleep, I had some extremely psychedelic dreams concerning a purple glowing clone of me created by selling my soul to some weird entity [...] Eventually the police came and I tried to escape.
I think you should definitely make an RTS game about your dream Grin

Some mentally-focussed RTS that doesn't make you king of slaves but of real people (not king of mars, but president of america).

One where you can build soul-exploitation facilities to turn villagers into purple super warriors (ghosts), and cancer research facilities to turn villagers into intelligence? (F.E. 1 villager is 1 intelligence and 1000 intelligence could be the required knowledge for a soul-exploitation facility?)
You forgot to quote the most important part, the pizza. So you can build a pizzahut, which makes villagers actually go to the above facilities out of free movement (in a dreamy state, zombielike, cuz that's what all games are about)

While we are at it, we also make a national newspaper production centre. Which provides (false) sided propaganda for us, which makes villagers fight for our mistaken cause in politics.
9  Discussions / Miscellaneous Topics / Re: What's your favorite OS and why? on: 2015-06-06 09:41:14
Arch Linux here as well.

Just the package manager is enough reason for me to love Linux. Think about the pain to install jdk on Windows, or about compiling silly programs. (You can only compile Rust programs in the Rust shell instead of cmd, there is probably a workaround for that etc.. etc.., another reason why Windows should be avoided)

Why Arch? Totally customizable, the disadvantage of 'totally customizable' is that it could need some time before it's ready to use though (depends on what you want, but I personally like the i3 tiling window-manager where you have to install every function yourself). In the beginning it's quite annoying that when you are working, think of making a screenshot, and find out that you haven't installed any software to make that screenshot. But in the end, you have something that's totally yours (although I still and probably forever make adjustments/changes). For example, I programmed my own status bar in C to replace default status bar from i3 (i3-status). In the upcoming vacation I am also planning on writing my own Display (Login) Manager.

I still use Windows a lot though, it's essential. A lot of things are Windows-dependent: games, but think about Microsoft Office or Paint.NET as well.
10  Discussions / Miscellaneous Topics / Re: What I did today on: 2015-05-29 21:16:04
Played around with Perlin Noise for the first time to generate 'sky'. (Yes the landscape is a bunch of Math.randoms)
The following images may look better when you click on them.

Two types of space:

No doubts, this one looks craz... very abstract

Yes this one has sharp contrast with the landscape


11  Discussions / General Discussions / Re: Rayvolution's JGO Appreciation Thread (AKA: Free copies of Retro-Pixel Castles!) on: 2015-05-27 17:37:49
Sure, I would appreciate a copy, it would be rude to ignore this present, no?

I don't know if it matters but I already have an account: profile

Thanks in advance.
12  Games Center / WIP games, tools & toy projects / Re: Dominance (work title) - spaceship war game on: 2015-05-26 20:40:09
Thanks for your concern, I still am active on the forum indeed but in peace and silence!

And admirable to be able to make such a game without even one drawing, creativity does not rest within paint skills but in solvability and innovativity I suppose.
Well, about the crash... I was actually searching for a file, I didn't launch it from the terminal since I'm on Windows. I had to do some work...
13  Games Center / WIP games, tools & toy projects / Re: Dominance (work title) - spaceship war game on: 2015-05-26 19:40:02
That was a lot of fun Grin

Is all of the art generated with standard drawing functions? It all looks really good (especially the radar and spawn portal)!

I encountered one little problem though, which needed a Ctrl+Alt+Del since I played fullscreen:
The game crashed when a red enemy ship got swallowed by my portal. (It was really small when the game crashed at least)
Your program probably doesn't generate output error messages since I couldn't find a log from your game, so I am sorry for not being able to provide you more information than this.
14  Discussions / Miscellaneous Topics / Re: I'm baaaaack... on: 2015-05-23 00:48:33
Alternatively I have participated in the programming competitions at I especially like the King-of-the-hill competitions.

You made me remember them again... So I decided to do something with the somewhere on this forum mentioned Rust language (thanks for that, Rust is quite fun so far, although I'm still a newbie ofcourse).

Don't spend years of your life on something that will give you almost nothing in return.

And this is most important question in our life for all of us =)

What you can do more important in free time then programming?
In most cases: drink, make fun, play games, watch videos, sleep and another stuff “that will give you almost nothing in return” in next days even not talking about next months or years.

Let flame this question, really I want know you’re opinion – what alternative you have? =)

Agreed upon. The best would be thinking/studying about the afterlife, if it exists life on earth is literally a wink, philosophy is quite fun too + makes people more interesting IMO.
15  Discussions / Miscellaneous Topics / Re: What I did today on: 2015-01-30 21:08:30
Started this week working on my own project since school started -.-

I started to built random level generation which I'm going to use for my project.
The last time I posted something about it was a (very much alpha) video on page 10 in this thread.

More fun than school! Wink
16  Games Center / WIP games, tools & toy projects / Re: Bit Siege - 2D Competitive Multiplayer PvP Game. (Patch v1.3.1 out now!) on: 2015-01-20 18:45:03
Your website looks nice and clean. Your game LOOKS a lot of fun too. Sadly enough there aren't any games up, atm.
I also would suggest a server setup page where you can choose max players, etc.. and most important choose the port the server should use .

A little bit of curiosity: what future plans do you have for this game and are you working on this project all alone (that's how it sounds)?

I hope I can play it soon. Wink
17  Discussions / Miscellaneous Topics / Re: What I did today on: 2015-01-15 21:01:23
How do you know the names/addresses and the layout of the data in the executable?

It's crazy what people can do with memory searchers like CheatEngine...
I have messed for a little while in that business but I don't think I have it in me.
18  Game Development / Newbie & Debugging Questions / Re: Java code migration to Android on: 2014-11-26 09:53:23
This is one reason why people use libraries... If you want to do coding for multiple platforms at once (android, computer, ios etc.)
use LibGDX for example (it even supports WebGL). Otherwise, you have to do some "simple copying" yourself.
19  Game Development / Newbie & Debugging Questions / Re: Adding a ActionListener to JOptionPane.showOptionDialog? on: 2014-11-03 21:33:57
Had to change it to:

That while-loop is out of the question...
The custom dialog is a better option.

But I would say to just 'do nothing' when the user leaves it empty.
Error messages are really annoying sometimes, certainly when you accidentally activate something and it doesn't leave after a blow on ENTER.
20  Discussions / General Discussions / Re: Icebucket challenge ??? on: 2014-08-29 19:15:00
This Ice Bucket Challenge is like 'race against cancer'.

People want to do 'weird' things (race, nominate), and what do they do? Connect it with something 'good': "Hey I'm Chris and I'm squeezing boobs for charity" (this quote is real, three guys gave 20 dollars to charity per pair of squeezed boobs, it's not really the same, but comparable).
21  Game Development / Game Play & Game Design / Re: Need Opinions - yes really - Game Control on: 2014-08-23 18:07:49
It's kinda make to be a successor to Legends of Yore, so I'm thinking mobile is where I like to play best.

It's really where the question came from, I love the free movement but on mobiles past experience makes me think it's not as nice as infrequent tapping.

There is a certain difference between turn-based games and infrequent tapping...
It's not like free movement can't have that infrequent tapping, moving tile by tile, the difference is kind of that other objects in the world keep moving whether you do something or not.
22  Game Development / Game Play & Game Design / Re: Need Opinions - yes really - Game Control on: 2014-08-23 17:16:33
For desktop I would use: keyboard
For mobile I would use: touchscreen
For ouya I wou...

Oh wait, that's not the question, next time I will read the main post, promise. Kiss

Certainly free movement. I would have played LOY so much more if that game wasn't turn-based...

And about 2: Players want to do things (move/attack) themselves, if everything happens for them, (no choice, for as far as 'free will' exists Roll Eyes) and they can't decide to exchange some loot for some health, it's the end of the fun.

Sorry for this subjective post, but you asked for our personal opinions, so here it is. Smiley
23  Games Center / Contests / Re: Ludum Dare 30 (Connected Worlds) on: 2014-08-23 13:15:17
Oh, my suspicions about notch participating were true:

Edit: his internet connection probably can't keep up very well (2.6k+ viewers, if that matters) Tongue
24  Discussions / Miscellaneous Topics / Re: Life is like a strategy game sort off on: 2014-08-06 21:15:16
The fact that " you" can't influence the brain's electrons is a red herring - you are the brain's electrons!

That's funny, since electrons can't do anything on themselves... Smiley:
basically an electron is moved by the forces they exert on each other
25  Discussions / Miscellaneous Topics / Re: What I did today on: 2014-08-02 10:02:24
How will it become scrap?

It was a joke/sarcasm. Some people think that way... So don't take me too serious Wink

Your memory seems quite slow compared to the other high-end PC's, didn't you pay attention to the CAS Latency?
You have the best processor out there, so I don't understand why that score is so 'low' either, you were probably gaming, watching movies, video-editing, installing windows and recording while doing that test. Wink Or maybe it is because your memory 'under-performs' compared to other desktops (or even your laptop with 18.26) which also has effect on your CPU, your PC is ready for his first upgrade Grin (joking joking joking).
It's (very probably) because the other CPU's are overclocked, so don't worry Wink
Very very good video card though, it should be able to handle Minecraft Wink (You know my bad-joke-habits by now, right? Smiley)
26  Discussions / Miscellaneous Topics / Re: What I did today on: 2014-08-01 21:35:40
780 ti, i7 4770k, 8 GB of corsair vengeance DDR3, 150 GB SSD, 1 TB HD, Asus Z87 Pro Wifi AC motherboard, and an 850 watt PSU.

Ok, if you do it, you do it good.
That 850 Watt PSU is a lot though, even for your (overclocked) setup. Well, I guess it keeps the possibility to upgrade your desktop open when your PC becomes scrap over a few months when next gen Intel processors come out. Wink

Tore apart my computer, made a ton of upgrades.
Re-Installed Linux.

Tore apart my computer, made a ton of... dust disappear to live happily with his friends in the vacuum cleaner.

So you re-installed Linux? (sounds like an upgraded data storage Wink) Funny, I considered this picture quite matching, when I was searching for funny vacuum cleaner pictures out of boredom after writing this post:

27  Game Development / Newbie & Debugging Questions / Re: [LibGdx]PPM conversion Error on: 2014-07-30 20:30:41
Make it a float: float PPM = 6.0f;

An int won't work because if you do 5/6 it returns 0, like you do here:
shape.setAsBox(5 / PPM, 5 / PPM);
28  Games Center / Featured Games / Re: [Slick2d] Retro-Pixel Castles > Now on Steam! < on: 2014-07-28 07:37:56
Finally actually built a "real" lumber mill graphic, what do you think?

How about an upgradeable lumbermill/buildings, because they both are good Smiley
29  Game Development / Networking & Multiplayer / Re: Converting from TCP to UDP - Threading Clients? on: 2014-07-26 19:26:28
Do I need to establish a specific port for the client to listen to the server?

The answer: No, you should not.

If the client doesn't receive any messages, it's because you are doing something wrong in the server or (probably) client, you are probably using more than one datagramsocket in your client? (which you should not)
30  Discussions / Miscellaneous Topics / Re: What I did today on: 2014-07-25 17:49:54
Mind crushingly tedious in 30 degree heat with no air-con.
The wind blew your way a few days ago then, gheheh.

I teached my little nephew (11 yrs) HTML (yesterday evening and today), he understands the basics, head/body, and tags with properties, like <font>.
And... most importantly, I learned him how to Google!
Pages: [1] 2 3 ... 9
Roquen (9 views)
2015-08-29 11:30:54

GamerC4 (23 views)
2015-08-22 20:38:50

GamerC4 (22 views)
2015-08-22 20:37:18

GamerC4 (25 views)
2015-08-22 20:37:01

Kefwar (29 views)
2015-08-22 18:07:24

GamerC4 (24 views)
2015-08-22 01:00:24

GamerC4 (37 views)
2015-08-22 01:00:17

GamerC4 (23 views)
2015-08-22 00:57:35

GamerC4 (25 views)
2015-08-22 00:56:59

BurntPizza (29 views)
2015-08-21 01:38:01
HotSpot Options
by Roquen
2015-08-29 11:33:11

Rendering resources
by Roquen
2015-08-17 12:42:29

Rendering resources
by Roquen
2015-08-17 09:36:56

Rendering resources
by Roquen
2015-08-13 07:40:51

Networking Resources
by Roquen
2015-08-13 07:40:43

List of Learning Resources
by gouessej
2015-07-09 11:29:36

How Do I Expand My Game?
by bashfrog
2015-06-14 11:34:43

List of Learning Resources
by PocketCrafter7
2015-05-31 05:37:30 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!