My request might seem a "bit" ambitious, but...
Is there any way for someone make a tutorial about upgrading scripts that is "
plug-and-play" for non-experts? The reason for this request is for preservation purposes. Like someone who made a script drop off from the scene. Later, with essentials upgrades, the script will start having "no method error"/"sintax error", consequently stopping to work as intended.
Upgrades for a script is generally made by people who already knows about this stuff, but this kind of tutorial would be great for those who are learning or even those who wanna use a particular script, but are afraid of having to know "everything" about scripting just to do some small changes.
A tutorial about upgrading (
not downgrading) in general would be fine.
I can imagine something like: (It is a
LONG quote)
Before starting, you need to know:
- Essentials/RMXP uses Ruby language;
- This is a tutorial for upgrading;
- Ctrl+F inside a script look only inside the script. Ctrl+Shift+F look in all scripts;
- You need to understand the importance of Classes and Methods (maybe?);
- Comments in RMXP is marked with a "#" or "=begin TEXT BELOW =end". They are marked as green. Comments are text that do nothing in the script, if you comment something that is not commented, it will stop working. Beware what you mark as commented text;
- How to identify variable and switches inside a script. (maybe talk about $game_switch and $game_variable ?);
- "If you don't know the very basics go to the suggestion section to learn a little before reading the tutorial" (?);
- Know how to read error messages. Go to section "suggested sites about error messages";
- Read the essentials change log, there's one for a reason. Also, see the date which your script was made, it can help you to know what version of essentials the script was made for;
- Anything you find valid.
- Talk about the order in which the script list works. That would be useful for people who expect a script to work just putting it anywhere above main which is not true.
- Tell what is important when upgrading a script. Tell how it would work and such.
- Talk about "alias", since some scripts uses it. But without instiging the "updater" to use it, just explain what it is doing inside a script.
- Talk briefly about how to use the search.
- Pick an script as example (16.2 or below) and show what the developer should look for when upgrading (17.1). It would be perfect if it was a script made specifically for this containing every aspect of major things that changed over time, but I know this is pratically inviable. Just a few examples of changes made would work, no more than 6. The reason for this is because it can tire the reader, and we want them to keep focused on the tutorial.
- Maybe tell the "upgrader" to mark each line he is changing with a comment? Like: "before was '$game_variable[1]', then when you upgrade you will change to '$game_variable[2] #upgraded from 'game_variable[1]', this way you know what you changed and you can search later for 'upgraded' to know where yours change was made, and since is commented, it'll be green making it easy to keep track"
Another site about upgrading scripts:
Essentials turorial about upgrading scripts http://pokemonessentials.wikia.com/wiki/Tutorial:How_to_upgrade_your_game#Upgrade_scripts
(more focused in you making track of your own scripts)
Suggest sites about the meaning of error messages:
Luka's video about error messages
Essentials "tutorial" about error messages http://pokemonessentials.wikia.com/wiki/Error_messages
^Sadly I only know these. But both are great resources.
Suggest sites for learning further, like:
https://www.ruby-lang.org
http://tryruby.org/
https://learnrubythehardway.org/book/
http://tryruby.org/
https://www.codecademy.com
I made it bold/underlined what I thought was important.
I can help listing some classes/methods and names of the scripts mentioned in each of the changelog since v1. This is the minimum I can do since I only know the basics and couldn't do such tutorial as much as I want.
If someone make this kind of tutorial, try to make this for starters (not noobs). You could try to make it for complete noobs, but it would demand more work than I would say necessary.
Also, this would be a tutorial for upgrading "
plug-and-play" scripts, not scripts that mess with essentials "core" scripts. We don't want people asking/complaining "I changed a code in essentials and now is not working anymore!". We just need them to know how to change a
external script. If they don't know, they can just give up in upgrading without harming their own project.
It could be also a tutorial for general RMXP, but I'm not sure how it would work out.
tl;dr: a tutorial about upgrading a script for amateurs.
Greetings and sorry for the long text.