Java-Gaming.org Hi !
Featured games (83)
games approved by the League of Dukes
Games in Showcase (522)
Games in Android Showcase (127)
games submitted by our members
Games in WIP (590)
games currently in development
News: Read the Java Gaming Resources, or peek at the official Java tutorials
 
    Home     Help   Search   Login   Register   
Pages: [1]
  ignore  |  Print  
  Galactic Conquest 4K  (Read 5912 times)
0 Members and 1 Guest are viewing this topic.
Offline Grunnt

JGO Kernel


Medals: 94
Projects: 8
Exp: 5 years


Complex != complicated


« Posted 2011-12-28 18:42:27 »

Hey everyone, I've just entered my submission to the Java4K contest: Galactic Conquest 4K, a simple yet fun 4X RTS in 4K :-) It's even got a Terrible Space Monster in it!


You can play it at the Java4K site:
http://www.java4k.com/index.php?action=games&method=view&gid=370

Any feedback is welcome!

Making this game was actually less difficult than I anticipated. All the advice on these forums and the Java4K site on how to reduce JAR size and use all kinds of tools for that was very helpful. I've even learned quite a bit while making the game. Also, making such a small game is a great way to prototype a gameplay idea.

Offline Riven
« League of Dukes »

« JGO Overlord »


Medals: 835
Projects: 4
Exp: 16 years


Hand over your head.


« Reply #1 - Posted 2011-12-28 21:53:11 »

Once you set a collection point (C) and you remove it, no new spaceships will appear Smiley

Hi, appreciate more people! Σ ♥ = ¾
Learn how to award medals... and work your way up the social rankings
Offline Riven
« League of Dukes »

« JGO Overlord »


Medals: 835
Projects: 4
Exp: 16 years


Hand over your head.


« Reply #2 - Posted 2011-12-29 01:25:59 »

A lot of ships aren't actually built. I checked a few stars/planets and very often ships wouldn't appear when the counter reached 100%

Hi, appreciate more people! Σ ♥ = ¾
Learn how to award medals... and work your way up the social rankings
Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline Grunnt

JGO Kernel


Medals: 94
Projects: 8
Exp: 5 years


Complex != complicated


« Reply #3 - Posted 2011-12-29 06:54:19 »

Hey Riven, thanks a lot for trying it out!

Once you set a collection point (C) and you remove it, no new spaceships will appear Smiley

Strange, I cannot seem to replicate this. I've tried setting and removing collection points, but spaceships keep on appearing. Maybe its related to your second point?

Quote
A lot of ships aren't actually built. I checked a few stars/planets and very often ships wouldn't appear when the counter reached 100%

This is actually a "feature" Grin I put a hard cap on the maximum amount of ships that can be built. However, I guess I need to find a way to put in a "cap reached" message somewhere and not simply make the newly built ships disappear into a black hole.

Offline Riven
« League of Dukes »

« JGO Overlord »


Medals: 835
Projects: 4
Exp: 16 years


Hand over your head.


« Reply #4 - Posted 2011-12-29 15:27:58 »

Reading your reply, I think my two points are refering to the same 'feature' and I simply didn't observe it long enough to see that the collection point had nothing to do with the lack of new ships being produced.

I like the game, but the 'space monster' is really unfair. It's strong and hops from planet to (nearby) planet, which most often means it ruins the game for 1 player, as it takes large amounts of ships to destroy. Whenever I see the space monster spawning near me, I simply restart the game.

Hi, appreciate more people! Σ ♥ = ¾
Learn how to award medals... and work your way up the social rankings
Offline Grunnt

JGO Kernel


Medals: 94
Projects: 8
Exp: 5 years


Complex != complicated


« Reply #5 - Posted 2011-12-30 08:54:59 »

The Space Monster is indeed a completely random element in the game. I think it needs about 75 ships to destroy, which is quite a lot indeed. I'll see if I can tune it somehow to make it a bit less of a game changer.

Offline ra4king

JGO Kernel


Medals: 355
Projects: 3
Exp: 5 years


I'm the King!


« Reply #6 - Posted 2011-12-31 03:27:14 »

Wow that was a really fun game. Fortunately for me, the space monster spawned far away so by the time he reached my planets I killed him in an instant, then I dominated the rest of the universe. This actually reminds me of a similar game from last year's Java4K competition. I'll try looking for it and update this post.

EDIT: Aha!! Moo4K

Offline StephR

Senior Devvie


Medals: 9



« Reply #7 - Posted 2012-01-02 21:09:28 »

It seems to be a really interesting 4X game. I will give you later deeper comments about its gameplay. For now, I can just add that you should have advertised it as a real time 4X, which differentiates it a lot from last year's Moo4K, which was a turn based game.
Offline Grunnt

JGO Kernel


Medals: 94
Projects: 8
Exp: 5 years


Complex != complicated


« Reply #8 - Posted 2012-01-02 21:58:58 »

It seems to be a really interesting 4X game. I will give you later deeper comments about its gameplay. For now, I can just add that you should have advertised it as a real time 4X, which differentiates it a lot from last year's Moo4K, which was a turn based game.

Well, I did list under features: "4X RTS in just 4K!" Also, the difference is quite obvious once you start playing Grin


Offline Grunnt

JGO Kernel


Medals: 94
Projects: 8
Exp: 5 years


Complex != complicated


« Reply #9 - Posted 2012-01-02 22:01:50 »

Wow that was a really fun game. Fortunately for me, the space monster spawned far away so by the time he reached my planets I killed him in an instant, then I dominated the rest of the universe. This actually reminds me of a similar game from last year's Java4K competition. I'll try looking for it and update this post.

EDIT: Aha!! Moo4K

Ah yes, I did see Moo4k. It's got some simularities, although it's more menu-based, it's got map scrolling and its turn-based instead of real-time. Anything that smells like Master of Orion 2 sounds like fun to me.

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

JGO Kernel


Medals: 94
Projects: 8
Exp: 5 years


Complex != complicated


« Reply #10 - Posted 2012-01-02 22:05:00 »

[...] I will give you later deeper comments about its gameplay. [...]

One thing I tried to do with this little game is to reduce the 4X type of game to its most simple uncomplicated form, and to make the UI as simple as possible. I guess I like simplicity.

Offline Riven
« League of Dukes »

« JGO Overlord »


Medals: 835
Projects: 4
Exp: 16 years


Hand over your head.


« Reply #11 - Posted 2012-01-02 22:51:49 »

This actually reminds me of a similar game from last year's Java4K competition. I'll try looking for it and update this post.

EDIT: Aha!! Moo4K
I think you meant http://java4k.com/index.php?action=games&method=view&gid=346 ?

Hi, appreciate more people! Σ ♥ = ¾
Learn how to award medals... and work your way up the social rankings
Offline ra4king

JGO Kernel


Medals: 355
Projects: 3
Exp: 5 years


I'm the King!


« Reply #12 - Posted 2012-01-02 23:09:42 »

Ah no I never played that one :/

Offline Grunnt

JGO Kernel


Medals: 94
Projects: 8
Exp: 5 years


Complex != complicated


« Reply #13 - Posted 2012-01-04 10:03:34 »


Ah nice, haven't seen that one yet. I think I did get some inspiration from a similar game I played on android a bit quite some time ago, at least as far as the simple controls are concerned.

Offline Localhorst

Senior Newbie





« Reply #14 - Posted 2012-01-04 10:20:26 »

I often take a deeper look into the java4k games in common, as well as in yours in general. Mainly to get rid of the space monster, but also to simplify the controls (more mouse interactions).
Anyway i got stuck in a common problem i always have and somehow unable to understand.

You use a lot of continue instructions and they are all something like this

while/for loop {
..
instruction
continue;
instruction
..
} //while/for loop

I know how to deal with break/continue commands, but i have no idea what should happen if you add a continue in a loop with no statement limiting the continue execution.
From what i know is that continue breaks the instruction chain and moves back to the loop, while break breaks out of the loop.

But what is if you add a continue like the way you did?

1  
2  
3  
4  
5  
6  
7  
8  
9  
10  
11  
12  
13  
14  
15  
while (i2 < i / 30)
              {
                if (i21 < 255)
                {
                  arrayOfInt6[i21] = 4;
                  arrayOfFloat1[i21] = ((i2 + 1) * 10 * 3);
                  arrayOfFloat2[i21] = (i13 + 20);
                  arrayOfFloat3[i21] = 0.0F;
                  arrayOfFloat4[i21] = (128.0F * i1 * 0.85F);
                  arrayOfFloat6[(i21++)] = 1.0F;
                }
                i2++;
                continue; // what is this good for, since the whole code below does not seem to become executed in general, or am i'm wrong?
                i1 = 0;
                while (i1 < 2)

Offline Grunnt

JGO Kernel


Medals: 94
Projects: 8
Exp: 5 years


Complex != complicated


« Reply #15 - Posted 2012-01-04 12:14:18 »

Hey Localhorst, funny you take such a close look at my code Cheesy However, I don't recognize the code you put up here. In my code I use no continue statements whatsoever, but I do use some break statements, for a quick search in an array, e.g.:

1  
2  
3  
4  
5  
6  
7  
8  
9  
10  
11  
12  
// Find available fleet
for (int sh = 0; sh < MAX_NUMBER_OF_SHIPS_PER_RACE; sh++) {
   if (fleetOrigin[starOwner[s]][sh] == -1) {
      // There is a fleet available, so lets move
      fleetOrigin[starOwner[s]][sh] = s;
      fleetDestination[starOwner[s]][sh] = closest;
      fleetProgress[starOwner[s]][sh] = 0;
      fleetShips[starOwner[s]][sh] = starShips[s];
      starShips[s] = 0;
      break;
   }
}


However, I just checked and nowhere in my code does a break or continue statement appear with other statements following it in the way your code sample shows. Neither can I find the constant values listed, like 30, 255, and so on. Does this have something to do with the way you disassembled the bytecode? I can't imagine the compiler making such mistakes.

Offline Localhorst

Senior Newbie





« Reply #16 - Posted 2012-01-04 15:14:15 »

Ay, so it is probably a weird result made by the Decompiler - i somehow trust too much into the result of this jad tool, but the one of the pro's is that once you understood the code you know how it works Smiley

http://pastebin.com/kgKbcHu9

Cheers
Offline ra4king

JGO Kernel


Medals: 355
Projects: 3
Exp: 5 years


I'm the King!


« Reply #17 - Posted 2012-01-04 15:33:56 »

I recommended you use jd-gui, it's the best decompiler I've found.

Offline Grunnt

JGO Kernel


Medals: 94
Projects: 8
Exp: 5 years


Complex != complicated


« Reply #18 - Posted 2012-01-04 15:36:24 »

Ok, made an update based on the comments made, and because I managed to squeeze out a few more bytes using the JoGa tool. The graphics are much nicer now, and are using antialiasing. Also, I rebalanced the space monster so it's less of a game breaker if you're in bad luck.

Unfortunately I had to remove the 1,2,3 keyboard controls for selecting ships because I needed the bytes. However, to avoid RSI I changed the selection sequence when clicking a star from 1, half, all to all, half, 1. This saves a lot of clicking since usually people will want to send all of the ships instead of just one.

If you're still curious, I've put the source code online too Cheesy

http://www.java4k.com/index.php?action=games&method=view&gid=370

Offline asphaltgalaxy

Junior Devvie


Medals: 1



« Reply #19 - Posted 2012-01-06 12:21:34 »

Wow, what a fun game! Really addicting! Like it and wish it took part in at least 8k games Smiley
Offline Pit

Junior Devvie


Projects: 2



« Reply #20 - Posted 2012-01-08 13:31:04 »

Very cool game Smiley
And the space monster is much less frustrating now. The only thing I was wondering about: Sometimes I have one star that produces red instead of green ships. Bug or feature?^^
Offline Localhorst

Senior Newbie





« Reply #21 - Posted 2012-01-08 16:59:27 »

This might be a bug, if you want to make sure that this does not happen add the following line:

1  
2  
3  
4  
5  
int imgIndex = starOwner[s];
...
// Render ships in orbit
random.setSeed(starSeed[s]);
g.setColor(starColors[imgIndex]); //this one has to be added :)


Oh by the way, i played a bit with some Perlin Noise to create a nice looking space nebulae background. I used this paper as starting point:
http://www.infiniverse-game.com/?p=articles-creating_nebulae.php

It is not that complicated at all and it looks quite cool. Anyway i doubt that this would fit into the existing 4k game..

Regards
Offline Grunnt

JGO Kernel


Medals: 94
Projects: 8
Exp: 5 years


Complex != complicated


« Reply #22 - Posted 2012-01-08 19:48:50 »

@Localhurst

Thanks a lot for the bugfix suggestion! I'll see if it fixes the problem as soon as I get the chance (I'm away from home for a few days). The Perlin Noise effect looks quite cool indeed, but it may be a bit too much for 4K.

@Pit

Thanks Smiley The incorrectly colored ships are not a feature, so I'll see if I can fix that.

Offline Abuse

JGO Knight


Medals: 14


falling into the abyss of reality


« Reply #23 - Posted 2012-01-08 22:54:35 »

If you need to save a few bytes, avoid using Random & just inline the implementation of Random.next(...); it's very simple, and will cut a load of String entries in the constants pool.

Make Elite IV:Dangerous happen! Pledge your backing at KICKSTARTER here! https://dl.dropbox.com/u/54785909/EliteIVsmaller.png
Offline Nyhm

Senior Devvie


Medals: 3
Projects: 1


Island Forge


« Reply #24 - Posted 2012-03-06 16:23:37 »

I know I'm late in the game (so to speak) on this topic, but I just found Galactic Conquest 4K, and I'm now completely addicted. I love this genre, but many 4x games go way overboard with complex micro-management.  You've successfully boiled it down to the core essentials that make this genre fun. (I gave it 5 points in Java4K 2012 community voting.)

By the way, I can consistently win at Easy level, but still only about 50% success rate at Normal.

Island Forge: Create Islands with Stories for Others to Explore!
Free-to-Play with Membership and Upgrade options!
Offline davidllanos22

Junior Devvie


Projects: 2


I'm just a learner!


« Reply #25 - Posted 2012-03-06 20:08:07 »

What an addictive game! I've lost but it's a good game! haha Wink

Offline Grunnt

JGO Kernel


Medals: 94
Projects: 8
Exp: 5 years


Complex != complicated


« Reply #26 - Posted 2012-03-08 08:08:40 »

I know I'm late in the game (so to speak) on this topic, but I just found Galactic Conquest 4K, and I'm now completely addicted. I love this genre, but many 4x games go way overboard with complex micro-management.  You've successfully boiled it down to the core essentials that make this genre fun. (I gave it 5 points in Java4K 2012 community voting.)

By the way, I can consistently win at Easy level, but still only about 50% success rate at Normal.

Thank you! I've been struggling in getting the controls as simple as they are, so it's glad someone appreciates this Smiley The challenge is to make things (interestingly) complex without making it overly complicated.

Offline Nyhm

Senior Devvie


Medals: 3
Projects: 1


Island Forge


« Reply #27 - Posted 2012-03-08 14:34:00 »

I know I'm late in the game (so to speak) on this topic, but I just found Galactic Conquest 4K, and I'm now completely addicted. I love this genre, but many 4x games go way overboard with complex micro-management.  You've successfully boiled it down to the core essentials that make this genre fun. (I gave it 5 points in Java4K 2012 community voting.)

By the way, I can consistently win at Easy level, but still only about 50% success rate at Normal.

Thank you! I've been struggling in getting the controls as simple as they are, so it's glad someone appreciates this Smiley The challenge is to make things (interestingly) complex without making it overly complicated.

Well put - that's exactly how I like to think about game design. The most elegant games have the most variety from the simplest rules.

Island Forge: Create Islands with Stories for Others to Explore!
Free-to-Play with Membership and Upgrade options!
Offline StephR

Senior Devvie


Medals: 9



« Reply #28 - Posted 2012-03-11 21:26:46 »

Between Galcon and a complex 4X, your game is really distinct from previous entries on the same topic ( 2011's War of Wars and Moo4k ).

And it is very challenging, which is impressive for a 4 Kb strategy game. I have beaten it once in normal difficulty, and it was a hard fight against the last opponent. I wonder if anyone has already finished the game in higher difficulty levels.
Offline Grunnt

JGO Kernel


Medals: 94
Projects: 8
Exp: 5 years


Complex != complicated


« Reply #29 - Posted 2012-03-12 11:53:19 »

Between Galcon and a complex 4X, your game is really distinct from previous entries on the same topic ( 2011's War of Wars and Moo4k ).

And it is very challenging, which is impressive for a 4 Kb strategy game. I have beaten it once in normal difficulty, and it was a hard fight against the last opponent. I wonder if anyone has already finished the game in higher difficulty levels.

Thank you Grin "Challenge" is such an interesting word.. It's easy to make something difficult, but that's not necessarily fun or interesting. Challenge is like difficult + Sid Meier's "a game is a series of interesting choices". Anyway, I'm in a philosophical mood I guess.

I didnt manage to win the game at difficulty above normal. Also, I've started doing some work on making an improved (bigger-than-4k) version of this game, using nicer graphics and sounds (using slick 2d), and maybe making things a little bit more complex. But that may take a while.

Pages: [1]
  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.

trollwarrior1 (29 views)
2014-11-22 12:13:56

xFryIx (71 views)
2014-11-13 12:34:49

digdugdiggy (50 views)
2014-11-12 21:11:50

digdugdiggy (44 views)
2014-11-12 21:10:15

digdugdiggy (38 views)
2014-11-12 21:09:33

kovacsa (62 views)
2014-11-07 19:57:14

TehJavaDev (67 views)
2014-11-03 22:04:50

BurntPizza (65 views)
2014-11-03 18:54:52

moogie (80 views)
2014-11-03 06:22:04

CopyableCougar4 (80 views)
2014-11-01 23:36:41
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

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
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!