https://nestinars.com/greyeminence/
I admire the ambition, but I doubt they'll be able to pull this off. :hmm:
QuoteReinventing the Grand Strategy Genre
Spanning from 1356 to 1956, steer the fate of any country on Earth through six epic centuries of conflict. Diplomacy, economics, warfare and intrigue are all weapons in your arsenal to transform the world that was into the world that could be.
Simulation on an Unrivaled Scale
A world of over 1,000,000 tiles, each with its own geography, population and buildings.
Realistic demographic model, breaking down population by social class, culture, religion, age and gender.
Logistics-based economy driven by supply & demand, with over 50 types of goods.
Powered by Unity's revolutionary Data-Oriented Tech Stack (DOTS). Learn more about the innovations behind DOTS' incredible performance.
Innovative Game Design
Character-driven politics and diplomacy, where each country is a unique amalgam of its elites and their competing interests.
Interconnected technology/progress system that allows for emergent gameplay with no railroading.
Optional complexity game design, allowing you to engage with mechanics at your own pace without feeling overwhelmed.
QuoteFrequently Asked Questions
▼How long has Grey Eminence been in development?
We have been developing Grey Eminence since 2019, with full-time development starting in 2020.
▼How is Grey Eminence different from existing grand strategies?
Grey Eminence covers the vast timespan from 1356 to 1956. It also features a world of 1,000,000 hexagonal tiles, far larger than any previous game. All of Grey Eminence's mechanics simulate real data, like population, goods, and armies.
▼Which countries will I be able to play as?
You can choose to play as any country that existed in 1356, from mighty empires to lowly vassal counts. In Grey Eminence, countries are not monoliths, so you can play as countries within countries (e.g., one of the numerous sub-states of the Holy Roman Empire).
▼Will I be able to interact with tiles during the game?
Yes! You can interact with individual tiles through all of the game's systems, like population, economy, and diplomacy. Higher-level geographical units (like provinces, which contain multiple tiles) exist only to reduce micromanagement by helping you enact top-down decisions faster.
▼Will armies be physically present on the map. Is total war the only type of war? Will war use logistics?
Armies will be physically present on the map! Total war is only one of multiple types of conflict that exists in Grey Eminence. All forms of conflict will be heavily dependent on logistics (which is also present for the economic simulation).
▼Will new countries / religions / cultures appear during the course of the game?
Yes! Grey Eminence has mechanics in place that will simulate the emergence of new cultures, religions, and countries.
▼Will players have to deal with internal management / politics?
Yes! Our goal with Grey Eminence is to make peacetime as exciting (if not more) than wartime, so we have included multiple mechanics around managing internal stability.
▼Will Grey Eminence support multiplayer?
Yes!
▼Why do the graphics look bad? / Why is the map wrong?
We are still in the early stages of developing graphics and building out the default 1356 world. None of what you see, graphics- or history-wise is final.
▼Will I have to learn C# to make mods for Grey Eminence?
No. Grey Eminence comes with a built-in world editor where you can make content changes (e.g., adding new countries, cultures, religions, events, etc.) without having to code them. You'll only need to know C# if you want to make very advanced mods that modify the game's core systems.
▼Will Grey Eminence be translated in my language?
Currently, we're only supporting English. However, custom localization can be added via mods.
▼When will Grey Eminence be ready?
Grey Eminence is at least 1 year away from completion. We intend on releasing the game in a fully-finished and well-polished state, so release timing is subject to change.
There's also a couple dev diaries on that page.
So EU + Vicky + Hearts of Iron... but even more so?
Could be good, could be less good. I wish them luck in any case.
Weird choice of dates.
Yeah godspeed to them but there's no way they can pull this off.
Can I be: Ottoman Empire?
Quote from: Tyr on February 16, 2022, 03:48:57 AM
Weird choice of dates.
1356 - Poitiers? Golden Bull? Future founder of Ming taking Nanjing from the Yuan? :hmm:
1956 actually does make sense, I think, being the year of Suez and the definitive eclipsing of the European Colonial Empires.
Why does it already get a steam page? Game from unknown dev ("collective"?) with wip graphics and no planned release date.
There are lots of games that you can wishlist without release dates from unknown devs.
Quote from: crazy canuck on February 16, 2022, 11:28:36 AM
There are lots of games that you can wishlist without release dates from unknown devs.
And what's the benefit to Steam?
Quote from: garbon on February 16, 2022, 12:02:03 PM
Quote from: crazy canuck on February 16, 2022, 11:28:36 AM
There are lots of games that you can wishlist without release dates from unknown devs.
And what's the benefit to Steam?
$100 or however much it costs to list your game these days? :P
Also, I think wishlist counts are some kind of metric pre-launch. Tons of wishlists might make it easier to secure third party funding.
Quote from: garbon on February 16, 2022, 12:02:03 PM
Quote from: crazy canuck on February 16, 2022, 11:28:36 AM
There are lots of games that you can wishlist without release dates from unknown devs.
And what's the benefit to Steam?
No idea, but I assume that since Steam does it there is some benefit to Steam.
Way too big a time frame and way too much detail to work
Colour me cynically interested.
Does anyone here know about the Data-Oriented Tech Stack they are talking about and how that might help make this ambitious project a reality?
Quote from: crazy canuck on February 23, 2022, 12:51:06 PM
Does anyone here know about the Data-Oriented Tech Stack they are talking about and how that might help make this ambitious project a reality?
If they can synthesise sufficient velocity to achieve synergy with core values of agile and scale it to proactively manage vertical retrospective innovation, it could work.
Quote from: Tamas on February 23, 2022, 12:59:25 PM
Quote from: crazy canuck on February 23, 2022, 12:51:06 PM
Does anyone here know about the Data-Oriented Tech Stack they are talking about and how that might help make this ambitious project a reality?
If they can synthesise sufficient velocity to achieve synergy with core values of agile and scale it to proactively manage vertical retrospective innovation, it could work.
Can you dumb that down for a mere lawyer so I can understand :)
I meant to say that data-oriented tech stack sounds like corporate fancy speak to pretend they have something unique. :)
Well, this is what it says on their website:
QuoteUnity's Data-Oriented Technology Stack was unveiled in 2017 and it offers incredible performance improvements thanks to three important innovations:
The Entity Component System, which lays out data in the memory in a cache-friendly way.
The Job System, which parallelizes work on multiple CPUs.
The Burst Compiler, which generates super-fast vectorized code using LLVM.
1) Entity Component System
Data-Oriented Design
At the core of Unity DOTS is the concept of data-oriented design. Its goal is to organize data for efficient processing in order to feed data to the CPUs as fast as possible.
Cache Optimization
The processing speed of modern CPUs is so high that often the bottleneck is the bandwidth and latency between the registers of the CPU and the computer's RAM. To counter this problem, CPUs contain several cache levels.
Memory diagram
When the CPU needs a value, it first looks it up in the caches before trying to access it from the RAM. The closer a cache is to the registers, the faster it is to access, but the smaller its memory is.
Modern CPUs don't access memory byte-by-byte, but rather in chunks of 64 bytes, which are called cache lines. When trying to read a particular memory location, the entire cache line is fetched, which means that accessing other values from the same cache line is fast. However, if other values in the cache line are not needed for the current computation, a cache miss occurs, which slows down the process significantly. Thus, arranging data in the memory according to its access pattern results in significantly better performance.
Entity Component System
The Entity Component System (ECS) is what applies the data-oriented design paradigm in practice by separating data from logic. It is made up of Entities, Components and Systems.
Entity diagram
Entity
An entity is an identifier; it doesn't store data or logic, but instead identifies which pieces of data belong together. This contrasts with traditional object-oriented programming, where each entity contains its own data.
Component
A component contains a set of data. It can be attached to an entity, which can also contain other components. Which data is stored in each component depends on how the data is accessed: if two values are always accessed together, they should generally be stored in the same component.
System
A system provides the logic that transforms component data. It usually contains the functionality of one game aspect (e.g. an hp system would add or remove hit points). Every system defines the components it needs to read and write to.
2) Jobs System
Parallelized algorithms with multi-threading have existed for a long time. However, Unity DOTS' new Jobs System provides an interface to easily parallelize code and sync data with the main thread. It abstracts the direct thread handling from the developer and instead enqueues every job at a central scheduler, which executes it when a thread is available. Crucially, Unity has developed automatic race condition checks. Race conditions occur when one thread is writing to an array while another thread is simultaneously attempting to read the same data. They are notoriously difficult to debug.
3) Burst Compiler
A significant source of performance gain comes from optimizing code at its lowest level. Usually this means writing logic in languages like C++ or C, which can be executed directly on the processor. Thanks to the Burst Compiler, C# can be transformed into highly optimized machine code, which is designed to run natively on whichever processor a given computer is running.
Quote from: crazy canuck on February 23, 2022, 12:51:06 PM
Does anyone here know about the Data-Oriented Tech Stack they are talking about and how that might help make this ambitious project a reality?
It's all about connecting the DOTS, I suppose.
EDIT: to elaborate, I agree with Tamas (but I haven't read the thing Syt shared, but I'll go do that now)
Okay, so the DOTS - if it does what they say it does - should help with response speed, it sounds like. So if CK / EUOT / HOI is laggy, then maybe this will be less laggy.
Which is fine and great if it works, but doesn't in any way help alleviate the apparent biggest risk of the project which is executing on the massive ambition at a sufficient level of quality.
I mean... maybe it makes conceptualizing and implementing the design a bit easier, but that's the kind of thing that - IMEX - is something a few engineers passionately believe "makes things easier" but which design may or may not find to be true in practice.
Very ambitious.