Skip to content

Commit 57e7136

Browse files
authored
Fix multiple DVD addresses (#121)
1 parent e146a37 commit 57e7136

7 files changed

Lines changed: 183 additions & 183 deletions

File tree

‎Spore ModAPI/SourceCode/DLL/AddressesApp.cpp‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -416,8 +416,8 @@ namespace App
416416

417417
namespace Addresses(PngEncoder)
418418
{
419-
DefineAddress(ReadImageData, SelectAddress(0x682470, 0x68eb40));
420-
DefineAddress(WriteImageToStream, SelectAddress(0x68E660, 0x68e190));
419+
DefineAddress(ReadImageData, SelectAddress(0x68F010, 0x68EB40));
420+
DefineAddress(WriteImageToStream, SelectAddress(0x68E660, 0x68E190));
421421
DefineAddressAlias(EncodePNG, WriteImageToStream);
422422
}
423423

‎Spore ModAPI/SourceCode/DLL/AddressesEditors.cpp‎

Lines changed: 19 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -83,21 +83,21 @@ namespace Editors
8383
DefineAddress(HandleMessage, SelectAddress(0x591C80, 0x591FA0));
8484

8585

86-
DefineAddress(GetEditorForAssetType, SelectAddress(0x433010, 0x4333e0));
87-
DefineAddress(GetNameForAssetType, SelectAddress(0x4badc0, 0x4bba50));
88-
DefineAddress(GetTypeIDForAssetType, SelectAddress(0x4bb110, 0x4bbda0));
86+
DefineAddress(GetEditorForAssetType, SelectAddress(0x433010, 0x4333E0));
87+
DefineAddress(GetNameForAssetType, SelectAddress(0x4BADC0, 0x4BBA50));
88+
DefineAddress(GetTypeIDForAssetType, SelectAddress(0x4BB110, 0x4BBDA0));
8989

90-
DefineAddress(ComputeCreatureVerbIcons, SelectAddress(0x4e2a50, 0x4e8860));
90+
DefineAddress(ComputeCreatureVerbIcons, SelectAddress(0x4E8270, 0x4E8860));
9191

92-
DefineAddress(LoadCreatureData, SelectAddress(0x4b5760, 0x4bb500));
92+
DefineAddress(LoadCreatureData, SelectAddress(0x4BA870, 0x4BB500));
9393
}
9494

9595
namespace Addresses(EditorModel)
9696
{
97-
DefineAddress(GetSkinEffect, SelectAddress(0x4a8790, 0x4ae180));
98-
DefineAddress(SetSkinEffect, SelectAddress(0x4a8820, 0x4ae210));
99-
DefineAddress(GetSkinEffectSeed, SelectAddress(0x4a87b0, 0x4ae1a0));
100-
DefineAddress(SetSkinEffectSeed, SelectAddress(0x4a8840, 0x4ae230));
97+
DefineAddress(GetSkinEffect, SelectAddress(0x4ADB20, 0x4AE180));
98+
DefineAddress(SetSkinEffect, SelectAddress(0x4ADBB0, 0x4AE210));
99+
DefineAddress(GetSkinEffectSeed, SelectAddress(0x4ADB40, 0x4AE1A0));
100+
DefineAddress(SetSkinEffectSeed, SelectAddress(0x4ADBD0, 0x4AE230));
101101
}
102102

103103
namespace Addresses(EditorCamera)
@@ -266,16 +266,16 @@ namespace Editors
266266

267267
namespace Addresses(VerbIconData)
268268
{
269-
DefineAddress(AddRef, SelectAddress(0x6520a0, 0xc6ab00));
270-
DefineAddress(Release, SelectAddress(0x5cd9f0, 0x7b87b0));
271-
DefineAddress(Dispose, SelectAddress(0x597710, 0x59eff0));
272-
DefineAddress(Cast, SelectAddress(0x5db940, 0x5e4d70));
273-
DefineAddress(Init, SelectAddress(0x5dc070, 0x5e54a0));
274-
DefineAddress(Shutdown, SelectAddress(0x5dc4f0, 0x5e5920));
275-
DefineAddress(SetArrayIndex, SelectAddress(0x5db960, 0x5e4d90));
276-
DefineAddress(SetHotKey, SelectAddress(0x5dc800, 0x5e5c30));
277-
DefineAddress(GetIconName, SelectAddress(0x5dc880, 0x5e5cb0));
278-
DefineAddress(GetIconDescription, SelectAddress(0x5dc940, 0x5e5d70));
269+
DefineAddress(AddRef, SelectAddress(0xAE9150, 0xC6AB00));
270+
DefineAddress(Release, SelectAddress(0x5Bf860, 0x7B87B0));
271+
DefineAddress(Dispose, SelectAddress(0x59ED50, 0x59EFF0));
272+
DefineAddress(Cast, SelectAddress(0x5E4C40, 0x5E4D70));
273+
DefineAddress(Init, SelectAddress(0x5E5370, 0x5E54A0));
274+
DefineAddress(Shutdown, SelectAddress(0x5E57F0, 0x5E5920));
275+
DefineAddress(SetArrayIndex, SelectAddress(0x5E4C60, 0x5E4D90));
276+
DefineAddress(SetHotKey, SelectAddress(0x5E5B00, 0x5E5C30));
277+
DefineAddress(GetIconName, SelectAddress(0x5E5B80, 0x5E5CB0));
278+
DefineAddress(GetIconDescription, SelectAddress(0x5E5C40, 0x5E5D70));
279279
}
280280
}
281281
#endif

‎Spore ModAPI/SourceCode/DLL/AddressesIO.cpp‎

Lines changed: 60 additions & 60 deletions
Original file line numberDiff line numberDiff line change
@@ -225,81 +225,81 @@ namespace IO
225225

226226
namespace Addresses(StreamCompressionZLib)
227227
{
228-
DefineAddress(AddRef, SelectAddress(0x614940, 0x7685A0));
229-
DefineAddress(Release, SelectAddress(0x707F90, 0x67D9F0));
230-
DefineAddress(GetType, SelectAddress(0x672FC0, 0x67DAB0));
231-
DefineAddress(GetAccessFlags, SelectAddress(0x672850, 0x67D2C0));
232-
DefineAddress(GetState, SelectAddress(0x672860, 0x67D2D0));
233-
DefineAddress(Close, SelectAddress(0x672C70, 0x67D6E0));
234-
DefineAddress(GetSize, SelectAddress(0x672A70, 0x67D3A0));
235-
DefineAddress(SetSize, SelectAddress(0x9F8EB0, 0xDDE930));
236-
DefineAddress(GetPosition, SelectAddress(0x672930, 0x67D3B0));
237-
DefineAddress(SetPosition, SelectAddress(0x7A4230, 0x950E00));
238-
DefineAddress(GetAvailable, SelectAddress(0x60C030, 0xE21A90));
239-
DefineAddress(Read, SelectAddress(0xF95C60, 0x1097390));
240-
DefineAddress(Flush, SelectAddress(0xC65B10, 0xB1FB30));
241-
DefineAddress(Write, SelectAddress(0x672BD0, 0x67D640));
242-
DefineAddress(SetCompressedFormat, SelectAddress(0x6727D0, 0x67D240));
243-
DefineAddress(SetBufferSize, SelectAddress(0x6727F0, 0x67D260));
244-
DefineAddress(SetCompressionHint, SelectAddress(0x672830, 0x67D2A0));
245-
DefineAddress(Open, SelectAddress(0x672AA0, 0x67D510));
228+
DefineAddress(AddRef, SelectAddress(0x947080, 0x7685A0));
229+
DefineAddress(Release, SelectAddress(0x57CB00, 0x67D9F0));
230+
DefineAddress(GetType, SelectAddress(0x67DC10, 0x67DAB0));
231+
DefineAddress(GetAccessFlags, SelectAddress(0x67D450, 0x67D2C0));
232+
DefineAddress(GetState, SelectAddress(0x67D460, 0x67D2D0));
233+
DefineAddress(Close, SelectAddress(0x67D870, 0x67D6E0));
234+
DefineAddress(GetSize, SelectAddress(0x67D670, 0x67D3A0));
235+
DefineAddress(SetSize, SelectAddress(0x101B0F0, 0xDDE930));
236+
DefineAddress(GetPosition, SelectAddress(0x67d530, 0x67D3B0));
237+
DefineAddress(SetPosition, SelectAddress(0x951320, 0x950E00));
238+
DefineAddress(GetAvailable, SelectAddress(0x671860, 0xE21A90));
239+
DefineAddress(Read, SelectAddress(0xA205C0, 0x1097390));
240+
DefineAddress(Flush, SelectAddress(0xA37650, 0xB1FB30));
241+
DefineAddress(Write, SelectAddress(0x67D7D0, 0x67D640));
242+
DefineAddress(SetCompressedFormat, SelectAddress(0x67D3D0, 0x67D240));
243+
DefineAddress(SetBufferSize, SelectAddress(0x67D3f0, 0x67D260));
244+
DefineAddress(SetCompressionHint, SelectAddress(0x67D430, 0x67D2A0));
245+
DefineAddress(Open, SelectAddress(0x67D6A0, 0x67D510));
246246
// destructor; private for ModAPI
247247
DefineAddress(_dtor, SelectAddress(0x67DC30, 0x67DAD0));
248248
DefineAddressAlias(Dispose, _dtor);
249249
}
250250

251251
namespace Addresses(StreamDecompressionZLib)
252252
{
253-
DefineAddress(AddRef, SelectAddress(0x614940, 0x7685A0));
254-
DefineAddress(Release, SelectAddress(0x707F90, 0x67D9F0));
255-
DefineAddress(GetType, SelectAddress(0x672DA0, 0x67D830));
256-
DefineAddress(GetAccessFlags, SelectAddress(0x6729A0, 0x67D420));
257-
DefineAddress(GetState, SelectAddress(0x6729B0, 0x67D430));
258-
DefineAddress(Close, SelectAddress(0x672F40, 0x67D9D0));
259-
DefineAddress(GetSize, SelectAddress(0x672A70, 0x67D3A0));
260-
DefineAddress(SetSize, SelectAddress(0x9F8EB0, 0xDDE930));
261-
DefineAddress(GetPosition, SelectAddress(0x672A80, 0x67D4F0));
262-
DefineAddress(SetPosition, SelectAddress(0x7A4230, 0x950E00));
263-
DefineAddress(GetAvailable, SelectAddress(0x60C030, 0xE21A90));
264-
DefineAddress(Read, SelectAddress(0x672E90, 0x67D920));
265-
DefineAddress(Flush, SelectAddress(0xAF5C80, 0xB1E410));
266-
DefineAddress(Write, SelectAddress(0x7A4230, 0x950E00));
267-
DefineAddress(SetCompressedFormat, SelectAddress(0x672950, 0x67D3D0));
268-
DefineAddress(SetBufferSize, SelectAddress(0x672960, 0x67D3E0));
269-
DefineAddress(Open, SelectAddress(0x672DC0, 0x67D850));
253+
DefineAddress(AddRef, SelectAddress(0x947080, 0x7685A0));
254+
DefineAddress(Release, SelectAddress(0x57CB00, 0x67D9F0));
255+
DefineAddress(GetType, SelectAddress(0x67D9C0, 0x67D830));
256+
DefineAddress(GetAccessFlags, SelectAddress(0x67D5A0, 0x67D420));
257+
DefineAddress(GetState, SelectAddress(0x67D5B0, 0x67D430));
258+
DefineAddress(Close, SelectAddress(0x67DB60, 0x67D9D0));
259+
DefineAddress(GetSize, SelectAddress(0x67D670, 0x67D3A0));
260+
DefineAddress(SetSize, SelectAddress(0x101B0F0, 0xDDE930));
261+
DefineAddress(GetPosition, SelectAddress(0x67D680, 0x67D4F0));
262+
DefineAddress(SetPosition, SelectAddress(0x951320, 0x950E00));
263+
DefineAddress(GetAvailable, SelectAddress(0x671860, 0xE21A90));
264+
DefineAddress(Read, SelectAddress(0x67DAB0, 0x67D920));
265+
DefineAddress(Flush, SelectAddress(0x66AD60, 0xB1E410));
266+
DefineAddress(Write, SelectAddress(0x951320, 0x950E00));
267+
DefineAddress(SetCompressedFormat, SelectAddress(0x67D550, 0x67D3D0));
268+
DefineAddress(SetBufferSize, SelectAddress(0x67D560, 0x67D3E0));
269+
DefineAddress(Open, SelectAddress(0x67D9E0, 0x67D850));
270270
// destructor; private for ModAPI
271271
DefineAddress(_dtor, SelectAddress(0x67DCE0, 0x67DB80));
272272
DefineAddressAlias(Dispose, _dtor);
273273
}
274274

275275
namespace Addresses(IniFile)
276276
{
277-
DefineAddress(GetOption, SelectAddress(0x90c410, 0x932fc0));
278-
DefineAddress(SetOption, SelectAddress(0x90c430, 0x932fe0));
279-
DefineAddress(GetPath, SelectAddress(0x959f70, 0x6e6560));
280-
DefineAddress(SetPath, SelectAddress(0x90c460, 0x933010));
281-
DefineAddress(GetStream, SelectAddress(0x90c4d0, 0x933080));
282-
DefineAddress(SetStream, SelectAddress(0x90c4e0, 0x933090));
283-
DefineAddress(Close, SelectAddress(0x90e5a0, 0x934ff0));
284-
DefineAddress(ReadEntry, SelectAddress(0x90cc10, 0x933820));
285-
DefineAddress(ReadEntryToBuffer, SelectAddress(0x90d410, 0x933eb0));
286-
DefineAddress(ReadEntryFormatted, SelectAddress(0x90cca0, 0x9338b0));
287-
DefineAddress(WriteEntry, SelectAddress(0x90d9d0, 0x934420));
288-
DefineAddress(WriteEntryFormatted, SelectAddress(0x90c810, 0x9333c0));
289-
DefineAddress(ReadBinary, SelectAddress(0x90c8f0, 0x9334a0));
290-
DefineAddress(WriteBinary, SelectAddress(0x90ca60, 0x933610));
291-
DefineAddress(EnumSections, SelectAddress(0x90e220, 0x934c70));
292-
DefineAddress(EnumEntries, SelectAddress(0x90ea80, 0x9354d0));
293-
DefineAddress(SectionExists, SelectAddress(0x90d6d0, 0x934170));
294-
DefineAddress(Open, SelectAddress(0x90c540, 0x9330f0));
295-
DefineAddress(GetEncoding, SelectAddress(0x90c670, 0x933220));
296-
DefineAddress(LoadSectionNames, SelectAddress(0x90e610, 0x935060));
297-
DefineAddress(GetFileLine8To8, SelectAddress(0x90cfb0, 0x933b40));
298-
DefineAddress(GetFileLine16To16, SelectAddress(0x90d0c0, 0x933c50));
299-
DefineAddress(GetFileLine, SelectAddress(0x90cdc0, 0x933950));
300-
DefineAddress(ConvertAndWriteStream, SelectAddress(0x90cb20, 0x9336d0));
277+
DefineAddress(GetOption, SelectAddress(0x933530, 0x932FC0));
278+
DefineAddress(SetOption, SelectAddress(0x933550, 0x932FE0));
279+
DefineAddress(GetPath, SelectAddress(0x766FC0, 0x6E6560));
280+
DefineAddress(SetPath, SelectAddress(0x933580, 0x933010));
281+
DefineAddress(GetStream, SelectAddress(0x9335F0, 0x933080));
282+
DefineAddress(SetStream, SelectAddress(0x933600, 0x933090));
283+
DefineAddress(Close, SelectAddress(0x935590, 0x934FF0));
284+
DefineAddress(ReadEntry, SelectAddress(0x933D90, 0x933820));
285+
DefineAddress(ReadEntryToBuffer, SelectAddress(0x934400, 0x933EB0));
286+
DefineAddress(ReadEntryFormatted, SelectAddress(0x933E20, 0x9338B0));
287+
DefineAddress(WriteEntry, SelectAddress(0x9349C0, 0x934420));
288+
DefineAddress(WriteEntryFormatted, SelectAddress(0x933930, 0x9333C0));
289+
DefineAddress(ReadBinary, SelectAddress(0x933A10, 0x9334A0));
290+
DefineAddress(WriteBinary, SelectAddress(0x933B80, 0x933610));
291+
DefineAddress(EnumSections, SelectAddress(0x935210, 0x934C70));
292+
DefineAddress(EnumEntries, SelectAddress(0x935A70, 0x9354D0));
293+
DefineAddress(SectionExists, SelectAddress(0x9346C0, 0x934170));
294+
DefineAddress(Open, SelectAddress(0x933660, 0x9330F0));
295+
DefineAddress(GetEncoding, SelectAddress(0x933790, 0x933220));
296+
DefineAddress(LoadSectionNames, SelectAddress(0x935600, 0x935060));
297+
DefineAddress(GetFileLine8To8, SelectAddress(0x934090, 0x933B40));
298+
DefineAddress(GetFileLine16To16, SelectAddress(0x9341A0, 0x933C50));
299+
DefineAddress(GetFileLine, SelectAddress(0x933EA0, 0x933950));
300+
DefineAddress(ConvertAndWriteStream, SelectAddress(0x933C40, 0x9336D0));
301301
// stub
302-
DefineAddress(_vftable, SelectAddress(0x1407fc8, 0x143e980));
302+
DefineAddress(_vftable, SelectAddress(0x1442b50, 0x143E980));
303303
}
304304
}
305305
#endif

‎Spore ModAPI/SourceCode/DLL/AddressesMovie.cpp‎

Lines changed: 20 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -7,32 +7,32 @@ namespace Movie
77
{
88
namespace Addresses(cMovieLetterbox)
99
{
10-
DefineAddress(Initialize, SelectAddress(0xFAB930, 0xFD7730));
10+
DefineAddress(Initialize, SelectAddress(0xFD7E80, 0xFD7730));
1111
}
1212

1313
namespace Addresses(MovieSystem)
1414
{
15-
DefineAddress(Get, SelectAddress(0x672070, 0x67CAD0));
15+
DefineAddress(Get, SelectAddress(0x67CC60, 0x67CAD0));
1616

17-
DefineAddress(DrawLayer, SelectAddress(0xFAB430, 0xFD7240));
17+
DefineAddress(DrawLayer, SelectAddress(0xFD7970, 0xFD7240));
1818

19-
DefineAddress(Init, SelectAddress(0xFAD2D0, 0xFD90D0));
20-
DefineAddress(Shutdown, SelectAddress(0xFAB9E0, 0xFD77E0));
21-
DefineAddress(Update, SelectAddress(0xFABF60, 0xFD7D60));
22-
DefineAddress(PlayMovie, SelectAddress(0xFAC9A0, 0xFD87A0));
23-
DefineAddress(MovieIsPlaying, SelectAddress(0xFAB740, 0xFD7550));
24-
DefineAddress(PauseMovie, SelectAddress(0xFAB750, 0xFD7560));
25-
DefineAddress(ContinueMovie, SelectAddress(0xFAB760, 0xFD7570));
26-
DefineAddress(StopMovie, SelectAddress(0xFABBC0, 0xFD79C0));
27-
DefineAddress(CheckEscape, SelectAddress(0xFAB770, 0xFD7580));
28-
DefineAddress(func28h, SelectAddress(0xFAB7E0, 0xFD75F0));
29-
DefineAddress(RecordMovie, SelectAddress(0xFAC370, 0xFD8170));
30-
DefineAddress(MovieIsRecording, SelectAddress(0xFAB830, 0xA1AEE0));
31-
DefineAddress(GetRecordingMovieName, SelectAddress(0xFABC70, 0xFD7A70));
32-
DefineAddress(StopRecordingMovie, SelectAddress(0xFAC160, 0xFD7F60));
33-
DefineAddress(func3Ch, SelectAddress(0x5D3460, 0x5DC490));
34-
DefineAddress(func40h, SelectAddress(0xFAB820, 0xFD7630));
35-
DefineAddress(func44h, SelectAddress(0xFAC8D0, 0xFD86D0));
19+
DefineAddress(Init, SelectAddress(0xFD97F0, 0xFD90D0));
20+
DefineAddress(Shutdown, SelectAddress(0xFD7F30, 0xFD77E0));
21+
DefineAddress(Update, SelectAddress(0xFD84B0, 0xFD7D60));
22+
DefineAddress(PlayMovie, SelectAddress(0xFD8EF0, 0xFD87A0));
23+
DefineAddress(MovieIsPlaying, SelectAddress(0xFD7C80, 0xFD7550));
24+
DefineAddress(PauseMovie, SelectAddress(0xFD7C90, 0xFD7560));
25+
DefineAddress(ContinueMovie, SelectAddress(0xFD7CA0, 0xFD7570));
26+
DefineAddress(StopMovie, SelectAddress(0xFD8110, 0xFD79C0));
27+
DefineAddress(CheckEscape, SelectAddress(0xFD7CB0, 0xFD7580));
28+
DefineAddress(func28h, SelectAddress(0xFD7D20, 0xFD75F0));
29+
DefineAddress(RecordMovie, SelectAddress(0xFD88C0, 0xFD8170));
30+
DefineAddress(MovieIsRecording, SelectAddress(0xFD7D80, 0xA1AEE0));
31+
DefineAddress(GetRecordingMovieName, SelectAddress(0xFD81C0, 0xFD7A70));
32+
DefineAddress(StopRecordingMovie, SelectAddress(0xFD86B0, 0xFD7F60));
33+
DefineAddress(func3Ch, SelectAddress(0xFD7D60, 0x5DC490));
34+
DefineAddress(func40h, SelectAddress(0xFD7D70, 0xFD7630));
35+
DefineAddress(func44h, SelectAddress(0xFD8E20, 0xFD86D0));
3636
}
3737
}
3838
#endif

0 commit comments

Comments
 (0)