Quantcast
Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
    1. Welcome to GTAForums!

    2. News

    1. Red Dead Redemption 2

      1. News
      2. Red Dead Online
      3. The Armadillo Inn
    1. GTA Online

      1. After Hours
      2. Find Lobbies & Players
      3. Guides & Strategies
      4. Vehicles
      5. Content Creator
      6. 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. 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

Alexander Blade

[V] Script/Native Documentation and Research

Recommended Posts

unknown modder

 

Will the Natives Parameters will be solved because in GTA IV most of the natives have no documentation for paramaters. and is c++ and c are the same?

I know c# i 've studied it very well. Will it be easy for c# users to code c++. i 've heard alot that c# is very similar to c++ and javascript lua.

VECTOR3
this was from Scripthookdotnet. it is wierd for a 5 years game development to use the same param and functions as gta iv but Both are the same era as well as Alexander said that all Rage Games uses the Same Byte Code but i still feel it may be had been changed to be
VECTOR6
native documentation can be done automatically through checking what arguments are pushed into natives. However knowing the arguments mean must be manually done

Share this post


Link to post
Share on other sites
Noox

 

Will the Natives Parameters will be solved because in GTA IV most of the natives have no documentation for paramaters. and is c++ and c are the same?

I know c# i 've studied it very well. Will it be easy for c# users to code c++. i 've heard alot that c# is very similar to c++ and javascript lua.

VECTOR3

this was from Scripthookdotnet. it is wierd for a 5 years game development to use the same param and functions as gta iv but Both are the same era as well as Alexander said that all Rage Games uses the Same Byte Code but i still feel it may be had been changed to be

VECTOR6

Do you even know what a vector is?

I won't explain because it's hard but it's 3 because of the axis, X, Y and Z.

Edited by Noox

Share this post


Link to post
Share on other sites
LordOfTheBongs

i see a post of mine was deleted... looks like die Fuhrer of GTAForums was not pleased with my comment

 

HEIL MEIN FUHRER OF GTAFORUMS.. sorry for my insolence

Share this post


Link to post
Share on other sites
unknown modder

 

 

Will the Natives Parameters will be solved because in GTA IV most of the natives have no documentation for paramaters. and is c++ and c are the same?

I know c# i 've studied it very well. Will it be easy for c# users to code c++. i 've heard alot that c# is very similar to c++ and javascript lua.

VECTOR3

this was from Scripthookdotnet. it is wierd for a 5 years game development to use the same param and functions as gta iv but Both are the same era as well as Alexander said that all Rage Games uses the Same Byte Code but i still feel it may be had been changed to be

VECTOR6

Do you even know what a vector is?

I won't explain because it's hard but it's 3 because of the axis, X, Y and Z.

 

It looks like you don't know what a vector is.

A vector can have as many dimensions as you want, Vector 3 specifies a 3 dimensional vector (most useful because we live in a world with 3 spacial dimenions), but you can have a 6 dimensional vector if you want.

Share this post


Link to post
Share on other sites
Alexander Blade

That would be a 2d matrix already :D

Share this post


Link to post
Share on other sites
Noox

 

 

 

Will the Natives Parameters will be solved because in GTA IV most of the natives have no documentation for paramaters. and is c++ and c are the same?

I know c# i 've studied it very well. Will it be easy for c# users to code c++. i 've heard alot that c# is very similar to c++ and javascript lua.

VECTOR3

this was from Scripthookdotnet. it is wierd for a 5 years game development to use the same param and functions as gta iv but Both are the same era as well as Alexander said that all Rage Games uses the Same Byte Code but i still feel it may be had been changed to be

VECTOR6

Do you even know what a vector is?

I won't explain because it's hard but it's 3 because of the axis, X, Y and Z.

 

It looks like you don't know what a vector is.

A vector can have as many dimensions as you want, Vector 3 specifies a 3 dimensional vector (most useful because we live in a world with 3 spacial dimenions), but you can have a 6 dimensional vector if you want.

 

To be honest I didn't really know this about vectors as I've never been good with them but with how he said it could have been called vector6 because of a new version of vector.

Anyway, sorry for the misinformation.

Edited by Noox

Share this post


Link to post
Share on other sites
LordOfTheBongs

 

 

 

 

Will the Natives Parameters will be solved because in GTA IV most of the natives have no documentation for paramaters. and is c++ and c are the same?

I know c# i 've studied it very well. Will it be easy for c# users to code c++. i 've heard alot that c# is very similar to c++ and javascript lua.

VECTOR3

this was from Scripthookdotnet. it is wierd for a 5 years game development to use the same param and functions as gta iv but Both are the same era as well as Alexander said that all Rage Games uses the Same Byte Code but i still feel it may be had been changed to be

VECTOR6

Do you even know what a vector is?

I won't explain because it's hard but it's 3 because of the axis, X, Y and Z.

 

It looks like you don't know what a vector is.

A vector can have as many dimensions as you want, Vector 3 specifies a 3 dimensional vector (most useful because we live in a world with 3 spacial dimenions), but you can have a 6 dimensional vector if you want.

 

To be honest I didn't really know this about vectors as I've never been good with them but with how he said it could have been called vector6 because of a new version of vector.

Anyway, sorry for the misinformation.

 

it is just an object to keep track of some numbers... a vector is really just a number... example... -1 can be described as a length of 1 to the left so to describe orientation and position in a 3d world u need 3 vectors and in other situations u may need more vectors to work with so u can define a struct for it... for coding video games u should study vector math

Edited by LordOfTheBongs

Share this post


Link to post
Share on other sites
LordOfTheBongs

 

VECTOR6

 

hmmm i think ur onto something, i could see an upgraded gta world being something like this, of course im talking next gen here

 

image9.gif

Share this post


Link to post
Share on other sites
Frank.s

Looks like a gay ferris wheel: GTAVI confirmed for being programmed with gay ferris wheels! :lol:

 

Alexander + all the V and RAGE format reverse-engineerers - you're all f*cking amazing, i can't wait to futz about on GTAV scripting/3d modeling/etc thanks to the work you guys do. :^:

Edited by Frank.s

Share this post


Link to post
Share on other sites
SkyHunted

wow , i mean V Release is a few month from here , and even all the genius people are already havin' some research about the coding , all i can say is good luck guys ! , wish to see al of you in the V Coding/Modding scene soon !

Share this post


Link to post
Share on other sites
nixolas1

Really nice work Alexander Blade, good to see you're and other old guys are still going strong :)

Just wanted to comment on one thing, the copyright note in the decompiled script files, what's your intention with those?

I don't mean to say you dont deserve credit for decompiling the sco's, but I'm pretty sure the scripts themselves belong and are copyrighted by R*. (And I remember there being some fuzz about distributing the decompiled scos, or was that just using them to hack the game? :p)

Share this post


Link to post
Share on other sites
LordOfTheBongs

i guess translation deserves a ©

 

technically he wrote the decompiled scripts just not his original work... bah who cares this is a modding scene... nobody is suing anybody over this lol

Share this post


Link to post
Share on other sites
Compman

hey guys good ...hoping can mod gta 5 in c# like scripthook :D

Share this post


Link to post
Share on other sites
Alexander Blade

Compman

Itsn't C++ enough for ya ?

Share this post


Link to post
Share on other sites
Noox

It's perfect :D

Share this post


Link to post
Share on other sites
byteMe420

Compman

Itsn't C++ enough for ya ?

After scripting using the .net scripthook and using the c++ hook only, .net is much nicer.

Share this post


Link to post
Share on other sites
Alexander Blade

nicer does not mean better :lol:

Share this post


Link to post
Share on other sites
byteMe420

nicer does not mean better :lol:

I'm talking specifically about interacting with GTAIV engine using the c++ hook only or interacting through the .net scripthook.

 

The .Net hook DOES in fact make the scripters job easier and to me that is better. I'm not talking which language is better as we all know c++ has it's advantages and .Net has its advantages. Just talking about working with the 2 hooks available.

 

Not to mention the .Net hook allows me to reload scripts I'm working on in game. I love being able to Alt-Tab to VS, change code... compile with a post build event to install the dll and alt-Tab back into game within a few seconds. This is all a matter of how things were designed and the .Net hook is so much nicer.

Edited by byteMe420

Share this post


Link to post
Share on other sites
nkjellman

I have one concern.

 

GTA V is being rebuilt from the ground up for PC, Xbox One, and PS4. Not ported. As you said, GTA V is already using up most of its natives. Aren't you worried that they may all be different than the console version? As they are labeled hashes, I have a feeling that the values may change with the enhancements made. This version of the game looks much more different than any past GTA release did in its original release vs its later release on a new platform. Heck, this is the first GTA to release on two generations(Not counting old games running on newer consoles). I have a feeling that that there will be a lot of differences in the next gen/PC version of the game compared to the last gen version. But I do think that the data files will be the same format though, but the more hard coded stuff, and more complex file formats that requires tools to be made are going to be modified. I bet you that the shaders are going to work differently as well.

 

However, keep up the good work. Even if the PC version ends up being different deep in the code, I bet there will be similarities that will make the work done here a benefit when it comes to cracking down the PC version.

Share this post


Link to post
Share on other sites
Alexander Blade

Lets say that x360 version is a port of PC/x1 version :)

Share this post


Link to post
Share on other sites
stef538

I kinda agree with ByteMe420, .Net scripthook is easier to use.. but that's just my opinion.

Share this post


Link to post
Share on other sites
Aleph-Zero

Once there's a C++ scripthook, it's just a matter of days or a week to make a .Net scripthook.

Share this post


Link to post
Share on other sites
sjaak327

 

nicer does not mean better :lol:

I'm talking specifically about interacting with GTAIV engine using the c++ hook only or interacting through the .net scripthook.

 

The .Net hook DOES in fact make the scripters job easier and to me that is better. I'm not talking which language is better as we all know c++ has it's advantages and .Net has its advantages. Just talking about working with the 2 hooks available.

 

Not to mention the .Net hook allows me to reload scripts I'm working on in game. I love being able to Alt-Tab to VS, change code... compile with a post build event to install the dll and alt-Tab back into game within a few seconds. This is all a matter of how things were designed and the .Net hook is so much nicer.

 

Aru's hook also has the ability to reload on the fly. I prefer the c++ hook over a.net precisely because it allows for more freedom, including the ability to call natives by hash. And it doesn't add another dependency just because it is easier to use, easy doesn't mean it is better. Edited by sjaak327

Share this post


Link to post
Share on other sites
byteMe420

 

 

nicer does not mean better :lol:

I'm talking specifically about interacting with GTAIV engine using the c++ hook only or interacting through the .net scripthook.

 

The .Net hook DOES in fact make the scripters job easier and to me that is better. I'm not talking which language is better as we all know c++ has it's advantages and .Net has its advantages. Just talking about working with the 2 hooks available.

 

Not to mention the .Net hook allows me to reload scripts I'm working on in game. I love being able to Alt-Tab to VS, change code... compile with a post build event to install the dll and alt-Tab back into game within a few seconds. This is all a matter of how things were designed and the .Net hook is so much nicer.

 

Aru's hook also has the ability to reload on the fly. I prefer the c++ hook over a.net precisely because it allows for more freedom, including the ability to call natives by hash. And it doesn't add another dependency just because it is easier to use, easy doesn't mean it is better.

 

what freedom do u gain i wonder? how do u reload asi scripts then?

 

plus i like c#... it really depends on what u like to code in

Edited by byteMe420

Share this post


Link to post
Share on other sites
PhillBellic

You guys are brilliant. Was scripting for IV as advanced as we are now for V? I'd imagine that in early IV scripting things were 'barren' and as a result things were very basic.

 

With this advanced research we will be able to have more feature rich scripts such as SNT and the scripthooks.

 

Cheers.

Share this post


Link to post
Share on other sites
Rugz007

Yeah :D

 

I am going for .net script hook

 

But for c++ scripter it's c++ scripthook

Edited by Rugz007

Share this post


Link to post
Share on other sites
Maro Hannover

I like c++ more

Share this post


Link to post
Share on other sites
Noox

I like c++ more

Why?

Share this post


Link to post
Share on other sites
Alexander Blade

There is straight hierarchy for this , which excludes multiply script engines at all , for example

 

- c++ script engine

--- c++ plugin (1) (i.e. carspawner.asi)

--- .net wrapper built on top of the c++ plugin (2) (i.e. trainer.asi)

----- corresponding script for this wrapper (i.e. trainer.net -- as you can see corresponding file has the same name as the wrapper)

--- the same .net wrapper built on top of the c++ plugin (3) (i.e. coolplugin.asi)

----- corresponding script for this wrapper (i.e. coolplugin.net -- same as above)

 

The goal is to make everything version independent and as much compatible as possible , the only thing that will be changing is the script engine on top of this hierarchy . If we are talking about .net then script developer publishes his script (coolplugin.net) in pair with the wrapper it was written for (coolplugin.asi) , so for the end user there is no difference between installing c++ plugin (carspawner.asi) and installing .net one (coolplugin.asi + coolplugin.net) , meanwhile wrapper developer shouldn't maintain backward compatibility for a scripts his wrapper is running .

 

So if someone will want to build .net/javascript/python script engine for GTA V the only thing he will need to do is to build a wrapper on top of the c++ plugin .

Edited by Alexander Blade

Share this post


Link to post
Share on other sites
Maro Hannover

I like c++ because in c++ we can recreate original game scripts and ingame there were many amazing things and also connected animations like the man stealing bicycle from the women in bus assasination mission etc. i was looking at the scripts and i began to understand. THe big problem is there are thousands of useless lines in the file all are + - + 0xc bit and strange things

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

  • 4 Users Currently Viewing
    0 Members, 0 Anonymous, 4 Guests

×

Important Information

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