March 29, 2024, 01:39:50 am

The Gang Garrison 2 Forum

Please login or register.

Login with username, password and session length
Advanced search  

News:

NOTICE: Wondering where all the forums have gone?

Join the community Discord server!

Pages: [1] 2 3 ... 5

Author Topic: JGang development journal  (Read 18077 times)

MedO

  • Owns this place
  • *****
  • Karma: 151
  • Offline Offline
  • Posts: 1752
JGang development journal
« on: June 07, 2009, 04:08:35 pm »

I've been meaning to start this topic for a while now, and StealthArcher's own thread has finally made me conquer my lazyness. This topic will provide information about my progress with JGang and plans for what to do next. If you have ideas, criticism or want to discuss anything else about JGang, feel free to post here as well.

So what is JGang?
In short, it's a game engine for networked 2d platformer games, written in Java.
JGang is the second incarnation of the Gang Game Engine, which was originally planned and started as a C++ engine by cspotcode and me, as an engine that could be used for GG2 or similar games like Soldat, Liero or Worms. Since cspotcode didn't have much time to work on the project after we had done a some of planning and started the C++ code, I worked on it alone for a while and finally decided to start over in Java, since I have a lot more experience with the language.

Current progress
The most polished system right now is the resource management, which manages sound and image files and also allows to define Entities (game objects) in XML files. It provides facilities for easy and powerful modding and also allows you to include new graphics, sounds and entities in user maps. Some of these features are not fully done yet though.

There are also a few classes for graphics already, and currently I'm working on input handling (e.g. button mapping).

If you want to see something right now, have a look here: http://www.uni-koblenz.de/~smaxein/JGangTest.zip
You will need a recent version of Java to run it, and you might only see a slideshow if you have an integrated graphics chip. Have a look into the resources directory and play around with the xml file a bit if you want to get an idea of what you could change in a mod/map without any programming.
Logged
Quote from: Alfred North Whitehead
It is the business of the future to be dangerous; and it is among the merits of science that it equips the future for its duties.

Quote from: John Carmack
[...] if you have a large enough codebase, any class of error that is syntactically legal probably exists there.

Corky

  • dusty old bones full of green dust
  • ******
  • Karma: 320
  • Offline Offline
  • Posts: 927
Re: JGang development journal
« Reply #1 on: June 07, 2009, 04:17:29 pm »

So is the game going to become more difficult to run?
Logged

MedO

  • Owns this place
  • *****
  • Karma: 151
  • Offline Offline
  • Posts: 1752
Re: JGang development journal
« Reply #2 on: June 07, 2009, 04:26:24 pm »

Is double-clicking on a jar- or jnlp-file more difficult than double-clicking on an exe file? Besides that difference, the only thing that would become more difficult is that you'd have to install Java first.
Logged
Quote from: Alfred North Whitehead
It is the business of the future to be dangerous; and it is among the merits of science that it equips the future for its duties.

Quote from: John Carmack
[...] if you have a large enough codebase, any class of error that is syntactically legal probably exists there.

Boo++

  • Veteran Beta Tester
  • *****
  • Karma: 74
  • Offline Offline
  • Posts: 1036
Re: JGang development journal
« Reply #3 on: June 07, 2009, 04:44:37 pm »

Just out of curiousity, will the C++ engine still be finished?

This engine seems pretty cool. No more need for Game Maker Pro to mod the game. How will the actual game run though, if you see the JGangTest as a slideshow? That's what I'm seeing right now, with the image changing every second or so.
Logged
"Wait, who is Joe?" - Donny's 1000th post.

MedO

  • Owns this place
  • *****
  • Karma: 151
  • Offline Offline
  • Posts: 1752
Re: JGang development journal
« Reply #4 on: June 07, 2009, 05:56:56 pm »

The C++ engine was not very far when I stopped, and I think it's unlikely that it will be continued. There is nothing to stop you from doing it yourself, it's open source and hosted on Launchpad (https://launchpad.net/ganggameengine).

If you only see a slideshow then Java2d doesn't use hardware accelleration on your system. You could try updating to the latest Java release and see if that helps, and there are also a few command line options one could test, but if you are using an older or integrated graphics card then chances are that things won't improve.
I'm aware that this is a problem and I might switch to directly using OpenGL, but right now there are a few points that keep me from doing that:
- Java2d hardware accelleration IS improving, so there's a realistic chance that it will work on more machines once JGang is actually usable
- Having to code my own OpenGL graphics drawing stuff would be quite a bit of work
- In the future, more people will have graphics cards which support the required functions

So I'm focusing on other parts of the engine first, and when those are finished I'll re-evaluate the graphics question. Just for comparison, on my PC (GeForce 8500 GT, Intel Core 2 Duo 2,66Ghz) JGangTest runs perfectly fluid and uses ~3% CPU.
Logged
Quote from: Alfred North Whitehead
It is the business of the future to be dangerous; and it is among the merits of science that it equips the future for its duties.

Quote from: John Carmack
[...] if you have a large enough codebase, any class of error that is syntactically legal probably exists there.

Atomic1fire

  • Junior Member
  • **
  • Karma: -3
  • Offline Offline
  • Posts: 70
  • ENSURT TECKST HEAR
Re: JGang development journal
« Reply #5 on: June 07, 2009, 10:09:12 pm »

Before anyone says JAVA = SLOW
its bull,
the only thing that would make java slow is if the persons computer was crap,
even runescape can run in high detail, and if you have a decent computer, that actually can run pretty fast.
Java or C++ would be the best course for gg
Java also being opensource, and availible on almost every OS imaginable.
Logged

Corky

  • dusty old bones full of green dust
  • ******
  • Karma: 320
  • Offline Offline
  • Posts: 927
Re: JGang development journal
« Reply #6 on: June 08, 2009, 03:11:33 am »

Is double-clicking on a jar- or jnlp-file more difficult than double-clicking on an exe file? Besides that difference, the only thing that would become more difficult is that you'd have to install Java first.

I meant computer wise.
Logged

walrusfan97

  • Guest
Re: JGang development journal
« Reply #7 on: June 08, 2009, 05:50:44 am »

To be honest; I was more excited for the original C++ version than I was for this. It's not that I really think that java is unusable, but to me it's a lot less accessible.

.exe Is still easier to just pick up and go. It feels somehow more complete.

... Still, a more competent engine is a more competent engine.
Logged

walrusfan97

  • Guest
Re: JGang development journal
« Reply #8 on: June 08, 2009, 06:10:19 am »

Nothing but a slide show; And I updated java.

If it helps, I have integrated graphics, and so do a majority of the people that play this game as a substitute for TF2. Most people don't update java but it's usually by default on most prebuilts, so there is a higher technical curve here that might not be friendly for the userbase.

Additionally, you may want to consider serious gamer for the project. He's somewhat of a odd choice having no proper expertise on gg2 besides modifying it for cheats, but I believe he has some java expertise.
Logged

MedO

  • Owns this place
  • *****
  • Karma: 151
  • Offline Offline
  • Posts: 1752
Re: JGang development journal
« Reply #9 on: June 08, 2009, 06:46:41 am »

I did explain my thoughts about the graphics issue above, and my plan is definitely that it should run in a usable way on anything that's at least as powerful as a second-generation netbook (i.e. Intel Atom N270, Intel integrated graphics). But as I said, the issue is improving without me having to to do anything. I just tried a nightly build of Java 7 and with that the JGangTest runs well even on my EeePC 901.
Logged
Quote from: Alfred North Whitehead
It is the business of the future to be dangerous; and it is among the merits of science that it equips the future for its duties.

Quote from: John Carmack
[...] if you have a large enough codebase, any class of error that is syntactically legal probably exists there.

MedO

  • Owns this place
  • *****
  • Karma: 151
  • Offline Offline
  • Posts: 1752
Re: JGang development journal
« Reply #10 on: June 09, 2009, 05:02:52 pm »

Progress today:
I read up on how AWT and Swing (Java's GUI toolkits) draw their components and decided to make some changes to be able to use Swing's automatic double buffering, and to allow games to use Swing components to build their menus.

Also read an overview of Java's security model. This will become quite important later, because I want to allow mods and maps to ship with custom code, and since those will be auto-downloaded when people join a game on some unknown server, it must be ensured that this code can't do anything bad. Fortunately, Java supports this kind of stuff very well: You can set up a SecurityManager that is used to check whether the code is allowed to perform potentially dangerous operations (opening files or network connections etc.)
Logged
Quote from: Alfred North Whitehead
It is the business of the future to be dangerous; and it is among the merits of science that it equips the future for its duties.

Quote from: John Carmack
[...] if you have a large enough codebase, any class of error that is syntactically legal probably exists there.

tsukiyomaru0

  • Guest
Re: JGang development journal
« Reply #11 on: June 09, 2009, 05:19:25 pm »

Make it playable in Nokia 6131 and then we may talk.
Logged

Blackbird88

  • Junior Member
  • **
  • Karma: -12
  • Offline Offline
  • Posts: 125
  • Alternate weapons are must have.
Re: JGang development journal
« Reply #12 on: June 10, 2009, 01:22:42 am »

Make it playable in Nokia 6131 and then we may talk.
I lol'd. Let me clear yout his.
He is using PC java which is J2SE and java enabled phones are using J2ME 8D
Logged

tsukiyomaru0

  • Guest
Re: JGang development journal
« Reply #13 on: June 10, 2009, 09:23:06 am »

Make it playable in Nokia 6131 and then we may talk.
I lol'd. Let me clear yout his.
He is using PC java which is J2SE and java enabled phones are using J2ME 8D
I know.
But, what I mean is that I'm avaiable to test if he makes for mobile phone.
Logged

Agh

  • 2012 Haxxy Award Winner
  • *
  • Karma: 174
  • Offline Offline
  • Posts: 2423
    • My maps
Re: JGang development journal
« Reply #14 on: June 10, 2009, 02:13:25 pm »

Is there a way to help you with this?



That test runs slower than tf2 for me D8. You should definitely use OpenGL or another library for the graphics.
Logged
Pages: [1] 2 3 ... 5
 

Page created in 0.022 seconds with 35 queries.