Quote from: Stephen on July 22, 2018, 05:52:48 PM
Welcome back duke :)
I like the idea of having a Knights development revival (especially if it's not me doing the work, lol). In fact I was kind of secretly hoping that someone would come along and suggest this :) as I haven't had any time to work on Knights myself for a long time.
The idea of rewriting in C# is interesting. I agree with Impassive though, it would be a huge amount of work. The core game logic (I think it's called "KnightsEngine" in the code) would probably port across quite easily, but all the UI code is going to need a complete rewrite because you won't have Guichan available, you'll need to rewrite it to use something else instead. (Unless you want to port Guichan itself, but that won't be easy either.) I think it could take several years if you go down this route.
That being said, there would clearly be advantages to doing this, like having a more up to date codebase, and possibly being able to port to other platforms as you suggest. Just make sure you know what you are getting into :)
Improving the C++ version might be an easier route. Do you have any specific changes you would like to make, or is it just that you want to bring the codebase up to date to use more modern libraries etc?
Quote from: ImpassIve_rus on July 16, 2018, 12:44:44 PMThanks!
Welcome back, duke!
Quote from: ImpassIve_rus on July 16, 2018, 12:44:44 PMWell, of course it is tricky and a challenging task. I'd also imagine that even just bringing all the libraries used in the original C++ version up to date will introduce some bugs, since often things change and don't work quite as expected anymore. Stephen basically wrote his own engine called "Coercri", which builds upon SDL, uses ENet for Network stuff (UDP) and guichan for the GUI. From a very quick research I saw that those aren't really greatly maintained in terms of updates.
While your idea of porting the game to C# language sounds interesting, I have some concerns about it.
Despite of similarity between C++ and C#, wouldn't that basically mean rewriting the game from the scratch (except the general architecture), because of the differences in used libraries and API?
IMHO that sounds like a pretty challenging task and that would require quite a lot of testing because of a probability to introduce more bugs...
Quote from: ImpassIve_rus on July 16, 2018, 12:44:44 PMNo worries! I'm mainly working in web development technologies myself, with some pastime activities in game development. The most important part is to have a clear plan laid out, before really diving into the whole coding scenario. Once there is more feedback about this here, I'll probably start working on writing up a proper "battle plan" on how to tackle the revival. :]
Anyway, I'd like to provide some help, since I know both C++ and C# and I like this game, but, I'm afraid, this help would be of little use, since I have no experience neither in game development (except of writing a bunch of Flash games decade ago) nor in maintaining open source projects.