Dev's Limit Breaking 101 Techniques
-
IrateRedKite Administrators Historic Supporter Wiki Contributorreplied to Venemon on global:last_edited_by, IrateRedKite
@Venemon Great work man! Really cool to see you putting more of these out. I’m going to hold off posting these on the wiki for a little bit as we’re currently redoing the formatting of it a bit to allow better categorization and filtering.
For those interested, we’ll be generating the page from a json payload, much like the crash offsets page. Here’s a few samples of what’s included. I want to try and link out to the post the offset was noted in for context, as well as including a date where we can find it:
A simple byte swap:
{ "moduleName": [ "freelancer.exe" ], "original": [ "E8 04 95 FD FF" ], "replacement": [ "90 90 90 90 90" ], "offset": [ "0x18B147" ], "author": "BC46", "description": "Disables the UI character typing text sounds completely.", "dateAdded": 0, "categories": [ "audio" ] },
A multipart offset:
{ "moduleName": [ "common.dll", "common.dll" ], "original": [ "DD 05 D0 E2 39 06 D9 FF", "C7 44 24 24 00 00 00 00 C7 44 24 2C 00 00 00 00 C7 44 24 30 00 00 80 3F C7 44 24 34 00 00 00 00 C7 44 24 3C 00 00 00 00 DD 05 D0 E2 39 06 D9 FE D9 C1 D9 5C 24 20 D9 54 24 28" ], "replacement": [ "D9 E8 D9 E0 D9 EE D9 C1", "D9 54 24 20 D9 5C 24 30 D9 54 24 24 D9 54 24 28 D9 54 24 2C D9 54 24 34 D9 54 24 3C D9 44 24 54 D9 E0 D9 5C 24 54 D9 44 24 60 D9 E0 D9 5C 24 60 D9 44 24 48 D9 E0 D9 5C 24 48" ], "offset": [ "0x06191E", "0x061941" ], "author": "Gold_Sear", "description": "Swap vertical component of trade lane travel in previous direction. This fixes issues with vertically oriented trade lanes.", "dateAdded": 1254560320, "categories": [ "tradelanes" ], "url": "https://the-starport.com/forums/topic/396/dev-s-limit-breaking-101-techniques/986?_=1706522670775" },
A value adjustment
{ "moduleName": [ "common.dll" ], "original": [ "1.2f" ], "offset": [ "0x07637F" ], "author": "Cannon", "description": "Formation catch up cruise speed multiplier. Outside of trail range common.dll 0x075B36; values above variable located at 0x1407A0 will be ignored.", "dateAdded": 0, "categories": [ "cruise" ] },
Converting these across by hand in bulk is a bit soul-destroying, so if someone wants to pitch in and take a page to convert to json, it’d be much appreciated! otherwise you can expect an update to the page structure at some point in the next few months.
-
-
Market informations of stations
-While docked- Turn off Stations commodity sell/buy information from Information Box Freelancer.exe+75112 01 -> 00 Turn off Stations equipment sell information from Information Box Freelancer.exe+75121 01 -> 00 Turn off Stations ship sell information from Information Box Freelancer.exe+75130 01 -> 00
-while undocked- Turn off Stations market information from Information Box Freelancer.exe+75C68 01 -> 00
-Nav map- Turn off Stations commodity sell/buy information from Nav Map Freelancer.exe+97B7F 01 -> 00 Turn off Stations equipment sell information from Nav Map Freelancer.exe+97B8E 01 -> 00 Turn off Stations ship sell information from Nav Map Freelancer.exe+97B9D 01 -> 00
-
-
@Venemon : Wow, a nice bunch of offsets you got there! While the reformatting of the list is underway, I’ll keep your offsets in my version of the list at KraftFragment. Your post #1043 actually solves #4 of my to do list! Thanks a lot for that!
From your post #1050: this offset was already found by me in 2015. Be careful to check whether your found offsets are already in the list!@IrateRedKite said in Dev's Limit Breaking 101 Techniques:
pitch in and take a page to convert to json
I could help with that, especially since I know the history of many of these offsets in the list.
-
-
IrateRedKite Administrators Historic Supporter Wiki Contributorreplied to Gold_Sear on global:last_edited_by,
@Gold_Sear said in Dev's Limit Breaking 101 Techniques:
I could help with that, especially since I know the history of many of these offsets in the list.
That would be excellent! I’d say just pick a page or pages, and I’ll skip over them. I’m planning to put a bit of work into ‘Damage, Repair and Collision Offsets’ and ‘Docking and Jumping Offsets’ tomorrow, hopefully finishing them.
I also accidentally uploaded the partly-done json to the repository here, and will likely keep updating it, so do feel free to put a PR in with the section you pick in the commit message, and I’ll handle any merges.
-
Well, for starters, give me the ‘Visibility’ section. Also, “tradelane travel speed” is by Lord of Lunacy, not adoxa. Should I find more mistakes, can I take the liberty to correct them?
EDIT: @Venemon : unfortunately, your “Contact list switch before launch” doesn’t work for me; it switches between ‘important’ and nothing if I alter the ‘04’ byte from Part 1 (even after testing different values).
EDIT2: Ah, I was logged out of github, that’s why I couldn’t edit.
-
IrateRedKite Administrators Historic Supporter Wiki Contributorreplied to Gold_Sear on global:last_edited_by,
@Gold_Sear said in Dev's Limit Breaking 101 Techniques:
Well, for starters, give me the ‘Visibility’ section. Also, “tradelane travel speed” is by Lord of Lunacy, not adoxa. Should I find more mistakes, can I take the liberty to correct them?
Please feel free to correct mistakes! A good chunk of the move over to json thus far has been done in bulk on my night shift when it’s quiet, so I’ve almost certainly missed a few things/copy-pasted the wrong field here and there
-
@Venemon Oddly, yes. I don’t know what happened before, as I double-checked. Well, all good now.
EDIT: is there a reason you include the unchanged bytes in your offsets? I omit them in KraftFragment.
-
While the list is under construction, my text-formatted version can be found at KraftFragment, which gets updated regularly. I plan to eventually turn all the offsets to adoxa’s Bwpatch’s format, but that could take a while…
@IrateRedKite: do you plan to actually make the json payload the ‘official’ version of the list and hence discard the current md-based version?
-
IrateRedKite Administrators Historic Supporter Wiki Contributorreplied to Gold_Sear on global:last_edited_by,
@Gold_Sear said in Dev's Limit Breaking 101 Techniques:
@IrateRedKite: do you plan to actually make the json payload the ‘official’ version of the list and hence discard the current md-based version?
This is the the plan! It will however, generate a human-readable .mdx page on the wiki that can be filtered by field, etc once it’s all done. Crash offsets works similarly right now, just without the filters.
-
@IrateRedKite : thanks for replying this fast! I plan to work on the json payload for a few hours a week; some offsets are harder because their origin URL can be tricky to track down.
-
An update! I’ve done the equipment section today. Had a ton of luck using this tool to convert the markdown pages into a json object. It’s still a ton of manual work, but this takes a bit of the tedium out of it.
@Gold_Sear Thanks for the PR for the visibility section, hugely appreciate it!
-
I updated KraftFragment, it now contains @Venemon s latest offsets.
EDIT: did some work on the json payload.
-
@IrateRedKite : I will finish the Visibility section on March 6, after being busy for over two weeks. Apologies for delay.
-
IrateRedKite Administrators Historic Supporter Wiki Contributorreplied to Gold_Sear on global:last_edited_by,
@Gold_Sear Hi there, no worries at all! I’ve been slow on updating this as well, have a ton going on right now and it’s been hard to find the time for it!