Fundamental Scripting Guide: Difference between revisions

From The DarkMod Wiki
Jump to navigationJump to search
(Created page with "''Author - Dragofer'' This is a (work in progress) resource written primarily for mappers with no background in scripting or coding, though also more experienced scripters ma...")
 
(Redirected page to A to Z Scripting)
Tag: New redirect
 
(66 intermediate revisions by 2 users not shown)
Line 1: Line 1:
''Author - Dragofer''
#REDIRECT [[A to Z Scripting]]
 
This is a (work in progress) resource written primarily for mappers with no background in scripting or coding, though also more experienced scripters may find practical guidance in adapting to TDM's scripting system. This is the large majority of what I've picked up over the years through experimentation, looking at existing scripts and interacting with other forum members.
 
My aim is for the tutorial to be both comprehensive and down to earth, using many examples and avoiding unnecessary technical terms. There will be some overlap with existing wiki articles, since this aims to have everything in one place out of one hand.
 
The concept will be to start with teaching some basic script literacy, then introduce scripting principles one after another. Towards the end, practical examples
 
 
=== Contents ===
'''Anatomy of a script'''
 
Basic terms
 
Script functions
 
Rudimentary script: message to console
 
Basic script: simple cutscene
 
 
'''*More scripting basics'''
 
General
 
TDM Script Reference
 
Troubleshooting (i.e. closeup texture after mistake)
 
 
'''Setting up script files'''
 
Map scripts
 
General scripts
 
 
'''*How to call scripts'''
 
From other scripts
 
Target_callscriptfunction
 
Triggers
 
Stim/response
 
Frob_action_script
 
Objective system
 
 
'''Variables'''
 
Data types
 
Creating new variables
 
Example usage: puzzle with max 3 attempts
 
 
'''Scripts with input variables'''
 
Example useage: multiple func_movers and buttons, movement in various directions
 
 
'''"Get"ting information from the map'''
 
Getting spawnargs
 
Example usage: checking current health of an AI for an objective
 
 
'''Conditionals'''
 
Comparisons
 
Checking true or false
 
Multiple conditions
 
Chains of conditions
 
 
'''Looping/repeating scripts'''
 
Looping with thread
 
Looping with while()
 
Repeating with for()
 
Repeating with do + while()
 
 
'''*Scriptobjects'''
 
Applications
 
Setup
 
Entity defs
 
 
'''*Special methods'''
 
Going through all targets of an entity
 
Sounds
 
Trigger_touch
 
AI variables
 
Spline movers
 
 
'''*Practical examples'''

Latest revision as of 11:17, 21 December 2020

Redirect to: