developer-friendly C-evo source

Any criticism and suggestions not related to the rules of the game

developer-friendly C-evo source

Postby vasya » Thu Mar 12, 2015 11:30 am

Hi all !

I recently made a variation of C-evo that is easy to work with. Modifications I made, quoting from the README:

* This project is developer-friendly, absolute paths were cleaned up and
a step-by-step instruction on how to compile from source was added.

* Development is happening in "git".
We want public bug reports, public MergeRequests/PullRequests, public forks.

* Pull requests for better Linux support will always be gladly accepted.
I fixed a bug with unit movement in `wine` as a starting point.
The game fully works in wine from now on (this was the only bug known)!

* You can of course see all the technical differences using git.
Look for commits diverging from the official version (steffen-gerlach git branch).
Last edited by vasya on Tue Mar 31, 2015 9:28 am, edited 2 times in total.
vasya
 
Posts: 130
Joined: Wed Mar 11, 2015 10:00 pm

Re: developer-friendly C-evo source

Postby vasya » Thu Mar 12, 2015 12:14 pm

Damn, forgot to mention the repo itself.:) https://gitlab.com/vn971/cevo/tree/delphi
Last edited by vasya on Sat Aug 29, 2015 7:24 pm, edited 3 times in total.
vasya
 
Posts: 130
Joined: Wed Mar 11, 2015 10:00 pm

Re: developer-friendly C-evo source

Postby Dirk » Mon Mar 16, 2015 12:17 pm

Interesting. Is the idea to change the game itself?
Dirk
 
Posts: 54
Joined: Sat Mar 23, 2013 12:14 am

Re: developer-friendly C-evo source

Postby vasya » Mon Mar 16, 2015 5:27 pm

That's a good question. Here's my attitude:

* I'm making my changes mergeable to Steffen code base. Ideally, I would love to see it merged.
A careful reader might notice that this goes a bit against Steffen-s general direction of development being centralized. At the same time, some distributed development tools simply did not exist back there at 1999. So maybe it's OK to introduce a git-based version now.

* I do not want big game changes because it takes a very good game designer to do it correctly.
Not every rule is a good one. Steffen proved to be a good person to design that. I would rather make "propositions" for rules, like I did with cost-based experience. These can be merged or NOT merged.


And finally another proposition that I planned:

* auto-patrolling territories with railroad. Currently, you may have a city with a couple of adjacent railroads. But each turn an enemy may move closer to your city. You may want to check that, move your unit to the edge of the railroad and see what's there in the fog of war. Bu-u-ut, that's micro-management again.:( A VERY boring one. So, how can we fight that?
1. We may have an auto-patrol feature for units, but this is hard to maintain.
2. We may do auto-patrolling for countries that have Shinkansen Express.
3. We may just give auto-patrolling for all countries and their railroads for free. Just accept the fact that railroad gives observation -- and that's all.

This is a game rules proposition currently, no implementation "attached"...

Thoughts?...
vasya
 
Posts: 130
Joined: Wed Mar 11, 2015 10:00 pm

Re: developer-friendly C-evo source

Postby Alvage » Wed Mar 18, 2015 5:12 am

I do use patrolling quite often, but usually it's not by RR. It is useful to patrol around a boundary, from a high terrain stack-defended tile, with a fast attack unit jumping out and back in by road or easy terrain, while the defender stays fortified. Honestly, have no habit of keeping the troops inside a city, so the RR grid around them would be of no use for this purpose, - unless you have Shinkansen, of course. The only exception is patrolling with aircraft: it must land in a city or get lost. An AI can (and should) be programmed to do it, no doubt. As for an auto-patrol user macro... not sure if this is possible without an overly complex setup screen.
Alvage
 
Posts: 48
Joined: Tue Mar 12, 2013 4:55 am

Re: developer-friendly C-evo source

Postby vasya » Thu Mar 19, 2015 9:00 am

Alvage wrote:have no habit of keeping the troops inside a city, so the RR grid around them would be of no use for this purpose


Well, that depends on how you would like (or not like) this to have.. May we simply want free observation for all railroads inside your territory?

I made a bad thing about mixing the two topics BTW. I initially wanted this post to be about the "developer-friendly C-evo source"..
vasya
 
Posts: 130
Joined: Wed Mar 11, 2015 10:00 pm

Re: developer-friendly C-evo source

Postby Dirk » Mon Mar 23, 2015 10:11 pm

i would like the game to be more accessible from the keyboard. Be able to scroll the map with the arrow keys for instance, use ESC and RETURN more etc. Move groups of units somehow. Ideally i would like the source to be in C# but i think that's way too ambitious. Vasya, which environment do you recommend to write Delphi in? I have no idea myself. Any free develop environment/compiler for this? I've seen the language itself is not too difficult. Finally, it might be a good idea to contact Steffen about this since changes that won't be merged won't go very far. I don't know if he's still involved in all this. Last time i contacted him was about the C# AI template, he fixed a nasty bug there and since then it's almost perfect.
Dirk
 
Posts: 54
Joined: Sat Mar 23, 2013 12:14 am

Re: developer-friendly C-evo source

Postby vasya » Tue Mar 24, 2015 2:15 pm

Honestly, if you haven't developed in Delphi before, I suggest not to do it at all... It's very old, and very ugly I would say. I'll answer exact questions below.

> which environment do you recommend to write Delphi in?
There is no much choice really, it should be Windows and Delphi. I use Windows XP inside VirtualBox. The Delphi package I use is an 11 years old (!!!) package that I took from school while I graduated in 2004. I actually don't know whether it's legal, whether my serial key is acceptable for what I do. I know, shame on me for that..
As you see, I haven't really answered your question because I don't know any legal way to do this. Delphi7 is not sold by now. The current Delphi costs 200$ or more, and is incompatible.

Pascal sources themselves _could_ be developed with a free alternative -- project Lazarus. But the project does not seem to be compatible at first glance. Some changes may probably be done that I just don't know how to do.

I also make small source code changes from my own OS (Linux) and only do the compilation in Windows, in command line. Big changes are hard to do this way though.

> it might be a good idea to contact Steffen
He might be already aware of the topic because he's the owner of the site and forum. But I'll write him personally, too, thanks for the remark.)
Last edited by vasya on Thu Mar 26, 2015 7:18 am, edited 1 time in total.
vasya
 
Posts: 130
Joined: Wed Mar 11, 2015 10:00 pm

Re: developer-friendly C-evo source

Postby Cor'e =) » Thu Mar 26, 2015 6:37 am

Delphi libraries themselves do not seem to present bugs in the game (?), they seem solid even if they're old, but the source itself is where the issues arise, and only Steffen appears to fix them (centralized), would it be possible to actually wrap the Delphi libraries calls in a newer language? That way we could manage the actual code dynamics in let's say C++ or C# or even Java, but when needed call the the Delphi subs... then at some later point replace those Delphi sub calls with a preferred "modern" language that is just as effective as Delphi was/is at doing its part(s).

Regarding Lazarus, yes, i made some inquiries in the past and recently renewed such inquiries, there may be more compatibility now to convert the code, someone should look into this. =)
Cor'e =)
 
Posts: 122
Joined: Tue Mar 12, 2013 1:44 am

Re: developer-friendly C-evo source

Postby vasya » Thu Mar 26, 2015 7:56 am

About mixing libraries - that's not a topic I'm really competent at, so I can't say anything..

Lazarus, at the same time, is very interesting to me. I see now you made some effort to do the porting in the past:
http://forum.lazarus.freepascal.org/ind ... pic=7914.0
Do you have the source package from the user "skalogryz", where he says that "here's the first step. Lazarus compiles the project" ?

Since I already created a git-based repository for C-evo, I might as well put the Lazarus fork there. Better than losing this in time...
vasya
 
Posts: 130
Joined: Wed Mar 11, 2015 10:00 pm

Next

Return to Discussion



Who is online

Users browsing this forum: No registered users and 1 guest

cron