Page 1 of 1

Defunct Civilization Project

PostPosted: 18 Jun 2019, 15:57
by dulsi
A long time ago I tried to help out with a Civilization clone. The project never reached completion and might have stolen graphics. I decided to try it out again last night. It wasn't on my website so it took some time to track down. After a lot of work I got it to compile. Unfortunately I was unable to run it. It is old X11 code and uses the old bitmap fonts that aren't installed anymore. I tried to get them installed and running but it hasn't worked. I doubt it is worth the effort to get the code working again.

Re: Defunct Civilization Project

PostPosted: 18 Jun 2019, 16:21
by fluffrabbit
That's very self-deprecating. So you're saying it won't work and it's not worth fixing but you hope it works?

Re: Defunct Civilization Project

PostPosted: 18 Jun 2019, 21:33
by drummyfish
Whether it's worth it depends on how far the project has gotten. How much time was put into it? What state was it in? What was implemented and left to be implemented?

Re: Defunct Civilization Project

PostPosted: 19 Jun 2019, 03:49
by dulsi
fluffrabbit {l Wrote}:That's very self-deprecating. So you're saying it won't work and it's not worth fixing but you hope it works?

I'm putting it out there because I can. I don't expect anyone to pick it up. I know it can work. I'm sure if you loaded an old version of Linux in a VM it wouldn't be hard to get working. I was thinking I'd fix it up to get running on modern systems but I didn't realize how hard that would be until I looked at it.

Re: Defunct Civilization Project

PostPosted: 19 Jun 2019, 04:48
by fluffrabbit
With different windowing systems in common use, targeting X11 specifically could be problematic in and of itself, but I didn't know that things changed so much between versions. It's a shame because it's X 11, as in version 11 of the X windowing system.

Re: Defunct Civilization Project

PostPosted: 19 Jun 2019, 12:29
by dulsi
fluffrabbit {l Wrote}:With different windowing systems in common use, targeting X11 specifically could be problematic in and of itself, but I didn't know that things changed so much between versions. It's a shame because it's X 11, as in version 11 of the X windowing system.

X11 didn't change. What we use for fonts changed. The compile problems were because of C++ changes. Frankly I'm surprised it ever compiled. The code had destructors without declaring them in the class. I know they are implicitly created but I had no idea at one point gcc allowed you define them without putting it into the class definition.

For fonts, X11 didn't use scaling fonts. Instead it came with a bunch of bitmapped fonts at different sizes. At the time that X was created this seemed reasonable. However as display got larger the limited selection of fonts sizes became problematic. Eventually all the GUI toolkits decided to give up on the old X fonts. This civ project uses the old Xaw toolkit and to my knowledge it was not updated.

Re: Defunct Civilization Project

PostPosted: 19 Jun 2019, 14:58
by fluffrabbit
You can always reimplement text. It sounds like the biggest initial problem is going to be getting it to compile. C++'s way of handling classes seems a little odd to me, but if you compile with -Wall -Wpedantic you should get lots of helpful pointers on all the places your code is broken. When you've resolved those, run it through clang-tidy and prepare to have your work cut out for you. I recommend targeting C++11 or later as the standard really improved from that point. Make sure the compiler warns you if you're using non-standard stuff or it may break again in the future.

Re: Defunct Civilization Project

PostPosted: 24 Jun 2019, 21:12
by Ntech
Depending on the size of the project, I might be willing to help out here and there. Would consider opening a Github repository for it?