Quantcast
Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
    1. Welcome to GTAForums!   (84,694 visits to this link)

    2. News

    1. GTA Online

      1. Find Lobbies & Players
      2. Guides & Strategies
      3. Vehicles
      4. Content Creator
      5. Help & Support
    2. Crews

      1. Events
      2. Recruitment
    1. Grand Theft Auto Series

    2. GTA Next

    3. GTA V

      1. PC
      2. Guides & Strategies
      3. Help & Support
    4. GTA IV

      1. Episodes from Liberty City
      2. Multiplayer
      3. Guides & Strategies
      4. Help & Support
      5. GTA Mods
    5. GTA Chinatown Wars

    6. GTA Vice City Stories

    7. GTA Liberty City Stories

    8. GTA San Andreas

      1. Guides & Strategies
      2. Help & Support
      3. GTA Mods
    9. GTA Vice City

      1. Guides & Strategies
      2. Help & Support
      3. GTA Mods
    10. GTA III

      1. Guides & Strategies
      2. Help & Support
      3. GTA Mods
    11. Top Down Games

      1. GTA Advance
      2. GTA 2
      3. GTA
    12. Wiki

      1. Merchandising
    1. GTA Modding

      1. GTA V
      2. GTA IV
      3. GTA III, VC & SA
      4. Tutorials
    2. Mod Showroom

      1. Scripts & Plugins
      2. Maps
      3. Total Conversions
      4. Vehicles
      5. Textures
      6. Characters
      7. Tools
      8. Other
      9. Workshop
    3. Featured Mods

      1. DYOM
      2. OpenIV
      3. GTA: Underground
      4. GTA: Liberty City
      5. GTA: State of Liberty
    1. Red Dead Redemption 2

    2. Red Dead Redemption

    3. Rockstar Games

    1. Off-Topic

      1. General Chat
      2. Gaming
      3. Technology
      4. Programming
      5. Movies & TV
      6. Music
      7. Sports
      8. Vehicles
    2. Expression

      1. Graphics / Visual Arts
      2. GFX Requests & Tutorials
      3. Writers' Discussion
      4. Debates & Discussion
    1. Forum Support

    2. Site Suggestions

guard3

Vice City Stories GAME.DTZ

Recommended Posts

guard3

Hello again.

I don't have anything new, I just wanted to say that I'm rewriting my python scripts. If I am to continue the work, I need to be tidy :)

This is a chance for me to upload generated ipl files:

BUILDINGS.IPL

DUMMYS.IPL

 

EDIT: Speaking of Python Scripts... http://www.mediafire.com/file/sm4k5mpvsw422c9/ipl.py

I finally got writing to file right! This is just IPL for the time being, the rest is in the works. Note that you need Python 3.6 to run this thing. Enter the path of decompressed GAME.DTZ, then the path of the folder you want the ipl files to be generated (it must be something like C:/blah/blah/ don't forget the slash at the end) I think it works with LCS too...

Edited by guard3

Share this post


Link to post
Share on other sites
guard3

Handling.cfg updated, format similar (if not identical to SA)

4b	float	?4b	float	?4b	float	?4b	float	?4b	float	?4b	float	?4b	float	?4b	float	?4b	float	?4b	float	?4b	float	?4b	float	?4b	float	?4b	float	?4b	float	?4b	float	?4b	float	?4b	float	?4b	float	?4b	float	P	TransmissionData.fEngineInertia4b	float	?4b	float	?4b	float	?1b	char	Q	TransmissionData.nDriveType1b	char	R	TransmissionData.nEngineType1b	int	M	TransmissionData.nNumberOfGears1b	-	-	Padding4b	float	?4b	float	T	fBrakeBias4b	float	V	fSteeringLock4b	float	K	fTractionLoss4b	float	L	fTractionBias4b	float	a	fSuspensionForceLevel4b	float	b	fSuspensionDampingLevel4b	float	d	suspension upper limit4b	float	e	suspension lower limit4b	float	f	suspension bias between front and rear4b	float	g	suspension anti-dive multiplier4b	float	aa	fSeatOffsetDistance4b	int	ac	nMonetaryValue1b	int	ah	front lights1b	int	ai	rear lights2b	-		Padding4b	float	D	fDragMult	4b  -			Padding (maybe...)4b	float	F	CentreOfMass.x4b	float	G	CentreOfMass.y4b	float	H	CentreOfMass.z4b	float		CentreOfMass.w4b	int	I	nPercentSubmerged4b	float	?4b	float	N	TransmissionData.fMaxVelocity4b	float	B	fMass4b	float	C	fTurnMass4b	float	J	fTractionMultiplier4b	float	?4b	int	ag	handlingFlags4b	int	af	modelFlags12b	-		PaddingBIKE:4b	float	B	LeanFwdCOM4b	float	C	LeanFwdForce4b	float	D	LeanBakCOM4b	float	E	LeanBackForce4b	float	F	MaxLean		(sine)4b	float	G	FullAnimLean	(tangent)4b	float	H	DesLean4b	float	I	SpeedSteer4b	float	J	SlipSteer4b	float	K	NoPlayerCOMz4b	float	L	WheelieAng	(sine)4b	float	M	StoppieAng	(sine)4b	float	N	WheelieSteer4b	float	O	WheelieStabMult4b	float	P	StoppieStabMult4b	-		PaddingFLYING:4b	float	B	Thrust4b	float	C	ThrustFallOff4b	float	D	Yaw4b	float	E	YawStab4b	float	F	SideSlip4b	float	G	Roll4b	float	H	RollStab4b	float	I	Pitch4b	float	J	PitchStab4b	float	K	FormLift4b	float	L	AttackLift4b	float	P	MoveRes4b	float	Q	TurnRes.x4b	float	R	TurnRes.y4b	float	S	TurnRes.z4b	float		TurnRes.w4b	float	T	SpeedRes.x4b	float	U	SpeedRes.y4b	float	V	SpeedRes.z4b	float		SpeedRes.w4b	float	M	GearUpR4b	float	N	GearDownL4b	float	O	WindMult4b	-		PaddingBOAT:4b	float	B	ThrustY4b	float	C	ThrustZ4b	float	D	ThrustAppZ4b	float	E	AqPlaneForce4b	float	F	AqPlaneLimit4b	float	G	AqPlaneOffset4b	float	H	WaveAudioMult4b	float	O	Look_L_R_BehindCamHeight4b	float	I	MoveResX4b	float	J	MoveResY4b	float	K	MoveResZ4b	float		MoveResW4b	float	L	TurnResX4b	float	M	TurnResY4b	float	N	TurnResZ4b	float		TurnResW4b	float	?4b	float	?4b	float	?4b	float	?4b	float	?4b	float	?4b	float	?4b	float	?4b	float	?4b	float	?4b	float	?4b	float	?4b	float	?4b	float	?4b	float	?4b	float	?4b	float	?4b	float	?4b	float	?4b	float	?4b	float	?4b	float	?4b	float	?4b	float	?4b	float	?4b	float	?4b	float	?4b	float	?

Share this post


Link to post
Share on other sites
cj2000

Interesting.

Share this post


Link to post
Share on other sites
denis1379

I think its made it from gta3 to bring new expierience

Edited by denis1379

Share this post


Link to post
Share on other sites
denis1379

Its very similar to SA but data always growing with each game from III to SA - look https://www.gtamodding.com/wiki/Handling.cfg

 

This is maybe opcodes not work and have small move. Each version needs special functions

Edited by denis1379

Share this post


Link to post
Share on other sites
Razor_BladePL

Wow you'r such an expert by telling this Guard3. Wow :facedesk:

Share this post


Link to post
Share on other sites
MAJEST1C_R3
Posted (edited)

few handling updates

0x0  4b	float	?       =-0.2 for cars and -0.05 for bikes (set by engine)0x4  4b	float	?       = 0xBC23D70A (set by engine)0x8  4b	float	?       =-0.2 for cars and -0.05 for bikes (set by engine)0xC  4b	float	?       Unknown, Gear 1 ratio0x10 4b	float	?       Unknown, Gear 1 ratio0x14 4b	float	?       = 0xBC23D70A (set by engine)0x18 4b	float	?       Unknown, Gear 2 ratio0x1C 4b	float	?       Unknown, Gear 2 ratio0x20 4b	float	?       Unknown, Gear 2 ratio0x24 4b	float	?       Unknown, Gear 3 ratio0x28 4b	float	?       Unknown, Gear 3 ratio0x2C 4b	float	?       Unknown, Gear 3 ratio0x30 4b	float	?       Unknown, Gear 4 ratio0x34 4b	float	?       Unknown, Gear 4 ratio0x38 4b	float	?       Unknown, Gear 4 ratio0x3C 4b	float	?       Unknown, Gear 5 ratio0x40 4b	float	?       Unknown, Gear 5 ratio0x44 4b	float	?       Unknown, Gear 5 ratio0x48 4b	float	N       fEngineAcceleration; fEngineAcceleration=fEngineAcceleration*12500(*2 for 4wd vehicles)0x4C 4b	float	P	TransmissionData.fEngineInertia0x50 4b	float	?       Unknown, seems to be max gear ratio (all gear ratios are calculated using this value and number of gears)0x54 4b	float	?       value above /1.20x58 4b	float	?       =-0.2 for cars and -0.05 for bikes (set by engine)0x5C 1b	char	Q	TransmissionData.nDriveType0x5D 1b	char	R	TransmissionData.nEngineType0x5E 1b	int	M	TransmissionData.nNumberOfGears0x5F 1b	-	-	Padding0x60 4b	float	R       fBrakeDeceleration; fBrakeDeceleration=fBrakeDeceleration*25000x64 4b	float	T	fBrakeBias0x68 4b	float	V	fSteeringLock0x6C 4b	float	K	fTractionLoss0x70 4b	float	L	fTractionBias0x74 4b	float	a	fSuspensionForceLevel0x78 4b	float	b	fSuspensionDampingLevel0x7C 4b	float	d	suspension upper limit0x80 4b	float	e	suspension lower limit0x84 4b	float	f	suspension bias between front and rear0x88 4b	float	g	suspension anti-dive multiplier0x8C 4b	float	aa	fSeatOffsetDistance0x90 4b	int	ac	nMonetaryValue0x94 1b	int	ah	front lights0x95 1b	int	ai	rear lights0x96 2b	-		Padding0x98 4b	float	D	fDragMult	0x9C 4b  -		Padding (maybe...)0xA0 4b	float	F	CentreOfMass.x0xA4 4b	float	G	CentreOfMass.y0xA8 4b	float	H	CentreOfMass.z0xAC 4b	-               padding0xB0 4b	int	I	nPercentSubmerged0xB4 4b	float	?       = fMass*0.8/nPercentSubmerged0xB8 4b	float	N	TransmissionData.fMaxVelocity0xBC 4b	float	B	fMass0xC0 4b	float	C	fTurnMass0xC4 4b	float	J	fTractionMultiplier0xC8 4b	float	Y       fCollisionDamageMultiplier; fCollisionDamageMultiplier=fMass/2000*fCollisionDamageMultiplier0xCC 4b	int	ag	handlingFlags0xD0 4b	int	af	modelFlags0xD4 12b	-	Padding

Also interesting thing about value at 0x50. seems to be engine divided some value to 180.0 to get it (or multiplied with 5,5555556901e-3 according to function)

Edited by MAJEST1C_R3

Share this post


Link to post
Share on other sites
guard3

Good find :^:

Share this post


Link to post
Share on other sites
guard3
Posted (edited)

Actually, something about this:

4b	float	G	FullAnimLean	(tangent)

I guess the game does something like this (pure guess, as it produces nice round numbers that match SA)

4b	float	G	FullAnimLean = arcsin(FullAnimLean / xxxx) * xxxx

2500 works :p

Edited by guard3

Share this post


Link to post
Share on other sites
Alek-say

Impressive work, guys!
Are you working on extracting only the gameplay functionality (vehicle handlings, weapons adjustings, etc) or there is a small probability of getting the missions without VCS mobile version?

Share this post


Link to post
Share on other sites
guard3

Considering this thread is about GAME.DTZ, then no :)

Share this post


Link to post
Share on other sites
guard3
Posted (edited)

0xC0 points to the offset of WEAPON.DAT
The first int is the offset to the actual weapon data. Each "line" is given an ID starting from 0 (that ID is linked to weapon IDE)

4b	int	a	Flags4b	int	B	Fire type4b	float	C	Range4b	int	D	Firing Rate4b	int	E	Reload4b	int	F	Amount of Ammunition4b	int	G	Damage4b	float	H	Speed4b	float	I	Radius4b	float	J	Life span4b	float	K	Spread4b	-		Padding4b	float	L	Fire offset X4b	float	M	Fire offset Y4b	float	N	Fire offset Z4b	float		Fire offset W4b	int	P	Anim ID4b	float	R	* animation loop start4b	float	S	* animation loop end4b	float	T	* point in animation where weapon is fired4b	float	U	* animation2 loop start4b	float	V	* animation2 loop end4b	float	W	* point in animation2 where weapon is fired4b	float	X	* point in anim where we can breakout of anim/attack and run away4b	int	Y	model id (IDE)4b	int	Z	model id 2 (IDE)4b	int	b	Weapon Slot4b	-		Padding

Data marked with * needs to be multiplied by 30.0 to get original value

Edited by guard3

Share this post


Link to post
Share on other sites
cj2000

0xC0 points to the offset of WEAPON.DAT

The first int is the offset to the actual weapon data. Each "line" is given an ID starting from 0 (that ID is linked to weapon IDE)

4b	int	a	Flags4b	int	B	Fire type4b	float	C	Range4b	int	D	Firing Rate4b	int	E	Reload4b	int	F	Amount of Ammunition4b	int	G	Damage4b	float	H	Speed4b	float	I	Radius4b	float	J	Life span4b	float	K	Spread4b	-		Padding4b	float	L	Fire offset X4b	float	M	Fire offset Y4b	float	N	Fire offset Z4b	float		Fire offset W4b	int	P	Anim ID4b	float	R	* animation loop start4b	float	S	* animation loop end4b	float	T	* point in animation where weapon is fired4b	float	U	* animation2 loop start4b	float	V	* animation2 loop end4b	float	W	* point in animation2 where weapon is fired4b	float	X	* point in anim where we can breakout of anim/attack and run away4b	int	Y	model id (IDE)4b	int	Z	model id 2 (IDE)4b	int	b	Weapon Slot4b	-		Padding

Data marked with * needs to be multiplied by 30.0 to get original value

The second int is also offset to some other weapon data. Also you forgot to mention the number of entries in weapon data.

Share this post


Link to post
Share on other sites
guard3
Posted (edited)

40 entries.

Now, what kind of weapon data is the second int? Feel free to post any extra info :)

Edited by guard3

Share this post


Link to post
Share on other sites
cj2000

40 entries.

Now, what kind of weapon data is the second int? Feel free to post any extra info :)

The second data contain exactly the same number of entries and has the same format, but the lines could have som diferent values. Have to check it.

Share this post


Link to post
Share on other sites
guard3
Posted (edited)

Actual value for Bouyance in OBJECT.DAT (Percent Submerged) is 0.8 * mass / bouyance

Edited by guard3

Share this post


Link to post
Share on other sites
guard3

If you want to take a look at some of the data, check DTZpy out :p

Share this post


Link to post
Share on other sites
guard3

Ok, so 0xF4 seems to be pointing to font data. It points to an array of 4 pointers, each pointing to an info section for each of the fonts. This info section looks like this:

2b	int	Total number of characters2b	int	Number of Controller Button Characters2b	int	? (Number of some character types)2b	int	? (Number of some character types)4b	int	Offset to Character Data 14b	int 	Offset to Character Data 21b	int	Font ID3b		Uninitialised Data (??)4b	int	?4b	int	?4b	int	?4b	float	?4b	int	?4b	int	?20b	string	Font Name4b	?	?4b	?	?4b	?	?4b	int	?

Character Data 1 has as many entries as there are characters for that specific font and has this format:

2b	int	?2b	int	Bottom Right X (pixel)2b	int	?2b	int	Bottom Right Y (pixel)2b	string	Character2b	int 	Top Left X (pixel)2b	int	Top Left Y (pixel)

Character Data 2, no idea; a bunch of numbers

 

So, let's put this info to practice and write something :p
hello.png

Share this post


Link to post
Share on other sites
guard3
Posted (edited)

Update on IDE vehicle section:

8b -4b int   offset to general handling data4b int   offset to bike handling data4b int   offset to plane handling data4b int   offset to boat handling data4b int   offset to jetski handling data4b int   offset to 6weelat handling data4b float How much the normals are splayed by to improve the environment mapping on PSP4b int   Type (0:car, 1:boat, 2:jetski, 3: train, 4:heli, 5:plane, 6:bike, 7: ferry, 8:bmx, 9:quad) 4b float Wheel Scale 14b float Wheel Scale 24b float headlights Position X4b float headlights Position Y4b float headlights Position Z4b float headlights Position w4b float taillights Position X4b float taillights Position Y4b float taillights Position Z4b float taillights Position W32b -4b float ped_frontseat Position X4b float ped_frontseat Position Y4b float ped_frontseat Position Z4b float ped_frontseat Position W4b float ped_backseat Position X4b float ped_backseat Position Y4b float ped_backseat Position Z4b float ped_backseat Position W4b float exhaust Position X4b float exhaust Position Y4b float exhaust Position Z4b float exhaust Position W128b -4b int   Comprules4b int   Unknown (the equivalent of wheel ID for bikes, otherwise =999.99)8b char  GXT Name1b int   ?1b int   number of colour sets1b int   ?18b -    Colour IDs247b     ?4b int   animBlock ID2b int   Wheel Model ID2b int   Frequency1b int   Number of doors1b int   Class ID (-1:ignore, 0:normal, 1:poorfamily, 2:richfamily, 3:executive, 4:worker, 5:big, 6:taxi, 7:moped, 8:motorbike, 9:leisureboat, 10:workerboat, 11:?, 12:?)2b int   Level12b ?4b int   Engine Far Sample4b int   Engine Near Sample4b int   Horn Sample4b int   Horn Frequency4b int   Siren Sample4b int   Siren Frequency4b int   Door Sample

The last 7 values are the "harcoded" sound data for each vehicle and of course has VC format. All credit goes to @Surya926 for discovering this! Thank you :)

 

And a little confirmation after editing that part of the IDE:

Edited by guard3

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×

Important Information

By using GTAForums.com, you agree to our Terms of Use and Privacy Policy.