Brazilian Modding Studio
Olá, seja bem vindo à Comunidade BMS!

Para se registrar no fórum, siga os passos:

1 - Clique em "Registrar-se" aqui em baixo;
2 - Aceite os termos de serviço;
3 - Escolha um nome de usuário e senha;
4 - Realize o login no fórum clicando em "Conectar-se".

Compartilhe
avatar
Designer - Intermediário
Designer - Intermediário
Mensagens : 287
Reputação : 48
Desde : 27/03/2016
Idade : 16
Localização : Rio Grande do Sul - Brasil
Ver perfil do usuário
em Ter 13 Fev 2018, 23:03
Tem como usar o NewOpcodes em GTA3SCRIPT, eu sei que tem como usar ele em LUA usando o MoonAdditions mas como eu atualmente to apenas scriptando em GTA3SCRIPT eu queria saber se tem como, pois mesmo não tendo o NewOpcodes exatamente pro GTA3SCRIPT(nao que eu saiba pelo menos) diferente de um script lua o GTA3SCRIPT é praticamente so um cleo(scm script) escrito de outra forma(ta eu sei que não é so isso) então talvez tivesse como usar os opcodes dele mesmo sem adaptação

______________________________
Se eu te ajudei/fui útil a você clique no no lado da minha mensagem,ou se fiz um bom trabalho tbm clique no

Spoiler:
isso vai aumentar um numero inútil que n serve pra porra nenhuma mas que aumenta minha auto-estima a continuar :v
avatar
Scripter CLEO - Avançado
Scripter CLEO - Avançado
Mensagens : 846
Reputação : 134
Desde : 22/09/2015
Ver perfil do usuário
em Ter 13 Fev 2018, 23:11
Acho que tem que pegar os opcodes e colocar no xml

______________________________
Everyone gonna remember my name !
avatar
Designer - Intermediário
Designer - Intermediário
Mensagens : 287
Reputação : 48
Desde : 27/03/2016
Idade : 16
Localização : Rio Grande do Sul - Brasil
Ver perfil do usuário
em Ter 13 Fev 2018, 23:37
Deve funcionar, problema que eu não entendo bem da linguagem e dos arquivos do VSCode então eu msm n conseguiria importar os opcodes pra ele ;-; pelo visto vou ter que deixar pra la

______________________________
Se eu te ajudei/fui útil a você clique no no lado da minha mensagem,ou se fiz um bom trabalho tbm clique no

Spoiler:
isso vai aumentar um numero inútil que n serve pra porra nenhuma mas que aumenta minha auto-estima a continuar :v
avatar
Scripter CLEO - Avançado
Scripter CLEO - Avançado
Título : Censurando since 2011
Mensagens : 22944
Reputação : 727
Desde : 03/05/2012
Idade : 22
Localização : Ibitinga - SP
Link : www.MixMods.com.br
Ver perfil do usuáriohttp://MixMods.com.br
em Qua 14 Fev 2018, 01:45
Eu nunca tentei, mas parece simples. É só "converter" o sascm.ini (acho que não vem inteiro, mas vem a parte adicional no download pedindo para adicionar no sascm.ini) para o commands.xml
Você pode fazer isso simplesmente com 1 único comando/opcode para testar, um simples, por exemplo um que não precisa de argumentos (ou só um argumento).
É fácil ler e interpretar o commands.xml e sascm.ini para entender o que fazer.

opcodes.txt é inútil no GTA3script (o Sanny Builder usa uma lista de opcodes para selecionar... gambiarra da porra), pode ignorar essa parte.

______________________________
BMS agora em nova plataforma:
Forum.MixMods.com.br
avatar
Designer - Intermediário
Designer - Intermediário
Mensagens : 287
Reputação : 48
Desde : 27/03/2016
Idade : 16
Localização : Rio Grande do Sul - Brasil
Ver perfil do usuário
em Qua 14 Fev 2018, 02:06
É so pra mim que nao tem esse commands.xml? mesmo que eu procure na pasta eu so acho um controller.xml
se eu conseguisse achar acho que eu dava um jeito de implementar e ja postava aqui

______________________________
Se eu te ajudei/fui útil a você clique no no lado da minha mensagem,ou se fiz um bom trabalho tbm clique no

Spoiler:
isso vai aumentar um numero inútil que n serve pra porra nenhuma mas que aumenta minha auto-estima a continuar :v
avatar
Scripter CLEO - Avançado
Scripter CLEO - Avançado
Mensagens : 846
Reputação : 134
Desde : 22/09/2015
Ver perfil do usuário
em Qua 14 Fev 2018, 02:19
Não está procurando errado ?
Fica em: \config\gtasa\commands.xml

______________________________
Everyone gonna remember my name !
avatar
Scripter CLEO - Avançado
Scripter CLEO - Avançado
Título : Censurando since 2011
Mensagens : 22944
Reputação : 727
Desde : 03/05/2012
Idade : 22
Localização : Ibitinga - SP
Link : www.MixMods.com.br
Ver perfil do usuáriohttp://MixMods.com.br
em Qua 14 Fev 2018, 02:26
Da pasta do compilador.

______________________________
BMS agora em nova plataforma:
Forum.MixMods.com.br
avatar
Scripter CLEO - Intermediário
Scripter CLEO - Intermediário
Mensagens : 1241
Reputação : 99
Desde : 04/03/2013
Idade : 18
Ver perfil do usuário
em Qua 14 Fev 2018, 02:27
Acho que o certo mesmo seria criar outro .xml e adicionar aqui no source:
https://github.com/thelink2012/gta3sc/blob/f43e35f0814d5281e78ea96a5d8e98cf79d7fa9d/src/main.cpp#L590
Mas por ora eu adicionaria no cleo.xml.
avatar
Scripter CLEO - Avançado
Scripter CLEO - Avançado
Título : Censurando since 2011
Mensagens : 22944
Reputação : 727
Desde : 03/05/2012
Idade : 22
Localização : Ibitinga - SP
Link : www.MixMods.com.br
Ver perfil do usuáriohttp://MixMods.com.br
em Qua 14 Fev 2018, 02:51
Faria mais sentido se ele aceitasse o carregamento de vários .xml... Daí é só botar os novos .xml lá e done.

______________________________
BMS agora em nova plataforma:
Forum.MixMods.com.br
avatar
Designer - Intermediário
Designer - Intermediário
Mensagens : 287
Reputação : 48
Desde : 27/03/2016
Idade : 16
Localização : Rio Grande do Sul - Brasil
Ver perfil do usuário
em Qua 14 Fev 2018, 11:05
Código:

<Command ID="0x70b" Name="DROP_OBJECT">

   <Args>

      <Arg Type="INT" Entity="CHAR"/>

      <Arg Type="INT" Desc="Bool"/>

   </Args>
Não parece muito complexo o jeito que é escrito os comandos, so não sei exatamente oque por nos ID's
Os do Cleo.xml tem o Hash junto (Hash="0x96d598a2")

______________________________
Se eu te ajudei/fui útil a você clique no no lado da minha mensagem,ou se fiz um bom trabalho tbm clique no

Spoiler:
isso vai aumentar um numero inútil que n serve pra porra nenhuma mas que aumenta minha auto-estima a continuar :v
avatar
Scripter CLEO - Intermediário
Scripter CLEO - Intermediário
Mensagens : 1241
Reputação : 99
Desde : 04/03/2013
Idade : 18
Ver perfil do usuário
em Qua 14 Fev 2018, 14:17
Essa geração que num usou Sanny Builder... Feel Bro

Esse ID é o opcode, esse comando DROP_OBJECT  é o opcode 070B (0x70b):
https://gtagmodding.com/opcode-database/opcode/070B/

Esse hash ai no cleo.xml é por causa de uma ideia de não usar mais opcode em novos comandos e sim o hash do nome deles, você pode ler mais sobre aqui:
https://gist.github.com/thelink2012/66de0884e76d281baa08b1f878d1d08e
Creio que você não precisa usar nesse caso.

PS: da pra adicionar em um arquivo novo com essa opção no compilador:
Código:
--add-config=<path>      Adds an additional XML definition file.
avatar
Designer - Intermediário
Designer - Intermediário
Mensagens : 287
Reputação : 48
Desde : 27/03/2016
Idade : 16
Localização : Rio Grande do Sul - Brasil
Ver perfil do usuário
em Qua 14 Fev 2018, 14:58
Com um programa tão ruim quanto o sanny e uma linguagem que quase obriga e escrever letras e numeros estranhos no inicio de cd linha e sem nome de variavel não tinha pq perder tempo aprendendo.


Vou ver se passo alguns dos comandos e se funciona depois

______________________________
Se eu te ajudei/fui útil a você clique no no lado da minha mensagem,ou se fiz um bom trabalho tbm clique no

Spoiler:
isso vai aumentar um numero inútil que n serve pra porra nenhuma mas que aumenta minha auto-estima a continuar :v
avatar
Scripter CLEO - Avançado
Scripter CLEO - Avançado
Título : Censurando since 2011
Mensagens : 22944
Reputação : 727
Desde : 03/05/2012
Idade : 22
Localização : Ibitinga - SP
Link : www.MixMods.com.br
Ver perfil do usuáriohttp://MixMods.com.br
em Qua 14 Fev 2018, 18:24
@Nex escreveu:Essa geração que num usou Sanny Builder... Feel Bro
GTA3script, ModLoader, MagicTXD é Nutella
Sanny Builder, IMG Tool, TXD Workshop é Raiz Fuch That Guy

Eu acho que vou fazer uma parte do tutorial só para falar sobre esses assuntos técnicos. (de forma leve só para entenderem como funciona)

______________________________
BMS agora em nova plataforma:
Forum.MixMods.com.br
avatar
Designer - Intermediário
Designer - Intermediário
Mensagens : 287
Reputação : 48
Desde : 27/03/2016
Idade : 16
Localização : Rio Grande do Sul - Brasil
Ver perfil do usuário
em Qua 14 Fev 2018, 22:53
Td esse preconceito so pq eu esqueci que "0x70b" e "070B" são a msm coisa kskskskskk saudades de instalar pelo IMG tool crashar o jogo e ter que baixar um GTA3.img novo pq n fez backup(sqn, modloader >>>)

______________________________
Se eu te ajudei/fui útil a você clique no no lado da minha mensagem,ou se fiz um bom trabalho tbm clique no

Spoiler:
isso vai aumentar um numero inútil que n serve pra porra nenhuma mas que aumenta minha auto-estima a continuar :v
avatar
Scripter CLEO - Intermediário
Scripter CLEO - Intermediário
Título : Carinha que mora logo ali
Mensagens : 748
Reputação : 154
Desde : 07/03/2017
Localização : BH - MG
Link : https://gta-geek.blogspot.com.br/
Ver perfil do usuáriohttps://gta-geek.blogspot.com.br/
em Dom 01 Abr 2018, 12:07
Estou fazendo isto usando esta pagina como referencia http://dk22pac.blogspot.com.br/p/newopcodescleo.html

Em todo só fiz 1 até agora

ver mais:

Código:

// NewOpcodes.cleo

0D00=3,matrix %3d% = matrix %1d% * matrix %2d%
Matrix multiplication.
Param 1: pointer to matrix
Param 2: pointer to matrix
Param 3: pointer to matrix

0D01=6,rotate_matrix %1d% on_axis %2d% %3d% %4d% angle %5d% combine_op %6d%
Matrix rotation.
Param 1: pointer to matrix
Param 2: axis X
Param 2: axis Y
Param 3: axis Z
Param 4: angle in degrees
Param 5: combine variant

0D02=2,%2d% = matrix %1d% x_angle
Gets the X angle of matrix (in degrees)
Param 1: pointer to matrix
Param 2: var to store angle

0D03=2,%2d% = matrix %1d% y_angle
Gets the Y angle of matrix (in degrees)
Param 1: pointer to matrix
Param 2: var to store angle

0D04=2,%2d% = matrix %1d% z_angle
Gets the Z angle of matrix (in degrees)
Param 1: pointer to matrix
Param 2: var to store angle

0D05=4,set_matrix %1d% position %2d% %3d% %4d%
Sets position for matrix.
Param 1: pointer to matrix
Param 2: position X
Param 3: position Y
Param 4: position Z

0D06=4,get_matrix %1d% position_to %2d% %3d% %4d%
Gets position of matrix.
Param 1: pointer to matrix
Param 2: var to store position X
Param 3: var to store position Y
Param 4: var to store position Z

0D07=7,get_coords %1d% %2d% %3d% offsets_relative_to_matrix %4d% store_to %5d% %6d% %7d%
Gets point relative offset on matrix.
Param 1: point X
Param 2: point Y
Param 3: point Z
Param 4: pointer to matrix
Param 5: var to store X offset
Param 6: var to store Y offset
Param 7: var to store Z offset

0D08=4,set_matrix %1d% angles_XYZ %2d% %3d% %4d%
Sets matrix angles.
Param 1: pointer to matrix
Param 2: X angle
Param 3: Y angle
Param 4: Z angle

0D09=2,copy_matrix %1d% to %2d%
Copies matrix to another matrix.
Param 1: pointer to source matrix
Param 2: pointer to destination matrix

0D0A=7,store_coords_to %5d% %6d% %7d% from_matrix %1d% with_offsets %2d% %3d% %4d%
Gets coords on offset from matrix.
Param 1: pointer to matrix
Param 2: X offset
Param 3: Y offset
Param 4: Z offset
Param 5: var to store X coord
Param 6: var to store Y coord
Param 7: vat to store Z coord

0D0B=3,get_actor %1d% bone %2d% matrix_to %3d%
Gets actor's bone world matrix.
Param 1: actor handle
Param 2: bone, see Bones in stdc
Param 3: var to store pointer to matrix

0D0C=3,get_car %1d% component %2s% matrix_to %3d% // IF and SET
Gets world matrix of car component.
Param 1: car handle
Param 2: component name
Param 3: var to store pointer to matrix
Condition: returns true, if component is exist

0D0D=3,%3d% = get_car %1d% component %2s% // IF and SET
Gets car component.
Param 1: car handle
Param 2: component name
Param 3: var to store component
Condition: returns true, if component is exist

0D0E=3,set_car %1d% component %2s% state %3d% // IF and SET
Sets component state.
Param 1: car handle
Param 2: component name
Param 3: state, see Component states in stdc

0D0F=2,set_car %1d% model_alpha %2d%
Sets alpha value for car's model.
Param 1: car handle
Param 2: alpha (0-255)

0D10=2,set_actor %1d% model_alpha %2d%
Sets alpha value for actor's model.
Param 1: actor handle
Param 2: alpha (0-255)

0D11=2,set_object %1d% model_alpha %2d%
Sets alpha value for object's model.
Param 1: object handle
Param 2: alpha (0-255)

0D12=3,set_car %1d% component %2s% model_alpha %3d% // IF and SET
Sets alpha value for car's component model.
Param 1: car handle
Param 2: component name
Param 3: alpha (0-255)
Condition: returns true, if component is exist.

0D13=2,set_matrix %1d% x_angle %2d%
Sets matrix x angle.
Param 1: pointer to matrix
Param 2: angle (in degrees)

0D14=2,set_matrix %1d% y_angle %2d%
Sets matrix y angle.
Param 1: pointer to matrix
Param 2: angle (in degrees)

0D15=2,set_matrix %1d% z_angle %2d%
Sets matrix z angle.
Param 1: pointer to matrix
Param 2: angle (in degrees)

0D16=2,set_matrix %1d% rotation_from_quat %2d%
Sets matrix rotation from quaternion.
Param 1: pointer to matrix
Param 2: pointer to quat

0D17=2,convert_matrix %1d% to_quat %2d%
Sets quaternion from matrix.
Param 1: pointer to matrix
Param 2: pointer to quat

0D18=6,rotate_quat %1d% axis_vector %2d% %3d% %4d% angle %5d% combine_op %6d%
Rotates quaternion.
Param 1: pointer to quat
Param 2: axis X
Param 3: axis Y
Param 4: axis Z
Param 5: angle (in degrees)
Param 6: combine variant

0D19=2,get_normalized_quat %1d% to_quat %2d%
Normalizes quaternion.
Param 1: pointer to quat
Param 2: pointer to quat to store result

0D1A=3,quat %3d% = quat %1d% * quat %2d%
Quaternion multiplication.
Param 1: pointer to quat
Param 2: pointer to quat

0D1B=3,get_entity %1d% type_to %2d% class_to %3d%
Gets information about entity type.
Param 1: entity struct
Param 2: var to store entity type, see Entity types in stdc
Param 3: var to store entity class, see Entity classes in stdc

0D1C=1,normalize_vector %1d%
Normalizes vector.
Param 1: pointer to vector

0D1D=4,matrix_slerp %1d% %2d% %3d% %4d%
Performs matrix slerp.
Param 1: pointer to result matrix
Param 2: pointer to matrix
Param 3: pointer to matrix
Param 4: t

0D1E=4,quat_slerp %1d% %2d% %3d% %4d%
Performs quaternion slerp.
Param 1: pointer to result quat
Param 2: pointer to quat
Param 3: pointer to quat
Param 4: t

0D1F=2,%2d% = component %1d% child
Gets component child component.
Param 1: component
Param 2: var to store component

0D20=2,%2d% = component %1d% next_component
Gets component next component.
Param 1: component
Param 2: var to store componnt

0D21=2,%2s% = component %1d% name
Gets component name component.
Param 1: component
Param 2: var/adress to store component name

0D22=2,%2d% = component %1d% ltm
Gets component world matrix.
Param 1: component
Param 2: var to store matrix pointer

0D23=2,%2d% = component %1d% modelling_matrix
Gets component modelling matrix.
Param 1: component
Param 2: var to store matrix pointer

0D24=5,set_quat %1d% elements %2d% %3d% %4d% %5d%
Sets quaternion elements.
Param 1: pointer to quat
Param 2: X
Param 3: Y
Param 4: Z
Param 5: W

0D25=17,set_matrix %1d% elements %2d% %3d% %4d% %5d% %6d% %7d% %8d% %9d% %10d% %11d% %12d% %13d% %14d% %15d% %16d% %17d%
Sets matrix elements.
Param 1: pointer to matrix
Param 2: right X
Param 3: right Y
Param 4: right Z
Param 5: flags
Param 6: top X
Param 7: top Y
Param 8: top Z
Param 9: unused
Param 10: at X
Param 11: at Y
Param 12: at Z
Param 13: unused
Param 14: position X
Param 15: position Y
Param 16: position Z
Param 17: unused

0D26=4,set_vector %1d% elements %2d% %3d% %4d%
Sets vector elements.
Param 1: pointer to vector
Param 2: X
Param 3: Y
Param 4: Z

0D27=3,copy_memory_from %1d% to %2d% size %3d%
Copies block of memory.
Param 1: source
Param 2: destination
Param 3: size in bytes

0D28=4,get_vector %1d% elements_to %2d% %3d% %4d%
Gets vector elements.
Param 1: pointer to vector
Param 2: var to store X
Param 3: var to store Y
Param 4: var to store Z

0D29=5,get_quat %1d% elements_to %2d% %3d% %4d% %5d%
Gets quaternion elements.
Param 1: pointer to vector
Param 2: var to store X
Param 3: var to store Y
Param 4: var to store Z
Param 5: var to store W

0D2A=2,%2d% = get_car %1d% number_of_collided_entites
Gets car number of collided entities
Param 1: car handle
Param 2: var to store number

0D2B=2,%2d% = get_actor %1d% number_of_collided_entites
Gets actor number of collided entities
Param 1: actor handle
Param 2: var to store number

0D2C=2,%2d% = get_object %1d% number_of_collided_entites
Gets object number of collided entities
Param 1: object handle
Param 2: var to store number

0D2D=8,get_local_time_year_to %1d% month_to %2d% day_of_week_to %3d% day_to %4d% hour_to %5d% minute_to %6d% second_to %7d% milliseconds_to %8d%
Gets currents time from OS.
Param 1: var to store year, set -1 to ignore
Param 2: var to store month, set -1 to ignore
Param 3: var to store day of week, set -1 to ignore
Param 4: var to store day, set -1 to ignore
Param 5: var to store hour, set -1 to ignore
Param 6: var to store minute, set -1 to ignore
Param 7: var to store second, set -1 to ignore
Param 8: var to store milliseconds, set -1 to ignore

0D2E=3,set_thread %1d% var %2d% to %3d%
Sets value of thread's local variable.
Param 1: thread pointer
Param 2: var number
Param 3: value

0D2F=3,%3d% = get_thread %1d% var %2d%
Gets value of thread's local variable.
Param 1: thread pointer
Param 2: var number
Param 3: var to store value

0D30=3,%3d% = actor %1d% bone %2d%
Gets actor's bone.
Param 1: actor handle
Param 2: bone, see Bones in stdc
Param 3: var to store bone

0D31=2,%2d% = bone %1d% offset_vector
Gets bone offset.
Param 1: bone
Param 2: var to store pointer to vector

0D32=2,%2d% = bone %1d% quat
Gets bone quaternion.
Param 1: bone
Param 2: var to store pointer to quat

0D33=3,set_car %1d% door %2d% window_state %3d%
Sets car window state.
Param 1: car handle
Param 2: door, see Vehicle doors in stdc
Param 3: state, see Window states in stdc

0D34=7,store_car %1d% collided_entities_to %2d% %3d% %4d% %5d% %6d% %7d%
Stores car collided entities.
Param 1: car handle
Param 2: var to store entity struct, set -1 to ignore
Param 3: var to store entity struct, set -1 to ignore
Param 4: var to store entity struct, set -1 to ignore
Param 5: var to store entity struct, set -1 to ignore
Param 6: var to store entity struct, set -1 to ignore
Param 7: var to store entity struct, set -1 to ignore

0D35=7,store_actor %1d% collided_entities_to %2d% %3d% %4d% %5d% %6d% %7d%
Stores actor collided entities.
Param 1: actor handle
Param 2: var to store entity struct, set -1 to ignore
Param 3: var to store entity struct, set -1 to ignore
Param 4: var to store entity struct, set -1 to ignore
Param 5: var to store entity struct, set -1 to ignore
Param 6: var to store entity struct, set -1 to ignore
Param 7: var to store entity struct, set -1 to ignore

0D36=7,store_object %1d% collided_entities_to %2d% %3d% %4d% %5d% %6d% %7d%
Stores object collided entities.
Param 1: object handle
Param 2: var to store entity struct, set -1 to ignore
Param 3: var to store entity struct, set -1 to ignore
Param 4: var to store entity struct, set -1 to ignore
Param 5: var to store entity struct, set -1 to ignore
Param 6: var to store entity struct, set -1 to ignore
Param 7: var to store entity struct, set -1 to ignore

0D37=3,struct %1d% param %2d% = %3d%
Sets struct with 4b alignment param value.
Param 1: pointer to struct
Param 2: param index, start index is 0
Param 3: value

0D38=3,%3d% = struct %1d% param %2d%
Gets struct with 4b alignment param value.
Param 1: pointer to struct
Param 2: param index, start index is 0
Param 3: var to store value

0D39=2,%2d% = actor %1d% max_health
Gets actor max health value.
Param 1: actor handle
Param 2: var to store value

0D3A=20,get_collision_between_points %1d% %2d% %3d% and %4d% %5d% %6d% flags %7d% %8d% %9d% %10d% %11d% %12d% %13d% %14d% ignore_entity %15d% store_point_to %17d% %18d% %19d% entity_to %20d% colpoint_data_to %16d% // IF and SET
Gets collision data between two points.
Param 1: start X
Param 2: start Y
Param 3: start Z
Param 4: end X
Param 5: end Y
Param 6: end Z
Param 7: check solid objects
Param 8: check vehicles
Param 9: check peds
Param 10: check dynamic objects
Param 11: chack dummies
Param 12: ignore see-through stuff
Param 13: ignore some objects for camera
Param 14: ignore shoot-through stuff
Param 15: entity to ignore
Param 16: pointer to colpoint data, use STD_COLPOINT_DATA to use standart data buffer
Param 17: var to store result X
Param 18: var to store result Y
Param 19: var to store resilt Z
Param 20: var to store collided entity
Condition: returns true if there is an obstacle between points

0D3B=4,get_colpoint_data %1d% normal_XYZ_to %2d% %3d% %4d%
Gets colpoint normal vector.
Param 1: pointer to colpoint data
Param 2: var to store normal X
Param 3: var to store normal Y
Param 4: var to store normal Z

0D3C=2,get_colpoint_data %1d% surface_to %2d%
Gets colpoint data surface ID.
Param 1: pointer to colpoint data
Param 2: var to store surface ID

0D3D=2,get_colpoint_data %1d% lighting_to %2d%
Gets colpoint data lighting value.
Param 1: pointer to colpoint data
Param 2: var to store value

0D3E=2,get_colpoint_data %1d% depth_to %2d%
Gets colpoint data depth value.
Param 1: pointer to colpoint data
Param 2: var to store value

0D3F=10,find_intersrction_between_circles %1d% %2d% %3d% and %4d% %5d% %6d% store_point1_to %7d% %8d% point2_to %9d% %10d%
Finds intersrction coordinaes between tow circles.
Param 1: circleA X
Param 2: circleA Y
Param 3: circleA radius
Param 4: circleB X
Param 5: circleB Y
Param 6: circleB radius
Param 7: var to store first intersection point X
Param 8: var to store first intersection point Y
Param 9: var to store second intersection point X
Param 10: var to store second intersection point Y

0D40=8,draw_2d_shape_type %3d% texture %4d% numVerts %2d% pVerts %1d% vertexAlpha %5d% srcBlend %6d% dstBlend %7d% priority %8d%
Draws 2D shape.
Param 1: pointer to vertex buffer, use STD_VERTEX_BUFFER to use standart vertex buffer
Param 2: number if vertices, maximal number is 100
Param 3: shape type, see Primitive types in stdc
Param 4: texture, use NULL if you want to draw without texture
Param 5: enable vertex alpha
Param 6: source-blending, see Blend values in stdc
Param 7: destination-blending, see Blend values in stdc
Param 8: drawing priority, Shape priority in stdc

0D41=14,set_vertices %1d% vertex %2d% xyz %5d% %6d% %7d% rhw %8d% RGBA %9d% %10d% %11d% %12d% uv %13d% %14d% invertX %3d% invertY %4d%
Sets vertex params.
Param 1: pointer to vertex buffer, use STD_VERTEX_BUFFER to use standart vertex buffer
Param 2: vertex ID, start index is 1
Param 3: invert on X
Param 4: invert on Y
Param 5: X coord
Param 6: Y coord
Param 7: Z coord
Param 8: RHW
Param 9: red
Param 10: green
Param 11: blue
Param 12: alpha
Param 13: u-coord of texture
Param 14: v-coord of texture

0D42=2,load_txd %1s% from %2s%
Lods txd from file.
Param 1: name for new txd
Param 2: file path

0D43=2,%2d% = txd %1s% id
Gets txd's id.
Param 1: txd name
Param 2: var to store id

0D44=3,%3d% = find_texture %1s% in_dictionary_named %2s% // IF and SET
Finds texture in txd.
Param 1: texture name
Param 2: txd name
Param 3: var to store texture
Condition: returns true if texture was found

0D45=5,rotate_2d_vertices_shape %1d% num_verts %2d% aroundXY %3d% %4d% angle %5d%
Rotates vetices of 2D shape around point.
Param 1: pointer to vertex buffer
Param 2: number of vertices
Param 3: point X
Param 4: point Y
Param 5: angle (in degrees)

0D46=3,%3d% = find_texture %1s% in_dictionary_with_id %2d% // IF and SET
Finds texture in txd.
Param 1: texture name
Param 2: txd id
Param 3: var to store texture
Condition: returns true if texture was found

0D47=2,%2d% = model %1d% txd_id
Gets txd's id for model.
Param 1: model id
Param 2: var to store txd id

0D48=2,%2d% = model %1d% crc32_key
Gets model's CRC32 key.
Param 1: model id
Param 2: var to store key

0D49=3, %3d% = compare_strings %1s% %2s% // IF and SET
Compares two strings.
Param 1: string/pointer to string
Param 2: string/pointer to string
Condition: returns true if strings are equal

0D4A=2,concatenate_strings %1d% %2s%
Concatenate strings.
Param 1: pointer to string
Param 2: string/pointer to string

0D4B=3, %3d% = locate_substring %1d% %2s% // IF and SET
Finds the first occurrence of a string.
Param 1: pointer to string
Param 2: string/pointer to string
Param 3: var to store pointer to string
Condition: returns true if occurence was found

0D4C=2,%2d% = string %1s% length
Gets string length.
Param 1: string/pointer to string
Param 2: var to store length

0D4D=2,copy_string %1s% to %2s%
Copies string to another string
Param 1: string/pointer to string
Param 2: string/poiner to string

0D4E=4,%4d% = struct %1d% offset %2d% size %3d%
Gets value at struct offset.
Param 1: pointer to struct
Param 2: offset (in bytes)
Param 3: size (BYTE/WORD/DWORD)
Param 4: var to store value

0D4F=4,struct %1d% offset %2d% size %3d% = %4d%
Sets value at struct offset.
Param 1: pointer to struct
Param 2: offset (in bytes)
Param 3: size (BYTE/WORD/DWORD)
Param 4: value

0D50=14,draw_shadow_type %1d% position %2d% %3d% %4d% width %5d% height %6d% rotation %7d% distance %8d% texture %9d% intensity %10d% RGB %11d% %12d% %13d% shadow_data %14d%
Draws shadow.
Param 1: shadow type, see Shadow types in stdc
Param 2: position X
Param 3: position Y
Param 4: position Z
Param 5: width
Param 6: height
Param 7: rotation (in degrees)
Param 8: z-distance
Param 9: texture (you can also use some default shadow textures, see Shadow textures in stdc)
Param 10: intensity
Param 11: red
Param 12: green
Param 13: blue
Param 14: pointer to shadow data (use NULL is shadow don't use shadow data)

0D51=14,draw_permanent_shadow_type %1d% position %2d% %3d% %4d% width %5d% height %6d% rotation %7d% distance %8d% texture %9d% intensity %10d% RGB %11d% %12d% %13d% time %14d%
Draws permanent shadow.
Param 1: shadow type, see Shadow types in stdc
Param 2: position X
Param 3: position Y
Param 4: position Z
Param 5: width
Param 6: height
Param 7: rotation (in degrees)
Param 8: z-distance
Param 9: texture (you can also use some default shadow textures, see Shadow textures in stdc)
Param 10: intensity
Param 11: red
Param 12: green
Param 13: blue
Param 14: time (ms)

0D52=12,draw_light_type %1d% position %2d% %3d% %4d% direction %5d% %6d% %7d% radius %8d% RGBA %9d% %10d% %11d% affect_entity %12d%
Draws light.
Param 1: light type, see Light types in stdc
Param 2: position X
Param 3: position Y
Param 4: position Z
Param 5: direction X
Param 6: direction Y
Param 7: direction Z
Param 8: radius
Param 9: red
Param 10: green
Param 11: blue
Param 12: affected entity (use NULL if there's no entity to be affected)

0D53=10,draw_corona_with_texture %1d% color %2d% %3d% %4d% %5d% on_entity %6d% at %7d% %8d% %9d% size %10d%
Draws corona.
Param 1: textue (you can also use some default corona textures, see Corona textures in stdc)
Param 2: red
Param 3: green
Param 4: blue
Param 5: alpha
Param 6: enity (use NULL if there is no entity)
Param 7: X position
Param 8: Y position
Param 9: Z position
Param 10: size

0D54=18,draw_corona_with_extra_params_texture %1d% color %2d% %3d% %4d% %5d% on_entity %6d% at %7d% %8d% %9d% size %10d% far_clip %11d% near_clip %12d% flare %13d% enable_reflection %14d% check_obstacles %15d% flash_while_fading %16d% fade_speed %17d% only_from_below %18d%
Draws corona with some extra parameters.
Param 1: textue (you can also use some default corona textures, see Corona textures in stdc)
Param 2: red
Param 3: green
Param 4: blue
Param 5: alpha
Param 6: enity (use NULL if there is no entity)
Param 7: X position
Param 8: Y position
Param 9: Z position
Param 10: size
Param 11: far clip
Param 12: near clip
Param 13: flare type
Param 14: enable reflection at wet weather
Param 15: check obstacles
Param 16: flash while fading
Param 17: fade speed
Param 18: is seen only from below

0D55=6,get_sun_colors_core_to %1d% %2d% %3d% glow_to %4d% %5d% %6d%
Gets sun colors.
Param 1: var to store sun core red
Param 2: var to store sun core green
Param 3: var to store sun core blue
Param 4: var to store sun glow red
Param 5: var to store sun glow green
Param 6: var to store sun glow blue

0D56=2,get_sun_screen_coords_XY_to %1d% %2d%
Gets sun 2D position.
Param 1: var to store X position
Param 2: var to store Y position

0D57=3,get_sun_position_to %1d% %2d% %3d% // IF and SET
Gets sun 3D position.
Param 1: var to store X position
Param 2: var to store Y position
Param 3: var to store Z position
Returns true, if sun can be shown at the sky

0D58=2,get_sun_size_core_to %1d% glow_to %2d%
Gets sun size.
Param 1: var to store sun core size
Param 1: var to store sun glow size

0D59=1,%1d% = current_weather
Gets current weather.
Param 1: var to store weather id

0D5A=2,get_trafficlights_type_NS_current_color_to %1d% type_WE_current_color_to %2d%
Gets trafficlight colors.
Param 1: var to store color of NS trafficlights
Param 2: var to store color of WE trafficlights

0D5B=12,draw_spotlight_from %1d% %2d% %3d% to %4d% %5d% %6d% base_radius %7d% target_radius %8d% enable_shadow %9d% shadow_intensity %10d% flag1 %11d% flag2 %12d%
Draws spotlight.
Param 1: origin X
Param 2: origin Y
Param 3: origin Z
Param 4: target X
Param 5: target Y
Param 6: target Z
Param 7: base radius
Param 8: target radius
Param 9: draw shadow at target place
Param 10: intensity of shadow
Param 11: flag1
Param 12: flag2

0D5C=3,%3d% = get_car %1d% light %2d% damage_state
Gets car light damaging state.
Param 1: car handle
Param 2: car light, see Light types in stdc
Param 3: var to store light damaging state, see Light states in stdc

0D5D=3,set_car %1d% light %2d% damage_state %3d%
Sets car light damaging state.
Param 1: car handle
Param 2: car light, see Light types in stdc
Param 3: light damaging state, see Light states in stdc

0D5E=3,get_vehicle %1d% class_to %2d% subclass_to %3d%
Gets vehicle class and subclass.
Param 1: vehicle handle
Param 2: var to store vehicle's class, see Vehicle classes in stdc
Param 3: var to store vehicle's subclass, see Vehicle classes in stdc

0D5F=7,get_vehicle %1d% dummy_element %2d% position %3d% to %5d% %6d% %7d% invert_x %4d%
Gets vehicle dummy position.
Param 1: car handle
Param 2: dummy element, see Vehicle dummies in stdc
Param 3: position type, see Position type in stdc

0D60=10,create_projectile_type %1d% launched_from_entity %2d% origin %3d% %4d% %5d% target %6d% %7% %8d% target_entity %9d% force %10d% // IF and SET
Creates projectile.
Param 1: projectile type, see Projectile types in stdc
Param 2: pointer to entity struct
Param 3: origin X
Param 4: origin Y
Param 5: origin Z
Param 6: target X
Param 7: target Y
Param 8: target Z
Param 9: pointer to struct or NULL
Param 10: force
Condition: returns true if projectile was created

0D61=3, %3d% = load_texture_from %1s% with_mask %2s% // IF and SET
Loads texture from BMP file.
Param 1: file path
Param 2: file path or NULL, used as alpha mask
Param 3: var to store texture

0D62=2,set_car %1d% remap_texture %2d%
Sets car remap (paintjob texture), which are textures with remap_ prefix.
Param 1: car handle
Param 2: texture, use NULL if you want to set default texture

0D63=5,set_car %1d% color %2d% RGB %3d% %4d% %5d%
Sets car color.
Param 1: car hanle
Param 2: car color, see Car colors in stdc
Param 3: red
Param 4: green
Param 5: blue

Estou fazendo no commands.xml mesmo

Código:

<!-- ////////////////////////////////////////////////////////////////////////// -->
    <Command ID="0xd0d" Name="GET_VEHICLE_COMPONENT">
      <Args>
        <Arg Type="INT" Entity="CAR"/>
 <Arg Type="STRING" Desc="NAME"/>
        <Arg Type="INT" Out="true" Desc="COMPONENT"/>
      </Args>
    </Command>
<!-- ////////////////////////////////////////////////////////////////////////// -->

Resultado

Código:

{
    TEST_NEW_OPCODES:

    WAIT 1000

    LVAR_INT VAR_A PLAYER_PED PLAYER_CAR

    WHILE  IS_PC_VERSION
        GET_PLAYER_CHAR 0 PLAYER_PED
        GET_CAR_CHAR_IS_USING PLAYER_PED PLAYER_CAR

        IF IS_KEY_PRESSED VK_KEY_7
            IF DOES_VEHICLE_EXIST PLAYER_CAR
                IF GET_VEHICLE_COMPONENT PLAYER_CAR "misc_a" VAR_A
                    PRINT_STRING_NOW "Existe velho" 1500
                ENDIF
            ENDIF
            WHILE IS_KEY_PRESSED VK_KEY_7
                WAIT 0
            ENDWHILE
        ENDIF
        WAIT 0
    ENDWHILE
    TERMINATE_THIS_CUSTOM_SCRIPT
}

Já tinha testado outros e funcionou bem, no entanto tem partes confusas para mim tipo sobre matrix e etc, locais que usam %d não sei exatamente se é INT ou FLOAT algumas vezes philosoraptor

Já tem isto pronto para poupar este trabalho? Se não tem forma de dividir isto para terminar mais rapido?  I Like Trains

______________________________

.::
Os mods que crio serão colocados no meu workshop link
avatar
Scripter CLEO - Avançado
Scripter CLEO - Avançado
Título : Censurando since 2011
Mensagens : 22944
Reputação : 727
Desde : 03/05/2012
Idade : 22
Localização : Ibitinga - SP
Link : www.MixMods.com.br
Ver perfil do usuáriohttp://MixMods.com.br
em Dom 01 Abr 2018, 13:19
@Um Geek escreveu:Já tinha testado outros e funcionou bem, no entanto tem partes confusas para mim tipo sobre matrix e etc, locais que usam %d não sei exatamente se é INT ou FLOAT algumas vezes philosoraptor
edit: é que no Sanny Builder não importa, daí usa tudo %d mesmo... Eu particularmente não sinto dificuldade (aparentemente) em identificar.

@Um Geek escreveu:Já tem isto pronto para poupar este trabalho? Se não tem forma de dividir isto para terminar mais rapido?  I Like Trains
Há poucos dias eu quis fazer isso. Posso ajudar.

______________________________
BMS agora em nova plataforma:
Forum.MixMods.com.br
avatar
Scripter CLEO - Intermediário
Scripter CLEO - Intermediário
Título : Carinha que mora logo ali
Mensagens : 748
Reputação : 154
Desde : 07/03/2017
Localização : BH - MG
Link : https://gta-geek.blogspot.com.br/
Ver perfil do usuáriohttps://gta-geek.blogspot.com.br/
em Dom 01 Abr 2018, 13:44
Acho complicado já que não conheço esta parte de matrix, como você tem afinidade e costuma usar é mais fácil. também nem sei como testar esta parte. Então pulei os 13 primeiros que se refere a matrix e fiz estes e fui testando

xml:
Código:

   <!-- ////////////////////////////////////////////////////////////////////////// -->   
    <Command ID="0xd0d" Name="GET_CAR_COMPONENT">
      <Args>
        <Arg Type="INT" Entity="CAR"/>
      <Arg Type="STRING" AllowPointer="true" Desc="COMPONENT"/>
        <Arg Type="INT" Out="true"/>
      </Args>
    </Command>
    <Command ID="0xd0e" Name="SET_CAR_COMPONENT_STATE">
      <Args>
        <Arg Type="INT" Entity="CAR"/>
      <Arg Type="STRING" AllowPointer="true" Desc="COMPONENT"/>
        <Arg Type="INT"/>
      </Args>
    </Command>   
    <Command ID="0xd0f" Name="SET_CAR_MODEL_ALPHA">
      <Args>
        <Arg Type="INT" Entity="CAR"/>
      <Arg Type="INT"/>
      </Args>
    </Command>      
    <Command ID="0xd10" Name="SET_CHAR_MODEL_ALPHA">
      <Args>
        <Arg Type="INT" Entity="CHAR"/>
      <Arg Type="INT"/>
      </Args>
    </Command>   
    <Command ID="0xd11" Name="SET_OBJECT_MODEL_ALPHA">
      <Args>
        <Arg Type="INT" Entity="OBJECT"/>
      <Arg Type="INT"/>
      </Args>
    </Command>   
    <Command ID="0xd12" Name="SET_CAR_COMPONENT_ALPHA">
      <Args>
        <Arg Type="INT" Entity="CAR"/>
        <Arg Type="STRING" AllowPointer="true" Desc="COMPONENT"/>
      <Arg Type="INT"/>
      </Args>
    </Command>      
   <!-- ////////////////////////////////////////////////////////////////////////// -->   

Se for dividido deve dar para terminar rápido já que não são muitos.

______________________________

.::
Os mods que crio serão colocados no meu workshop link
avatar
Scripter CLEO - Avançado
Scripter CLEO - Avançado
Título : Censurando since 2011
Mensagens : 22944
Reputação : 727
Desde : 03/05/2012
Idade : 22
Localização : Ibitinga - SP
Link : www.MixMods.com.br
Ver perfil do usuáriohttp://MixMods.com.br
em Dom 01 Abr 2018, 13:54
Eu ia te falar para trocar VEHICLE por CAR mesmo.
Só que corrija a descrição, ela não é toda maiúscula.

Lembre-se de seguir o padrão do GTA3script, por exemplo:
Código:
0D0A=7,store_coords_to %5d% %6d% %7d% from_matrix %1d% with_offsets %2d% %3d% %4d%
Gets coords on offset from matrix.
Param 1: pointer to matrix
Param 2: X offset
Param 3: Y offset
Param 4: Z offset
Param 5: var to store X coord
Param 6: var to store Y coord
Param 7: vat to store Z coord
Virou:
Código:
 <Command ID="0xD0A" Name="GET_OFFSET_FROM_MATRIX_IN_WORLD_COORDS">
    <Args>
      <Arg Type="INT" Desc="Matrix"/>
      <Arg Type="FLOAT" Desc="X Offset"/>
      <Arg Type="FLOAT" Desc="Y Offset"/>
      <Arg Type="FLOAT" Desc="Z Offset"/>
      <Arg Type="FLOAT" Out="true" Desc="X Coord"/>
      <Arg Type="FLOAT" Out="true" Desc="Y Coord"/>
      <Arg Type="FLOAT" Out="true" Desc="Z Coord"/>
    </Args>
  </Command>
Será que dá para usar Entity="MATRIX"? philosoraptor

Depois da matrix eu cuido do quê? philosoraptor

______________________________
BMS agora em nova plataforma:
Forum.MixMods.com.br
avatar
Scripter CLEO - Avançado
Scripter CLEO - Avançado
Título : Censurando since 2011
Mensagens : 22944
Reputação : 727
Desde : 03/05/2012
Idade : 22
Localização : Ibitinga - SP
Link : www.MixMods.com.br
Ver perfil do usuáriohttp://MixMods.com.br
em Dom 01 Abr 2018, 14:52
Já foi quase metade da lista. Not Bad
Código:

  <Command ID="0xD00" Name="MULTIPLY_MATRIX">
    <Args>
      <Arg Type="INT" Desc="Matrix"/>
      <Arg Type="INT" Desc="Matrix"/>
      <Arg Type="INT" Out="true" Desc="Matrix"/>
    </Args>
  </Command>

  <Command ID="0xD01" Name="ROTATE_MATRIX">
    <Args>
      <Arg Type="INT" Desc="Matrix"/>
      <Arg Type="FLOAT" Desc="X Axis"/>
      <Arg Type="FLOAT" Desc="Y Axis"/>
      <Arg Type="FLOAT" Desc="Z Axis"/>
      <Arg Type="FLOAT" Desc="Angle"/>
      <Arg Type="INT" Desc="Combine"/>
    </Args>
  </Command>

  <Command ID="0xD02" Name="GET_MATRIX_X_ANGLE">
    <Args>
      <Arg Type="INT" Desc="Matrix"/>
      <Arg Type="FLOAT" Out="true" Desc="Angle"/>
    </Args>
  </Command>

  <Command ID="0xD03" Name="GET_MATRIX_Y_ANGLE">
    <Args>
      <Arg Type="INT" Desc="Matrix"/>
      <Arg Type="FLOAT" Out="true" Desc="Angle"/>
    </Args>
  </Command>

  <Command ID="0xD04" Name="GET_MATRIX_Z_ANGLE">
    <Args>
      <Arg Type="INT" Desc="Matrix"/>
      <Arg Type="FLOAT" Out="true" Desc="Angle"/>
    </Args>
  </Command>

  <Command ID="0xD05" Name="SET_MATRIX_POSITION">
    <Args>
      <Arg Type="INT" Desc="Matrix"/>
      <Arg Type="FLOAT" Desc="X"/>
      <Arg Type="FLOAT" Desc="Y"/>
      <Arg Type="FLOAT" Desc="Z"/>
    </Args>
  </Command>

  <Command ID="0xD06" Name="GET_MATRIX_POSITION">
    <Args>
      <Arg Type="INT" Desc="Matrix"/>
      <Arg Type="FLOAT" Out="true" Desc="X"/>
      <Arg Type="FLOAT" Out="true" Desc="Y"/>
      <Arg Type="FLOAT" Out="true" Desc="Z"/>
    </Args>
  </Command>

  <Command ID="0xD07" Name="GET_COORDS_OFFSETS_RELATIVE_TO_MATRIX">
    <Args>
      <Arg Type="FLOAT" Desc="X Point"/>
      <Arg Type="FLOAT" Desc="Y Point"/>
      <Arg Type="FLOAT" Desc="Z Point"/>
      <Arg Type="INT" Desc="Matrix"/>
      <Arg Type="FLOAT" Out="true" Desc="X Offset"/>
      <Arg Type="FLOAT" Out="true" Desc="Y Offset"/>
      <Arg Type="FLOAT" Out="true" Desc="Z Offset"/>
    </Args>
  </Command>

  <Command ID="0xD08" Name="SET_MATRIX_ANGLES_XYZ">
    <Args>
      <Arg Type="INT" Desc="Matrix"/>
      <Arg Type="FLOAT" Desc="X Angle"/>
      <Arg Type="FLOAT" Desc="Y Angle"/>
      <Arg Type="FLOAT" Desc="Z Angle"/>
    </Args>
  </Command>

  <Command ID="0xD09" Name="COPY_MATRIX">
    <Args>
      <Arg Type="INT" Desc="Source matrix"/>
      <Arg Type="INT" Desc="Destination matrix"/>
    </Args>
  </Command>

  <Command ID="0xD0A" Name="GET_OFFSET_FROM_MATRIX_IN_WORLD_COORDS">
    <Args>
      <Arg Type="INT" Desc="Matrix"/>
      <Arg Type="FLOAT" Desc="X Offset"/>
      <Arg Type="FLOAT" Desc="Y Offset"/>
      <Arg Type="FLOAT" Desc="Z Offset"/>
      <Arg Type="FLOAT" Out="true" Desc="X Coord"/>
      <Arg Type="FLOAT" Out="true" Desc="Y Coord"/>
      <Arg Type="FLOAT" Out="true" Desc="Z Coord"/>
    </Args>
  </Command>

  <Command ID="0xD0B" Name="GET_CHAR_BONE_MATRIX">
    <Args>
      <Arg Type="INT" Entity="CHAR"/>
      <Arg Type="INT" Enum="BONE" Desc="Bone"/>
      <Arg Type="INT" Out="true" Desc="Matrix"/>
    </Args>
  </Command>

  <Command ID="0xD0C" Name="GET_CAR_COMPONENT_MATRIX">
    <Args>
      <Arg Type="INT" Entity="CAR"/>
      <Arg Type="STRING" AllowPointer="true" Desc="Component"/>
      <Arg Type="INT" Out="true" Desc="Matrix"/>
    </Args>
  </Command>

  <!-- ....... -->

  <Command ID="0xD13" Name="SET_MATRIX_X_ANGLE">
    <Args>
      <Arg Type="INT" Desc="Matrix"/>
      <Arg Type="FLOAT" Desc="Angle"/>
    </Args>
  </Command>

  <Command ID="0xD14" Name="SET_MATRIX_Y_ANGLE">
    <Args>
      <Arg Type="INT" Desc="Matrix"/>
      <Arg Type="FLOAT" Desc="Angle"/>
    </Args>
  </Command>

  <Command ID="0xD15" Name="SET_MATRIX_Z_ANGLE">
    <Args>
      <Arg Type="INT" Desc="Matrix"/>
      <Arg Type="FLOAT" Desc="Angle"/>
    </Args>
  </Command>

  <Command ID="0xD16" Name="SET_MATRIX_ROTATION_FROM_QUAT">
    <Args>
      <Arg Type="INT" Desc="Matrix"/>
      <Arg Type="INT" Desc="Quat"/>
    </Args>
  </Command>

  <Command ID="0xD17" Name="CONVERT_MATRIX_TO_QUAT">
    <Args>
      <Arg Type="INT" Desc="Matrix"/>
      <Arg Type="INT" Desc="Quat"/>
    </Args>
  </Command>

  <Command ID="0xD18" Name="ROTATE_QUAT">
    <Args>
      <Arg Type="INT" Desc="Quat"/>
      <Arg Type="FLOAT" Desc="X Axis"/>
      <Arg Type="FLOAT" Desc="Y Axis"/>
      <Arg Type="FLOAT" Desc="Z Axis"/>
      <Arg Type="FLOAT" Desc="Angle"/>
      <Arg Type="INT" Desc="Combine"/>
    </Args>
  </Command>

  <Command ID="0xD19" Name="GET_NORMALIZED_QUAT">
    <Args>
      <Arg Type="INT" Desc="Quat"/>
      <Arg Type="INT" Desc="Quat"/>
    </Args>
  </Command>

  <Command ID="0xD1A" Name="MULTIPLY_QUAT">
    <Args>
      <Arg Type="INT" Desc="Quat"/>
      <Arg Type="INT" Desc="Quat"/>
      <Arg Type="INT" Out="True" Desc="Quat"/>
    </Args>
  </Command>

  <Command ID="0xD1B" Name="GET_ENTITY_TYPE_AND_CLASS">
    <Args>
      <Arg Type="INT" Desc="Entity"/>
      <Arg Type="INT" Out="True" Desc="Type"/>
      <Arg Type="INT" Out="True" Desc="Class"/>
    </Args>
  </Command>

  <Command ID="0xD1C" Name="NORMALIZE_VECTOR">
    <Args>
      <Arg Type="INT" Desc="Vector"/>
    </Args>
  </Command>

  <Command ID="0xD1D" Name="SET_MATRIX_SLERP">
    <Args>
      <Arg Type="INT" Desc="Matrix result"/>
      <Arg Type="INT" Desc="Matrix"/>
      <Arg Type="INT" Desc="Matrix"/>
      <Arg Type="INT" Desc="t"/>
    </Args>
  </Command>

  <Command ID="0xD1E" Name="SET_QUAT_SLERP">
    <Args>
      <Arg Type="INT" Desc="Quat result"/>
      <Arg Type="INT" Desc="Quat"/>
      <Arg Type="INT" Desc="Quat"/>
      <Arg Type="INT" Desc="t"/>
    </Args>
  </Command>

  <Command ID="0xD1F" Name="GET_CHILD_COMPONENT">
    <Args>
      <Arg Type="INT" Desc="Component"/>
      <Arg Type="INT" Out="True" Desc="Component"/>
    </Args>
  </Command>

  <Command ID="0xD20" Name="GET_NEXT_COMPONENT">
    <Args>
      <Arg Type="INT" Desc="Component"/>
      <Arg Type="INT" Out="True" Desc="Component"/>
    </Args>
  </Command>

  <Command ID="0xD21" Name="GET_COMPONENT_NAME">
    <Args>
      <Arg Type="INT" Desc="Component"/>
      <Arg Type="INT" Out="True" Desc="Name"/>
    </Args>
  </Command>

  <Command ID="0xD22" Name="GET_COMPONENT_LTM">
    <Args>
      <Arg Type="INT" Desc="Component"/>
      <Arg Type="INT" Out="True" Desc="Matrix"/>
    </Args>
  </Command>

  <Command ID="0xD23" Name="GET_COMPONENT_MODELLING_MATRIX">
    <Args>
      <Arg Type="INT" Desc="Component"/>
      <Arg Type="INT" Out="True" Desc="Matrix"/>
    </Args>
  </Command>

  <Command ID="0xD24" Name="SET_QUAT_ELEMENTS">
    <Args>
      <Arg Type="INT" Desc="Quat"/>
      <Arg Type="FLOAT" Out="True" Desc="X"/>
      <Arg Type="FLOAT" Out="True" Desc="Y"/>
      <Arg Type="FLOAT" Out="True" Desc="Z"/>
      <Arg Type="FLOAT" Out="True" Desc="W"/>
    </Args>
  </Command>

  <Command ID="0xD25" Name="SET_MATRIX_ELEMENTS">
    <Args>
      <Arg Type="INT" Desc="Matrix"/>
      <Arg Type="FLOAT" Out="True" Desc="Right X"/>
      <Arg Type="FLOAT" Out="True" Desc="Right Y"/>
      <Arg Type="FLOAT" Out="True" Desc="Right Z"/>
      <Arg Type="INT" Out="True" Desc="Flags"/>
      <Arg Type="FLOAT" Out="True" Desc="Top X"/>
      <Arg Type="FLOAT" Out="True" Desc="Top Y"/>
      <Arg Type="FLOAT" Out="True" Desc="Top Z"/>
      <Arg Type="INT" Out="True" Desc="Unused"/>
      <Arg Type="FLOAT" Out="True" Desc="At X"/>
      <Arg Type="FLOAT" Out="True" Desc="At Y"/>
      <Arg Type="FLOAT" Out="True" Desc="At Z"/>
      <Arg Type="INT" Out="True" Desc="Unused"/>
      <Arg Type="FLOAT" Out="True" Desc="Pos X"/>
      <Arg Type="FLOAT" Out="True" Desc="Pos Y"/>
      <Arg Type="FLOAT" Out="True" Desc="Pos Z"/>
      <Arg Type="INT" Out="True" Desc="Unused"/>
    </Args>
  </Command>
Acho que fiz uns que você fez, mas foda-se.

Vai precisar fazer testes, por exemplo no COPY_MATRIX, pois na descrição do "retorno" diz: "Param 2: pointer to destination matrix ", ou seja, tem que ser um ponteiro para uma outra matrix? Seria estranho, pois não tem comando para criar uma matrix. Acho que ele quis dizer simplesmente "uma variável para guardar a matrix".
Depois testo isso ou você testa.

______________________________
BMS agora em nova plataforma:
Forum.MixMods.com.br
avatar
Scripter CLEO - Intermediário
Scripter CLEO - Intermediário
Título : Carinha que mora logo ali
Mensagens : 748
Reputação : 154
Desde : 07/03/2017
Localização : BH - MG
Link : https://gta-geek.blogspot.com.br/
Ver perfil do usuáriohttps://gta-geek.blogspot.com.br/
em Dom 01 Abr 2018, 19:39
Esta parte de matrix e quat para eu testar é complicado, eu vi a primeira vez pelo MoonAdditions, mas nunca consegui usar facepalm

Fiz mais alguns e juntei com outros que fiz antes https://gist.github.com/UmGeek/40121c1bc3b3c53bfc6b9f964afbd64b

Os comentados significa que pulei por algum motivo, parei  no 0D3A porque fiquei confuso em umas partes por aquilo la do int e float.  Ainda vou testar estes.


Última edição por Um Geek em Dom 01 Abr 2018, 22:52, editado 1 vez(es) (Razão : xml pelo gist, o forum buga o codigo quando edita.)

______________________________

.::
Os mods que crio serão colocados no meu workshop link
avatar
Scripter CLEO - Intermediário
Scripter CLEO - Intermediário
Título : Carinha que mora logo ali
Mensagens : 748
Reputação : 154
Desde : 07/03/2017
Localização : BH - MG
Link : https://gta-geek.blogspot.com.br/
Ver perfil do usuáriohttps://gta-geek.blogspot.com.br/
em Dom 01 Abr 2018, 20:30
https://drive.google.com/open?id=1VDllUYWSq41k8QjGfQGWZS3XQrNiUx6N

Mod teste usando newOpccodes em gta3script:


Teclas de comandos Y e N.

Código:

SCRIPT_START
{
    NOP

    WAIT 500

    //PRINT_HELP_STRING "Hydra test"

    LVAR_INT scplayer scvehicle itemp_a colour_alpha

    CONST_INT hydra_model 520

    GET_PLAYER_CHAR 0 scplayer

    WHILE IS_PC_VERSION
        //----------------------------------------------------
        IF TEST_CHEAT HYD
            STREAM_CUSTOM_SCRIPT "Hydra Modo Furtivo.cs" 1
            BREAK
        ENDIF
        //----------------------------------------------------
        IF IS_BUTTON_PRESSED 0 11
            GET_CAR_CHAR_IS_USING scplayer scvehicle
            IF DOES_VEHICLE_EXIST scvehicle
                IF IS_CAR_MODEL scvehicle hydra_model
                    colour_alpha = 255
                    WHILE (colour_alpha > 50)
                        SET_CHAR_MODEL_ALPHA scplayer colour_alpha
                        colour_alpha --
                        SET_CAR_MODEL_ALPHA scvehicle colour_alpha
                        WAIT 0
                    ENDWHILE
                    WHILE IS_CHAR_IN_ANY_PLANE scplayer
                    AND NOT IS_BUTTON_PRESSED 0 10
                        WAIT 0
                    ENDWHILE
                    WHILE (colour_alpha) < 255)
                        SET_CHAR_MODEL_ALPHA scplayer colour_alpha
                        colour_alpha ++
                        SET_CAR_MODEL_ALPHA scvehicle colour_alpha
                        WAIT 0
                    ENDWHILE   
                    SET_CAR_MODEL_ALPHA scvehicle 255
                    SET_CHAR_MODEL_ALPHA scplayer 255         
                ENDIF
            ENDIF
        ENDIF
        //----------------------------------------------------
        WAIT 0   
    ENDWHILE
    TERMINATE_THIS_CUSTOM_SCRIPT
}
SCRIPT_END

Algo que já fiz testando os opcodes que adicionei aqui.

______________________________

.::
Os mods que crio serão colocados no meu workshop link
avatar
Scripter CLEO - Avançado
Scripter CLEO - Avançado
Título : Censurando since 2011
Mensagens : 22944
Reputação : 727
Desde : 03/05/2012
Idade : 22
Localização : Ibitinga - SP
Link : www.MixMods.com.br
Ver perfil do usuáriohttp://MixMods.com.br
em Dom 01 Abr 2018, 20:35
Nesses
Código:
<Arg Type="STRING" AllowPointer="true" Desc="Component"/>
Coloque descrição "Name", pois tá pedindo um nome, e não um componente.
Código:

    <Command ID="0xD2A" Name="GET_CAR_NUMBER_OF_COLLIDED_ENTITES">
      <Args>
         <Arg Type="INT" Entity="CAR"/>
         <Arg Type="INT" Out="true" Desc="Store"/>
      </Args>
    </Command>
Esses Desc="Store" também não ficaram bons, não é padrão do GTA3script ter isto nos retornos. Remove todos esses "store".

Código:
<Command ID="0xD2E" Name="SET_THREAD">
Não fez sentido, como assim "setar thread"? Este opcode seta a variável da thread, não a thread. Teria que ser SET_THREAD_VAR e GET_THREAD_VAR.

Código:
<Arg Type="INT" Desc="Bone"/>
Deixa:
Código:
<Arg Type="INT" Enum="BONE" Desc="Bone"/>
Assim vai poder usar enum para os bones, o que originalmente no gta3script não tem, mas no futuro pode ter ou alguém pode colocar.

Código:
<Command ID="0xD33" Name="SET_CAR_DOR_WINDOW_STATE">
DOR.

Código:
<Arg Type="INT" Desc="Entity struct" Out="true"/>
Deixa só "Entity", especificar em "struct" fica estranho e é o mesmo de "Entity pointer", acho melhor usar simplesmente "Entity" do mesmo modo que é usado "Component" e não "Component struct".

Código:

    <Command ID="0xD39" Name="GET_CHAR_MAX_HEALTH">
      <Args>
         <Arg Type="INT" Entity="CHAR"/>
         <Arg Type="INT" Desc="Store value"/>
      </Args>
    </Command>  
FLOAT?

______________________________
BMS agora em nova plataforma:
Forum.MixMods.com.br
avatar
Scripter CLEO - Intermediário
Scripter CLEO - Intermediário
Título : Carinha que mora logo ali
Mensagens : 748
Reputação : 154
Desde : 07/03/2017
Localização : BH - MG
Link : https://gta-geek.blogspot.com.br/
Ver perfil do usuáriohttps://gta-geek.blogspot.com.br/
em Dom 01 Abr 2018, 21:18

Coloque descrição "Name", pois tá pedindo um nome, e não um componente.
Fiquei um tempo analisando o que seria melhor por, mas acho que vou cortar a descrição, poupa tempo, alem de que se passar o mouse mostra que tipo de valor leva, acho que não fica complicado descobrir o que é. No caso mostraria "string" que seria o nome do componente mesmo.


Não fez sentido, como assim "setar thread"? Este opcode seta a variável da thread, não a thread. Teria que ser SET_THREAD_VAR e GET_THREAD_VAR.
set_thread _var_to , acho que ficaria assim, o opcode é "set_thread %1d% var %2d% to %3d%"

No caso do dor eu tenho que policiarmelhor porque as teclas do teclado são um pouco duras então acontece philosoraptor



Atualizado
Código:

https://gist.github.com/UmGeek/40121c1bc3b3c53bfc6b9f964afbd64b#file-newopcodes-xml-L228

Não entendi o do float, Health no jogo não é em int?


Última edição por Um Geek em Dom 01 Abr 2018, 22:59, editado 2 vez(es)

______________________________

.::
Os mods que crio serão colocados no meu workshop link
avatar
Scripter CLEO - Avançado
Scripter CLEO - Avançado
Título : Censurando since 2011
Mensagens : 22944
Reputação : 727
Desde : 03/05/2012
Idade : 22
Localização : Ibitinga - SP
Link : www.MixMods.com.br
Ver perfil do usuáriohttp://MixMods.com.br
em Dom 01 Abr 2018, 22:00
@Um Geek escreveu:set_thread _var_to , acho que ficaria assim
Só que no GTA3script não existe esses "TO", coisa do Sanny Builder.

@Um Geek escreveu:Não entendi o do float, Health no jogo não é em int?
Não sei... Pelo menos no MixSets o valor de max health (do CJ) é float. Dá uma testadinha.

______________________________
BMS agora em nova plataforma:
Forum.MixMods.com.br
avatar
Scripter CLEO - Intermediário
Scripter CLEO - Intermediário
Título : Carinha que mora logo ali
Mensagens : 748
Reputação : 154
Desde : 07/03/2017
Localização : BH - MG
Link : https://gta-geek.blogspot.com.br/
Ver perfil do usuáriohttps://gta-geek.blogspot.com.br/
em Dom 01 Abr 2018, 22:39

Não sei... Pelo menos no MixSets o valor de max health (do CJ) é float. Dá uma testadinha.

Testei, muito bugado isto ai, vindo que GET_CHAR_HEALTH é int , realmente é float sec




Este não quis funcionar aqui.

Código:

0D49=3, %3d% = compare_strings %1s% %2s% // IF and SET
Compares two strings.
Param 1: string/pointer to string
Param 2: string/pointer to string
Condition: returns true if strings are equal

Código:

    <Command ID="0xd49" Name="COMPARE_STRINGS">
 <Args>
 <Arg Type="STRING" AllowPointer="true"/>
 <Arg Type="STRING" AllowPointer="true"/>
 </Args>
    </Command>

Na hora de testar que vai ser o bicho.




Antes de sair coloquei os que voce fez para testar, mas o compilador nem finalizou o trabalho


Acho que só por conta destes trues com T maiúsculos.







______________________________

.::
Os mods que crio serão colocados no meu workshop link
Conteúdo patrocinado
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum