Jump to content

[REACTIE] SCM Tutorials


Recommended Posts

Geplaatst:

Tsja, er kunnen verscheidene redenen zijn waarom je missie het niet doet. Dat kan bijvoorbeeld zijn omdat je het niet op de goede plaats gecompiled hebt. Daarnaast kan het gewoon aan de code liggen. Wij kunnen zo geen oplossing geven, dan moet je toch echt meer informatie geven.

  • Reacties 150
  • Created
  • Laatste reactie

Top Posters In This Topic

  • Dutchy3010

    35

  • AwiVC

    20

  • Tjerk

    15

  • Apple-Mac

    10

Top Posters In This Topic

Geplaatst:

dit is mijn missie dan:

{
 use macro (Ctrl+J) "headsa"
 to insert a file header      
}
{$VERSION 3.0.0000}
var
$PLAYER_CHAR: Player
end // var 
03A4: name_thread 'MAIN' 
01F0: set_max_wanted_level_to 6 
0111: toggle_wasted_busted_check 0 
00C0: set_current_time_hours_to 8 minutes_to 0 
04E4: unknown_refresh_game_renderer_at 2488.56 -1666.84 
03CB: set_rendering_origin_at 2488.56 -1666.84 13.38 
0053: $PLAYER_CHAR = create_player #NULL at 2488.56 -1666.84 13.38 
01F5: $PLAYER_ACTOR = create_player_actor $PLAYER_CHAR 
07AF: $PLAYER_GROUP = player $PLAYER_CHAR group 
0373: set_camera_directly_behind_player 
01B6: set_weather 0 
0001: wait 0 ms 
087B: set_player $PLAYER_CHAR clothes_texture "PLAYER_FACE" model "HEAD" body_part 1 
087B: set_player $PLAYER_CHAR clothes_texture "JEANSDENIM" model "JEANS" body_part 2 
087B: set_player $PLAYER_CHAR clothes_texture "SNEAKERBINCBLK" model "SNEAKER" body_part 3 
087B: set_player $PLAYER_CHAR clothes_texture "VEST" model "VEST" body_part 0 
070D: rebuild_player $PLAYER_CHAR 
01B4: toggle_player $PLAYER_CHAR can_move 1 
016A: fade 1 time 0 
04BB: select_interior 0 
0629: change_integer_stat 181 to 4 
016C: restart_if_wasted_at 2027.77 -1420.52 15.99 angle 137.0 town_number 0 
016D: restart_if_busted_at 1550.68 -1675.49 14.51 angle 90.0 town_number 0 
0180: set_on_mission_flag_to $ONMISSION // Note: your missions have to use the variable defined here 
0004: $DEFAULT_WAIT_TIME = 250
03E6: remove_text_box 

// put your create_thread commands here



:MAIN_LOOP
0001: wait $DEFAULT_WAIT_TIME ms
00BF: $TIME_HOURS = current_time_hours, $TIME_MINS = current_time_minutes
0002: jump @MAIN_LOOP 


// put your mods (threads) here


//-------------Mission 1---------------
// put your missions here
$ONMISSION JUMP @BEGIN_MISSIE
:BEGIN_MISSIE
03BC: 10@ = create_sphere_at $X_JOHNSON_HOUSE $Y_JOHNSON_HOUSE $Z_JOHNSON_HOUSE radius 1.0
0002: jump @MODEL

:MODEL
thread 'MODEL'
//Load models
0247: load_model #DUNE
0247: load_model #MP5
0247: load_model #DNMYLC
038B: load_requested_models 

:MODEL_LOAD
00D6: if or 
8248:   not model #DUNE available
8248:   not model #MP5 available
8248:   not model #DNMYLC available
004D: jump_if_false @MODEL_SPAWN                                              
0001: wait 0 ms 
0002: jump @MODEL_LOAD

:MODEL_SPAWN
0674: set_car_model #DUNE  numberplate "SANDKING" 
00A5:cars_to_generate_to  0 $dune = create_car #DUNE  at 307.5282 2535.864 16.59792
Car.Angle($dune)= 270.0
0224: set_car $dune health_to 10000

0186: $m1 = create_marker_above_car $dune
01B2: give_actor $PLAYER_ACTOR weapon 5 ammo 10 // Load the weapon model before using this
01B9: set_actor $PLAYER_ACTOR armed_weapon_to 5
repeat
wait 0
until Actor.InCar($PLAYER_ACTOR, $dune)
Marker.Disable($m2)

0004: $coordinaat_x = -694.5941
0004: $coordinaat_y = 2326.075
0004: $coordinaat_z = 129.0334

:MODEL_WRECKED
wait 0 ms                                        
if     
 0119:   car $dune wrecked               
 004D: jump_if_false @MODEL_END                                 
wait 0 ms                                              
jump @MODEL

:MODEL_END
if
01AE:   car $dune sphere 0 near_point $coordinaat_x $coordinaat_y radius 5.0 5.0 stopped 
004D: jump_if_false @MODEL_WRECKED
wait 0 ms

thread 'MODEL'
//Load model
0247: load_model #NRG500 

:MODEL_LOAD1
00D6: if or 
8248:   not model #NRG500 available

:MODEL_SPAWN1
0674: set_car_model #NRG500  numberplate "JUMPKING" 
00A5: $nrg500 = create_car #NRG500  at -663.2247 2306.338 135.9137
Car.Angle($nrg500)= 0.0
0224: set_car $nrg500 health_to 10000

repeat
wait 0
until Actor.InCar($PLAYER_ACTOR, $nrg500)
Marker.Disable($m10)

0004: $coordinaat_x = -694.5941
0004: $coordinaat_y = 2326.075
0004: $coordinaat_z = 129.0334

10@ = Actor.Create(CIVMALE, #DNMYLC, -976.7923, 2300.949, 62.24054)
Marker.Disable($marker)
Actor.Angle(10@) = 0.0
0187: $marker = create_marker_above_actor 10@ 
actor.WeaponAccuracy(10@)= 1000
actor.Health(10@) = 1000
01B2: give_actor 10@ weapon 5 ammo 1000 // Load the weapon model before using this
01B9: set_actor 10@ armed_weapon_to 5
05E2: AS_actor 10@ kill_actor $PLAYER_ACTOR

repeat
wait 0 ms
until actor.Dead(10@)

0394: play_music 1
01E3: show_text_1number_styled GXT 'M_PASS' number 10000 time 5000 style 1 // MISSION PASSED!~n~~w~$~1~
Player.Money($PLAYER_CHAR) += 100000000
0249: release_model #DUNE
0249: release_model #NRG500
0249: release_model #MP5
0249: release_model #DNMYLC
Marker.Disable($marker)

end_thread


//-------------External script 0---------------
// put your external scripts here

Geplaatst:

1. $ONMISSION JUMP @BEGIN_MISSIE, waar heb je deze opcode vandaan?

Je kunt wel iets zeggen als:

if
$ONMISSION == 1
then
jump @BEGIN_MISSIE
end

Zoals jij het hebt, lukt het niet.

2. Hij komt niet eens bij je code! Je moet wel Create_thread @... plaatsen, wil je uit de main_loop komen. Het principe is dat je met de main_loop ervoor zorgt dat er nooit niets wordt gelezen. Dat stukje wordt altijd gelezen. Maar als je dus nergens anders een thread creëert, kan de code nooit verder na de loop. Is dus logisch dat je missie niet werkt, want je code wordt niet gelezen!

  • 6 maanden later...
Geplaatst:

oke ik vind het best leuk en aardig maar hoe moet je het opslaan en waar moet je op drukken in de game als je de mod wil activeren

Geplaatst:
oke ik vind het best leuk en aardig maar hoe moet je het opslaan en waar moet je op drukken in de game als je de mod wil activeren

Dit ligt eraan. Opslaan kan door op het knopje "Compile and copy" of "compile en kopiëren" (rennend mannetje met een plusje). Maar de activatie ligt aan jou script. Als jij hebt gezegd dat hij pas iets moet doen als je op 4 drukt, dan moet je dat doen. Als jij een simpele autospawn hebt gemaakt, zonder andere dingen, zou dit gewoon meteen moeten werken mits je het op de goede plek zet ^_^

Geplaatst:
oke ik vind het best leuk en aardig maar hoe moet je het opslaan en waar moet je op drukken in de game als je de mod wil activeren

Dit ligt eraan. Opslaan kan door op het knopje "Compile and copy" of "compile en kopiëren" (rennend mannetje met een plusje). Maar de activatie ligt aan jou script. Als jij hebt gezegd dat hij pas iets moet doen als je op 4 drukt, dan moet je dat doen. Als jij een simpele autospawn hebt gemaakt, zonder andere dingen, zou dit gewoon meteen moeten werken mits je het op de goede plek zet ^_^

oke ik zal het proberen

Geplaatst:

ik heb op compile en kopiëren geklikt en het in mijn cleo mat gezet maar als ik gta nu opstart en ik laat mijn savegame loopt hij vast :?

Geplaatst:
ik heb op compile en kopiëren geklikt en het in mijn cleo mat gezet maar als ik gta nu opstart en ik laat mijn savegame loopt hij vast :?

Dan zit er een fout in je script. Wil je het script even posten, dan kunnen we je goed helpen. :)

Geplaatst:
ik heb op compile en kopiëren geklikt en het in mijn cleo mat gezet maar als ik gta nu opstart en ik laat mijn savegame loopt hij vast :?

Dan zit er een fout in je script. Wil je het script even posten, dan kunnen we je goed helpen. :)

dit is dat script van die tutorial die heb ik overgenomen en in Sanny Builder gezet en toen heb ik op compile en kopiëren gedrukt en in de map cleo gezet

{

use macro (Ctrl+J) "headsa"

to insert a file header

}

{$VERSION 3.0.0000}

thread 'MAIN'

var

$PLAYER_CHAR: Player

end // var

01F0: set_max_wanted_level_to 6

set_wb_check_to 0

00C0: set_current_time 8 0

04E4: unknown_refresh_game_renderer_at 2488.5601 -1666.84

Camera.SetAtPos(2488.5601, -1666.84, 13.38)

$PLAYER_CHAR = Player.Create(#NULL, 2488.5601, -1666.84, 13.38)

$PLAYER_ACTOR = Actor.EmulateFromPlayer($PLAYER_CHAR)

07AF: $PLAYER_GROUP = player $PLAYER_CHAR group

Camera.SetBehindPlayer

set_weather 0

wait 0 ms

$PLAYER_CHAR.SetClothes("PLAYER_FACE", "HEAD", Head)

$PLAYER_CHAR.SetClothes("JEANSDENIM", "JEANS", Legs)

$PLAYER_CHAR.SetClothes("SNEAKERBINCBLK", "SNEAKER", Shoes)

$PLAYER_CHAR.SetClothes("VEST", "VEST", Torso)

$PLAYER_CHAR.Build

$PLAYER_CHAR.CanMove = True

fade 1 (out) 0 ms

select_interior 0

0629: change_stat 181 (islands unlocked) to 4

016C: restart_if_wasted at 2027.77 -1420.52 15.99 angle 137.0 for_town_number 0

016D: restart_if_busted at 1550.68 -1675.49 14.51 angle 90.0 for_town_number 0

0180: set_on_mission_flag_to $ONMISSION // Note: your missions have to use the variable defined here ($ONMISSION)

03E6: remove_text_box

// put your create_thread commands here

create_thread @MODEL

// IDLE LOOP

:leeg

wait 500

jump @leeg

end_thread

:MODEL

thread "MODEL"

// Load models

0247: load_model #BFYST

038B: load_requested_models

:MODEL_LOAD

00D6: if

8248: not model #BFYST available

004D: jump_if_false @MODEL_SPAWN

0001: wait 0 ms

0002: jump @MODEL_LOAD

:MODEL_SPAWN

10@ = Actor.Create(CIVFEMALE, #BFYST, 2488.5601, -1680.84, 13.3438 )

//Hier komt wat je met je actor wilt doen

0249: release_model #BFYST

end_thread

Geplaatst:

Ik zie al wat er fout is. Dit is geen CLEO script. Dit is een stripped SCM, dat is een op zich zelf staand script. Dit moet niet gecompiled worden als Cleo, en het is ook niet gecompiled als cleo. Dit word namelijk gecompilet als "SCM" en die heb je in de map CLEO gestopt. Dit werkt niet. Ookal zou hij het dan in lezen, loopt het nog vast. Dit script moet je vervangen met de "main.scm" (wel dezelfde naam geven). Dan zal het werken :)

Geplaatst:
Ik zie al wat er fout is. Dit is geen CLEO script. Dit is een stripped SCM, dat is een op zich zelf staand script. Dit moet niet gecompiled worden als Cleo, en het is ook niet gecompiled als cleo. Dit word namelijk gecompilet als "SCM" en die heb je in de map CLEO gestopt. Dit werkt niet. Ookal zou hij het dan in lezen, loopt het nog vast. Dit script moet je vervangen met de "main.scm" (wel dezelfde naam geven). Dan zal het werken :)

oke weet jij dan een site met een tut. voor een cleo?

Geplaatst:

In de MTL (Master Tutorial List) staan een paar tutorials van BC7 die over CLEO scripten gaan, maar deze zijn voor ervaren scripters. Er is niet echt een aparte tutorial voor CLEO, omdat SCM en CLEO hetzelfde (met een aantal uitzonderingen) is. Je moet dus het script leren begrijpen, en in een CLEO script zetten. En erboven moet je:

{$CLEO .cs}

zetten. Dan compiled hij het als een .cs bestand. Als je je script wil eindigen, moet je:

0A93: end_custom_thread

gebruiken. Daar zet je je script dan in. Je moet dus niet het kant en klare script kopiëren die gegeven word!

Geplaatst:
In de MTL (Master Tutorial List) staan een paar tutorials van BC7 die over CLEO scripten gaan, maar deze zijn voor ervaren scripters. Er is niet echt een aparte tutorial voor CLEO, omdat SCM en CLEO hetzelfde (met een aantal uitzonderingen) is. Je moet dus het script leren begrijpen, en in een CLEO script zetten. En erboven moet je:

{$CLEO .cs}

zetten. Dan compiled hij het als een .cs bestand. Als je je script wil eindigen, moet je:

0A93: end_custom_thread

gebruiken. Daar zet je je script dan in. Je moet dus niet het kant en klare script kopiëren die gegeven word!

oke ik heb te tut gevonden badankt! :tu:

  • 4 weken later...
Geplaatst:

*bump*

Tutorial 3: Car's Spawnen

Ik zit met een probleempje met custom nummerbord. Ik heb hiervoor de volgende code gebruikt:

014B: $BullitCarspawnFD666 = init_parked_car_generator_w_numberplate #BULLET -1 -1  1 alarm  0 door_lock 0  0  10000 plate "_FD666__" at 1517.392  -688.9825   94.75 angle 90.0

Hier heb ik zelf geen fout in kunnen ontdekken. Maar de pc duidelijk wel. Ik krijg namelijk de volgende error:

2v2freo.jpg

Maar zelf dacht ik juist dat dit de juiste code is om een nummerbord te plaatsen:

014B: $BullitCarspawnFD666 = init_parked_car_generator #BULLET  -1 -1  1 alarm  0 door_lock 0  0  10000 at  1517.392  -688.9825   94.75  angle  90.0
0674: set_car_model #BULLET numberplate "_FD666__"
014C: set_parked_car_generator $BullitCarSpawnFD666 cars_to_generate_to 101

Met deze code kan ik rustig compilen zonder error's. Hij heeft ook gewoon een nummerbord. Helaas met willekeurige getallen en letters in plaats van met FD666. Wat doe ik fout en nog belangrijker, hoe zorg ik er voor dat mijn script wel werkt?

Een reactie plaatsen

Je kan nu een reactie plaatsen en pas achteraf registreren. Als je al lid bent, log eerst in om met je eigen account een reactie te plaatsen.

Gast
Op dit onderwerp reageren...

×   Je hebt text geplaatst met opmaak.   Opmaak verwijderen

  Only 75 emoji are allowed.

×   Je link is automatisch ingevoegd.   In plaats daarvan weergeven als link

×   Je vorige bewerkingen zijn hersteld.   Alles verwijderen

×   You cannot paste images directly. Upload or insert images from URL.

  • Recent actief   0 leden

    • Er zijn hier geen geregistreerde gebruikers aanwezig.

×
×
  • Create New...