Java-Gaming.org
Play Revenge of the Titans! The situation is critical. We need fancy commanders to defend Earth, the moon, Mars!
Featured games (78)
games approved by the League of Dukes
Games in Showcase (404)
games submitted by our members
Games in WIP (289)
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
1  Discussions / Miscellaneous Topics / Re: Dota 2 giveaway ;) on: 2013-03-06 14:06:33
Because my pudge play is amazing!  Grin
2  Discussions / Miscellaneous Topics / Re: Dota 2 giveaway ;) on: 2013-03-06 01:37:51
I also have 26 keys to give away... feel free to add me [VEGN] DrHalfway, or send me your steam username and i'll add you =]
3  Game Development / Game Mechanics / Re: Question about rotated bounding rectangles on: 2013-02-05 02:40:03
I personally use SAT for Rotated bounding box collisions, it is very fast and accurate and it can be expanded for collision detection between rotated 3D boxes and polygons. Although for 3D, it is commonly better to use an algorithm called GJK (Gilbert–Johnson–Keerthi) which will outperform SAT for most 3D cases.
4  Discussions / General Discussions / Re: Your major past/future accomplishments on: 2013-01-23 02:50:39
I want to create something new
5  Game Development / Shared Code / Re: Java Continuations and GreenThreads on: 2013-01-08 04:00:20
I'm writing to express my thoughts on how awesome this really is. This library opens up a whole new dimension for game logic writing. I'll be adding this library into my engine very soon! (with credits of course!)  Grin
6  Discussions / Jobs and Resumes / Re: How to write a University Entrance Portfolio? on: 2013-01-07 05:12:53
I apologise if I'm coming off as rude or arrogant, but going to a CS degree and completing it successfully should warrant that the student is a competent software developer. Its not about how much theory you know or where you can get your knowledge from, the end result doesn't change, the student should be a competent software developer.

The ghosts of Alan Turing, John Von Neumann, and Edsger Dijkstra are going to visit you tonight.


I get visits from time to time, some more pleasant than others  Cheesy
7  Discussions / Jobs and Resumes / Re: How to write a University Entrance Portfolio? on: 2013-01-07 04:42:59
I apologise if I'm coming off as rude or arrogant, but going to a CS degree and completing it successfully should warrant that the student is a competent software developer. Its not about how much theory you know or where you can get your knowledge from, the end result doesn't change, the student should be a competent software developer.

At the end of the day, it is also the students responsibility to seek further knowledge in their field and not rely solely on what a university teaches.

Now here is fact, what percentage of students coming out of a CS course at said university are considered to be competent software developers?

I've been given a link in an e-mail which is a very good read (from my recent applications for a job)

http://www.supercoders.com.au/blog/stuffyoumustknowobjectoriented.shtml
8  Discussions / Jobs and Resumes / Re: How to write a University Entrance Portfolio? on: 2013-01-07 03:05:21
What ENTER score did you get? CS at RMIT (if you're in Melbourne) is 70 something for entry. They do also take into consideration of your high school subjects, for example, my ENTER was bad because of my English, I barely passed, only thing that really got me into CS was my good scores in mathematics subjects.

Other good university options for CS is Swinburne University and Monash University, I probably wouldn't go anywhere near Melbourne University for CS, too theoretical, too much crap, not enough stuff to get you ready for the real world. I've got friends who came out of that university with good grades who can't tell the difference between an abstract class and an interface.
9  Games Center / WIP games, tools & toy projects / Re: WIP - Halfway Game Engine on: 2012-12-20 12:40:10
=0

Well, my only regret is putting in so much time on that logo... I'm not an artist, so that logo took me 8 hours.
10  Games Center / WIP games, tools & toy projects / WIP - Halfway Game Engine on: 2012-12-20 02:57:36
Hello JGO Community

I think its time to introduce the little project we have been working on in the past year, we have dubbed the project as the "Halfway Game Engine" or HGE for short.

The story behind this project is fairly straightforward, its about two uni students who have been good friends since high school to get together, make an engine and potentially make a few games to be launched. Our names are David Arayan (myself) and Matthew Jackson.

Unfortunately the project failed, after a year of solid hard work we ran out of time to be able to make anything we would consider worthy for launch. Whilst the engine is working properly, my initial development calculations were quite far off which stretched the development to a full year. Regardless, it was very good experience for both of us, and we hope it will help us in our future prospects.

Now my friend is graduated and I still have one year to go for uni. I've decided to make this post because the HGE is not dead, I will be committing my spare time for next year in polishing the HGE to be submitted potentially as an open source project, and who knows, maybe later in life we may continue where we left off this year.

Without further to do, I'll be posting a few screen shots of the HGE aswell as go through what it can/can't do and what my plans are for it in the future.

Currently the Engine comes with a "World Editor" which was developed primarily by Matthew and of course the Engine primarily developed myself.

What the engine can do?

One click generates an eclipse project for either PC or Android
Collision Detection – AABB, OBB, Circle
Collision Detection Broadphase – Quadtree, Octree, Grid
Rendering – 2D sprite rendering, dynamic movement, dynamic color change, uses immediate mode openGL
Particles – Flexible particle system integrated with the renderer to produce a number of effects
Scene Manager – an entity management system that manages sounds, music, gameobjects and more.
Math Library – mathematics utility library, includes Vector2 and Vector3 classes aswell as Matrix2x2 Matrix3x3 Matrix4x4 and Quaternion classes.
Pooling – mainly taken care of by the scene manager, pooling ensures the garbage collector for android stays happy.
GUI manager – a manager system built specifically for managing GUI elements, including clickable buttons and labels which can either be in camera (local) space aswell as world (entity) space.
Supports Android deployment version 1.5 +
Generic Containers – tailor made generic containers for use in engine, including linked lists, dynamic arrays, pools, stacks and queues. Optimised for android (so GC stays happy)
Utility – including bitflags, interpolators, jukebox (for music), stopwatch and particle factory with pre-defined effects.
Other – Automatic atlas packing and rendering filters via the World Editor. #declare tags in script editor to control source output, debug mode.

What the engine can't do?

No 3D rendering as of yet
Rendering does not support shaders as of yet

Now that the feature set it complete, i'd like to show some screen shots. Because the Engine is just code, and posting a screenshot of code is pretty meaningless, i'll post screenshots of the World Editor aswell as two games which were in development.

The logo


The editor in action, this is the Invaders Must Die game


Invaders Must Die - A PC/Android Tower Defence Game (WIP)


Memory Game - A random sequence of pictures is given, you must remember at set time and enter answer when ready, it increases in difficulty and gives a score based on accuracy and time taken (WIP)


In coming weeks, i'll try to complete the TD game and as soon as playable version is available, i'll post a link in this thread. In meantime, you can follow the development of HGE (if you wish) at my blog http://davidarayan.wordpress.com/.

Thank you for reading  Grin
11  Game Development / Newbie & Debugging Questions / Re: Whats stopping people from changing code in the client application on: 2012-12-17 05:14:11
You will find that some of the best methods for everything is known by everyone. This also goes true for encryption algorithms. In my opinion, if some method is kept a secret, then it obviously has a huge flaw that can be exploited by knowing the said method. Valve is very good with their anti-cheat systems, wouldn't mind working for them at some point (if I can get lucky enough for an interview, and then there's the question of passing the interview).
12  Game Development / Newbie & Debugging Questions / Re: Whats stopping people from changing code in the client application on: 2012-12-17 03:17:51
A good server cannot assume that the data sent by the client is correct, checks on data is always needed in some way or form.

Think of a client/server hosting a game with 12 people. Everyone is playing legit except for one player, who modifies the data packet for character "speed" or "location" before data is sent to server. If the server does not do a range validity check on this variable, it will simply distribute it to every client, the result is a speed hack, being able to either move extremely fast or "warping" mechanics. However if the server performs a validity range check on variable, which can be up to a certain logical tolerance, client hacks like these would be fairly meaningless.

Solving problems like these involves a lot of effort. The example above is very simple to implement, however, how would you be able to detect aim bots? how do you know its an aim bot and not a truly talented player? does an algorithm exist to catch these things? maybe some kind of complex pattern recognition algorithm running for every client server side?

As you can see, the problem itself increases. Implementing such methods for catching cheaters also takes performance away from the server, so the server will need to be fast enough to be able to run these tests in a timely manner.
13  Discussions / General Discussions / Re: OGRE4j? on: 2012-12-13 03:56:26
OGRE4j is a JNI binding for OGRE. OGRE by definition is a rendering engine, although from what i've read, it has libraries which are essential for all game engines. You will probably have to extend it further if you would like to use it as a game engine.
14  Game Development / Newbie & Debugging Questions / Re: LWJGL and Rendering Objects based on co-ordinates on: 2012-12-12 13:56:54
for an MMORPG the most difficult thing is NOT the renderer, but rather building a solid and robust server-client framework. You will need to take into consideration about user security, be able to defend against misc attacks, prevent cheating. Its a HUGE undertaking.

You will first need to master -

Network Programming
Thread Programming (Concurrency)
Database Programming
Capable of design and implementation of very large scale software - primarily what I refer to as "Runtime" software.
Security - Encryption

And i'm only beginning the list, and this is only the server architecture, think about the client side for the moment. You will need to implement Scene Management, Rendering, Collision Detection, Math libraries, Particle Systems and the list goes on.

Not trying to discourage you or anything, but I think you are underestimating the depth and knowledge (and time) needed in order to implement these kinds of systems.

Start small, a good starter ambitious project is mobile development. Go grab libGDX, read some documentations and start making tower defence, or pong. In fact, if you manage to make a good tower defence game, then you have probably achieved what 90% of us in this forum probably couldn't (although we are more than capable).

For networking, open up eclipse and make a console based chat app, have server be able to accept multiple clients, be able to handle reconnection and be able to kick any user from chat room. This will teach you the basics of network programming and basic threading.

I wish you the best of luck.
15  Discussions / General Discussions / Re: Where are you from? on: 2012-12-07 00:41:43
22, Born in Armenia, living in Australia, family currently in Russia.
16  Discussions / General Discussions / Re: What's your preference is spacing on: 2012-11-29 12:14:46
I always like to use brackets

1  
2  
3  
4  
5  
6  
if (val) {
     System.out.println(val);
}
else {
     System.out.println(val);
}


I actually don't mind all of the styles presented here, If I were just reading code its fine. What I don't like is when people FORCE me to use something else. I think I've had a comment once that the above example is "unreadable" and should be converted into this.

1  
2  
3  
4  
5  
6  
7  
8  
if (val == true) 
{
     System.out.println(val);
}
else
{
     System.out.println(val);
}


ugh  Lips Sealed
17  Game Development / Newbie & Debugging Questions / Re: Collision and Movement on: 2012-11-26 00:29:27
What you're looking for is "Continuous Collision Detection". Its something that is fairly difficult to get right and does add quite a bit of overhead to the Collision Detection. Most game engines have a hard constant of how fast an object is allowed to travel, for example, it does not try to solve a collision for an object travelling at the speed of light for example. Fast objects skipping collisions because they travel too fast is whats called "Tunneling".

For bullets or extremely fast objects like laser beams you might wish to use Ray casting instead. For Continuous collision detection you can approach it in a number of ways.

1) You can construct a polyhedral type volume from the objects previous position and current position, and perform tests to make sure nothing came in between. This scheme can EASILLY become slower than brute forcing everything.

2) You can perform a Raycast from the objects previous position in the direction of current position, if the ray hits anything it means object has missed a collision, you can re-update the objects position to the first object the ray has hit and perform a collision detection as normal.

3) Simply add a hard constant for how fast objects can travel. The maximum distance traveled per collision step should be equal to half the radius of the object. This will ensure object does not miss any collisions. This is the most primitive, simplest and easiest to implement method, and it works very good for platform games that don't require rapid movement.

There are plenty of other ways to do this, just mess around with a couple of schemes and use whichever you like. Collision Detection is a fairly difficult topic and its a nightmare trying to code anything that's even remotely robust, but I hope I gave you some implementation directions  Grin
18  Game Development / Game Play & Game Design / Re: Quadtree-like structure for dynamic / moving Game Objects on: 2012-11-23 14:46:31
I must agree with Riven here

Speaking from a bit of experience, I've created numerous Broadphase detectors, some being more complex than others, such as Quadtrees, Variant of quadtree with ID tracking for nodes (for cache awareness), k-d trees, BSP trees you name it. By far, the best, most robust and fastest solution is Grid, especially for small-medium sized 2D games.

If you're creating an MMO, or want to procedurally create an infinite world of some sorts then yes, the more fancy detectors may be more memory efficient and may be faster, but these cases are very rare, and if you're creating such games you'd probably come up with a specific Hybrid solution for speed anyway rather than a single solution-fits all scheme.

Its late here so I haven't read all the posts, have you considered making your Quadtree/Grid aware of very fast moving objects in order to avoid tunneling? just a thought...
19  Game Development / Newbie & Debugging Questions / Re: Collision detection question on: 2012-11-20 11:26:54
Looks like what you want to do is pixel perfect collision detection, another method is as you described, which is create a complex triangulated mesh, but that seems way too complex for this.
20  Discussions / General Discussions / Re: What do you look like? on: 2012-11-19 13:27:18
You look tense in that photo... first time with a shotgun?  Grin
21  Discussions / Miscellaneous Topics / Re: What music do you listen to while you code? on: 2012-11-19 07:47:57
Sabaton, Dream Evil, Hammerfall, Accept, Ozzie just to name a few.
22  Discussions / General Discussions / What do you look like? on: 2012-11-17 12:01:26
I remember playing this game in another forum, what do you look like?

Here is my fat ugly face, enjoy!  Grin



What do you look like?
23  Discussions / General Discussions / Re: You're Good? Bad? or Don't Care? on: 2012-11-15 03:24:18
Are you sure you've got the links in the right order?  Grin

I agree with most of the stuff in the good programmers section... if you've got a steady salary and have time to experiment. Not good for Indies I wouldn't think.  Roll Eyes
24  Game Development / Shared Code / Re: Boolean BitFlags on: 2012-11-14 04:06:26
I updated the code above to the latest version we use in the engine, Due to the concerns raised before in terms of speed I've taken the time to create 4 versions using 4 different storage methods.

1D Boolean Array
1D Int Array
1D Long Array
Using BitSet as suggested earlier in post.

According to benchmark, the fastest method is a straight 1D Boolean Array while slowest method is BitSet. In higher runs of the benchmark using larger data types of 1000x1000 potential pairs, The difference in speed between BitFlag using Long and 1D Boolean Array is only approx 5-10% compared to memory usage of (approx) Long using 62440 bytes vs Boolean 499500 bytes. Assuming of course the VM gives 8 bits (1 byte) per boolean value.

Use it how you will gentlemen  Grin

~DrHalfway
25  Discussions / Miscellaneous Topics / Re: Age is just a number.... on: 2012-11-11 12:22:56
I code better when under influence of alcohol.

I remember doing a university coding assignment overnight and getting near full marks for it, I don't remember doing the assignment.

Sometimes we have to drown our sorrows, and re motivate... with alcohol.

Sweet sweet beer and vodka

especially vodka...

mm, I better go get some vodka.
26  Discussions / Miscellaneous Topics / Re: JGO Community Made Game on: 2012-11-11 07:25:55
I don't see this working... ever.

I'm already working on a project with a close mate i've known for years. It is just two of us, and there are times, very frequently where we want to rip each others throats apart. Imagine doing this with a community of 100's of people who barely know each other.

Rather than making a game, i'd be happy to contribute to a codebase for a general purpose world editor with modular plugin architecture to be able to be plugged in with existing projects written in LWJGL/Java2D/openGL.
27  Discussions / Miscellaneous Topics / Re: Age is just a number.... on: 2012-11-11 06:40:48
I'm 22, deferred from last year uni to work on my own game engine in java. Needless to say, everything is going great, ignoring the fact that we have a dozen game prototypes and none that are ready for launch.

Such is life, started seriously programming at age 17.
28  Discussions / General Discussions / Re: What's your preference is spacing on: 2012-11-06 13:24:18
Of course I don't mind... Its why I took the time to write the thing!  Grin

Always makes me happy when someone gets anything out of whatever I write  Grin
29  Discussions / General Discussions / Re: What's your preference is spacing on: 2012-11-06 12:40:43
I use both styles...


Wait a minute... those examples are from my dead tutorial that no one likes!
30  Game Development / Newbie & Debugging Questions / Re: "Dead Objects"? on: 2012-11-01 12:27:43
I always thought GC only collects objects which go out of scope?

1  
2  
3  
4  
5  
6  
7  
8  
9  
10  
11  
12  
public void someFunction() {
     Object someObject = new Object();

     // once function returns someObject is collected
}

public Object someFunction() {
     Object someObject = new Object();

     // scope of someObject is passed onto callee of someFunction(), its not collected
    return someObject;
}


Am I missing something here?
Pages: [1] 2 3
Play Revenge of the Titans! The situation is critical. We need fancy commanders to defend Earth, the moon, Mars!
 
Browse for soundtracks for your game!

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

The first screenshot will be displayed as a thumbnail.

The invasion has landed! On Mars! And you're there to beat 'em!
cubemaster21 (33 views)
2013-05-18 09:29:12

alaslipknot (42 views)
2013-05-17 09:24:48

gouessej (72 views)
2013-05-16 12:53:38

gouessej (71 views)
2013-05-16 12:17:58

theagentd (79 views)
2013-05-16 03:01:13

theagentd (74 views)
2013-05-16 03:00:54

StreetDoggy (114 views)
2013-05-15 03:56:26

kutucuk (138 views)
2013-05-13 05:10:36

kutucuk (138 views)
2013-05-13 03:36:09

UnluckyDevil (146 views)
2013-05-12 17:09:57
Complex number cookbook
by Roquen
2013-04-25 00:47:31

2D Dynamic Lighting
by Oskuro
2013-04-18 04:46:12

2D Dynamic Lighting
by Oskuro
2013-04-18 04:45:57

2D Dynamic Lighting
by Oskuro
2013-04-18 04:23:20

Noise (bandpassed white)
by Roquen
2013-04-06 05:36:01

Noise (bandpassed white)
by Roquen
2013-04-04 04:17:38

Java Data structures
by Roquen
2013-03-30 01:21:12

Topic Request
by kutucuk
2013-03-23 09:42:01
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!
Page created in 0.189 seconds with 20 queries.