Hi !
Featured games (84)
games approved by the League of Dukes
Games in Showcase (549)
Games in Android Showcase (136)
games submitted by our members
Games in WIP (594)
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 ... 40
1  Discussions / Miscellaneous Topics / Re: Article: The Rise and Fall of the Lone Game Developer on: 2015-01-15 14:40:05
I really learnt to program with the manual that came with the computer. Back then, manuals were serious documentation. The manual for my second computer even included circuit diagrams.

In fact, I don't agree that it's easier than ever to get into programming.

I mean, doesn't that sorta prove my point? Back in the "golden days" you had to trudge through some serious documentation, basically be an engineer.

I was 8 years old. I probably couldn't have told you what "engineer" means. And actually I didn't understand a lot of the documentation. For example, the computer came with a version of Logo which could be run with CPM, and there was a fat chapter on Logo in the manual, but I didn't understand the point of all the list-processing instructions until 10 years later when I learnt functional programming with SML.

And with movements like trying to (and succeeding at) convincing schools to start teaching programming (in kindergarten!), how is it *not* easier to get into programming?

Give it 10 years for the teachers to learn the subject, and maybe we'll have another "Golden Age".

Couple that with the fact that *everybody* has a computer in their pocket (not just geeks in a basement trudging away), and I'm not sure how it's possible that it's just as hard to get into programming today as it was back then.

I still haven't got round to figuring out all the steps to getting a Hello World running on my smartphone. It's certainly not a case of turn it on and start typing.
2  Discussions / Miscellaneous Topics / Re: Article: The Rise and Fall of the Lone Game Developer on: 2015-01-15 11:29:09
I mean really, if you had to learn how to program by manually copying machine language from a magazine, how many of us would have learned how to program?


I will admit that it's easier than ever to get into programming. But how can that be a bad thing as a whole?

That wasn't the only way to learn to program. I learnt to program in the 80s, and while I did get my hands on some magazines with type-in programs I really learnt to program with the manual that came with the computer. Back then, manuals were serious documentation. The manual for my second computer even included circuit diagrams. There were also plenty of books around on programming.

In fact, I don't agree that it's easier than ever to get into programming. It's easier than ever to learn a second language, because of the resources available on the Internet, but a non-programmer has to find advice on which language to learn, sort through the contradictory opinions to arrive at a decision, and install the compiler or interpreter. Computers no longer boot into a shell in which you can start using a REPL for a language stored in the ROM.
3  Game Development / Game Play & Game Design / Re: Lost beauties of Game Design on: 2015-01-09 15:58:57
Once upon a time, in every game you played, you had three lives, or attempts. Be this the game, the level, the area. Unless you found more lives in the game, you stopped playing after a few tries. This was likely due to the move from arcade games to home entertainment, but it was a good design feature nonetheless.
Most people would consider a design feature which causes people to stop playing after a few tries to be a bad design feature. A more qualified view would be that it's a feature which appeals to the hardcore élite and repels the mass-market / casual player, so it should be something you offer as part of a "hardcore" mode and not in the "normal" mode.
4  Discussions / General Discussions / Re: Developing a multi-player game - How should I approach this? on: 2014-12-10 09:15:27
Turn-based or real time? It makes a massive difference.
5  Games Center / Contests / Re: Java4K Competition 2015 on: 2014-12-08 16:44:59
Oops! I should have said .jar file rather than .class file!
What I meant was no proguard, pack, gz compression etc, so the entire build chain would be;
jar cfM game.jar game.class

That way anyone with vanilla java and the source code could play the game.
I foresee disputes about size. Different versions of javac will produce different size class files: older ones include less cruft. (And you're even including debug information!)
6  Games Center / Contests / Re: Java4K Competition 2015 on: 2014-12-08 11:04:39
2. Does not require complex compression chains. However, it remains to be seen whether the effort to golf code is more than using the compression chains

Much more. It's possible to set up a decent compression chain from scratch in a few hours - varying according to how much you already know about what's out there: if you know that you want Proguard, Zopfli, and the zip2gzip I uploaded to the forum a couple of years ago, you could do it in less than one hour. It takes a few hours to do a proper golf of a 2k Java source file, and then once you see how small you can get it, it's in a format which makes it really hard to add new features which use the remaining space.

I'm pretty sure 8K uncompressed gives one even less (significantly less) room to work with than J4K did.

You're quite right. To inform the discussion, here's the breakdown of the three Java4k entries I finished:

GameSourceUncompressed class fileFinal file
Gravitational Fourks *29315136534054 (jar)
Quadriletteral37178117683899 (jar.pack.gz)
Stick Shift 4k48059166083704 (jar.pack.gz)

* I actually did a bit more work, so these are for v1.3 rather than the submitted version, which was 1.0.
7  Games Center / Contests / Re: Java4K Competition 2015 on: 2014-12-06 21:20:39
2) we measure the source file's file size however the source code is reviewed by the judging panel to ensure no unfair tricks have been used, and it is down to a vote of the judges whether or not a trick is fair or unfair... probably needs some more clarification there I think maybe.
This doesn't make any sense in conjunction with your point 4), and it is a major change in direction. It also forces people to write submit Java source. I know that might sound a bit silly in the context of a Java competition, but previously there was nothing in principle stopping people from writing in any other language which targets the JVM. In fact, I squeezed out the last few bytes from one of my entries by disassembling the class file, tweaking it, and reassembling it with Jasmin.

In order to stay true to the history of the J4k, I think that the download should be what's explicitly limited in size and not the source.
8  Discussions / General Discussions / Re: Designing a game - hard work? on: 2014-12-02 13:01:18
I think Julien is probably correct in guessing that when you say design you mean draw (perhaps as a false friend from the French dessiner), but can you confirm that?
9  Games Center / WIP games, tools & toy projects / Re: Legends of Fore on: 2014-12-01 09:50:52
Some of the strings use phaser and others use phazer. I assume this is an unintentional difference? Another spelling mistake I spotted is Abadoned.

There are also some strings which probably shouldn't be translated (e.g. levels/moonbasealpha/mission3.xml). And thanks seems to be in there twice, which is a bit odd.
10  Games Center / Contests / Re: End of 4K. Thanks all! on: 2014-11-30 08:50:03
Just keep the site running for historical reasons, be a shame to lose all those games. Smiley

Even though half of them are broken.
With some combination of old JRMs and decompile-tweak-recompile it should be possible to get most of the broken ones working.
11  Discussions / Miscellaneous Topics / Re: The C family, should I dig deeper? on: 2014-11-28 11:59:12
C is just a portable assembly language.

I would say more that C is a high-level assembly language which allows you to use a portable style, but no-one ever does. Just at the basic level of types: stdint.h / inttypes.h are 15 years old, but still terribly underused even in new projects.

I highly recommend the book The C Programming Language 2nd Edition by Brian Kernighan and Dennis Ritchie

I see a possible connection. Why do people keep recommending using a completely outdated language reference? You wouldn't recommend a book on Java 1.1 to someone wanting to learn Java in 2014.
12  Games Center / WIP games, tools & toy projects / Re: Hexara -- work in progress on: 2014-11-28 09:31:50
I like the text you wrote. May I use it or a slightly edited version?

13  Games Center / WIP games, tools & toy projects / Re: Hexara -- work in progress on: 2014-11-27 23:47:02
If both source and dest are already placed then they should switch positions instead of clearing the source.
I concur. The clicking on a line thing isn't something I discovered by just playing the game.

It IS a difficult puzzle, like the last half of a good hard sudoku. I was envisioning it being something where one would only tackle one a day, and it would take a pleasant part of an hour to solve.
I've solved all but a couple of gold ones in 20 minutes.

Still, it seems I should make some more examples that are easier to solve, to give folks some practice and a leg up. Having been at this a while, my perspective on difficulty is skewed.
That's always a problem with puzzle game development. (And with most game development, in fact).

This is the biggest challenge of this puzzle game: communicating how the puzzle works.
Instructions are a good first step until you have time to work on a detailed walk-the-player-through-the-level tutorial. I would say something like:

Each vertical banner contains a sequence of tiles which must be present somewhere on the board. The sequence may be present in a straight line, or bend all over the place. Arrange the tiles so that all six sequences are present.

I haven't had problems with sound dropping out. One feature that I would prioritise is a way to give up on a level and go back to the list of levels. I'd also add the text "Choose a level" to the level selection screen, because it's not immediately obvious that it's a level selection screen. I thought at first that it was just a splashscreen. And I would find it helpful to be able to hover over a tile on a banner and see the other instances of that tile, rather than just getting that highlight when I hover over a tile on the board.
14  Discussions / Miscellaneous Topics / Re: C#, did Microsoft just want to be different? on: 2014-11-27 12:13:22
Things I'm definitely not keen upon:
  The coalesce operator.


Things that could do with adding to Java other than those features mentioned that are nifty about C#:
  The elvis operator. I take back what I said about ascii Wink
The coalesce operator ?? and the elvis operator ?: are functionally the same.

Stuff I know nothing about:
Basically it's a limited form of coroutine. It is very useful for people who want to write implementations of Iterator; I haven't seen many other uses for it.

I think C#'s approach to lambdas is slightly better than Java's, although both of them would be improved (for the user - maybe not for the compiler implementer) by being more functional. Effectively they both require you to define a placeholder (respectively a delegate or a one-method interface) for the type. I would rather just be able to specify something of the form (String, String) => int as the signature.
15  Discussions / Miscellaneous Topics / Re: Should the player control the head or torso on: 2014-11-26 11:00:59
You don't have to force a dichotomy. The third option would be to let a player whose head becomes detached from their body switch between the two.
16  Discussions / Miscellaneous Topics / Re: C#, did Microsoft just want to be different? on: 2014-11-26 10:53:17
My original post seemed biased, apologies. I know it never began at Java lol. I was merely saying that when I had a look at Java, C++ and then I opened up VS and looked at my C# code, it seemed that things were different; for no reason other than "just because".

C# wasn't only aimed at people with a C++/Java background. It was also aimed at people with a Visual Basic background. I suspect that that's the reason for the naming conventions: the .Net library followed the pre-.Net VB library and the Win32 API in general. (Quite a few parts of the .Net API are just thin wrappers around Win32).
17  Game Development / Newbie & Debugging Questions / Re: How to distribute database with game on: 2014-11-24 11:03:14
SQLite has JDBC drivers. No need to listen on ports: it just needs to be able to access a file, and it supports basic SQL.
18  Discussions / Business and Project Management Discussions / Re: Love DC comics, Love card games, Looking for someone who wants to helpout on: 2014-11-18 07:58:15
Just the barebones in order to play, leaving the mechanics to the user, no card rules or logic for now, as if we were playing in real life on a real table. Automated things will come in the future.

You have a far more realistic goal than the vast majority of requests for collaboration on this site, for which I commend you.

On the down side, DC already have their own card game based on the comic characters. This is the kind of project which can't succeed, because if it attracts attention it will also attract lawyers.
19  Discussions / Miscellaneous Topics / Re: The C family, should I dig deeper? on: 2014-11-14 10:28:43
C is just a portable assembly language.

I would say more that C is a high-level assembly language which allows you to use a portable style, but no-one ever does. Just at the basic level of types: stdint.h / inttypes.h are 15 years old, but still terribly underused even in new projects.
20  Game Development / Newbie & Debugging Questions / Re: Making your own font on: 2014-11-06 23:05:28
Ok. I'm using magenta as the "non-pixel" background, and black on white text, but you can adapt to suit. I'm taking VA as my example because that's a classic example of how well-kerned text can have overlapping bounding boxes.

The two letters with a one-pixel border on each:

If we move them so that the bounding boxes touch we get:

If we move them so that the "pixels" touch we get:

You have to be careful with characters like punctuation to make sure there's a line of "transparent" background all the way to the top and the bottom so that ," doesn't have the " move above the ,.
21  Game Development / Newbie & Debugging Questions / Re: Making your own font on: 2014-11-05 10:14:53
I'm planning to add more fonts and every font requires its own switch statement, resulting in a long, long an messy class, but it's the only solution I can see. My question is if anyone has any hints or tricks regarding bitmap-fonts.
Have two background colours, not one. For the sake of exposition, I will call them "non-pixel" and "transparent". You can calculate the width of a character by finding a minimal bounding box of the rendered and transparent pixels.

This also extends to a good approximation to proper kerning, whereby you calculate a spacing for each pair of consecutive characters rather than for each character. The way that works is to move the second character left until it can't go any further without two pixels overlapping. If you want more explanation I can give it, but I'll need to make some images so it might take me a day or two to reply.
22  Discussions / Miscellaneous Topics / Re: Calculating points in a circle on: 2014-10-31 09:52:09
Drawing a circle on a texture was easy, but I was wondering how to 'draw' a circle of falses in a boolean[][]. I figured I'd use the brute force approach, but was just wondering if there's a more mathematical approach.
If you don't want to reinvent the wheel, you can draw onto a buffer and use that instead of your boolean[][].

I'm not sure which algorithm the library will use to fill a circle, but to draw its outline the standard one is Bresenham's algorithm. With that keyword you should be able to find far more explanations of it than you need.
23  Game Development / Newbie & Debugging Questions / Re: How to create differently colored characters? on: 2014-10-30 14:16:27
  • Create the characters with the desired vari-colour areas drawn in grey scale.
  • Create mask bitmap the same shape as those areas. Imagine like you're going to spray-paint them.

When I've done this I've generated the mask in code to be the pixels which are pure grey (i.e. zero saturation). Any pixel which needs to be invariant grey can have a non-zero saturation (e.g. #cccccd) without anyone noticing.
24  Discussions / General Discussions / Re: Why do I aim too high ? on: 2014-10-30 09:41:41
Write a game for the 4k contest. It might not run next year, but even if it doesn't you'll find that the space constraint forces you to aim a bit lower.
25  Games Center / WIP games, tools & toy projects / Re: Legends of Fore on: 2014-10-25 07:17:01
Offtopic: there are surprisingly many potential successors following the pattern: Legends of *ore. So many themes, too!
I must say that my first impression when I saw the title in the list of threads was "Ah, a golf game".
26  Discussions / General Discussions / Re: RSA direct bypass on: 2014-10-16 08:43:31
So give me a form of RSA encryption that is stronger.
The standard approach is to encrypt a key for a symmetric algorithm such as AES. So that's one RSA message, containing a 256-bit key padded with OAEP.
27  Discussions / General Discussions / Re: RSA direct bypass on: 2014-10-15 18:55:26
Ok, I see what the problem is. You're not even attacking naive RSA: you're attacking RSA used in ECB mode on a block size of 8 bits. This attack has real world value only against a teenager who has heard of RSA but doesn't understand it.
28  Discussions / General Discussions / Re: RSA direct bypass on: 2014-10-15 15:38:56
Is there a TL;DR version which just includes the maths and none of the UI or debug output?

That said, there are known weaknesses in the simple version of RSA which is presented in introductory number theory lessons.
29  Discussions / Miscellaneous Topics / Re: Name that Poker hand - Tiny Code Challenge on: 2014-10-08 08:39:16
I don't think it would take many changes to get something which can be posted to
30  Discussions / General Discussions / Re: Are Java applets really "dead" for indie developers? on: 2014-09-22 13:24:23
Funorb ( is pretty successful and it's games are applets.
I don't believe FunOrb was ever a tenth as successful as RuneScape, and it's currently on ice. I think only one of the original FunOrb programmers is still at Jagex. There's been talk about some kind of revival, but it might be a port of suitable games to Android and/or iOS to join Bouncedown, Star Cannon, and Miner Disturbance.
Pages: [1] 2 3 ... 40

Add your game by posting it in the WIP section,
or publish it in Showcase.

The first screenshot will be displayed as a thumbnail.

CopyableCougar4 (12 views)
2015-01-26 04:47:56

Olo (13 views)
2015-01-25 21:26:00

Olo (14 views)
2015-01-25 18:44:22

Robo11 (25 views)
2015-01-25 06:14:26

basil_ (26 views)
2015-01-17 22:29:32

wxwsk8er (26 views)
2015-01-16 21:42:21

wxwsk8er (20 views)
2015-01-16 20:44:20

basil_ (25 views)
2015-01-14 09:46:59

basil_ (21 views)
2015-01-14 09:46:52

wxwsk8er (34 views)
2015-01-13 20:42: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

List of Learning Resources
by SilverTiger
2014-08-05 19:33:27

Resources for WIP games
by CogWheelz
2014-08-01 16:20:17 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!