SUBSIM Radio Room Forums



SUBSIM: The Web's #1 resource for all submarine & naval simulations since 1997

Go Back   SUBSIM Radio Room Forums > Silent Hunter 3 - 4 - 5 > SHIII Mods Workshop
Forget password? Reset here

Reply
 
Thread Tools Display Modes
Old 10-25-08, 01:07 AM   #1
Commander Gizmo
Watch Officer
 
Join Date: Jan 2007
Posts: 339
Downloads: 76
Uploads: 4
Taking MODs in another direction

There are many things in SH3 that are not modifyalbe by us poor commoners due to copywrites and hard coding. These limitations are certainly felt in the moding community. I have stumbled upon a possiblity that I don't think has been yet explored.

Has anyone considered trying to locate the memory addresses for the different data points in SH3? Doing so would allow a trainer-esque type of MOD that edited the data in real time to create senarios that would be otherwise impossible. While this is certainly trickier than regular moding and could be impossible, I think it is worth a look.

If anyone has checked into this or considered it, please let me know what you found. My programming expertise are not well practiced in this particular area, but I get the mechanics of it. Perhaps we could make a go of it together?
Commander Gizmo is offline   Reply With Quote
Old 10-25-08, 10:34 AM   #2
makman94
Hellas
 
Join Date: Jul 2008
Posts: 2,325
Downloads: 182
Uploads: 7


Default

nobody? !!

very strange this modder's silence...maybe there is something special here !

gismo, my knowledge at theese things are pretty poor but if your idea have no answer by modders does that mean that is out of discassion? i don't understand theese things but a modder ,sure, can and if i was one of them i defenately search it!

good luck
makman94 is offline   Reply With Quote
Old 10-25-08, 10:39 AM   #3
Madox58
Stowaway
 
Posts: n/a
Downloads:
Uploads:
Default

It's not far fetched and has and still is being looked into.


A DLL intercept is also very possible to do.
  Reply With Quote
Old 10-25-08, 03:32 PM   #4
Graf Paper
Ace of the Deep
 
Join Date: Jan 2008
Location: Pacific Northwest United States
Posts: 1,146
Downloads: 41
Uploads: 2
Default

YARRR! Thar she codes, mateys! Get the DLL Hooks ready and prepare to board!
__________________
Still sailing the high seas, hunting convoys with those who join me.
Graf Paper is offline   Reply With Quote
Old 10-25-08, 03:39 PM   #5
geosub1978
Samurai Navy
 
Join Date: Oct 2006
Location: Salamis Base
Posts: 567
Downloads: 229
Uploads: 0
Default

dlls! Hmmm! Possible to do....hard to get results!
__________________
geosub1978 is offline   Reply With Quote
Old 10-25-08, 04:18 PM   #6
makman94
Hellas
 
Join Date: Jul 2008
Posts: 2,325
Downloads: 182
Uploads: 7


Default

(this is out of the theme of this thread)

geosub which is the skin of the sub in your signature? (very nice...)
makman94 is offline   Reply With Quote
Old 10-25-08, 04:25 PM   #7
Madox58
Stowaway
 
Posts: n/a
Downloads:
Uploads:
Default

Quote:
Originally Posted by geosub1978
dlls! Hmmm! Possible to do....hard to get results!
Not as hard as you invision.

One thing you must be good at?
Reading assembly language!

My first language is assembly.
Then C and on to C++

Then you need the programs to read the assembly code
as the Game is run.
Got those.

One screen runs the Game, the other runs the code!
  Reply With Quote
Old 10-25-08, 06:15 PM   #8
Graf Paper
Ace of the Deep
 
Join Date: Jan 2008
Location: Pacific Northwest United States
Posts: 1,146
Downloads: 41
Uploads: 2
Default

DLL hooking and injecting is an old, tried and true method for making software do things the original programmers did not intend.

Cracks and game trainers have used that method for years... along with pointer spoofing, stack insertion, and buffer swapping.

Makes me feel all misty-eyed and nostalgic for the good ol' days! *sniff*
__________________
Still sailing the high seas, hunting convoys with those who join me.
Graf Paper is offline   Reply With Quote
Old 10-25-08, 09:09 PM   #9
Madox58
Stowaway
 
Posts: n/a
Downloads:
Uploads:
Default


  Reply With Quote
Old 10-25-08, 09:11 PM   #10
FIREWALL
Eternal Patrol
 
Join Date: Mar 2006
Location: CATALINA IS. SO . CAL USA
Posts: 10,108
Downloads: 511
Uploads: 0
Default

While I don't have a clue what you guys are talking about , I'm impressed and even envious.
__________________
RIP FIREWALL

I Play GWX. Silent Hunter Who ???
FIREWALL is offline   Reply With Quote
Old 10-25-08, 09:23 PM   #11
kylania
Silent Hunter
 
Join Date: Aug 2006
Posts: 3,528
Downloads: 118
Uploads: 0
Default

Will people use programs which will most certainly be picked up as viruses/trojans? This seems like a dangerous path to go down to be honest. While the OP might have only noble goals in mind, I can certainly see someone taking advantage of this in other ways.
__________________

kylania is offline   Reply With Quote
Old 10-25-08, 09:24 PM   #12
JScones
Navy Seal
 
Join Date: Apr 2005
Posts: 5,501
Downloads: 19
Uploads: 0
Default

Quote:
Originally Posted by privateer
It's not far fetched and has and still is being looked into.


A DLL intercept is also very possible to do.
Quote:
Originally Posted by privateer
Quote:
Originally Posted by geosub1978
dlls! Hmmm! Possible to do....hard to get results!
Not as hard as you invision.

One thing you must be good at?
Reading assembly language!

My first language is assembly.
Then C and on to C++

Then you need the programs to read the assembly code
as the Game is run.
Got those.

One screen runs the Game, the other runs the code!
Why be so convoluted? You only need a small TSR and a smidge of lateral thinking. SH3Cmdr has been using a small TSR for years to intercept SH3 behaviour.

Here's a hint for one great way to use such a simple TSR - saving a game mid-patrol creates a trigger point for any number of game changes that can occur *without* the player needing to exit the career, run a third party app and reload.

Date based graphics changes mid patrol? Let me just say...I know it can be done.

And the way SH3 memory is handled, even simple BASIC Peek/Poke instructions should suffice.

Enjoy reading your assembly!
JScones is offline   Reply With Quote
Old 10-25-08, 10:23 PM   #13
Graf Paper
Ace of the Deep
 
Join Date: Jan 2008
Location: Pacific Northwest United States
Posts: 1,146
Downloads: 41
Uploads: 2
Default

The master has spoken!

Heed his words.

Trust his wisdom.

Learn much.

__________________
Still sailing the high seas, hunting convoys with those who join me.
Graf Paper is offline   Reply With Quote
Old 10-26-08, 02:59 AM   #14
Hitman
Pacific Aces Dev Team
 
Hitman's Avatar
 
Join Date: Sep 2002
Location: Spain
Posts: 6,109
Downloads: 109
Uploads: 2


Default

Forgive my ignorance but....

this all sounds very interesting -and also frighteningly close to the ilegal modification of the program's core- but what exactly could be done with this? I mean, the things that are as of today still the big letdowns in SH3 like Wolfpacks can't be added like this. Or can they? What areas of the game could be improved using this technique?

To add an AI for submarines that allows submerging, evading and such -and hence allow wolfpacks- by adding it to an extra DLL and then telling the game to read it, you would need to know how the game is programmed inside its exe so you can use the same format, right?

Can that be done?

Can it be done without -ilegally- reverse engineering the whole exe? :hmm:

And will all this be worth it?
__________________
One day I will return to sea ...
Hitman is offline   Reply With Quote
Old 10-26-08, 04:40 AM   #15
Commander Gizmo
Watch Officer
 
Join Date: Jan 2007
Posts: 339
Downloads: 76
Uploads: 4
Default

@Hitman: The main method of this sort of thing would be editing the game data in memory while it is running. This is not illegal, and is how trainers work. The main usefulness of this would be to cause events to occur in game such as changing crew stats, adding map data, simulating mechanical problems, etc. These sorts of things would still be limited, but would be far better than having to close the whole game down, run an exe, and then launch and load it all over again.
Commander Gizmo is offline   Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -5. The time now is 05:21 PM.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Copyright © 1995- 2025 Subsim®
"Subsim" is a registered trademark, all rights reserved.