Important Message

You are browsing the archived Lancers Reactor forums. You cannot register or login.
The content may be outdated and links may not be functional.


To get the latest in Freelancer news, mods, modding and downloads, go to
The-Starport

Concept: Modularity with XML/FLMM

The general place to discuss MOD''ing Freelancer!

Post Fri Apr 15, 2005 4:15 am

I am no modder - but anyhow there might be a potential in this rationalization: if your method applies to prizes for commodities too then it could be possible to bring some dynamics into SP-commodity trading:
a) simple solution: a built-in trigger with random factor changes prizes of commodities on game start
b) advanced solution: prize of commodities are changed within the game triggered by some standardized market parameters .

I know that someone (Baene ?) has already written for one mod (forgot which one - TNG ?) a dynamic commodity part linked to NYSE - but this worked in online MP only. And - alas - in online MP gaming the trading aspects of the game are less appreciated than Chase-Hit-BOOOOM . It was not a big hit therefore - afaik.

If such a change is possible (it would be awesome) it could create some additional interest for trading and for finding most profitable routes.
And - it could even give a strong impulse for MP-RPG-Freelancing: Clans could protect large transports/freighters who have to travel far into foe-faction-territory in search of good profit.

Any chance to realize ?

Post Fri Apr 15, 2005 11:03 am

There is no way to build a random factor into a mod using FLMM. We could, however, give mod designers choices that they could use to re-order the trade system, however.

For example... I could rationalize pricing variables, so that... for example... at the top end of things, a given commodity would sell at 4X value, and at the bottom, it'd be 0.25, with stops along the way at 0.5, 0.75, 1.0, 1.25... and so on.

Then people could write scripts that could completely re-order things. For example, you could write a script like so:

<data file="data\equipment\market_commodities.ini" method="filereplace" numTimes="0">
<dest>
MarketGood = commodity_boron, 0, -1, 0, 0, 1, 4.0
</dest>
<source>
MarketGood = commodity_boron, 0, -1, 0, 0, 1, 1.0
</source>

And now every location that bought Boron at a "good" price... wouldn't

I haven't hit the commodity issue yet. The ramping on that is probably going to be at least as tricky as the one for weapons, and I've just gotten done re-ramping the shields... weapons still have a ways to go, and I'm going to have to standardize their pricing, too- right now, there are issues with price that have to do with DA's price gradient curves- many of these are at least partially broken by the current changes to the codebase, and some of them never made any sense at all, from a game-design perspective, and were either left in the game by mistake or because the designers thought of the weapons mainly as loot, and not things that people would buy- it's clear that there was a little bit of both going on here.

And there is no way to do it while the client is on. At least, none that's terribly practical- while we could have a memory scanner scan commodity prices every time a user entered a System, and then shake them around a bit and put them back into the same memory addresses... searching for that information would be a royal pain, I would think, and I certainly don't know how to do it, but it's probably possible.

Edited by - Argh on 4/15/2005 12:06:36 PM

Post Tue Apr 19, 2005 5:08 pm

OK (pauses to take a deep breath)...

I have finally gotten done tagging all of the data that needed to be tagged, for weapons... I think. That was a whole lot of data to label, and I had to spend a lot've time staring at DLL entries to make the mini-module that I'm going to be including, which adjusts all of the guns for the various Factions, so that they fit their descriptions.

I've also totally rebuilt FL's AI, including the AIs used for the SP campaign. Lots of fun, you bet

Instead of having lots and lots of AIs... now we have 10... plus two very specialized ones that are used for Setpieces in the SP storyline, which I decided to leave alone. I settled on 10, because that gives me 3 of the basic manuever types (which are, to be really honest, the main things the give the AI ships much "flavor" ) in "easy", "medium" and "hard"... plus a torpedo AI, which is always "medium". I thought about an "ultra hardcore", but quite honestly "hard" is pretty darn hardcore, when it's using decent weapons- it's really very easy to make the AI unbeatable... and a lot trickier to make it just barely beatable.

I have been spending a lot've time looking at DA's game-balance, too. I don't want to destroy the SP campaign's difficulty ramp- I've been extremely careful about that- but I do want MP to feature a lot more arguably "best" ships for fighting other players... and getting that to work is proving rather tricky. I'm probably going to end up introducing better parity, and then doing buffs on the SP encounters where DA wanted players to have a rough time. The funny thing is that it's much easier to do this on the AI end than by the convoluted system they used- if you just make the AI tougher by tiny amounts, you'd be amazed what a difference that makes...

At any rate, I'm hoping to release this by the end of the week. I probably won't have everything tagged yet, but I'll definately have the weapons tagged, and the mini-mod altering their values will be done. Thus far, I've managed to keep the SP storyline feeling almost the same, but players will definately notice that a few things have changed- notably, the game-balance curve of saving money vs. upgrading weapons and/or shields has really fundamentally altered, and just about every weapon is now a lot more credible... there's a lot less deadwood in the design now.

Edited by - Argh on 4/19/2005 6:09:40 PM

Post Wed Apr 20, 2005 9:03 am

As I said, I have some issues with this (actually the ones that Glock mentioned), but regardless of that Argh, watching the development of this in such a short time and watching your thought process is amazing. I really hope that I am proved wrong on this one. If I wasn't such a paranoid asshole, I'd be really excited about this.
I tip my hat to you.

Post Wed Apr 20, 2005 9:47 am

Aw, now... tip yer hat when it's working, and it doesn't suck, I always say- after all, I could just be full of crap.

Seriously though... I think I am getting closer to getting things done here, and getting this out the door. And then... we'll talk about how to make this more useful, and what to do about security. My current thoughts on security are that you could simply dump the SDK into a directory, point FLMM towards that directory... run a finished script, and then just use the output as the mod... then it'd be pure INIs + a FLMM-created DLL for things like new weapons, ships, etc., which need names... or players could do it the old way.

Speaking of which... I don't suppose that any of the hard-core coders around here might be willing to make a better tool to make DLLs with? That's why I went towards XML/FLMM in the first place (although at this point, I'm mainly doing it because it's faster to do a lot of things this way).

Ok... so last night, I broke down Powerplants, and looked at FL's curves... and decided what to do about them. They definately needed to be balanced properly, and yet... there has to be a definate trade-off between buying one of the heavier fighters and one of the lighter ones... basically, instead of balancing things with weapons and shields (which has always been the main issue with MP- Light Fighters simply cannot damage VHFs very easily because of the stats)... I've decided to balance things with armor and power outputs, but with a different distribution curve than FL used- VHFs will actually have less power in their reserves, and players will need to be more sparing with the spam (this is, of course, countered by the fact that VHFs have enough power to actually fire high-end weapons more than once or twice... and twice, with things like plasma weapons, will tend to kill things that don't have nanos).

Here's the current balance curve. Feel free to kibitz... and of course, once I've put out the first rough I'll be taking comments:

"True" Light Fighters (all House, and ge_fighter 1 and 2):

power 35 X Guns (starflier... 105, for example... Patriot @ 140)
Capacity 10 X Power (1400 for a Patriot)

Medium Fighters and Freighters (this is all pirate/Borderworld/ge_fighter4, etc. stuff):

Power 40 X Guns (so a Bloodhound, for example, has 160/sec)
Capacity 12 X Power (1920 for a Bloodhound)

Heavy Fighters:

Power 45 X Guns (among other things, this makes the Liberty HF useful, despite the armor)
Capacity 14 X Power

VHFS:
Power 60 X Guns
Capacity 20 X Power

VHF power levels are going to require more extensive playtesting on my part- when I ramped things like this... they didn't even come close to their previous values (1000+ Power, 10K+ Capacity)... and yet, it seems rather lame to put them so far up the curve that ... once again... nothing can compete with them, in a straight-up fight.

But... manuever means a lot more than it did, previously. After taking out gun levels (that part, btw, is totally optional, for you purists out there- just remove a script and it's gone)... even a Starflier can (very briefly!) output a huge amount of firepower, and it's quite possible that the VHFs' power got buffed that high because otherwise they just weren't worth buying- the freighters are the only ships that manuever as poorly. But why not simply do it with armor, instead of breaking the entire game design, for the sake of ships that players won't buy during the SP campaign unless they have a Strategy Guide? I dunno... DA's game-balancing methods are quite mysterious to me at this point

Shield balance, as of now:

Light Fighters (this includes Borderworld/Pirate/etc.):

1000 X level, 10 X rebuild/sec/level, 5 X level power usage during rebuild.

Heavy Fighters and VHFs:

1500 X level, 15 X rebuild/sec/level, 7.5 X level power usage during rebuild.

Freighters:

2000 X level, 20 X rebuild/sec/level, 10 X level power usage during rebuild.

As you can see, Shields are now ramped on power usage according to their rebuild rates- rebuild is exactly twice power consumed. FL's original balance on this made zero sense. A Level 10 shield with 11K+ hitpoints ate just as much as the lowest of the low. Since power consumption is such an important overall balancing factor, I felt that it made little sense to neglect ramping Shields like weapons, so that there will be definate disadvantages in stacking all of one's equipment at Level 10.


Missiles Balance:

This requires a bit of philosophical discussion, so here goes.

First off, I am well-aware that people think that FL's missiles are unbalanced. After consulting the God of Stats... I have to say that I agree. The reason is that it's because of the way ammo was handled, and pricing structures. Therefore, I have rebuilt missiles with the following changes:

1. All missiles get a small but distinct improvement on their range and maximum velocities.

2. All missiles take up cargo space, to prevent people from carrying ridiculous numbers of them.

3. All missiles cost more- this balance has been figured against the worth of the missiles against enemies of roughly the same level in SP/MP Random Missions, as well as the SP campaign.

4. Damage ramps have been adjusted- in most cases, upwards.

The overall result of this re-adjustment has been that Missiles are still worth using for MP dueling... if the players are very, very good at hitting with their Missiles... I have a feeling that they aren't going to be nearly as popular, though, and certainly not equivalent to using a well-rounded gun layout- skilled players will probably prefer heavy shield-busters and plasma guns, for maximum carnage. But, against the AI... Missiles will have their place, if used sparingly.

So, here are the ramps:

Javelin, Catapult, etc.: 1000 X level damage, 1 cargo / round X level. This means that Cannonballs take up 5 cargo per round... but you can still kill VHFs with them, I can assure you. Cost = 100 X level. This makes them all somewhat more expensive, but not ridiculously so. At low levels, or during the SP storyline, it will make sense to use them to finish off objective prey, or to take out Stations- their range improvement is enough that you can snipe a bit, but they still turn like pigs.

Stalker, Windstalker, etc.: 500 X level damage, 0.5 cargo / round X level. Cost = 50 X level. Better manueverability... less cost... less damage. The low-level ones are, imho... hardly worth using, unless you buff heavily and use multiples- 500 damage is hardly a flesh wound. High-level ones are a real threat, but the cargo space you're eating makes them less valuable.

Shieldbusters: 2000 X level damage (energy ONLY) 1 cargo / round X level. Cost = 100 X level. 1 shieldbuster + 2 Javelins = dead Bloodhound... for $300. Not a very good tradeoff, imo, but players will ultimately decide.

Gun balance:

Laser, Photon and Tachyon:

Refire_delay = 0.12
Velocity = 750
Hull_Damage = 25 X level
Power_Usage = 5 X level

Tachyons have lifetime = 1.2, but cost 2 more Power per level/shot.
Photon have lifetime = 0.8, but do 5 more hull_damage per level/shot.

(SPECIAL- Small bonus against all Shields)

Plasma:

Refire_delay = 0.35
Velocity = 650
Hull_Damage = 150 X level
Power_Usage = 30 X level

As should be obvious, Plasma weapons have the best Power/Damage efficiency of buyable weapons in the game. They also have the lowest hit rate, when a human or AI shoots them- refire_delay is a critical issue, obviously. The original refire_rate made Plasma weapons almost entirely useless except at the very highest levels of play (where, at least in theory, they could be used in place of Nomad weapons). The issue there has always been, and continues to be... that Nomad weapons don't use any Power at all. Needless to say, I found this irksome, and both problems have been fixed ;-)

(SPECIAL- Miniscule bonus against all Shields)

Neutron and Particle:

Refire_delay = 0.25
Velocity = 650
Hull_Damage = 75 X level
Power_Usage = 15 X level

Particle have lifetime 1.2, but cost 6 more Power per level/shot.

(SPECIAL- Shield penalties/bonuses are almost at FL's defaults)

Pulse:

Refire_Delay = 0.35
Velocity = 750
hull_damage = 10 X level
energy_damage = 200 X level
power_usage = 20 X level

(SPECIAL- totally neutral to all Shields- what you see is what you get... I guess it's good that it's a lot!)

Nomad Guns:

Refire_Delay = 0.75
Velocity = 650
hull_damage = 600X
power_usage = 60X

Nomad Guns basically suck, but have the best energy/damage efficiency in the game- 10X, as opposed to 5X.

And, last but not least, I am in the process of writing a XML script that will re-balance every last one of the guns to fit their Faction description, so that they still have their... er... "flavor". I really don't like the way that FL's "flavor" was created, and have a lot of good alternatives, but I'll make that a seperate mod... I'm already going to be annoying the purists enough by cutting the uber-ships down to size

Final words here, before I go back to what I was doing- I've edited this post about 10 times today

Let's look at some math here, to give y'all a practical expectation for how things will work (and thus far, gameplay testing has shown that things are working pretty well this way):

A Starflier with 3 Justice Ones, and a level 1 Shield looks like this:

Power Produced = 105
Power Capacity = 1050

Firing all three Justices, with the Shield recharging:

(5 X 8.33) + 5 = 47

So, basically, a wee little Starflier will never run out've "juice", and will output 75 damage/second... but will never, ever... be able to hurt a VHF with Level 10 Shields. I wasn't that devoted to utter parity- IRL, you can't do much to a tank by throwing a rock at it

Now, what if this Starflier equipped itself with some decent weapons and a Shield that might give it a (small) amount of protection from an enemy's guns? In the original game, we never did find out, because of the level restrictions on guns and Shields. But now we can.

So, let's say that the Starflier mounted three Class 5 Lasers and a Class 5 Shield. This gives him/her a damage output of 375/volley (enough damage every ship's Shield, but not exactly catastrophic) and 5000 points of Shield protection... not bad, not bad 'tall... but there's a little catch.

Power Produced = 105
Power Capacity = 1050

Firing all three Lasers, with the Shield recharging:

(75 X 8.33) + 25 = 650

Each laser does 125 damage, and fires 8.33/second. This means that every second, the Lasers theoretically do 3123 points of Hull damage, and 1562 Shield.

1050 / 650 = 1.6 seconds... or 4996 hull damage... or 2498 Shield damage. Let's say that that Starflier picked a fight with a Freighter that has a Level 10 Shield (the worst-case scenario). During the period while the Starflier is waiting for the power-banks to refill (10 seconds, duh)... the Freighter, which has 220 Power free after its Shields get their share (ouch) will have regained 2000 hitpoints of Shield (double-ouch). Obviously, this Starflier pilot's not going to have a good day

So... let's look at a situation where the Starflier pilot goes for more efficient methods. This wily pilot knows that he/she will be fighting against somebody with a Level 10 Freighter Shield, and knows that once he/she gets past that Shield, it's going to be a (relative) cinch to destroy the Freighter. Therefore, the pilot picked a different weapons lineup: 2 Level 4 Plasma Weapons and 1 Level 5 Pulse weapon (a shieldbuster).

This gives him/her 1200 hull damage per shot, and 1600 Shield damage... but, of course, there's that pesky low refire rate and slower shot speed to worry about... and the Energy costs... for just shooting one salvo are still present.

Power Produced = 105
Power Capacity = 1050

Firing all three weapons, with the Shield recharging:

(240 X 3.03) + (80 X 3.03) + 25 = 995!!!

Soooo... this player could've theoretically done 4800 Shield Damage or 3600 Hull damage... in 1 second. But after that... they have to wait 10 seconds before they have enough power to shoot another 1-second salvo.

If this second pilot is a perfect shot and never misses... he/she is doing far better against this Freighter than the first pilot, even if they're both perfect shots. Since we know that most people aren't perfect shots... it all evens out, or pretty darn close. Welcome to game-balance

Edited by - Argh on 4/20/2005 4:45:09 PM

Post Mon Apr 25, 2005 12:26 am

sorry for late response
Thank you for taking my questions into consideration. As much as I understand your example but 'the other way round' (INCREASING number of stations with good prices) could add some spice to well populated MP-Servers because trade runs would be more attractive than they are now. All in the sake of for more balancing.

Return to Freelancer General Editing Forum