Avorion

Avorion

View Stats:
Nightring Aug 13, 2021 @ 9:51am
Beta 2.0 FreePlay Thoughts, - Combined with Modifications - Yes I love it.
https://steamcommunity.com/sharedfiles/filedetails/?id=2573910514

Personally, I tend to change up the playstyle or goals of the game.
Not just this game either. Any game.

For Avorion I did so in 1.38 and earlier too.
IE: Circumnavigate and cross the rifts, Figure out how to, and cross the barrier, get Avorion and kick every factions hiney that you did not like. Profit?
No no good sir!
I was Soooo compelled by my lack of understanding of how to adjust code to modify the game to suit my playstyle fun factors,
That I would spend days or weeks learning how to change stuff up without borking the game into states of unplayable delusion!!!

Call it a sick passion, or just plain good old fashioned curiosity, it has never ceased to give any game new life and give me many many many hours of enjoyment and hair pulling frustration!
Yet For Avorion this was always especially true!

So I always modded the files to make the game more personalized to my playstyle tastes.
And I am doing so with the Beta Branch too.
And just about every way I try it is a boatload of fun.
Yet I was bound by not only my lack of coding knowledge, but also various hard coded aspects of the game in previous versions.
And that is no longer such an issue in Avorion 2.0 Plus.

In 2.0, (Pre-Update) a lot of the limitations I want to overcome are handed to me on a silver platter in Free Play mode in the Beta.
Couple that with my Modified Beta /scripts folder files and I now have the perfect game.
(Errrr - for my enjoyed playstyle/s) ((Your own mileage may vary ))

A few examples of FreePlay Choices -
As I set them in the pic this test run-
1. Can now have enemies that hit for 100 percent of their damage in a normal game instead of just 30 percent of their damage with the "enemy damage" slider.

2. Can start with or without full building knowledge. Although for this I would like a happy medium between the two.
- In Other words possibly make it so that all the lesser ore blocks I know how to make, I can make in new ores I discover automatically, but stuff like Shields for Naonite, I would have to learn once I got some Naonite, or Cloning For Xanion and Hangers for Trinium etc etc...
Yet have a way to learn them other than - "Hope your RNG dice roll lands well for you as you kill pirates and check stations my good sir!!!"

3. Can start with or without Shipyard bound building mode.

4. Can start with or without the Barrier.

5 Can set the enemies to be precise instead of intentionally missing some shots.

6. Can start with unlimited ship size

7. A most important feature!
Can re-start a game over after creating a new game because I forgot to uncheck the Play Tutorial Button!!! - (Wait, Did I say that last one out loud?)

8. Blocks can be set to be more realistically destroyed at 15 percent health as opposed to a block being destroyed at 30 or 50 percent health.

9. can set the relationship gain up to 150 percent (and more or less too), and the relationship loss down to 50 percent (and more or less too),
to make the game Less starting a dad-burned war Happy by my miner with 6 mining lasers who is screaming, "That Roid behind that station must be mined!!!".

10. Can set the amount of roids up to 180 percent of Normal as in the pic (or higher or lower), thereby negating the need for me to modify a boatload of sectors by adding multiple RNG or fixed lines of asteroid happy code to them.
Although I may still add a few lines of claimable asteroid RNG code to gates sectors or other Lone Shipyard/Trader/Consumer type sectors or whatever.
And even change existing empty/useless asteroid belt code into rich asteroid belts full of ore.

11. Can set the rifts to zero or even add more.

And other settings too, such as full control over the number of factions, it appears too, yet I have not played with that setting yet. If so, that will be amazing for either opening up more empty space to take over, with my empire filling up the gaps,
or filling it up with more factions to ally with or destroy as my empire takes over and fills up the gaps :-).

So when combined with my modified System Upgrades, Sectors with Better roids and claimable roids, and Starting Item choices of System Upgrades, Turrets, Credit Amount, and Ore Amounts - 2.0 (as tested in the Pre-2.01 update version) is completely customizable in so many ways that Role Playing with various Starts has become much better than 1.38 and earlier.
Combine all of this with the many Quality of life updates such as more realistic Hyperspace jumping, Auto piloting, and whatnot, and it is simply amazing.

Just my two cents on the FreePlay scenario setting for Avorion in the Beta.
Last edited by Nightring; Aug 13, 2021 @ 11:05am
< >
Showing 1-7 of 7 comments
Nightring Aug 13, 2021 @ 11:37am 
Fixing to start modifying this new set of files.
Going offline. See ya in a day or 3 if all goes well.
Sooner if not lol.
Later Taters.
Nightring Aug 14, 2021 @ 11:57pm 
Got the updated Beta modified for SP play faster than I thought. I upgraded almost all of the systems, and changed the ranges on all the turrets. made adjustments to the starting items.
Big fun.
ChainGuns, PulseCannons and their ilk are now bonified usable weapons that can hit out further than arms reach now..
Bolters and other cooldown turrets have less cooldown time and more pew pew time :-)
Plus increased range for them too! :-)
The Turret Changes I made apply to the enemies you fight too, so it is all good here.
The System changes I made allow me to play as I like to play also.
As usual the hyperspacebooster was a pain to modify. but the rest went smooth as butter.
Life is good.
Polaris Aug 15, 2021 @ 1:01am 
How hard would it be to return fighters range to the range of the base turret they are made from?


(That's one of the many things I would like to mod ;D)
Nightring Aug 16, 2021 @ 12:32pm 
Ahhh Sorry. I have had so much fun with the Turret Ranges, I have not even looked at Fighters in 2.0+.
Let me open up the files.
OK. With just a quick look at the "fightergenerator . lua" (without the spaces) in scripts/lib, it looks like we can still change some game changing stats. And thats what I remember from pre 2.0 too. This will be fun. There are 2 lua files on fighters in /scripts/lib, take a look see :-)

Edit - Hmmm, OK so I am not seeing ranges yet, however I have run into this type of situ before since I am a non techy non coder game file changing fool. So if the ranges turn out to be hard coded, what I would do is adjust the speed, durability, and other things to make up for whatever stat I am lacking access too. (in this case range).

However, I just opened em up. I usually take a day or two to figure them out. Not just a minute or two as in the 2 fighter lua files just now. So take a look see if you are a modder. You might have access to the ranges. I will keep looking the next time I get a day or 3 free.
Last edited by Nightring; Aug 16, 2021 @ 12:51pm
Nightring Aug 16, 2021 @ 1:10pm 
Anyway, for work arounds for Non math, Non techy, Non coders, here is an IE:

local maxDurability = FighterUT.getMaxDurability(tech)

fighter.durability = maxDurability * lerp(rarity.value, -1, 5, 0.2, 1.0) * rand:getFloat(0.9, 1) * math.pow(1.2, material.value)
fighter.turningSpeed = rand:getFloat(1, 2.5)
fighter.maxVelocity = rand:getFloat(30, 60)
fighter.diameter = diameter

if rand:test(0.2) then
fighter.shield = maxDurability * rand:getFloat(0.25, 0.5)
end

Things such as (but not necessarily this) adding something as simple as a + 1 to the end of the fighter.turningSpeed = line, can have a profound effect. Then add ten or something to max velocity RNG and it can easily make up for other things such as range.

So a non techy might try something like this:

local maxDurability = FighterUT.getMaxDurability(tech)

fighter.durability = maxDurability * lerp(rarity.value, -1, 5, 0.2, 1.0) * rand:getFloat(0.9, 1) * math.pow(1.2, material.value)
fighter.turningSpeed = rand:getFloat(1, 2.5) + 1
fighter.maxVelocity = rand:getFloat(50, 80)
fighter.diameter = diameter

if rand:test(0.2) then
fighter.shield = maxDurability * rand:getFloat(0.25, 0.5)
end

(Notice the changes above)
And then start up a test game where you give yourself all you need to test, but in a real game, not a creative mode variant, and see what they do.
If it gives you something close to what you are looking for in test runs, then stop and start a real game and have a blast.. If not, change the numbers and try again.

Easy peasy.
And I dont math or code or anything.

Edit - heh heh heh. I bet a few test runs -
changing the diameters by adding a " * 0.80"
and " * 1.2" would be wild as all get out LOL!
Last edited by Nightring; Aug 16, 2021 @ 1:24pm
Nightring Aug 16, 2021 @ 1:42pm 
What beginner non coders who are having a go at changing up their games have to remember is that there are often other changes that will also affect whatever files you are making changes too.
For a rather bad example for the fighter changes might be the fightersquadsystem.lua in the data/scripts/systems folder.
So all of a sudden you get access to more squads the entire game too.

Yeah that is a bad example, but the principle of it remains true for every change you make.

Edit- Here is a good example of a change that affects a whole lot of in game items that you might make changes too ->
The energybooster.lua and the batterybooster.lua in /scripts/systems
Changing those two has a profound effect on a lot of other files you might make changes too.

One other principle I have found that is not always but usually correct for most games for us Non Math, Non Techy Types is this - Never mess with fire rates :-) hehehe.
Last edited by Nightring; Aug 16, 2021 @ 2:04pm
Nightring Aug 16, 2021 @ 3:39pm 
LOL Looks like reach (fighter weapon range) was in my face hehehe. Have not messed with or tested modified fighter files yet so I am unsure but here ya go ->

weapon.reach = math.min(weapon.reach, 350)

============================================

It is Inside of this below block of text in the /scripts/lib/fightergenerator.lua.

for beginners to this ->
You should be able to change the hard Int " 350 " or possibly make it a float. (a float is basically a variable that can use decimals.)

Edit -
IE: 350 would be 3.5 kms, 400 would be 4 kms, 600 would be 6 kms, etc etc

Block Of Text ->
===================================================================
local baseVariation = rand:getFloat(1.0, 1.15)

for _, weapon in pairs(weapons) do
if weapon.isProjectile and weapon.fireRate > 2 then
local old = weapon.fireRate
weapon.fireRate = rand:getFloat(1, 2)
weapon.damage = weapon.damage * old / weapon.fireRate
weapon.damage = weapon.damage * baseVariation
end

weapon.reach = math.min(weapon.reach, 350)

fighter:addWeapon(weapon)
end
============================================================

Last Edit - The above blocks of text (including previous posts) is a good example of why you always copy and paste directly from your own game files, and not from instructional posts on Steam boards. The spacing is all screwed up since I did not use the formatting tools available.
Last edited by Nightring; Aug 16, 2021 @ 3:56pm
< >
Showing 1-7 of 7 comments
Per page: 1530 50

Date Posted: Aug 13, 2021 @ 9:51am
Posts: 7