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

Where in RAM is Goods Prices stored?

The general place to discuss MOD''ing Freelancer!

Post Wed Mar 26, 2003 7:09 pm

Where in RAM is Goods Prices stored?

I got a better memory editor to look into the system RAM where I assume the data for Goods.ini prices are loaded in and stored. It HAS to be unless refer to DLL which it does not for prices; or does it?

I have found the adress for your credits, cargo units for goods, just about every thing you can think of, able to change them, but no prices!

They are converting say the 120 base credits for one Boron commodity price into a different number. I can not track it down through 351 memory adress very easy. No way to manipulate the price value up or down (that is the whole point -to change the price of goods while game EXE is running for Dynamic Ecomony).

Manually changing all address for different sets of price numbers in goods.ini for Boron; I swear the data is stored someway else. I can not change the price.

Thus the Goods.ini Price Values as written in that file; are NOT the same values in the RAM memory adress. What form would it be?

I got desperate and did edit 351 locations in Ram adress memory but not one of them values that said they were the number (120 for price nominal for Boron in Goods.ini).

They could store the Goods.ini numbers in any infinite coded ways. Store number as Price * 2 for example. It could not be a divideed number since Toxic waste sell as cheap as 2 credits. There are odd integers, limits somewhat how they are stored. What the heck is Unicode? What would 120 be in Unicode?

I look at the market prices and numbers for multiply to get the sale price at that base. For Boron in Pittsburg, it is 120 with 1.0000 =120 while at Manahattan it is 1.299* = 155 for price Boron. It is not refering to an external DLL.

Does anyone know what way the value are converted to from regular Goods.ini prices into storage in memory? IT has to be STORED in RAM memory (or Hardrive virtual memory) in some form.
Why do they make it such a B^tch to modify basic stuff in this game?......

Any genius out there know the answer? THX.

Post Wed Mar 26, 2003 7:41 pm

No expert here.. but I think that memory allocation is dynamic so you can't say that a particular data (such as) price will always be stored at this or that address.


Why do they make it such a B^tch to modify basic stuff in this game?......



I was wondering the same thing myself... many times already...

Post Wed Mar 26, 2003 8:15 pm

maybe they tought pepole would only want to make B-ships flyabel and start out in a titan in theire own made system whit 1 million credits and buying diamonds for 1.

Post Wed Mar 26, 2003 9:19 pm

Why would they store the number 120 more than once? They are better off storing the 120 once (base price) and the multiplier per base. I think you would have more success looking for the multiplier.

To that end, the multipliers have a specific acuracy in the ini files (1.000000 or something to that effect) if you can't find the number with the decimal, look for it without the decimal.

Post Thu Mar 27, 2003 12:12 am

This will be hard, because the mamory allocation is dynamic... (it has to be) it's not the game that assigns the address, it's Windows, so that makes it a little harder :-( the only thing the game does assign is a virtual adres, and that's translated to a real address by Windows... And that's probably never the same... Think about all people with different amounts of RAM etc... And about other programs that are running, and also use memory... So this will be very difficult... And after you have fixed that (which I doubt you ever will, but I hope) you have to find a way to write back the changed prizes to the ini file...

Post Thu Mar 27, 2003 3:05 pm

May I ask what kind of memory editor you are using and where to get it?

I found few of them on the net, but were all shareware... need a free one.
thx

Post Sat Mar 29, 2003 5:42 am

The goods.ini file and Market commodities get reloaded on using a JUMP Gate. You see for a second a message saying loading when entering a new system via a jump gate or hole!

Does this mean that the new data gets loaded in also? Then it means it loads in the multplier constants when entering a new system; thus you can change the Goods.ini but more important the Market commodity multiplier factors in the Market file gets re-loaded when entering a new system! (maybe)

Of course, I need to test this for I do not want to premature myself. If it works, you will have a working Dynamic Economy for prices! (well random fluctations).

I will try it and report back. After all, what is it loading? The base and solars (texures) and maybe hopefully some of the other *.ini.

It was not making sense (prices were still the same after RAM editing! WTF) until I 'jumped to new system' then prices changed/loading; yes data is stored and moves around in virtual memory via windows allocations.

Update edit: Nope, does not work. I tried to change goods.ini and market_commodity.ini files after ALT-TAB out, then use a jumpgate to try to get it to load in new files, did not work. It is loading in memory hogs stuff such as solars textures for one thing; still wonder what other files such as maybe Zones and Objects? That information can still be useful. Example is jump out of system then jump back in and find out a radiation accident occured making a new Zone of Hurt.

Why not make a zone of 'free repair' around a freindly faction solar repair base (factions main base must be friendly?) Instead of damage hull, it repairs you. Just edit Universe\system\Li01 in that folder define another zone for Plus health to hull around a defined spot like the docking ring. Just add in a new ID number and resource. I just add on my new resources to existing ones in line; instead of actually creating a whole new number 8 dll. I di that for infocards. last one in folder 23 is 1079, I put a new infocard as number 1080. No new resource needed.)

SEAL 2.0 memory editor. Freeware tool on NET.

Edited by - Xerx on 29-03-2003 06:54:56

Return to Freelancer General Editing Forum