Jump to content
Geplaatst:
comment_247164

UNDER CONSTRUCTION!!!

Ik heb besloten een tutorial te maken over (mission)coding omdat er bijna geen zijn en al helemaal weinig nederlandse (en voor mijn eigen plezier ;) )

Benodigde tools:

SA PC Mission Builder v0.33

GTA SA Place Manager

Kladblok

Ervaring met SA Place Manager

Geduld ;)

Inhoudsopgave & gebruik

Inhoudsopgave:

Tutorial

--Stap 1: Voorbereiding & Backups

--Stap 2: Decompileren

--Stap 3: Het echte werk

----Stap 3a: Het plaatsen van een auto

----Stap 3b: Wapens plaatsen

----Stap 3c: Het plaatsen van een pickup

----Stap 3d: Variabeles

----Stap 3e: Markers/spheres

----Stap 3f: Labels

----Stap 3g: IF's

----Stap 3h: Threads

--Stap 4: Compileren en in het spel zetten

--Stap 5: Testen

--TROUBLESHOOTING

Skateboard spawnen in SA

--Stap 1: Configuratiebestanden aanpassen

--Stap 2: Het maken van een pickup

Objectnamen

--Voertuigen

--Wapens

Gebruik: je moet de eerste 2 stappen doen, maar je kunt best als je een ding uit stap 3a-3g hebt gedaan, verder gaan naar stap 4 & 5 (ik zou 3a wel doen, veel uitleg ;) )

Tip: zoek je een opcode? Er staan een heleboel in de bestanden OPCODES.TXT, FINDOPC.TXT en FINDOPC2.TXT in de map van de MB

Stap 1: Voorbereiding & Backups

Voordat je aan de slag gaat adviseer(doen!!) ik je om je DATA map van SA en je savegames te backupen

Unzip de Mission Builder in een map waar jij wilt

Kopieer de bestanden peds.ide, vehicles.ide en default.ide uit de DATA map van SA naar de map waarin de Mission Builder is geunzipped

Open het bestand SASCM.INI in de MB map (met kladblok of met de MB zelf) en voeg deze twee regels toe (aan het eind):

:JGS1
0001: wait 100 ms
03A4: name_thread 'PANC_1'
0005: $2000 = 40.30668
0005: $2001 = 20.28515
0005: $2002 = 14.26602

:JGS1_0
02A7: $2003 = create_icon_marker_and_sphere  34 at  $2000 $2001 $2002
0004: $eiland_m1_on = 1

:JGS1_2
0001: wait 100 ms
00D6: if 0
0038:    $ON_MISSION == 0
004D: jump_if_false ££JGS1_5
00D6: if 1
0038:    $ON_MISSION == 0
0038:    $eiland_m1_on == 0
004D: jump_if_false ££JGS1_3
02A7: $2003 = create_icon_marker_and_sphere  34 at  $2000 $2001 $2002
0004: $eiland_m1_on = 1

:JGS1_3
00D6: if 0
0256:    player $PLAYER_CHAR defined
004D: jump ££JGS1_2   
00D6: if 0
00FF:    actor $PLAYER_ACTOR 0 ()near_point_on_foot $2000 $2001 $2002 radius 3.0 3.0 2.0
004D: jump_if_false ££JGS1_2
00D6: if 0
03EE:   player $PLAYER_CHAR controllable
004D: jump_if_false ££JGS1_2
0164: disable_marker $2003
0004: $eiland_m1_on = 0
00BA: text_styled 'JGS_M1'  1500 ms  2
0050: gosub ££PANCCAM
0417: start_mission 3

:JGS1_4
0001: wait 0 ms
00D6: if 0
0038:    $m_135_tried == 1
004D: jump_if_false ££JGS1_4
0004: $m_135_tried = 0
00D6: if 0
0038:    $m_135_done == 1
004D: jump_if_false ££JGS1_2
00BE: text_clear_all 
03E6: remove_text_box
01E3: text_1number_styled 'M_PASS'  1000  5000 ms  1
0318: set_latest_mission_passed 'PANCA_1'
030C: set_mission_points +=  1
0394: play_music  1
01BD: $184 = current_time_in_ms 
0109: player $PLAYER_CHAR money +=  1000
0110: clear_player $PLAYER_CHAR wanted_level
004E: end_thread

:JGS1_5
00D6: if 0
0038:    $eiland_m1_on == 1
004D: jump_if_false ££JGS1_2
0164: disable_marker $2003
0004: $eiland_m1_on = 0
0002: jump ££JGS1_2   

:PANCCAM
0002: jump ££PANCCAM5

:PANCCAM1
0169: set_fade_color  0  0  0
016A: fade  0 ()  500 ms

:PANCCAM2
00D6: if  0
016B:   fading
004D: jump_if_false ££PANCCAM3
0001: wait  0 ms
00BE: text_clear_all
03E6: remove_text_box
0002: jump ££PANCCAM2

:PANCCAM3
00D6: if  0
0256:   player $PLAYER_CHAR defined
004D: jump_if_false ££PANCCAM4
016A: fade  0 ()  0 ms
02EB: restore_camera_with_jumpcut
0687: $PLAYER_ACTOR 
016A: fade  0 ()  0 ms

:PANCCAM4
0051: return

:PANCCAM5
00D6: if  0
0256:   player $PLAYER_CHAR defined
004D: jump_if_false ££PANCCAM6
03E6: remove_text_box
01B4: set_player $PLAYER_CHAR frozen_state  0 (frozen)
0050: gosub ££PANCCAM1

:PANCCAM6
0051: return

Ik gebruik altijd die thread (met een paar kleine aanpassinkjes natuurlijk). Kijkt en leert zou ik zeggen.

(Als je de hele thread of grote stukken ervan hebt gebruikt in je eigen mod, zou je dan zo vriendelijk willen zijn om mij bij de thanks ofzo te zetten.)

Stap 4: Compileren en in het spel zetten

Ga naar Run --> Compile en wees geduldig. Je kunt de status aflezen in de titelbalk

Hij geeft een melding dat hij klaar is.

Ga nu naar de map waarin je hem hebt laten decompileren. Daar staan nu de bestanden MAIN.SCM en SCRIPTS.IMG in. Kopieer deze bestanden naar de GTA-map\DATA\Scripts.

Stap 5: Testen

Dit is ongetwijfeld het makkelijkste deel. Maar let op je kunt je oude savegames niet meer gebruiken (hiervoor heb je een backup gemaakt, weet je nog?). Ga naar de plek waar hij zou moeten staan en kijk of dat het geval is.

Bij mij wel (er zit een raar blokje in de radar, maar dat is een ander experiment van mij):

s29vv.th.jpg

Ik hoop dat deze tut nuttig was voor je.

Als je nog vragen/opmerkingen/suggesties ofzo hebt, post dat hier of PM me

TROUBLESHOOTING:

V: Als ik compileer dan krijg ik een foutmelding over mijn #CHEETAH

A: Check de spelling, of kijk of er iets mis is met vehicles.ide

V: Als ik compileer dan krijg ik een foutmelding over Parameter 4 not set

A: Je hebt waarschijnlijk kommas ingevuld, waar punten moeten staan (in de coordinaten)

V: Als ik compileer dan krijg ik een foutmelding over DEFINE MEMORY

A: Pas DEFINE MEMORY (staat op de 4e regel) aan tot de in de foutmelding aangegeven waarde. (Het mag ook hoger zijn)

V: In de MB kan hij INITIAL_1 niet vinden

A: Zet je tekstcursor bovenaan en probeer het opnieuw

V: Ik krijg "Opcode out of range: 3004h address: 0000AC6h" bij het decompileren.

A: Je hebt SASCM.INI niet aangepast

Laatst geupdate op:

Bewerkt: door JGuntherS

  • Reacties 70
  • Bezichtigingen 27.6k
  • Aangemaakt
  • Laatste reactie

Populairste bijdragers

Featured Replies

Geplaatst:
  • Auteur
comment_336732

Bij een 100%-savegame zijn alle missies gehaald, ook de zijmissies. Als je alle storyline-missies gehaald wilt hebben, moet je een storyline-gehaalde-savegame downloaden. Ik weet zo niet waar zo'n savegame te downloaden is.

  • 3 maanden later...
Geplaatst:
comment_420639

ik krijg met sa mission builder de melding''memory beyond the defined range has been accessed. Use DEFINE MEMORY 46326 or higher to allocate enough memory. Then recompile'' na dat ik main.scm heb gebruikt en wou compileren

Geplaatst:
  • Auteur
comment_420813
ik krijg met sa mission builder de melding''memory beyond the defined range has been accessed. Use DEFINE MEMORY 46326 or higher to allocate enough memory. Then recompile'' na dat ik main.scm heb gebruikt en wou compileren

Als je dat krijgt moet je de "DEFINE MEMORY"-regel aanpassen, die staat ergens bijna bovenaan. Maak er dus "DEFINE MEMORY 46326" van en het werkt allemaal weer :).

  • 2 maanden later...
Geplaatst:
comment_489970

JGuntherS

Wat bedoel je met missiepunten helemaal volmaken want ik heb dat op gezocht van catalina alleen weet niet wat de missie punten zijn

Hoe bedoel je? Dat je alle normale missies in 1 keer hebt uitgespeeld? Daarvor moet je de missie-variabeles aanpassen. Variabeles zoals $CATALINA_MISSIONS_PASSED. En je moet de missiepunten helemaal vol maken.

hoe maak je de missie punten dan helemaal vol en welke zijn dat dan

ik ben hier heen gegaan$CATALINA_MISSIONS_PASSED maar waar staan de variabels dan

sorry voor het dubbel posten

Bewerkt: door Michael Hilgen

  • 4 maanden later...
Geplaatst:
comment_564126

sorry voor de bump :$

maar ik had netjes de nieuwe main.scm in de data/scripts map gedaan.

ik doe perongeluk load game en mijn savegame doet ut gewoon. maar de wat ik had verandert erin deed het niet.

en new game deed ut ook niet

  • 2 weken later...
Geplaatst:
comment_572784

hoi ik wil een auto plaatzen regels moet je gebruikken??

de uoto en de rest weet ik wel maar dat van plaats en create die weet ik niet en waar moetten die regels

van create en build . ik zat te zoekken waar de caddy ge plaats zijn moet dan een aouto daar ergens??

alvast dank

  • 2 weken later...
Geplaatst:
comment_583987
Hmm, ik begrijp je niet helemaal, kun je het wat beter uitleggen en in volle zinnen? Dat leest wat makkelijker ;).

Ik heb de Missie punten van Catalina op gezocht maar ik snap niet wat je bedoelt met misse punten en hoe je ze vol kan maken

Geplaatst:
  • Auteur
comment_584828

Hmm, ik begrijp je niet helemaal, kun je het wat beter uitleggen en in volle zinnen? Dat leest wat makkelijker ;).

Ik heb de Missie punten van Catalina op gezocht maar ik snap niet wat je bedoelt met misse punten en hoe je ze vol kan maken

030C: set_mission_points += 1

Als ik main.scm heb geopend

en zo een map heb uitgekozen

krijg ik een error

Als je geen gedetailleerde informatie geeft kan niemand je helpen...

  • 3 weken later...
Geplaatst:
comment_600556

Ik heb weer een nieuwe vraag: Hoe werk ''Angel'' als je auto plaatst??

want, elke keer als ik een auto plaats staat die verkeerd...(hij staat verkeerdom of so...) :?:?

Bewerkt: door Michael Hilgen

Geplaatst:
comment_600983

Hmm, ik begrijp je niet helemaal, kun je het wat beter uitleggen en in volle zinnen? Dat leest wat makkelijker ;).

Ik heb de Missie punten van Catalina op gezocht maar ik snap niet wat je bedoelt met misse punten en hoe je ze vol kan maken

030C: set_mission_points += 1

Als ik main.scm heb geopend

en zo een map heb uitgekozen

krijg ik een error

Als je geen gedetailleerde informatie geeft kan niemand je helpen...

Ik Bedoel dit: Variabeles zoals $CATALINA_MISSIONS_PASSED. En je moet de missiepunten helemaal vol maken.

WAT word hier bedoelt met de missie punten helemaal vol maken????

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...

Recent actief 0

  • Er zijn hier geen geregistreerde gebruikers aanwezig.