Getting started

Learn here how to create and use plugins.

Moderator: Plugin Moderators

User avatar
Lobby
Developer
Reactions:
Posts: 3705
Joined: 26 Oct 2008, 12:34
Plugins: Showcase Store
Version: Beta

Platform

Getting started

#1

Post by Lobby »

TheoTown has extensive features which allow the creation of powerful plugins. However, with the vast amount of tutorials and documentations
created it could be hard to find what you are looking for. This topic was created to help you quickly find what you need. :)

‼️ Copyright (Read this before publishing plugins for the first time)
Copyright is a serious thing. Obey copyright rules or you will get punished! :fire
πŸ“— Copyright

Installation
🎬 Installing plugins in the New Way (1.9.95+)

:json JSON
Creation
πŸ“— How to write a plugin
πŸ“‹ Advanced tags for building plugins
🎬 How to make a json with Json Genie

Animation
πŸ“— Advanced smoke types
πŸ“˜ Date dependent animations
πŸ“˜ Custom animations
πŸ“˜ Night Animations
πŸ“™ Saving plugin space using Animations
πŸ“™ People animation
πŸ“™ Firework

Transportation
πŸ“— Higher level bridges (Note: Will need prior knowledge of bridges)
πŸ“˜ Roads
πŸ“˜ Cars
πŸ“˜ Tunnels
πŸ“˜ Car chains
πŸ“˜ Airplanes
πŸ“˜ The ACTUAL tutorial on flags
πŸ“™ Road decoration
πŸ“™ Pedestrians
πŸ“™ Helicopter
πŸ“™ Change in res/ind car identification
πŸ“™ Determining vehicle direction on roads

Upgrades & requirements
πŸ“™ Upgrades
πŸ“™ Building requirements
πŸ“™ Enabling and Disabling Your RCI Spawning

Override
πŸ“— Explicit plugin overriding
πŸ“˜ Custom water
πŸ“˜ Override background

Security
πŸ“— Plugin encryption (create .plugin file)
πŸ“— Hide id
🎬 How to Add a Hidden Signature

Translation
πŸ“— Inline translations
πŸ“˜ External translations

Misc
πŸ“˜ Categories
πŸ“˜ Templates
πŸ“˜ Custom zones
πŸ“— Preview Frames
πŸ“• Compositions
πŸ“• Biomes
πŸ“ Fences
πŸ“‹ JSON
πŸ“‹ Writing plugin.manifest files

Behavior via Fun
It's simple but also quite limited; we therefore recommend to use Lua instead for non-trivial tasks.
πŸ“™ Fun basics
πŸ“™ Functionality using fun
πŸ“™ Variables
πŸ“™ Animation control
πŸ“™ Notifications
πŸ“™ Date dependent fun condition
πŸ“™ Weather manipulation
πŸ“™ Sound with Fun
πŸ“‹ Virtual Variables
πŸ“‹ Action Index
πŸ“‹ Condition Index

:lua: Lua Scripting
πŸ“• How to use Lua scripts
πŸ“• GUI Compendium
πŸ“• Drawing basics
πŸ“• Saving data persistently
πŸ“• [792] Real time script editing
πŸ“• [1.8.95] Plugin settings
πŸ“ Tree Planter Tool Example
πŸ“ GUI example in Plugin Creator Tools
πŸ“‹ Lua API reference

:glsl OpenGL Shading Language (GLSL)
πŸ“• [1.10.50] Custom Shaders (Incomplete)

:img Graphics
Creation
πŸ“— How to create a small building in 10 steps
πŸ“˜ A visual guide for shadows, shading, depth and noise
πŸ“˜ Shadows & templates (The above tutorial is recommended instead)
πŸ“˜ How to draw winter graphics
πŸ“˜ Creating a quality house plugin
πŸ“™ How to create a plugin
🎬 How to apply textures to surfaces in Pixly

Resources
πŸ–ΌοΈ World texture
πŸ–ΌοΈ JSON
πŸ–ΌοΈ Tree graphics
πŸ–ΌοΈ Building templates

Legend:
πŸ“—πŸ“˜πŸ“™πŸ“• Textual, increasing difficulty. (beginner, intermediate, expert, extreme).
πŸ“ Snippets or examples.
πŸ“‹ Lists.
πŸ–ΌοΈ Images.
🎬 Video.

Special thank you to everyone who help creates tutorials and documentations. :)
Last edited by Bearbear76 on 23 Sep 2022, 04:59, edited 9 times in total.

User avatar
Sparkle8538
Small-town resident
Reactions:
Posts: 25
Joined: 26 Jul 2019, 11:35
Plugins: Showcase Store

Re: Getting started

#2

Post by Sparkle8538 »

...continued to 5. Graphics
Part 3. Advanced
πŸ“—Preview frames (by Sparkle8538)

Legend:
🎬 Video.
πŸ“— Beginner.
πŸ“˜ Intermediate.
πŸ“™ Expert.
πŸ“• Extreme.
πŸ–ΌοΈ Images.
πŸ“‹ Lists.
πŸ”’ Reusing certain content without permission/credit from/to a plugin creator may result in punishment.
Last edited by Sparkle8538 on 30 Aug 2019, 20:09, edited 1 time in total.

User avatar
CommanderABab
AB
Reactions:
Posts: 11080
Joined: 07 Jun 2016, 21:12
Plugins: Showcase Store
Version: Beta

Plugin Creator

Platform

Re: Getting started

#3

Post by CommanderABab »

Zikomo.

User avatar
KINGTUT10101
1,000,000 inhabitants
Reactions:
Posts: 2220
Joined: 07 Jul 2016, 22:50
Location: 'Merica
Plugins: Showcase Store
Version: Beta
Contact:

Plugin Creator

Platform

Re: Getting started

#4

Post by KINGTUT10101 »

Is there no custom zone tutorial?

User avatar
Deedzkie23
Villager
Reactions:
Posts: 8
Joined: 26 Jul 2019, 04:37
Plugins: Showcase Store

Re: Getting started

#5

Post by Deedzkie23 »

How to upload plugin if i am not allowed to upload here on forum? I am just a newbie here.

User avatar
Lobby
Developer
Reactions:
Posts: 3705
Joined: 26 Oct 2008, 12:34
Plugins: Showcase Store
Version: Beta

Platform

Re: Getting started

#6

Post by Lobby »

It should work now.

User avatar
Ilya strigo
Settler
Reactions:
Posts: 3
Joined: 30 Nov 2019, 10:00
Plugins: Showcase Store

Re: Getting started

#7

Post by Ilya strigo »

Как ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π΅Π»Π΅ΠΊΡ‚Ρ€ΠΎ ΡΡ‚Π°Π½Ρ†ΠΈΡŽ
(ΠŸΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΊΠΎΠ΄Ρ‹ для Π΅Π»Π΅ΠΊΡ‚Ρ€ΠΎ станции)

User avatar
RayXP
Inhabitant of a Infinity
Reactions:
Posts: 7893
Joined: 17 Nov 2018, 21:49
Location: Pearland, TX
Plugins: Showcase Store
Version: Beta

Plugin Creator

Platform

Re: Getting started

#8

Post by RayXP »

Is there any videos on how to do animations?

User avatar
1Code
Inhabitant of a Megacity
Reactions:
Posts: 302
Joined: 30 Jan 2020, 16:56
Location: https://bit.ly/3P5dhnT
Plugins: Showcase Store

Plugin Creator

Platform

Re: Getting started

#9

Post by 1Code »

KINGTUT10101 wrote: ↑
07 Sep 2019, 01:32
Is there no custom zone tutorial?
πŸ“˜Custom zones (by CommanderABab)

User avatar
1Code
Inhabitant of a Megacity
Reactions:
Posts: 302
Joined: 30 Jan 2020, 16:56
Location: https://bit.ly/3P5dhnT
Plugins: Showcase Store

Plugin Creator

Platform

Re: Getting started

#10

Post by 1Code »

Last edited by 1Code on 04 Jun 2022, 11:37, edited 1 time in total.

User avatar
Bearbear76
Former Bearbear65
Reactions:
Posts: 5730
Joined: 10 Feb 2017, 14:53
Location: L2 cache
Plugins: Showcase Store

Plugin Creator

Platform

Re: Getting started

#11

Post by Bearbear76 »

I don't know if it's significant enough to be on the list.

User avatar
Yakka
Inhabitant of a Conurbation
Reactions:
Posts: 413
Joined: 06 Jan 2020, 09:57
Location: Java-indonesia
Plugins: Showcase Store
Version: Beta

Plugin Creator

Platform

Re: Getting started

#12

Post by Yakka »

Please Add Night Animation Tutorial I Need it

User avatar
Bearbear76
Former Bearbear65
Reactions:
Posts: 5730
Joined: 10 Feb 2017, 14:53
Location: L2 cache
Plugins: Showcase Store

Plugin Creator

Platform

Re: Getting started

#13

Post by Bearbear76 »

Kiki012 wrote: ↑
09 Feb 2020, 16:13
Please Add Night Animation Tutorial I Need it
Ok... added.

User avatar
hihihihi
Metropolitan
Reactions:
Posts: 111
Joined: 30 Jul 2019, 06:05
Location: south korea
Plugins: Showcase Store

Platform

Re: Getting started

#14

Post by hihihihi »

How to make decals??

User avatar
Bearbear76
Former Bearbear65
Reactions:
Posts: 5730
Joined: 10 Feb 2017, 14:53
Location: L2 cache
Plugins: Showcase Store

Plugin Creator

Platform

Re: Getting started

#15

Post by Bearbear76 »

hihihihi wrote: ↑
20 Feb 2020, 01:59
How to make decals??
Do you mean road decorations or just decorations?

User avatar
CommanderABab
AB
Reactions:
Posts: 11080
Joined: 07 Jun 2016, 21:12
Plugins: Showcase Store
Version: Beta

Plugin Creator

Platform

Re: Getting started

#16

Post by CommanderABab »

I think he means ground decorations like Josh made.

User avatar
Bearbear76
Former Bearbear65
Reactions:
Posts: 5730
Joined: 10 Feb 2017, 14:53
Location: L2 cache
Plugins: Showcase Store

Plugin Creator

Platform

Re: Getting started

#17

Post by Bearbear76 »

CommanderABab wrote: ↑
20 Feb 2020, 19:39
I think he means ground decorations like Josh made.
I use this as a template for ground plugins.

Code: Select all

  ...
  "type":"ground",
  "border frames":[{"bmp":"frame.png","w":32,"h":15, "count":16, "handle y":8}],
  "edge border frames":[{"h":16,"handle x":0,"handle y":3,"w":32,"x":0,"y":320}],
  "edge frames":[{"count":12,"h":48,"w":16,"x":0,"y":96}],
  ...

User avatar
hihihihi
Metropolitan
Reactions:
Posts: 111
Joined: 30 Jul 2019, 06:05
Location: south korea
Plugins: Showcase Store

Platform

Re: Getting started

#18

Post by hihihihi »

Ølsken wrote: ↑
21 Feb 2020, 00:13
CommanderABab wrote: ↑
20 Feb 2020, 19:39
I think he means ground decorations like Josh made.
I use this as a template for ground plugins.

Code: Select all

  ...
  "type":"ground",
  "border frames":[{"bmp":"frame.png","w":32,"h":15, "count":16, "handle y":8}],
  "edge border frames":[{"h":16,"handle x":0,"handle y":3,"w":32,"x":0,"y":320}],
  "edge frames":[{"count":12,"h":48,"w":16,"x":0,"y":96}],
  ...
THXS :bc :bc :bc :bc :bc

User avatar
Yakka
Inhabitant of a Conurbation
Reactions:
Posts: 413
Joined: 06 Jan 2020, 09:57
Location: Java-indonesia
Plugins: Showcase Store
Version: Beta

Plugin Creator

Platform

Re: Getting started

#19

Post by Yakka »

Please add Influence tutorial
Last edited by Yakka on 13 Mar 2020, 13:26, edited 1 time in total.

User avatar
Bearbear76
Former Bearbear65
Reactions:
Posts: 5730
Joined: 10 Feb 2017, 14:53
Location: L2 cache
Plugins: Showcase Store

Plugin Creator

Platform

Re: Getting started

#20

Post by Bearbear76 »

Kiki012 wrote: ↑
22 Feb 2020, 08:43
Please Add This Tutorial
How to Make train Plugin(By: Kiki012)
viewtopic.php?f=35&t=10975
That's not a tutorial, there's no teaching aspect in there.

That's like me saying this is how you do derivatives:

\(\frac{\mathrm{d} }{\mathrm{d} x} tan(sin(x^2)) = sec^2(sin(x^2)) \cdot cos(x^2) \cdot 2x\)

Instead it should have some teaching aspects such as:

First understand the power rule.

\(\frac{\mathrm{d} }{\mathrm{d} x} x^n = nx^{n - 1}\)

Then learn how to differentiate trig functions.

\(\frac{\mathrm{d} }{\mathrm{d} x} tan(x) = sec^2(x)\)

\(\frac{\mathrm{d} }{\mathrm{d} x} sin(x) = cos(x)\)

Then, use the chain rule (differentiate from outside to inside):

\(\therefore\frac{\mathrm{d} }{\mathrm{d} x} tan(sin(x^2)) = sec^2(sin(x^2)) \cdot cos(x^2) \cdot 2x\)

why math? idk just felt like it. :)

Post Reply Previous topicNext topic

Return to β€œTutorials and Documentation”