VP Community Roadmap/Vision Brainstorming

I wouldn't hope for that. AI is computionally expensive to run and graphics sells more. It's also very hard to train AI for games that complex. We have much simpler games in which AI models are a rarity. It's possible, though.
My point is we might consider building the API necessary that some future implementation of machine learning could make use of it, when this might be more accessible to the at home user -- this project has been ongoing for close to a decade, say it is still active for another decade, it's conceivable we might have more consumer level hardware to run machine learning algorithms locally at some point...

The machine learning piece need not come from this community at all, so long as the game state were sufficiently readable and manipulatable via code. We build the infrastructure now, perhaps some comp sci major takes it on in the next 5 years as a term project -- we already understand what this would require, just not how it can be practically implemented (currently) once the DLL side of things is achieved. The vision here would be somewhat of 'build it and they will come' type deal, but I imagine at some point, someone will make the attempt, if the codebase supports it. Civ franchise is particularly popular amongst the crowd that gets into this kind of field, I think. Being the developer behind the number one civ opponent AI would be quite the resume item for new dev, perhaps...

Anyway maybe thinking too long term here, but something to at least consider IMO
 
My point is we might consider building the API necessary that some future implementation of machine learning could make use of it, when this might be more accessible to the at home user -- this project has been ongoing for close to a decade, say it is still active for another decade, it's conceivable we might have more consumer level hardware to run machine learning algorithms locally at some point...
That would be awesome! I could try to do some AI with such API!
 
That would be awesome! I could try to do some AI with such API!
Tbh if I were Firaxis this is what I'd be working on... Forget civ 7, instead make paid dlc update available to all civ titles so they are machine-accessible in this way (and a 64 bit civ 5), then do live service to connect to the servers that can actually do the heavy lifting required for modern AI opponents. All civ fans, even those left behind on 2-4, suddenly become potential revenue sources once again. But I digress...
 
It's a very interesting idea to use machine learning. If it's computationally too complex to train a complete AI, can such an approach be used for some areas of the AI for which decisions can be made more or less separately?
 
It's a very interesting idea to use machine learning. If it's computationally too complex to train a complete AI, can such an approach be used for some areas of the AI for which decisions can be made more or less separately?
Yes, totally. It's way more feasible. Like a model for tech/policy selection would be one of the simplest. Or building selection.
 
I feel like something that should be considered is the event system. Sure, the complete shutdown of the system was just knocked back last Congress, but that doesn’t mean we’re just gonna stop there. I’ve participated in a few discussions about reworking the event system, and have seen several more active members of the community crack on, completing modmods and setting up ideas for new events. Maybe we should open the discussion to the wider community, to figure out how we fix the system, cause by and large I feel as though there’s an interest in rejigging the event system, as opposed to just shutting it down.
 
What are your referring to by "triggers"?
SQL triggers. Like the Hacienda one that automatically adds adjacency yields for each new resource added to the game.
Not all of the files can be overridden because there is stuff that can only be changed through modifying the base EUI files, like adding some stuff to the Options menu or adding more types of map Highlight like for modmod stuff (Squads, Route Planner, etc.)
Can't those be overridden in VPUI? I assume what EUI does is overriding vanilla Options menu.
Maybe we could consider some commintlint solution to generate change logs.
Everyone has different styles of commit comments. We can't rely on those.
The system how lua files are loaded, and that everything is made on globals T_T.
What do you mean by globals?
 
Can't those be overridden in VPUI? I assume what EUI does is overriding vanilla Options menu.
Some stuff can only be overridden via the pseudo-DLC method, not the regular mod method. I'm pointing out your idea of using the bare new version of EUI and adding VP custom implementation via the mod overriding method.
 
Better resource/organization support for modmod development
To make it easier for modmodders to keep their mods updated and avoid having new versions breaking modmod compatibility that often, we should improve communication between VP developers and modmodders. I suggest we have a thread here or on Discord to announce code changes that affect modmods. Every developer would be required to document any changes they make to the database structure (removing columns, changing how they work) there. Modmodders would then know better what to change in their mods and they could prepare the changes while the VP developers are still working on the new version.
 
To make it easier for modmodders to keep their mods updated and avoid having new versions breaking modmod compatibility that often, we should improve communication between VP developers and modmodders. I suggest we have a thread here or on Discord to announce code changes that affect modmods. Every developer would be required to document any changes they make to the database structure (removing columns, changing how they work) there. Modmodders would then know better what to change in their mods and they could prepare the changes while the VP developers are still working on the new version.
Maybe one of the ideal options is to keep some old features when adding new features that replace them, instead of removing them entirely. Mark the feature as deprecated and will be removed soon (after several major updates) so it will give notice to the modders to update their mods before the old feature gets removed.

It's a pain to update a mod after a major update and figure out stuff that is changed. Some modders can be inactive every now and then, too.
 
Everyone has different styles of commit comments. We can't rely on those.
In case you want to try auto generated changelogs, it is a very light set of conventions


Regarding code organization, I recommend the unciv repo as inspiration. Very well organized, but also very different from current code. Good tests as well.

I second the AI API idea, but I have another crazy idea in my mind. AI wars. You create a script that plays your civilization, and pit it against other users AI.

For modmods, I'm very new here but would it be interesting/possible to use a diffpatch approach? Or maybe just function overrides? Some mods I've seen take a 10k lines file and modifies just a function or two.
 
Last edited:
Hi, I am new here in this forum, but I have been playing Civilization series for quite long (4, 5, 6), and I like Vox Populi mod much.

What I wish to ask is, if there is any plan to make 'light' version of Vox Populi mod, which has same essence of gameplay but less complex. For example, a building or policy could have one or two fewer modifiers. It is not that I don't enjoy current version, it is just that sometimes I want different experience.
 
Hi, I am new here in this forum, but I have been playing Civilization series for quite long (4, 5, 6), and I like Vox Populi mod much.

What I wish to ask is, if there is any plan to make 'light' version of Vox Populi mod, which has same essence of gameplay but less complex. For example, a building or policy could have one or two fewer modifiers. It is not that I don't enjoy current version, it is just that sometimes I want different experience.
Ha...
you're barking up the wrong tree buddy.
 
Hi, I am new here in this forum, but I have been playing Civilization series for quite long (4, 5, 6), and I like Vox Populi mod much.

What I wish to ask is, if there is any plan to make 'light' version of Vox Populi mod, which has same essence of gameplay but less complex. For example, a building or policy could have one or two fewer modifiers. It is not that I don't enjoy current version, it is just that sometimes I want different experience.
The complexity is a result of trying to make the game more balanced, which is done by fine-tuning properties of buildings and policies. If you have any ideas how complexity can be reduced without it negatively affecting balance, feel free to discuss them here on the forum.

A light version isn't planned, maintaining two versions in parallel would require a lot of effort.
 
Maybe one of the ideal options is to keep some old features when adding new features that replace them, instead of removing them entirely. Mark the feature as deprecated and will be removed soon (after several major updates) so it will give notice to the modders to update their mods before the old feature gets removed.

It's a pain to update a mod after a major update and figure out stuff that is changed. Some modders can be inactive every now and then, too.
I‘m afraid that if we did it that way it would often be forgotten to remove the deprecated features and we‘d end up with a lot of non-functional columns in the database.

How would modders be notified? If they don‘t notice they need to change something, their mod would work incorrectly for a few months. When the old feature is eventually removed, it‘ll be the same situation as we have now. It‘s annoying if mods are not compatible with a new version, but at least it makes it clear something needs to be done.
 
Yes, that's also why we removed some of the null checks for impossible scenarios.
 
For modmods, I'm very new here but would it be interesting/possible to use a diffpatch approach? Or maybe just function overrides? Some mods I've seen take a 10k lines file and modifies just a function or two.
Sadly the game doesn't work like that. If you want to replace a single function within a Lua file, you must replace the entire file (aka including all of the codes).
 
Yeah, but should VP introduce a modding system? Or are the hooks enough? Perhaps we should encourage diffpatches to be released, it would be easier to maintain. I don't know. I'm really just starting to read about modding.
 
Yeah, but should VP introduce a modding system? Or are the hooks enough? Perhaps we should encourage diffpatches to be released, it would be easier to maintain. I don't know. I'm really just starting to read about modding.
I'm not sure what is this "modding system" you're talking about.
Like only releasing stuff that is changed? And keep the unchanged stuff in the mods folders?
 
Top Bottom