Conquests
I'm working on Conquests, an open source 4X Civilization-style game, for Windows and Linux. It's in a fully playable state now. Download it at https://launchpad.net/conquests/+download. The graphics, sound, music are all 3rd party used under free licences (with the exception of some procedurally generated textures used for terrain and background), including some from Open Game Art: http://opengameart.org/content/fat-man http://opengameart.org/content/mouse-click http://opengameart.org/content/completion-sound http://opengameart.org/content/battle-march-epic-orchestral-music-loop See http://conquests.sourceforge.net/#licences for a full list of licence information. Please let me know or leave a comment if you have any problems with the game, or if you have bug reports, suggestions etc :)
I tried it on Windows, it was playable & promising.
Some notes:
1) The AI declares a war on me, then sends hordes and hordes of settlers into my territories to be slaughtered, and only a few real units. If I don't kill the settlers, the settlers usually just hang around in my territory, doing nothing.
2) Mouse controls have a very laggy response. Every time I click with the mouse, it takes almost a second or so for it to have an effect; if I move my mouse after clicking, it reads it as the click to the current location of the mouse, rather than to the location of the mouse at the time of the click. Keyboard doesn't have similar laggy response.
3) Where is the project going? Right now it's a very close Civilizations clone; will it be getting some more differentiating gameplay elements? That would be a good thing to do because, like they say, if I wanted to play Civilization I'd just play Civilization. Going with a fantasy theme is always a good way to insert arbitrary interesting gameplay mechanics; of course there are other ways to do that too.
4) The AI doesn't like attacking enough; eg if I end my chariot's (4 attack / 1 defence) turn next to some of his peasants (1 attack / 1 defence), he often doesn't attack me with them although it would be the obvious thing to do.
5) Having the minimap on the main screen at all times would greatly help quick moving-around-the-map. The minimap could use more natural colors instead of the current bright blue & green.
6) I had it crash once when viewing the dialog that lists foreign civilizations. It didn't happen again upon reloading.
EDIT: does Power do anything besides giving one-time bonuses at unknown thresholds?
I tried turning off the shader options in the configuration program; it started crashing rapidly then.
http://pastebin.com/raw.php?i=9ZsGT9ZR
Thanks for your response!
1. Good point - it should be easy to stop the AI moving Settlers into enemy territory. Coordinating a better invasion force is something the AI has trouble with too, though will take more work to improve (this seems to be something the official Civilization games have trouble with too, in my experience, but it's something to try improving).
2. Unfortunately I don't get that on my machines (including my netbook). My guess would be that although I've switched keyboard to being a proper event based model, mouse clicks aren't, so that's an obvious distinction. I'm now updating the mouse routines to see if that helps.
Even so, it seems odd that the response is so slow only on some machines. What sort of frame rate are you getting when this happens? (Shown in bottom left.)
3. Yes indeed, it's just Yet Another Civilization clone. I'm motivated because I enjoy programming, rather than designing - the same lack of originality would have been evident if I'd been writing Yet Another FPS game ;) But yes, I agree that differentiation is good, and I need to do things if I'm attract new people to my game rather than existing ones.
There are differences, though minor rather than dramatic. I do have ideas for possible new additions to the mechanics - as well as a fantasy style-game based on it, in fact - though I wanted to focus on getting the basics of a working game first, that I could then experiment on later. I've had too many projects in the past where I've started off writing a game that I thought was a cool idea, only to spend months on something that I then realise is unplayable, unworkable, or I just lose focus. To some degree it's also simply a learning exercise / something to develop my game engine with / something for fun - it's been a style of game I've always wanted to try writing.
The fantasty style-game, if I get round to it, would be a separate project, but using the same underlying engine.
4. This is possibly because the AI chooses to use Peasants to build roads (in Conquests, many foot units can do this, rather than just Settlers), but yes, it would be the obvious choice to attack an adjacent enemy unit where the odds are better than being attacked. Should be easy to fix.
5. Both good points, have added them to the TODO list.
6. Oops. If it happens again, it's worth checking in %APPDATA%/conquests , to see if there a file called log_assertion_failure.txt .
Power: Not yet. This was one of those attempts at a new idea that went some way, but then I struggled with. It was originally to be a "win" condition (i.e., basically a Score) - but then I didn't like the idea that player's would basically be building arbitrary things just because that's how to win. I'm tempted to agree with C-Evo's philosophy that this kind of game doesn't really need an arbitrary score, when it's usually obvious to the player by the end whether you're the leading civilization or not. So I added the bonuses effect, but yes, I think it needs something more to it.
Re: the crash without shaders - thanks for the details, I've fixed that now, for the next version.
Anyway, thanks for your input.
I've uploaded version 0.14. Regarding the points above:
1. Settlers no longer enter enemy territory when at war - should fix the Settler invasion problem.
2. I've switched to using a proper event model for mouse clicks. As I say, it's unclear why it was so slow - would be curious to know if this fixes or improves the problem.
4. The problem was when units were building roads/railways - they'll now attack an adjacent unit if the odds are better than being attacked.
5. The map is now a minimap that can be onscreen all the time; it's less blurry, and has clearer, softer colours. You can also click on it to change the viewpoint.
6. There was a crash I've now fixed with listboxes, where it would crash if you clicked in the scrollbar area, when no scrollbar was displayed (this is a recent bug - in the last version I'd rewritten the routines for scrollbar drawing and input). So possibly this is what you were seeing.
The crash when no shaders were used is also fixed.
And various other improvements - you can now create custom maps using Tiled Map Editor ( http://www.mapeditor.org/ ) - it was a thread somewhere on these forums that suggested Tiled; simply making my game compatible with the Tiled file format was certainly much easier than writing my own editor from scratch.
"What sort of frame rate are you getting when this happens?"
The framerate number is something between 2 and 8, both in the new build and before, and both in the town dialogue and outside, and both with shaders and without. Sorry about talking of the big keyboard/mouse differences; I think I thought that just because keyboard lag is not as easily noticable.
Hi,
I think the low performance may be a factor in the sluggish response. What CPU / graphics card do you have? I'm wondering if there's a problem on some systems for some reason, or if the required spec is just higher than I thought.
What's the frame rate in the 2D mode (can be changed during the game, with "View 3D/2D"), and is the UI response any better? (A different rendering algorithm is used in 2D mode.)
I also wonder if running in full screen mode (from the Preferences) is any better?
Thanks for taking a look.
I've now released version 0.15, which fixes graphical problems on ATI graphics cards. The Linux version also now supports proper installation, and there are now binaries for Ubuntu (at https://launchpad.net/~mark-harman/+archive/conquests/+packages ). For the gameplay, many improvements and units now require various elements (stone, iron, etc) which have to first be acquired by the city.
why haven't you tried uploading it to Debian, if you are able to upload it there, then many deb-based distributions would automatically have the package and hence the game. You may have to work quite a bit more but the results should be good for you. You can try connecting with the people at http://lists.debian.org/debian-devel-games/
Thanks for the link - I am a bit unclear as to how one gets a Debian package included in the various official Linux packaging systems, but I'll take a closer look.
I've now released version 1.0. (Not that games are ever finished :) But I hope it should be playable as a game now, and from now on it's more a case of bug fixing and whatever additional features I want to add.)
I added "rebellions" (units kind of similar to "barbarians" in Civilization, but they happen within your own territory, and the chance of them happening can be reduced by building various city improvements); Great Projects (improvements specific to a single civilization); along with actually having a game ending point (winner decided by conquering everyone else, or having the highest Power). Full history at http://homepage.ntlworld.com/mark.harman/conquests.html#history .
I am trying to submit it through to the Ubuntu Software Centre (currently going through the submission process).
@mdwh it is indeed good news that you are going through the ubuntu software submission process. I don't think you should have much trouble getting into Ubuntu as you are already on launchpad (Ubuntu and many other project's home) so you are already sharing the infrastructure and from what I had read of the licenses even that is not an issue.
I have seen the page and see that there are quite a few things missing on the informational page that you had linked.
http://homepage.ntlworld.com/mark.harman/conquests.html
a. It does not tell/share for instance the software requirements of the game. I'm sure you need to have certain libraries and -dev packages (for headers and what not) if one should be able to able to compile the package successfully.I do see however that you have given the instructions as
"The source code is available, released under the GPL v2 or later. Please see the file conquests_source.txt (in the source archive) for details on how to compile." It would have been nicer to at least give some information about what is needed beforehand. I for one do not download stuff before I have an idea as to how much space it is going to take. While hdd's are becoming bigger its always a good idea to know beforehand as its not just the size but also the bandwidth and time taken to download the same.
$ aptitude show openclipart-svg | grep Size
Uncompressed Size: 1,107 M
b. The other thing is you have not mentioned how much space it needs atm. Of course over-time the sizes may become bigger as more people add stuff to it so it might (or not) become quickly outdated but it will be nice to know how much space is used.
c. There is no mention of how to download if one wants to see the state of VCS. I usually enjoy playing the bleeding edge and getting back to people when it breaks or something doesn't work (as a tester) so it would be nice if such information is available.
Looking forward to your answer.
Good suggestions - I've added the list of libraries of Linux to the webpage, and also added estimates for the install size (a bit hard to estimate for Linux as it depends on what libraries are already installed, but I've put the size that the Conquests folder will require, as a minimum).
I'll hopefully have online source control available soon.