NTAuthority 2,570 Posted August 2, 2014 Share Posted August 2, 2014 (edited) Every windows machine capable of running GTA V comes with .net framework installed.Not every version, however. Windows Vista ships 3.0, 7 ships 3.5, and 8+ only ship 4.5 by default. If one would target the 4.0 CLR, Vista/7 users would need an additional installation; and if one would target the 2.0 CLR 8.x users would need to install that CLR as well. Also .Net just blows everything else out of the water imo (in ease of use and libraries). So much stuff you don't have to worry about, you just need to worry about what your script will actually do. And in the meantime you're using parts of the BCL/FCL that aren't supposed to be used in a game at all, or worse: doing so on the main thread/doing bad things with attempting to multithread such. "plus eventually the game will be playable on *nix through wine, and using the scripthook.net bindings on wine is not easy" Even if they manage to run GTA V on linux, there's a big chance scripthook won't work. And if it does, there's mono which comes with the most popular distros. Native hooks overwriting code work perfectly fine on Wine, and Mono won't even remotely be able to run /clr-compiled code, and yet doesn't ship with either of the two most popular desktop distributions. Oh, and a .NET 'script hook' could be done with embedded Mono too, which a) resolves it not working on Wine and b) has all dependencies shipped locally. Sadly, most people are too ingrained with /clr to ever think about the consequences (including forcibly depending on the separate CRT installation for that VS version, which is a side-by-side mess) of doing so. gta iv under wine still runs on 5fps using good hardware , the only way to play it on wine was to use gallium-nine drivers with patched wine+ this is a pile of rubbish, a GTX 650 Ti can run it using WineD3D (not some weird state tracker that only works with broken and slow open source Mesa/Gallium/DRI driver stack) using the closed NVIDIA drivers at 30-40 fps on a 'normal' resolution with shadows disabled, and the Wine command buffer patch would only increase that performance. (and really, sh*tty IPB, breaking double posting and merging the posts and whining about a quote limit due to your forcibly-imposed merge? retarded forum software, really...) Edited August 2, 2014 by NTAuthority 2 Link to post Share on other sites
Aleph-Zero 1,257 Posted August 2, 2014 Share Posted August 2, 2014 "plus eventually the game will be playable on *nix through wine, and using the scripthook.net bindings on wine is not easy" Even if they manage to run GTA V on linux, there's a big chance scripthook won't work. And if it does, there's mono which comes with the most popular distros. Native hooks overwriting code work perfectly fine on Wine, and Mono won't even remotely be able to run /clr-compiled code, and yet doesn't ship with either of the two most popular desktop distributions. Last time i checked Ubuntu came with Mono pre-installed but looks like they stopped doing it in the newest versions. Still, it's in the repositories. Literally just a command away from being installed. Link to post Share on other sites
XeClutch 33 Posted August 3, 2014 Share Posted August 3, 2014 Every windows machine capable of running GTA V comes with .net framework installed. Not every version, however. Windows Vista ships 3.0, 7 ships 3.5, and 8+ only ship 4.5 by default. If one would target the 4.0 CLR, Vista/7 users would need an additional installation; and if one would target the 2.0 CLR 8.x users would need to install that CLR as well. If they have Windows Update installed then it would automatically update itself. Link to post Share on other sites
Alexander Blade 1,407 Posted August 3, 2014 Author Share Posted August 3, 2014 Let's stick to the topic plz 2 Link to post Share on other sites
Rugz007 32 Posted August 9, 2014 Share Posted August 9, 2014 So which language is gta 5 modding is going to be ? Link to post Share on other sites
aru 15 Posted August 10, 2014 Share Posted August 10, 2014 So which language is gta 5 modding is going to be ? I vote JavaScript on V8. You may think I'm joking -- I'm actually semi-serious... I personally think we should evolve as modders, not repeat the same hack. ScriptHook was an evolution from our old modding ways of monkey patching raw SCM assembly. The only way this road should lead is forward. Link to post Share on other sites
Alexander Blade 1,407 Posted August 10, 2014 Author Share Posted August 10, 2014 So which language is gta 5 modding is going to be ? I vote JavaScript on V8. You may think I'm joking -- I'm actually semi-serious... I personally think we should evolve as modders, not repeat the same hack. ScriptHook was an evolution from our old modding ways of monkey patching raw SCM assembly. The only way this road should lead is forward. http://gtaforums.com/topic/717612-scriptnative-documentation-and-research/page-2?do=findComment&comment=1065742778 I agree that as the result we can end up with large JS framework for GTA V , the goal of JS must be in using classes and not in using natives , like it was for .net script hook , thats why in order to get there we must have at least half of the natives fully described and verified , we don't have this now . For now focus is on natives and C++ perfectly suits the task , and the header with natives can be easily reparsed into another language when there will be enough natives to reparse from . 1 Link to post Share on other sites
aru 15 Posted August 10, 2014 Share Posted August 10, 2014 (edited) http://gtaforums.com/topic/717612-scriptnative-documentation-and-research/page-2?do=findComment&comment=1065742778 I agree that as the result we can end up with large JS framework for GTA V , the goal of JS must be in using classes and not in using natives , like it was for .net script hook , thats why in order to get there we must have at least half of the natives fully described and verified , we don't have this now . For now focus is on natives and C++ perfectly suits the task , and the header with natives can be easily reparsed into another language when there will be enough natives to reparse from . I agree that the focus we have now is correct -- we should primarily be focusing on research and not the implementation. As for the scripting engine / hierarchy / etc, the idea is good -- I like it. However, I also think the general API structure should be the same regardless of the language we use for scripting. i.e., for JS, you may do: var vehicle = new Vehicle(...);Player.ped.setIntoVehicle(vehicle, 1); In C#, the API would be: var vehicle = new Vehicle(...);Player.Ped.SetIntoVehicle(vehicle, 1); in C++, the final interfacing API should be just be the following. We could still have the base low level API (as in your .h file), but the ideal point of interaction should just be: shared_ptr<Vehicle> vehicle = new Vehicle(...);Player::getPed().setIntoVehicle(vehicle, 1); So, we end up with one set of documentation, one unified API, regardless of language. Of course, it would take considerable effort from the interface makers to conform to this structure, but if its well established enough, I think we can get buy-in from everyone. Since this is purely a design exercise, we might as well start writing up a Wiki doc detailing such an object oriented API. Edited August 10, 2014 by aru 2 Link to post Share on other sites
NTAuthority 2,570 Posted August 10, 2014 Share Posted August 10, 2014 (edited) void NETWORK_SET_KEEP_FOCUSPOINT(Any p0, Any p1); // 0x075321B5 this seems wrong, why would a function with that name call rage::snJoinSessionTask::snJoinSessionTask in functions called by it? (hm, it actually does seem right from its script usage almost... I guess it's just my PPC reading being wrong, or something wrongly being hashed/named somewhere) Edited August 10, 2014 by NTAuthority Link to post Share on other sites
Alexander Blade 1,407 Posted August 10, 2014 Author Share Posted August 10, 2014 (edited) we might as well start writing up a Wiki doc detailing such an object oriented API. The only one question is when gtamodding wiki will be open for editing void NETWORK_SET_KEEP_FOCUSPOINT(Any p0, Any p1); // 0x075321B5 this seems wrong, why would a function with that name call rage::snJoinSessionTask::snJoinSessionTask in functions called by it? (hm, it actually does seem right from its script usage almost... I guess it's just my PPC reading being wrong, or something wrongly being hashed/named somewhere) Just looked there , name is not correct anyway because native is Voice related Edited August 10, 2014 by Alexander Blade Link to post Share on other sites
identitymatrix 21 Posted August 12, 2014 Share Posted August 12, 2014 we might as well start writing up a Wiki doc detailing such an object oriented API. The only one question is when gtamodding wiki will be open for editing void NETWORK_SET_KEEP_FOCUSPOINT(Any p0, Any p1); // 0x075321B5 this seems wrong, why would a function with that name call rage::snJoinSessionTask::snJoinSessionTask in functions called by it? (hm, it actually does seem right from its script usage almost... I guess it's just my PPC reading being wrong, or something wrongly being hashed/named somewhere) Just looked there , name is not correct anyway because native is Voice related Maybe we need ask? Link to post Share on other sites
identitymatrix 21 Posted August 12, 2014 Share Posted August 12, 2014 So which language is gta 5 modding is going to be ? I vote JavaScript on V8. You may think I'm joking -- I'm actually semi-serious... I personally think we should evolve as modders, not repeat the same hack. ScriptHook was an evolution from our old modding ways of monkey patching raw SCM assembly. The only way this road should lead is forward. I agree, JavaScript would be a great scripting language, but some of the best scripters aren't familiar with it as it is primarily a web language. I just hope the clever guys will make some language wrappers, because I'm screwed if I know how to do that. What ever happened to Hazardx. Has he left the GTA IV modding scene? Link to post Share on other sites
Alexander Blade 1,407 Posted August 12, 2014 Author Share Posted August 12, 2014 Has he left the GTA IV modding scene? You can write him on twitter and ask https://twitter.com/codeapparat Link to post Share on other sites
identitymatrix 21 Posted August 12, 2014 Share Posted August 12, 2014 Has he left the GTA IV modding scene? You can write him on twitter and ask https://twitter.com/codeapparat I had in the past, but he doesn't answer anymore. Without him .net scripting wouldn't be and that would be a shame. Last time he answered, it was about 1.5 years ago saying something on lines of: " I got bored and I moved on to new things. I'd like to work on GTA V, but we'll see. " Link to post Share on other sites
byteMe420 64 Posted August 12, 2014 Share Posted August 12, 2014 (edited) So which language is gta 5 modding is going to be ? I vote JavaScript on V8. You may think I'm joking -- I'm actually semi-serious... I personally think we should evolve as modders, not repeat the same hack. ScriptHook was an evolution from our old modding ways of monkey patching raw SCM assembly. The only way this road should lead is forward. I agree, JavaScript would be a great scripting language, but some of the best scripters aren't familiar with it as it is primarily a web language. I just hope the clever guys will make some language wrappers, because I'm screwed if I know how to do that. What ever happened to Hazardx. Has he left the GTA IV modding scene? HazardX handed his source over to another dev and this person is updating the iv .net hook (unreleased) and researching the V hook. He already made a MP3 .net hook as part of his research for V. Edited August 12, 2014 by byteMe420 Link to post Share on other sites
identitymatrix 21 Posted August 12, 2014 Share Posted August 12, 2014 So which language is gta 5 modding is going to be ? I vote JavaScript on V8. You may think I'm joking -- I'm actually semi-serious... I personally think we should evolve as modders, not repeat the same hack. ScriptHook was an evolution from our old modding ways of monkey patching raw SCM assembly. The only way this road should lead is forward. I agree, JavaScript would be a great scripting language, but some of the best scripters aren't familiar with it as it is primarily a web language. I just hope the clever guys will make some language wrappers, because I'm screwed if I know how to do that. What ever happened to Hazardx. Has he left the GTA IV modding scene? HazardX handed his source over to another dev and this person is updating the iv .net hook (unreleased) and researching the V hook. He already made a MP3 .net hook as part of his research for V. What you mean 'MulleDK19' guy? He never bothered releasing the update he did. I have been waiting years for him to release it, but sadly I don't think he will. He also never answers my comments so I can't get any hints about what is happening with it. Link to post Share on other sites
Alexander Blade 1,407 Posted August 12, 2014 Author Share Posted August 12, 2014 (edited) HazardX handed his source over to another dev and this person is updating the iv .net hook (unreleased) and researching the V hook. He already made a MP3 .net hook as part of his research for V. MP3 has a different branch of R* script engine , it's an evolution of the one from GTA IV , while GTA V is using an RDR one as the base with specific for GTA features , it has nothing to do with MP3 at all . Edited August 12, 2014 by Alexander Blade Link to post Share on other sites
byteMe420 64 Posted August 12, 2014 Share Posted August 12, 2014 (edited) So which language is gta 5 modding is going to be ? I vote JavaScript on V8. You may think I'm joking -- I'm actually semi-serious... I personally think we should evolve as modders, not repeat the same hack. ScriptHook was an evolution from our old modding ways of monkey patching raw SCM assembly. The only way this road should lead is forward. I agree, JavaScript would be a great scripting language, but some of the best scripters aren't familiar with it as it is primarily a web language. I just hope the clever guys will make some language wrappers, because I'm screwed if I know how to do that. What ever happened to Hazardx. Has he left the GTA IV modding scene? HazardX handed his source over to another dev and this person is updating the iv .net hook (unreleased) and researching the V hook. He already made a MP3 .net hook as part of his research for V. What you mean 'MulleDK19' guy? He never bothered releasing the update he did. I have been waiting years for him to release it, but sadly I don't think he will. He also never answers my comments so I can't get any hints about what is happening with it. Yeah not sure, I know he is always adding stuff to it so I think when V comes out he will release it and be done with it. He probably doesn't want to do multiple releases or something. HazardX handed his source over to another dev and this person is updating the iv .net hook (unreleased) and researching the V hook. He already made a MP3 .net hook as part of his research for V. MP3 has a different branch of R* script engine , it's an evolution of the one from GTA IV , while GTA V is using an RDR one as the base with specific for GTA features , it has nothing to do with MP3 at all . That is nice to know as I really liked the RDR engine (was playing yesterday actually). Yeah I guess he was doing it out of boredom or for practice to be familiar for V. He was able to identify hashed gta v natives from MP3 native names so it actually has been helping his research. Edited August 12, 2014 by byteMe420 Link to post Share on other sites
identitymatrix 21 Posted August 12, 2014 Share Posted August 12, 2014 So which language is gta 5 modding is going to be ? I vote JavaScript on V8. You may think I'm joking -- I'm actually semi-serious... I personally think we should evolve as modders, not repeat the same hack. ScriptHook was an evolution from our old modding ways of monkey patching raw SCM assembly. The only way this road should lead is forward. I agree, JavaScript would be a great scripting language, but some of the best scripters aren't familiar with it as it is primarily a web language. I just hope the clever guys will make some language wrappers, because I'm screwed if I know how to do that. What ever happened to Hazardx. Has he left the GTA IV modding scene? HazardX handed his source over to another dev and this person is updating the iv .net hook (unreleased) and researching the V hook. He already made a MP3 .net hook as part of his research for V. What you mean 'MulleDK19' guy? He never bothered releasing the update he did. I have been waiting years for him to release it, but sadly I don't think he will. He also never answers my comments so I can't get any hints about what is happening with it. Yeah not sure, I know he is always adding stuff to it so I think when V comes out he will release it and be done with it. He probably doesn't want to do multiple releases or something. HazardX handed his source over to another dev and this person is updating the iv .net hook (unreleased) and researching the V hook. He already made a MP3 .net hook as part of his research for V. MP3 has a different branch of R* script engine , it's an evolution of the one from GTA IV , while GTA V is using an RDR one as the base with specific for GTA features , it has nothing to do with MP3 at all . That is nice to know as I really liked the RDR engine (was playing yesterday actually). Yeah I guess he was doing it out of boredom or for practice to be familiar for V. He was able to identify hashed gta v natives from MP3 native names so it actually has been helping his research. How do you know this? This guy stopped updating the thread where he took charge. Last comment on that post is someone asking for and update a year or so ago. Link to post Share on other sites
byteMe420 64 Posted August 12, 2014 Share Posted August 12, 2014 (edited) So which language is gta 5 modding is going to be ? I vote JavaScript on V8. You may think I'm joking -- I'm actually semi-serious... I personally think we should evolve as modders, not repeat the same hack. ScriptHook was an evolution from our old modding ways of monkey patching raw SCM assembly. The only way this road should lead is forward. I agree, JavaScript would be a great scripting language, but some of the best scripters aren't familiar with it as it is primarily a web language. I just hope the clever guys will make some language wrappers, because I'm screwed if I know how to do that. What ever happened to Hazardx. Has he left the GTA IV modding scene? HazardX handed his source over to another dev and this person is updating the iv .net hook (unreleased) and researching the V hook. He already made a MP3 .net hook as part of his research for V. What you mean 'MulleDK19' guy? He never bothered releasing the update he did. I have been waiting years for him to release it, but sadly I don't think he will. He also never answers my comments so I can't get any hints about what is happening with it. Yeah not sure, I know he is always adding stuff to it so I think when V comes out he will release it and be done with it. He probably doesn't want to do multiple releases or something. HazardX handed his source over to another dev and this person is updating the iv .net hook (unreleased) and researching the V hook. He already made a MP3 .net hook as part of his research for V. MP3 has a different branch of R* script engine , it's an evolution of the one from GTA IV , while GTA V is using an RDR one as the base with specific for GTA features , it has nothing to do with MP3 at all . That is nice to know as I really liked the RDR engine (was playing yesterday actually). Yeah I guess he was doing it out of boredom or for practice to be familiar for V. He was able to identify hashed gta v natives from MP3 native names so it actually has been helping his research. How do you know this? This guy stopped updating the thread where he took charge. Last comment on that post is someone asking for and update a year or so ago.I see him in irc, he has his own .net hook channel for people who need assistance with the current .net hook. Edited August 12, 2014 by byteMe420 Link to post Share on other sites
MulleDK19 138 Posted August 13, 2014 Share Posted August 13, 2014 (edited) I see him in irc, he has his own .net hook channel for people who need assistance with the current .net hook. Not only the .NET Script Hook. Edited August 13, 2014 by MulleDK19 1 Link to post Share on other sites
identitymatrix 21 Posted August 13, 2014 Share Posted August 13, 2014 I see him in irc, he has his own .net hook channel for people who need assistance with the current .net hook. Not only the .NET Script Hook. You're alive! So many questions! Link to post Share on other sites
Skorpro 129 Posted August 13, 2014 Share Posted August 13, 2014 Hi Alexander, hi @all! I've made a very simple (console) tool to create enums for C/C++. Make a text/data file with your models/natives etc. (like input example) and load it with this EnumGen to create a enums file (like output example). Note: I'm not sure GTA V is using the same hash algorithm like GTA IV but for the natives it seems to work (GET_PLAYER_PED => 0x6e31e993)... DOWNLOAD HERE Example Input (GTA V Vehicles) //---------CARSAIRTUGADDERAIRBUSAMBULANASEAASTEROPEBARRACKSBARRACKS2BIFFBALLERBALLER2BANSHEEBENSONBISONBFINJECTBJXLBLAZERBLAZER2BLISTABOBCATXLBODHI2BOXVILLEBUCCANEEBUFFALOBUFFALO2BULLETBURRITOBUSCADDYCADDY2CAMPERCARBONIZCAVCADECHEETAHCOACHCOGCABRIOCOMETCOQUETTECRUSADERDILETTANTEDOCKTUGDOMINATORDLOADERDUBSTADUNEDUNE2ELEGY2ENTITYXFEMPEROREXEMPLARF620FBIFBI2FBIOLDFELONFELON2FELTZERFLATBEDFIRETRUKFORKLIFTFQ2FUGITIVEFUTOFUSILADEGAUNTLETGBURRITOGRANGERGRESLEYHABANEROHANDLERHAULERHOTKNIFEINFERNUSINGOTINTRUDERISSIJACKALJB700JOURNEYKHAMELLANDSTALKERLGUARDMANANAMARBELLAMINIVANMIXERMIXER2MESAMULEMONROEMOWERNINEFORACLEORACLE2PACKERPBUSPHANTOMPATRIOTPENUMBRAPEYOTEPHOENIXPICADORPOLICEPOLICE2POLICE3POLICETPOLICEOLDPOLICEOL2PONYPOUNDERPRAIRIEPRANGERPREMIERPRIMORADIRANCHERXLRLOADERRAPIDGTREBELREGINARHAPSODYRIOTRIPLEYROCOTOROMERORUBBLERUINERRUMPOSADLERSABREGTSANDKINGSCHAFTER2SCHWARZESCRAPSENTINELSEMINOLESERRANOSERRANO2SHERIFFSPEEDOSTANIERSTINGERSTINGERGTSTOCKADESTRATUMSTRETCHSULTANSURANOSURFERSURGESUPERDTACOTAILGATETAXI2TIPTRUCKTIPTRUCK2TORNADOTOURBUSTOWTRUCKTOWTRUCK2TRASHTRACTORTRACTOR2URANUSUTILTRUCUTILTRUC2UTILTRUC3VACCAVIGEROVOODOO2VOLTICWASHINGTONYOUGAZTYPEZION//---------BIKESAKUMABAGGERBATICARBONDAEMONDOUBLEFAGGIOHEXERNEMESISPCJRUFFIANSANCHEZPOLICEBVADER//---------PEDALBIKESBMXCRUISERFIXTERSCORCHERTRIBIKE//---------AIRCRAFTCARGOPLANECUBAN800DUSTERLUXORJETLAZERSTUNTTITANSHAMALSPMEDSPSMALLMAMMATUSVELUM//---------TRAINSFREIGHTFREIGHTCARMETROTRAIN//---------TRAILERARMYTRAILERBALETRAILERBOATTRAILERDOCKTRAILERGRAINTRAILPROPTRAILERRAKETRAILERTANKERTRAILERLTRAILERTRAILER2TR2TR3TRFLATTRAILERSMAL//---------SPECIALBULLDOZECUTTERDUMPRHINOSUBMERSIBLE//---------BOATSDINGHYDINGHY2MARQUISPREDATORJETMAXSQUALOSUNTRAPSEASHARKTROPIC//---------HELIANNIHLBUZZARDBUZZARD2CARGOBOBFROGGERMAVERICKPOLMAVSKYLIFT//---------BLIMPBLIMP Example Output (GTA V Vehicles Enums) // Created with EnumGen by Skorproenum eHash{ //---------CARS MODEL_AIRTUG = 0x5D0AAC8F, MODEL_ADDER = 0xB779A091, MODEL_AIRBUS = 0x4C80EB0E, MODEL_AMBULAN = 0x6922CAEB, MODEL_ASEA = 0x94204D89, MODEL_ASTEROPE = 0x8E9254FB, MODEL_BARRACKS = 0xCEEA3F4B, MODEL_BARRACKS2 = 0x4008EABB, MODEL_BIFF = 0x32B91AE8, MODEL_BALLER = 0xCFCA3668, MODEL_BALLER2 = 0x8852855, MODEL_BANSHEE = 0xC1E908D2, MODEL_BENSON = 0x7A61B330, MODEL_BISON = 0xFEFD644F, MODEL_BFINJECT = 0x345EBF35, MODEL_BJXL = 0x32B29A4B, MODEL_BLAZER = 0x8125BCF9, MODEL_BLAZER2 = 0xFD231729, MODEL_BLISTA = 0xEB70965F, MODEL_BOBCATXL = 0x3FC5D440, MODEL_BODHI2 = 0xAA699BB6, MODEL_BOXVILLE = 0x898ECCEA, MODEL_BUCCANEE = 0xDB8AA7E0, MODEL_BUFFALO = 0xEDD516C6, MODEL_BUFFALO2 = 0x2BEC3CBE, MODEL_BULLET = 0x9AE6DDA1, MODEL_BURRITO = 0xAFBB2CA4, MODEL_BUS = 0xD577C962, MODEL_CADDY = 0x44623884, MODEL_CADDY2 = 0xDFF0594C, MODEL_CAMPER = 0x6FD95F68, MODEL_CARBONIZ = 0xAB7EC4DF, MODEL_CAVCADE = 0x1FD5D1FC, MODEL_CHEETAH = 0xB1D95DA0, MODEL_COACH = 0x84718D34, MODEL_COGCABRIO = 0x13B57D8A, MODEL_COMET = 0x3F637729, MODEL_COQUETTE = 0x67BC037, MODEL_CRUSADER = 0x132D5A1A, MODEL_DILETTANTE = 0xBC993509, MODEL_DOCKTUG = 0xCB44B1CA, MODEL_DOMINATOR = 0x4CE68AC, MODEL_DLOADER = 0x698521E3, MODEL_DUBSTA = 0x462FE277, MODEL_DUNE = 0x9CF21E0F, MODEL_DUNE2 = 0x1FD824AF, MODEL_ELEGY2 = 0xDE3D9D22, MODEL_ENTITYXF = 0xB2FE5CF9, MODEL_EMPEROR = 0xD7278283, MODEL_EXEMPLAR = 0xFFB15B5E, MODEL_F620 = 0xDCBCBE48, MODEL_FBI = 0x432EA949, MODEL_FBI2 = 0x9DC66994, MODEL_FBIOLD = 0x8F6ADC54, MODEL_FELON = 0xE8A8BDA8, MODEL_FELON2 = 0xFAAD85EE, MODEL_FELTZER = 0xBE9075F1, MODEL_FLATBED = 0x50B0215A, MODEL_FIRETRUK = 0x73920F8E, MODEL_FORKLIFT = 0x58E49664, MODEL_FQ2 = 0xBC32A33B, MODEL_FUGITIVE = 0x71CB2FFB, MODEL_FUTO = 0x7836CE2F, MODEL_FUSILADE = 0x1DC0BA53, MODEL_GAUNTLET = 0x94B395C5, MODEL_GBURRITO = 0x97FA4F36, MODEL_GRANGER = 0x9628879C, MODEL_GRESLEY = 0xA3FC0F4D, MODEL_HABANERO = 0x34B7390F, MODEL_HANDLER = 0x1A7FCEFA, MODEL_HAULER = 0x5A82F9AE, MODEL_HOTKNIFE = 0x239E390, MODEL_INFERNUS = 0x18F25AC7, MODEL_INGOT = 0xB3206692, MODEL_INTRUDER = 0x34DD8AA1, MODEL_ISSI = 0x730CE01F, MODEL_JACKAL = 0xDAC67112, MODEL_JB700 = 0x3EAB5555, MODEL_JOURNEY = 0xF8D48E7A, MODEL_KHAMEL = 0x4FE57110, MODEL_LANDSTALKER = 0x4BA4E8DC, MODEL_LGUARD = 0x1BF8D381, MODEL_MANANA = 0x81634188, MODEL_MARBELLA = 0x4DC293EA, MODEL_MINIVAN = 0xED7EADA4, MODEL_MIXER = 0xD138A6BB, MODEL_MIXER2 = 0x1C534995, MODEL_MESA = 0x36848602, MODEL_MULE = 0x35ED670B, MODEL_MONROE = 0xE62B361B, MODEL_MOWER = 0x6A4BD8F6, MODEL_NINEF = 0x3D8FA25C, MODEL_ORACLE = 0x506434F6, MODEL_ORACLE2 = 0xE18195B2, MODEL_PACKER = 0x21EEE87D, MODEL_PBUS = 0x885F3671, MODEL_PHANTOM = 0x809AA4CB, MODEL_PATRIOT = 0xCFCFEB3B, MODEL_PENUMBRA = 0xE9805550, MODEL_PEYOTE = 0x6D19CCBC, MODEL_PHOENIX = 0x831A21D5, MODEL_PICADOR = 0x59E0FBF3, MODEL_POLICE = 0x79FBB0C5, MODEL_POLICE2 = 0x9F05F101, MODEL_POLICE3 = 0x71FA16EA, MODEL_POLICET = 0x1B38E955, MODEL_POLICEOLD = 0x5C239DB6, MODEL_POLICEOL2 = 0x8847F602, MODEL_PONY = 0xF8DE29A8, MODEL_POUNDER = 0x7DE35E7D, MODEL_PRAIRIE = 0xA988D3A2, MODEL_PRANGER = 0x2C33B46E, MODEL_PREMIER = 0x8FB66F9B, MODEL_PRIMO = 0xBB6B404F, MODEL_RADI = 0x9D96B45B, MODEL_RANCHERXL = 0x6210CBB0, MODEL_RLOADER = 0xBD303B8, MODEL_RAPIDGT = 0x8CB29A14, MODEL_REBEL = 0xB802DD46, MODEL_REGINA = 0xFF22D208, MODEL_RHAPSODY = 0x322CF98F, MODEL_RIOT = 0xB822A1AA, MODEL_RIPLEY = 0xCD935EF9, MODEL_ROCOTO = 0x7F5C91F1, MODEL_ROMERO = 0x2560B2FC, MODEL_RUBBLE = 0x9A5B1DCC, MODEL_RUINER = 0xF26CEFF9, MODEL_RUMPO = 0x4543B74D, MODEL_SADLER = 0xDC434E51, MODEL_SABREGT = 0x9B909C94, MODEL_SANDKING = 0xB9210FD0, MODEL_SCHAFTER2 = 0xB52B5113, MODEL_SCHWARZE = 0xA7F873E0, MODEL_SCRAP = 0x9A9FD3DF, MODEL_SENTINEL = 0x50732C82, MODEL_SEMINOLE = 0x48CECED3, MODEL_SERRANO = 0x4FB1A214, MODEL_SERRANO2 = 0x3EA948D6, MODEL_SHERIFF = 0x9BAA707C, MODEL_SPEEDO = 0xCFB3870C, MODEL_STANIER = 0xA7EDE74D, MODEL_STINGER = 0x5C23AF9B, MODEL_STINGERGT = 0x82E499FA, MODEL_STOCKADE = 0x6827CF72, MODEL_STRATUM = 0x66B4FC45, MODEL_STRETCH = 0x8B13F083, MODEL_SULTAN = 0x39DA2754, MODEL_SURANO = 0x16E478C1, MODEL_SURFER = 0x29B0DA97, MODEL_SURGE = 0x8F0E3594, MODEL_SUPERD = 0x42F2ED16, MODEL_TACO = 0x744CA80D, MODEL_TAILGATE = 0x527649E0, MODEL_TAXI2 = 0x480DAF95, MODEL_TIPTRUCK = 0x2E19879, MODEL_TIPTRUCK2 = 0xC7824E5E, MODEL_TORNADO = 0x1BB290BC, MODEL_TOURBUS = 0x73B1C3CB, MODEL_TOWTRUCK = 0xB12314E0, MODEL_TOWTRUCK2 = 0xE5A2D6C6, MODEL_TRASH = 0x72435A19, MODEL_TRACTOR = 0x61D6BA8C, MODEL_TRACTOR2 = 0x843B73DE, MODEL_URANUS = 0x5B73F5B7, MODEL_UTILTRUC = 0xE981E1B2, MODEL_UTILTRUC2 = 0x7B562623, MODEL_UTILTRUC3 = 0x9A726473, MODEL_VACCA = 0x142E0DC3, MODEL_VIGERO = 0xCEC6B9B7, MODEL_VOODOO2 = 0x1F3766E3, MODEL_VOLTIC = 0x9F4B77BE, MODEL_WASHINGTON = 0x69F06B57, MODEL_YOUGA = 0x3E5F6B8, MODEL_ZTYPE = 0x2D3BD401, MODEL_ZION = 0xBD1B39C3, //---------BIKES MODEL_AKUMA = 0x63ABADE7, MODEL_BAGGER = 0x806B9CC3, MODEL_BATI = 0xF9300CC5, MODEL_CARBON = 0x9C2387D0, MODEL_DAEMON = 0x77934CEE, MODEL_DOUBLE = 0x9C669788, MODEL_FAGGIO = 0x9229E4EB, MODEL_HEXER = 0x11F76C14, MODEL_NEMESIS = 0xDA288376, MODEL_PCJ = 0xC9CEAF06, MODEL_RUFFIAN = 0xCABD11E8, MODEL_SANCHEZ = 0x2EF89E46, MODEL_POLICEB = 0xFDEFAEC3, MODEL_VADER = 0xF79A00F7, //---------PEDALBIKES MODEL_BMX = 0x43779C54, MODEL_CRUISER = 0x1ABA13B5, MODEL_FIXTER = 0xCE23D3BF, MODEL_SCORCHER = 0xF4E1AA15, MODEL_TRIBIKE = 0x4339CD69, //---------AIRCRAFT MODEL_CARGOPLANE = 0x15F27762, MODEL_CUBAN800 = 0xD9927FE3, MODEL_DUSTER = 0x39D6779E, MODEL_LUXOR = 0x250B0C5E, MODEL_JET = 0x3F119114, MODEL_LAZER = 0xB39B0AE6, MODEL_STUNT = 0x81794C70, MODEL_TITAN = 0x761E2AD3, MODEL_SHAMAL = 0xB79C1BF5, MODEL_SPMED = 0xD1900A49, MODEL_SPSMALL = 0xB31F4F95, MODEL_MAMMATUS = 0x97E55D11, MODEL_VELUM = 0x9C429B6A, //---------TRAINS MODEL_FREIGHT = 0x3D6AAA9B, MODEL_FREIGHTCAR = 0xAFD22A6, MODEL_METROTRAIN = 0x33C9E158, //---------TRAILER MODEL_ARMYTRAILER = 0xA7FF33F5, MODEL_BALETRAILER = 0xE82AE656, MODEL_BOATTRAILER = 0x1F3D44B5, MODEL_DOCKTRAILER = 0x806EFBEE, MODEL_GRAINTRAIL = 0x7AD8CEC4, MODEL_PROPTRAILER = 0x153E1B0A, MODEL_RAKETRAILER = 0x174CB172, MODEL_TANKER = 0xD46F4737, MODEL_TRAILERL = 0x481EB6E8, MODEL_TRAILER = 0x5C27AA11, MODEL_TRAILER2 = 0x9B195CEC, MODEL_TR2 = 0x7BE032C6, MODEL_TR3 = 0x6A59902D, MODEL_TRFLAT = 0xAF62F6B2, MODEL_TRAILERSMAL = 0xFF310F37, //---------SPECIAL MODEL_BULLDOZE = 0x6E8A4D8A, MODEL_CUTTER = 0xC3FBA120, MODEL_DUMP = 0x810369E2, MODEL_RHINO = 0x2EA68690, MODEL_SUBMERSIBLE = 0x2DFF622F, //---------BOATS MODEL_DINGHY = 0x3D961290, MODEL_DINGHY2 = 0x107F392C, MODEL_MARQUIS = 0xC1CE1183, MODEL_PREDATOR = 0xE2E7D4AB, MODEL_JETMAX = 0x33581161, MODEL_SQUALO = 0x17DF5EC2, MODEL_SUNTRAP = 0xEF2295C9, MODEL_SEASHARK = 0xC2974024, MODEL_TROPIC = 0x1149422F, //---------HELI MODEL_ANNIHL = 0x8F4FE53D, MODEL_BUZZARD = 0x2F03547B, MODEL_BUZZARD2 = 0x2C75F0DD, MODEL_CARGOBOB = 0xFCFCB68B, MODEL_FROGGER = 0x2C634FBD, MODEL_MAVERICK = 0x9D0450CA, MODEL_POLMAV = 0x1517D4D9, MODEL_SKYLIFT = 0x3E48BF23, //---------BLIMP MODEL_BLIMP = 0xF7004C86,}; Hope it's useful Skorpro PS: If you want to create a single hash please use this tool. 1 Link to post Share on other sites
jenksta 8 Posted August 14, 2014 Share Posted August 14, 2014 Hi Alexander, hi @all! I've made a very simple (console) tool to create enums for C/C++. Make a text/data file with your models/natives etc. (like input example) and load it with this EnumGen to create a enums file (like output example). Note: I'm not sure GTA V is using the same hash algorithm like GTA IV but for the natives it seems to work (GET_PLAYER_PED => 0x6e31e993)... DOWNLOAD HERE Example Input (GTA V Vehicles) //---------CARSAIRTUGADDERAIRBUSAMBULANASEAASTEROPEBARRACKSBARRACKS2BIFFBALLERBALLER2BANSHEEBENSONBISONBFINJECTBJXLBLAZERBLAZER2BLISTABOBCATXLBODHI2BOXVILLEBUCCANEEBUFFALOBUFFALO2BULLETBURRITOBUSCADDYCADDY2CAMPERCARBONIZCAVCADECHEETAHCOACHCOGCABRIOCOMETCOQUETTECRUSADERDILETTANTEDOCKTUGDOMINATORDLOADERDUBSTADUNEDUNE2ELEGY2ENTITYXFEMPEROREXEMPLARF620FBIFBI2FBIOLDFELONFELON2FELTZERFLATBEDFIRETRUKFORKLIFTFQ2FUGITIVEFUTOFUSILADEGAUNTLETGBURRITOGRANGERGRESLEYHABANEROHANDLERHAULERHOTKNIFEINFERNUSINGOTINTRUDERISSIJACKALJB700JOURNEYKHAMELLANDSTALKERLGUARDMANANAMARBELLAMINIVANMIXERMIXER2MESAMULEMONROEMOWERNINEFORACLEORACLE2PACKERPBUSPHANTOMPATRIOTPENUMBRAPEYOTEPHOENIXPICADORPOLICEPOLICE2POLICE3POLICETPOLICEOLDPOLICEOL2PONYPOUNDERPRAIRIEPRANGERPREMIERPRIMORADIRANCHERXLRLOADERRAPIDGTREBELREGINARHAPSODYRIOTRIPLEYROCOTOROMERORUBBLERUINERRUMPOSADLERSABREGTSANDKINGSCHAFTER2SCHWARZESCRAPSENTINELSEMINOLESERRANOSERRANO2SHERIFFSPEEDOSTANIERSTINGERSTINGERGTSTOCKADESTRATUMSTRETCHSULTANSURANOSURFERSURGESUPERDTACOTAILGATETAXI2TIPTRUCKTIPTRUCK2TORNADOTOURBUSTOWTRUCKTOWTRUCK2TRASHTRACTORTRACTOR2URANUSUTILTRUCUTILTRUC2UTILTRUC3VACCAVIGEROVOODOO2VOLTICWASHINGTONYOUGAZTYPEZION//---------BIKESAKUMABAGGERBATICARBONDAEMONDOUBLEFAGGIOHEXERNEMESISPCJRUFFIANSANCHEZPOLICEBVADER//---------PEDALBIKESBMXCRUISERFIXTERSCORCHERTRIBIKE//---------AIRCRAFTCARGOPLANECUBAN800DUSTERLUXORJETLAZERSTUNTTITANSHAMALSPMEDSPSMALLMAMMATUSVELUM//---------TRAINSFREIGHTFREIGHTCARMETROTRAIN//---------TRAILERARMYTRAILERBALETRAILERBOATTRAILERDOCKTRAILERGRAINTRAILPROPTRAILERRAKETRAILERTANKERTRAILERLTRAILERTRAILER2TR2TR3TRFLATTRAILERSMAL//---------SPECIALBULLDOZECUTTERDUMPRHINOSUBMERSIBLE//---------BOATSDINGHYDINGHY2MARQUISPREDATORJETMAXSQUALOSUNTRAPSEASHARKTROPIC//---------HELIANNIHLBUZZARDBUZZARD2CARGOBOBFROGGERMAVERICKPOLMAVSKYLIFT//---------BLIMPBLIMP Example Output (GTA V Vehicles Enums) // Created with EnumGen by Skorproenum eHash{ //---------CARS MODEL_AIRTUG = 0x5D0AAC8F, MODEL_ADDER = 0xB779A091, MODEL_AIRBUS = 0x4C80EB0E, MODEL_AMBULAN = 0x6922CAEB, MODEL_ASEA = 0x94204D89, MODEL_ASTEROPE = 0x8E9254FB, MODEL_BARRACKS = 0xCEEA3F4B, MODEL_BARRACKS2 = 0x4008EABB, MODEL_BIFF = 0x32B91AE8, MODEL_BALLER = 0xCFCA3668, MODEL_BALLER2 = 0x8852855, MODEL_BANSHEE = 0xC1E908D2, MODEL_BENSON = 0x7A61B330, MODEL_BISON = 0xFEFD644F, MODEL_BFINJECT = 0x345EBF35, MODEL_BJXL = 0x32B29A4B, MODEL_BLAZER = 0x8125BCF9, MODEL_BLAZER2 = 0xFD231729, MODEL_BLISTA = 0xEB70965F, MODEL_BOBCATXL = 0x3FC5D440, MODEL_BODHI2 = 0xAA699BB6, MODEL_BOXVILLE = 0x898ECCEA, MODEL_BUCCANEE = 0xDB8AA7E0, MODEL_BUFFALO = 0xEDD516C6, MODEL_BUFFALO2 = 0x2BEC3CBE, MODEL_BULLET = 0x9AE6DDA1, MODEL_BURRITO = 0xAFBB2CA4, MODEL_BUS = 0xD577C962, MODEL_CADDY = 0x44623884, MODEL_CADDY2 = 0xDFF0594C, MODEL_CAMPER = 0x6FD95F68, MODEL_CARBONIZ = 0xAB7EC4DF, MODEL_CAVCADE = 0x1FD5D1FC, MODEL_CHEETAH = 0xB1D95DA0, MODEL_COACH = 0x84718D34, MODEL_COGCABRIO = 0x13B57D8A, MODEL_COMET = 0x3F637729, MODEL_COQUETTE = 0x67BC037, MODEL_CRUSADER = 0x132D5A1A, MODEL_DILETTANTE = 0xBC993509, MODEL_DOCKTUG = 0xCB44B1CA, MODEL_DOMINATOR = 0x4CE68AC, MODEL_DLOADER = 0x698521E3, MODEL_DUBSTA = 0x462FE277, MODEL_DUNE = 0x9CF21E0F, MODEL_DUNE2 = 0x1FD824AF, MODEL_ELEGY2 = 0xDE3D9D22, MODEL_ENTITYXF = 0xB2FE5CF9, MODEL_EMPEROR = 0xD7278283, MODEL_EXEMPLAR = 0xFFB15B5E, MODEL_F620 = 0xDCBCBE48, MODEL_FBI = 0x432EA949, MODEL_FBI2 = 0x9DC66994, MODEL_FBIOLD = 0x8F6ADC54, MODEL_FELON = 0xE8A8BDA8, MODEL_FELON2 = 0xFAAD85EE, MODEL_FELTZER = 0xBE9075F1, MODEL_FLATBED = 0x50B0215A, MODEL_FIRETRUK = 0x73920F8E, MODEL_FORKLIFT = 0x58E49664, MODEL_FQ2 = 0xBC32A33B, MODEL_FUGITIVE = 0x71CB2FFB, MODEL_FUTO = 0x7836CE2F, MODEL_FUSILADE = 0x1DC0BA53, MODEL_GAUNTLET = 0x94B395C5, MODEL_GBURRITO = 0x97FA4F36, MODEL_GRANGER = 0x9628879C, MODEL_GRESLEY = 0xA3FC0F4D, MODEL_HABANERO = 0x34B7390F, MODEL_HANDLER = 0x1A7FCEFA, MODEL_HAULER = 0x5A82F9AE, MODEL_HOTKNIFE = 0x239E390, MODEL_INFERNUS = 0x18F25AC7, MODEL_INGOT = 0xB3206692, MODEL_INTRUDER = 0x34DD8AA1, MODEL_ISSI = 0x730CE01F, MODEL_JACKAL = 0xDAC67112, MODEL_JB700 = 0x3EAB5555, MODEL_JOURNEY = 0xF8D48E7A, MODEL_KHAMEL = 0x4FE57110, MODEL_LANDSTALKER = 0x4BA4E8DC, MODEL_LGUARD = 0x1BF8D381, MODEL_MANANA = 0x81634188, MODEL_MARBELLA = 0x4DC293EA, MODEL_MINIVAN = 0xED7EADA4, MODEL_MIXER = 0xD138A6BB, MODEL_MIXER2 = 0x1C534995, MODEL_MESA = 0x36848602, MODEL_MULE = 0x35ED670B, MODEL_MONROE = 0xE62B361B, MODEL_MOWER = 0x6A4BD8F6, MODEL_NINEF = 0x3D8FA25C, MODEL_ORACLE = 0x506434F6, MODEL_ORACLE2 = 0xE18195B2, MODEL_PACKER = 0x21EEE87D, MODEL_PBUS = 0x885F3671, MODEL_PHANTOM = 0x809AA4CB, MODEL_PATRIOT = 0xCFCFEB3B, MODEL_PENUMBRA = 0xE9805550, MODEL_PEYOTE = 0x6D19CCBC, MODEL_PHOENIX = 0x831A21D5, MODEL_PICADOR = 0x59E0FBF3, MODEL_POLICE = 0x79FBB0C5, MODEL_POLICE2 = 0x9F05F101, MODEL_POLICE3 = 0x71FA16EA, MODEL_POLICET = 0x1B38E955, MODEL_POLICEOLD = 0x5C239DB6, MODEL_POLICEOL2 = 0x8847F602, MODEL_PONY = 0xF8DE29A8, MODEL_POUNDER = 0x7DE35E7D, MODEL_PRAIRIE = 0xA988D3A2, MODEL_PRANGER = 0x2C33B46E, MODEL_PREMIER = 0x8FB66F9B, MODEL_PRIMO = 0xBB6B404F, MODEL_RADI = 0x9D96B45B, MODEL_RANCHERXL = 0x6210CBB0, MODEL_RLOADER = 0xBD303B8, MODEL_RAPIDGT = 0x8CB29A14, MODEL_REBEL = 0xB802DD46, MODEL_REGINA = 0xFF22D208, MODEL_RHAPSODY = 0x322CF98F, MODEL_RIOT = 0xB822A1AA, MODEL_RIPLEY = 0xCD935EF9, MODEL_ROCOTO = 0x7F5C91F1, MODEL_ROMERO = 0x2560B2FC, MODEL_RUBBLE = 0x9A5B1DCC, MODEL_RUINER = 0xF26CEFF9, MODEL_RUMPO = 0x4543B74D, MODEL_SADLER = 0xDC434E51, MODEL_SABREGT = 0x9B909C94, MODEL_SANDKING = 0xB9210FD0, MODEL_SCHAFTER2 = 0xB52B5113, MODEL_SCHWARZE = 0xA7F873E0, MODEL_SCRAP = 0x9A9FD3DF, MODEL_SENTINEL = 0x50732C82, MODEL_SEMINOLE = 0x48CECED3, MODEL_SERRANO = 0x4FB1A214, MODEL_SERRANO2 = 0x3EA948D6, MODEL_SHERIFF = 0x9BAA707C, MODEL_SPEEDO = 0xCFB3870C, MODEL_STANIER = 0xA7EDE74D, MODEL_STINGER = 0x5C23AF9B, MODEL_STINGERGT = 0x82E499FA, MODEL_STOCKADE = 0x6827CF72, MODEL_STRATUM = 0x66B4FC45, MODEL_STRETCH = 0x8B13F083, MODEL_SULTAN = 0x39DA2754, MODEL_SURANO = 0x16E478C1, MODEL_SURFER = 0x29B0DA97, MODEL_SURGE = 0x8F0E3594, MODEL_SUPERD = 0x42F2ED16, MODEL_TACO = 0x744CA80D, MODEL_TAILGATE = 0x527649E0, MODEL_TAXI2 = 0x480DAF95, MODEL_TIPTRUCK = 0x2E19879, MODEL_TIPTRUCK2 = 0xC7824E5E, MODEL_TORNADO = 0x1BB290BC, MODEL_TOURBUS = 0x73B1C3CB, MODEL_TOWTRUCK = 0xB12314E0, MODEL_TOWTRUCK2 = 0xE5A2D6C6, MODEL_TRASH = 0x72435A19, MODEL_TRACTOR = 0x61D6BA8C, MODEL_TRACTOR2 = 0x843B73DE, MODEL_URANUS = 0x5B73F5B7, MODEL_UTILTRUC = 0xE981E1B2, MODEL_UTILTRUC2 = 0x7B562623, MODEL_UTILTRUC3 = 0x9A726473, MODEL_VACCA = 0x142E0DC3, MODEL_VIGERO = 0xCEC6B9B7, MODEL_VOODOO2 = 0x1F3766E3, MODEL_VOLTIC = 0x9F4B77BE, MODEL_WASHINGTON = 0x69F06B57, MODEL_YOUGA = 0x3E5F6B8, MODEL_ZTYPE = 0x2D3BD401, MODEL_ZION = 0xBD1B39C3, //---------BIKES MODEL_AKUMA = 0x63ABADE7, MODEL_BAGGER = 0x806B9CC3, MODEL_BATI = 0xF9300CC5, MODEL_CARBON = 0x9C2387D0, MODEL_DAEMON = 0x77934CEE, MODEL_DOUBLE = 0x9C669788, MODEL_FAGGIO = 0x9229E4EB, MODEL_HEXER = 0x11F76C14, MODEL_NEMESIS = 0xDA288376, MODEL_PCJ = 0xC9CEAF06, MODEL_RUFFIAN = 0xCABD11E8, MODEL_SANCHEZ = 0x2EF89E46, MODEL_POLICEB = 0xFDEFAEC3, MODEL_VADER = 0xF79A00F7, //---------PEDALBIKES MODEL_BMX = 0x43779C54, MODEL_CRUISER = 0x1ABA13B5, MODEL_FIXTER = 0xCE23D3BF, MODEL_SCORCHER = 0xF4E1AA15, MODEL_TRIBIKE = 0x4339CD69, //---------AIRCRAFT MODEL_CARGOPLANE = 0x15F27762, MODEL_CUBAN800 = 0xD9927FE3, MODEL_DUSTER = 0x39D6779E, MODEL_LUXOR = 0x250B0C5E, MODEL_JET = 0x3F119114, MODEL_LAZER = 0xB39B0AE6, MODEL_STUNT = 0x81794C70, MODEL_TITAN = 0x761E2AD3, MODEL_SHAMAL = 0xB79C1BF5, MODEL_SPMED = 0xD1900A49, MODEL_SPSMALL = 0xB31F4F95, MODEL_MAMMATUS = 0x97E55D11, MODEL_VELUM = 0x9C429B6A, //---------TRAINS MODEL_FREIGHT = 0x3D6AAA9B, MODEL_FREIGHTCAR = 0xAFD22A6, MODEL_METROTRAIN = 0x33C9E158, //---------TRAILER MODEL_ARMYTRAILER = 0xA7FF33F5, MODEL_BALETRAILER = 0xE82AE656, MODEL_BOATTRAILER = 0x1F3D44B5, MODEL_DOCKTRAILER = 0x806EFBEE, MODEL_GRAINTRAIL = 0x7AD8CEC4, MODEL_PROPTRAILER = 0x153E1B0A, MODEL_RAKETRAILER = 0x174CB172, MODEL_TANKER = 0xD46F4737, MODEL_TRAILERL = 0x481EB6E8, MODEL_TRAILER = 0x5C27AA11, MODEL_TRAILER2 = 0x9B195CEC, MODEL_TR2 = 0x7BE032C6, MODEL_TR3 = 0x6A59902D, MODEL_TRFLAT = 0xAF62F6B2, MODEL_TRAILERSMAL = 0xFF310F37, //---------SPECIAL MODEL_BULLDOZE = 0x6E8A4D8A, MODEL_CUTTER = 0xC3FBA120, MODEL_DUMP = 0x810369E2, MODEL_RHINO = 0x2EA68690, MODEL_SUBMERSIBLE = 0x2DFF622F, //---------BOATS MODEL_DINGHY = 0x3D961290, MODEL_DINGHY2 = 0x107F392C, MODEL_MARQUIS = 0xC1CE1183, MODEL_PREDATOR = 0xE2E7D4AB, MODEL_JETMAX = 0x33581161, MODEL_SQUALO = 0x17DF5EC2, MODEL_SUNTRAP = 0xEF2295C9, MODEL_SEASHARK = 0xC2974024, MODEL_TROPIC = 0x1149422F, //---------HELI MODEL_ANNIHL = 0x8F4FE53D, MODEL_BUZZARD = 0x2F03547B, MODEL_BUZZARD2 = 0x2C75F0DD, MODEL_CARGOBOB = 0xFCFCB68B, MODEL_FROGGER = 0x2C634FBD, MODEL_MAVERICK = 0x9D0450CA, MODEL_POLMAV = 0x1517D4D9, MODEL_SKYLIFT = 0x3E48BF23, //---------BLIMP MODEL_BLIMP = 0xF7004C86,}; Hope it's useful Skorpro PS: If you want to create a single hash please use this tool. The IV PC script natives used a different hashing algorithm from patch 5 (?) onwards so perhaps this will be the case with V too? Link to post Share on other sites
Alexander Blade 1,407 Posted August 14, 2014 Author Share Posted August 14, 2014 The IV PC script natives used a different hashing algorithm from patch 5 (?) onwards so perhaps this will be the case with V too? Doesn't rly matter Link to post Share on other sites
jenksta 8 Posted August 14, 2014 Share Posted August 14, 2014 The IV PC script natives used a different hashing algorithm from patch 5 (?) onwards so perhaps this will be the case with V too? Doesn't rly matter I know I just meant if that's the case then that tool wouldn't work for native hashes. Link to post Share on other sites
Alexander Blade 1,407 Posted August 14, 2014 Author Share Posted August 14, 2014 The IV PC script natives used a different hashing algorithm from patch 5 (?) onwards so perhaps this will be the case with V too? Doesn't rly matter I know I just meant if that's the case then that tool wouldn't work for native hashes. That tool is for models , not for natives Link to post Share on other sites
XeClutch 33 Posted August 14, 2014 Share Posted August 14, 2014 Hi Alexander, hi @all! I've made a very simple (console) tool to create enums for C/C++. Make a text/data file with your models/natives etc. (like input example) and load it with this EnumGen to create a enums file (like output example). Note: I'm not sure GTA V is using the same hash algorithm like GTA IV but for the natives it seems to work (GET_PLAYER_PED => 0x6e31e993)... DOWNLOAD HERE Example Input (GTA V Vehicles) //---------CARSAIRTUGADDERAIRBUSAMBULANASEAASTEROPEBARRACKSBARRACKS2BIFFBALLERBALLER2BANSHEEBENSONBISONBFINJECTBJXLBLAZERBLAZER2BLISTABOBCATXLBODHI2BOXVILLEBUCCANEEBUFFALOBUFFALO2BULLETBURRITOBUSCADDYCADDY2CAMPERCARBONIZCAVCADECHEETAHCOACHCOGCABRIOCOMETCOQUETTECRUSADERDILETTANTEDOCKTUGDOMINATORDLOADERDUBSTADUNEDUNE2ELEGY2ENTITYXFEMPEROREXEMPLARF620FBIFBI2FBIOLDFELONFELON2FELTZERFLATBEDFIRETRUKFORKLIFTFQ2FUGITIVEFUTOFUSILADEGAUNTLETGBURRITOGRANGERGRESLEYHABANEROHANDLERHAULERHOTKNIFEINFERNUSINGOTINTRUDERISSIJACKALJB700JOURNEYKHAMELLANDSTALKERLGUARDMANANAMARBELLAMINIVANMIXERMIXER2MESAMULEMONROEMOWERNINEFORACLEORACLE2PACKERPBUSPHANTOMPATRIOTPENUMBRAPEYOTEPHOENIXPICADORPOLICEPOLICE2POLICE3POLICETPOLICEOLDPOLICEOL2PONYPOUNDERPRAIRIEPRANGERPREMIERPRIMORADIRANCHERXLRLOADERRAPIDGTREBELREGINARHAPSODYRIOTRIPLEYROCOTOROMERORUBBLERUINERRUMPOSADLERSABREGTSANDKINGSCHAFTER2SCHWARZESCRAPSENTINELSEMINOLESERRANOSERRANO2SHERIFFSPEEDOSTANIERSTINGERSTINGERGTSTOCKADESTRATUMSTRETCHSULTANSURANOSURFERSURGESUPERDTACOTAILGATETAXI2TIPTRUCKTIPTRUCK2TORNADOTOURBUSTOWTRUCKTOWTRUCK2TRASHTRACTORTRACTOR2URANUSUTILTRUCUTILTRUC2UTILTRUC3VACCAVIGEROVOODOO2VOLTICWASHINGTONYOUGAZTYPEZION//---------BIKESAKUMABAGGERBATICARBONDAEMONDOUBLEFAGGIOHEXERNEMESISPCJRUFFIANSANCHEZPOLICEBVADER//---------PEDALBIKESBMXCRUISERFIXTERSCORCHERTRIBIKE//---------AIRCRAFTCARGOPLANECUBAN800DUSTERLUXORJETLAZERSTUNTTITANSHAMALSPMEDSPSMALLMAMMATUSVELUM//---------TRAINSFREIGHTFREIGHTCARMETROTRAIN//---------TRAILERARMYTRAILERBALETRAILERBOATTRAILERDOCKTRAILERGRAINTRAILPROPTRAILERRAKETRAILERTANKERTRAILERLTRAILERTRAILER2TR2TR3TRFLATTRAILERSMAL//---------SPECIALBULLDOZECUTTERDUMPRHINOSUBMERSIBLE//---------BOATSDINGHYDINGHY2MARQUISPREDATORJETMAXSQUALOSUNTRAPSEASHARKTROPIC//---------HELIANNIHLBUZZARDBUZZARD2CARGOBOBFROGGERMAVERICKPOLMAVSKYLIFT//---------BLIMPBLIMP Example Output (GTA V Vehicles Enums) // Created with EnumGen by Skorproenum eHash{ //---------CARS MODEL_AIRTUG = 0x5D0AAC8F, MODEL_ADDER = 0xB779A091, MODEL_AIRBUS = 0x4C80EB0E, MODEL_AMBULAN = 0x6922CAEB, MODEL_ASEA = 0x94204D89, MODEL_ASTEROPE = 0x8E9254FB, MODEL_BARRACKS = 0xCEEA3F4B, MODEL_BARRACKS2 = 0x4008EABB, MODEL_BIFF = 0x32B91AE8, MODEL_BALLER = 0xCFCA3668, MODEL_BALLER2 = 0x8852855, MODEL_BANSHEE = 0xC1E908D2, MODEL_BENSON = 0x7A61B330, MODEL_BISON = 0xFEFD644F, MODEL_BFINJECT = 0x345EBF35, MODEL_BJXL = 0x32B29A4B, MODEL_BLAZER = 0x8125BCF9, MODEL_BLAZER2 = 0xFD231729, MODEL_BLISTA = 0xEB70965F, MODEL_BOBCATXL = 0x3FC5D440, MODEL_BODHI2 = 0xAA699BB6, MODEL_BOXVILLE = 0x898ECCEA, MODEL_BUCCANEE = 0xDB8AA7E0, MODEL_BUFFALO = 0xEDD516C6, MODEL_BUFFALO2 = 0x2BEC3CBE, MODEL_BULLET = 0x9AE6DDA1, MODEL_BURRITO = 0xAFBB2CA4, MODEL_BUS = 0xD577C962, MODEL_CADDY = 0x44623884, MODEL_CADDY2 = 0xDFF0594C, MODEL_CAMPER = 0x6FD95F68, MODEL_CARBONIZ = 0xAB7EC4DF, MODEL_CAVCADE = 0x1FD5D1FC, MODEL_CHEETAH = 0xB1D95DA0, MODEL_COACH = 0x84718D34, MODEL_COGCABRIO = 0x13B57D8A, MODEL_COMET = 0x3F637729, MODEL_COQUETTE = 0x67BC037, MODEL_CRUSADER = 0x132D5A1A, MODEL_DILETTANTE = 0xBC993509, MODEL_DOCKTUG = 0xCB44B1CA, MODEL_DOMINATOR = 0x4CE68AC, MODEL_DLOADER = 0x698521E3, MODEL_DUBSTA = 0x462FE277, MODEL_DUNE = 0x9CF21E0F, MODEL_DUNE2 = 0x1FD824AF, MODEL_ELEGY2 = 0xDE3D9D22, MODEL_ENTITYXF = 0xB2FE5CF9, MODEL_EMPEROR = 0xD7278283, MODEL_EXEMPLAR = 0xFFB15B5E, MODEL_F620 = 0xDCBCBE48, MODEL_FBI = 0x432EA949, MODEL_FBI2 = 0x9DC66994, MODEL_FBIOLD = 0x8F6ADC54, MODEL_FELON = 0xE8A8BDA8, MODEL_FELON2 = 0xFAAD85EE, MODEL_FELTZER = 0xBE9075F1, MODEL_FLATBED = 0x50B0215A, MODEL_FIRETRUK = 0x73920F8E, MODEL_FORKLIFT = 0x58E49664, MODEL_FQ2 = 0xBC32A33B, MODEL_FUGITIVE = 0x71CB2FFB, MODEL_FUTO = 0x7836CE2F, MODEL_FUSILADE = 0x1DC0BA53, MODEL_GAUNTLET = 0x94B395C5, MODEL_GBURRITO = 0x97FA4F36, MODEL_GRANGER = 0x9628879C, MODEL_GRESLEY = 0xA3FC0F4D, MODEL_HABANERO = 0x34B7390F, MODEL_HANDLER = 0x1A7FCEFA, MODEL_HAULER = 0x5A82F9AE, MODEL_HOTKNIFE = 0x239E390, MODEL_INFERNUS = 0x18F25AC7, MODEL_INGOT = 0xB3206692, MODEL_INTRUDER = 0x34DD8AA1, MODEL_ISSI = 0x730CE01F, MODEL_JACKAL = 0xDAC67112, MODEL_JB700 = 0x3EAB5555, MODEL_JOURNEY = 0xF8D48E7A, MODEL_KHAMEL = 0x4FE57110, MODEL_LANDSTALKER = 0x4BA4E8DC, MODEL_LGUARD = 0x1BF8D381, MODEL_MANANA = 0x81634188, MODEL_MARBELLA = 0x4DC293EA, MODEL_MINIVAN = 0xED7EADA4, MODEL_MIXER = 0xD138A6BB, MODEL_MIXER2 = 0x1C534995, MODEL_MESA = 0x36848602, MODEL_MULE = 0x35ED670B, MODEL_MONROE = 0xE62B361B, MODEL_MOWER = 0x6A4BD8F6, MODEL_NINEF = 0x3D8FA25C, MODEL_ORACLE = 0x506434F6, MODEL_ORACLE2 = 0xE18195B2, MODEL_PACKER = 0x21EEE87D, MODEL_PBUS = 0x885F3671, MODEL_PHANTOM = 0x809AA4CB, MODEL_PATRIOT = 0xCFCFEB3B, MODEL_PENUMBRA = 0xE9805550, MODEL_PEYOTE = 0x6D19CCBC, MODEL_PHOENIX = 0x831A21D5, MODEL_PICADOR = 0x59E0FBF3, MODEL_POLICE = 0x79FBB0C5, MODEL_POLICE2 = 0x9F05F101, MODEL_POLICE3 = 0x71FA16EA, MODEL_POLICET = 0x1B38E955, MODEL_POLICEOLD = 0x5C239DB6, MODEL_POLICEOL2 = 0x8847F602, MODEL_PONY = 0xF8DE29A8, MODEL_POUNDER = 0x7DE35E7D, MODEL_PRAIRIE = 0xA988D3A2, MODEL_PRANGER = 0x2C33B46E, MODEL_PREMIER = 0x8FB66F9B, MODEL_PRIMO = 0xBB6B404F, MODEL_RADI = 0x9D96B45B, MODEL_RANCHERXL = 0x6210CBB0, MODEL_RLOADER = 0xBD303B8, MODEL_RAPIDGT = 0x8CB29A14, MODEL_REBEL = 0xB802DD46, MODEL_REGINA = 0xFF22D208, MODEL_RHAPSODY = 0x322CF98F, MODEL_RIOT = 0xB822A1AA, MODEL_RIPLEY = 0xCD935EF9, MODEL_ROCOTO = 0x7F5C91F1, MODEL_ROMERO = 0x2560B2FC, MODEL_RUBBLE = 0x9A5B1DCC, MODEL_RUINER = 0xF26CEFF9, MODEL_RUMPO = 0x4543B74D, MODEL_SADLER = 0xDC434E51, MODEL_SABREGT = 0x9B909C94, MODEL_SANDKING = 0xB9210FD0, MODEL_SCHAFTER2 = 0xB52B5113, MODEL_SCHWARZE = 0xA7F873E0, MODEL_SCRAP = 0x9A9FD3DF, MODEL_SENTINEL = 0x50732C82, MODEL_SEMINOLE = 0x48CECED3, MODEL_SERRANO = 0x4FB1A214, MODEL_SERRANO2 = 0x3EA948D6, MODEL_SHERIFF = 0x9BAA707C, MODEL_SPEEDO = 0xCFB3870C, MODEL_STANIER = 0xA7EDE74D, MODEL_STINGER = 0x5C23AF9B, MODEL_STINGERGT = 0x82E499FA, MODEL_STOCKADE = 0x6827CF72, MODEL_STRATUM = 0x66B4FC45, MODEL_STRETCH = 0x8B13F083, MODEL_SULTAN = 0x39DA2754, MODEL_SURANO = 0x16E478C1, MODEL_SURFER = 0x29B0DA97, MODEL_SURGE = 0x8F0E3594, MODEL_SUPERD = 0x42F2ED16, MODEL_TACO = 0x744CA80D, MODEL_TAILGATE = 0x527649E0, MODEL_TAXI2 = 0x480DAF95, MODEL_TIPTRUCK = 0x2E19879, MODEL_TIPTRUCK2 = 0xC7824E5E, MODEL_TORNADO = 0x1BB290BC, MODEL_TOURBUS = 0x73B1C3CB, MODEL_TOWTRUCK = 0xB12314E0, MODEL_TOWTRUCK2 = 0xE5A2D6C6, MODEL_TRASH = 0x72435A19, MODEL_TRACTOR = 0x61D6BA8C, MODEL_TRACTOR2 = 0x843B73DE, MODEL_URANUS = 0x5B73F5B7, MODEL_UTILTRUC = 0xE981E1B2, MODEL_UTILTRUC2 = 0x7B562623, MODEL_UTILTRUC3 = 0x9A726473, MODEL_VACCA = 0x142E0DC3, MODEL_VIGERO = 0xCEC6B9B7, MODEL_VOODOO2 = 0x1F3766E3, MODEL_VOLTIC = 0x9F4B77BE, MODEL_WASHINGTON = 0x69F06B57, MODEL_YOUGA = 0x3E5F6B8, MODEL_ZTYPE = 0x2D3BD401, MODEL_ZION = 0xBD1B39C3, //---------BIKES MODEL_AKUMA = 0x63ABADE7, MODEL_BAGGER = 0x806B9CC3, MODEL_BATI = 0xF9300CC5, MODEL_CARBON = 0x9C2387D0, MODEL_DAEMON = 0x77934CEE, MODEL_DOUBLE = 0x9C669788, MODEL_FAGGIO = 0x9229E4EB, MODEL_HEXER = 0x11F76C14, MODEL_NEMESIS = 0xDA288376, MODEL_PCJ = 0xC9CEAF06, MODEL_RUFFIAN = 0xCABD11E8, MODEL_SANCHEZ = 0x2EF89E46, MODEL_POLICEB = 0xFDEFAEC3, MODEL_VADER = 0xF79A00F7, //---------PEDALBIKES MODEL_BMX = 0x43779C54, MODEL_CRUISER = 0x1ABA13B5, MODEL_FIXTER = 0xCE23D3BF, MODEL_SCORCHER = 0xF4E1AA15, MODEL_TRIBIKE = 0x4339CD69, //---------AIRCRAFT MODEL_CARGOPLANE = 0x15F27762, MODEL_CUBAN800 = 0xD9927FE3, MODEL_DUSTER = 0x39D6779E, MODEL_LUXOR = 0x250B0C5E, MODEL_JET = 0x3F119114, MODEL_LAZER = 0xB39B0AE6, MODEL_STUNT = 0x81794C70, MODEL_TITAN = 0x761E2AD3, MODEL_SHAMAL = 0xB79C1BF5, MODEL_SPMED = 0xD1900A49, MODEL_SPSMALL = 0xB31F4F95, MODEL_MAMMATUS = 0x97E55D11, MODEL_VELUM = 0x9C429B6A, //---------TRAINS MODEL_FREIGHT = 0x3D6AAA9B, MODEL_FREIGHTCAR = 0xAFD22A6, MODEL_METROTRAIN = 0x33C9E158, //---------TRAILER MODEL_ARMYTRAILER = 0xA7FF33F5, MODEL_BALETRAILER = 0xE82AE656, MODEL_BOATTRAILER = 0x1F3D44B5, MODEL_DOCKTRAILER = 0x806EFBEE, MODEL_GRAINTRAIL = 0x7AD8CEC4, MODEL_PROPTRAILER = 0x153E1B0A, MODEL_RAKETRAILER = 0x174CB172, MODEL_TANKER = 0xD46F4737, MODEL_TRAILERL = 0x481EB6E8, MODEL_TRAILER = 0x5C27AA11, MODEL_TRAILER2 = 0x9B195CEC, MODEL_TR2 = 0x7BE032C6, MODEL_TR3 = 0x6A59902D, MODEL_TRFLAT = 0xAF62F6B2, MODEL_TRAILERSMAL = 0xFF310F37, //---------SPECIAL MODEL_BULLDOZE = 0x6E8A4D8A, MODEL_CUTTER = 0xC3FBA120, MODEL_DUMP = 0x810369E2, MODEL_RHINO = 0x2EA68690, MODEL_SUBMERSIBLE = 0x2DFF622F, //---------BOATS MODEL_DINGHY = 0x3D961290, MODEL_DINGHY2 = 0x107F392C, MODEL_MARQUIS = 0xC1CE1183, MODEL_PREDATOR = 0xE2E7D4AB, MODEL_JETMAX = 0x33581161, MODEL_SQUALO = 0x17DF5EC2, MODEL_SUNTRAP = 0xEF2295C9, MODEL_SEASHARK = 0xC2974024, MODEL_TROPIC = 0x1149422F, //---------HELI MODEL_ANNIHL = 0x8F4FE53D, MODEL_BUZZARD = 0x2F03547B, MODEL_BUZZARD2 = 0x2C75F0DD, MODEL_CARGOBOB = 0xFCFCB68B, MODEL_FROGGER = 0x2C634FBD, MODEL_MAVERICK = 0x9D0450CA, MODEL_POLMAV = 0x1517D4D9, MODEL_SKYLIFT = 0x3E48BF23, //---------BLIMP MODEL_BLIMP = 0xF7004C86,}; Hope it's useful Skorpro PS: If you want to create a single hash please use this tool. Nice looking tool, GTA V uses the Bob Jenkins algorithm, not sure if GTA IV uses it aswell. Take a look at the hash generator I made awhile back. It uses the same algorithm as GTA V. http://pastebin.com/Va2bRu58 Link to post Share on other sites
jenksta 8 Posted August 14, 2014 Share Posted August 14, 2014 That tool is for models , not for natives Note: I'm not sure GTA V is using the same hash algorithm like GTA IV but for the natives it seems to work (GET_PLAYER_PED => 0x6e31e993)... My original comment was aimed at that part of his post that's all. Link to post Share on other sites
unknown modder 202 Posted August 14, 2014 Share Posted August 14, 2014 http://pastebin.com/Va2bRu58 Nice looking tool, GTA V uses the Bob Jenkins algorithm, not sure if GTA IV uses it aswell. Take a look at the hash generator I made awhile back. It uses the same algorithm as GTA V. GTA V's hash function actually uses a StrToLower function before hashing may wanna sort your tool out for that Link to post Share on other sites