Pre-Order the Game!

Desura Digital Distribution

Monday, July 11, 2011

In-Game Menu and Diplomacy Done, Preview of Combat

I've finished up the core functionality of diplomacy screen, finally. You can now receive messages, and decide whether or not to accept (if available) the offer. It also shows outgoing/incoming message icons on top of avatars.

With that out of the way, I decided to do a quick implementation of the in-game menu where you can go to set up game options, save, etc. It now can start a new game from there, or go back to main menu. Saving/loading still haven't been implemented. I hope to do that soon though!

With most major screens done, I have two major screens left to do: Space Combat or Manage Ship Designs. Hmm... which sounds more exciting? Since I'm a bit sick of doing UI stuff for different screens, I decided to actually start implementing space combat!

I modified the space combat screen (shown in a post a long time ago) to use the new ship design code, and to allow for more than two fleets to fight at once. I had to change how ships are placed, and modify some other code, to allow for this change. I hacked together a simple combat scenario (all empire's starting fleets start at 0,0, with each fleet having three different ships) so it'll bring up combat screen at end of turn processing. This is what it looks like when you have five empires involved in a combat:

Each fleet is put at a point that's equidistant from other points, and each fleet have its ships positioned on a tangent line at that point. So you can see the five fleets with their ships facing the center of the circle. The more ships/fleets there are in a combat, the bigger the combat area will be.

This is a closeup of one of the fleet in the combat screen:

This is just a quick hack to get the combat screen to work. There's a lot of work to be done! I need to improve ship placement (they get overlapped), then do the check for possible conflicts in a correct way (I hacked it so it'd always conflict with all fleets), then rest of the combat stuff.


  1. Yeah, when you have to draw each piece of GUI, it does get repulsively tedious to do yet another screen.

    On the other hand, implementing combat is a big chapter.

  2. Just thought I'd mention I like the art that is being produced (humans were like - omg, you captured MoO humans, new race is pretty nifty too). What I'm not a fan of is the fuzzy nature of those art when zoomed out. On both the main planet screen (the ships don't look great nor do the planets) or the ship combat screen - stuff looks good unless you're waay zoomed out. If this were a 3d engine, I'd say turn on the AA or use more detailed models.

  3. Yes, I've noticed that problem with sprites scaling as well. I've been thinking that I can remove zooming out/in, and use a minimap to show locations of stars or ships. That way, it don't look ugly because everything stays 1:1 in drawing, and minimap gives you a way of navigating the galaxy/combat screen. This is using a 2D engine, so I can't use the 3D tricks for making it look good.

    By planets, are you referring to the stars on the galaxy screen? The planets as listed in list of planets in a system are not scaled.

  4. Sorry, yes, I meant the stars.

    Minimap sounds interesting, the alternative (and/or joint option) may be to just have a minimum size for some of those items. Like, If you zoom all the way out, and all the way in, and there are 10 zoom levels, perhaps the ships and stars never get smaller than zoom 8. I don't think it would impact that much, who cares if the stars/ships are a bit large on the galaxy screen? Not so sure about the combat screen, perhaps you can do the same thing, and to avoid overlap issues, just do an auto zoom8 during movement/combat, or have something that just tiles the art on collision, dunno.

    I'm more a business person, my basic python skills don't make me that knowledgeable about the technical details of this.

    Slightly OT - Is that the final starfield/galaxy backdrop? Any thoughts on galaxy shapes (ie SOTS)?

  5. Currently, the fleet icons have that "minimum size", so if it's smaller than 8 pixels, it will be minimum 8x8 pixels. Stars are already big enough, and they don't look too different when zoomed out.

    The bigger the galaxy is, the more zoom levels there are. You're guaranteed to be able to zoom all the way out so you can fit the entire galaxy into your screen. That's the maximum zoom.

    There are galaxy shapes that you can select. If you look at one blog post I did with "New Game" screen, you can see "Random" drop-down under the galaxy preview. That's the galaxy shape, with random meaning the entire map will have random placements. There are Cluster, Diamond, Star, and Ring shapes as well. Maybe next post I will show Ring as an example.

    No, that's not the final starfield backdrop. I'm hoping to improve the appearance of it by adding background stars and other stuff, and improving the look of nebula.

  6. Something is not exactly clear to me.
    You are referring to your game as MoO1 clone, and several things justify that.
    However in newer posts (like this one) it seems to me that you changed your mind for the combat: ship vs. ship (~MoO2) instead of fleet vs. fleet (~MoO1).
    What is surprising to me is that you definitely started with the MoO1 approach:
    and I cannot find the point where you changed your mind. You were referring to this f2f design in several posts - as it has major effects on several decision, e.g. weapon modifiers.
    Now you seem to use the s2s approach, but I don't find the decision, or the cleanup on the consequences.
    And in fact to me this is a major step toward MoO2, which is not what I would prefer...