Fable: The Lost Chapters Mod Scene
Fast Uncompromising Discussions. FUDforum will get your users talking.

Home » Fable TLC » Mods » Work In Progress » [WIP] - Fable SDK  () 1 Vote
Re: WIP - Game Hacks [message #66563 is a reply to message #66545] Tue, 01 May 2012 17:20 Go to previous messageGo to next message
Sativarg is currently offline  Sativarg
Messages: 68
Registered: April 2011
EternalNoob wrote on Tue, 01 May 2012 07:29

Could someone take the time to make me a list of things that are currently impossible(or that you want added), I really don't remember off hand, plus, I've been away for awhile, so I could have missed some new developments.

I need this info so that I have a better idea of what systems I should focus on decoding.

A simple list would be fine:

1. Some Feature
2. Some Other Feature

Thanks. Smile


An old project had great promis but lacked the way if not the will to become reality... Have youe seen this:
FableTLC Mod Scene: Work In Progress => Fable:Harsh ( Work in Progress )

"Keshire"

To Do:
  • Normalize Weapon damage for PC and NPC's
  • Sprinkle augmented weapons among NPCs
  • Remove the Health and Mana Bar
  • Remove Resurrection Vials from Shopkeepers (They need to be legendary....)
  • Lots of things on a code level in order to fix the wld.
  • Lots of scripting
  • ...SNIP>>>
  • ...And anything else the community thinks up



[Updated on: Tue, 01 May 2012 17:21]

Report message to a moderator

Re: WIP - Game Hacks [message #66572 is a reply to message #66563] Wed, 02 May 2012 05:28 Go to previous messageGo to next message
morerunes is currently offline  morerunes
Messages: 2154
Registered: June 2007
Location: My desk

Administrator

Just popping in to say that this is REALLY cool Wink

"All of the work, and none of the play, will surely provide for a speedy decay"
Re: WIP - Game Hacks [message #66583 is a reply to message #66572] Wed, 02 May 2012 12:21 Go to previous messageGo to next message
Sativarg is currently offline  Sativarg
Messages: 68
Registered: April 2011
I'm glad you are finding some usable code in the game. That console sounds very interesting. Probably way to much to ask that it be switched on using the tilde key like Morrowind, but it sounds like quite a find.

Fable:Harsh seems to have been one of the first really ambitious community projects here. I only know of it from reading about BlueTooth FMP Archive. The community here come together and brain stormed a great many cool ideas so I figured that thread was a good place to look. Sorry I did not go through and make a nice list... I haven't felt up to it lately.

Any way.. happy hacking EternalNoob

UPDATE:
RE: that console you found... and a video I saw

Posted by BayStone (famouse here for Chocolate Box) on Youtube that I thought you would enjoy and maybe get some clues from>
Fable Giga Presentation 2003, Part 1 of 3 - YouTube It start out with the hosts speaking German I believe but the balance of the interviews are in English
Simon Carter (video game person)
Peter Molyneux - Wikipedia, the free encyclopedia
The part I believe is of import here may be the scenes of the console being used to show the original features of the first alpha_ish Fable. Much of this starts in Fable Giga Presentation 2003, Part 2 of 3 - YouTube

[Updated on: Wed, 09 May 2012 01:57]

Report message to a moderator

Re: WIP - Game Hacks [message #66730 is a reply to message #66480] Thu, 31 May 2012 13:36 Go to previous messageGo to next message
Sativarg is currently offline  Sativarg
Messages: 68
Registered: April 2011
OK so...Platform Invocation Services - Wikipedia, the free encyclopedia
Platform Invocation Services, commonly referred to as P/Invoke, is a feature of Common Language Infrastructure implementations, like Microsoft's Common Language Runtime, that enables managed code to call native code.

I had to look that up, of course, but this sounds very promising. I tried to do a little C++ stuff a while back to compile the latest BOSS svn (Build Instructions.html - better-oblivion-sorting-software). The preparations took up 17 gigs of HD space and 5 hours to build a thing called Boost C++ Libraries]... and the other thingy libcurl - the multiprotocol file transfer library. I am not convinced I needed all that but...

Any way, It took me many hours just to get it all figured out and compiled... so I, maybe, can just begin to appreciate the work involved in your project. Thanks for all the hard work
Re: WIP - Game Hacks [message #66740 is a reply to message #66480] Fri, 01 June 2012 08:11 Go to previous messageGo to next message
Keshire is currently offline  Keshire
Messages: 1266
Registered: July 2005

Administrator
Neat. So you have a console up and running?

A project like this could actually get me back into the community again.



Apathy Cannot Inspire.
Ambivalence cannot lead.
Loved me. Feared me.
Changed me. Killed me.
Anything would be something.
But nothing is worst of all.
Re: [WIP] - Fable SDK [message #66773 is a reply to message #66480] Tue, 05 June 2012 07:59 Go to previous messageGo to next message
EternalNoob
Messages: 47
Registered: January 2006
Location: The Pit of Hell
The first post has a release, it comes with examples, follow the instructions in the OP for install, etc,. (If you have everything installed(requirements\SDK\etc,.), and it doesn't work, check sativargs post on the first page, concerning a similar issue.)

Whether you think you can, or can't, you're right.
Re: [WIP] - Fable SDK [message #66784 is a reply to message #66480] Wed, 06 June 2012 07:42 Go to previous messageGo to next message
Keshire is currently offline  Keshire
Messages: 1266
Registered: July 2005

Administrator
It's going to take some time to get things setup again because I don't have as much time as I used to. But I'm certainly interested.


Apathy Cannot Inspire.
Ambivalence cannot lead.
Loved me. Feared me.
Changed me. Killed me.
Anything would be something.
But nothing is worst of all.
Re: [WIP] - Fable SDK [message #66785 is a reply to message #66784] Wed, 06 June 2012 09:56 Go to previous messageGo to next message
EternalNoob
Messages: 47
Registered: January 2006
Location: The Pit of Hell
Good to hear. Smile

Let me know what\how you wanna do things, etc,.

---

Is there another front end in the files, I found references to a debug front end, it apparently had a graphical overlay, and they could hit keys to select different options. (Loading worlds, saves, etc,.)

I'm wondering if the dev console was part of that front end, rather than the release version we have.

Anyways, I've been working to get some method of rendering text working, as it would greatly help the decoding process. (I've been working several angles, enabling the dev console, hooking the text rendering functions, and hacking DirectX to add my own, etc,.)

Nothing so far, but, I decoded a lot of little things on the way. (I've got references to TONS of game systems now, so, with a little more decoding, we should be able to do some really cool stuff.)

[Updated on: Thu, 07 June 2012 20:49]

Report message to a moderator

Re: [WIP] - Fable SDK [message #66787 is a reply to message #66785] Thu, 07 June 2012 08:48 Go to previous messageGo to next message
Keshire is currently offline  Keshire
Messages: 1266
Registered: July 2005

Administrator
EternalNoob wrote on Wed, 06 June 2012 11:56

Good to hear. Smile

Let me know what\how you wanna do things, etc,.

---

Is there another front end in the files, I found references to a debug front end, it apparently had a graphical overlay, and they could hit keys to select different options. (Loading worlds, saves, etc,.)

I'm wondering if the dev console was part of that front end, rather than the release version we have.

Anyways, I've been working to get some method of rending text working, as it would greatly help the decoding process. (I've been working several angles, enabling the dev console, hooking the text rendering functions, and hacking DirectX to add my own, etc,.)

Nothing so far, but, I decoded a lot of little things on the way. (I've got references to TONS of game systems now, so, with a little more decoding, we should be able to do some really cool stuff.)


From my understanding they ripped out some of the ingame editor stuff. I'm not sure what parts are missing though.



Apathy Cannot Inspire.
Ambivalence cannot lead.
Loved me. Feared me.
Changed me. Killed me.
Anything would be something.
But nothing is worst of all.
Re: [WIP] - Fable SDK [message #66788 is a reply to message #66787] Thu, 07 June 2012 12:36 Go to previous messageGo to next message
EternalNoob
Messages: 47
Registered: January 2006
Location: The Pit of Hell
I see, I was just curious if I'm wasting time trying to get this dev console enabled(as is). (It may have crucial parts missing, etc,.)

(The code seems to be there for the dev console, so, I could possibly add my own GUI for it at some point, I think I've found the main entry point for it.)

--------------

Slow going right now, I made a debug version of my injector that injects the window mode patch by Wiccaan(sp?) alongside my SDK, this makes debugging a lot easier. (I can view my console without having to tab out, etc,.)

I also found the "alignment" value for the hero, and figured out how to make the visual changes take effect. (I had to trigger a function to update the visuals after the value was changed.)

I changed a bunch of values so they take "int" instead of UInt32, which allows for easier editing. (UInt32 works off of hex based values, so you can't write -300 for example, it's 0xFFFFFED4, which most ppl wouldn't be able to figure out.)

----

Speaking of hero values, could someone post a list of valid ranges if they happen to know them. (I need to keep ppl from entering invalid numbers, renown seems to cap out at around 5 for example, so, larger numbers shouldn't be allowed.)


Whether you think you can, or can't, you're right.

[Updated on: Thu, 07 June 2012 21:24]

Report message to a moderator

Re: [WIP] - Fable SDK [message #66801 is a reply to message #66788] Fri, 08 June 2012 06:31 Go to previous messageGo to next message
Keshire is currently offline  Keshire
Messages: 1266
Registered: July 2005

Administrator
EternalNoob wrote on Thu, 07 June 2012 14:36

I see, I was just curious if I'm wasting time trying to get this dev console enabled(as is). (It may have crucial parts missing, etc,.)

(The code seems to be there for the dev console, so, I could possibly add my own GUI for it at some point, I think I've found the main entry point for it.)

--------------

Slow going right now, I made a debug version of my injector that injects the window mode patch by Wiccaan(sp?) alongside my SDK, this makes debugging a lot easier. (I can view my console without having to tab out, etc,.)

I also found the "alignment" value for the hero, and figured out how to make the visual changes take effect. (I had to trigger a function to update the visuals after the value was changed.)

I changed a bunch of values so they take "int" instead of UInt32, which allows for easier editing. (UInt32 works off of hex based values, so you can't write -300 for example, it's 0xFFFFFED4, which most ppl wouldn't be able to figure out.)

----

Speaking of hero values, could someone post a list of valid ranges if they happen to know them. (I need to keep ppl from entering invalid numbers, renown seems to cap out at around 5 for example, so, larger numbers shouldn't be allowed.)


I'm curious. What happens when you call the various parts of the dev console? Just a crash or something? If your hooked in with a debugger shouldn't you be able to randomly call some of the subroutines?



Apathy Cannot Inspire.
Ambivalence cannot lead.
Loved me. Feared me.
Changed me. Killed me.
Anything would be something.
But nothing is worst of all.
Re: [WIP] - Fable SDK [message #66802 is a reply to message #66801] Fri, 08 June 2012 08:51 Go to previous messageGo to next message
EternalNoob
Messages: 47
Registered: January 2006
Location: The Pit of Hell
You generally can't do that with debuggers(AFAIK), but, I happen to have a specialized debugger made just for hacking which can. (Attempts at calling it have crashed the game, but, it's not a normal function, it uses __thiscall, ie, it's class based, so, that's likely the cause of the issue.)

I don't believe I've tried calling them from my SDK yet, I can do just about anything from there. (Like, how I made the game update when I change the hero's alignment\morality.)

// Makes visual changes take effect. (After morality changes.)
static void UpdateMorality(int value)
{
	static u32 address = 0x0057C2E6; // The function the game normally calls to update the players visuals

	__asm
	{
		push value // New morality value
		mov ecx, G_CTCHeroStats // this* ptr to CTCHeroStats instance
		call address
	}
}


I'll play around with it, see if I can make it execute a script function. (It's pretty complex, it uses classes to represent variables, and commands, so, I need to figure out what I need to pass it in order to make it work.)

----

Check out this structure I just found.

debug475:12ADC910 aPlayer4Uid18446741874686296485Definiti db 0Dh,0Ah
debug475:12ADC910                                         ; DATA XREF: debug475:off_12A93E48o
debug475:12ADC910                 db 'Player 4;',0Dh,0Ah
debug475:12ADC910                 db 'UID 18446741874686296300;',0Dh,0Ah
debug475:12ADC910                 db 'DefinitionType "BUILDING_GUILD_MAZE_QUARTERS_01";',0Dh,0Ah
debug475:12ADC910                 db 'ScriptName NULL;',0Dh,0Ah
debug475:12ADC910                 db 'ScriptData "NULL";',0Dh,0Ah
debug475:12ADC910                 db 'ThingGamePersistent FALSE;',0Dh,0Ah
debug475:12ADC910                 db 'ThingLevelPersistent FALSE;',0Dh,0Ah
debug475:12ADC910                 db 'StartCTCPhysicsStandard;',0Dh,0Ah
debug475:12ADC910                 db 'PositionX 133.977539;',0Dh,0Ah
debug475:12ADC910                 db 'PositionY 70.008789;',0Dh,0Ah
debug475:12ADC910                 db 'PositionZ 20.0;',0Dh,0Ah
debug475:12ADC910                 db 'RHSetForwardX -0.999994;',0Dh,0Ah
debug475:12ADC910                 db 'RHSetForwardY 0.0;',0Dh,0Ah
debug475:12ADC910                 db 'RHSetForwardZ 0.0;',0Dh,0Ah
debug475:12ADC910                 db 'RHSetUpX 0.0;',0Dh,0Ah
debug475:12ADC910                 db 'RHSetUpY 0.0;',0Dh,0Ah
debug475:12ADC910                 db 'RHSetUpZ 0.999994;',0Dh,0Ah
debug475:12ADC910                 db 'EndCTCPhysicsStandard;',0Dh,0Ah
debug475:12ADC910                 db 'StartCTCEditor;',0Dh,0Ah
debug475:12ADC910                 db 'EndCTCEditor;',0Dh,0Ah
debug475:12ADC910                 db 'StartCTCVillageMember;',0Dh,0Ah
debug475:12ADC910                 db 'VillageUID 18446741874686297130;',0Dh,0Ah
debug475:12ADC910                 db 'EndCTCVillageMember;',0Dh,0Ah
debug475:12ADC910                 db 'StartCTCBuyableHouse;',0Dh,0Ah
debug475:12ADC910                 db 'WifeLivingHere 0;',0Dh,0Ah
debug475:12ADC910                 db 'OwnedByPlayer FALSE;',0Dh,0Ah
debug475:12ADC910                 db 'IsScripted FALSE;',0Dh,0Ah
debug475:12ADC910                 db 'Rented FALSE;',0Dh,0Ah
debug475:12ADC910                 db 'DayNextRentIsDue 2147483647;',0Dh,0Ah
debug475:12ADC910                 db 'CurrentDressLevel 0;',0Dh,0Ah
debug475:12ADC910                 db 'VirtualMoneyBags 0;',0Dh,0Ah
debug475:12ADC910                 db 'IsResidential TRUE;',0Dh,0Ah
debug475:12ADC910                 db 'EndCTCBuyableHouse;',0Dh,0Ah
debug475:12ADC910                 db 'Health 15000.0'


Edit: The function seems to loop through all the properties in the current area(once, when the level loads). (I can see a few modding possibilities here.)


Whether you think you can, or can't, you're right.

[Updated on: Sat, 09 June 2012 10:38]

Report message to a moderator

Re: [WIP] - Fable SDK [message #66825 is a reply to message #66802] Tue, 12 June 2012 08:59 Go to previous messageGo to next message
Keshire is currently offline  Keshire
Messages: 1266
Registered: July 2005

Administrator
EternalNoob wrote on Fri, 08 June 2012 10:51

You generally can't do that with debuggers(AFAIK), but, I happen to have a specialized debugger made just for hacking which can. (Attempts at calling it have crashed the game, but, it's not a normal function, it uses __thiscall, ie, it's class based, so, that's likely the cause of the issue.)

I don't believe I've tried calling them from my SDK yet, I can do just about anything from there. (Like, how I made the game update when I change the hero's alignment\morality.)

// Makes visual changes take effect. (After morality changes.)
static void UpdateMorality(int value)
{
	static u32 address = 0x0057C2E6; // The function the game normally calls to update the players visuals

	__asm
	{
		push value // New morality value
		mov ecx, G_CTCHeroStats // this* ptr to CTCHeroStats instance
		call address
	}
}


I'll play around with it, see if I can make it execute a script function. (It's pretty complex, it uses classes to represent variables, and commands, so, I need to figure out what I need to pass it in order to make it work.)

----

Check out this structure I just found.

debug475:12ADC910 aPlayer4Uid18446741874686296485Definiti db 0Dh,0Ah
debug475:12ADC910                                         ; DATA XREF: debug475:off_12A93E48o
debug475:12ADC910                 db 'Player 4;',0Dh,0Ah
debug475:12ADC910                 db 'UID 18446741874686296300;',0Dh,0Ah
debug475:12ADC910                 db 'DefinitionType "BUILDING_GUILD_MAZE_QUARTERS_01";',0Dh,0Ah
debug475:12ADC910                 db 'ScriptName NULL;',0Dh,0Ah
debug475:12ADC910                 db 'ScriptData "NULL";',0Dh,0Ah
debug475:12ADC910                 db 'ThingGamePersistent FALSE;',0Dh,0Ah
debug475:12ADC910                 db 'ThingLevelPersistent FALSE;',0Dh,0Ah
debug475:12ADC910                 db 'StartCTCPhysicsStandard;',0Dh,0Ah
debug475:12ADC910                 db 'PositionX 133.977539;',0Dh,0Ah
debug475:12ADC910                 db 'PositionY 70.008789;',0Dh,0Ah
debug475:12ADC910                 db 'PositionZ 20.0;',0Dh,0Ah
debug475:12ADC910                 db 'RHSetForwardX -0.999994;',0Dh,0Ah
debug475:12ADC910                 db 'RHSetForwardY 0.0;',0Dh,0Ah
debug475:12ADC910                 db 'RHSetForwardZ 0.0;',0Dh,0Ah
debug475:12ADC910                 db 'RHSetUpX 0.0;',0Dh,0Ah
debug475:12ADC910                 db 'RHSetUpY 0.0;',0Dh,0Ah
debug475:12ADC910                 db 'RHSetUpZ 0.999994;',0Dh,0Ah
debug475:12ADC910                 db 'EndCTCPhysicsStandard;',0Dh,0Ah
debug475:12ADC910                 db 'StartCTCEditor;',0Dh,0Ah
debug475:12ADC910                 db 'EndCTCEditor;',0Dh,0Ah
debug475:12ADC910                 db 'StartCTCVillageMember;',0Dh,0Ah
debug475:12ADC910                 db 'VillageUID 18446741874686297130;',0Dh,0Ah
debug475:12ADC910                 db 'EndCTCVillageMember;',0Dh,0Ah
debug475:12ADC910                 db 'StartCTCBuyableHouse;',0Dh,0Ah
debug475:12ADC910                 db 'WifeLivingHere 0;',0Dh,0Ah
debug475:12ADC910                 db 'OwnedByPlayer FALSE;',0Dh,0Ah
debug475:12ADC910                 db 'IsScripted FALSE;',0Dh,0Ah
debug475:12ADC910                 db 'Rented FALSE;',0Dh,0Ah
debug475:12ADC910                 db 'DayNextRentIsDue 2147483647;',0Dh,0Ah
debug475:12ADC910                 db 'CurrentDressLevel 0;',0Dh,0Ah
debug475:12ADC910                 db 'VirtualMoneyBags 0;',0Dh,0Ah
debug475:12ADC910                 db 'IsResidential TRUE;',0Dh,0Ah
debug475:12ADC910                 db 'EndCTCBuyableHouse;',0Dh,0Ah
debug475:12ADC910                 db 'Health 15000.0'


Edit: The function seems to loop through all the properties in the current area(once, when the level loads). (I can see a few modding possibilities here.)


That's the setup of a Thing script (level.tng). There might be a few properties that we don't know listed in there. Plus if you find the player's entry, it should allow you to spawn more players and sync them in the game world remotely.



Apathy Cannot Inspire.
Ambivalence cannot lead.
Loved me. Feared me.
Changed me. Killed me.
Anything would be something.
But nothing is worst of all.
Re: [WIP] - Fable SDK [message #66826 is a reply to message #66825] Tue, 12 June 2012 10:08 Go to previous messageGo to next message
asmcint is currently offline  asmcint
Messages: 1360
Registered: April 2010
Location: Behind the beef

Moderator
Keshire wrote on Tue, 12 June 2012 11:59

spawn more players and sync them in the game world remotely.

O_O So essentially, make Fable have multiplayer capability? Shocked Y'all got some serious shit going on.


Read the site rules, as well as individual thread rules, stickies and announcements, and use search, or you will have smartassy or exasperated ownage rained down upon you by the site's crack team of mods and admins. Also, you can find all you need to get started on modding here.
Re: [WIP] - Fable SDK [message #66828 is a reply to message #66826] Tue, 12 June 2012 14:40 Go to previous messageGo to next message
EternalNoob
Messages: 47
Registered: January 2006
Location: The Pit of Hell
@asmcint, the game has code for all kinds of features that either didn't get released\finished. (It has code for multiplayer, leader boards, etc,.)

Not sure I want to bother them, they're likely partially, or wholly incomplete, I'd rather focus on the SP which I know to be complete.

But, yeah, you could try to implement your own MP like Keshire mentioned, however, it's not easy, I know of several communities that have done so, Vampire Bloodlines, GTA(Multi-Theft Auto), Morrowind(incomplete, but getting there),etc,.

You could check with the Vampire community on FilePlanet forums(Planet Vampire), they'd be the most helpful. (ie, it's still an active project, and you could likely find the creators, etc,.)

[Updated on: Tue, 12 June 2012 14:55]

Report message to a moderator

Re: [WIP] - Fable SDK [message #66830 is a reply to message #66828] Tue, 12 June 2012 14:57 Go to previous messageGo to next message
asmcint is currently offline  asmcint
Messages: 1360
Registered: April 2010
Location: Behind the beef

Moderator
EternalNoob wrote on Tue, 12 June 2012 17:40

@asmcint, the game has code for all kinds of features that either didn't get released\finished.

I know, it's just the possibility of something previously thought too hard to do being opened up like that is... holy crap.


Read the site rules, as well as individual thread rules, stickies and announcements, and use search, or you will have smartassy or exasperated ownage rained down upon you by the site's crack team of mods and admins. Also, you can find all you need to get started on modding here.
Re: [WIP] - Fable SDK [message #66832 is a reply to message #66830] Tue, 12 June 2012 15:05 Go to previous messageGo to next message
EternalNoob
Messages: 47
Registered: January 2006
Location: The Pit of Hell
asmcint wrote on Tue, 12 June 2012 14:57

EternalNoob wrote on Tue, 12 June 2012 17:40

@asmcint, the game has code for all kinds of features that either didn't get released\finished.

I know, it's just the possibility of something previously thought too hard to do being opened up like that is... holy crap.



Oh, I see. Smile Did you catch my edit?

@Keshire, that function I found, is likely part of the level loader then, I bet that's the raw data from the file after the game deserialized it, which means, we could probably find the file loaders for various systems, and see the raw file data decoded. Smile
Re: [WIP] - Fable SDK [message #66838 is a reply to message #66832] Wed, 13 June 2012 05:33 Go to previous messageGo to next message
Keshire is currently offline  Keshire
Messages: 1266
Registered: July 2005

Administrator
EternalNoob wrote on Tue, 12 June 2012 17:05

asmcint wrote on Tue, 12 June 2012 14:57

EternalNoob wrote on Tue, 12 June 2012 17:40

@asmcint, the game has code for all kinds of features that either didn't get released\finished.

I know, it's just the possibility of something previously thought too hard to do being opened up like that is... holy crap.



Oh, I see. Smile Did you catch my edit?

@Keshire, that function I found, is likely part of the level loader then, I bet that's the raw data from the file after the game deserialized it, which means, we could probably find the file loaders for various systems, and see the raw file data decoded. Smile


That's what it looks like to me. But the player itself is going to be an entity in the same format. It's just going to have extra ctc's/cdefs attached to it. I'm not sure how useful it'd be for the scripts or the bins. But it'd be immensely useful to see which data is used from the STB file. Because that file is an unreadable mess internally.



Apathy Cannot Inspire.
Ambivalence cannot lead.
Loved me. Feared me.
Changed me. Killed me.
Anything would be something.
But nothing is worst of all.
Re: [WIP] - Fable SDK [message #66874 is a reply to message #66838] Thu, 21 June 2012 20:02 Go to previous messageGo to next message
EternalNoob
Messages: 47
Registered: January 2006
Location: The Pit of Hell
I'm kinda slowing down on this project, it's just so large in scale that I need to give up on the idea of getting it done quickly.

---

I wrote a tool to help me out, it's basically a simple database tool, I can add a new entry("CTCHeroStats"), then I can enter text related to that class.

The benefit, is that instead of having some big train wreck of a text file, I now have the same data in an alphabetized drop down list, in which I can quickly select any class, and then view the related data.

(It was getting way too hard to track, I have around 20+ classes partially decoded, plus, tons of random info, and notes, etc,.)

----

It would be extremely helpful, if someone could list off important ctc\cdefs. Basically, I don't have a modders knowledge of Fable, so I don't what classes I should be focusing on.

I'd like to be able to modify lamp intensity via the SDK for example. How about modifying spells, damage, radius, etc,. ? (Basically, think, "Edit", and list the types of ctc\defs that would be well suited to being edited.)

Let me put this another way, here is a list of what I'm up against, each one of these represents a class that could take days\weeks\months to decode, it depends on numerous factors. (And I have NO idea which ones are useful.)

Show - Spirit crushing list of ages...

[Updated on: Thu, 21 June 2012 20:52]

Report message to a moderator

Re: [WIP] - Fable SDK [message #66877 is a reply to message #66874] Fri, 22 June 2012 19:03 Go to previous messageGo to next message
morerunes is currently offline  morerunes
Messages: 2154
Registered: June 2007
Location: My desk

Administrator

Important highlights:

CObjectAugmentationsDef - This lists augmentations for a weapon and a number of other things, but most importantly lets you define how many open slots a weapon has and if any of them are filled by default/with what

CWeaponDef - Defines damage for a weapon

CCreatureDef - Defines any creature or person

CThing - These are used in the maps and define an object and its location / rotation / scripts / etc. This can be an object (which can be a weapon, food, static object, etc), a creature, and maybe some other things. It's been a while and I don't remember that clearly.

CBonusItemDef - Defines food properties


Another good excercise would be to download a mod from this forum, rename it from *.fmp to *.big and use the File >> Open feature of Fable Explorer or Chocolate Box to view its contents. It will list what CDefs are included


"All of the work, and none of the play, will surely provide for a speedy decay"
Re: [WIP] - Fable SDK [message #66978 is a reply to message #66877] Fri, 13 July 2012 14:02 Go to previous messageGo to next message
EternalNoob
Messages: 47
Registered: January 2006
Location: The Pit of Hell
Here's another good exercise:

1. Learn ASM
2. Learn C++
3. Learn C#
4. Learn Reverse Engineering (HowTo\Tools\Etc,.)
5. Hack Fable

It's easy, just Google it, all the information is there, that's how I learned.

Good luck.

---------

The above statement is no different than you telling me to dig through mods, and forum post to figure this stuff out myself.

Try again.

I'm sharing my skills and knowledge with you, do me the same courtesy, and we may actually accomplish something. (If you have to get your hands dirty, and do some work, so be it, go, do what you suggested, and bring me the results.)

Or, if you truly think so little of what I'm doing, try it yourself. (Very few ppl are willing\able to reverse engineer to this degree, why, because it's really, really hard.)

[Updated on: Fri, 13 July 2012 14:14]

Report message to a moderator

Re: [WIP] - Fable SDK [message #66979 is a reply to message #66874] Sat, 14 July 2012 16:16 Go to previous messageGo to next message
IDontKnow
Messages: 190
Registered: August 2010
Location: 127.0.0.1
EternalNoob wrote on Fri, 22 June 2012 04:02

ctc\cdefs. Basically, I don't have a modders knowledge of Fable, so I don't what classes I should be focusing on.


I can't vouch for this lists importance (whether it's something you should focus on or not) but a while ago I created a list in notepad for personal use on future projects or things I had ideas about. Let me know if you want more, I'm sure I have a bigger list somewhere.

Small List


Let me know if it was of any use.

And I'm sure that morerunes meant that if you were curious as to how a mod was made, changing .fmp to .big would show you what was edited in FE/cbox.


27/4/11 23:XX (11:XX Pm) She went to a better place. 28/4/11 10:XX She was burried; RIP

Leren van de taal van Nederland is leuk.
Ik heb nog veel te leren, hoewel.

Tengo la ambición de aprender a español.
Yet I have no idea how to start.

[Updated on: Sat, 14 July 2012 16:18]

Report message to a moderator

Re: [WIP] - Fable SDK [message #66984 is a reply to message #66480] Mon, 16 July 2012 03:28 Go to previous messageGo to next message
EternalNoob
Messages: 47
Registered: January 2006
Location: The Pit of Hell
Thanks, IDontKnow. Smile

The list you provided is good, and I would love that bigger list you mentioned. (Basically, I really need a list of all the useful defs, or as much as the community can provide.)

--

As for morerunes..

I may have been a bit harsh, however, he's not entirely without fault.

I requested specific information, not instructions for finding the information. (ie, I don't remember saying 'or best offer' anywhere in my request.)

Furthermore, he did THE MOST counterproductive thing imaginable, he gave everyone an escape route, ie, we don't need to help EternalNoob, he can just do what morerunes said.

Intentional or not, he made it seem as if I didn't need help at all, as if I could do it myself. (Most ppl reading this thread, would see my request, see his response, and think, oh, it's okay, morerunes straightened him out... He can just use FE...)

Well, I can't use FE, FE won't run at the same time as the game, and I can't hack a game that isn't running...

The obvious answer: Turn off the game to use FE.

Wrong!

Not that simple, I spend hours stepping through cpu instructions one at a time to find stuff, and there is no 'resume', if I lose my place, I have to start over. (Thus, wasting hours, worse, I risk not being able to find it again, it happens, it's a huge\complex game.)

To be truthful, you can resume, however, due to the nature of hacking, and how classes\functions work, it generally takes longer that way, a LOT longer.

Imagine this function

Add(int a, int b)
{
return a + b;
}

If the game uses tons of math, how long do you think it would take to find a specific case: ie, 40 + 50

You could spend days single stepping through 'Add' waiting for the correct numbers to pass through, but, it's easier\quicker in most cases to start over, and find it however you originally did. (And, what if there were several '40 + 50's that passed through, which one is the right one, etc,. ?? Just trust me, its no good.)

--

I can appreciate that he likely meant well.

But, if I'm asking for something, then that's what I want, I know my stuff, I do my research, and you're likely telling me things that I already know if you deviate from my request. (ie, wasting my time, and insulting my intelligence.)

Could he have known that, no, but, if someone ask you for directions to McDonalds, it should be common sense that they don't want your personal recipe for burgers, or directions to Burger King, or anything other than what they asked for. (There are exceptions to this rule, mostly involving stupid ppl, and stupid questions...)

This may not seem like a big deal, but, after spending years online, I've had tons of my time wasted in this manner, and I'm a bit touchy about it.

As for the second point, it's self explanatory, he trivialized my request and might have cost me help that I needed.

[Updated on: Mon, 16 July 2012 07:15]

Report message to a moderator

Re: [WIP] - Fable SDK [message #66989 is a reply to message #66984] Mon, 16 July 2012 16:16 Go to previous messageGo to next message
jwc2200 is currently offline  jwc2200
Messages: 845
Registered: March 2008
Location: Texas

Administrator

EternalNoob wrote on Mon, 16 July 2012 05:28

(ie, wasting my time, and insulting my intelligence.)

You've done that yourself with that long draw out bitch post. Morerunes surely meant well, as you acknowledged, so the rest of your garbage about it was unnecessary. We want members that can do things like you are trying to do, but we don't want the unneeded attitude.


[Updated on: Mon, 16 July 2012 16:17]

Report message to a moderator

Re: [WIP] - Fable SDK [message #66999 is a reply to message #66984] Tue, 17 July 2012 14:02 Go to previous messageGo to next message
IDontKnow
Messages: 190
Registered: August 2010
Location: 127.0.0.1
EternalNoob wrote on Mon, 16 July 2012 11:28

bigger list


I shall have a look for it, when possible (I'm not using my 'usual' hard drive at the moment) if it doesn't exist on my hard drive (as in, if it got deleted - somehow), I will start work on creating a new one. Smile


27/4/11 23:XX (11:XX Pm) She went to a better place. 28/4/11 10:XX She was burried; RIP

Leren van de taal van Nederland is leuk.
Ik heb nog veel te leren, hoewel.

Tengo la ambición de aprender a español.
Yet I have no idea how to start.

[Updated on: Tue, 17 July 2012 14:02]

Report message to a moderator

Re: [WIP] - Fable SDK [message #67014 is a reply to message #66984] Thu, 19 July 2012 18:03 Go to previous messageGo to next message
morerunes is currently offline  morerunes
Messages: 2154
Registered: June 2007
Location: My desk

Administrator

EternalNoob wrote on Mon, 16 July 2012 05:28

I requested specific information, not instructions for finding the information. (ie, I don't remember saying 'or best offer' anywhere in my request.)


These are not the words one should use when trying to get more information out of somebody, f.y.i
It's not my responsibility to provide you with your every whim, I just told you something that I thought would help. If you had simply said in response, "That's not enough information, I really do need more specifics", then I would be free to either provide more specifics or leave it to other members of the forum to do the dirty work.

In that light, I do not mock you when I say that I am sorry my incomplete information provided you so much distress, just don't think that I am devaluing your work by providing anything less than a verbose summary of the game's inner workings.



I'll get to documenting some more stuff as I remember it and as I have the time, and once again, good luck on your project.


"All of the work, and none of the play, will surely provide for a speedy decay"
Re: [WIP] - Fable SDK [message #67036 is a reply to message #66480] Sun, 22 July 2012 00:27 Go to previous messageGo to next message
EternalNoob
Messages: 47
Registered: January 2006
Location: The Pit of Hell
Quote:


We want members that can do things like you are trying to do, but we don't want the unneeded attitude.



There are only a few ppl in the world willing\able to do this type of project. (I know most of them, btw,..)

Good luck finding that special someone. Wink

[Updated on: Sun, 22 July 2012 00:29]

Report message to a moderator

Re: [WIP] - Fable SDK [message #67040 is a reply to message #66480] Sun, 22 July 2012 15:21 Go to previous messageGo to next message
EternalNoob
Messages: 47
Registered: January 2006
Location: The Pit of Hell
I want to set the record straight.

I was hacking Fable as a purely academic exercise. (ie, to become a better hacker.)

I chose this game at random, and could have easily picked any other game, it was pure luck of the draw.

Anyways, seeing as I was already hacking the game, and was aware of your previous attempts to do so, I decided to share my work with you.

In other words, I'm doing this project solely for your benefit, it's not something that I actually want to do.

You seem to think that this is my project, but, in reality, it's your project, and I'm doing all the work for you, since you lack the skills.

---

I hope this clears up some of the misunderstandings we've been having recently.

I'm open to discussion, but, if I'm to continue working on this project, I will require a much greater level of cooperation on your part.


Whether you think you can, or can't, you're right.
Re: [WIP] - Fable SDK [message #67042 is a reply to message #67040] Sun, 22 July 2012 17:39 Go to previous messageGo to next message
morerunes is currently offline  morerunes
Messages: 2154
Registered: June 2007
Location: My desk

Administrator

Quote:

it's not something that I actually want to do


Then don't do it. I think it's really neat, cool stuff, but it doesn't matter what I think. Don't spend you time doing something you dislike if you don't have to, find something that's fun to do with your free time. Obviously this project is making you unhappy.


"All of the work, and none of the play, will surely provide for a speedy decay"
Re: [WIP] - Fable SDK [message #67044 is a reply to message #67040] Sun, 22 July 2012 20:16 Go to previous messageGo to next message
jwc2200 is currently offline  jwc2200
Messages: 845
Registered: March 2008
Location: Texas

Administrator

EternalNoob wrote on Sun, 22 July 2012 17:21


I'm open to discussion, but, if I'm to continue working on this project, I will require a much greater level of cooperation on your part.

I think there has been enough discussion. Thank you for your condescension and gtfo.


Re: [WIP] - Fable SDK [message #67290 is a reply to message #66480] Tue, 04 September 2012 23:27 Go to previous message
infoleather is currently offline  infoleather
Messages: 3
Registered: September 2012
Location: New York
Marco Polo is in the last year, a few days, he has done one previously thought impossible some great information.
Previous Topic: Armour with dynamic capes
Next Topic: Fable: Fallout
Goto Forum:
  


Current Time: Sat Nov 23 04:41:07 PST 2024

Total time taken to generate the page: 0.12695 seconds