Where'd my Neuralnet go?
-
Rewriting this post to match current situation…
cloned prop_neuralnet_d to prop_neuralnet_sp w/ a new texture.
Added entries to petaldb.ini, characters\bodyparts.ini, characters\costumes.ini and also characters\newcharacter.ini.
petaldb.ini:
prop = neuralnet_sp, Characters\props\prop_neuralnet_sp.3db
bodyparts.ini:
[Accessory] nickname = prop_neuralnet_sp mesh = characters\props\prop_neuralnet_sp.3db hardpoint = hp_eyewear body_hardpoint = hp_eyewear
costumes.ini:
[Costume] nickname = trent head = sp_trent_head body = pl_trent_body righthand = benchmark_male_hand_right lefthand = benchmark_male_hand_left accessory = prop_neuralnet_sp
newcharacter.ini:
[Pilot] nickname = trent body = trent comm = trent accessory = prop_neuralnet_sp voice = trent_voice
After that, I got the prop to show up in game, but only after I started a new game. In addition, any time I would load a saved game, the prop would be gone. So I started looking further, eventually using Flcodec to decompile exe\newplayer.fl, where I added the accessory = entry and then recompiled. So my newplayer.fl now looks like:
voice = trent_voice costume = trent accessory = prop_neuralnet_sp com_costume = trent
Still same issue… So trying to find out more, I used flcodec to decompile a saved game’s .fl file. I have since used a hexeditor to change server.dll to save as decompiled text. The restart.fl file looks good, but the accessory is still not being saved to any save files…
Restart.fl:
voice = trent_voice costume = trent accessory = prop_neuralnet_sp com_costume = trent
Savefile.fl (note there’s no accessory entry):
voice = trent_voice com_body = 3144214861 com_head = 2992488072 com_lefthand = 2479975689 com_righthand = 2264565644 body = 3144214861 head = 2992488072 lefthand = 2479975689 righthand = 2264565644
So that’s where I’m at… trying to find where the save function is referencing the saved data. If I can find that, I might be able to add the accessory so it saves every time. Until then, I’m stuck with manually editing the save file before I load it… which kinda stinks.
I’ve also tried adding Player entries to exe\freelancer.ini as well as data\missions\m01a.ini, with no resolution.
Any ideas or insight would be greatly appreciated… willing to hear ideas or thoughts for that matter as it may spark an idea for trying something different… I just know I’m up against a wall with this.
-
A PM prompted me to look into this, so here’s the fix (using BwPatch).
# Patch Freelancer (v1.1) to save costume accessories. # Jason Hood, 2 May, 2017\. Updated 31 December, 2018 (fix load). File: Server.dll 066930: 53 55 56 57 83 EC 10 89 E5 8B 74 [ 8B 44 24 0C 81 EC 00 01 00 00 53 ] E4 2C FF 15 B8 47 D6 06 89 C3 31 [ 8B 1D B8 47 D6 06 55 8B 2D 7C 48 ] FF 8B 04 BE 85 C0 74 59 50 89 D9 [ D6 06 56 8B 70 04 85 F6 57 74 49 ] 83 FF 04 A1 7C 48 D6 06 7C 07 05 [ FF D3 56 33 FF 57 8B C8 FF D5 85 ] E0 00 00 00 EB 0A 57 83 FF 01 77 [ C0 74 0A 8B C8 FF 15 78 48 D6 06 ] 04 80 34 E4 01 FF D0 85 C0 74 35 [ 8B F8 85 FF 74 2D 8B 8C 24 18 01 ] 89 C1 FF 15 78 48 D6 06 85 C0 74 [ 00 00 51 8D 54 24 14 68 F0 AE D6 ] 29 50 FF 74 E4 2C 89 F8 83 FF 04 [ 06 52 FF 15 74 4C D6 06 8B 8C 24 ] 7E 02 B0 04 FF 34 85 BC 69 D4 06 [ 20 01 00 00 8B 01 83 C4 0C 57 8D ] 55 FF 15 74 4C D6 06 8B 4C E4 34 [ 54 24 14 52 FF 50 14 8B 84 24 1C ] 8B 01 83 C4 0C 55 FF 50 14 47 8B [ 01 00 00 8B 38 85 FF 74 4A FF D3 ] 46 30 83 C0 04 39 C7 75 95 83 C4 [ 57 6A 01 8B C8 33 F6 FF D5 85 C0 ] 10 5F 5E 5D 5B C3 00 00 E8 AE D6 [ 74 0A 8B C8 FF 15 78 48 D6 06 8B ] 06 F0 AE D6 06 DC AE D6 06 D0 AE [ F0 85 F6 74 2D 8B 8C 24 18 01 00 ] D6 06 D0 69 D4 06 25 73 61 63 63 [ 00 51 8D 54 24 14 68 E8 AE D6 06 ] 65 73 73 6F 72 79 00 [ 52 FF 15 74 4C D6 06 ] 0672C1: 8D 8D E0 02 00 00 89 79 7C 89 79 [ 89 BD B0 02 00 00 89 BD AC 02 00 ] D0 89 79 CC 89 79 C8 [ 00 89 BD A8 02 00 00 ] 0B2174: 3F 39 55 39 76 39 8F 39 96 39 BC [ 3D 39 44 39 63 39 7A 39 81 39 BA ] 39 C0 39 C4 39 C8 39 CC 39 [ 39 D1 39 D8 39 12 3A 29 3A ]
-
I tested it more mindfully. Crash is not stable. It’s happened more when you have 5 accessories and less when you have less accessories.
I have additional crash reason: I working on customization. I created different file bodyparts.ini (mod using two files). But that’s not matter. Crashes happening with single file too.
Easy way to fix - use not more 3 accessories.
Because five accessories… it’s too many
-
Turns out the accessory count is not reset when a player is loaded, so they accumulate. There’s only room for eight, so the ninth overwrites the count, causing the tenth to use invalid memory. I’ve updated the patch (you only need the two lines at [c]0672C1[/c] if applying manually).
-
I updated 2 hex codes by last two addresses from patch.
Still crashes, but now with code```
00000000Adoxa, thanks for you help. But we need to stop. Don't worry, 5 accessories was the my stupid idea. I already want to use only 2-3 accessories and that's not a problem for me.