Screeps3D
Screeps3D copied to clipboard
Rework ramparts / walls scaling
Currently we scale walls and rampart heights depending on a percentage based on their max capacity.
Quotes from slack, bringing the discussion to github.
it gives some clue about how high fortifications are, however most of the time it looks ridiculous
We previously talked about connected ramparts, and them being a forcefield of a kind instead. perhaps emission could be used to determine how fortified it is? Not sure what we would do about walls though
it could be scaling on some curve (to be determined) instead of linearly, or we could just not scale them at all in favor of them always looking good and fancy
minerals size for an example scale in a non linear fashion as well.
Let's get some ideas / talk going on this subject.
I'm not sure in general how full ramparts / walls are. but perhaps they should be higher?
Most often I just see a little bit of height on them. but what is the current max height of walls / ramparts. should that perhaps be increased? I don't know how often a wall is at full capacity.
But they for sure don't really feel like walls currently. e.g. a creep is almost the same height as them :P
some cheap volumetrics ? problem with emission is that to be properly visible and look good it needs to be quite strong
They scale from 1 to 300M on RCL8 so we can't really show accurately show their hits using height. We could use nonlinear scale, but then at which point should it flat out? I feel like ramparts should always be able to cover structure/creep, providing protection and so on, and walls should be the same size.t they're that size. I'm not a fan of showing their strength by emission and it doesn't really solve anything as we'll run into the same issue of it looking good only in specific value range.
as long as You can click it and get info i agree with just covering cell
@Robalian what if walls where higher, that would give more range to play with?
I feel ramparts should be a forcefield that covers everything on the tile, and probably connected with the other tiles. Not sure how we would show the strength of the rampart. But I like this effect
https://youtu.be/NiOGWZXBg4Y
https://www.wolframalpha.com/input/?i=Ceiling%28log%28Ceiling%28x%2F1000%29%29%29*.3+%2B+0.1+from+1+to+300000000
this formula seems promising for adjusting rampart height - > will also check if it can be nicely applied to walls
i think it can be closed ?
What are your thought on wall thickness instead of height as an indicator of strength?
So you could make walls and ramparts shorter so they look nice and not so long and un-wieldly so they aesthetically look nice. So this way the more hits a wall or rampart has, we represent this by making the wall thicker?
I like the idea, but i'm not sure if we can show "thickness" properly? I assume you also wanted this to happen for ramparts?
The issue being ramparts needs to be transparant and a "forcefield" for us to be able to see what is inside it 🤔
problem is that we would need to kinda guess which way
thicker (either on X or Y axis)
also ramparts needs to be rectangular to cover the whole cell they protect (and then showing 'thickness' is limited and not much visible)
Ahh right, we would need logic that was not needed before, great point.
Ok, Here is Thickness V2. HAHAH
Since Gadjung had a good point that if it was thickness, you would need to determine what X/Y direction to start with to fill the Tile Properly.
What if the Walls and Ramparts started Hollow. So the outside Shell of a Wall or Rampart Still fills the whole square, but was hollow like an empty box. The more hits a wall/Rampart has the more the box walls thicken.
So at 100% all 4 sides would meet in the middle forming a filled piece of Rampart or filled in forcefield Rampart.
This would be fine for how Ramparts are currently a cube, but this approach would need Ramparts to be a mirriored shape on all 4 sides so it could scale on each side to meet in the middle when full and look nice.
Just spitballing :)
For walls, I'd like to see them move from light concrete grey to something darker in colour to show fortification. Keep the model the same.
For walls, I'd like to see them move from light concrete grey to something darker in colour to show fortification. Keep the model the same.
Currently the height is adjusted to indicate how fortified it is, we have "thresholds" where it scales up / down I actually think the wolram alpha formular linked earlier is used right now
Currently the height is adjusted to indicate how fortified it is, we have "thresholds" where it scales up / down I actually think the wolram alpha formular linked earlier is used right now
Is the intention that turrets and links are always taller than walls? Or will their projectiles be parabolic in nature?
if nothing changed it's the wolfram alpha formula. turrets and links have predefined height. parabole just looks a bit better than a straight lazor ray (in my opinion) (also was adopted from existing code). for Links i was thinking to make it even more steep but for now it's somewhere in backlog.
regarding coloring there's not much grading that can be done between 1 and 300 000 000, and i think grey ramparts might give incorrect notion regarding ownership
If you've a formula for height you have a formula for color instead. But if the teams intention is to prefer height then that's fine. Just seems like an unusual indicator since it doesn't matter at all. (Density matters) and it occludes visibility