Online voice chat meeting, Wednesday July 29th 2020

Discussion about the project in general, organization, website, or any other details that aren't directly about the game.
Post Reply
Message
Author
User avatar
Vezzra
Release Manager, Design
Posts: 6095
Joined: Wed Nov 16, 2011 12:56 pm
Location: Sol III

Online voice chat meeting, Wednesday July 29th 2020

#1 Post by Vezzra »

This time I'll take over the task of announcing our next online voice chat meeting, which, following the usual schedule, will be on Wednesday July 29th 2020, 6pm UCT (or 8pm Vienna/Berlin time).

There are a couple of things I think we need to discuss:
  1. 0.5 - what should be our goals for that release? What should be the focus?
  2. Replacing GiGi - Godot a possible/useable/reasonable alternative?
  3. Something else I had in mind but my befuddled brain has already forgotten again, faster than I can write "befuddled"... :roll: :wink:
  4. As usual: any other business
Feel free to suggest additional topics.

The meeting will be again conducted via Jitsi, at the usual Jitsi room: https://meet.jit.si/ThoroughNovembersConvertPossibly

Regarding Godot: I've spent the last two weeks taking a closer look at Godot (which has been repeatedly suggested now as an engine FO might worthwile be porting to), and cobble together a very rudimentary FO Godot "client", just to get a feeling/an impression what Godot can (and/or can't) do, and would like to give a report on my findings so far (as could be expected, there are good news and bad news). For those who want to take a look at my, erm, rather crude efforts, here is the repo of that project on github: https://github.com/Vezzra/fo-godot-prototype

You'll need the 3.2.2 stable release of Godot to edit and run the prototype (sounds worse than it is, thankfully, Godot is self-contained, very compact and requires no installation).

For these topics (0.5 and GiGi replacement/Godot), it would be good (or better, it's actually necessary) if at least these persons could attend: Geoff, Marcel, Martin (TheSilentOne). Rah, if you can again make it, as it has been you who brought up the whole UI issue (and suggested Godot). And of course everyone else who has been actively contributing in the more recent past, you're certainly very welcome to join us.

Ophiuchus
Programmer
Posts: 3433
Joined: Tue Sep 30, 2014 10:01 am
Location: Wall IV

Re: Online voice chat meeting, Wednesday July 29th 2020

#2 Post by Ophiuchus »

Godot 3.2.2 is also available on flathub. On snapcraft.io godot seems unmaintained and stuck at 3.1

Code: Select all

flatpak install --user flathub org.godotengine.Godot -y
Any code or patches in anything posted here is released under the CC and GPL licences in use for the FO project.

Look, ma... four combat bouts!

rah
Space Floater
Posts: 38
Joined: Mon Jun 16, 2014 11:32 am

Re: Online voice chat meeting, Wednesday July 29th 2020

#3 Post by rah »

Vezzra wrote: Sun Jul 26, 2020 4:32 pm Rah, if you can again make it
Aye, I'll be there. With any luck, I may even be on time ;-)

User avatar
Vezzra
Release Manager, Design
Posts: 6095
Joined: Wed Nov 16, 2011 12:56 pm
Location: Sol III

Re: Online voice chat meeting, Wednesday July 29th 2020

#4 Post by Vezzra »

To give a brief report on what we decided/reached consensus on at that meeting yesterday:

1. 0.5 focus: Aside from what is already in master, the consensus is that the main focus of 0.5 shall encompass (at least) these features:
  • A first simple model/mechanic of "species ethics", meaning that species will like/dislike certain policies. So, when you decide on what policies to adopt/de-adopt you need to take into consideration the species setup of your empire.
  • Stuff that's needed to provide proper means of Influence production (Influence focus, related techs, buildings, specials).
  • Influence maintenance costs for colonies.
  • Consequences of an IP deficit (otherwise the above point would be irrelevant).
2. Replacing GiGi - Godot as a possible candidate: First, another alternative has been suggested: Dear ImGui. However, the concern has been raised inhowfar ImGui is "skinable", meaning, how much can you change the visuals of ImGui apps to adapt your own design.

Godot: based on the prototype FO Godot client I implemented over the past two weeks, it looks like Godot could meet all our (GUI) needs, and rewriting the FO client as a Godot app should be actually doable - the effort, while certainly considerable, should be managable with the manpower at our disposal (as far as it's possible to tell at this point).

There are however certain issues/questions that need to be addressed:
  • Godot uses SCons as build tool, C++ modules that interface with Godot will be build by Godot using SCons. The question is, to what degree is it possible to integrate building a FO Godot client into our CMake build system, so you can build FO with just calling cmake and invoke building the client from cmake, and not having to separatly build the client first.
  • How much control do we have over the main GUI loop - can we completely separate the loop handling all the networking and serialization stuff into a dedicated thread?
  • Godot sticks to the C++03 standard. How much does that impact our C++ code? Can we still use more recent C++ standards? Or, to what degree (meaning, what parts of our C++ code) would we be forced to go back to C++03? As that would be a dealbreaker right there.
3. Dropping the manually maintained Visual Studio project: The question has been discussed if it's possible to finally drop maintaining a Visual Studio project for building on Windows in the repo, and completely move to CMake as build system also on Windows. The consensus is that yes, we will make that move, provided that you can compile/build FO directly from within Visual Studio and do not have to quit VS, run CMake to (re-)create the VS project and then open that project again in VS e.g. every time you switch branches. As it looks like that requirement is met, that change is finally going to happen.

Those were the main topics/decisions, I hope I didn't forget anything important - feel free to add if I forgot something, or correct me if I got anything wrong.

User avatar
Vezzra
Release Manager, Design
Posts: 6095
Joined: Wed Nov 16, 2011 12:56 pm
Location: Sol III

Re: Online voice chat meeting, Wednesday July 29th 2020

#5 Post by Vezzra »

I have opened two threads on the Programming forum to discuss the two options that have been suggested so far as replacement for GiGi, Dear ImGui and Godot.

Dear ImGui: viewtopic.php?f=9&t=11743

Godot: viewtopic.php?f=9&t=11744

Please continue the discussions, pro and cons of each of these options there.

User avatar
em3
Vacuum Dragon
Posts: 630
Joined: Sun Sep 25, 2011 2:51 pm

Re: Online voice chat meeting, Wednesday July 29th 2020

#6 Post by em3 »

Vezzra wrote: Thu Jul 30, 2020 11:54 am 3. Dropping the manually maintained Visual Studio project: The question has been discussed if it's possible to finally drop maintaining a Visual Studio project for building on Windows in the repo, and completely move to CMake as build system also on Windows. The consensus is that yes, we will make that move, provided that you can compile/build FO directly from within Visual Studio and do not have to quit VS, run CMake to (re-)create the VS project and then open that project again in VS e.g. every time you switch branches. As it looks like that requirement is met, that change is finally going to happen.
Cool! I might actually install Visual Studio because of that. When I was working on combat summary I used Visual Studio Code and stand alone compiler (just for the heck of it, and to learn a new tool).
https://github.com/mmoderau
[...] for Man has earned his right to hold this planet against all comers, by virtue of occasionally producing someone totally batshit insane. - Randall Munroe, title text to xkcd #556

Post Reply