Fallout 1 DEMO - hacking and restoration

Discuss the creation and scripting of new fan-made games and mods for the Fallout series of games.
Post Reply
Pizzahut Lover
Cakester Alt; I'm going places in life
Posts: 233
Joined: Tue Apr 12, 2011 10:05 am

Fallout 1 DEMO - hacking and restoration

Post by Pizzahut Lover »

==Summary==
Attempt to open save file - call sub_483AC4 : jnz loc_452500
report error ; "\n ** Error opening save game for writin"...

Attempt save Header - call sub_484744, call sub_452828 : jnz loc_452554
report error ; "\n ** Error writing save game header! **"...

print ; " Save file header size written: %d byte"...


Attempt Save Complete - : jnz loc_4525B8
00452577 call sub_484744
00452585 call ds:off_4CBCB8[esi]
report error ; "\n ** Error writing save function #%d da"...

print ; " Save function #%d data size written: %"...

print ; " Total save data written: %ld bytes.\n"


BEGTEXT:00452639 retn

make folder data in your game folder.
make folder SAVEGAME in data folder
make folder SLOT00 in SAVEGAME
copy fallout 2 save.dat to SLOT00 folder.

this DLL if injected, takes one key press of ctrl-right. your game will crash. go and refresh view of SLOT00 folder contents.

your save.dat will be 0kb. all data will have been cleared but nothing written. the crash is because of complication with strncopy.

the ultimate solution for no crash no doubt, a few instructions modified/added. but for now you have insight.

Code: Select all

#include <Windows>

void SimpleGoto&#40;&#41;;

HRESULT WINAPI InputThread&#40;LPVOID&#41;;

BOOL WINAPI DllMain&#40;HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved&#41;
&#123;
	if&#40;fdwReason == DLL_PROCESS_ATTACH&#41;&#123;

		DisableThreadLibraryCalls&#40;hinstDLL&#41;;

		CreateThread&#40;NULL, 0, &#40;LPTHREAD_START_ROUTINE&#41;InputThread, NULL, NULL, NULL&#41;;
		return TRUE;
	&#125;

	return FALSE;

&#125;

HRESULT WINAPI InputThread&#40;LPVOID Param&#41;
&#123;
	while&#40;1&#41;&#123;
		Sleep&#40;1&#41;;
		if&#40;GetAsyncKeyState&#40;VK_RCONTROL&#41; & 0x8000&#41;&#123;

			SimpleGoto&#40;&#41;;

			Sleep&#40;1&#41;;
		&#125;
		if&#40;GetAsyncKeyState&#40;VK_PAUSE&#41; & 0x8000&#41;&#123;

			break;
		&#125;
	&#125;

	return TRUE;
&#125;


char szSaveBuff &#91;30051&#93;=&#123;0&#125;; // modding wiki . decimal value for header size is 30051.
void SimpleGoto&#40;&#41;
&#123;
	// with a debugger changing the register eax from 0xcd2a20bc to offset of szSaveBuff
	// gets a bit further, but still confused.

	DWORD dwSaveAddr = 0x00452488;
	__asm &#123;
		call dwSaveAddr
	&#125;


&#125;
User avatar
Gunman
s3x g0d
s3x g0d
Posts: 69
Joined: Sun Apr 10, 2011 12:12 pm
Location: Ze laboratory

Post by Gunman »

Fuck this thread.


Image
User avatar
Stalagmite
Wandering Hero
Wandering Hero
Posts: 1192
Joined: Thu Feb 26, 2009 1:29 am
Location: IN YOUR PANTS AUSTRALIA

Post by Stalagmite »

Wait so what is Cakester trying to accomplish here?
Pizzahut Lover
Cakester Alt; I'm going places in life
Posts: 233
Joined: Tue Apr 12, 2011 10:05 am

Post by Pizzahut Lover »

Stalagmite wrote:Wait so what is Cakester trying to accomplish here?
probably too complicated for you. seeing how you refer to me, and how you would be kind if you unbanned cakester.
User avatar
Retlaw83
Goatse Messiah
Goatse Messiah
Posts: 5326
Joined: Sat Jul 17, 2004 1:49 am

Post by Retlaw83 »

He's either genuinely schizo or this is the worst attempt at lying ever.
"You're going to have a tough time doing that without your head, palooka."
- the Vault Dweller
Pizzahut Lover
Cakester Alt; I'm going places in life
Posts: 233
Joined: Tue Apr 12, 2011 10:05 am

Post by Pizzahut Lover »

Retlaw83 wrote:He's either genuinely schizo or this is the worst attempt at lying ever.
the worst liars being more convincing. Don't talk about genuine when your own skills are in jeopardy.
User avatar
Retlaw83
Goatse Messiah
Goatse Messiah
Posts: 5326
Joined: Sat Jul 17, 2004 1:49 am

Post by Retlaw83 »

My skill at being schizophrenic is in jeopardy? That's a good thing, I'd hope.
"You're going to have a tough time doing that without your head, palooka."
- the Vault Dweller
Pizzahut Lover
Cakester Alt; I'm going places in life
Posts: 233
Joined: Tue Apr 12, 2011 10:05 am

Post by Pizzahut Lover »

Retlaw83 wrote:My skill at being schizophrenic is in jeopardy? That's a good thing, I'd hope.
schizophrenic and unskilled. your worth is in jeopardy.
User avatar
Retlaw83
Goatse Messiah
Goatse Messiah
Posts: 5326
Joined: Sat Jul 17, 2004 1:49 am

Post by Retlaw83 »

I'd swear Cakester is looking at a mirror.
"You're going to have a tough time doing that without your head, palooka."
- the Vault Dweller
Pizzahut Lover
Cakester Alt; I'm going places in life
Posts: 233
Joined: Tue Apr 12, 2011 10:05 am

Post by Pizzahut Lover »

Retlaw83 wrote:I'd swear Cakester is looking at a mirror.

your assertion and no doubt with smoke. gj freak.
User avatar
Retlaw83
Goatse Messiah
Goatse Messiah
Posts: 5326
Joined: Sat Jul 17, 2004 1:49 am

Post by Retlaw83 »

Cakester's cute when he's mad.
"You're going to have a tough time doing that without your head, palooka."
- the Vault Dweller
User avatar
Psychoul
Elite Wanderer
Elite Wanderer
Posts: 625
Joined: Sun Nov 25, 2007 9:57 am
Location: Oil Rig

Post by Psychoul »

wtf?
User avatar
Stalagmite
Wandering Hero
Wandering Hero
Posts: 1192
Joined: Thu Feb 26, 2009 1:29 am
Location: IN YOUR PANTS AUSTRALIA

Post by Stalagmite »

Pizzahut Lover wrote:
Stalagmite wrote:Wait so what is Cakester trying to accomplish here?
probably too complicated for you. seeing how you refer to me, and how you would be kind if you unbanned cakester.
I asked a damn legit question you moron and you still throw bullshit. And I don't even know what the hell you're talking about in the second sentence.
Baa what's the use, it's becoming clear that suicide is probably the only feasible option for this kid.
User avatar
SenisterDenister
Haha you're still not there yet
Haha you're still not there yet
Posts: 3478
Joined: Mon Apr 23, 2007 3:03 pm
Location: Cackalackyland

Post by SenisterDenister »

cakester in every post he's ever made wrote:AUTISM! I HAVE AUTISM!
Pizzahut Lover
Cakester Alt; I'm going places in life
Posts: 233
Joined: Tue Apr 12, 2011 10:05 am

Post by Pizzahut Lover »

Stalagmite wrote:
Pizzahut Lover wrote:
Stalagmite wrote:Wait so what is Cakester trying to accomplish here?
probably too complicated for you. seeing how you refer to me, and how you would be kind if you unbanned cakester.
I asked a damn legit question you moron and you still throw bullshit. And I don't even know what the hell you're talking about in the second sentence.
Baa what's the use, it's becoming clear that suicide is probably the only feasible option for this kid.
but that is something you should of suggested for your self. you can't handle it. :joy:
User avatar
Gunman
s3x g0d
s3x g0d
Posts: 69
Joined: Sun Apr 10, 2011 12:12 pm
Location: Ze laboratory

Post by Gunman »

Prosper. Now with 70 % more dick up his ass. :pelvic_thrust:
Pizzahut Lover
Cakester Alt; I'm going places in life
Posts: 233
Joined: Tue Apr 12, 2011 10:05 am

Post by Pizzahut Lover »

Stalagmite wrote:
Pizzahut Lover wrote:
Stalagmite wrote:Wait so what is Cakester trying to accomplish here?
probably too complicated for you. seeing how you refer to me, and how you would be kind if you unbanned cakester.
I asked a damn legit question you moron and you still throw bullshit. And I don't even know what the hell you're talking about in the second sentence.
Baa what's the use, it's becoming clear that suicide is probably the only feasible option for this kid.
I will be merciful.

What Cakester was working on was first the flow of the save/load process. Upon pressing the red button you are prompted with NOPE YOU CANT. but with some inspection he found the non-demo's normal save routine was still present.

the source code in his OP compiles into a DLL. to test for an effect, once you inject it, you go and press the save game button.

the result is a save file is overwritten if present, otherwise a new one is created. it will be blank.
User avatar
Yonmanc
Hero of the Glowing Lands
Hero of the Glowing Lands
Posts: 2224
Joined: Tue Jun 23, 2009 11:46 pm
Location: Manchester, UK

Post by Yonmanc »

Gunman wrote:Fuck this thread.


Image
User avatar
rad resistance
Striding Hero
Striding Hero
Posts: 1435
Joined: Wed Dec 17, 2008 3:56 am
Location: Penn's Woods

Post by rad resistance »

Cakester your hurting my dick, please stop talking.
Cow Cud is a twin.
Our Host!
Post Reply