Java-Gaming.org    
Featured games (81)
games approved by the League of Dukes
Games in Showcase (499)
Games in Android Showcase (118)
games submitted by our members
Games in WIP (567)
games currently in development
News: Read the Java Gaming Resources, or peek at the official Java tutorials
 
    Home     Help   Search   Login   Register   
Pages: [1] 2 3 ... 18
  ignore  |  Print  
  Go on, ask me anything.  (Read 67605 times)
0 Members and 1 Guest are viewing this topic.
Offline princec

JGO Kernel


Medals: 390
Projects: 3
Exp: 16 years


Eh? Who? What? ... Me?


« Posted 2011-03-15 12:24:05 »

Maybe a little presumptuous and arrogant but... well, someone might benefit, and I know a thing or two. Not that much but enough. And we've done quite well.
So if anyone has any questions that they'd like to ask me about Java games development - anything at all - just fire away and I'll dedicate some time to giving as detailed answers as I can (and then Riven, Roquen, OrangyTang, KevGlass, etc can come along and correct me).
Go for it!

Cas Smiley

Offline SwampChicken
« Reply #1 - Posted 2011-03-15 12:33:54 »

lol, another fan of reddit's IAmA xxx AMA?

Ok, I'll go first.
My question is: If I want to be a really good java programmer like you, do I have to become emo too?
Offline princec

JGO Kernel


Medals: 390
Projects: 3
Exp: 16 years


Eh? Who? What? ... Me?


« Reply #2 - Posted 2011-03-15 12:38:31 »

No idea about the reddit thing (I only dip in now and again until it gets too hot)!

I'm not a particularly amazing Java programmer (you can see the embarrassing public shame I use). I'm just pragmatic, persistent, and product-focused. I don't write libraries for anyone else to use in particular. I don't even write code for re-use within my own projects until I need to re-use it and then I refactor it. It takes 3x as long to write good reusable code as code that just works for what you need it for Smiley

Back on topic - no, emos never get any work done, because they sit about crying about how miserable their lives are and that nobody understands them. I have no hair or makeup these days, and I'm big and muscled and apparently quite scary, which is just as well as my approach to problems now is to bash them instead of cry about them.

Next!

Cas Smiley

Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline SwampChicken
« Reply #3 - Posted 2011-03-15 12:42:01 »

Bwahahhaa... Well played young Cas, well played!


Offline dah01

Junior Member


Medals: 7



« Reply #4 - Posted 2011-03-15 12:48:00 »

I have a few:

Do you do any design docs first?
Do you do the art first?
When do you do sound?
Do you do your prototype in java, or another language, if at all?
What was the first game you've ever developed and how old were you?
How often do you get programmer's block?
Aside from here, are there other sites you frequent in search of java game dev answers or just plain old google?
Do you drink coffee?
Are there any libraries you use other than LWJGL, like, things for playing sounds, installers, etc?
Do you like green eggs and ham?

Offline dah01

Junior Member


Medals: 7



« Reply #5 - Posted 2011-03-15 12:51:28 »

Also, are there any bookmarks, links, tutorials, resources, etc that you'd like to share?
Offline dah01

Junior Member


Medals: 7



« Reply #6 - Posted 2011-03-15 12:55:09 »

Do you use SVG's or bitmaps? I know that java only has built in support for bitmaps but the art in revenge of the titans looks so smooth I wondered.
Offline teletubo
« League of Dukes »

JGO Ninja


Medals: 48
Projects: 4
Exp: 8 years



« Reply #7 - Posted 2011-03-15 12:55:58 »

1. What do you use to generate your EXEs from java ? are they legal ?

2.Is your name really Prince Caspian ? What were your parents thinking Huh

Offline dah01

Junior Member


Medals: 7



« Reply #8 - Posted 2011-03-15 13:00:24 »

When you come across something you don't already know how to do, do you go to the googles or do you troll the api documentation of whatever library you're using first? What milestones do you think are important when starting a game?
Offline princec

JGO Kernel


Medals: 390
Projects: 3
Exp: 16 years


Eh? Who? What? ... Me?


« Reply #9 - Posted 2011-03-15 13:15:58 »

1. Do you do any design docs first?
2. Do you do the art first?
3. When do you do sound?
4. Do you do your prototype in java, or another language, if at all?
5. What was the first game you've ever developed and how old were you?
6. How often do you get programmer's block?
7. Aside from here, are there other sites you frequent in search of java game dev answers or just plain old google?
8. Do you drink coffee?
9. Are there any libraries you use other than LWJGL, like, things for playing sounds, installers, etc?
10. Do you like green eggs and ham?
11. Do you use SVG's or bitmaps? I know that java only has built in support for bitmaps but the art in revenge of the titans looks so smooth I wondered.
12. When you come across something you don't already know how to do, do you go to the googles or do you troll the api documentation of whatever library you're using first? What milestones do you think are important when starting a game?
13. Also, are there any bookmarks, links, tutorials, resources, etc that you'd like to share?

1. Yes, just .txt files. Most of our games morph beyond all recognition after a while in development.
2. Ish. We use placeholders (pinch graphics from older games, etc) and Chaz iterates over the design many many times. It's slow going. Eventually he settles on something he likes.
3. Again, we use placeholders, pinching sfx from older games, and real work on sound doesn't begin till pretty late in the whole process. But getting some sound in early is crucial to the feel of the game. Sound is really, really, really important, as important as graphics - I wonder why it's neglected by so many. And no, sfxr is not going to be good enough, unless you want it to sound a bit rubbish.
4. All in Java. I cut and paste the last project, and delete 95% of it, and run from there Smiley
5. I forget. I'd have been about 8, so it was 30 years ago now, on a Vic 20, in Commodore BASIC. My games aren't a whole lot different now...
6. All the time. Fortunately I have a short attention span so I go and do some surfing, customer support, read some forums, reply on the Puppyblog, etc. and usually the answer turns up in my mind whilst distracted. I only get blocked on actual complex algorithms - general programming I've done for so long now there are no mysteries.
7. I don't look for Java answers any more Smiley But when I do, it's here.
8. About a pint or so of strong cafetiered coffee every morning.
9. Yes: JOrbis for playing OGG sound; NSIS for Windows installers. Hm that's about it really. The rest of our stuff is basically home grown rubbish.
10. Yes.
11. Chaz designs all the graphics in 3DSMax and Photoshop, and he has various clever scripty things that finally export them out as bitmaps, which we then trim of empty space and pack into texture atlases, and then he painstakingly animates everything using XML, sometimes hand-written, sometimes generated by his scripty things.
12. Firstly I pester someone on Skype or MSN like Markus or Kev Glass. On the rare occasions they don't come up with an answer I post on JGO (or wherever might seem to be appropriate) - these days I basically have no technical questions though, it's all about biz, at which I'm a total n00b. Otherwise I just look at Javadocs and Google happily away. As for milestones - well, getting something playable is the first one Smiley
13. Unfortunately no Smiley I learn by experiment, and the sum of my incomplete wisdom is more or less enshrined in that crappy Sourceforge project and the resulting games.

Cas Smiley

Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline princec

JGO Kernel


Medals: 390
Projects: 3
Exp: 16 years


Eh? Who? What? ... Me?


« Reply #10 - Posted 2011-03-15 13:17:32 »

1. What do you use to generate your EXEs from java ? are they legal ?
2.Is your name really Prince Caspian ? What were your parents thinking Huh
1. Molebox.. and, er.. no Wink Though not for much longer. Steam won't be Moleboxed, nor the next release of Revenge, as I want to make it easier to mod and patch.
2. No, it's Caspian Prince Smiley I was genuinely named after the book by C S Lewis though.

Cas Smiley

Offline dah01

Junior Member


Medals: 7



« Reply #11 - Posted 2011-03-15 13:28:59 »

Cas,

Your answers have been awesome. Thanks so much for the insight. I didn't know that one could drive animations by xml. I will have to look that up. Sounds painful.
Offline kappa
« League of Dukes »

JGO Kernel


Medals: 77
Projects: 15


★★★★★


« Reply #12 - Posted 2011-03-15 13:48:25 »

1) With the availability of so many amazing techs like Unity3D, Molebox (Flash) and Javascript (WebKit, WebGL, etc) do you still intend to continue using Java (near term and long term) ?

2) What's your thoughts on Sun/Oracle completely ignoring and neglecting java gaming?

3) If you were to go back in time (with hindsight) would you still have picked Java as a tech you invested so much time and effort into?

4) What is your predictions and thoughts on the future of Java gaming and where do you see it going (kinda related to the first)?

5) Do you think you'll ever become a millionaire ? Smiley
Offline kevglass

JGO Kernel


Medals: 171
Projects: 23
Exp: 18 years


Coder, Trainee Pixel Artist, Game Reviewer


« Reply #13 - Posted 2011-03-15 13:49:23 »

1 question:

What business justification did you use to allow yourself to create and waste time answering this post? Cheesy

Kev

Offline princec

JGO Kernel


Medals: 390
Projects: 3
Exp: 16 years


Eh? Who? What? ... Me?


« Reply #14 - Posted 2011-03-15 13:51:21 »

Behold! The source code to Revenge of the Titans. In it you can see all the XML configuration stuff.

<edit>Please note lack of attached licenses, shitty commenting, crap code worthy of mockery, etc. Please also respect this gesture for what it is. And no, I'm not giving the art and sound assets away.

Cas Smiley

Offline princec

JGO Kernel


Medals: 390
Projects: 3
Exp: 16 years


Eh? Who? What? ... Me?


« Reply #15 - Posted 2011-03-15 13:51:59 »

1 question:

What business justification did you use to allow yourself to create and waste time answering this post? Cheesy

Kev
I am twiddling my thumbs trying to prevent myself from breaking anything before the Steam release tomorrow Smiley

Cas Smiley

Offline princec

JGO Kernel


Medals: 390
Projects: 3
Exp: 16 years


Eh? Who? What? ... Me?


« Reply #16 - Posted 2011-03-15 13:55:38 »

1) With the availability of so many amazing techs like Unity3D, Molebox (Flash) and Javascript (WebKit, WebGL, etc) do you still intend to continue using Java (near term and long term) ?
2) What's your thoughts on Sun/Oracle completely ignoring and neglecting java gaming?
3) If you were to go back in time (with hindsight) would you still have picked Java as a tech you invested so much time and effort into?
4) What is your predictions and thoughts on the future of Java gaming and where do you see it going (kinda related to the first)?
5) Do you think you'll ever become a millionaire ? Smiley
1. Yes, because I'm moving very thoroughly into online gaming client/server style, and none of those techs cut it. And Eclipse is too brilliant to leave. And I can't be bothered to learn anything new, as I've spent 12 years or something getting as good as I am at Java so I'm not going to just ditch all that expertise overnight for some fancypants crappy scripting tech.
2. Just seriously sad.
3. Actually... yes. I only use Java because that's what I otherwise use to make a mint contracting, so I was already good at it when I thought about making games with it.
4. I don't see it going anywhere unless Oracle sort out the deployment problem. That being, there's no JVM on iOS or PSP or XBox. When there's JVMs everywhere they'll succeed at gaming. Not before.
5. Nope, our games are just usually a bit too eccentric to be properly popular.

Cas Smiley

Offline CommanderKeith
« Reply #17 - Posted 2011-03-15 14:08:12 »

Interesting. I was wondering how you render text and how you do GUI's?

Also, have you ever tried out a physics lib or some other cool 3rd party thing that you would want to use in your games? Besides lwjgl of course

Offline dah01

Junior Member


Medals: 7



« Reply #18 - Posted 2011-03-15 14:17:06 »

Re: Source

Awesome. I don't think anyone expects art or sound assets, haha. Thanks to you and your comrades for their contribution to the community.
Offline appel

JGO Wizard


Medals: 51
Projects: 4


I always win!


« Reply #19 - Posted 2011-03-15 14:21:39 »

Given the limited capabilities of indies, what is it that you do NOT do when it comes to making a game? How do you make the scope manageable?

(May be a too generic question, but some insight into making a "full blown" game but keeping it within realistic means)

Check out the 4K competition @ www.java4k.com
Check out GAMADU (my own site) @ http://gamadu.com/
Offline loom_weaver

JGO Coder


Medals: 17



« Reply #20 - Posted 2011-03-15 14:35:30 »

On your last game how much time is spent on art/content as opposed to programming?  A percentage breakdown on what it takes to create a complete game would be great!
Offline princec

JGO Kernel


Medals: 390
Projects: 3
Exp: 16 years


Eh? Who? What? ... Me?


« Reply #21 - Posted 2011-03-15 14:40:24 »

Interesting. I was wondering how you render text and how you do GUI's?

Also, have you ever tried out a physics lib or some other cool 3rd party thing that you would want to use in your games? Besides lwjgl of course
We pre-render fonts at various sizes into luminance alpha bitmaps, using AWT and a crappy tool in our spgl tools lib called FontConverter. That makes a note of all the glyph metrics while it renders them, and works out kerning using the brilliantly scientific method of rendering every single glyph next to every single other glyphe and measuring the difference in expected position. All that data gets saved out as a "jgfont" file which is the bitmap and glyph metrics and kerning info in a simple custom file format. Then I've got a GLTextLayout class that lays out glyphs from text strings (and recently, has simple formatting commands in it too for changing colours, fonts, etc), and then the whole lot gets plugged into our sprite engine such that a single text layer is spoofed as a "sprite". The sprite rendering engine does all our rendering - it's a very very simple sort of 2D scene graph which arranges things by layers, texture, style, geometry, etc., in a pretty efficient way. See DefaultSpriteRenderer in the SPGL code for the guts of it.

Never tried anything 3rd party and this is possibly because working out how to use 3rd party libraries often takes longer than just doing it ourselves. Not always, but usually. I'm not a fan of physics games generally either Smiley I keep an occasional eye on the Monkey Engine and Ardor because one of these days I want to do some 3D stuff. When I'm rich.

Cas Smiley

Offline princec

JGO Kernel


Medals: 390
Projects: 3
Exp: 16 years


Eh? Who? What? ... Me?


« Reply #22 - Posted 2011-03-15 14:48:09 »

Given the limited capabilities of indies, what is it that you do NOT do when it comes to making a game? How do you make the scope manageable?
(May be a too generic question, but some insight into making a "full blown" game but keeping it within realistic means)
This is a very hard question to answer. What we don't do, first and foremost, is 3D, because that requires tons of new expertise which I don't really have yet Smiley We've got a really crappy cheapass 2D art pipeline which we struggle along with effectively enough, but to do anything 3D would require probably learning tons of stuff, writing loads of library code, testing it all, discovering it was rubbish, doing it again, looking at Monkey Engine, being annoyed with Monkey Engine not doing exactly what I want, trying to do it ourselves again, getting stuck making a 3DS animation exporter, .... it goes on. Then there's the greatly increased complexity of dealing with a Z coordinate and all the maths and so on. I'd probably just about be able to cope with something about as complex as Minecraft right now but not probably anything cleverer than that.

The next thing we don't do is massively multiplayer online roleplaying games, because they take a long, long time, they're very hard to test, deploy, support etc. Which isn't to say one isn't on the cards. I'd love to make an MMORPG because we need a cash cow Smiley If we do one, and I'd like to, probably it will be in 2D, look and behave quite roguelike, and be almost entirely sandboxed PvP. Do what thou wilt shall be the whole of the law.

The latest thing we've figured out is not to make a game that is like anyone else's game. There's no point in writing Minecraft, but with blackjack, and hookers; there's no point in making anything that someone can approximate easily in Flash in a few months either. And we're specially targeting the desktop - not consoles - because that's a strength and a point of differentiation. We want to take advantage of the fact we have a whole keyboard, lots of RAM, and ("potentially") patient players. We don't want to write 0.99c trinkets for iOS, nor shoot-em-ups, nor anything else for the attention-deficit generation. Deep and niche is where we're headed, and online at that.

Cas Smiley

Offline princec

JGO Kernel


Medals: 390
Projects: 3
Exp: 16 years


Eh? Who? What? ... Me?


« Reply #23 - Posted 2011-03-15 14:50:14 »

On your last game how much time is spent on art/content as opposed to programming?  A percentage breakdown on what it takes to create a complete game would be great!
Easy answer: 50%. Chaz and I have spent about 3 man-years each on Revenge of the Titans - I code, he draws, we both design (though I do most of the gameplay design; he designs the style, UIs, etc). I also do sound, server maintenance, support, biz, marketing, forum trolling, R&D, etc. and he takes care of the website, advertising, and anything vaguely arty that people need.

Cas Smiley

Offline archdrone

Senior Newbie





« Reply #24 - Posted 2011-03-15 15:49:51 »

First off, thanks for taking the time to let everyone pick at your brain

1) How are you funded? Do you both have other means employment? Contracting?  VC? Or is there previous revenue from previous games?

2) What would you say was the most difficult technical challenge that you had to overcome recently?
Offline princec

JGO Kernel


Medals: 390
Projects: 3
Exp: 16 years


Eh? Who? What? ... Me?


« Reply #25 - Posted 2011-03-15 15:58:59 »

First off, thanks for taking the time to let everyone pick at your brain
1) How are you funded? Do you both have other means employment? Contracting?  VC? Or is there previous revenue from previous games?
2) What would you say was the most difficult technical challenge that you had to overcome recently?

1) I used to work full time as a contractor doing fairly dull things but the Humble Indie Bundle has made enough money to fund us up until Christmas. Unfortunately it's March and we've not even started a new game yet. And the last one took 3 years  Shocked

2) Hm... it's not exactly a very technically complicated game. The hardest bit in it was the A* pathfinder, and I got some help with that from pjt33 and Markus. Before that, refactoring the entire sprite engine so that it could display arbitrary geometry, and also use VBOs, was the trickiest bit. And about the same time as that, designing and implementing a retrofitting system that laid out our UIs to any window size and scale. The game was originally conceived in our odd 320x320 double-rez format (a la Droid Assault, Titan Attacks, etc) but we realised it would a) be about as successful as those games if we left it like that, which is to say, not at all, and b) Steam wouldn't be interested.

Cas Smiley

Offline dishmoth
« Reply #26 - Posted 2011-03-15 15:59:12 »

When your next project becomes as freakishly successful as Minecraft, will Puppygames expand (like Mojang), or will you retire?  (And don't pretend you haven't thought about this. Wink )

Offline princec

JGO Kernel


Medals: 390
Projects: 3
Exp: 16 years


Eh? Who? What? ... Me?


« Reply #27 - Posted 2011-03-15 16:03:01 »

When your next project becomes as freakishly successful as Minecraft, will Puppygames expand (like Mojang), or will you retire?  (And don't pretend you haven't thought about this. Wink )
It's kinda unlikely we'll enjoy Minecraftian levels of success especially given the oddness of our game designs... I've wanted to expand from the beginning but I've had no luck whatsoever in convincing anyone to join Puppygames and work with us. I won't retire but I will maybe transition to what I really want to do - which is design and produce games. I am a game designer trapped in a programmer's body.

Cas Smiley

Offline archdrone

Senior Newbie





« Reply #28 - Posted 2011-03-15 16:31:52 »


1) I used to work full time as a contractor doing fairly dull things but the Humble Indie Bundle has made enough money to fund us up until Christmas. Unfortunately it's March and we've not even started a new game yet. And the last one took 3 years  Shocked


Good Luck. Not that I have much ground to talk, but why not after the steam launch, throw up 3 - 4 game concepts on KickStarter and let your fans vote with their dollars on what you should work on next. You'll get some more funding and have a good idea on what will sell before you even start.
Offline kappa
« League of Dukes »

JGO Kernel


Medals: 77
Projects: 15


★★★★★


« Reply #29 - Posted 2011-03-15 19:16:09 »

Noticed some applet related code in the source code above, was there a plan to release an applet version of ROTT?

Also how do you stay so focused on a single project? (personally just loose focus after a while and can't work it on it anymore, so any tips would be appreciated).
Pages: [1] 2 3 ... 18
  ignore  |  Print  
 
 
You cannot reply to this message, because it is very, very old.

 

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

The first screenshot will be displayed as a thumbnail.

Pippogeek (39 views)
2014-09-24 16:13:29

Pippogeek (30 views)
2014-09-24 16:12:22

Pippogeek (19 views)
2014-09-24 16:12:06

Grunnt (45 views)
2014-09-23 14:38:19

radar3301 (27 views)
2014-09-21 23:33:17

BurntPizza (63 views)
2014-09-21 02:42:18

BurntPizza (33 views)
2014-09-21 01:30:30

moogie (41 views)
2014-09-21 00:26:15

UprightPath (50 views)
2014-09-20 20:14:06

BurntPizza (54 views)
2014-09-19 03:14:18
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

Resources for WIP games
by CogWheelz
2014-08-01 16:19:50

List of Learning Resources
by SilverTiger
2014-07-31 16:29:50

List of Learning Resources
by SilverTiger
2014-07-31 16:26:06

List of Learning Resources
by SilverTiger
2014-07-31 11:54:12

HotSpot Options
by dleskov
2014-07-08 01:59:08
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
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!