Split: Re-scaling experiment

General discussion for players of Oolite.

Moderators: winston, another_commander

User avatar
phkb
Impressively Grand Sub-Admiral
Impressively Grand Sub-Admiral
Posts: 4830
Joined: Tue Jan 21, 2014 10:37 pm
Location: Writing more OXPs, because the world needs more OXPs.

Re: Split: Re-scaling experiment

Post by phkb »

Sounding good, Redspear! Can't wait to give this another try!
User avatar
Redspear
---- E L I T E ----
---- E L I T E ----
Posts: 2686
Joined: Thu Jun 20, 2013 10:22 pm
Location: On the moon Thought, orbiting the planet Ignorance.

Re: Split: Re-scaling experiment

Post by Redspear »

Thanks phkb!

The good news is that both sytem rescaling and associated cosmetic adjustments appear to be trouble free.
This makes cim's early suggestion that I'd be better off making things bigger rather than smaller seem prophetic.

However, shrinking things has thrown up a few interesting possibilities and even improvements (a subjective statement of course): reduced masslock duration; greater ship visibilty; more exciting travel when compass switches from planet to station; greater size variation among scanner 'blips'; lean towards more dogfighting style combat. These are all things I'd like to keep (for my game at least) and so I'll continue exploring shrinking stuff for a while longer but just to reitterate:

Rescaled planets, suns, asteroids and distances all appear to be working just fine.

The problems identified so far only occur when the scanner range is adjusted which has been necessary for my approach to ship rescaling. So why should we rescale the ships?

If I simply resize some of the ships that seem a little too big back to their original elite sizes...

Image

Perfect? No.
Better? Probably.
More varied? Definitely.

In the earlier versions of the experiment I shrunk some ships by half, some by a third and some not at all to give a slightly less jarring result. there's a pleasing nod to the old and the 'new' here however that is amusing me for the moment.

The 'problem ship' is arguably the Thargon.

I've shrunk it no less than an Adder here but could the Adder (or a Cobra Mk III for that matter) be expected to scoop them? Make them smaller still and they become harder to fight (then again, relatively bigger thargoids would be easier to hit)... could be interesting but is perhaps undesirable as they would also become less visible.

Note that this 'problem' also exists in the standard game, meanwhile I've kept the Thargoid big to justify launching so many of them. Changing some of the more practical, hyperspace capable, player ships (cobras, moray, fer de lance, asp, constictor) to half size, does however reduce the problem (maybe I should do the same with the adder...)

Anyway, some more testing to do but things are definitely looking up... for me at least :)
User avatar
Redspear
---- E L I T E ----
---- E L I T E ----
Posts: 2686
Joined: Thu Jun 20, 2013 10:22 pm
Location: On the moon Thought, orbiting the planet Ignorance.

Re: Split: Re-scaling experiment

Post by Redspear »

:oops: Feeling a bit foolish here...

Instead of scaling around the station (size remains unchanged), why don't I scale around the cobra mk III?

OK, so none of the ships would be quite as small as listed in the elite manual but the suggested size differences among ships need not be compromised and all proportions could be adjusted around this new zero point (e.g. stations @ x2, fighters @ 0.66, planets @ x6.6).

This could have some important advantages:

  • Scanner range need not drop below the 'magic number' of 10,000
    No need to adjust ship speed and thrust values
    Speed/distance ratio is unchanged (even if there are potentially much greater distances to traverse)
    Broad ship oxp compatibilty (if your oxp ship is scaled with a mk III in mind - the default player ship - it should look and perform just fine)
    Already tested planets at x6.6 (rather than x3.3) with no identified problems.

For those who have expressed hope that one day a rescaled oolite becomes the default game, I think this presents a more palatable proposal.

...To the test-cave! :mrgreen:
User avatar
Norby
---- E L I T E ----
---- E L I T E ----
Posts: 2577
Joined: Mon May 20, 2013 9:53 pm
Location: Budapest, Hungary (Mainly Agricultural Democracy, TL10)
Contact:

Re: Split: Re-scaling experiment

Post by Norby »

Good idea imho. Maybe you will keep freitghers also at original size to be able to dock into oxp stations built with the old small 64m tall dock. In this case you can keep the size of oxp stations at 1x (there are many).

Would be even more compatible with many scripted oxps if the scanner range could somehow stay at original 25600m (like moving planets and sun farther from the witchpoint origo).
User avatar
Redspear
---- E L I T E ----
---- E L I T E ----
Posts: 2686
Joined: Thu Jun 20, 2013 10:22 pm
Location: On the moon Thought, orbiting the planet Ignorance.

Re: Split: Re-scaling experiment

Post by Redspear »

Norby wrote:
In this case you can keep the size of oxp stations at 1x (there are many).
Not as many as ship oxps but I take your point.
Is model scale factor writable via script?

If ship.role = station
{ship.modelScaleFactor = 2.0}

There could be a test for the size of the docking port prior to rescaling...

Norby wrote:
Would be even more compatible with many scripted oxps if the scanner range could somehow stay at original 25600m (like moving planets and sun farther from the witchpoint origo).
To keep the gameplay dynamics that I'm currently exploring, something has to 'give'.
For example, I could keep the speeds the same but not the scanner or the stations.
I could keep the scanner the same but not the speeds or the ships.

If anyone wants the same scanner, same speeds, same ship and station sizes then it is all done. Just ignore the last part of the source code adjustnents (part 3: ship rescaling).

Thanks for your input Norby :)

EDIT:

Then again...

The main reason for shrinking the scanner is to compensate for slower speeds, which in this scenario (cobra mk III size unchanged) wouldn't be necessary.

Smaller fighters can be balanced by laser ranges rather than scanner range (which were at 0.25, doubled for mk III scaling = 0.5 or just over half the full size scanner for the military laser - unusual but gives room for some interesting simple laser variants). The freighters would be bigger targets (x2) so perhaps they could have longer laser ranges to compensate (no need for this to be core, it just presents some nice oxp options).

Masslock reductions would be lost but that could be remedied via oxp if so desired (e.g. variable masslock with max range *0.66).

Compatibility with existing oxps is a nice goal and so it's probably worth it, especially when it should cure the remaining problems I've been trying to solve...

How many years has this taken me? :lol:

Thanks Norby, I'll give it a try.
User avatar
Norby
---- E L I T E ----
---- E L I T E ----
Posts: 2577
Joined: Mon May 20, 2013 9:53 pm
Location: Budapest, Hungary (Mainly Agricultural Democracy, TL10)
Contact:

Re: Split: Re-scaling experiment

Post by Norby »

There is a scale function for VisualEffects but not for ships.

I like the shorter laser ranges in exchange to keep the original scanner. OXP lasers will looks like extended ranges, for freighters the mass limits in LaserCannons will work well.

VariableMasslock is already near to "max range *0.66" just use target mass also. For a fix limit simply remove the mass variable from the formula in line 45 in variablemasslock.js.
User avatar
phkb
Impressively Grand Sub-Admiral
Impressively Grand Sub-Admiral
Posts: 4830
Joined: Tue Jan 21, 2014 10:37 pm
Location: Writing more OXPs, because the world needs more OXPs.

Re: Split: Re-scaling experiment

Post by phkb »

Norby wrote:
Maybe you will keep freitghers also at original size to be able to dock into oxp stations built with the old small 64m tall dock. In this case you can keep the size of oxp stations at 1x (there are many).

Would be even more compatible with many scripted oxps if the scanner range could somehow stay at original 25600m (like moving planets and sun farther from the witchpoint origo).
While compatibility with OXP's is certainly a nice option, at the moment it's not the primary focus for this experiment. From my understanding, the primary goal is to see if the currently gameplay can be replicated when a variety of game elements are rescaled.

If this was to become the default game mode, there would need to be a period (and probably a long one) where OXP authors are given the chance to adjust their creations to work in the new world. Instructions would need to be given to authors on what to look for (scanner range changes, ship model size changes, planet size changes, distance changes, etc) and suggest what remedial actions should be taken. In the case of stations and ships, the fix would be fairly simple - add a "ship_model_scale" element to their shipdata. For scanner range changes, it's also reasonably simple, to use the "ship.scannerRange" rather than a hard-coded value of 25600. But these sort of fixes are a fairly long way away.

Before we get to that point, though, we need to (a) get the gameplay working similarly to how is works now, (b) implement the changes in a way that they can be turned on via some in-game switch (eg like "Strict Mode"), (c) perhaps provide some sort of manifest element that says "Compatible with Rescaled Mode", so it can be simple for OXP authors to indicate if their OXP will or won't work in rescaled mode.

So, Redspear, I think the idea of rescaling everything around the size of the Cobra Mark III is a brilliant idea. I think it will make life easier for OXP authors as there will be fewer changes required, but don't sweat it yet! I'm more keen on seeing the core gameplay in the new scales, and getting a new version out for testing.
User avatar
Redspear
---- E L I T E ----
---- E L I T E ----
Posts: 2686
Joined: Thu Jun 20, 2013 10:22 pm
Location: On the moon Thought, orbiting the planet Ignorance.

Re: Split: Re-scaling experiment

Post by Redspear »

phkb wrote:
From my understanding, the primary goal is to see if the currently gameplay can be replicated when a variety of game elements are rescaled.
The ship rescaling changes combat a little: it has to if small ships are to be smaller and large ships to be larger.
Whilst the effect I've gone for could be minimised, exactly the same experience requires doing away with ship rescaling.

Otherwise, it plays much like before (at least to the best of my memory - it's been a while...)

phkb wrote:
So, Redspear, I think the idea of rescaling everything around the size of the Cobra Mark III is a brilliant idea.
Thanks :) took me three years but I got there in the end :P

phkb wrote:
but don't sweat it yet! I'm more keen on seeing the core gameplay in the new scales, and getting a new version out for testing.
It's done and all scaled around the mk III.

All now appears to be working and the long standing problem of few arrivals at the station has been replaced with the occasional docking queue. Not only is it a more oxp compatible way of doing things but it is also more efficient with fewer code changes required.

I've just been testing sunskimming, planetary masslocks and laser ranges, all of which may require a slight tweak, but that should be all: just tweaks.

I could post the code now but frankly, I'm a little code fatigued at present and perhaps should run another test or two before I do so.

I think I may have completed my original mission. I may be speaking too soon of course but this new version seems to be a little more robust and a little less quirky than before, with many of those quirks being adjustable rather than utterly necessary.

Code and maybe pics to follow but first... get me away from this monitor :mrgreen:
User avatar
Redspear
---- E L I T E ----
---- E L I T E ----
Posts: 2686
Joined: Thu Jun 20, 2013 10:22 pm
Location: On the moon Thought, orbiting the planet Ignorance.

Re: Split: Re-scaling experiment

Post by Redspear »

Norby wrote:
I like the shorter laser ranges in exchange to keep the original scanner. OXP lasers will looks like extended ranges, for freighters the mass limits in LaserCannons will work well.
I needed to shrink them anyway to balance some ships being smaller but I was forgeting that scanner only needed to be shrunk to match the ship speeds (related of course but no necessarily the same).

Norby wrote:
VariableMasslock is already near to "max range *0.66" just use target mass also. For a fix limit simply remove the mass variable from the formula in line 45 in variablemasslock.js.
Good to know, thanks! :)

phkb wrote:
For scanner range changes, it's also reasonably simple, to use the "ship.scannerRange" rather than a hard-coded value of 25600.
There's a whole bunch of scanner related stuff (for non-player ships at least) around docking that was proving to be a PITA.


Anyway, pics...

Here's what I've done in terms of ship rescaling:

Image

Nice time to find a derelict Python 8)
The cobra is at default size, the python at 200%
Looks reasonable to me, certainly more interesting.

Meanwhile station is at 200% also (to accommodate those larger freighters).

Image

The Moray looks small because (like the cobra) its size remains unchanged but that isn't true for all ships...


Image

A mighty Boa Class Cruiser now actually looks mighty.


Image

Less so, a reduced Mamba (at 66%).


Meanwhile, the station is less obvious than before but not too difficult to find.

Image

Station at 200%, planet (Ensoreus, a small one) at 660%.

Image

But from another angle, a little less obvious.

Image

Well, it's up there somewhere...


Of course, with all these greater distances, the torus drive is going to need some beef.

Image

Check 8)


Tweaking may be needed in a number of areas but this experiment should stand up to such adjustments very well.

  • There's some cosmetics such as sun distance and witchpoint to planet distance that can be played with.
  • Planetary masslock is quite low to encourage zooming around to the station.
  • Combat is a little close up and personal (laser ranges must be shrunk at least as much as the smallest ships else they will appear smaller than ever in combat), but both these values can be adjuted if necessary.
  • Encounter rates can be adjusted with lane width.
  • Sunskimming was tested so that a fast ship (Cobra Mk III), sans injectors and heat shielding, could just about escape with a full tank from a fairly large star (Isinor).
  • Pirates seem a little more unforgiving at short range in 1,86 but non-player ship accuracy could be adjusted if necessary.

Now I need to remember how to use github...
User avatar
maik
Wiki Wizard
Wiki Wizard
Posts: 2028
Joined: Wed Mar 10, 2010 12:30 pm
Location: Ljubljana, Slovenia (mainly industrial, feudal, TL12)

Re: Split: Re-scaling experiment

Post by maik »

Exciting times!
User avatar
Redspear
---- E L I T E ----
---- E L I T E ----
Posts: 2686
Joined: Thu Jun 20, 2013 10:22 pm
Location: On the moon Thought, orbiting the planet Ignorance.

Re: Split: Re-scaling experiment

Post by Redspear »

Made a fork on github and then a pull request to link it to main branch...

Not sure if that was the right way to do things, apologies if not, but at least the code should be accessible now/soon (? git hub is still a bit of a mystery to me...)
another_commander
Quite Grand Sub-Admiral
Quite Grand Sub-Admiral
Posts: 6682
Joined: Wed Feb 28, 2007 7:54 am

Re: Split: Re-scaling experiment

Post by another_commander »

One thing i noriced with this revision of the experiment (was probably there even in previous revisions though) is the planets' atmosphere effects when you get close to them or far from them.

Normally the atmosphere will start fading away as you start getting to low altitude and to achieve this, there arer some hard-coded distance values in the atmosphere fragment shader. The same goes for the atmo fade-out when you are moving away from the planet. Now that the planets are getting rescaled to x6.6, these values should probably be adjusted too, otherwise it looks weird. The atmosphere seems to disappear too slowly when you approach surface and too fast when you are flying away.

Other than that, i quite like what i see, although to be honest i did not have a proper chance to play; just a quick launch, fool around and torus away for a while.
User avatar
Redspear
---- E L I T E ----
---- E L I T E ----
Posts: 2686
Joined: Thu Jun 20, 2013 10:22 pm
Location: On the moon Thought, orbiting the planet Ignorance.

Re: Split: Re-scaling experiment

Post by Redspear »

Atmospheric depth was set at 500 somewhere (if memory serves) and this version is the first one were I've tinkered with it, upping it to 1,500 (planets 6.6 times bigger divided by 2 for half station orbit = 3.3 or approx 3).
I did notice it 'popping' in and out a bit.

I didn't look at the shader but if that fix (adjusting the shader) is problematic then changing the above back to 500 might do the trick.
User avatar
Redspear
---- E L I T E ----
---- E L I T E ----
Posts: 2686
Joined: Thu Jun 20, 2013 10:22 pm
Location: On the moon Thought, orbiting the planet Ignorance.

Re: Split: Re-scaling experiment

Post by Redspear »

A bit on laser ranges.

Rescaling the ships by differing factors alters how combat works: ships made smaller become harder to hit while ships made bigger become easier to hit. This is deliberate on my part and ideas about how it could be revalanced are ling upthread (e.g. altering number of energy banks - not included in the experiment code).

The other aspect of ship rescaling is how it alters ship visibility: bigger ships more visible and smaller ships less.
The balancing factor here is laser range. Reduced range requires ships to come closer and therefore be more clearly visible.

Currently laser range is at 0.66 and the smallest ship at 0.66
Therefore, no ship is less visible in combat but some are more visible.
Without reducing ship speeds, combat becomes a bit more zippy and close ranged.

A bit of maths for a few possible laser ranges...

0.66
[list][*]Fighters @ 0.66/0.66 = 100% visibilty
[*]Multi-role @ 1/0.66 = 150% visibilty
[*]Freighters @ 2/0.66 = 300% visibilty
[/list]

This is the current set up. No loss of visibilty but ships close on you pretty fast.


0.75
[list][*]Fighters @ 0.66/0.75 = 88% visibilty
[*]Multi-role @ 1/0.75 = 133% visibilty
[*]Freighters @ 2/0.75 = 266% visibilty
[/list]

Worth testing perhaps. Some loss of visibilty to the fighters but increase in range likely to be significant in terms of combat. Other ships remain more visible but many aggressors fall into the fighter category. Also could be psychologically interesting in comparison with the standard game: small ships appear just a little smaller in combat whilst big ships appear much bigger. Of the three, this is also closest to the standard game.


0.5
[list][*]Fighters @ 0.66/0.5 = 132% visibilty
[*]Multi-role @ 1/0.5 = 200% visibilty
[*]Freighters @ 2/0.5 = 400% visibilty
[/list]

This was my favourite pre 1.86 but now seems a little brutal. Visibility is excellent however, far superior to the standard game in many instances.

The other variable is ship model size. 0.66 could also be inceased a little if one so desired as speed, not size determines rate of approach while size determines ease of targetting.

So if 0.66 turns out to be a little tough then there are options that don't necessarily require reduced fighter visibility (e.g. laser range increased to 0.75 and fighter scale increased to 0.75 to match it).
Sailsman63
Above Average
Above Average
Posts: 16
Joined: Sat Dec 23, 2017 4:10 am

Re: Split: Re-scaling experiment

Post by Sailsman63 »

Looking quite usable! I'll wait and see if Dizzy can do a Windows build, and try it out. (I've never had good luck getting a working compile system running on Windows, and I don't have space on my Linux VM for the specialty libraries)
Redspear wrote: Sun Feb 04, 2018 8:31 pm

If I simply resize some of the ships that seem a little too big back to their original elite sizes...

........

Perfect? No.
Better? Probably.
More varied? Definitely.
Looks okay to me. In fact, I'd say that with this scaling, the Anaconda is rather less efficient in packing cargo modules and ancillaries into it's hull volume than a Cobra is. If we:
  • take the Cobbie as a as baseline
  • assume that similar fractions of volume are needed for engines, fuel, etc. are needed for most ships
The Anaconda as you have it scaled here should, by rights, have around 2,200 TC capacity. I have not run the numbers for the other ships, and assume that fuel needs, etc, scale linearly with volume.
Redspear wrote: Sun Feb 04, 2018 8:31 pm
The 'problem ship' is arguably the Thargon.

I've shrunk it no less than an Adder here but could the Adder (or a Cobra Mk III for that matter) be expected to scoop them? Make them smaller still and they become harder to fight (then again, relatively bigger thargoids would be easier to hit)... could be interesting but is perhaps undesirable as they would also become less visible.
If you want to scale the Thargon down without making it much harder to fight, you could either make it "Softer" so that it takes less energy to destroy, or weaken its firepower a bit. Possibly a bit of both. (Still harder to kill, but the need would not be quite as urgent. Much more mosquito than falcon, but still a threat when swarming)
Post Reply