OniGalore:Current events: Difference between revisions

From OniGalore
Jump to navigation Jump to search
(→‎BSL tutorial(s): adding progress report; it looks like I will have to chip away at this over time)
(updated and consolidated past blurbs on the BSL project)
Line 20: Line 20:
===BSL tutorial(s)===
===BSL tutorial(s)===
Despite its relative simplicity, [[BSL]] is vastly under-documented. Most of the stuff is well-known to experts, but designing a comprehensive guide that will get novice scripters started and keep them going requires didactic skills and ''lots'' of patience. Long-term goals are: a cross-referenced set of mini-tutorials that document the functions and variables in a standalone way (see, e.g., [[ai2_allpassive]]); maybe a functional breakdown of an original script (see [[BSL:Tutorial/airport1_level_logic.bsl|HERE]]); and redirects so that typing the name of the variable/function in the Go/Search box leads to just the right place.
Despite its relative simplicity, [[BSL]] is vastly under-documented. Most of the stuff is well-known to experts, but designing a comprehensive guide that will get novice scripters started and keep them going requires didactic skills and ''lots'' of patience. Long-term goals are: a cross-referenced set of mini-tutorials that document the functions and variables in a standalone way (see, e.g., [[ai2_allpassive]]); maybe a functional breakdown of an original script (see [[BSL:Tutorial/airport1_level_logic.bsl|HERE]]); and redirects so that typing the name of the variable/function in the Go/Search box leads to just the right place.
:I am putting into effect soon a plan that will fulfill some of geyser's old goals for the BSL part of the wiki:
:I am putting into effect soon a plan that will fulfill one of geyser's old goals for the BSL part of the wiki -- the mini-tutorials for groups of BSL "commands" (variables + functions) that center around a certain topic. However I currently have no plans to actually write the kind of thorough tutorials that geyser would have made; instead, I am just going to port all of the var/func info to the [[Template:BSLvarinfo|var]] and [[Template:BSLfuncinfo|func]] templates that I made (the templates allow us to easily tweak the display of the information, if anyone is not enamored with the current design). I will also bring over any small notes on the funcs/vars that I find laying around the wiki. But there won't be a comprehensive write-up on how exactly to use each one. The main goal is just to group all commands by subject matter, so I am calling these the "grouped" pages. Example: [[BSL:AI activity]].
:*I will be making the above-mentioned mini-tutorials for the BSL "commands" (variables + functions) that center around a certain topic. I have plans to make about 30 pages, which will be listed soon. However I currently have no plans to actually write the kind of thorough tutorials that geyser would have made; instead, I am just going to port all of the var/func info to the [[Template:BSLvarinfo|var]] and [[Template:BSLfuncinfo|func]] templates that I made (using templates means that we can easily tweak the display of all commands' information later, if anyone is not enamored with the [[User:Iritscen/TestSpace|current design]]). I will also bring over any small notes on the funcs/vars that I find laying around the wiki. But there won't be a comprehensive write-up on how exactly to use each one. The main goal is just to group all commands by subject matter, so I am calling these the "grouped" pages.
:Each function or variable will have a page that the user arrives at if he simply types the command's name into the Go/Search box. From there, he is linked to the grouped page so he can see the command in the context of related commands. Example: [[ai2_idle]]. All commands made so far are categorized under [[:Category:BSL_functions|BSL functions]] and [[:Category:BSL_variables|BSL variables]].
:*Pages will be created for every function and variable. Viewing a page for a single command should give you the standard template display of the command's information, but there should also be a redirect link that goes to the grouped page, so you can view the command's documentation in context.
:A new page, [[BSL:List of built-in commands]], will list all functions and variables together in one table. It is sortable by name, group, kind (function or variable), and platform availability, but does not contain any other info on the commands. It's just intended as a quick reference. You can click the group name for any command to go to the grouped page that discusses it in the context of related commands. This table is built automatically from the information entered elsewhere (the full system is explained [[BSL:Grouping|here]]). When I am done porting all commands to the new templates and creating all the grouped pages, this List page will be complete, and [[BSL:Functions]] and [[BSL:Variables]] will be replaced by messages that redirect the reader to [[BSL:List]] or to the instructions for using functions/variables on [[BSL:Manual]], whichever they are looking for. No longer will we have to browse two pages at once when we're trying to find a command but don't remember if it's a variable or function.
:*A new page (originally to be called "BSL:Reference", but probably now going to be called something else; maybe "BSL:List of built-in commands"?) will list all functions and variables together. It will be sortable by name, group (subject matter), type (func or var), and platform availability (Win/Mac), but will not contain any other info on the commands. It's just intended as a quick reference. You will be able to click the name of any command to go to the grouped page that discusses it in the context of related commands. This table will hopefully be built automatically from the information entered elsewhere (sample [[User:Iritscen/TestSpace2|here]]).
:Ongoing progress report: 14/504 commands, 1/38 groups done. --[[User:Iritscen|Iritscen]] ([[User talk:Iritscen|talk]]) 19:13, 15 December 2015 (CET)
:*When this is done, BSL:Functions and BSL:Variables will be replaced by messages that redirect the reader to the instructions for using functions/variables on [[BSL:Manual]], or else the command list on the "Reference" page, whichever they are looking for. No longer will we have to browse two pages at once while trying to find a command we're thinking of but can't remember if it is a variable or function.
:If anyone has any questions or concerns, either now or as I perform the work and things start to take shape, I guess we can just talk about it here (I will clear the talk when the project is done). If it's not clear what I am proposing, I will have a fuller "demo" available in the next few days that shows how the system is supposed to work. --[[User:Iritscen|Iritscen]] ([[User talk:Iritscen|talk]]) 23:06, 7 December 2015 (CET)
 
:Oh, I also just created [[BSL:Manual]] by merging together all of the pages about BSL (and filling in the blanks that had never been documented). I think it's easier to read a single long, interconnected page on this subject than to click around the wiki, reading about disconnected subjects like "Operators" and "Keywords". I am not rapidly editing the Manual anymore, so it's safe for others to edit it if they want to fix something. I did a lot of research and testing while writing it, but there are still probably some mistakes. One of the topics I am less experienced with is the various uses of "fork". So it would be good if experienced scripters could read over the Manual page, and also its "[[wikipedia:CliffsNotes|Cliff's Notes]]" version, [[BSL:Introduction]]. --[[User:Iritscen|Iritscen]] ([[User talk:Iritscen|talk]]) 23:20, 7 December 2015 (CET)
 
:The demo is in progress, but not working yet.... --[[User:Iritscen|Iritscen]] ([[User talk:Iritscen|talk]]) 19:49, 8 December 2015 (CET)


:The demo is now working fully for a few commands, though the actual page formatting is still rough<s>, I haven't finished handling the platform info yet, I have a big mess left over from previous attempts that I have to clean up, and the few commands that are done are using placeholder information</s>. But for an example of how the information is viewable at three different levels, see one of the pages under the [http://wiki.oni2.net/w/index.php?title=Category:BSL_functions&action=edit&redlink=1 BSL functions] category (typing a command name into the Go/Search box will take you to one of these pages), then look at [[BSL:AI activity|a grouped page]] that will list all related commands, then look at [[BSL:List|the full table]] of built-in commands that will eventually collect all the BSL variables and functions automatically once their information is entered. Things will take shape much more over the weekend. --[[User:Iritscen|Iritscen]] ([[User talk:Iritscen|talk]]) 18:52, 11 December 2015 (CET)


:Ongoing progress report: 14/504 commands, 1/38 groups done. --[[User:Iritscen|Iritscen]] ([[User talk:Iritscen|talk]]) 19:13, 15 December 2015 (CET)
:I also created [[BSL:Manual]] by merging together all of the pages about BSL (and filling in the blanks that had never been documented). I think it's easier to read a single long, interconnected page on this subject than to click around the wiki, reading about disconnected subjects like "Operators" and "Keywords". I am not rapidly editing the Manual anymore, so it's safe for others to edit it if they want to fix something. I did a lot of research and testing while writing it, but there are still probably some mistakes. One of the topics I am less experienced with is the various uses of "fork". So it would be good if experienced scripters could read over the Manual page, and also its "[[wikipedia:CliffsNotes|Cliff's Notes]]" version, [[BSL:Introduction]]. --[[User:Iritscen|Iritscen]] ([[User talk:Iritscen|talk]]) 23:20, 7 December 2015 (CET)


===XML tutorial(s)===
===XML tutorial(s)===

Revision as of 16:52, 23 December 2015

WIKI WORK IS FUN!
Penny Arcade - EvilCorp Too.png
ENOUGH FOR A JOKE OR TWO
THEN IT GETS BORING
If you're not familiar with wikis, see OniGalore:About. If you're not confident about editing a wiki, see Help:Editing.

These are only suggestions, although some are more obviously needed than others. Whatever in this list looks interesting to you, feel free to tackle it, even if you only have a little time here and there. However, if you are leaving a project half-done until you can resume it, please note that under the item in this list.

Thanks for whatever you can do to contribute.

General wiki work

  • Look at the list of flagged articles and see if there's anything you can help out with. There are a number of articles which need to be updated or finished.
  • Just browse Special:Wantedpages, and pick an interesting topic to write about!

Improving the documentation

BSL tutorial(s)

Despite its relative simplicity, BSL is vastly under-documented. Most of the stuff is well-known to experts, but designing a comprehensive guide that will get novice scripters started and keep them going requires didactic skills and lots of patience. Long-term goals are: a cross-referenced set of mini-tutorials that document the functions and variables in a standalone way (see, e.g., ai2_allpassive); maybe a functional breakdown of an original script (see HERE); and redirects so that typing the name of the variable/function in the Go/Search box leads to just the right place.

I am putting into effect soon a plan that will fulfill one of geyser's old goals for the BSL part of the wiki -- the mini-tutorials for groups of BSL "commands" (variables + functions) that center around a certain topic. However I currently have no plans to actually write the kind of thorough tutorials that geyser would have made; instead, I am just going to port all of the var/func info to the var and func templates that I made (the templates allow us to easily tweak the display of the information, if anyone is not enamored with the current design). I will also bring over any small notes on the funcs/vars that I find laying around the wiki. But there won't be a comprehensive write-up on how exactly to use each one. The main goal is just to group all commands by subject matter, so I am calling these the "grouped" pages. Example: BSL:AI activity.
Each function or variable will have a page that the user arrives at if he simply types the command's name into the Go/Search box. From there, he is linked to the grouped page so he can see the command in the context of related commands. Example: ai2_idle. All commands made so far are categorized under BSL functions and BSL variables.
A new page, BSL:List of built-in commands, will list all functions and variables together in one table. It is sortable by name, group, kind (function or variable), and platform availability, but does not contain any other info on the commands. It's just intended as a quick reference. You can click the group name for any command to go to the grouped page that discusses it in the context of related commands. This table is built automatically from the information entered elsewhere (the full system is explained here). When I am done porting all commands to the new templates and creating all the grouped pages, this List page will be complete, and BSL:Functions and BSL:Variables will be replaced by messages that redirect the reader to BSL:List or to the instructions for using functions/variables on BSL:Manual, whichever they are looking for. No longer will we have to browse two pages at once when we're trying to find a command but don't remember if it's a variable or function.
Ongoing progress report: 14/504 commands, 1/38 groups done. --Iritscen (talk) 19:13, 15 December 2015 (CET)


I also created BSL:Manual by merging together all of the pages about BSL (and filling in the blanks that had never been documented). I think it's easier to read a single long, interconnected page on this subject than to click around the wiki, reading about disconnected subjects like "Operators" and "Keywords". I am not rapidly editing the Manual anymore, so it's safe for others to edit it if they want to fix something. I did a lot of research and testing while writing it, but there are still probably some mistakes. One of the topics I am less experienced with is the various uses of "fork". So it would be good if experienced scripters could read over the Manual page, and also its "Cliff's Notes" version, BSL:Introduction. --Iritscen (talk) 23:20, 7 December 2015 (CET)

XML tutorial(s)

See the category for articles that need finishing.

Modding introduction

Modding Oni has a number of notes on it about parts that need to be filled in.

Oni 2 and beyond...

Some fans use the wiki to write sequels, prequels, interquels (what may have happened to Konoko in the time gaps between the original chapters, e.g., between Chapter 12 and Chapter 13) or even paraquels (e.g., what was happening on the Syndicate side during Oni?). You can then list your work HERE. Just be aware of the rights issues attendant with posting fan fics here. Also, plagiarism is not nice, but "Oni 2" can still be influenced by anime/cyberpunk/other references. See HERE to review the influences so far, elaborate on them some more, or point out new ones.