Skip to main content

On Sale: GamesAssetsToolsTabletopComics
Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines

gCity - planetary city survival sim

complex non-linear incremental game with tons of stats and features · By TheGrandestine

[comments/discussion] Sticky

A topic by TheGrandestine created 36 days ago Views: 298 Replies: 20
Viewing posts 1 to 7
Developer

It seems like selecting a community hub forum format for a game page supersedes the ability for people to comment, and the 'create new post' connotation is a barrier to entry that places a vice around what can be said by sensible people.

in that case, feel free to use this thread as a dedicated 'random comments' area

Maybe add a filter to the building list by what they produces ( i'have a shortage of energy, filter by energy output and bam , find )

Developer

building UI search bar can find some embedded info like production rates but it needs a mouse-only version of that like little filtering/sorting buttons near search, or if you click the top bar resource icon to auto-search for that production

search limitation is how typing 'energy' will find descriptions saying "does not require energy".
(realistically many descriptions/tooltips are redundant from older lack of UI in various places)

(+1)

I maybe just put a filter button at the right of the search bar that open a drop down with all logo , select it and it filter 

Developer

done: UI, filters, overviews, QoL, bugfixes, etc. - gCity - by TheGrandestine

What's up with the production per hour numbers? Some building might say like -2/hour, but then reduces the resources in the top line by 14/hour. Workers might have a +0.2/hour, but then I wait multiple days and no new worker arrives (despite having enough room). I don't get it.

Developer

the UI is a little wacky and probably not intuitive, since the numbers at the top are the 'X/day' numbers.
I guess I have just seen it that way for so long that it already made sense and forgot, but the game used to process on a per-day scale until realizing concepts like solar panel oscillations were impossible without faster tick rates themed as x/hr. 

the per day thing is baked into my foundational view of the game so I have to mentally detach from it. One problem you reveal is that there is a constant estimation/conversion process converting from hr/day for production/upkeep. so probably the top bar should show x/hr like everything else in order to be intuitive (maybe I will add per day value in settings for my own view).

workers are a problem early in general (probably need a flat bonus to how fast workers join)

Ah. That makes sense.

One thing I've found is that, due to how your troops spawn in during combat, the event "rival strike force" is currently close to impossible to defeat. The enemy spawns all of his troops simultaneously and sort of clumps up into a "big ball of death" while your troops trickle in slowly and are unable to do noticeable damage. I was unable to beat this event even with more than 4 : 1 numbers advantage.

Developer

I agree- the rivals are overtuned and were vaguely intended as a diplomacy incentive but still need a ton of work in order for that to make any sense. The massive difference in their difficulty is likely because they have higher range than the default player soldiers, especially higher than player militia. With military stat improved and soldiers, the soldier vs infantry is only like a 5% difference in range, which sounds fine on paper but in practice it snowballs and becomes unstoppable. 

underlying problem is that longer range essentially becomes 'first strike' and then the units on the winning side pile into a DPS wall (ally units also do this against some short range enemy types which is the same issue reversed, often making it too easy regardless of their other stats).  I would like to allow higher attack range diversity but it probably requires higher health or some kind of unit positioning adjustment which could make the battles longer. I would be ok with longer battles but only if the battles were more intricate (leader abilities, cooldowns, tactical military decisions, etc).

Thematically none of the current invasion teams are the most dangerous, but the ravenous swarm against pollution/affinity is supposed to be pretty high on that list. There is also some possibility that making player units move faster could help, but in either case the invasions are a narrow skill expression until some form of complexity is attached, so it needs more than just the balance I think. 

In an ideal situation, a person complaining 'X team is way too hard' could be told "that's a skill issue". 
no amount of balancing is intended to make the game 'easy', but it isn't intended to be a brick wall either.
(random note: response doubles as my personal notepad - invasions should become a very important feature)


What is the best way to make the rocket when starting the game for the first time, also I see the game doesn't have saves from what I saw

Developer (2 edits)

according to the game's design theory, any best way to beat the ascension tiers would be complex to explain since that would envelop the full spectrum of understanding across every system and how they all interact (not to be pedantic, but 'best way' is a strong phrase from my perspective). 

Aside from that, the military/invasions systems are still relatively new and probably too extreme in terms of their unique capacity to destroy an entire city over time, so the general advice of building a city with a military focus might be the safest approach to attempting ascension.
(for example, some invasions are still overtuned, some are too frequent, some are too punishing, etc.) 

for save data, I wrote about it here: about save data: why it wasn't added yet - gCity - itch.io
basically, mid-run saves would most likely slow down expansion style updates a lot
(but ascension save data seems viable so I will look into adding that)

edit: Prefabs, balance, UI, military overhaul, ascension saves, etc.
I consider this a 'better than nothing' level of save data for now.

(+1)

Loving the game so far, really interested in seeing how this progresses! <3

Developer (3 edits) (+1)

I'm glad, thanks. Not sure how long I can keep up the current hyperfocus pace of updating almost every day since I will inevitably get distracted working on another project, but for now here are some vague ideas/synopsis of where it is going: 

- standard 'obvious' things like iterating game balance, UI, QoL, tooltips, settings, saves, and boring tech stuff

- more interlacing system expansions with tendency towards modular scaling lists of things derived from each other

- actual scaling of all proof of concept systems (more stats/resources/buildings/events/units/traits/upgrades/etc.)

- more incentive structures for archetypes, like a mercenary system that uses credits/hr or blueprints from research

- more important leader character/customization, such as having presence in battles, autocast cooldowns, attributes that can influence combat or city performance, and perhaps some kind of leader mastery system that accumulates bonuses across every other system

- dynamic unbounded achievements as an excuse to track infinite stats and incentives to chase higher achievement values with some kind of trophy-point system that accumulates small bonuses based on total achievement points, while being completely adversarial to 'completionist' mindset (in other words: it never ends)

-  some random excuse to add pie charts and graphs somewhere for no discernible reason

- maybe a desktop version (seems possible but managing both for each version could slow updates down a lot)

- probably more if I keep working on it for a while / these are just a few things that come to mind

most notably, I consider the various modular systems as multipliers onto each other, so eventually adding a single new building is a multiplier across 100s of strategies compared to having it in isolation in an earlier version of the game (in a similar way, adding a new city stat like 'health' has had a multiplier effect, allowing the stat on buildings, research, traits, calculations, events, buff/debuff statuses, etc.)

it seems like having tons of event variety would be more interesting that seeing some of them repeat, and I am tempted to add 999 different buildings filtered through a blueprints system or something like that, if only the variety of stats/effects/combinations/themes could handle it (probably could add like 50 more already with current stats, but at a certain threshold the namespace and variety becomes limited).

...oh,
- maybe eventually the game could have a learning curve design where ascension tiers gate some of the complexity so that casual players don't run into a brick wall of endless stats as soon as they start the game. I have no real desire to simplify anything, but this might be an incentive for reaching higher difficulties (although it makes overall game balance 10x more complicated in a way).  

(+1)

Sounds awesome!

You seem to have a ton of interesting ideas for the game, so if you ever decide to make that desktop version and perhaps even launching it on Steam at some point, you'd definitely have a sale from me at least.

this line shows more than meets the eye :-)  but lets stay with the business at hand; please change the divider to 100 so it actually does what you meant -- and makes this sketch of a 'long-duration game without a save-manager and/or save-file-exports' actually runnable without tears.

 T[r.MAX_POPULATION] * ((c.popularity + c.happiness) / 200)

in decay mode, it might be nice if modifiers actually meant something, but that's kind of less important.

ne = j * 0.02; // Hard decay ignores Food and Health or growth modifiers


as for the total disconnect between population and raid strength - which makes playing this sketch a loosing proposition, consider this pattern:

// OLD Code (Bandit Raid Example)
const v = 3 + Math.floor(Math.random() * n.day / 2);
// NEW Code (Proposed Fix)
// Calculate base difficulty based on day
let rawCount = 3 + Math.floor(Math.random() * n.day / 2);
// Calculate a hard cap based on population
// base of 5 so extremely small colonies still feel some pressure
const populationCap = Math.ceil(n.resources[r.POPULATION] * 1.5) + 5;
// The actual spawn is the lesser of the two
const v = Math.min(rawCount, populationCap);

With this, on Day 100, enemies will be only 1.5x stronger instead of 2.5x).
This allows basic Soldiers to remain relevant for much longer.

// OLD Code 
const ee = 1 + P * 0.015; // 1.5% per day 
const fe = 1 + Q * 0.35;  // 35% per Tier  
// NEW Code 
// Reduce daily scaling to 0.5% and Tier scaling to 15%
const ee = 1 + P * 0.005;   
const fe = 1 + Q * 0.15;


The size of the militia is another issue that makes little sense of a survivalist szenario. Fix:


// OLD Code (Trigger logic in B0) 
const h = Math.ceil(n.resources[r.POPULATION] * u);  
// NEW Code 
// Base militia is at least 5 units, or your percentage, whichever is higher. 
// This ensures even a tiny colony has a squad to defend it. 
const h = Math.max(5, Math.ceil(n.resources[r.POPULATION] * u));


Also, please add a logic check that if enemyTotal > playerTotal * 2, the "Defeat" condition doesn't wipe the colony but instead triggers "Hunker Down" where you lose the battle immediately, lose resources, but you lose 0 Population as  everyone will hide in the <span class="ng-star-inserted" <this="" simulates="" the="" workers="" hiding="" in="" <="" span="">CRASHED_DROPSHIP</span> while bandits loot the warehouse.


There are some UI items I want to mention as well:  The "Red X" in the building control makes controlling buildings on/off really cumbersome. I think that one should be able to switch modes (tabs) in the cards showing the buildings so that one can activate/deactivate them from there.  Some of the cards, like, say, the Hut, quickly make no sense at all and one would never want to see them - so they need to be made excludable before filtering comes into play.


I hope this message finds you well and that you don't get distracted away from this model before it can count as a playable simulation!  Thanks and keep up the good work!

Developer (1 edit)

sorry about the automod thing hiding your post, I didn't see it until now. 

Since it was a few days ago, some of this has changed, but I'll take a pass over it for relevant insights along the way. In particular, the military units/scaling/invasions/etc I still view as a prototype, and the balance of individual stat scaling is also valid to call into question. 

I like the idea of having a choice in how to approach a combat scenario, adding more QoL for buildings list (enable/disable is already improved), and some kind of 'favorites/hidden' tags to extend filtering options. I'll think about it more, good notes, thanks.

Hey, I'm glad you got the notes. was thinking of writing you a settings and savegame wrapper for making things persist -- basically just so that you can test this stuff.  none of my tweaks were ultimately good enough as available free housing is still the most significant factor in population growth, and my efforts at reducing the enemy strength can't fix the algo which will have soon enough have you 'fight tanks with sticks' again; a few log(reducers) may help, but a test-simulator and tuned formula for battle-strength may in fact be needed to make military more viable (without the player being under or overpowered at any time since combat is ultimately just a thing you want to have to manage until you can treat it as a cash sink in case you dont want to leave, right?)

the best revision to my notions may be to have controls on the card to let you set '3⇵ of 11⇵ [x] active' to encapsulate [de-]activation/building and salvaging (those last 2 would want/need keyboardable popups i guess)  and a '[x] show' or '[ ] hide' element so one can zap the clutter -- this way you could open up the idea of having resource icons as 'filter-tabs' and include a filter for 'hidden' elements.  perhaps filtering by 'tier' makes [more] sense, idk.

keep up the good-work; 'd love to see this become playable!

Developer

mid-run saves vaguely work now, from the latest version (although still need to improve it)
settings I have only a few notes about and will probably wait a while longer to add them. 

military is likely to scale even more in terms of variety and skill expression (ex: tons of specialized units in army building, more tactics, more upgrades variety, more traits, leader on the battlefield, raid boss style threats, white/black teams from affinity, more city stats affecting unit stats and military stat, more intricate triggers for invasion events, more ways to handle them, etc.) so the current form is only vaguely balanced in anticipation of that (currently working on connectivity/morale stats which can affect military, for example).  It might be that I know all the details ahead of time, but it currently feels way too easy, so with more variety it would also require more threats. 

I was also theorycrafting ways to scale building variety without having an endless front-loaded wall of buildings and have designed a vague notion of a blueprints mechanic that would allow naturally forming available building selection to some degree (ex: imagine there are 999 different buildings, and you have to de-select all the ones you don't want rather than drafting ones you do). I'm not sure how the details of blueprints work exactly, and I'm not even sure that I prefer it that way since personally I enjoy the giant megawall of options approach, but it's on the table for another game system similar to prefabs except unlocking new building types (one issue is that balance of progress becomes 10x more complicated if everyone has different building options). I like favorites/hidden or even changing the ordering of things, but not sure yet how the actual implementation would look (prefer not to have keyboard controls required, even if optional ones are added later)

idk if I'll do that yet... stats are the basis of everything else so for today I have been thinking a lot about how to theme more stats, what kinds of influence/scaling they could have, and what level of viability each one has in combination with the doors it opens. ex: connectivity allows concepts like transport/roads to be a part of the city without hijacking some other arbitrary stat. small city has high connectivity by default, and the larger it becomes the more roads/transport are needed to keep the stat high, making the 'spam small buildings' approach less overpowered in an indirect way. Morale has some similar balance impacts, scaling its value from victory/defeat or positive/negative events, which alters the value of all other event chance scaling and makes perpetual defeat-rebuild form of progress reflected in the city stats through morale/trust. This is the synopsis version of what these stats do, so they are taking a while to sort out. (currently involves stat itself, influence mesh, research, icons sync, character trait, governance, events, buildings, etc.)  

with connectivity/morale and more the game becomes even harder, so I'm starting to consider some kind of casual mode, or eventually distributing complexity across ascension tiers. The thing about these city stats is they do not always help you. They are good at high values and bad or neutral at low values, so the more of them there are the more intractable it becomes to have all of them high, which inevitably results in a complex series of pro/con influences. So, while I have no desire to pull any punches or simplify anything, it might be unreasonable to have the most complicated version be the only available option.

It is likely to become an absurd learning curve, if it isn't already. 
(some of this is 'note to self')

note to self; yes, got that.

less-is-more .. may be a useful inner counter to the notion that more options are better .. especially so if you invest some time into factoring out the many numeric factors to also give then hint and help text and make them set/load/nameable 'configs' one can play with. from there you can't just check your own work, the configs will become a foundation for settings, scenarios, flavors and all of that. i mostly mean 'get rid of the hardcoded bool/num values and let players alter/save/export/share settings in plain text so you can get some balancing help from outside.

as for building generation .. idc. what maters to me is discoverability and if that in part means auto-generated help and hints and way to many things to look at, cool. as long as they wind up having good names and filters (like tabs as filterselectors for buildings) that are easy to operate so one never has more than a full screen of choices, then sur, go .. but _that is an aspect of the game that's going to hinge on 'genes' that make up the existing buildings .. and there will be a core set with aggregates and params bound to your 'buildings'. so, it really doesn't seem to give you anything to autogen buildings atm imo. i'd not even consider 'evolving them' until they become issues, and they work fine, no? at least fine from my perspective -- of not having had more than 300 residents.

military.. no.. i got tired of turning thing on and off to juggle workers .. and without a 'save' _and a _save-as that one can use to game the game a little bit by branching experiments from some working base-game, i can't say that it worked for me, but i never upgraded more than 6 or 8 or so aspects of it either - and was so outgunned that i could barely ever use combat options

as for my tastes havng .. save/save-as (gamestate), save-settings(-as) (doctrines), save-parameters(-as) (now hardcoded) .. with loaders that show 'new, removed fields, outof bounds-values' generically so that one can know on-load what's new and changed in the game - could free you from having to write too many change-notes while keeping players informed and potentiate what you can do so the complexity wont crash down around you.

if you supported just [tab when there are buttons] [arrows when there are sequences] [space to dismiss/close] [enter to confirm] most practical kb concerns would 'go away'. but i can dream :-)

nice round, catch you maybe next week, looking forward to it.

Developer

oh, just to be clear I only abstain from keyboard controls being 'required', which means any/all ideas for QoL keyboard shortcuts are still on the table as viable (and in theory could show up in settings eventually), I just want to avoid a scenario where certain functionality is gated behind keyboard and mandates tutorial instructions for what keys to press or w/e. 

also the toggle workers on/off I consider a minor 'expoit', not really the intended mechanic (need to be able to salvage existing buildings at some point, but before you could permanently brick your own city by building too much of something so the disable toggle was added to prevent that). Disable is also somewhat placeholder, which shows from events disabling a building and you can just enable it again immediately. The actual disable mechanic is supposed to have a little cooldown wheel with dynamic duration, which would mitigate some of the awkward toggle behaviors, make various events more impactful, and allow traits/tech for recovery speeds.

anyway I have a backlog of things to sort through and some other projects starting to divide my attention, but I'll keep these things in mind along the way. At the very least, I would like to add favorites/hidden toggles/filters to the building list at some point, which I did not plan on adding before. I'll probably try to squeeze in a little heart outline and [x] to the building info cards somewhere and use something like the ruins filter to show/hide them (have to be able to show hidden in-case of misclick or mistake).