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

Problems docking with large stations

The general place to discuss MOD''ing Freelancer!

Post Mon Jul 10, 2006 1:37 am

Problems docking with large stations

Hi, come across a major problem with getting docking working with large stations. This has come about as a result of succesfully building custom SURs for stations (thanks to DEV). What I have found is that on my large stations a ship has to try and fly too close to the centre of the station to confirm docking before turning back out to the edge of the station to find HPDockpointA02. My ships seem to get lost on the way back out and returns to the centre again for confirmation of docking. This goes on indefinately.

I have HpDockPointA02 1900m from the center of the base and DockpointA01 1750m and finally HpDockmountA is 1600m from the centre.

Does anyone one know which point in the base a ship aims at to confirm docking, and what is the maximum distance from this point that docking is confirmed ? Is there any way to change this ?

Any other suggestions ?

Dev

Post Mon Jul 10, 2006 2:43 am

I guess you're in luck since I just recently cracked this (literally, two or three days ago). By default you will get a "can't dock, out of range" message if you are over 10k away from the base; furthermore, you won't get the message from the base confirming that you are trying to land until you are within 1k. These two constants are both located in common.dll, and both are 4-byte floating point values (10000.0 and 1000.0, respectively). The 10000.0 is located at address 0x13F45C, and the 1000.0 is located at address 0x18ADB4. Change these numbers to whatever you feel like and you should be set.

Post Mon Jul 10, 2006 6:04 am

Dev - you are a star ... if this works. I used a hex editor and at the offset for the 1000 value I find - eManager@PhySys@. Can you confirm the offset ... and R you using a vanilla common.dll ?

Post Mon Jul 10, 2006 2:17 pm

Dev - can you confirm the hex sequence to look for to find the 1000.0 value ?

I reckon a 32 bit IEEE floating point conversion of 1000.0 = 44 7A 00 00

Is that what you found at the address 18 ADB4 ?

TIA.

Dev

Post Mon Jul 10, 2006 4:34 pm

Don't forget that the byte order is flipped. 1000.0 in IEEE single floating point will appear as 00 00 7A 44, and 10000.0 will appear as 00 40 1C 46. I did check and the two addresses I gave are correct for the vanilla common.dll.

Post Mon Jul 10, 2006 4:41 pm

hmm if only someone could put all these code hacks from various authors in one utility, so we could pick and choose tweaks like openSP hack and variants, tradelane speed, speedometer, lvl up cash limits, per-engine cruise speeds, antif1, etc and not have to learn hex or go searching

Post Tue Jul 11, 2006 8:19 am

I will confirm it for you Polyfiller and I will place it in the next update so you don't have to go hunting for it.

Thanks again for providing this info, I have a list of locations already and may make a program to do exactly what you mention Cold Void. Now if I knew all of the locations for the speedometer settings....

Edited by - Lancer_Solurus on 7/11/2006 9:20:11 AM

Post Tue Jul 11, 2006 2:04 pm

Dev ..... you sir, are a steely eyed rocket man !!!! I found the right occurance of 00 00 7A 44 in my common.dll. I changed it to 00 80 3b 45 (3000 decimal) and ..... problem solved. I'd forgotten about swapping the bytes round (used to program in Fortran 77 .... oh about 20 or so yrs ago ... so I'd forgotten about this).

For others needing to try this, you are looking for the 00 00 7A 44 after the ascii text AVLaneAction (search from offest 18A00 onwards).

Cold void .... excellent idea .... I'd be real interested in seeing all these types of changes documented somwhere. I for one am real keen to get the variable cruise speed working without causing crashes (it causes most issues on non intel processor systems in my experience).

Anyhow.... I'm a happy bunny now. Thanks again DEV :-)

Post Sun Dec 17, 2006 2:11 am

Can someone help me find this in the dll?

I looked for 00 00 7A 44 and found: 00007A40 ... I had a long list of values on the left side, and then a TON of jumbled junk in the middle/right lol

I'm extremely new to hex editing so I'm trying, but I'm not finding it

Post Sun Dec 17, 2006 2:41 pm

dotCOM, done it already mate, ive FTPed the new files

Cheese On Toast:
Like the name
Beware the player

Return to Freelancer General Editing Forum