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

Making Path ini files?

The general place to discuss MOD''ing Freelancer!

Post Sun Sep 23, 2007 5:05 am




Done some ingame testing - it appears that when you set a waypoint, that's it. It uses whatever (i've only tested around NY and not in the Omega's etc so far) path the files state in the Legal/Legit.

If you alter the path slightly, so - for this example, i altered the path from Li01 (manhatten) to Ku02 (shikoku) to see what happens. Instead of using Iw06, it's now using Iw05.

No issue, plots course.
Jump to Li03 (Colorado) and it still shows the same plot.
Now cancel that, sit outside the gate to Iw05, and plot a course to shikoku - and it directs you along all trade lanes to the Kepler (Iw06) jumpgate, to then go through there.
( to clarify, path to Ku02 from Li01 as i changed it is:
Li01, Ku02, Li01, Li03, Iw05, Ku02

Path from Li03 to Ku02 is:
Li03, Ku02, Li03, Iw06, Ku02

So basically it doesn't enter a system, and get teh shortest path to replot your waypoints... so folks who've been having this issue with Accushots... check your system files. Have you got a jumpgate and jumphole, or two items, with the same nickname in that system?)


So, anyway - this is using the shortest legal path... i know, because illegal would have taken me through the Iw06.

You may also think that "shortest legal" means only jumpgates...
Nope - as I've just tried to plot a course to Hi01 (Omicron Alpha) from New York. It fails "No best path".

Of course, in legal paths there's no such path either... hence why it fails. Simple test then... copy the path from the illegal path (which exists, its this: Path = Li01, Hi01, Li01, Li03, Iw06, Ku02, Ku03, Bw08, Ew01, Hi01) and paste it into the legal.

Now plot said course... it does so, with some drawbacks...
1) It actually[i uses the Ku02 -> Ku01 jumpgate. So when you arrive in Ku01, there's no plot. Can pick it back up in Ku03 though, from the jumpgate (strangely enough).

So it only appears to use jumpgates, as in Alpha and other systems, the waypoints don't correspond to jumpholes and that's for sure!

Furthermore, from Ku03, it takes you to the other borderworld system, the one with the jumpgate. When you make this jump, all plot points disappear leaving only the end zone in omicron alpha...

So whilst jumpholes exist and it could have plotted the course through them, it does not do so... for some reason. Checked the solararch.ini file, don't see any "legal/illegal" thing going on there.

The reason you may get strange things going on is when no links appear... so plotting Li01, Rh01, Li01, Rh01 - then attemping to plot a path, will show no waypoints on the navmap (although it'll list four) and highlights the sun.

So that won't crash your game.

So where does the shortest illegal path come in, as well as the systems_shortest_path?

Trying to plot from Alpha to Beta, without one failed... but then so did when visiting one

Wait a minute... I'm sure we used to be able to plot [ithat
though!

Edited by - Chips on 9/23/2007 6:57:30 AM

Post Sun Sep 23, 2007 5:43 am

My tests showed the same: I agree with your findings. In-system pathfinding is clearly a completely separate operation, a dynamic calculation performed at runtime.

Is your algorithm, now that you've added locked gates, producing a correct legal_shortest_path.ini file for Vanilla?

There's still some confusion about illegal_shortest_path and system_shortest_path.

1) illegal_shortest_path.ini is just like legal_shortest_path.ini, except it uses all jump-holes and no jump-gates. (legal_shortest_path.ini uses all jump-gates and no jump_holes.) This is not used when the player is setting a path. It is *not* consulted when a legal path cannot be found. When a legal path cannot be found, you get the report "no best path" and the player's navmap simply fails to produce a waypoint-path.

(The reasoning is that the navmap is a proprietary system owned by Ageira, and Ageira wants you to use its Jump Gates. Like any good corporation it wants to convince us that alternatives to its product are prohibitively dangerous or simply do not exist.)

If your algorithm can produce a correct legal_shortest_path.ini, you can just flip jump-hole restriction to jump-gate restriction, and it should produce a correct illegal_shortest_path.ini

2) system_shortest_path.ini is a cross between legal_shortest_path.ini and illegal_shortest_path.ini -- so it can always find a path. This is used *only* when a mission-critical path is being automatically generated. (When the game is generating a set of "Mission Waypoints" rather than a set of "Player Waypoints" -- auto-game-generated paths rather than manual-player-generated paths.)

(The reasoning for this is that, for gameplay purposes, Ageira's general ban on jump-holes is too player-unfriendly. If it's time to begin Mission 5 and you're entirely lost somewhere in Omicron, it's only polite to show you the way back to Bretonia.)

Producing system_shortest_path.ini may be slightly trickier: you need to figure out how gate/hole preferences work. It may just drop the hole/gate restriction, and find the absolutely shortest path (complexity 1/10). It may, however, prefer gates over holes (which can mean at least three things: shortest path, preferring legal in the case of a tie (complexity 3/10); shortest path with hole-traversal minimized (complexity 6/10); shortest path with hole-traversal put off for as long as possible (which would assume the original search engine used a heuristic) (complexity 10/10).)

The simplest solution would be if it just ignores the hole/hate restriction, so definitely test that possibility first. I fear it will be more complicated, however. I've rated the possibilities to try in order of their relative programming complexity, so if the first option doesn't work, try the next.


Edited by - breslin on 9/23/2007 6:49:21 AM

Post Sun Sep 23, 2007 6:42 am

Meh, system_shortest_path is no issue at all, unless it's equal distance but going two seperate ways (kinda like going to omega 5 via either rheinland or bretonia i guess)... but mine would just be the least amount of jumps available - the ingame route selection for insystem would decide which (jumpgate or jumphole) to use.

Only issue is that if legal never uses jumpholes, then you can never plot a course to anywhere without jumpgates.

I don't honestly remember if in SP you could never plot a path around the omicrons, i thought you could

Also - wonder if online uses legaly only as well

Anyway:

http://freelancer.artificiallyintellige ... ctions.txt

That's the output with locked gates taken into consideration (for legal).

If anyone who has previously had troubles wouldn't mind sending a copy of the mod to try running this on, i'll send you back the generated path files (you only really need send the universe folder, and then initial world in the event that you have/have not got locked gates).

Edited by - Chips on 9/23/2007 8:39:41 AM

Post Sun Sep 23, 2007 9:17 am

Chips -- please adjust your algorithm so it prints in the correct format:

- put "Path = " before each path line
- capitalize the first letter of each system name.

It's easy enough for me to work around, but it would save me a couple steps each time I examined your output files, if you put it in the correct format. TIA.

Anyway, legal_shortest_path.ini matches your output file very well. Where it does not, this is only because in the case of a tie your algorithm has chosen a different option. After careful comparison of the arbitrary decisions in the Vanilla version, we could arrange your search so that it produces output which is identical to the Vanilla files, but already it is conceptually identical, which is quite enough I think.

The only incorrect thing I noticed: your "legal path" is finding the following connections legal:

bw02, bw02, bw02
ew01, ew01, ew01
ew02, ew02, ew02
ew03, ew03, ew03
ew04, ew04, ew04
ew05, ew05, ew05
ew06, ew06, ew06
fp7_system, fp7_system, fp7_system
hi01, hi01, hi01
hi02, hi02, hi02
ku06, ku06, ku06
ku07, ku07, ku07
li05, li05, li05
st01, st01, st01
st02, st02, st02
st02c, st02c, st02c
st03, st03, st03
st03b, st03b, st03b

In other words, systems which do not contain jump-gates have no valid "identity" path. This might be irrelevant, but it might cause a crash. So it's worth getting right, just in case.

Post Sun Sep 23, 2007 12:26 pm

Cheers

Completely neglected the Path = line - is, as you know, very simple to put in

As for no legal path on those, never even noticed or thought about it Nice catch

Post Sun Sep 23, 2007 12:34 pm

I hope to see the end result of this in a text or downloadable form.
Congratulations fellas.

Post Sun Sep 23, 2007 12:57 pm

Ok Chips, good. legal_ seems to pass. Could you post or email me a copy of illegal_ and system_?

To everybody else: please do help track down the path-crash bug by making your crash-producing files available (as Chips requested) or by producing a minimum-test-case which produces the crash. Please do this now while the work is actively being done, rather than next month or next year -- it will save a ton of time to get it right the first time.

(Not to put too fine a point on it, but StarTrader and Rankor: please make yourselves useful in this essential phase of development. If you're not completely sure what Chips is asking for, please say so and I'm sure he can be more precise.)

Post Mon Sep 24, 2007 5:39 am

Okay,
Please let me know what path.ini files you want.
I'm sure you are aware that they are extensive, and I'd rather not clog up this page with them.
However, if that is what you're looking for, just give the word and I'll post them.

Post Mon Sep 24, 2007 7:18 am

I'm actually after the whole of the systems folder if possible please

So that's the systems of the mod (which the application parses) - and two extra files, which are your universe.ini file, AND the initial_world.ini file.

Why?

Initial_world.ini contains locked gate references.. I need to know which ones (sadly I don't know how to do the hash yet, so please ensure the nickname of the locked gate is included as a comment - fl has this done in there for it's entries, just mirror what it's got).

universe.ini as that lists all your solar systems and the path to their files. Required to provide the path of parsing.

The whole systems folder as it contains said systems.

Just zip em all up together, and use yousendit.com - provide a link to the file (you can enter my email address as seen in my profile if you wish to email the link instead, or just email me the zip file).

Cheers!

(there is NO gui built yet, so i can't distribute it for folks at this time That'll be forthcoming once it's fully working )

Post Mon Sep 24, 2007 7:29 am

Many thanks for this Chips, I'll send the files as soon as I get home tomorrow, I'm only on dial-up at the moment.

Post Mon Sep 24, 2007 1:04 pm

I'll get it wrapped up for you.

Here is the address.

http://download.yousendit.com/938C8E0E01E1B1FE

In a nutshell, I removed all the locked gate references (in effect, unlocking all the gates and holes)
However, in some systems where this did not appear to work, I removed the holes and gates, then replaced them with functional items.
One such "gate" was the entrance to the Dyson Sphere. I removed the gate and placed an alien jump gate there instead as well I place a functional gate inside the Dyson Sphere (where originally there was none) (looks funky...but it got the results I wanted) My other option was to replace it with an Ageira Gate instead...and I'm still thinking that one over.

Edited by - Rankor on 9/24/2007 2:17:58 PM

Post Mon Sep 24, 2007 6:05 pm

Chips it's here:-
StarTrader's system files

I have also included my mod.dll file and the original path files (before adding new systems) and the new path files FLScan generated, without removing anything. Hope they are not in the way, but if they are I know you know what to do!

FLScan's paths caused crashes. The original ones with missing systems were ok, I made those by hand for the previous version of this mod. Once your path gen is working it would be good to compare the new paths with the original and with FLScan's ones.

Very many thanks for your considerable help with this bud.

All the best.

Roleplay: - the art of self-deceipt!

Edited by - StarTrader on 9/24/2007 7:07:03 PM

Post Tue Oct 02, 2007 12:21 pm

Hey Chips, my pal, where are you?

I've been hanging around under this lamp-post for the past week for you to come back, smoked 80 cigars, eaten 75 Big Macs, drunk 92 cokes, wearing the same clothes, nowhere to go to the loo, so my trousers are a bit brown at the back and yellow at the front, and kinda damp...

Need yer 'elp to get me path files sorted please

Question: Does anyone know what happens with a path request when there are no jumpgates connecting a system, only jump holes? Does it reply with "No best path" or does it crash?

Roleplay: - the art of self-deceipt!

Edited by - StarTrader on 10/2/2007 1:23:47 PM

Post Tue Oct 02, 2007 3:21 pm

normally...it'll display "no best path" ...

"normally" .

Post Tue Oct 02, 2007 6:03 pm


Does anyone know what happens with a path request when there are no jumpgates connecting a system, only jump holes?


My start system with only holes will gladly give purple diamonds to follow...all in the same system, heh. It leads me around 4 waypoints from nowhere to nowhere.

Return to Freelancer General Editing Forum