Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  
Pages: [1] 2

Author Topic: Curse of War [RTS, ncurses, Linux]  (Read 7646 times)

koiwai

  • Bay Watcher
    • View Profile
Curse of War [RTS, ncurses, Linux]
« on: May 31, 2013, 03:59:23 am »

Hello the Dwarf Fortress Community!

I hope you don't mind if I announce a new open source ncurses game for Linux. It is a quite simple Real Time Strategy game. I hope, it can be interesting for you.


This is a small game I have written for Linux in C + ncurses UI. When I started, I thought that a strategy game made with ncurses is a relatively original but funny thing. Nevertheless, I'm pretty happy with the result now.

About:

Unlike most RTS, you are not controlling units, but focus on high-level strategic planning: Building infrastructure, securing resources, and moving your armies.

The core game mechanics turns out to be quite close to WWI-WWII type of warfare, however, there is no explicit reference to any historical period.

Download:
Source code: [Github] [zip]
Arch Linux: [AUR package]

Watch a short "How to play" video (I'm not the best speaker to say the least):


Two screenshots and a short animated gif:

Read Wiki or README

It is better to read the readme, but briefly:

1) Cities ("W#W", "i=i", and " n ") increase your country's population
2) Gold mines ("/$\") give your gold, which is used to build new cities.
3) Put flags on the map to move your army. Press space to add and remove flags.
4) You play as a ruler of the green kingdom.
5) Enemies have different personality and different approach to control their armies
6) Game conditions can be adjusted with command line arguments, see $ ./curseofwar -h

Controls:

  Arrow keys and H, J, K, L are for moving the cursor
  R or V   build village -> town -> castle
  Space    add/remove a flag
  X        remove all your flags
  C        remove a half of your flags

Download:
Source code: [Github] [zip]
Arch Linux: [AUR package]
 
Feedback
Your feedback is very appreciated.

Thanks!
« Last Edit: July 10, 2013, 04:12:38 pm by koiwai »
Logged

ank

  • Bay Watcher
    • View Profile
Re: Curse of War [RTS, ncurses, Linux]
« Reply #1 on: May 31, 2013, 06:43:43 am »

Don't have linux, but I like that you use 3 characters for each tile, and the pseudo 3d you got going.
Logged

koiwai

  • Bay Watcher
    • View Profile
Re: Curse of War [RTS, ncurses, Linux]
« Reply #2 on: May 31, 2013, 01:59:30 pm »

Thanks! I think that in general, using more than one character per tile has several advantages.

Even two characters per tile:
Code: [Select]
[][][]       [][]
[][][]  vs  [][][]
[][][]       [][]
can represent both orthogonal and isometric view.

However, the disadvantage is that the tile is not centered on a single character, so if you make a roguelike, you would like to have an @ at the center of the tile, probably.

Something like this:
Code: [Select]
  [-][-]         [-][-]
 [-][@][-]  or  [-][@][-]
  [-][-]          [-][-]
But this projection is skewed, which it is not always desirable. You need an even number of characters per tile to make it symmetric.

The representation used in the game takes actually 4 characters per tile, but one of them is always a space, so the meaningful part is made of 3 characters. Thus the projection is symemtric, and at the same time the tiles have a central character:
Code: [Select]
   [-] [-]
 [-] [@] [-]
   [-] [-]

The pseudo 3d looks neat, but I should admit that it is misleading. Because the tiles are hexagons, the top left tile has only two neighbors, while the bottom left tile has three neighbors. And the map is a rhombus in fact, not an isometric square.
« Last Edit: May 31, 2013, 02:08:07 pm by koiwai »
Logged

koiwai

  • Bay Watcher
    • View Profile
Re: Curse of War [RTS, ncurses, Linux]
« Reply #3 on: June 02, 2013, 04:01:20 pm »

The game is hosted [on Github] now.

Arch Linux users may install it as an [AUR package].
Logged

koiwai

  • Bay Watcher
    • View Profile
Re: Curse of War [RTS, ncurses, Linux]
« Reply #4 on: July 10, 2013, 12:22:55 am »

Update!

There are a lot of improvements since the last update, including a multiplayer mode, new map generation options, and better map generation algorithms.

A recent video by gotbletu:



Visit the Wiki to learn more:P
Logged

Angle

  • Bay Watcher
  • 39 Indigo Spear Questions the Poor
    • View Profile
    • Agora Forum Demo!
Re: Curse of War [RTS, ncurses, Linux]
« Reply #5 on: July 10, 2013, 01:03:33 am »

Looks interesting. Do villages, towns, and castles suffer if you put too many next to each other? How much does each of them increase your population by?
Logged

Agora: open-source platform to facilitate complicated discussions between large numbers of people. Now with test site!

The Temple of the Elements: Quirky Dungeon Crawler

koiwai

  • Bay Watcher
    • View Profile
Re: Curse of War [RTS, ncurses, Linux]
« Reply #6 on: July 10, 2013, 02:36:48 am »

Looks interesting. Do villages, towns, and castles suffer if you put too many next to each other? How much does each of them increase your population by?

In general, building cities next to each other does not do any harm. It can be somewhat suboptimal, but probably a cluster of 7 villages can be better than a single castle, though the price is the same. In early stages of a game it's better to scatter your villages, not too close, but not too far from each other. I think, bigger cities regenerate population quicker, and they are easier to defend than villages. Some computer opponents become crazy and attack, when they see large cities. You can exploit it too.

On each step of simulation villages, towns, and castles give +10%, +20%, and +30% of their current population respectively. Also, on every step, a portion of the population at a given tile is wandering to the neighboring habitable tiles.

You can take a look at https://github.com/a-nikolaev/curseofwar#readme, specifically "How to play" section for more detailed description. Also, I really like how gotbletu described game mechanics.
Logged

quinnr

  • Bay Watcher
    • View Profile
Re: Curse of War [RTS, ncurses, Linux]
« Reply #7 on: July 10, 2013, 03:17:29 am »

Pretty fun, got it to compile with no issues at all. I like all the customization of the settings that is available if you take a look at the README. Definitely check if out if you try to play. No critical input from me at the moment, I'm a bit tired to think seriously, but it was fun!
Logged
To exist or not exist, that is the query. For whether it is more optimal of the CPU to endure the viruses and spam of outragous fortune, or to something something something.

koiwai

  • Bay Watcher
    • View Profile
Re: Curse of War [RTS, ncurses, Linux]
« Reply #8 on: July 10, 2013, 01:28:00 pm »

Pretty fun, got it to compile with no issues at all. I like all the customization of the settings that is available if you take a look at the README. Definitely check if out if you try to play. No critical input from me at the moment, I'm a bit tired to think seriously, but it was fun!

Thanks. I think, I will add more information to wiki, with examples, some pictures, etc. Frequently, I disregard READMEs myself, when trying other programs, especially games.. And this is true that all configuration in this game is done by command line arguments, and players should be aware about that )
Logged

Mictlantecuhtli

  • Bay Watcher
  • Grinning God of Death
    • View Profile
Re: Curse of War [RTS, ncurses, Linux]
« Reply #9 on: July 10, 2013, 02:04:48 pm »

Well, this looks neat. PTW.
Logged
I am surrounded by flesh and bone, I am a temple of living. Maybe I'll maybe my life away.

Santorum leaves a bad taste in my mouth,
Card-carrying Liberaltarian

Geen

  • Bay Watcher
  • I'm gonna live forever, or die trying.
    • View Profile
Re: Curse of War [RTS, ncurses, Linux]
« Reply #10 on: July 10, 2013, 02:08:49 pm »

I don't run Linux but this does look quite interesting. Any chance of a windows port?
Logged

koiwai

  • Bay Watcher
    • View Profile
Re: Curse of War [RTS, ncurses, Linux]
« Reply #11 on: July 10, 2013, 03:56:05 pm »

I don't run Linux but this does look quite interesting. Any chance of a windows port?

I don't know. First of all, I can replace AIO asynchroneous input with older and more standard non-blocking input to make it Mac-friendly. For Windows, usually people say that the main difficulty is with curses library. Win-sockets is another possible problem, although it should not be really hard.

Well, I will try to run the game with cygwin in Windows, and I will let you know. I don't have real experience porting anything to Windows, but the game has very few dependencies, and it must be possible.
Logged

Canicus

  • Escaped Lunatic
    • View Profile
Re: Curse of War [RTS, ncurses, Linux]
« Reply #12 on: July 19, 2013, 02:26:53 pm »

I downloaded the zip file and extracted it.
After typing 'make' into the terminal,

Code: [Select]
main.c:22:20: fatal error: curses.h: No such file or directory
compilation terminated.
make: *** [main.o] Error 1

this error crops up. Do you know how to fix this?
Logged

Angle

  • Bay Watcher
  • 39 Indigo Spear Questions the Poor
    • View Profile
    • Agora Forum Demo!
Re: Curse of War [RTS, ncurses, Linux]
« Reply #13 on: July 19, 2013, 02:32:14 pm »

get the ncurses library with synaptic.
Logged

Agora: open-source platform to facilitate complicated discussions between large numbers of people. Now with test site!

The Temple of the Elements: Quirky Dungeon Crawler

koiwai

  • Bay Watcher
    • View Profile
Re: Curse of War [RTS, ncurses, Linux]
« Reply #14 on: July 20, 2013, 12:49:16 pm »

Right, you need ncurses to build and run the game.

Btw, if you have Ubuntu, you can also install the game using PPA packages.

Also, I'm working on a graphical SDL version, it will look like this (zoomed x2):



Another mockup: http://i.imgur.com/zfsE60W.png

This new version is in development.

At the moment ncurses version should work on Mac. There is a good chance that the SDL version singleplayer will work on Windows.
Logged
Pages: [1] 2