/pawn-curriculum

I was comissioned to write a detailed curriculum for a complete beginner to learn pawn with. This is a combination of links to existing tutorials and wholly new information. It is not a tutorial in itself, but a collection of information to read and learn. Depending what you want to learn, you might not even need everything, thus various sections try to list their dependencies so you don't start reading about something without first having read the parts it relies on.

Coding Pawn: From Useless to Y_Less

I was comissioned to write a detailed curriculum for a complete beginner to learn pawn with. This is a combination of links to existing tutorials and wholly new information. It is not a tutorial in itself, but a collection of information to read and learn. Depending what you want to learn, you might not even need everything, thus various sections try to list their dependencies so you don't start reading about something without first having read the parts it relies on.

The rough plan is as follows. Modules (pre-requisites in brackets):

  1. Pawn 1 (-)

Pawn basics. Variables, functions, syntax. Core library.

  1. Pawn 2 (1)

Pre-processor. Modules. States. Pragma. ALS.

  1. Pawn 3 (6)

Style Guide. Modules. Extended syntax.

  1. Pawn 4 (2)

Advanced pawn. Macros, emit, amx_assembly, code-parse.

  1. SAMP 1 (1)

a_samp etc.

  1. SAMP 2 (7)

fixes.inc

  1. Includes 1 (5)

Using includes.

  1. Includes 2 (7)

Writing your own includes.

  1. Plugins 1 (7)

Common plugins: sscanf, streamer, MySQL

  1. Plugins 2 (9)

Writing your own plugins. GDK, pawn-natives.

  1. SQL (9)

  2. YSI 1 (7)

y_commands, y_ini

  1. YSI 2 (7, 2)

y_hooks, y_inline, y_remote, y_timers

  1. YSI 3 (7)

  2. Tools

A. Glossary

Definition of terms.

B. References

Wiki, pawn-lang.pdf, pawn-impl.pdf, pawn-lang.org, burgershot.gg